Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TPostScript Class Reference

Interface to PostScript.

To generate a Postscript (or encapsulated ps) file corresponding to a single image in a canvas, you can:

  • Select the Print PostScript item in the canvas File menu. By default, a Postscript file with the name of the canvas.ps is generated.
  • Click in the canvas area, near the edges, with the right mouse button and select the Print item. You can select the name of the Postscript file. If the file name is xxx.ps, you will generate a Postscript file named xxx.ps. If the file name is xxx.eps, you generate an encapsulated Postscript file instead.
  • In your program (or macro), you can type:
    c1->Print("xxx.ps");
    return c1
    Definition legend1.C:41
    or:
    c1->Print("xxx.eps");
    This will generate a file corresponding to the picture in the canvas pointed by c1.
    pad1->Print("xxx.ps");
    prints only the picture in the pad pointed by pad1.

The size of the Postscript picture, by default, is computed to keep the aspect ratio of the picture on the screen, where the size along x is always 20cm. You can set the size of the PostScript picture before generating the picture with a command such as:

TPostScript myps("myfile.ps",111)
myps.Range(xsize,ysize);
object->Draw();
myps.Close();
Interface to PostScript.
Definition TPostScript.h:20
void Range(Float_t xrange, Float_t yrange)
Set the range for the paper in centimeters.
void Close(Option_t *opt="") override
Close a PostScript file.
th1 Draw()

You can set the default paper size with:

gStyle->SetPaperSize(xsize,ysize);
R__EXTERN TStyle * gStyle
Definition TStyle.h:433
void SetPaperSize(EPaperSize size)
Set paper size for PostScript output.
Definition TStyle.cxx:1700

You can resume writing again in this file with myps.Open();. Note that you may have several Postscript files opened simultaneously.

Output type

The output type allows to define how the PostScript output will looks like. It allows to define the page format (A4, Legal etc..), the orientation (Portrait, Landscape) and the number of images (zones) per page. The output type has the following form:

[Format][Nx][Ny][Type]
static char * Format(const char *format, va_list ap)
Format a string in a circular formatting buffer (using a printf style format descriptor).
Definition TString.cxx:2442

Where:

  • Format : Is an integer between 0 and 99 defining the page format:
    Format = 3 the paper is in the standard A3 format.
    Format = n (1<n<98) is an An format.
    Format = 4 and Format=0 are the same and define an A4 page.
    The A0 format is selected by Format=99.
    The US format Letter is selected by Format = 100.
    The US format Legal is selected by Format = 200.
    The US format Ledger is selected by Format = 300.
    Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t format
    const Int_t n
    Definition legend1.C:16
  • Nx, Ny : Specify respectively the number of zones on the x and y axis. Nx and Ny are integers between 1 and 9.
  • Type : Can be equal to:
    • 1 : Portrait mode with a small margin at the bottom of the page.
    • 2 : Landscape mode with a small margin at the bottom of the page.
    • 4 : Portrait mode with a large margin at the bottom of the page.
    • 5 : Landscape mode with a large margin at the bottom of the page. The large margin is useful for some PostScript printers (very often for the colour printers) as they need more space to grip the paper for mechanical reasons. Note that some PostScript colour printers can also use the so called special A4 format permitting the full usage of the A4 area; in this case larger margins are not necessary and Type=1 or 2 can be used.
    • 3 : Encapsulated PostScript. This Type permits the generation of files which can be included in other documents, for example in LaTeX files.

Making several pictures in the same Postscript file: case 1

The following macro is an example illustrating how to open a Postscript file and draw several pictures. The generation of a new Postscript page is automatic when TCanvas::Clear is called by object->Draw().

{
TFile f("hsimple.root");
TCanvas c1("c1","canvas",800,600);
// select postscript output type
// type = 111 portrait ps
// type = 112 landscape ps
// type = 113 eps
Int_t type = 111;
// create a postscript file and set the paper size
TPostScript ps("test.ps",type);
ps.Range(16,24); //set x,y of printed page
// draw 3 histograms from file hsimple.root on separate pages
hpx->Draw();
c1.Update(); //force drawing in a macro
hprof->Draw();
c1.Update();
hpx->Draw("lego1");
c1.Update();
ps.Close();
}
#define f(i)
Definition RSha256.hxx:104
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
The Canvas class.
Definition TCanvas.h:23
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
Definition TFile.h:53

Making several pictures in the same Postscript file: case 2

This example shows 2 pages. The canvas is divided. TPostScript::NewPage must be called before starting a new picture.object->Draw does not clear the canvas in this case because we clear only the pads and not the main canvas. Note that c1->Update must be called at the end of the first picture.

{
TFile *f1 = new TFile("hsimple.root");
TCanvas *c1 = new TCanvas("c1");
TPostScript *ps = new TPostScript("file.ps",112);
c1->Divide(2,1);
// picture 1
ps->NewPage();
c1->cd(1);
hpx->Draw();
c1->cd(2);
hprof->Draw();
c1->Update();
// picture 2
ps->NewPage();
c1->cd(1);
hpxpy->Draw();
c1->cd(2);
ntuple->Draw("px");
c1->Update();
ps->Close();
// invoke Postscript viewer
gSystem->Exec("gs file.ps");
}
R__EXTERN TSystem * gSystem
Definition TSystem.h:555
TPostScript()
Default PostScript constructor.
void NewPage() override
Move to a new PostScript page.
virtual Int_t Exec(const char *shellcmd)
Execute a command.
Definition TSystem.cxx:653
TF1 * f1
Definition legend1.C:11

Making several pictures in the same Postscript file: case 3

This is the recommended way. If the Postscript file name finishes with "(", the file remains opened (it is not closed). If the Postscript file name finishes with ")" and the file has been opened with "(", the file is closed.

Example:

