Logo ROOT  
Reference Guide
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();
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
Definition: TObject.cxx:195
Interface to PostScript.
Definition: TPostScript.h:20
void Close(Option_t *opt="")
Close a PostScript file.
void Range(Float_t xrange, Float_t yrange)
Set the range for the paper in centimeters.

You can set the default paper size with:

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

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:2375
Type
enumeration specifying the integration types.

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.
    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
int Int_t
Definition: RtypesCore.h:41
int type
Definition: TGX11.cxx:120
The Canvas class.
Definition: TCanvas.h:31
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
Definition: TFile.h:48
static constexpr double ps

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:560
TPostScript()
Default PostScript constructor.
virtual Int_t Exec(const char *shellcmd)
Execute a command.
Definition: TSystem.cxx:663
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
}
virtual void Draw(Option_t *option="")
Draw this histogram with options.
Definition: TH1.cxx:2998
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);
double Double_t
Definition: RtypesCore.h:55
Short_t Min(Short_t a, Short_t b)
Definition: TMathBase.h:180

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

Protected Attributes

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

Static Protected Attributes

static Int_t fgLineJoin = 0
 Appearance of joining lines. More...
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- 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). More...
 
void MakeZombie ()
 

#include <TPostScript.h>

Inheritance diagram for TPostScript:
[legend]

Constructor & Destructor Documentation

◆ TPostScript() [1/2]

TPostScript::TPostScript ( )

Default PostScript constructor.

Definition at line 265 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 343 of file TPostScript.cxx.

◆ ~TPostScript()

TPostScript::~TPostScript ( )
virtual

Default PostScript destructor.

Definition at line 430 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 
)
virtual

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 554 of file TPostScript.cxx.

◆ CellArrayEnd()

void TPostScript::CellArrayEnd ( )
virtual

End the Cell Array painting.

Implements TVirtualPS.

Definition at line 665 of file TPostScript.cxx.

◆ CellArrayFill()

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

Paint the Cell Array.

Implements TVirtualPS.

Definition at line 627 of file TPostScript.cxx.

◆ Close()

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

Close a PostScript file.

Implements TVirtualPS.

Definition at line 438 of file TPostScript.cxx.

◆ CMtoPS()

Int_t TPostScript::CMtoPS ( Double_t  u)
inline

Definition at line 93 of file TPostScript.h.

◆ DefineMarkers()

void TPostScript::DefineMarkers ( )

Define the markers.

Definition at line 676 of file TPostScript.cxx.

◆ DrawBox()

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

Draw a Box.

Implements TVirtualPS.

Definition at line 756 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 
)
virtual

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 818 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 1473 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 1465 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 936 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 1020 of file TPostScript.cxx.

◆ DrawPolyMarker() [1/2]

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

Draw markers at the n WC points x, y.

Implements TVirtualPS.

Definition at line 1170 of file TPostScript.cxx.

◆ DrawPolyMarker() [2/2]

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

Draw markers at the n WC points x, y.

Implements TVirtualPS.

Definition at line 1097 of file TPostScript.cxx.

◆ DrawPS() [1/2]

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

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 1361 of file TPostScript.cxx.

◆ DrawPS() [2/2]

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

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 1250 of file TPostScript.cxx.

◆ FontEmbed()

void TPostScript::FontEmbed ( void  )

Embed font in PS file.

Definition at line 1580 of file TPostScript.cxx.

◆ FontEmbedType1()

Bool_t TPostScript::FontEmbedType1 ( const char *  filename)

Definition at line 1480 of file TPostScript.cxx.

◆ FontEmbedType2()

Bool_t TPostScript::FontEmbedType2 ( const char *  filename)

Definition at line 1514 of file TPostScript.cxx.

◆ FontEmbedType42()

Bool_t TPostScript::FontEmbedType42 ( const char *  filename)

Definition at line 1546 of file TPostScript.cxx.

◆ FontEncode()

void TPostScript::FontEncode ( )

Font Re-encoding.

Definition at line 1669 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 1731 of file TPostScript.cxx.

◆ MovePS()

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

Move to a new position.

Definition at line 1998 of file TPostScript.cxx.

◆ NewPage()

void TPostScript::NewPage ( )
virtual

Move to a new PostScript page.

Implements TVirtualPS.

Definition at line 2016 of file TPostScript.cxx.

◆ Off()

void TPostScript::Off ( )

Deactivate an already open PostScript file.

Definition at line 527 of file TPostScript.cxx.

◆ On()

void TPostScript::On ( )

Activate an already open PostScript file.

Definition at line 514 of file TPostScript.cxx.

◆ Open()

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

Open a PostScript file.

Implements TVirtualPS.

Definition at line 354 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 2056 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 2114 of file TPostScript.cxx.

◆ SetColor() [1/2]

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

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

Implements TVirtualPS.

Definition at line 2546 of file TPostScript.cxx.

◆ SetColor() [2/2]

void TPostScript::SetColor ( Int_t  color = 1)

Set the current color.

Definition at line 2532 of file TPostScript.cxx.

◆ SetFillColor()

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

Set color index for fill areas.

Reimplemented from TAttFill.

Definition at line 2123 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 2145 of file TPostScript.cxx.

◆ SetLineColor()

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

