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

Interface to PDF.

Like PostScript, PDF is a vector graphics output format allowing a very high graphics output quality. The functionalities provided by this class are very similar to those provided by TPostScript.

Compare to PostScript output, the PDF files are usually smaller because some parts of them can be compressed.

PDF also allows to define table of contents. This facility can be used in ROOT. The following example shows how to proceed:

{
TCanvas* canvas = new TCanvas("canvas");
TH1F* histo = new TH1F("histo","test 1",10,0.,10.);
histo->SetFillColor(2);
histo->Fill(2.);
histo->Draw();
canvas->Print("plots.pdf(","Title:One bin filled");
histo->Fill(4.);
histo->Draw();
canvas->Print("plots.pdf","Title:Two bins filled");
histo->Fill(6.);
histo->Draw();
canvas->Print("plots.pdf","Title:Three bins filled");
histo->Fill(8.);
histo->Draw();
canvas->Print("plots.pdf","Title:Four bins filled");
histo->Fill(8.);
histo->Draw();
canvas->Print("plots.pdf)","Title:The fourth bin content is 2");
}
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
Definition TAttFill.h:37
The Canvas class.
Definition TCanvas.h:23
1-D histogram with a float per channel (see TH1 documentation)}
Definition TH1.h:577
virtual Int_t Fill(Double_t x)
Increment bin with abscissa X by 1.
Definition TH1.cxx:3345
void Draw(Option_t *option="") override
Draw this histogram with options.
Definition TH1.cxx:3067
void Print(const char *filename="") const override
This method is equivalent to SaveAs("filename"). See TPad::SaveAs for details.
Definition TPad.cxx:4688

Each character string following the keyword "Title:" makes a new entry in the table of contents.

Definition at line 30 of file TPDF.h.

Public Member Functions

 TPDF ()
 Default PDF constructor.
 
 TPDF (const char *filename, Int_t type=-111)
 Initialize the PDF interface.
 
 ~TPDF () override
 Default PDF destructor.
 
void CellArrayBegin (Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2) override
 Begin the Cell Array painting.
 
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 PDF file.
 
Double_t CMtoPDF (Double_t u)
 
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 xw, yw.
 
void DrawPolyMarker (Int_t n, Float_t *x, Float_t *y) override
 Draw markers at the n WC points xw, yw.
 
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 EndObject ()
 Close the current opened object.
 
void FontEncode ()
 Font encoding.
 
TClassIsA () const override
 
void LineTo (Double_t x, Double_t y)
 Draw a line to a new position.
 
void MoveTo (Double_t x, Double_t y)
 Move to a new position.
 
void NewObject (Int_t n)
 Create a new object in the PDF file.
 
void NewPage () override
 Start a new PDF page.
 
void Off ()
 Deactivate an already open PDF file.
 
void On ()
 Activate an already open PDF file.
 
void Open (const char *filename, Int_t type=-111) override
 Open a PDF file.
 
void PatternEncode ()
 Patterns encoding.
 
void PrintFast (Int_t nch, const char *string="") override
 Fast version of Print.
 
void PrintStr (const char *string="") override
 Output the string str in the output buffer.
 
void Range (Float_t xrange, Float_t yrange)
 Set the range for the paper in centimetres.
 
void SetAlpha (Float_t alpha=1.)
 Set the alpha channel value.
 
void SetColor (Float_t r, Float_t g, Float_t b) override
 Set color with its R G B components:
 
void SetColor (Int_t color=1)
 Set color with its color index.
 
void SetFillColor (Color_t cindex=1) override
 Set color index for fill areas.
 
void SetFillPatterns (Int_t ipat, Int_t color)
 Set the fill patterns (1 to 25) for fill areas.
 
void SetLineCap (Int_t linecap=0)
 Set the value of the global parameter TPDF::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 TPDF::fgLineJoin.
 
void SetLineScale (Float_t scale=1)
 
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
 Draw text.
 
void Text (Double_t, Double_t, const wchar_t *) 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, Double_t, const wchar_t *)
 Write a string of characters in NDC.
 
Double_t UtoPDF (Double_t u)
 Convert U from NDC coordinate to PDF.
 
Double_t VtoPDF (Double_t v)
 Convert V from NDC coordinate to PDF.
 
void WriteCompressedBuffer ()
 Write the buffer in a compressed way.
 
void WriteReal (Float_t r, Bool_t space=kTRUE) override
 Write a Real number to the file.
 
Double_t XtoPDF (Double_t x)
 Convert X from world coordinate to PDF.
 
Double_t YtoPDF (Double_t y)
 Convert Y from world coordinate to PDF.
 
- 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 PrintRaw (Int_t len, const char *str)
 Print a raw.
 
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.
 
- 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 marker 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 fAlpha
 Per cent of transparency.
 