{
TCanvas c1("c1");
h1.Draw();
c1.Print("c1.ps("); // write canvas and keep the ps file open
h2.Draw();
c1.Print("c1.ps"); // canvas is added to "c1.ps"
h3.Draw();
c1.Print("c1.ps)"); // canvas is added to "c1.ps" and ps file is closed
}
void Draw(Option_t *option="") override
Draw this histogram with options.
Definition TH1.cxx:3066
TH1F * h1
Definition legend1.C:5

The TCanvas::Print("file.ps(") mechanism is very useful, but it can be a little inconvenient to have the action of opening/closing a file being atomic with printing a page. Particularly if pages are being generated in some loop one needs to detect the special cases of first and last page and then munge the argument to Print() accordingly. The "[" and "]" can be used instead of "(" and ")" as shown below.

Example:

c1.Print("file.ps["); // No actual print, just open file.ps
for (int i=0; i<10; ++i) {
// fill canvas for context i
// ...
c1.Print("file.ps"); // Actually print canvas to the file
}
c1.Print("file.ps]"); // No actual print, just close the file

Color Model

TPostScript support two color model RGB and CMYK. CMY and CMYK models are subtractive color models unlike RGB which is an additive. They are mainly used for printing purposes. CMY means Cyan Magenta Yellow to convert RGB to CMY it is enough to do: C=1-R, M=1-G and Y=1-B. CMYK has one more component K (black). The conversion from RGB to CMYK is:

Double_t Black = TMath::Min(TMath::Min(1-Red,1-Green),1-Blue);
Double_t Cyan = (1-Red-Black)/(1-Black);
Double_t Magenta = (1-Green-Black)/(1-Black);
Double_t Yellow = (1-Blue-Black)/(1-Black);
Short_t Min(Short_t a, Short_t b)
Returns the smallest of a and b.
Definition TMathBase.h:198

CMYK add the black component which allows to have a better quality for black printing. PostScript support the CMYK model.

To change the color model use gStyle->SetColorModelPS(c).

  • c = 0 means TPostScript will use RGB color model (default)
  • c = 1 means TPostScript will use CMYK color model

Definition at line 20 of file TPostScript.h.

Public Member Functions

 TPostScript ()
 Default PostScript constructor.
 
 TPostScript (const char *filename, Int_t type=-111)
 Initialize the PostScript interface.
 
 ~TPostScript () override
 Default PostScript destructor.
 
void CellArrayBegin (Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2) override
 Draw a Cell Array.
 
void CellArrayEnd () override
 End the Cell Array painting.
 
void CellArrayFill (Int_t r, Int_t g, Int_t b) override
 Paint the Cell Array.
 
void Close (Option_t *opt="") override
 Close a PostScript file.
 
Int_t CMtoPS (Double_t u)
 
void DefineMarkers ()
 Define the markers.
 
void DrawBox (Double_t x1, Double_t y1, Double_t x2, Double_t y2) override
 Draw a Box.
 
void DrawFrame (Double_t xl, Double_t yl, Double_t xt, Double_t yt, Int_t mode, Int_t border, Int_t dark, Int_t light) override
 Draw a Frame around a box.
 
void DrawHatch (Float_t dy, Float_t angle, Int_t n, Double_t *x, Double_t *y)
 Draw Fill area with hatch styles.
 
void DrawHatch (Float_t dy, Float_t angle, Int_t n, Float_t *x, Float_t *y)
 Draw Fill area with hatch styles.
 
void DrawPolyLine (Int_t n, TPoints *xy)
 Draw a PolyLine.
 
void DrawPolyLineNDC (Int_t n, TPoints *uv)
 Draw a PolyLine in NDC space.
 
void DrawPolyMarker (Int_t n, Double_t *x, Double_t *y) override
 Draw markers at the n WC points x, y.
 
void DrawPolyMarker (Int_t n, Float_t *x, Float_t *y) override
 Draw markers at the n WC points x, y.
 
void DrawPS (Int_t n, Double_t *xw, Double_t *yw) override
 Draw a PolyLine.
 
void DrawPS (Int_t n, Float_t *xw, Float_t *yw) override
 Draw a PolyLine.
 
void FontEmbed ()
 Embed font in PS file.
 
bool FontEmbedType1 (const char *filename)
 
bool FontEmbedType2 (const char *filename)
 
bool FontEmbedType42 (const char *filename)
 
void FontEncode ()
 Font Re-encoding.
 
void Initialize ()
 PostScript Initialisation.
 
TClassIsA () const override
 
void MovePS (Int_t x, Int_t y)
 Move to a new position.
 
void NewPage () override
 Move to a new PostScript page.
 
void Off ()
 Deactivate an already open PostScript file.
 
void On ()
 Activate an already open PostScript file.
 
void Open (const char *filename, Int_t type=-111) override
 Open a PostScript file.
 
void Range (Float_t xrange, Float_t yrange)
 Set the range for the paper in centimeters.
 
void SaveRestore (Int_t flag)
 Compute number of gsaves for restore This allows to write the correct number of grestore at the end of the PS file.
 