Set color index for lines.

Reimplemented from TAttLine.

Definition at line 2456 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)
Definition: TStyle.h:288

Definition at line 2479 of file TPostScript.cxx.

◆ SetLineScale()

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

Definition at line 125 of file TPostScript.h.

◆ SetLineStyle()

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

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 2496 of file TPostScript.cxx.

◆ SetLineWidth()

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

Change the line width.

Reimplemented from TAttLine.

Definition at line 2510 of file TPostScript.cxx.

◆ SetMarkerColor()

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

Set color index for markers.

Reimplemented from TAttMarker.

Definition at line 2523 of file TPostScript.cxx.

◆ SetTextColor()

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

Set color index for text.

Reimplemented from TAttText.

Definition at line 2578 of file TPostScript.cxx.

◆ Text() [1/2]

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

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 2591 of file TPostScript.cxx.

◆ Text() [2/2]

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

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 2796 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 2959 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 2969 of file TPostScript.cxx.

◆ UtoPS()

Int_t TPostScript::UtoPS ( Double_t  u)

Convert U from NDC coordinate to PostScript.

Definition at line 2979 of file TPostScript.cxx.

◆ VtoPS()

Int_t TPostScript::VtoPS ( Double_t  v)

Convert V from NDC coordinate to PostScript.

Definition at line 2988 of file TPostScript.cxx.

◆ XtoPS()

Int_t TPostScript::XtoPS ( Double_t  x)

Convert X from world coordinate to PostScript.

Definition at line 2997 of file TPostScript.cxx.

◆ YtoPS()

Int_t TPostScript::YtoPS ( Double_t  y)

Convert Y from world coordinate to PostScript.

Definition at line 3006 of file TPostScript.cxx.

◆ Zone()

void TPostScript::Zone ( )

Initialize the PostScript page in zones.

Definition at line 3015 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 64 of file TPostScript.h.

◆ fClear

Bool_t TPostScript::fClear
protected

True when page must be cleared.

Definition at line 65 of file TPostScript.h.

◆ fClip

Int_t TPostScript::fClip
protected

Clipping mode.

Definition at line 63 of file TPostScript.h.

◆ fClipStatus

Bool_t TPostScript::fClipStatus
protected

Clipping Indicator.

Definition at line 66 of file TPostScript.h.

◆ fCurrentColor

Int_t TPostScript::fCurrentColor
protected

current Postscript color index

Definition at line 59 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 78 of file TPostScript.h.

◆ fFontEmbed

Bool_t TPostScript::fFontEmbed
protected

True is FontEmbed has been called.

Definition at line 79 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.

◆ fgLineJoin

Int_t TPostScript::fgLineJoin = 0
staticprotected

Appearance of joining lines.

Definition at line 81 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 56 of file TPostScript.h.

◆ fIYzone

Int_t TPostScript::fIYzone
protected

Current zone along Y.

Definition at line 57 of file TPostScript.h.

◆ fLastCellBlue

Int_t TPostScript::fLastCellBlue
protected

Last blue value.

Definition at line 76 of file TPostScript.h.

◆ fLastCellGreen

Int_t TPostScript::fLastCellGreen
protected

Last green value.

Definition at line 75 of file TPostScript.h.

◆ fLastCellRed

Int_t TPostScript::fLastCellRed
protected

Last red value.

Definition at line 74 of file TPostScript.h.

◆ fLineJoin

Int_t TPostScript::fLineJoin
protected

Appearance of joining lines.

Definition at line 52 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 58 of file TPostScript.h.

◆ fMaxLines

Int_t TPostScript::fMaxLines
protected

Maximum number of lines in a PS array.

Definition at line 73 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 62 of file TPostScript.h.

◆ fNbCellLine

Int_t TPostScript::fNbCellLine
protected

Number of boxes in the current line.

Definition at line 72 of file TPostScript.h.

◆ fNbCellW

Int_t TPostScript::fNbCellW
protected

Number of boxes per line.

Definition at line 71 of file TPostScript.h.

◆ fNbinCT

Int_t TPostScript::fNbinCT
protected

Number of entries in the current Cell Array.

Definition at line 70 of file TPostScript.h.

◆ fNBSameColorCell

Int_t TPostScript::fNBSameColorCell
protected

Number of boxes with the same color.

Definition at line 77 of file TPostScript.h.

◆ fNpages

Int_t TPostScript::fNpages
protected

number of pages

Definition at line 60 of file TPostScript.h.

◆ fNXzone

Int_t TPostScript::fNXzone
protected

Number of zones along X.

Definition at line 54 of file TPostScript.h.

◆ fNYzone

Int_t TPostScript::fNYzone
protected

Number of zones along Y.

Definition at line 55 of file TPostScript.h.

◆ fPatterns

char TPostScript::fPatterns[32]
protected

Indicate if pattern n is defined.

Definition at line 69 of file TPostScript.h.

◆ fRange

Bool_t TPostScript::fRange
protected

True when a range has been defined.

Definition at line 67 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 53 of file TPostScript.h.

◆ fType

Int_t TPostScript::fType
protected

PostScript workstation type.

Definition at line 61 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 68 of file TPostScript.h.

Libraries for TPostScript:
[legend]

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