std::vector< float > fAlphas
 List of alpha values used.
 
Float_t fBlue
 Per cent of blue.
 
Bool_t fCompress
 True when fBuffer must be compressed.
 
Float_t fGreen
 Per cent of green.
 
Float_t fLineScale
 Line width scale factor.
 
Int_t fNbObj {0}
 Number of objects.
 
Int_t fNbPage
 Number of pages.
 
Int_tfObjPos {nullptr}
 Objects position.
 
Int_t fObjPosSize {0}
 Real size of fObjPos.
 
Int_t fPageFormat
 Page format (A4, Letter etc ...)
 
Bool_t fPageNotEmpty
 True if the current page is not empty.
 
Int_t fPageOrientation
 Page orientation (Portrait, Landscape)
 
Bool_t fRange
 True when a range has been defined.
 
Float_t fRed
 Per cent of red.
 
Int_t fStartStream
 
Int_t fType
 Workstation type used to know if the PDF is open.
 
Float_t fXsize
 Page size along X.
 
Float_t fYsize
 Page size along Y.
 
- 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.
 
static Bool_t fgObjectIsOpen = kFALSE
 Indicates if an object is open.
 

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 <TPDF.h>

Inheritance diagram for TPDF:
[legend]

Constructor & Destructor Documentation

◆ TPDF() [1/2]

TPDF::TPDF ( )

Default PDF constructor.

Definition at line 106 of file TPDF.cxx.

◆ TPDF() [2/2]

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

Initialize the PDF interface.

  • fname : PDF file name
  • wtype : PDF workstation type. Not used in the PDF driver. But as TPDF inherits from TVirtualPS it should be kept. Anyway it is not necessary to specify this parameter at creation time because it has a default value (which is ignore in the PDF case).

Definition at line 137 of file TPDF.cxx.

◆ ~TPDF()

TPDF::~TPDF ( )
override

Default PDF destructor.

Definition at line 162 of file TPDF.cxx.

Member Function Documentation

◆ CellArrayBegin()

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

Begin the Cell Array painting.

Implements TVirtualPS.

Definition at line 172 of file TPDF.cxx.

◆ CellArrayEnd()

void TPDF::CellArrayEnd ( )
overridevirtual

End the Cell Array painting.

Implements TVirtualPS.

Definition at line 189 of file TPDF.cxx.

◆ CellArrayFill()

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

Paint the Cell Array.

Implements TVirtualPS.

Definition at line 181 of file TPDF.cxx.

◆ Class()

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

◆ Class_Name()

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

◆ Class_Version()

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

Definition at line 115 of file TPDF.h.

◆ Close()

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

Close a PDF file.

Implements TVirtualPS.

Definition at line 197 of file TPDF.cxx.

◆ CMtoPDF()

Double_t TPDF::CMtoPDF ( Double_t  u)
inline

Definition at line 66 of file TPDF.h.

◆ DeclFileName()

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

Definition at line 115 of file TPDF.h.

◆ DrawBox()

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

Draw a Box.

Implements TVirtualPS.

Definition at line 351 of file TPDF.cxx.

◆ DrawFrame()

void TPDF::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 PDF 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 417 of file TPDF.cxx.

◆ DrawHatch() [1/2]

void TPDF::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 465 of file TPDF.cxx.

◆ DrawHatch() [2/2]

void TPDF::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 457 of file TPDF.cxx.

◆ DrawPolyLine()

void TPDF::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 PDF 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 481 of file TPDF.cxx.

◆ DrawPolyLineNDC()

void TPDF::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 PDF 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 535 of file TPDF.cxx.

◆ DrawPolyMarker() [1/2]

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

Draw markers at the n WC points xw, yw.

Implements TVirtualPS.

Definition at line 897 of file TPDF.cxx.

◆ DrawPolyMarker() [2/2]

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

Draw markers at the n WC points xw, yw.

Implements TVirtualPS.

Definition at line 581 of file TPDF.cxx.

◆ DrawPS() [1/2]

void TPDF::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 PDF 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 1296 of file TPDF.cxx.

◆ DrawPS() [2/2]

void TPDF::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 PDF 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 1209 of file TPDF.cxx.

◆ EndObject()

void TPDF::EndObject ( )

Close the current opened object.

Definition at line 1375 of file TPDF.cxx.

◆ FontEncode()

void TPDF::FontEncode ( )

Font encoding.

Definition at line 1387 of file TPDF.cxx.

◆ IsA()

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

Reimplemented from TNamed.

Definition at line 115 of file TPDF.h.

◆ LineTo()

void TPDF::LineTo ( Double_t  x,
Double_t  y 
)

Draw a line to a new position.

Definition at line 1419 of file TPDF.cxx.

◆ MoveTo()

void TPDF::MoveTo ( Double_t  x,
Double_t  y 
)