void SetColor (Float_t r, Float_t g, Float_t b) override
 Set directly current color (don't go via TColor).
 
void SetColor (Int_t color=1)
 Set the current color.
 
void SetFillColor (Color_t cindex=1) override
 Set color index for fill areas.
 
void SetFillPatterns (Int_t ipat, Int_t color)
 Patterns definition.
 
void SetLineCap (Int_t linecap=0)
 Set the value of the global parameter TPostScript::fgLineCap.
 
void SetLineColor (Color_t cindex=1) override
 Set color index for lines.
 
void SetLineJoin (Int_t linejoin=0)
 Set the value of the global parameter TPostScript::fgLineJoin.
 
void SetLineScale (Float_t scale=3)
 
void SetLineStyle (Style_t linestyle=1) override
 Change the line style.
 
void SetLineWidth (Width_t linewidth=1) override
 Change the line width.
 
void SetMarkerColor (Color_t cindex=1) override
 Set color index for markers.
 
void SetTextColor (Color_t cindex=1) override
 Set color index for text.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void Text (Double_t x, Double_t y, const char *string) override
 Write a string of characters.
 
void Text (Double_t x, Double_t y, const wchar_t *string) override
 Write a string of characters.
 
void TextNDC (Double_t u, Double_t v, const char *string)
 Write a string of characters in NDC.
 
void TextNDC (Double_t u, Double_t v, const wchar_t *string)
 Write a string of characters in NDC.
 
Int_t UtoPS (Double_t u)
 Convert U from NDC coordinate to PostScript.
 
Int_t VtoPS (Double_t v)
 Convert V from NDC coordinate to PostScript.
 
Int_t XtoPS (Double_t x)
 Convert X from world coordinate to PostScript.
 
Int_t YtoPS (Double_t y)
 Convert Y from world coordinate to PostScript.
 
void Zone ()
 Initialize the PostScript page in zones.
 
- Public Member Functions inherited from TVirtualPS
 TVirtualPS ()
 VirtualPS default constructor.
 
 TVirtualPS (const char *filename, Int_t type=-111)
 VirtualPS constructor.
 
virtual ~TVirtualPS ()
 VirtualPS destructor.
 
virtual void * GetStream () const
 
virtual Int_t GetType () const
 
TClassIsA () const override
 
virtual void PrintFast (Int_t nch, const char *string="")
 Fast version of Print.
 
virtual void PrintRaw (Int_t len, const char *str)
 Print a raw.
 
virtual void PrintStr (const char *string="")
 Output the string str in the output buffer.
 
virtual void SetStream (std::ofstream *os)
 
virtual void SetType (Int_t=-111)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void WriteInteger (Int_t i, Bool_t space=kTRUE)
 Write one Integer to the file.
 
virtual void WriteReal (Float_t r, Bool_t space=kTRUE)
 Write a Real number to the file.
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor.
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor.
 
void Clear (Option_t *option="") override
 Set name and title to empty strings ("").
 
TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
 
Int_t Compare (const TObject *obj) const override
 Compare two TNamed objects.
 
void Copy (TObject &named) const override
 Copy this to obj.
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
 
const char * GetName () const override
 Returns name of object.
 
const char * GetTitle () const override
 Returns title of object.
 
ULong_t Hash () const override
 Return hash value for this object.
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 List TNamed name and title.
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator.
 
void Print (Option_t *option="") const override
 Print TNamed name and title.
 
virtual void SetName (const char *name)
 Set the name of the TNamed.
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title).
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete (void *ptr, void *vp)
 Only called by placement new when throwing an exception.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TAttLine
 TAttLine ()
 AttLine default constructor.
 
 TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth)
 AttLine normal constructor.
 
virtual ~TAttLine ()
 AttLine destructor.
 
void Copy (TAttLine &attline) const
 Copy this line attributes to a new TAttLine.
 
Int_t DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
 Compute distance from point px,py to a line.
 
virtual Color_t GetLineColor () const
 Return the line color.
 
virtual Style_t GetLineStyle () const
 Return the line style.
 
virtual Width_t GetLineWidth () const
 Return the line width.
 
virtual void Modify ()
 Change current line attributes if necessary.
 
virtual void ResetAttLine (Option_t *option="")
 Reset this line attributes to default values.
 
virtual void SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
 Save line attributes as C++ statement(s) on output stream out.
 
virtual void SetLineAttributes ()
 Invoke the DialogCanvas Line attributes.
 
virtual void SetLineColorAlpha (Color_t lcolor, Float_t lalpha)
 Set a transparent line color.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor.
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor.
 
virtual ~TAttFill ()
 AttFill destructor.
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill.
 
virtual Color_t GetFillColor () const
 Return the fill area color.
 
virtual Style_t GetFillStyle () const
 Return the fill area style.
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary.
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values.
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out.
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes.
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color.
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TAttMarker
 TAttMarker ()
 TAttMarker default constructor.
 
 TAttMarker (Color_t color, Style_t style, Size_t msize)
 TAttMarker normal constructor.
 
virtual ~TAttMarker ()
 TAttMarker destructor.
 
void Copy (TAttMarker &attmarker) const
 Copy this marker attributes to a new TAttMarker.
 
virtual Color_t GetMarkerColor () const
 Return the marker color.
 
virtual Size_t GetMarkerSize () const
 Return the marker size.
 
virtual Style_t GetMarkerStyle () const
 Return the marker style.
 
virtual void Modify ()
 Change current marker attributes if necessary.
 
virtual void ResetAttMarker (Option_t *toption="")
 Reset this marker attributes to the default values.
 
virtual void SaveMarkerAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
 Save line attributes as C++ statement(s) on output stream out.
 
virtual void SetMarkerAttributes ()
 Invoke the DialogCanvas Marker attributes.
 
virtual void SetMarkerColorAlpha (Color_t mcolor, Float_t malpha)
 Set a transparent marker color.
 
virtual void SetMarkerSize (Size_t msize=1)
 Set the marker size.
 
virtual void SetMarkerStyle (Style_t mstyle=1)
 Set the marker style.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TAttText
 TAttText ()
 AttText default constructor.
 
 TAttText (Int_t align, Float_t angle, Color_t color, Style_t font, Float_t tsize)
 AttText normal constructor.
 
virtual ~TAttText ()
 AttText destructor.
 
void Copy (TAttText &atttext) const
 Copy this text attributes to a new TAttText.
 
virtual Short_t GetTextAlign () const
 Return the text alignment.
 
virtual Float_t GetTextAngle () const
 Return the text angle.
 
virtual Color_t GetTextColor () const
 Return the text color.
 
virtual Font_t GetTextFont () const
 Return the text font.
 
virtual Float_t GetTextSize () const
 Return the text size.
 
virtual Float_t GetTextSizePercent (Float_t size)
 Return the text in percent of the pad size.
 
virtual void Modify ()
 Change current text attributes if necessary.
 
virtual void ResetAttText (Option_t *toption="")
 Reset this text attributes to default values.
 
virtual void SaveTextAttributes (std::ostream &out, const char *name, Int_t alidef=12, Float_t angdef=0, Int_t coldef=1, Int_t fondef=61, Float_t sizdef=1)
 Save text attributes as C++ statement(s) on output stream out.
 
virtual void SetTextAlign (Short_t align=11)
 Set the text alignment.
 
virtual void SetTextAngle (Float_t tangle=0)
 Set the text angle.
 
virtual void SetTextAttributes ()
 Invoke the DialogCanvas Text attributes.
 
virtual void SetTextColorAlpha (Color_t tcolor, Float_t talpha)
 Set a transparent text color.
 
virtual void SetTextFont (Font_t tfont=62)
 Set the text font.
 
virtual void SetTextSize (Float_t tsize=1)
 Set the text size.
 
virtual void SetTextSizePixels (Int_t npixels)
 Set the text size in pixel.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TVirtualPS
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TNamed
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TAttLine
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TAttFill
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TAttMarker
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Width_t GetMarkerLineWidth (Style_t style)
 Internal helper function that returns the line width of the given marker style (0 = filled marker)
 
static Style_t GetMarkerStyleBase (Style_t style)
 Internal helper function that returns the corresponding marker style with line width 1 for the given style.
 
- Static Public Member Functions inherited from TAttText
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Protected Attributes

Float_t fBlue
 Per cent of blue.
 
Bool_t fBoundingBox
 True for Encapsulated PostScript.
 
Bool_t fClear
 True when page must be cleared.
 
Int_t fClip
 Clipping mode.
 
Bool_t fClipStatus
 Clipping Indicator.
 
Int_t fCurrentColor
 current Postscript color index
 
Float_t fDXC
 
Float_t fDYC
 
TString fFileName
 PS file name.
 
Bool_t fFontEmbed
 True is FontEmbed has been called.
 
Float_t fFX
 
Float_t fFY
 
Float_t fGreen
 Per cent of green.
 
Int_t fIXzone
 Current zone along X.
 
Int_t fIYzone
 Current zone along Y.
 
Int_t fLastCellBlue
 Last blue value.
 
Int_t fLastCellGreen
 Last green value.
 
Int_t fLastCellRed
 Last red value.
 
Float_t fLineScale
 Line width scale factor.
 
Float_t fMarkerSizeCur
 current transformed value of marker size
 
Int_t fMaxLines
 Maximum number of lines in a PS array.
 
Float_t fMaxsize
 Largest dimension of X and Y.
 
Int_t fMode
 PostScript mode.
 
Int_t fNbCellLine
 Number of boxes in the current line.
 
Int_t fNbCellW
 Number of boxes per line.
 
Int_t fNbinCT
 Number of entries in the current Cell Array.
 
Int_t fNBSameColorCell
 Number of boxes with the same color.
 
Int_t fNpages
 number of pages
 
Int_t fNXzone
 Number of zones along X.
 
Int_t fNYzone
 Number of zones along Y.
 
char fPatterns [32]
 Indicate if pattern n is defined.
 
Bool_t fRange
 True when a range has been defined.
 
Float_t fRed
 Per cent of red.
 
Int_t fSave
 Number of gsave for restore.
 
Int_t fType
 PostScript workstation type.
 
Float_t fX1v
 X bottom left corner of paper.
 
Float_t fX1w
 
Float_t fX2v
 X top right corner of paper.
 
Float_t fX2w
 
Float_t fXC
 
Float_t fXsize
 Page size along X.
 
Float_t fXVP1
 
Float_t fXVP2
 
Float_t fXVS1
 
Float_t fXVS2
 
Float_t fY1v
 Y bottom left corner of paper.
 
Float_t fY1w
 
Float_t fY2v
 Y top right corner of paper.
 
Float_t fY2w
 
Float_t fYC
 
Float_t fYsize
 Page size along Y.
 
Float_t fYVP1
 
Float_t fYVP2
 
Float_t fYVS1
 
Float_t fYVS2
 
Bool_t fZone
 Zone indicator.
 
- Protected Attributes inherited from TVirtualPS
char * fBuffer {nullptr}
 
const char * fImplicitCREsc {nullptr}
 
Int_t fLenBuffer {0}
 
Int_t fNByte {0}
 
Bool_t fPrinted {kFALSE}
 
Int_t fSizBuffer {0}
 
std::ofstream * fStream {nullptr}
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttLine
Color_t fLineColor
 Line color.
 
Style_t fLineStyle
 Line style.
 
Width_t fLineWidth
 Line width.
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color.
 
Style_t fFillStyle
 Fill area style.
 
- Protected Attributes inherited from TAttMarker
Color_t fMarkerColor
 Marker color.
 
Size_t fMarkerSize
 Marker size.
 
Style_t fMarkerStyle
 Marker style.
 
- Protected Attributes inherited from TAttText
Short_t fTextAlign
 Text alignment.
 
Float_t fTextAngle
 Text angle.
 
Color_t fTextColor
 Text color.
 
Font_t fTextFont
 Text font.
 
Float_t fTextSize
 Text size.
 

Static Protected Attributes

static Int_t fgLineCap = 0
 Appearance of line caps.
 
static Int_t fgLineJoin = 0
 Appearance of joining lines.
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 

#include <TPostScript.h>

Inheritance diagram for TPostScript:
[legend]

Constructor & Destructor Documentation

◆ TPostScript() [1/2]

TPostScript::TPostScript ( )

Default PostScript constructor.

Definition at line 269 of file TPostScript.cxx.

◆ TPostScript() [2/2]

TPostScript::TPostScript ( const char *  fname,
Int_t  wtype = -111 
)

Initialize the PostScript interface.

  • fname : PostScript file name
  • wtype : PostScript workstation type

The possible workstation types are:

  • 111 ps Portrait
  • 112 ps Landscape
  • 113 eps

Definition at line 346 of file TPostScript.cxx.

◆ ~TPostScript()

TPostScript::~TPostScript ( )
override

Default PostScript destructor.

Definition at line 434 of file TPostScript.cxx.

Member Function Documentation

◆ CellArrayBegin()