Move to a new position.

Definition at line 1429 of file TPDF.cxx.

◆ NewObject()

void TPDF::NewObject ( Int_t  n)

Create a new object in the PDF file.

Definition at line 1439 of file TPDF.cxx.

◆ NewPage()

void TPDF::NewPage ( )
overridevirtual

Start a new PDF page.

Implements TVirtualPS.

Definition at line 1465 of file TPDF.cxx.

◆ Off()

void TPDF::Off ( )

Deactivate an already open PDF file.

Definition at line 1643 of file TPDF.cxx.

◆ On()

void TPDF::On ( )

Activate an already open PDF file.

Definition at line 1651 of file TPDF.cxx.

◆ Open()

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

Open a PDF file.

Implements TVirtualPS.

Definition at line 1667 of file TPDF.cxx.

◆ PatternEncode()

void TPDF::PatternEncode ( )

Patterns encoding.

Definition at line 2474 of file TPDF.cxx.

◆ PrintFast()

void TPDF::PrintFast ( Int_t  nch,
const char *  string = "" 
)
overridevirtual

Fast version of Print.

Reimplemented from TVirtualPS.

Definition at line 1857 of file TPDF.cxx.

◆ PrintStr()

void TPDF::PrintStr ( const char *  string = "")
overridevirtual

Output the string str in the output buffer.

Reimplemented from TVirtualPS.

Definition at line 1835 of file TPDF.cxx.

◆ Range()

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

Set the range for the paper in centimetres.

Definition at line 1876 of file TPDF.cxx.

◆ SetAlpha()

void TPDF::SetAlpha ( Float_t  alpha = 1.)

Set the alpha channel value.

Definition at line 1886 of file TPDF.cxx.

◆ SetColor() [1/2]

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

Set color with its R G B components:

  • r: % of red in [0,1]
  • g: % of green in [0,1]
  • b: % of blue in [0,1]

Implements TVirtualPS.

Definition at line 1927 of file TPDF.cxx.

◆ SetColor() [2/2]

void TPDF::SetColor ( Int_t  color = 1)

Set color with its color index.

Definition at line 1906 of file TPDF.cxx.

◆ SetFillColor()

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

Set color index for fill areas.

Reimplemented from TAttFill.

Definition at line 1979 of file TPDF.cxx.

◆ SetFillPatterns()

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

Set the fill patterns (1 to 25) for fill areas.

Definition at line 1987 of file TPDF.cxx.

◆ SetLineCap()

void TPDF::SetLineCap ( Int_t  linecap = 0)

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

This parameter determines the appearance of line caps in a PDF 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 PDF line cap to projecting.
R__EXTERN TStyle * gStyle
Definition TStyle.h:433
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 2085 of file TPDF.cxx.

◆ SetLineColor()

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

Set color index for lines.

Reimplemented from TAttLine.

Definition at line 2039 of file TPDF.cxx.

◆ SetLineJoin()

void TPDF::SetLineJoin ( Int_t  linejoin = 0)

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

This parameter determines the appearance of joining lines in a PDF 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 PDF 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 2061 of file TPDF.cxx.

◆ SetLineScale()

void TPDF::SetLineScale ( Float_t  scale = 1)
inline

Definition at line 99 of file TPDF.h.

◆ SetLineStyle()

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

Change the line style.

  • linestyle = 2 dashed
  • linestyle = 3 dotted
  • linestyle = 4 dash-dotted
  • linestyle = else solid (1 in is used most of the time)

Reimplemented from TAttLine.

Definition at line 2100 of file TPDF.cxx.

◆ SetLineWidth()

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

Change the line width.

Reimplemented from TAttLine.

Definition at line 2119 of file TPDF.cxx.

◆ SetMarkerColor()

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

Set color index for markers.

Reimplemented from TAttMarker.

Definition at line 2132 of file TPDF.cxx.

◆ SetTextColor()

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

Set color index for text.

Reimplemented from TAttText.

Definition at line 2140 of file TPDF.cxx.

◆ Streamer()

void TPDF::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TNamed.

◆ StreamerNVirtual()

void TPDF::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 115 of file TPDF.h.

◆ Text() [1/2]

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

Draw text.

  • xx: x position of the text
  • yy: y position of the text
  • chars: text to be drawn

Implements TVirtualPS.

Definition at line 2152 of file TPDF.cxx.

◆ Text() [2/2]

void TPDF::Text ( Double_t  ,
Double_t  ,
const wchar_t *   
)
overridevirtual

Write a string of characters.

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

Implements TVirtualPS.

Definition at line 2345 of file TPDF.cxx.

◆ TextNDC() [1/2]

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

Write a string of characters in NDC.

Definition at line 2352 of file TPDF.cxx.

◆ TextNDC() [2/2]