void TPostScript::CellArrayBegin ( Int_t  W,
Int_t  H,
Double_t  x1,
Double_t  x2,
Double_t  y1,
Double_t  y2 
)
overridevirtual

Draw a Cell Array.

Drawing a PostScript Cell Array is in fact done thanks to three procedures: CellArrayBegin, CellArrayFill, and CellArrayEnd.

  • CellArrayBegin: Initiate the Cell Array by writing the necessary PostScript procedures and the initial values of the required parameters. The input parameters are:
    • W: number of boxes along the width.
    • H: number of boxes along the height
    • x1,x2,y1,y2: First box coordinates.
  • CellArrayFill: Is called for each box of the Cell Array. The first box is the top left one and the last box is the bottom right one. The input parameters are the Red, Green, and Blue components of the box colour. These Levels are between 0 and 255.
  • CellArrayEnd: Finishes the Cell Array.

PostScript cannot handle arrays larger than 65535. So the Cell Array is drawn in several pieces.

Implements TVirtualPS.

Definition at line 558 of file TPostScript.cxx.

◆ CellArrayEnd()

void TPostScript::CellArrayEnd ( )
overridevirtual

End the Cell Array painting.

Implements TVirtualPS.

Definition at line 669 of file TPostScript.cxx.

◆ CellArrayFill()

void TPostScript::CellArrayFill ( Int_t  r,
Int_t  g,
Int_t  b 
)
overridevirtual

Paint the Cell Array.

Implements TVirtualPS.

Definition at line 631 of file TPostScript.cxx.

◆ Class()

static TClass * TPostScript::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TPostScript::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TPostScript::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 141 of file TPostScript.h.

◆ Close()

void TPostScript::Close ( Option_t opt = "")
overridevirtual

Close a PostScript file.

Implements TVirtualPS.

Definition at line 442 of file TPostScript.cxx.

◆ CMtoPS()

Int_t TPostScript::CMtoPS ( Double_t  u)
inline

Definition at line 93 of file TPostScript.h.

◆ DeclFileName()

static const char * TPostScript::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 141 of file TPostScript.h.

◆ DefineMarkers()

void TPostScript::DefineMarkers ( )

Define the markers.

Definition at line 680 of file TPostScript.cxx.

◆ DrawBox()

void TPostScript::DrawBox ( Double_t  x1,
Double_t  y1,
Double_t  x2,
Double_t  y2 
)
overridevirtual

Draw a Box.

Implements TVirtualPS.

Definition at line 760 of file TPostScript.cxx.

◆ DrawFrame()

void TPostScript::DrawFrame ( Double_t  xl,
Double_t  yl,
Double_t  xt,
Double_t  yt,
Int_t  mode,
Int_t  border,
Int_t  dark,
Int_t  light 
)
overridevirtual

Draw a Frame around a box.

  • mode = -1 box looks as it is behind the screen
  • mode = 1 box looks as it is in front of the screen
  • border is the border size in already precomputed PostScript units
  • dark is the color for the dark part of the frame
  • light is the color for the light part of the frame

Implements TVirtualPS.

Definition at line 822 of file TPostScript.cxx.

◆ DrawHatch() [1/2]

void TPostScript::DrawHatch ( Float_t  dy,
Float_t  angle,
Int_t  n,
Double_t x,
Double_t y 
)

Draw Fill area with hatch styles.

Definition at line 1479 of file TPostScript.cxx.

◆ DrawHatch() [2/2]

void TPostScript::DrawHatch ( Float_t  dy,
Float_t  angle,
Int_t  n,
Float_t x,
Float_t y 
)

Draw Fill area with hatch styles.

Definition at line 1471 of file TPostScript.cxx.

◆ DrawPolyLine()

void TPostScript::DrawPolyLine ( Int_t  nn,
TPoints xy 
)

Draw a PolyLine.

Draw a polyline through the points xy.

  • If nn=1 moves only to point x,y.
  • If nn=0 the x,y are written in the PostScript file according to the current transformation.
  • If nn>0 the line is clipped as a line.
  • If nn<0 the line is clipped as a fill area.

Definition at line 940 of file TPostScript.cxx.

◆ DrawPolyLineNDC()

void TPostScript::DrawPolyLineNDC ( Int_t  nn,
TPoints xy 
)

Draw a PolyLine in NDC space.

Draw a polyline through the points xy.

  • If nn=1 moves only to point x,y.
  • If nn=0 the x,y are written in the PostScript file according to the current transformation.
  • If nn>0 the line is clipped as a line.
  • If nn<0 the line is clipped as a fill area.

Definition at line 1024 of file TPostScript.cxx.

◆ DrawPolyMarker() [1/2]

void TPostScript::DrawPolyMarker ( Int_t  n,
Double_t x,
Double_t y 
)
overridevirtual

Draw markers at the n WC points x, y.

Implements TVirtualPS.

Definition at line 1175 of file TPostScript.cxx.

◆ DrawPolyMarker() [2/2]

void TPostScript::DrawPolyMarker ( Int_t  n,
Float_t x,
Float_t y 
)
overridevirtual

Draw markers at the n WC points x, y.

Implements TVirtualPS.

Definition at line 1101 of file TPostScript.cxx.

◆ DrawPS() [1/2]

void TPostScript::DrawPS ( Int_t  nn,
Double_t xw,
Double_t yw 
)
overridevirtual

Draw a PolyLine.

Draw a polyline through the points xw,yw.

  • If nn=1 moves only to point xw,yw.
  • If nn=0 the xw(1) and YW(1) are written in the PostScript file — according to the current NT.
  • If nn>0 the line is clipped as a line.
  • If nn<0 the line is clipped as a fill area.

Implements TVirtualPS.

Definition at line 1367 of file TPostScript.cxx.

◆ DrawPS() [2/2]

void TPostScript::DrawPS ( Int_t  nn,
Float_t xw,
Float_t yw 
)
overridevirtual

Draw a PolyLine.