void TPDF::TextNDC ( Double_t  u,
Double_t  v,
const wchar_t *  chars 
)

Write a string of characters in NDC.

Definition at line 2362 of file TPDF.cxx.

◆ UtoPDF()

Double_t TPDF::UtoPDF ( Double_t  u)

Convert U from NDC coordinate to PDF.

Definition at line 2372 of file TPDF.cxx.

◆ VtoPDF()

Double_t TPDF::VtoPDF ( Double_t  v)

Convert V from NDC coordinate to PDF.

Definition at line 2381 of file TPDF.cxx.

◆ WriteCompressedBuffer()

void TPDF::WriteCompressedBuffer ( )

Write the buffer in a compressed way.

Definition at line 2408 of file TPDF.cxx.

◆ WriteReal()

void TPDF::WriteReal ( Float_t  z,
Bool_t  space = kTRUE 
)
overridevirtual

Write a Real number to the file.

This method overwrites TVirtualPS::WriteReal. Some PDF reader like Acrobat do not work when a PDF file contains reals with exponent. This method writes the real number "z" using the format "%f" instead of the format "%g" when writing it with "%g" generates a number with exponent.

Reimplemented from TVirtualPS.

Definition at line 2458 of file TPDF.cxx.

◆ XtoPDF()

Double_t TPDF::XtoPDF ( Double_t  x)

Convert X from world coordinate to PDF.

Definition at line 2390 of file TPDF.cxx.

◆ YtoPDF()

Double_t TPDF::YtoPDF ( Double_t  y)

Convert Y from world coordinate to PDF.

Definition at line 2399 of file TPDF.cxx.

Member Data Documentation

◆ fAlpha

Float_t TPDF::fAlpha
protected

Per cent of transparency.

Definition at line 36 of file TPDF.h.

◆ fAlphas

std::vector<float> TPDF::fAlphas
protected

List of alpha values used.

Definition at line 37 of file TPDF.h.

◆ fBlue

Float_t TPDF::fBlue
protected

Per cent of blue.

Definition at line 35 of file TPDF.h.

◆ fCompress

Bool_t TPDF::fCompress
protected

True when fBuffer must be compressed.

Definition at line 50 of file TPDF.h.

◆ fgLineCap

Int_t TPDF::fgLineCap = 0
staticprotected

Appearance of line caps.

Definition at line 54 of file TPDF.h.

◆ fgLineJoin

Int_t TPDF::fgLineJoin = 0
staticprotected

Appearance of joining lines.

Definition at line 53 of file TPDF.h.

◆ fgObjectIsOpen

Bool_t TPDF::fgObjectIsOpen = kFALSE
staticprotected

Indicates if an object is open.

Definition at line 55 of file TPDF.h.

◆ fGreen

Float_t TPDF::fGreen
protected

Per cent of green.

Definition at line 34 of file TPDF.h.

◆ fLineScale

Float_t TPDF::fLineScale
protected

Line width scale factor.

Definition at line 44 of file TPDF.h.

◆ fNbObj

Int_t TPDF::fNbObj {0}
protected

Number of objects.

Definition at line 47 of file TPDF.h.

◆ fNbPage

Int_t TPDF::fNbPage
protected

Number of pages.

Definition at line 48 of file TPDF.h.

◆ fObjPos

Int_t* TPDF::fObjPos {nullptr}
protected

Objects position.

Definition at line 45 of file TPDF.h.

◆ fObjPosSize

Int_t TPDF::fObjPosSize {0}
protected

Real size of fObjPos.

Definition at line 46 of file TPDF.h.

◆ fPageFormat

Int_t TPDF::fPageFormat
protected

Page format (A4, Letter etc ...)

Definition at line 41 of file TPDF.h.

◆ fPageNotEmpty

Bool_t TPDF::fPageNotEmpty
protected

True if the current page is not empty.

Definition at line 49 of file TPDF.h.

◆ fPageOrientation

Int_t TPDF::fPageOrientation
protected

Page orientation (Portrait, Landscape)

Definition at line 42 of file TPDF.h.

◆ fRange

Bool_t TPDF::fRange
protected

True when a range has been defined.

Definition at line 51 of file TPDF.h.

◆ fRed

Float_t TPDF::fRed
protected

Per cent of red.

Definition at line 33 of file TPDF.h.

◆ fStartStream

Int_t TPDF::fStartStream
protected

Definition at line 43 of file TPDF.h.

◆ fType

Int_t TPDF::fType
protected

Workstation type used to know if the PDF is open.

Definition at line 40 of file TPDF.h.

◆ fXsize

Float_t TPDF::fXsize
protected

Page size along X.

Definition at line 38 of file TPDF.h.

◆ fYsize

Float_t TPDF::fYsize
protected

Page size along Y.

Definition at line 39 of file TPDF.h.

Libraries for TPDF:

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