Draw a polyline through the points xw,yw.

  • If nn=1 moves only to point xw,yw.
  • If nn=0 the XW(1) and YW(1) are written in the PostScript file according to the current NT.
  • If nn>0 the line is clipped as a line.
  • If nn<0 the line is clipped as a fill area.

Implements TVirtualPS.

Definition at line 1256 of file TPostScript.cxx.

◆ FontEmbed()

void TPostScript::FontEmbed ( void  )

Embed font in PS file.

Definition at line 1586 of file TPostScript.cxx.

◆ FontEmbedType1()

Bool_t TPostScript::FontEmbedType1 ( const char *  filename)

Definition at line 1486 of file TPostScript.cxx.

◆ FontEmbedType2()

Bool_t TPostScript::FontEmbedType2 ( const char *  filename)

Definition at line 1520 of file TPostScript.cxx.

◆ FontEmbedType42()

Bool_t TPostScript::FontEmbedType42 ( const char *  filename)

Definition at line 1552 of file TPostScript.cxx.

◆ FontEncode()

void TPostScript::FontEncode ( )

Font Re-encoding.

Definition at line 1675 of file TPostScript.cxx.

◆ Initialize()

void TPostScript::Initialize ( )

PostScript Initialisation.

This method initialize the following PostScript procedures:

Macro Name Input parameters Explanation
l x y Draw a line to the x y position
m x y Move to the position x y
box dx dy x y Define a box
bl dx dy x y Draw a line box
bf dx dy x y Draw a filled box
t x y Translate
r angle Rotate
rl i j Roll the stack
d x y Draw a relative line to x y
X x Draw a relative line to x (y=0)
Y y Draw a relative line to y (x=0)
rm x y Move relatively to x y
gr Restore the graphic context
lw lwidth Set line width to lwidth
sd [] 0 Set dash line define by []
s Stroke mode
c r g b Set rgb color to r g b
cl Close path
f Fill the last describe path
mXX x y Draw the marker type XX at (x,y)
Zone ix iy Define the current zone
black The color is black
C dx dy x y Clipping on
NC Clipping off
R repeat
ita Used to make the symbols italic
K kshow

Definition at line 1737 of file TPostScript.cxx.

◆ IsA()

TClass * TPostScript::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TNamed.

Definition at line 141 of file TPostScript.h.

◆ MovePS()

void TPostScript::MovePS ( Int_t  x,
Int_t  y 
)

Move to a new position.

Definition at line 2004 of file TPostScript.cxx.

◆ NewPage()

void TPostScript::NewPage ( )
overridevirtual

Move to a new PostScript page.

Implements TVirtualPS.

Definition at line 2022 of file TPostScript.cxx.

◆ Off()

void TPostScript::Off ( )

Deactivate an already open PostScript file.

Definition at line 531 of file TPostScript.cxx.

◆ On()

void TPostScript::On ( )

Activate an already open PostScript file.

Definition at line 518 of file TPostScript.cxx.

◆ Open()

void TPostScript::Open ( const char *  filename,
Int_t  type = -111 
)
overridevirtual

Open a PostScript file.

Implements TVirtualPS.

Definition at line 357 of file TPostScript.cxx.

◆ Range()

void TPostScript::Range ( Float_t  xrange,
Float_t  yrange 
)

Set the range for the paper in centimeters.

Definition at line 2062 of file TPostScript.cxx.

◆ SaveRestore()

void TPostScript::SaveRestore ( Int_t  flag)

Compute number of gsaves for restore This allows to write the correct number of grestore at the end of the PS file.

Definition at line 2120 of file TPostScript.cxx.

◆ SetColor() [1/2]

void TPostScript::SetColor ( Float_t  r,
Float_t  g,
Float_t  b 
)
overridevirtual

Set directly current color (don't go via TColor).

Implements TVirtualPS.

Definition at line 2576 of file TPostScript.cxx.

◆ SetColor() [2/2]

void TPostScript::SetColor ( Int_t  color = 1)

Set the current color.

Definition at line 2562 of file TPostScript.cxx.

◆ SetFillColor()

void TPostScript::SetFillColor ( Color_t  cindex = 1)
overridevirtual

Set color index for fill areas.

Reimplemented from TAttFill.

Definition at line 2129 of file TPostScript.cxx.

◆ SetFillPatterns()

void TPostScript::SetFillPatterns ( Int_t  ipat,
Int_t  color 
)

Patterns definition.

Define the pattern ipat in the current PS file. ipat can vary from 1 to 25. Together with the pattern, the color (color) in which the pattern has to be drawn is also required. A pattern is defined in the current PS file only the first time it is used. Some level 2 Postscript functions are used, so on level 1 printers, patterns will not work. This is not a big problem because patterns are defined only if they are used, so if they are not used a PS level 1 file will not be polluted by level 2 features, and in any case the old patterns used a lot of memory which made them almost unusable on old level 1 printers. Finally we should say that level 1 devices are becoming very rare. The official PostScript is now level 3 !

Definition at line 2151 of file TPostScript.cxx.

◆ SetLineCap()

void TPostScript::SetLineCap ( Int_t  linecap = 0)

Set the value of the global parameter TPostScript::fgLineCap.

This parameter determines the appearance of line caps in a PostScript output. It takes one argument which may be:

  • 0 (butt caps)
  • 1 (round caps)
  • 2 (projecting caps) The default value is 0 (butt caps).

To change the line cap behaviour just do:

gStyle->SetCapLinePS(2); // Set the PS line cap to projecting.
void SetCapLinePS(Int_t capline=0)
Set the line cap method used for PostScript, PDF and SVG output. See TPostScript::SetLineCap for deta...
Definition TStyle.h:305

Definition at line 2509 of file TPostScript.cxx.

◆ SetLineColor()

void TPostScript::SetLineColor ( Color_t  cindex = 1)
overridevirtual

Set color index for lines.

Reimplemented from TAttLine.

Definition at line 2462 of file TPostScript.cxx.

◆ SetLineJoin()

void TPostScript::SetLineJoin ( Int_t  linejoin = 0)

Set the value of the global parameter TPostScript::fgLineJoin.

This parameter determines the appearance of joining lines in a PostScript output. It takes one argument which may be:

  • 0 (miter join)
  • 1 (round join)
  • 2 (bevel join) The default value is 0 (miter join).

To change the line join behaviour just do:

gStyle->SetJoinLinePS(2); // Set the PS line join to bevel.
void SetJoinLinePS(Int_t joinline=0)
Set the line join method used for PostScript, PDF and SVG output. See TPostScript::SetLineJoin for de...
Definition TStyle.h:304

Definition at line 2485 of file TPostScript.cxx.

◆ SetLineScale()

void TPostScript::SetLineScale ( Float_t  scale = 3)
inline

Definition at line 124 of file TPostScript.h.

◆ SetLineStyle()

void TPostScript::SetLineStyle ( Style_t  linestyle = 1)
overridevirtual

Change the line style.

  • linestyle = 2 dashed
  • linestyle = 3 dotted
  • linestyle = 4 dash-dotted
  • linestyle = else = solid

See TStyle::SetLineStyleString for style definition

Reimplemented from TAttLine.

Definition at line 2526 of file TPostScript.cxx.

◆ SetLineWidth()

void TPostScript::SetLineWidth ( Width_t  linewidth = 1)
overridevirtual

Change the line width.

Reimplemented from TAttLine.

Definition at line 2540 of file TPostScript.cxx.

◆ SetMarkerColor()

void TPostScript::SetMarkerColor ( Color_t  cindex = 1)
overridevirtual

Set color index for markers.

Reimplemented from TAttMarker.

Definition at line 2553 of file TPostScript.cxx.

◆ SetTextColor()

void TPostScript::SetTextColor ( Color_t  cindex = 1)
overridevirtual

Set color index for text.

Reimplemented from TAttText.

Definition at line 2608 of file TPostScript.cxx.

◆ Streamer()

void TPostScript::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TNamed.

◆ StreamerNVirtual()

void TPostScript::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 141 of file TPostScript.h.

◆ Text() [1/2]

void TPostScript::Text ( Double_t  xx,
Double_t  yy,
const char *  chars 
)
overridevirtual

Write a string of characters.

This method writes the string chars into a PostScript file at position xx,yy in world coordinates.

Implements TVirtualPS.

Definition at line 2621 of file TPostScript.cxx.

◆ Text() [2/2]

void TPostScript::Text ( Double_t  xx,
Double_t  yy,
const wchar_t *  chars 
)
overridevirtual

Write a string of characters.

This method writes the string chars into a PostScript file at position xx,yy in world coordinates.

Implements TVirtualPS.

Definition at line 2826 of file TPostScript.cxx.

◆ TextNDC() [1/2]

void TPostScript::TextNDC ( Double_t  u,
Double_t  v,
const char *  string 
)

Write a string of characters in NDC.

Definition at line 2989 of file TPostScript.cxx.

◆ TextNDC() [2/2]

void TPostScript::TextNDC ( Double_t  u,
Double_t  v,
const wchar_t *  string 
)

Write a string of characters in NDC.

Definition at line 2999 of file TPostScript.cxx.

◆ UtoPS()

Int_t TPostScript::UtoPS ( Double_t  u)

Convert U from NDC coordinate to PostScript.

Definition at line 3009 of file TPostScript.cxx.

◆ VtoPS()

Int_t TPostScript::VtoPS ( Double_t  v)

Convert V from NDC coordinate to PostScript.

Definition at line 3018 of file TPostScript.cxx.

◆ XtoPS()

Int_t TPostScript::XtoPS ( Double_t  x)

Convert X from world coordinate to PostScript.

Definition at line 3027 of file TPostScript.cxx.

◆ YtoPS()

Int_t TPostScript::YtoPS ( Double_t  y)

Convert Y from world coordinate to PostScript.

Definition at line 3036 of file TPostScript.cxx.

◆ Zone()

void TPostScript::Zone ( )

Initialize the PostScript page in zones.

Definition at line 3045 of file TPostScript.cxx.

Member Data Documentation

◆ fBlue

Float_t TPostScript::fBlue
protected

Per cent of blue.

Definition at line 50 of file TPostScript.h.

◆ fBoundingBox

Bool_t TPostScript::fBoundingBox
protected

True for Encapsulated PostScript.

Definition at line 63 of file TPostScript.h.

◆ fClear

Bool_t TPostScript::fClear
protected

True when page must be cleared.

Definition at line 64 of file TPostScript.h.

◆ fClip

Int_t TPostScript::fClip
protected

Clipping mode.

Definition at line 62 of file TPostScript.h.

◆ fClipStatus

Bool_t TPostScript::fClipStatus
protected

Clipping Indicator.

Definition at line 65 of file TPostScript.h.

◆ fCurrentColor

Int_t TPostScript::fCurrentColor
protected

current Postscript color index

Definition at line 58 of file TPostScript.h.

◆ fDXC

Float_t TPostScript::fDXC
protected

Definition at line 31 of file TPostScript.h.

◆ fDYC

Float_t TPostScript::fDYC
protected

Definition at line 32 of file TPostScript.h.

◆ fFileName

TString TPostScript::fFileName
protected

PS file name.

Definition at line 77 of file TPostScript.h.

◆ fFontEmbed

Bool_t TPostScript::fFontEmbed
protected

True is FontEmbed has been called.

Definition at line 78 of file TPostScript.h.

◆ fFX

Float_t TPostScript::fFX
protected

Definition at line 35 of file TPostScript.h.

◆ fFY

Float_t TPostScript::fFY
protected

Definition at line 36 of file TPostScript.h.

◆ fgLineCap

Int_t TPostScript::fgLineCap = 0
staticprotected

Appearance of line caps.

Definition at line 81 of file TPostScript.h.

◆ fgLineJoin

Int_t TPostScript::fgLineJoin = 0
staticprotected

Appearance of joining lines.

Definition at line 80 of file TPostScript.h.

◆ fGreen

Float_t TPostScript::fGreen
protected

Per cent of green.

Definition at line 49 of file TPostScript.h.

◆ fIXzone

Int_t TPostScript::fIXzone
protected

Current zone along X.

Definition at line 55 of file TPostScript.h.

◆ fIYzone

Int_t TPostScript::fIYzone
protected

Current zone along Y.

Definition at line 56 of file TPostScript.h.

◆ fLastCellBlue

Int_t TPostScript::fLastCellBlue
protected

Last blue value.

Definition at line 75 of file TPostScript.h.

◆ fLastCellGreen

Int_t TPostScript::fLastCellGreen
protected

Last green value.

Definition at line 74 of file TPostScript.h.

◆ fLastCellRed

Int_t TPostScript::fLastCellRed
protected

Last red value.

Definition at line 73 of file TPostScript.h.

◆ fLineScale

Float_t TPostScript::fLineScale
protected

Line width scale factor.

Definition at line 51 of file TPostScript.h.

◆ fMarkerSizeCur

Float_t TPostScript::fMarkerSizeCur
protected

current transformed value of marker size

Definition at line 57 of file TPostScript.h.

◆ fMaxLines

Int_t TPostScript::fMaxLines
protected

Maximum number of lines in a PS array.

Definition at line 72 of file TPostScript.h.

◆ fMaxsize

Float_t TPostScript::fMaxsize
protected

Largest dimension of X and Y.

Definition at line 47 of file TPostScript.h.

◆ fMode

Int_t TPostScript::fMode
protected

PostScript mode.

Definition at line 61 of file TPostScript.h.

◆ fNbCellLine

Int_t TPostScript::fNbCellLine
protected

Number of boxes in the current line.

Definition at line 71 of file TPostScript.h.

◆ fNbCellW

Int_t TPostScript::fNbCellW
protected

Number of boxes per line.

Definition at line 70 of file TPostScript.h.

◆ fNbinCT

Int_t TPostScript::fNbinCT
protected

Number of entries in the current Cell Array.

Definition at line 69 of file TPostScript.h.

◆ fNBSameColorCell

Int_t TPostScript::fNBSameColorCell
protected

Number of boxes with the same color.

Definition at line 76 of file TPostScript.h.

◆ fNpages

Int_t TPostScript::fNpages
protected

number of pages

Definition at line 59 of file TPostScript.h.

◆ fNXzone

Int_t TPostScript::fNXzone
protected

Number of zones along X.

Definition at line 53 of file TPostScript.h.

◆ fNYzone

Int_t TPostScript::fNYzone
protected

Number of zones along Y.

Definition at line 54 of file TPostScript.h.

◆ fPatterns

char TPostScript::fPatterns[32]
protected

Indicate if pattern n is defined.

Definition at line 68 of file TPostScript.h.

◆ fRange

Bool_t TPostScript::fRange
protected

True when a range has been defined.

Definition at line 66 of file TPostScript.h.

◆ fRed

Float_t TPostScript::fRed
protected

Per cent of red.

Definition at line 48 of file TPostScript.h.

◆ fSave

Int_t TPostScript::fSave
protected

Number of gsave for restore.

Definition at line 52 of file TPostScript.h.

◆ fType

Int_t TPostScript::fType
protected

PostScript workstation type.

Definition at line 60 of file TPostScript.h.

◆ fX1v

Float_t TPostScript::fX1v
protected

X bottom left corner of paper.

Definition at line 23 of file TPostScript.h.

◆ fX1w

Float_t TPostScript::fX1w
protected

Definition at line 27 of file TPostScript.h.

◆ fX2v

Float_t TPostScript::fX2v
protected

X top right corner of paper.

Definition at line 25 of file TPostScript.h.

◆ fX2w

Float_t TPostScript::fX2w
protected

Definition at line 29 of file TPostScript.h.

◆ fXC

Float_t TPostScript::fXC
protected

Definition at line 33 of file TPostScript.h.

◆ fXsize

Float_t TPostScript::fXsize
protected

Page size along X.

Definition at line 45 of file TPostScript.h.

◆ fXVP1

Float_t TPostScript::fXVP1
protected

Definition at line 37 of file TPostScript.h.

◆ fXVP2

Float_t TPostScript::fXVP2
protected

Definition at line 38 of file TPostScript.h.

◆ fXVS1

Float_t TPostScript::fXVS1
protected

Definition at line 41 of file TPostScript.h.

◆ fXVS2

Float_t TPostScript::fXVS2
protected

Definition at line 42 of file TPostScript.h.

◆ fY1v

Float_t TPostScript::fY1v
protected

Y bottom left corner of paper.

Definition at line 24 of file TPostScript.h.

◆ fY1w

Float_t TPostScript::fY1w
protected

Definition at line 28 of file TPostScript.h.

◆ fY2v

Float_t TPostScript::fY2v
protected

Y top right corner of paper.

Definition at line 26 of file TPostScript.h.

◆ fY2w

Float_t TPostScript::fY2w
protected

Definition at line 30 of file TPostScript.h.

◆ fYC

Float_t TPostScript::fYC
protected

Definition at line 34 of file TPostScript.h.

◆ fYsize

Float_t TPostScript::fYsize
protected

Page size along Y.

Definition at line 46 of file TPostScript.h.

◆ fYVP1

Float_t TPostScript::fYVP1
protected

Definition at line 39 of file TPostScript.h.

◆ fYVP2

Float_t TPostScript::fYVP2
protected

Definition at line 40 of file TPostScript.h.

◆ fYVS1

Float_t TPostScript::fYVS1
protected

Definition at line 43 of file TPostScript.h.

◆ fYVS2

Float_t TPostScript::fYVS2
protected

Definition at line 44 of file TPostScript.h.

◆ fZone

Bool_t TPostScript::fZone
protected

Zone indicator.

Definition at line 67 of file TPostScript.h.

Libraries for TPostScript:

The documentation for this class was generated from the following files: