wxPdfDocument Class Reference

Class representing a PDF document. More...

#include <pdfdoc.h>

List of all members.

Public Member Functions

 wxPdfDocument (int orientation=wxPORTRAIT, const wxString &unit=wxString(_T("mm")), wxPaperSize format=wxPAPER_A4)
 Constructor.
virtual ~wxPdfDocument ()
virtual void SetProtection (int permissions, const wxString &userPassword=wxEmptyString, const wxString &ownerPassword=wxEmptyString, wxPdfEncryptionMethod encryptionMethod=wxPDF_ENCRYPTION_RC4V1, int keyLength=0)
 Set permissions as well as user and owner passwords.
virtual void SetImageScale (double scale)
 Set the image scale.
virtual double GetImageScale ()
 Returns the image scale.
virtual double GetPageWidth ()
 Returns the page width in units.
virtual double GetPageHeight ()
 Returns the page height in units.
virtual double GetBreakMargin ()
 Returns the page break margin.
virtual double GetScaleFactor ()
 Returns the scale factor (number of points in user unit).
virtual void SetMargins (double left, double top, double right=-1)
 Defines the left, top and right margins.
virtual void SetLeftMargin (double margin)
 Defines the left margin.
virtual double GetLeftMargin ()
 Returns the left margin.
virtual void SetTopMargin (double margin)
 Defines the top margin.
virtual double GetTopMargin ()
 Returns the top margin.
virtual void SetRightMargin (double margin)
 Defines the right margin.
virtual double GetRightMargin ()
 Returns the right margin.
virtual void SetCellMargin (double margin)
 Defines the cell margin.
virtual double GetCellMargin ()
 Returns the cell margin.
virtual void SetLineHeight (double height)
 Sets the height of a text line.
virtual double GetLineHeight ()
 Returns the height of a text line.
virtual void SetAutoPageBreak (bool autoPageBreak, double margin=0)
 Enables or disables the automatic page breaking mode.
virtual void SetDisplayMode (wxPdfZoom zoom, wxPdfLayout layout=wxPDF_LAYOUT_CONTINUOUS, double zoomFactor=100.)
 Defines the way the document is to be displayed by the viewer.
virtual void SetCompression (bool compress)
 Activates or deactivates page compression.
virtual void SetViewerPreferences (int preferences=0)
 Defines the viewer preferences.
virtual void SetTitle (const wxString &title)
 Defines the title of the document.
virtual void SetSubject (const wxString &subject)
 Defines the subject of the document.
virtual void SetAuthor (const wxString &author)
 Defines the author of the document.
virtual void SetKeywords (const wxString &keywords)
 Associates keywords with the document,.
virtual void SetCreator (const wxString &creator)
 Defines the creator of the document.
virtual void AliasNbPages (const wxString &alias=wxString(_T("{nb}")))
 Defines an alias for the total number of pages.
virtual void Open ()
 This method begins the generation of the PDF document.
virtual void Close ()
 Terminates the PDF document.
virtual void AddPage (int orientation=-1)
 Adds a new page to the document.
virtual void Header ()
 This method is used to render the page header.
virtual void Footer ()
 This method is used to render the page footer.
virtual bool IsInFooter ()
 Returns whether footer output is in progress.
virtual int PageNo ()
 Returns the current page number.
virtual void AddSpotColor (const wxString &name, double cyan, double magenta, double yellow, double black)
 Add spot color.
virtual void SetDrawColor (const unsigned char grayscale)
 Defines the color used for all drawing operations.
virtual void SetDrawColor (const wxColour &color)
 Defines the color used for all drawing operations.
virtual void SetDrawColor (const wxPdfColour &color)
 Defines the color used for all drawing operations.
virtual void SetDrawColor (const unsigned char red, const unsigned char green, const unsigned char blue)
 Defines the color used for all drawing operations.
virtual void SetDrawColor (double cyan, double magenta, double yellow, double black)
 Defines the color used for all drawing operations.
virtual void SetDrawColor (const wxString &name, double tint=100)
 Defines the spot color used for all drawing operations.
virtual const wxPdfColour GetDrawColor ()
 Gets the color used for all drawing operations.
virtual void SetFillColor (const unsigned char grayscale)
 Defines the color used for all filling operations.
virtual void SetFillColor (const wxColour &color)
 Defines the color used for all filling operations.
virtual void SetFillColor (const wxPdfColour &color)
 Defines the color used for all filling operations.
virtual void SetFillColor (const unsigned char red, const unsigned char green, const unsigned char blue)
 Defines the color used for all filling operations.
virtual void SetFillColor (double cyan, double magenta, double yellow, double black)
 Defines the color used for all filling operations.
virtual void SetFillColor (const wxString &name, double tint=100)
 Defines the spot color used for all filling operations.
virtual const wxPdfColour GetFillColor ()
 Gets the color used for all filling operations.
virtual void SetTextColor (const unsigned char grayscale)
 Defines the color used for text.
virtual void SetTextColor (const wxColour &color)
 Defines the color used for text.
virtual void SetTextColor (const wxPdfColour &color)
 Defines the color used for text.
virtual void SetTextColor (const unsigned char red, const unsigned char green, const unsigned char blue)
 Defines the color used for text.
virtual void SetTextColor (double cyan, double magenta, double yellow, double black)
 Defines the color used for text.
virtual void SetTextColor (const wxString &name, double tint=100)
 Defines the spot color used for text.
virtual const wxPdfColour GetTextColor ()
 Gets the color used for text output.
virtual double GetStringWidth (const wxString &s)
 Returns the length of a string in user unit.
virtual void SetLineWidth (double width)
 Defines the line width.
virtual double GetLineWidth ()
 Gets the current line width.
virtual void SetLineStyle (const wxPdfLineStyle &linestyle)
 Sets line style.
virtual const wxPdfLineStyleGetLineStyle ()
 Get current line style.
virtual void Line (double x1, double y1, double x2, double y2)
 Draws a line between two points.
virtual void Arrow (double x1, double y1, double x2, double y2, double linewidth, double height, double width)
 Draws an arrow line between two points.
virtual void Rect (double x, double y, double w, double h, int style=wxPDF_STYLE_DRAW)
 Outputs a rectangle.
virtual void RoundedRect (double x, double y, double w, double h, double r, int roundCorner=wxPDF_CORNER_ALL, int style=wxPDF_STYLE_DRAW)
 Draws a rounded rectangle.
virtual void Curve (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3, int style=wxPDF_STYLE_DRAW)
 Draws a Bezier curve.
virtual void Ellipse (double x0, double y0, double rx, double ry=0, double angle=0, double astart=0, double afinish=360, int style=wxPDF_STYLE_DRAW, int nSeg=8)
 Draws an ellipse.
virtual void Circle (double x0, double y0, double r, double astart=0, double afinish=360, int style=wxPDF_STYLE_DRAW, int nSeg=8)
 Draws a circle.
virtual void Sector (double x0, double y0, double r, double astart, double afinish, int style=wxPDF_STYLE_FILLDRAW, bool clockwise=true, double origin=90.)
 Draws a sector.
virtual void Polygon (const wxPdfArrayDouble &x, const wxPdfArrayDouble &y, int style=wxPDF_STYLE_DRAW)
 Draws a polygon.
virtual void RegularPolygon (double x0, double y0, double r, int ns, double angle=0, bool circle=false, int style=wxPDF_STYLE_DRAW, int circleStyle=wxPDF_STYLE_DRAW, const wxPdfLineStyle &circleLineStyle=wxPdfLineStyle(), const wxPdfColour &circleFillColor=wxPdfColour())
 Draws a regular polygon.
virtual void StarPolygon (double x0, double y0, double r, int nv, int ng, double angle=0, bool circle=false, int style=wxPDF_STYLE_DRAW, int circleStyle=wxPDF_STYLE_DRAW, const wxPdfLineStyle &circleLineStyle=wxPdfLineStyle(), const wxPdfColour &circleFillColor=wxPdfColour())
 Draws a star polygon.
virtual void Shape (const wxPdfShape &shape, int style=wxPDF_STYLE_DRAW)
 Draws a shape.
virtual void Rotate (double angle, double x=-1, double y=-1)
 Performs a rotation around a given center.
virtual void SetFontPath (const wxString &fontPath=wxEmptyString)
 Sets the default path for font definition files.
virtual wxString GetFontPath () const
 Returns the current default path for font definition files.
virtual void SetFontSubsetting (bool fontSubsetting=true)
 Sets the font embedding mode.
virtual bool GetFontSubsetting () const
 Returns the font embedding mode.
virtual bool AddFont (const wxString &family, const wxString &style=wxEmptyString, const wxString &file=wxEmptyString)
 Imports a TrueType, TrueTypeUnicode or Type1 font and makes it available.
virtual bool AddFontCJK (const wxString &family)
 Imports a CJK (Chinese, Japanese or Korean) font and makes it available.
virtual bool SetFont (const wxString &family, const wxString &style=wxEmptyString, double size=0)
 Sets the font used to print character strings.
virtual void SetFontSize (double size)
 Defines the size of the current font.
virtual const wxPdfFontDescriptionGetFontDescription () const
 Returns the current font description instance.
virtual const wxString GetFontFamily ()
 Gets the font family of the current font.
virtual const wxString GetFontStyle ()
 Gets the style of the current font.
virtual double GetFontSize ()
 Gets the size of the current font.
virtual int AddLink ()
 Creates a new internal link and returns its identifier.
virtual bool SetLink (int link, double y=0., int page=-1)
 Defines the page and position a link points to.
virtual void Link (double x, double y, double w, double h, const wxPdfLink &link)
 Puts a link on a rectangular area of the page.
virtual void Bookmark (const wxString &txt, int level=0, double y=0)
 Adds a bookmark to the document outline.
virtual void Text (double x, double y, const wxString &txt)
 Prints a character string.
virtual void RotatedText (double x, double y, const wxString &txt, double angle)
 Prints a rotated text string.
virtual bool AcceptPageBreak ()
 Whenever a page break condition is met,.
virtual void Cell (double w, double h=0., const wxString &txt=wxEmptyString, int border=wxPDF_BORDER_NONE, int ln=0, int align=wxPDF_ALIGN_LEFT, int fill=0, const wxPdfLink &link=wxPdfLink(-1))
 Prints a cell (rectangular area) with optional borders, background color and character string.
virtual int MultiCell (double w, double h, const wxString &txt, int border=0, int align=wxPDF_ALIGN_JUSTIFY, int fill=0, int maxline=0)
 This method allows printing text with line breaks.
virtual int LineCount (double w, const wxString &txt)
 This method counts the number of lines a text would occupy in respect to a given maximal width.
virtual int TextBox (double w, double h, const wxString &txt, int halign=wxPDF_ALIGN_JUSTIFY, int valign=wxPDF_ALIGN_TOP, int border=0, int fill=0)
 This method counts the number of lines a text will occupy in respect to a given maximal width.
virtual void Write (double h, const wxString &txt, const wxPdfLink &link=wxPdfLink(-1))
 This method prints text from the current position.
virtual void WriteCell (double h, const wxString &txt, int border=wxPDF_BORDER_NONE, int fill=0, const wxPdfLink &link=wxPdfLink(-1))
 This method prints text with cell attributes from the current position.
virtual bool Image (const wxString &file, double x, double y, double w=0, double h=0, const wxString &mimeType=wxEmptyString, const wxPdfLink &link=wxPdfLink(-1), int maskImage=0)
 Puts an image in the page.
virtual bool Image (const wxString &name, const wxImage &image, double x, double y, double w=0, double h=0, const wxPdfLink &link=wxPdfLink(-1), int maskImage=0)
virtual bool Image (const wxString &name, wxInputStream &stream, const wxString &mimeType, double x, double y, double w=0, double h=0, const wxPdfLink &link=wxPdfLink(-1), int maskImage=0)
virtual int ImageMask (const wxString &file, const wxString &mimeType=wxEmptyString)
virtual int ImageMask (const wxString &name, const wxImage &image)
virtual int ImageMask (const wxString &name, wxInputStream &stream, const wxString &mimeType)
virtual void RotatedImage (const wxString &file, double x, double y, double w, double h, double angle, const wxString &type=wxEmptyString, const wxPdfLink &link=wxPdfLink(-1), int maskImage=0)
 Puts a rotated image in the page.
virtual void Ln (double h=-1)
 Performs a line break.
virtual double GetX ()
 Returns the abscissa of the current position.
virtual void SetX (double x)
 Defines the abscissa of the current position.
virtual double GetY ()
 Returns the ordinate of the current position.
virtual void SetY (double y)
 Moves the current abscissa back to the left margin and sets the ordinate.
virtual void SetXY (double x, double y)
 Defines the abscissa and ordinate of the current position.
virtual void SaveAsFile (const wxString &name=wxEmptyString)
 Saves the document to a file on disk.
virtual const wxMemoryOutputStream & CloseAndGetBuffer ()
 Closes the document and returns the memory buffer containing the document.
virtual void ClippingText (double x, double y, const wxString &txt, bool outline=false)
 Define text as clipping area.
virtual void ClippingRect (double x, double y, double w, double h, bool outline=false)
 Define rectangle as clipping area.
virtual void ClippingEllipse (double x, double y, double rx, double ry=0, bool outline=false)
 Define ellipse as clipping area.
virtual void ClippingPolygon (const wxPdfArrayDouble &x, const wxPdfArrayDouble &y, bool outline=false)
 Define polygon as clipping area.
virtual void ClippingPath ()
 Start defining a clipping path.
virtual void MoveTo (double x, double y)
 Begin a new subpath.
virtual void LineTo (double x, double y)
 Append a straight line segment to the current (sub)path.
virtual void CurveTo (double x1, double y1, double x2, double y2, double x3, double y3)
 Append a cubic Bezier curve to the current (sub)path.
virtual void ClosePath (int style=wxPDF_STYLE_NOOP)
 Close the clipping path.
virtual void ClippingPath (const wxPdfShape &shape, int style=wxPDF_STYLE_NOOP)
 Define clipping area using a shape.
virtual void UnsetClipping ()
 Remove clipping area.
virtual void ClippedCell (double w, double h=0., const wxString &txt=wxEmptyString, int border=wxPDF_BORDER_NONE, int ln=0, int align=wxPDF_ALIGN_LEFT, int fill=0, const wxPdfLink &link=wxPdfLink(-1))
 Prints a cell clipped to a rectangular area.
virtual void StartTransform ()
 Enters a transformation environment.
virtual bool ScaleX (double sx, double x=-1, double y=-1)
 Performs scaling in X direction only.
virtual bool ScaleY (double sy, double x=-1, double y=-1)
 Performs scaling in Y direction only.
virtual bool ScaleXY (double s, double x=-1, double y=-1)
 Performs equal scaling in X and Y direction.
virtual bool Scale (double sx, double sy, double x=-1, double y=-1)
 Performs scaling in X and Y direction.
virtual void MirrorH (double x=-1)
 Performs a horizontal mirroring transformation.
virtual void MirrorV (double y=-1)
 Performs a vertical mirroring transformation.
virtual void TranslateX (double tx)
 Moves the X origin.
virtual void TranslateY (double ty)
 Moves the Y origin.
virtual void Translate (double tx, double ty)
 Moves the origin.
virtual bool SkewX (double xAngle, double x=-1, double y=-1)
 Performs a skewing in both X direction only.
virtual bool SkewY (double yAngle, double x=-1, double y=-1)
 Performs a skewing in Y direction only.
virtual bool Skew (double xAngle, double yAngle, double x=-1, double y=-1)
 Performs a skewing in both X and Y directions.
virtual void StopTransform ()
 Leaves a transformation environment.
virtual int SetAlpha (double lineAlpha=1, double fillAlpha=1, wxPdfBlendMode blendMode=wxPDF_BLENDMODE_NORMAL)
 Sets alpha values and blend mode.
virtual void SetAlphaState (int alphaState)
 Sets a previously defined alpha state.
virtual int LinearGradient (const wxPdfColour &col1, const wxPdfColour &col2, wxPdfLinearGradientType gradientType=wxPDF_LINEAR_GRADIENT_HORIZONTAL)
 Defines a linear gradient shading.
virtual int AxialGradient (const wxPdfColour &col1, const wxPdfColour &col2, double x1=0, double y1=0, double x2=1, double y2=0, double intexp=1)
 Defines a axial gradient shading.
virtual int MidAxialGradient (const wxPdfColour &col1, const wxPdfColour &col2, double x1=0, double y1=0, double x2=1, double y2=0, double midpoint=0.5, double intexp=1)
 Defines a axial gradient shading.
virtual int RadialGradient (const wxPdfColour &col1, const wxPdfColour &col2, double x1=0.5, double y1=0.5, double r1=0, double x2=0.5, double y2=0.5, double r2=1, double intexp=1)
 Defines a radial gradient shading.
virtual int CoonsPatchGradient (const wxPdfCoonsPatchMesh &mesh, double minCoord=0, double maxCoord=1)
 Defines a coons patch mesh gradient shading.
virtual void SetFillGradient (double x, double y, double w, double h, int gradient)
 Paints a gradient shading to rectangular area.
virtual void Marker (double x, double y, wxPdfMarker markerType, double size)
 Draws a graphical marker symbol.
virtual void Annotate (double x, double y, const wxString &text)
 Adds a text annotation.
virtual void AppendJavascript (const wxString &javascript)
 Appends Javascript.
void WriteXml (const wxString &str)
 Prints a string containing simple XML markup.
void CheckBox (const wxString &name, double width, bool checked=false)
 Adds a check box field at the current position.
void CheckBox (const wxString &name, double x, double y, double width, bool checked=false)
 Adds a check box field.
void ComboBox (const wxString &name, double width, double height, const wxArrayString &values)
 Adds a combo box field at the current position.
void ComboBox (const wxString &name, double x, double y, double width, double height, const wxArrayString &values)
 Adds a combo box field.
void PushButton (const wxString &name, double width, double height, const wxString &caption, const wxString &action)
 Adds a push button at the current position.
void PushButton (const wxString &name, double x, double y, double width, double height, const wxString &caption, const wxString &action)
 Adds a push button.
void RadioButton (const wxString &group, const wxString &name, double width)
 Adds a radio button at the current position.
void RadioButton (const wxString &group, const wxString &name, double x, double y, double width)
 Adds a radio button.
void TextField (const wxString &name, double width, double height, const wxString &value=wxEmptyString, bool multiline=false)
 Adds a text field at the current position.
void TextField (const wxString &name, double x, double y, double width, double height, const wxString &value=wxEmptyString, bool multiline=false)
 Adds a text field.
void SetFormColors (const wxPdfColour &borderColor=wxPdfColour(), const wxPdfColour &backgroundColor=wxPdfColour(250), const wxPdfColour &textColor=wxPdfColour())
 Sets colors for form fields.
void SetFormBorderStyle (wxPdfBorderStyle borderStyle=wxPDF_BORDER_SOLID, double borderWidth=-1)
 Sets the border style for form fields.
int BeginTemplate (double x=0, double y=0, double width=0, double height=0)
 Starts a new Template.
int EndTemplate ()
 Terminates a template.
void GetTemplateSize (int templateId, double &width, double &height)
 Get the calculated size of a template.
void UseTemplate (int templateId, double x=-1, double y=-1, double width=0, double height=0)
 Uses a template in current page or in another template.
int SetSourceFile (const wxString &filename, const wxString &password=wxEmptyString)
 Sets a source file for the external template feature.
bool GetSourceInfo (wxPdfInfo &info)
 Gets the document information dictionary of the current external PDF document.
int ImportPage (int pageno)
 Imports a page from an external PDF document.
void GetTemplateBBox (int templateId, double &x, double &y, double &width, double &height)
 Gets the bounding box of a template.
void SetTemplateBBox (int templateId, double x, double y, double width, double height)
 Sets the bounding box of a template.
void ShapedText (const wxPdfShape &shape, const wxString &text, wxPdfShapedTextMode mode=wxPDF_SHAPEDTEXTMODE_STRETCHTOFIT)
 Prints a text string along a path defined by a shape.

Static Public Member Functions

static wxString RGB2String (const wxColour &color)
 Converts a wxColour to the corresponding PDF specification.
static wxString Double2String (double value, int precision=0)
 Formats a floating point number with a fixed precision.
static double String2Double (const wxString &str)
 Parses a floating point number.
static wxString Convert2Roman (int value)
 Converts an integer number to a roman number.
static double ForceRange (double value, double minValue, double maxValue)
 Forces a floating point number into a fixed range.
static wxString GetUniqueId (const wxString &prefix=wxEmptyString)
 Create a unique ID.

Protected Member Functions

virtual bool SelectFont (const wxString &family, const wxString &style=wxEmptyString, double size=0, bool setFont=true)
 Select font.
virtual void BeginPage (int orientation)
 Start document.
virtual void EndPage ()
 End of page contents.
virtual void EndDoc ()
 End dociment.
virtual void PutHeader ()
 Add header.
virtual void PutPages ()
 Add pages.
virtual void ReplaceNbPagesAlias ()
 Replace page number aliases.
virtual void PutResources ()
 Add resources.
virtual void PutBookmarks ()
 Add bookmarks.
virtual void PutExtGStates ()
 Add extended graphics states.
virtual void PutShaders ()
 Add shaders.
virtual void PutFonts ()
 Adds fonts.
virtual void PutImages ()
 Add images.
virtual void PutTemplates ()
 Add templates.
virtual void PutImportedObjects ()
 Add imported objects.
virtual void WriteObjectValue (wxPdfObject *value, bool newline=true)
virtual void PutSpotColors ()
 Add spot colors.
virtual void PutJavaScript ()
 Add Javascript (document level).
virtual void PutResourceDict ()
 Add resource dictionary.
virtual void PutEncryption ()
 Add encryption info.
virtual void PutFormFields ()
 Add form fields.
virtual void PutInfo ()
 Add info.
virtual void PutCatalog ()
 Addcatalog.
virtual void PutXObjectDict ()
 Add object dictionary.
virtual void PutTrailer ()
 Add trailer.
int CalculateStreamLength (int len)
 Calculate stream size.
int CalculateStreamOffset ()
 Calculate stream offset.
int GetNewObjId ()
 Get new object id.
void NewObj (int objId=0)
 Begin a new object.
wxString DoDecoration (double x, double y, const wxString &txt)
 Decorate text.
void TextEscape (const wxString &s, bool newline=true)
 Format a text string.
void PutStream (wxMemoryOutputStream &s)
 Add byte stream.
void OutTextstring (const wxString &s, bool newline=true)
 Add a text string to the document.
void OutRawTextstring (const wxString &s, bool newline=true)
 Add a raw text string to the document (without charset conversion).
void OutHexTextstring (const wxString &s, bool newline=true)
 Add a hex text string to the document (without charset conversion).
void OutAsciiTextstring (const wxString &s, bool newline=true)
 Add an ASCII text string to the document.
void OutEscape (const char *s, int len)
 Add \ before \, ( and ).
void OutAscii (const wxString &s, bool newline=true)
 Add ASCII string.
void Out (const char *s, bool newline=true)
 Add character string.
void Out (const char *s, int len, bool newline=true)
 Add len characters.
void OutPoint (double x, double y)
 Sets a draw point.
void OutPointRelative (double dx, double dy)
 Sets a draw point relative to current position.
void OutLine (double x, double y)
 Draws a line from last draw point.
void OutLineRelative (double dx, double dy)
 Draws a line relative from last draw point.
void OutCurve (double x1, double y1, double x2, double y2, double x3, double y3)
 Draws a Bézier curve from last draw point.
void Transform (double tm[6])
 Perform transformation.
void AddFormField (wxPdfAnnotationWidget *field, bool setFormField=true)
 Adds a form field to the document.
void OutIndirectObject (wxPdfIndirectObject *object)
 Add an indirect object to the document.
void OutImage (wxPdfImage *currentImage, double x, double y, double w, double h, const wxPdfLink &link)
 Add an image object to the document.
void PrepareXmlCell (wxXmlNode *node, wxPdfCellContext &context)
 Prepare an XML cell for output.
void WriteXmlCell (wxXmlNode *node, wxPdfCellContext &context)
 Output a prepared XML cell.
void DoXmlAlign (wxPdfCellContext &context)
 Take alignment of an XML cell into account.
void PrepareXmlTable (wxXmlNode *node, wxPdfCellContext &context)
 Prepare an XML table for output.
void WriteXmlTable (wxPdfCellContext &context)
 Output a prepared XML table.
void InitializeCoreFonts ()
 Initialize the core fonts.

Friends

class wxPdfImage
class wxPdfTable


Detailed Description

Class representing a PDF document.


Constructor & Destructor Documentation

wxPdfDocument::wxPdfDocument ( int  orientation = wxPORTRAIT,
const wxString &  unit = wxString(_T("mm")),
wxPaperSize  format = wxPAPER_A4 
)

Constructor.

Parameters:
orientation Defines the default page orientation. Possible values are:
  • wxPORTRAIT portrait layout (default)
  • wxLANDSCAPE landscape layout
unit Defines the user units. Possible values are:
  • "mm" millimeter (1 mm = 0.0394 in = 2.833 pt = 0.1 cm) (default)
  • "cm" centimeter (1 cm = 0.394 in = 28.33 pt = 10 mm)
  • "pt" points (1 pt = 1/72 in = 0.0353 cm = 0.353 mm)
  • "in" inch (1 in = 72 pt = 2.54 cm = 25.4 mm)
format Defines the page format. All known wxWidgets paper types are allowed. (Default: wxPAPER_A4)

wxPdfDocument::~wxPdfDocument (  )  [virtual]


Member Function Documentation

void wxPdfDocument::SetProtection ( int  permissions,
const wxString &  userPassword = wxEmptyString,
const wxString &  ownerPassword = wxEmptyString,
wxPdfEncryptionMethod  encryptionMethod = wxPDF_ENCRYPTION_RC4V1,
int  keyLength = 0 
) [virtual]

Set permissions as well as user and owner passwords.

Parameters:
permissions flag indicating permissions. Flags from the following list may be combined as needed If a value is present it means that the permission is granted
userPassword user password if applicable. If a user password is set, user will be prompted before document is opened
ownerPassword owner password.if applicable If an owner password is set, the document can be opened in privilege mode with no restriction if that password is entered
encryptionMethod selects the encryption method. Possible values are:
  • wxPDF_ENCRYPTION_RC4V1 RC4 method, version 1, with 40 bit encryption key (default)
  • wxPDF_ENCRYPTION_RC4V2 RC4 method, version 2, with 40..128 bit encryption key
  • wxPDF_ENCRYPTION_AESV2 AES method, with 128 bit encryption key
keyLength Length of the key used for encryption (Default: 0) The default value selects the standard encryption method revision 2 with a key length of 40 bits. Specifying a value > 0 selects the standard encryption method revision 3 with the given key length, the key length has to be in the range 40..128 and has to be dividable by 8. The key length is adjusted accordingly if these conditions are not met. NOTE: Adobe Reader supports only 40- and 128-bit encryption keys.

void wxPdfDocument::SetImageScale ( double  scale  )  [virtual]

Set the image scale.

Parameters:
[in] scale image scale.

double wxPdfDocument::GetImageScale (  )  [virtual]

Returns the image scale.

Returns:
image scale.

double wxPdfDocument::GetPageWidth (  )  [virtual]

Returns the page width in units.

Returns:
int page width.

double wxPdfDocument::GetPageHeight (  )  [virtual]

Returns the page height in units.

Returns:
int page height.

double wxPdfDocument::GetBreakMargin (  )  [virtual]

Returns the page break margin.

Returns:
int page break margin.

double wxPdfDocument::GetScaleFactor (  )  [virtual]

Returns the scale factor (number of points in user unit).

Returns:
int scale factor.

void wxPdfDocument::SetMargins ( double  left,
double  top,
double  right = -1 
) [virtual]

Defines the left, top and right margins.

By default, they equal 1 cm. Call this method to change them.

Parameters:
left Left margin.
top Top margin.
right Right margin. Default value is the left one.
See also:
SetLeftMargin(), SetTopMargin(), SetRightMargin(), SetAutoPageBreak()

void wxPdfDocument::SetLeftMargin ( double  margin  )  [virtual]

Defines the left margin.

The method can be called before creating the first page. If the current abscissa gets out of page, it is brought back to the margin.

Parameters:
margin The margin.
See also:
SetTopMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()

double wxPdfDocument::GetLeftMargin (  )  [virtual]

Returns the left margin.

Returns:
double left margin.

void wxPdfDocument::SetTopMargin ( double  margin  )  [virtual]

Defines the top margin.

The method can be called before creating the first page.

Parameters:
margin The margin.
See also:
SetLeftMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()

double wxPdfDocument::GetTopMargin (  )  [virtual]

Returns the top margin.

Returns:
double top margin.

void wxPdfDocument::SetRightMargin ( double  margin  )  [virtual]

Defines the right margin.

The method can be called before creating the first page.

Parameters:
margin The margin.
See also:
SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins()

double wxPdfDocument::GetRightMargin (  )  [virtual]

Returns the right margin.

Returns:
double right margin.

void wxPdfDocument::SetCellMargin ( double  margin  )  [virtual]

Defines the cell margin.

The method can be called before creating the first page.

Parameters:
margin The margin.

double wxPdfDocument::GetCellMargin (  )  [virtual]

Returns the cell margin.

Returns:
double cell margin.

void wxPdfDocument::SetLineHeight ( double  height  )  [virtual]

Sets the height of a text line.

Parameters:
height The line height.

double wxPdfDocument::GetLineHeight (  )  [virtual]

Returns the height of a text line.

Returns:
double line height

void wxPdfDocument::SetAutoPageBreak ( bool  autoPageBreak,
double  margin = 0 
) [virtual]

Enables or disables the automatic page breaking mode.

When enabling, the second parameter is the distance from the bottom of the page that defines the triggering limit. By default, the mode is on and the margin is 2 cm.

Parameters:
autoPageBreak Boolean indicating if mode should be on or off.
margin Distance from the bottom of the page.
See also:
Cell(), MultiCell(), AcceptPageBreak()

void wxPdfDocument::SetDisplayMode ( wxPdfZoom  zoom,
wxPdfLayout  layout = wxPDF_LAYOUT_CONTINUOUS,
double  zoomFactor = 100. 
) [virtual]

Defines the way the document is to be displayed by the viewer.

The zoom level can be set:pages can be displayed entirely on screen, occupy the full width of the window, use real size, be scaled by a specific zooming factor or use viewer default (configured in the Preferences menu of Acrobat). The page layout can be specified too: single at once, continuous display, two columns or viewer default. By default, documents use the full width mode with continuous display.

Parameters:
zoom The zoom to use. It can be one of the following string values or a number indicating the zooming factor to use.
  • wxPDF_ZOOM_FULLPAGE: displays the entire page on screen
  • wxPDF_ZOOM_FULLWIDTH: uses maximum width of window
  • wxPDF_ZOOM_REAL: uses real size (equivalent to 100% zoom)
  • wxPDF_ZOOM_DEFAULT: uses viewer default mode
  • wxPDF_ZOOM_FACTOR: uses viewer default mode
layout The page layout. Possible values are:
  • wxPDF_LAYOUT_SINGLE: displays one page at once
  • wxPDF_LAYOUT_CONTINUOUS: displays pages continuously (default)
  • wxPDF_LAYOUT_TWO: displays two pages on two columns
  • wxPDF_LAYOUT_DEFAULT: uses viewer default mode
zoomFactor specifies the zoom factor in percent if layout is wxPDF_ZOOM_FACTOR

void wxPdfDocument::SetCompression ( bool  compress  )  [virtual]

Activates or deactivates page compression.

When activated, the internal representation of each page is compressed, which leads to a compression ratio of about 2 for the resulting document. Compression is on by default.

Parameters:
compress Boolean indicating if compression must be enabled.

void wxPdfDocument::SetViewerPreferences ( int  preferences = 0  )  [virtual]

Defines the viewer preferences.

Parameters:
preferences A set of viewer preferences options.
  • wxPDF_VIEWER_HIDETOOLBAR: Hide tool bar
  • wxPDF_VIEWER_HIDEMENUBAR: Hide menu bar
  • wxPDF_VIEWER_HIDEWINDOWUI: Hide user interface
  • wxPDF_VIEWER_FITWINDOW: Fit window to page size
  • wxPDF_VIEWER_CENTERWINDOW: Center window on screen
  • wxPDF_VIEWER_DISPLAYDOCTITLE: Display document title in title bar

void wxPdfDocument::SetTitle ( const wxString &  title  )  [virtual]

Defines the title of the document.

Parameters:
title The title.
See also:
SetAuthor(), SetCreator(), SetKeywords(), SetSubject()

void wxPdfDocument::SetSubject ( const wxString &  subject  )  [virtual]

Defines the subject of the document.

Parameters:
subject The subject.
See also:
SetAuthor(), SetCreator(), SetKeywords(), SetTitle()

void wxPdfDocument::SetAuthor ( const wxString &  author  )  [virtual]

Defines the author of the document.

Parameters:
author The name of the author.
See also:
SetCreator(), SetKeywords(), SetSubject(), SetTitle()

void wxPdfDocument::SetKeywords ( const wxString &  keywords  )  [virtual]

Associates keywords with the document,.

Generally keywords are in the form 'keyword1 keyword2 ...'.

Parameters:
keywords The list of keywords.
See also:
SetAuthor(), SetCreator(), SetSubject(), SetTitle()

void wxPdfDocument::SetCreator ( const wxString &  creator  )  [virtual]

Defines the creator of the document.

This is typically the name of the application that generates the PDF.

Parameters:
creator The name of the creator.
See also:
SetAuthor(), SetKeywords(), SetSubject(), SetTitle()

void wxPdfDocument::AliasNbPages ( const wxString &  alias = wxString(_T("{nb}"))  )  [virtual]

Defines an alias for the total number of pages.

It will be substituted as the document is closed.

Parameters:
alias The alias. Default value: {nb}.
See also:
PageNo(), Footer()

void wxPdfDocument::Open (  )  [virtual]

This method begins the generation of the PDF document.

It is not necessary to call it explicitly because AddPage() does it automatically. Note: no page is created by this method

See also:
AddPage(), Close()

void wxPdfDocument::Close (  )  [virtual]

Terminates the PDF document.

It is not necessary to call this method explicitly because SaveAsFile() does it automatically. If the document contains no page, AddPage() is called to prevent from getting an invalid document.

See also:
Open(), SaveAsFile()

void wxPdfDocument::AddPage ( int  orientation = -1  )  [virtual]

Adds a new page to the document.

If a page is already present, the Footer() method is called first to output the footer. Then the page is added, the current position set to the top-left corner according to the left and top margins, and Header() is called to display the header. The font which was set before calling is automatically restored. There is no need to call SetFont() again if you want to continue with the same font. The same is true for colors and line width. The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards.

Parameters:
orientation Page orientation. Possible values are:
  • wxPORTRAIT
  • wxLANDSCAPE The default value is the one passed to the constructor.
See also:
FPDF(), Header(), Footer(), SetMargins()

void wxPdfDocument::Header (  )  [virtual]

This method is used to render the page header.

It is automatically called by AddPage() and should not be called directly by the application. The implementation in wxPdfDocument is empty, so you have to subclass it and override the method if you want a specific processing.

See also:
Footer()

void wxPdfDocument::Footer (  )  [virtual]

This method is used to render the page footer.

It is automatically called by AddPage() and Close() and should not be called directly by the application. The implementation in wxPdfDocument is empty, so you have to subclass it and override the method if you want a specific processing.

See also:
Header()

bool wxPdfDocument::IsInFooter (  )  [virtual]

Returns whether footer output is in progress.

Returns:
true if footer output is in progress, false otherwise
See also:
Header()

int wxPdfDocument::PageNo (  )  [virtual]

Returns the current page number.

Returns:
page number
See also:
AliasNbPages()

void wxPdfDocument::AddSpotColor ( const wxString &  name,
double  cyan,
double  magenta,
double  yellow,
double  black 
) [virtual]

Add spot color.

Add a spot color which can be referenced in color setting methods

Parameters:
name the name of the spot color (case sensitive)
cyan indicates the cyan level. Value between 0 and 100
magenta indicates the magenta level. Value between 0 and 100
yellow indicates the yellow level. Value between 0 and 100
black indicates the black level. Value between 0 and 100
See also:
SetDrawColor(), SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( const unsigned char  grayscale  )  [virtual]

Defines the color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
grayscale indicates the gray level. Value between 0 and 255
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( const wxColour &  color  )  [virtual]

Defines the color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color composed of a red, green and blue component
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( const wxPdfColour color  )  [virtual]

Defines the color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color using the class wxPdfColour
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( const unsigned char  red,
const unsigned char  green,
const unsigned char  blue 
) [virtual]

Defines the color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
red indicates the red level. Value between 0 and 255
green indicates the green level. Value between 0 and 255
blue indicates the blue level. Value between 0 and 255
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( double  cyan,
double  magenta,
double  yellow,
double  black 
) [virtual]

Defines the color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
cyan indicates the cyan level. Value between 0 and 100
magenta indicates the magenta level. Value between 0 and 100
yellow indicates the yellow level. Value between 0 and 100
black indicates the black level. Value between 0 and 100
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetDrawColor ( const wxString &  name,
double  tint = 100 
) [virtual]

Defines the spot color used for all drawing operations.

Affected drawing operations are: lines, rectangles and cell borders. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
name the name of the spot color
tint indicates the tint level. Value between 0 and 100. Default: 100.
See also:
SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

const wxPdfColour wxPdfDocument::GetDrawColor (  )  [virtual]

Gets the color used for all drawing operations.

See also:
SetDrawColor()

void wxPdfDocument::SetFillColor ( const unsigned char  grayscale  )  [virtual]

Defines the color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
grayscale indicates the gray level. Value between 0 and 255
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetFillColor ( const wxColour &  color  )  [virtual]

Defines the color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color composed of a red, green and blue component
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetFillColor ( const wxPdfColour color  )  [virtual]

Defines the color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color using the class wxPdfColour
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetFillColor ( const unsigned char  red,
const unsigned char  green,
const unsigned char  blue 
) [virtual]

Defines the color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
red indicates the red level. Value between 0 and 255
green indicates the green level. Value between 0 and 255
blue indicates the blue level. Value between 0 and 255
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetFillColor ( double  cyan,
double  magenta,
double  yellow,
double  black 
) [virtual]

Defines the color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
cyan indicates the cyan level. Value between 0 and 100
magenta indicates the magenta level. Value between 0 and 100
yellow indicates the yellow level. Value between 0 and 100
black indicates the black level. Value between 0 and 100
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetFillColor ( const wxString &  name,
double  tint = 100 
) [virtual]

Defines the spot color used for all filling operations.

Affected filling operations are: filled rectangles and cell backgrounds. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
name is the name of the spot color
tint indicates the tint level. Value between 0 and 100. Default: 100.
See also:
SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

const wxPdfColour wxPdfDocument::GetFillColor (  )  [virtual]

Gets the color used for all filling operations.

See also:
SetFillColor()

void wxPdfDocument::SetTextColor ( const unsigned char  grayscale  )  [virtual]

Defines the color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
grayscale indicates the gray level. Value between 0 and 255
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

void wxPdfDocument::SetTextColor ( const wxColour &  color  )  [virtual]

Defines the color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color composed of a red, green and blue component
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

void wxPdfDocument::SetTextColor ( const wxPdfColour color  )  [virtual]

Defines the color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
color defines a color using the class wxPdfColour
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

void wxPdfDocument::SetTextColor ( const unsigned char  red,
const unsigned char  green,
const unsigned char  blue 
) [virtual]

Defines the color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
red indicates the red level. Value between 0 and 255
green indicates the green level. Value between 0 and 255
blue indicates the blue level. Value between 0 and 255
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

void wxPdfDocument::SetTextColor ( double  cyan,
double  magenta,
double  yellow,
double  black 
) [virtual]

Defines the color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
cyan indicates the cyan level. Value between 0 and 100
magenta indicates the magenta level. Value between 0 and 100
yellow indicates the yellow level. Value between 0 and 100
black indicates the black level. Value between 0 and 100
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

void wxPdfDocument::SetTextColor ( const wxString &  name,
double  tint = 100 
) [virtual]

Defines the spot color used for text.

It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
name the name of the spot color
tint indicates the tint level. Value between 0 and 100. Default: 100.
See also:
SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

const wxPdfColour wxPdfDocument::GetTextColor (  )  [virtual]

Gets the color used for text output.

See also:
SetTextColor()

double wxPdfDocument::GetStringWidth ( const wxString &  s  )  [virtual]

Returns the length of a string in user unit.

A font must be selected.

Parameters:
s The string whose length is to be computed
Returns:
int

void wxPdfDocument::SetLineWidth ( double  width  )  [virtual]

Defines the line width.

By default, the value equals 0.2 mm. The method can be called before the first page is created and the value is retained from page to page.

Parameters:
width The width.
See also:
Line(), Rect(), Cell(), MultiCell()

double wxPdfDocument::GetLineWidth (  )  [virtual]

Gets the current line width.

Returns:
current line width
See also:
Line(), Rect(), Cell(), MultiCell()

void wxPdfDocument::SetLineStyle ( const wxPdfLineStyle linestyle  )  [virtual]

Sets line style.

Parameters:
linestyle,: Line style.
See also:
wxPdfLineStale

const wxPdfLineStyle & wxPdfDocument::GetLineStyle (  )  [virtual]

Get current line style.

Returns:
current line style.

void wxPdfDocument::Line ( double  x1,
double  y1,
double  x2,
double  y2 
) [virtual]

Draws a line between two points.

Parameters:
x1 Abscissa of first point
y1 Ordinate of first point
x2 Abscissa of second point
y2 Ordinate of second point
See also:
SetLineWidth(), SetDrawColor()

void wxPdfDocument::Arrow ( double  x1,
double  y1,
double  x2,
double  y2,
double  linewidth,
double  height,
double  width 
) [virtual]

Draws an arrow line between two points.

Parameters:
x1 Abscissa of first point
y1 Ordinate of first point
x2 Abscissa of second point
y2 Ordinate of second point
linewidth line width
height height of the arrow head
width width of the arrow head
See also:
SetLineWidth(), SetDrawColor(), SetFillColor()

void wxPdfDocument::Rect ( double  x,
double  y,
double  w,
double  h,
int  style = wxPDF_STYLE_DRAW 
) [virtual]

Outputs a rectangle.

It can be drawn (border only), filled (with no border) or both.

Parameters:
x Abscissa of upper-left corner
y Ordinate of upper-left corner
w Width
h Height
style Style of rendering. Possible values are:
  • wxPDF_STYLE_DRAW (default)
  • wxPDF_STYLE_FILL: fill
  • wxPDF_STYLE_FILLDRAW: draw and fill
See also:
SetLineWidth(), SetDrawColor(), SetFillColor()

void wxPdfDocument::RoundedRect ( double  x,
double  y,
double  w,
double  h,
double  r,
int  roundCorner = wxPDF_CORNER_ALL,
int  style = wxPDF_STYLE_DRAW 
) [virtual]

Draws a rounded rectangle.

Parameters:
x Abscissa of upper-left corner
y Ordinate of upper-left corner
w Width
h Height
r,: Radius of the rounded corners
roundCorner,: Draws rounded corner or not.
  • wxPDF_CORNER_NONE no rounded corners
  • wxPDF_CORNER_TOP_LEFT top left corner
  • wxPDF_CORNER_TOP_RIGHT top right corner
  • wxPDF_CORNER_BOTTOM_LEFT bottom left corner
  • wxPDF_CORNER_BOTTOM_RIGHT bottom right corner
  • wxPDF_CORNER_ALL all corners
style,: Style of rectangle (draw and/or fill)

void wxPdfDocument::Curve ( double  x0,
double  y0,
double  x1,
double  y1,
double  x2,
double  y2,
double  x3,
double  y3,
int  style = wxPDF_STYLE_DRAW 
) [virtual]

Draws a Bezier curve.

A Bezier curve is tangent to the line between the control points at either end of the curve.

Parameters:
x0,: Abscissa of start point
y0,: Ordinate of start point
x1,: Abscissa of control point 1
y1,: Ordinate of control point 1
x2,: Abscissa of control point 2
y2,: Ordinate of control point 2
x3,: Abscissa of end point
y3,: Ordinate of end point
style,: Style of rectangle (draw and/or fill)

void wxPdfDocument::Ellipse ( double  x0,
double  y0,
double  rx,
double  ry = 0,
double  angle = 0,
double  astart = 0,
double  afinish = 360,
int  style = wxPDF_STYLE_DRAW,
int  nSeg = 8 
) [virtual]

Draws an ellipse.

Parameters:
x0,: Abscissa of Center point
y0,: Ordinate of Center point
rx,: Horizontal radius
ry,: Vertical radius (if ry = 0, draws a circle)
angle,: Orientation angle (anti-clockwise)
astart,: Start angle
afinish,: Finish angle
style,: Style of rectangle (draw and/or fill)
nSeg,: Ellipse is made up of nSeg Bezier curves

void wxPdfDocument::Circle ( double  x0,
double  y0,
double  r,
double  astart = 0,
double  afinish = 360,
int  style = wxPDF_STYLE_DRAW,
int  nSeg = 8 
) [virtual]

Draws a circle.

Parameters:
x0,: Abscissa of Center point
y0,: Ordinate of Center point
r,: Radius
astart,: Start angle
afinish,: Finish angle
style,: Style of rectangle (draw and/or fill)
nSeg,: Circle is made up of nSeg Bezier curves

void wxPdfDocument::Sector ( double  x0,
double  y0,
double  r,
double  astart,
double  afinish,
int  style = wxPDF_STYLE_FILLDRAW,
bool  clockwise = true,
double  origin = 90. 
) [virtual]

Draws a sector.

Parameters:
x0,: Abscissa of Center point
y0,: Ordinate of Center point
r,: Radius
astart,: Start angle
afinish,: Finish angle
style,: Style of rectangle (draw and/or fill, default: fill&draw)
clockwise,: indicates whether to go clockwise (default: true)
origin,: origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock; default: 90)

void wxPdfDocument::Polygon ( const wxPdfArrayDouble &  x,
const wxPdfArrayDouble &  y,
int  style = wxPDF_STYLE_DRAW 
) [virtual]

Draws a polygon.

Parameters:
x Array with abscissa values
y Array with ordinate values
style,: Style of polygon (draw and/or fill)

void wxPdfDocument::RegularPolygon ( double  x0,
double  y0,
double  r,
int  ns,
double  angle = 0,
bool  circle = false,
int  style = wxPDF_STYLE_DRAW,
int  circleStyle = wxPDF_STYLE_DRAW,
const wxPdfLineStyle circleLineStyle = wxPdfLineStyle(),
const wxPdfColour circleFillColor = wxPdfColour() 
) [virtual]

Draws a regular polygon.

Parameters:
x0,: Abscissa of Center point
y0,: Ordinate of Center point
r,: Radius of circumscribed circle
ns,: Number of sides
angle,: Orientation angle (anti-clockwise)
circle,: Flag whether to draw circumscribed circle or not
style,: Style of polygon (draw and/or fill)
circleStyle,: Style of circumscribed circle (draw and/or fill) (if draw)
circleLineStyle,: Line style for circumscribed circle. (if draw)
circleFillColor,: Fill color for circumscribed circle. (if draw fill circle)

void wxPdfDocument::StarPolygon ( double  x0,
double  y0,
double  r,
int  nv,
int  ng,
double  angle = 0,
bool  circle = false,
int  style = wxPDF_STYLE_DRAW,
int  circleStyle = wxPDF_STYLE_DRAW,
const wxPdfLineStyle circleLineStyle = wxPdfLineStyle(),
const wxPdfColour circleFillColor = wxPdfColour() 
) [virtual]

Draws a star polygon.

Parameters:
x0,: Abscissa of Center point
y0,: Ordinate of Center point
r,: Radius of circumscribed circle
nv,: Number of vertices
ng,: Number of gaps (ng % nv = 1 => regular polygon)
angle,: Orientation angle (anti-clockwise)
circle,: Flag whether to draw circumscribed circle or not
style,: Style of polygon (draw and/or fill)
circleStyle,: Style of circumscribed circle (draw and/or fill) (if draw)
circleLineStyle,: Line style for circumscribed circle. (if draw)
circleFillColor,: Fill color for circumscribed circle. (if draw fill circle)

void wxPdfDocument::Shape ( const wxPdfShape shape,
int  style = wxPDF_STYLE_DRAW 
) [virtual]

Draws a shape.

Parameters:
shape,: shape to be drawn
style Style of rendering. Possible values are:
  • wxPDF_STYLE_DRAW (default)
  • wxPDF_STYLE_FILL: fill
  • wxPDF_STYLE_FILLDRAW: draw and fill
  • wxPDF_STYLE_DRAWCLOSE: close path and draw (can be combined with wxPDF_STYLE_FILL

void wxPdfDocument::Rotate ( double  angle,
double  x = -1,
double  y = -1 
) [virtual]

Performs a rotation around a given center.

Parameters:
angle angle in degrees.
x abscissa of the rotation center. Default value: current position.
y ordinate of the rotation center. Default value: current position.
The rotation affects all elements which are printed after the method call (with the exception of the clickable areas).

Remarks:

void wxPdfDocument::SetFontPath ( const wxString &  fontPath = wxEmptyString  )  [virtual]

Sets the default path for font definition files.

wxPdfDocument uses XML font definition files for embedding fonts. The definition file (and the font file itself when embedding) must be present in the path set by SetFontPath.

Parameters:
fontPath the path to be used as the default font file path If an empty string is passed the default path is set to the path specified by the environment variable WXPDF_FONTPATH. If WXPDF_FONTPATH does not exist, the subdirectory 'fonts' of the current working directory is used instead.

virtual wxString wxPdfDocument::GetFontPath (  )  const [inline, virtual]

Returns the current default path for font definition files.

Returns:
The default font path

virtual void wxPdfDocument::SetFontSubsetting ( bool  fontSubsetting = true  )  [inline, virtual]

Sets the font embedding mode.

If other fonts than the 14 Adobe core fonts are used in a document, they are usually embedded into the PDF file, often resulting in rather large PDF files. This is especially true for Unicode fonts with thousands of glyphs. To reduce the size of the resulting PDF file fonts may be subsetted, that is, only those glyphs actually used in the document are embedded.

Currently wxPdfDocument supports font subsetting for TrueType Unicode fonts only.

Parameters:
fontSubsetting Boolean indicating whether font subsetting should be used or not.

virtual bool wxPdfDocument::GetFontSubsetting (  )  const [inline, virtual]

Returns the font embedding mode.

Returns:
true if font subsetting is enabled, false otherwise

bool wxPdfDocument::AddFont ( const wxString &  family,
const wxString &  style = wxEmptyString,
const wxString &  file = wxEmptyString 
) [virtual]

Imports a TrueType, TrueTypeUnicode or Type1 font and makes it available.

It is necessary to generate a font definition file first with the makefont utility. The definition file (and the font file itself when embedding) must be present either in the subdirectory 'fonts' of the current working directory or in the one indicated by WXPDF_FONTPATH if this environment variable is defined.

Parameters:
family Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font.
style Font style. Possible values are (case insensitive):
  • empty string: regular (default)
  • B: bold
  • I: italic
  • BI or IB: bold italic
file The font definition file. By default, the name is built from the family and style, in lower case with no space.
See also:
SetFont(), SetFontPath()

bool wxPdfDocument::AddFontCJK ( const wxString &  family  )  [virtual]

Imports a CJK (Chinese, Japanese or Korean) font and makes it available.

It is necessary to generate a font definition file first with the makefont utility. The definition file (and the font file itself when embedding) must be present either in the current directory or in the one indicated by WXPDF_FONTPATH if the constant is defined.

Parameters:
family Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font.
All font styles (regular, bold, italic and bold-italic) are made available The font definition file name is built from the family in lower case with no space. There are several predefined font definition files available: These fonts require that the Adobe CJK font support is installed
See also:
SetFont()

bool wxPdfDocument::SetFont ( const wxString &  family,
const wxString &  style = wxEmptyString,
double  size = 0 
) [virtual]

Sets the font used to print character strings.

It is mandatory to call this method at least once before printing text or the resulting document would not be valid. The font can be either a standard one or a font added via the AddFont() method. Standard fonts use Windows encoding cp1252 (Western Europe). The method can be called before the first page is created and the font is retained from page to page. If you just wish to change the current font size, it is simpler to call SetFontSize().

Parameters:
family Family font. It can be either a name defined by AddFont() or one of the standard families (case insensitive):
  • Courier (fixed-width)
  • Helvetica or Arial (synonymous; sans serif)
  • Times (serif)
  • Symbol (symbolic)
  • ZapfDingbats (symbolic)
It is also possible to pass an empty string. In that case, the current family is retained.
style Font style. Possible values are (case insensitive):
  • empty string: regular (default)
  • B: bold
  • I: italic
  • BI or IB: bold italic
  • U: underline or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats
size Font size in points. The default value is the current size. If no size has been specified since the beginning of the document, the value taken is 12
See also:
AddFont(), SetFontSize(), Cell(), MultiCell(), Write()

void wxPdfDocument::SetFontSize ( double  size  )  [virtual]

Defines the size of the current font.

Parameters:
size The size (in points)
See also:
SetFont()

const wxPdfFontDescription & wxPdfDocument::GetFontDescription (  )  const [virtual]

Returns the current font description instance.

Returns:
The current font description.
See also:
SetFont()

const wxString wxPdfDocument::GetFontFamily (  )  [virtual]

Gets the font family of the current font.

Returns:
The font family of the current font
See also:
SetFont()

const wxString wxPdfDocument::GetFontStyle (  )  [virtual]

Gets the style of the current font.

Returns:
The style of the current font
See also:
SetFont()

double wxPdfDocument::GetFontSize (  )  [virtual]

Gets the size of the current font.

Returns:
The size (in points) of the current font
See also:
SetFont()

int wxPdfDocument::AddLink (  )  [virtual]

Creates a new internal link and returns its identifier.

An internal link is a clickable area which directs to another place within the document. The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink().

See also:
Cell(), Write(), Image(), Link(), SetLink()

bool wxPdfDocument::SetLink ( int  link,
double  y = 0.,
int  page = -1 
) [virtual]

Defines the page and position a link points to.

Parameters:
link The link identifier returned by AddLink()
y Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page)
page Number of target page; -1 indicates the current page. This is the default value
See also:
AddLink()

void wxPdfDocument::Link ( double  x,
double  y,
double  w,
double  h,
const wxPdfLink link 
) [virtual]

Puts a link on a rectangular area of the page.

Text or image links are generally put via Cell(), Write() or Image(), but this method can be useful for instance to define a clickable area inside an image.

Parameters:
x Abscissa of the upper-left corner of the rectangle
y Ordinate of the upper-left corner of the rectangle
w Width of the rectangle
h Height of the rectangle
link URL or identifier returned by AddLink()
See also:
AddLink(), Cell(), Write(), Image()

void wxPdfDocument::Bookmark ( const wxString &  txt,
int  level = 0,
double  y = 0 
) [virtual]

Adds a bookmark to the document outline.

Parameters:
txt,: the bookmark title.
level,: the bookmark level (0 is top level, 1 is just below, and so on).
y,: the y position of the bookmark destination in the current page. -1 means the current position. Default value: 0.

void wxPdfDocument::Text ( double  x,
double  y,
const wxString &  txt 
) [virtual]

Prints a character string.

The origin is on the left of the first charcter, on the baseline. This method allows to place a string precisely on the page, but it is usually easier to use Cell(), MultiCell() or Write() which are the standard methods to print text.

Parameters:
x Abscissa of the origin
y Ordinate of the origin
txt String to print
See also:
SetFont(), SetTextColor(), Cell(), MultiCell(), Write()

void wxPdfDocument::RotatedText ( double  x,
double  y,
const wxString &  txt,
double  angle 
) [virtual]

Prints a rotated text string.

Parameters:
x,: abscissa of the rotation center.
y,: ordinate of the rotation center.
txt String to print
angle,: angle in degrees.

bool wxPdfDocument::AcceptPageBreak (  )  [virtual]

Whenever a page break condition is met,.

Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value. The default implementation returns a value according to the mode selected by SetAutoPageBreak()

This method is called automatically and should not be called directly by the application.

Returns:
boolean
See also:
SetAutoPageBreak()

void wxPdfDocument::Cell ( double  w,
double  h = 0.,
const wxString &  txt = wxEmptyString,
int  border = wxPDF_BORDER_NONE,
int  ln = 0,
int  align = wxPDF_ALIGN_LEFT,
int  fill = 0,
const wxPdfLink link = wxPdfLink(-1) 
) [virtual]

Prints a cell (rectangular area) with optional borders, background color and character string.

The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text. If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.

Parameters:
w Cell width. If 0, the cell extends up to the right margin.
h Cell height. Default value: 0.
txt String to print. Default value: empty string.
border Indicates if borders must be drawn around the cell. The value can be
  • wxPDF_BORDER_NONE no border
  • wxPDF_BORDER_LEFT left border
  • wxPDF_BORDER_RIGHT right border
  • wxPDF_BORDER_TOP top border
  • wxPDF_BORDER_BOTTOM bottom border
  • wxPDF_BORDER_FRAME border on all sides
or a combination of them.
ln Indicates where the current position should go after the call. Possible values are:
  • 0: to the right
  • 1: to the beginning of the next line
  • 2: below
Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.
align Allows to center or align the text. Possible values are:
  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • wxPDF_ALIGN_LEFT align the text at the left margin
  • wxPDF_ALIGN_CENTER center the text
  • wxPDF_ALIGN_RIGHT align the text at the right margin
  • wxPDF_ALIGN_JUSTIFY justify the text
fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.
link URL or identifier returned by AddLink().
See also:
SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak()

int wxPdfDocument::MultiCell ( double  w,
double  h,
const wxString &  txt,
int  border = 0,
int  align = wxPDF_ALIGN_JUSTIFY,
int  fill = 0,
int  maxline = 0 
) [virtual]

This method allows printing text with line breaks.

They can be automatic (as soon as the text reaches the right border of the cell) or explicit (via the
character). As many cells as necessary are output, one below the other. Text can be aligned, centered or justified. The cell block can be framed and the background painted.

Parameters:
w Width of cells. If 0, they extend up to the right margin of the page.
h Height of cells.
txt String to print
border Indicates if borders must be drawn around the cell. The value can be
  • wxPDF_BORDER_NONE no border
  • wxPDF_BORDER_LEFT left border
  • wxPDF_BORDER_RIGHT right border
  • wxPDF_BORDER_TOP top border
  • wxPDF_BORDER_BOTTOM bottom border
  • wxPDF_BORDER_FRAME border on all sides
or a combination of them.
align Allows to center or align the text. Possible values are:
  • wxPDF_ALIGN_LEFT align the text at the left margin
  • wxPDF_ALIGN_CENTER center the text
  • wxPDF_ALIGN_RIGHT align the text at the right margin
  • wxPDF_ALIGN_JUSTIFY justify the text (default)
fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.
maxline Defines the maximum number of lines which should be printed. If maxline is 0 then the number of lines is not restricted. Default value: 0.
Returns:
position in text string txt where output ended due to reaching the maximum number of lines
See also:
SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), Cell(), Write(), SetAutoPageBreak()

int wxPdfDocument::LineCount ( double  w,
const wxString &  txt 
) [virtual]

This method counts the number of lines a text would occupy in respect to a given maximal width.

Parameters:
w Width of cells. If 0, they extend up to the right margin of the page.
txt String for which the number of lines is to be counted
Returns:
Number of lines this text would occupy

int wxPdfDocument::TextBox ( double  w,
double  h,
const wxString &  txt,
int  halign = wxPDF_ALIGN_JUSTIFY,
int  valign = wxPDF_ALIGN_TOP,
int  border = 0,
int  fill = 0 
) [virtual]

This method counts the number of lines a text will occupy in respect to a given maximal width.

Parameters:
w Width of cells. If 0, they extend up to the right margin of the page.
h Height of cells.
txt String to print
halign Allows to center or align the text. Possible values are:
  • wxPDF_ALIGN_LEFT align the text at the left margin
  • wxPDF_ALIGN_CENTER center the text
  • wxPDF_ALIGN_RIGHT align the text at the right margin
  • wxPDF_ALIGN_JUSTIFY justify the text (default)
valign Allows to vertical align the text. Possible values are:
  • wxPDF_ALIGN_TOP align the text at the top of the box
  • wxPDF_ALIGN_MIDDLE center the text vertically in the box
  • wxPDF_ALIGN_BOTTOM align the text at the bottom of the box
border Indicates if borders must be drawn around the text box. The value can be
  • wxPDF_BORDER_NONE no border
  • wxPDF_BORDER_LEFT left border
  • wxPDF_BORDER_RIGHT right border
  • wxPDF_BORDER_TOP top border
  • wxPDF_BORDER_BOTTOM bottom border
  • wxPDF_BORDER_FRAME border on all sides
or a combination of them.
fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.

void wxPdfDocument::Write ( double  h,
const wxString &  txt,
const wxPdfLink link = wxPdfLink(-1) 
) [virtual]

This method prints text from the current position.

When the right margin is reached (or the
character is met) a line break occurs and text continues from the left margin. Upon method exit, the current position is left just at the end of the text. It is possible to put a link on the text.

Parameters:
h Line height
txt String to print
link URL or identifier returned by AddLink()
See also:
SetFont(), SetTextColor(), AddLink(), MultiCell(), SetAutoPageBreak()

void wxPdfDocument::WriteCell ( double  h,
const wxString &  txt,
int  border = wxPDF_BORDER_NONE,
int  fill = 0,
const wxPdfLink link = wxPdfLink(-1) 
) [virtual]

This method prints text with cell attributes from the current position.

When the right margin is reached (or the
character is met) a line break occurs and text continues from the left margin. Upon method exit, the current position is left just at the end of the text. It is possible to put a link on the text.

Parameters:
h Line height
txt String to print
border Indicates if borders must be drawn around the cell. The value can be
  • wxPDF_BORDER_NONE no border
  • wxPDF_BORDER_LEFT left border
  • wxPDF_BORDER_RIGHT right border
  • wxPDF_BORDER_TOP top border
  • wxPDF_BORDER_BOTTOM bottom border
  • wxPDF_BORDER_FRAME border on all sides
or a combination of them.
fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.
link URL or identifier returned by AddLink()
See also:
SetFont(), SetTextColor(), AddLink(), MultiCell(), SetAutoPageBreak()

bool wxPdfDocument::Image ( const wxString &  file,
double  x,
double  y,
double  w = 0,
double  h = 0,
const wxString &  mimeType = wxEmptyString,
const wxPdfLink link = wxPdfLink(-1),
int  maskImage = 0 
) [virtual]

Puts an image in the page.

The upper-left corner must be given. The dimensions can be specified in different ways:

Supported formats are JPEG, PNG, GIF and WMF. For JPEG, all flavors are allowed: For PNG, the following flavors are allowed: but the following options are not supported: If a transparent color is defined, it will be taken into account (but will be only interpreted by Acrobat 4 and above).

For GIF, all flavors the wsWidgets GIF decoder is able to handle are supported

For WMF: WMF files contain vector data described in terms of Windows Graphics Device Interface (GDI) commands. There are approximately 80 different GDI commands allowed for in the WMF standard. This method interprets only a small subset of these, but is sufficient to display most WMF images. Please feel free to add further functionality.

The format can be specified explicitly or inferred from the file extension.

It is possible to put a link on the image.

Remark: if an image is used several times, only one copy will be embedded in the file.

Parameters:
file Name of the file containing the image.
x Abscissa of the upper-left corner.
y Ordinate of the upper-left corner.
w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.
h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.
mimeType Image format. Possible values are: image/jpeg, image/png, image/gif, image/wmf. If not specified, the type is inferred from the file extension.
link URL or identifier returned by AddLink().
maskImage Id of an image mask created previously by ImageMask().
See also:
AddLink()

bool wxPdfDocument::Image ( const wxString &  name,
const wxImage &  image,
double  x,
double  y,
double  w = 0,
double  h = 0,
const wxPdfLink link = wxPdfLink(-1),
int  maskImage = 0 
) [virtual]

Puts an image in the page The image is given by an wxImage-Object

Parameters:
name Name of the image to be used as an identifier for this image object.
image wxImage object which will be embedded as PNG
x Abscissa of the upper-left corner.
y Ordinate of the upper-left corner.
w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.
h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.
link URL or identifier returned by AddLink().
maskImage Id of an image mask created previously by ImageMask().

bool wxPdfDocument::Image ( const wxString &  name,
wxInputStream &  stream,
const wxString &  mimeType,
double  x,
double  y,
double  w = 0,
double  h = 0,
const wxPdfLink link = wxPdfLink(-1),
int  maskImage = 0 
) [virtual]

Puts an image in the page The image is given by an wxInputStream-Object containing the raw image data.

Parameters:
name Name of the image to be used as an identifier for this image object.
stream wxInputStream object containing the raw image data
mimeType Image format. Possible values are: image/jpeg, image/png, image/gif, image/wmf.
x Abscissa of the upper-left corner.
y Ordinate of the upper-left corner.
w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.
h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.
link URL or identifier returned by AddLink().
maskImage Id of an image mask created previously by ImageMask().

int wxPdfDocument::ImageMask ( const wxString &  file,
const wxString &  mimeType = wxEmptyString 
) [virtual]

Prepares an image for use as an image mask The image is given as the name of the file conatining the image

Parameters:
file Name of the file containing the image.
mimeType Image format. Possible values are: image/jpeg, image/png, image/gif, image/wmf.
Returns:
id of the image mask, or 0 in case of an error

int wxPdfDocument::ImageMask ( const wxString &  name,
const wxImage &  image 
) [virtual]

Prepares an image for use as an image mask The image is given by an wxImage-Object

Parameters:
name Name of the image.
image wxImage object.
Returns:
id of the image mask, or 0 in case of an error

int wxPdfDocument::ImageMask ( const wxString &  name,
wxInputStream &  stream,
const wxString &  mimeType 
) [virtual]

Prepares an image for use as an image mask The image is given by an wxInputStream-Object containing the raw image data.

Parameters:
name Name of the image.
stream wxInputStream object containing the raw image data
mimeType Image format. Possible values are: image/jpeg, image/png, image/gif, image/wmf.
Returns:
id of the image mask, or 0 in case of an error

void wxPdfDocument::RotatedImage ( const wxString &  file,
double  x,
double  y,
double  w,
double  h,
double  angle,
const wxString &  type = wxEmptyString,
const wxPdfLink link = wxPdfLink(-1),
int  maskImage = 0 
) [virtual]

Puts a rotated image in the page.

The upper-left corner must be given.

The format can be specified explicitly or inferred from the file extension.

It is possible to put a link on the image.

Remark: if an image is used several times, only one copy will be embedded in the file.

Parameters:
file Name of the file containing the image.
x Abscissa of the upper-left corner.
y Ordinate of the upper-left corner.
w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.
h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.
angle Angle of rotation
type Image format. Possible values are (case insensitive): JPG, JPEG, PNG, GIF, WMF. If not specified, the type is inferred from the file extension.
link URL or identifier returned by AddLink().
maskImage Id of an image mask created previously by ImageMask().
See also:
Image(), AddLink()

void wxPdfDocument::Ln ( double  h = -1  )  [virtual]

Performs a line break.

The current abscissa goes back to the left margin and the ordinate increases by the amount passed in parameter.

Parameters:
h The height of the break. By default, the value equals the height of the last printed cell.
See also:
Cell()

double wxPdfDocument::GetX (  )  [virtual]

Returns the abscissa of the current position.

Returns:
float
See also:
SetX(), GetY(), SetY()

void wxPdfDocument::SetX ( double  x  )  [virtual]

Defines the abscissa of the current position.

If the passed value is negative, it is relative to the right of the page.

Parameters:
x The value of the abscissa.
See also:
GetX(), GetY(), SetY(), SetXY()

double wxPdfDocument::GetY (  )  [virtual]

Returns the ordinate of the current position.

Returns:
float
See also:
SetY(), GetX(), SetX()

void wxPdfDocument::SetY ( double  y  )  [virtual]

Moves the current abscissa back to the left margin and sets the ordinate.

If the passed value is negative, it is relative to the bottom of the page.

Parameters:
y The value of the ordinate.
See also:
GetX(), GetY(), SetY(), SetXY()

void wxPdfDocument::SetXY ( double  x,
double  y 
) [virtual]

Defines the abscissa and ordinate of the current position.

If the passed values are negative, they are relative respectively to the right and bottom of the page.

Parameters:
x The value of the abscissa
y The value of the ordinate
See also:
SetX(), SetY()

void wxPdfDocument::SaveAsFile ( const wxString &  name = wxEmptyString  )  [virtual]

Saves the document to a file on disk.

The method first calls Close() if necessary to terminate the document.

Parameters:
name The name of the file. If not given, the document will be named 'doc.pdf'
See also:
Close()

const wxMemoryOutputStream & wxPdfDocument::CloseAndGetBuffer (  )  [virtual]

Closes the document and returns the memory buffer containing the document.

The method first calls Close() if necessary to terminate the document.

Returns:
const wxMemoryOutputStream reference to the buffer containing the PDF document.
See also:
Close()

void wxPdfDocument::ClippingText ( double  x,
double  y,
const wxString &  txt,
bool  outline = false 
) [virtual]

Define text as clipping area.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
x Abscissa of the origin
y Ordinate of the origin
txt String to print
outline Draw the outline or not.

void wxPdfDocument::ClippingRect ( double  x,
double  y,
double  w,
double  h,
bool  outline = false 
) [virtual]

Define rectangle as clipping area.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
x Abscissa of the upper-left corner
y Ordinate of the upper-left corner
w Width of the rectangle
h Height of the rectangle
outline Draw the outline or not.

void wxPdfDocument::ClippingEllipse ( double  x,
double  y,
double  rx,
double  ry = 0,
bool  outline = false 
) [virtual]

Define ellipse as clipping area.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
x Abscissa of the Center point
y Ordinate of the Center point
rx,: Horizontal radius
ry,: Vertical radius (if ry = 0, draws a circle)
outline Draw the outline or not. (Default false)

void wxPdfDocument::ClippingPolygon ( const wxPdfArrayDouble &  x,
const wxPdfArrayDouble &  y,
bool  outline = false 
) [virtual]

Define polygon as clipping area.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
x Array with abscissa values
y Array with ordinate values
outline Draw the outline or not. (Default false)

void wxPdfDocument::ClippingPath (  )  [virtual]

Start defining a clipping path.

A clipping area restricts the display and prevents any elements from showing outside of it. The clipping path may consist of one or more subpaths.

void wxPdfDocument::MoveTo ( double  x,
double  y 
) [virtual]

Begin a new subpath.

Move to the starting point of a new (sub)path. The new current point is (x, y).

Parameters:
x abscissa value
y ordinate value
Remarks:
This must be the first operation after ClippingPath().

void wxPdfDocument::LineTo ( double  x,
double  y 
) [virtual]

Append a straight line segment to the current (sub)path.

Append a straight line segment from the current point to the point (x, y). The new current point is (x, y).

Parameters:
x abscissa value
y ordinate value

void wxPdfDocument::CurveTo ( double  x1,
double  y1,
double  x2,
double  y2,
double  x3,
double  y3 
) [virtual]

Append a cubic Bezier curve to the current (sub)path.

Append a cubic Bezier curve to the current path. The curve extends from the current point to the point (x3, y3), using (x1, y1) and (x2, y2) as the Bézier control points. The new current point is (x3, y3).

Parameters:
x1,: Abscissa of control point 1
y1,: Ordinate of control point 1
x2,: Abscissa of control point 2
y2,: Ordinate of control point 2
x3,: Abscissa of end point
y3,: Ordinate of end point

void wxPdfDocument::ClosePath ( int  style = wxPDF_STYLE_NOOP  )  [virtual]

Close the clipping path.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
style Style of rendering. Possible values are:
  • wxPDF_STYLE_NOOP (default)
  • wxPDF_STYLE_DRAW: draw the outline of the clipping path
  • wxPDF_STYLE_FILL: fill the area enclosed by the clipping path
  • wxPDF_STYLE_FILLDRAW: draw and fill

void wxPdfDocument::ClippingPath ( const wxPdfShape shape,
int  style = wxPDF_STYLE_NOOP 
) [virtual]

Define clipping area using a shape.

A clipping area restricts the display and prevents any elements from showing outside of it.

Parameters:
shape shape defining the clipping path
style Style of rendering. Possible values are:
  • wxPDF_STYLE_NOOP (default)
  • wxPDF_STYLE_DRAW: draw the outline of the clipping path
  • wxPDF_STYLE_FILL: fill the area enclosed by the clipping path
  • wxPDF_STYLE_FILLDRAW: draw and fill

void wxPdfDocument::UnsetClipping (  )  [virtual]

Remove clipping area.

Once you have finished using the clipping, you must remove it with UnsetClipping().

void wxPdfDocument::ClippedCell ( double  w,
double  h = 0.,
const wxString &  txt = wxEmptyString,
int  border = wxPDF_BORDER_NONE,
int  ln = 0,
int  align = wxPDF_ALIGN_LEFT,
int  fill = 0,
const wxPdfLink link = wxPdfLink(-1) 
) [virtual]

Prints a cell clipped to a rectangular area.

The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text. If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.

Parameters:
w Cell width.
h Cell height.
txt String to print. Default value: empty string.
border Indicates if borders must be drawn around the cell. The value can be
  • wxPDF_BORDER_NONE no border
  • wxPDF_BORDER_LEFT left border
  • wxPDF_BORDER_RIGHT right border
  • wxPDF_BORDER_TOP top border
  • wxPDF_BORDER_BOTTOM bottom border
  • wxPDF_BORDER_FRAME border on all sides
or a combination of them.
ln Indicates where the current position should go after the call. Possible values are:
  • 0: to the right
  • 1: to the beginning of the next line
  • 2: below
Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.
align Allows to center or align the text. Possible values are:
  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • wxPDF_ALIGN_LEFT align the text at the left margin
  • wxPDF_ALIGN_CENTER center the text
  • wxPDF_ALIGN_RIGHT align the text at the right margin
  • wxPDF_ALIGN_JUSTIFY justify the text
fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.
link URL or identifier returned by AddLink().
See also:
SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak()

void wxPdfDocument::StartTransform (  )  [virtual]

Enters a transformation environment.

Before applying any transformation this method should be invoked. All transformation method invoke it implicitly if necessary. All open transformation environments are closed implicitly on page end.

bool wxPdfDocument::ScaleX ( double  sx,
double  x = -1,
double  y = -1 
) [virtual]

Performs scaling in X direction only.

A scaling transformation is applied for the X direction.

Parameters:
sx,: scaling factor for width as percent. 0 is not allowed.
x,: abscissa of the scaling center. Default is current x position
y,: ordinate of the scaling center. Default is current y position

bool wxPdfDocument::ScaleY ( double  sy,
double  x = -1,
double  y = -1 
) [virtual]

Performs scaling in Y direction only.

A scaling transformation is applied for the Y direction.

Parameters:
sy,: scaling factor for height as percent. 0 is not allowed.
x,: abscissa of the scaling center. Default is current x position
y,: ordinate of the scaling center. Default is current y position

bool wxPdfDocument::ScaleXY ( double  s,
double  x = -1,
double  y = -1 
) [virtual]

Performs equal scaling in X and Y direction.

A scaling transformation is applied for both - X and Y - directions.

Parameters:
s,: scaling factor for width and height as percent. 0 is not allowed.
x,: abscissa of the scaling center. Default is current x position
y,: ordinate of the scaling center. Default is current y position

bool wxPdfDocument::Scale ( double  sx,
double  sy,
double  x = -1,
double  y = -1 
) [virtual]

Performs scaling in X and Y direction.

A scaling transformation is applied independently for X and Y direction.

Parameters:
sx,: scaling factor for width in percent. 0 is not allowed.
sy,: scaling factor for height in percent. 0 is not allowed.
x,: abscissa of the scaling center. Default is current x position
y,: ordinate of the scaling center. Default is current y position

void wxPdfDocument::MirrorH ( double  x = -1  )  [virtual]

Performs a horizontal mirroring transformation.

Alias for scaling -100% in x-direction

Parameters:
x,: abscissa of the axis of reflection

void wxPdfDocument::MirrorV ( double  y = -1  )  [virtual]

Performs a vertical mirroring transformation.

Alias for scaling -100% in y-direction

Parameters:
y,: abscissa of the axis of reflection

void wxPdfDocument::TranslateX ( double  tx  )  [virtual]

Moves the X origin.

Parameters:
tx,: movement to the right

void wxPdfDocument::TranslateY ( double  ty  )  [virtual]

Moves the Y origin.

Parameters:
ty,: movement to the bottom

void wxPdfDocument::Translate ( double  tx,
double  ty 
) [virtual]

Moves the origin.

Parameters:
tx,: movement to the right
ty,: movement to the bottom

bool wxPdfDocument::SkewX ( double  xAngle,
double  x = -1,
double  y = -1 
) [virtual]

Performs a skewing in both X direction only.

Parameters:
xAngle,: angle in degrees between -90 (skew to the left) and 90 (skew to the right)
x,: abscissa of the skewing center. default is current x position
y,: ordinate of the skewing center. default is current y position

bool wxPdfDocument::SkewY ( double  yAngle,
double  x = -1,
double  y = -1 
) [virtual]

Performs a skewing in Y direction only.

Parameters:
yAngle,: angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)
x,: abscissa of the skewing center. default is current x position
y,: ordinate of the skewing center. default is current y position

bool wxPdfDocument::Skew ( double  xAngle,
double  yAngle,
double  x = -1,
double  y = -1 
) [virtual]

Performs a skewing in both X and Y directions.

Parameters:
xAngle,: angle in degrees between -90 (skew to the left) and 90 (skew to the right)
yAngle,: angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)
x,: abscissa of the skewing center. default is current x position
y,: ordinate of the skewing center. default is current y position

void wxPdfDocument::StopTransform (  )  [virtual]

Leaves a transformation environment.

This method should be invoked to cancel a transformation environment opened by StartTransform. All open transformation environments are closed implicitly on page end.

int wxPdfDocument::SetAlpha ( double  lineAlpha = 1,
double  fillAlpha = 1,
wxPdfBlendMode  blendMode = wxPDF_BLENDMODE_NORMAL 
) [virtual]

Sets alpha values and blend mode.

Parameters:
lineAlpha alpha value for stroking operations, from 0 (transparent) to 1 (opaque)
fillAlpha alpha value for non-stroking operations, from 0 (transparent) to 1 (opaque)
blendMode one of the following: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity

void wxPdfDocument::SetAlphaState ( int  alphaState  )  [virtual]

Sets a previously defined alpha state.

Parameters:
alphaState id of alpha state

int wxPdfDocument::LinearGradient ( const wxPdfColour col1,
const wxPdfColour col2,
wxPdfLinearGradientType  gradientType = wxPDF_LINEAR_GRADIENT_HORIZONTAL 
) [virtual]

Defines a linear gradient shading.

Parameters:
col1 first color (RGB or CMYK).
col2 second color (RGB or CMYK).
gradientType Type of the gradient

int wxPdfDocument::AxialGradient ( const wxPdfColour col1,
const wxPdfColour col2,
double  x1 = 0,
double  y1 = 0,
double  x2 = 1,
double  y2 = 0,
double  intexp = 1 
) [virtual]

Defines a axial gradient shading.

Parameters:
col1 first color (RGB or CMYK).
col2 second color (RGB or CMYK).
x1 start point of gradient vector, default: 0 (range 0 .. 1)
y1 start point of gradient vector, default: 0 (range 0 .. 1)
x2 end point of gradient vector, default: 1 (range 0 .. 1)
y2 end point of gradient vector, default: 0 (range 0 .. 1)
intexp interpolation exponent, default: 1

int wxPdfDocument::MidAxialGradient ( const wxPdfColour col1,
const wxPdfColour col2,
double  x1 = 0,
double  y1 = 0,
double  x2 = 1,
double  y2 = 0,
double  midpoint = 0.5,
double  intexp = 1 
) [virtual]

Defines a axial gradient shading.

Parameters:
col1 first color (RGB or CMYK).
col2 second color (RGB or CMYK).
x1 start point of gradient vector, default: 0 (range 0 .. 1)
y1 start point of gradient vector, default: 0 (range 0 .. 1)
x2 end point of gradient vector, default: 1 (range 0 .. 1)
y2 end point of gradient vector, default: 0 (range 0 .. 1)
midpoint position of the mirror point, default: 0.5 (range 0 .. 1)
intexp interpolation exponent, default: 1

int wxPdfDocument::RadialGradient ( const wxPdfColour col1,
const wxPdfColour col2,
double  x1 = 0.5,
double  y1 = 0.5,
double  r1 = 0,
double  x2 = 0.5,
double  y2 = 0.5,
double  r2 = 1,
double  intexp = 1 
) [virtual]

Defines a radial gradient shading.

Parameters:
col1 first color (RGB or CMYK).
col2 second color (RGB or CMYK).
x1 center point of circle 1, default: 0.5 (range 0 .. 1)
y1 center point of circle 1, default: 0.5 (range 0 .. 1)
r1 radius of circle 1, default: 0
x2 center point of circle 2, default: 0.5 (range 0 .. 1)
y2 center point of circle 2, default: 0.5 (range 0 .. 1)
r2 radius of circle 2, default: 1
intexp interpolation exponent, default: 1

int wxPdfDocument::CoonsPatchGradient ( const wxPdfCoonsPatchMesh mesh,
double  minCoord = 0,
double  maxCoord = 1 
) [virtual]

Defines a coons patch mesh gradient shading.

Parameters:
mesh coons patch mesh to be used for the gradient
minCoord minimal coordinate of the mesh
maxCoord maximal coordinate of the mesh

void wxPdfDocument::SetFillGradient ( double  x,
double  y,
double  w,
double  h,
int  gradient 
) [virtual]

Paints a gradient shading to rectangular area.

Parameters:
x abscissa of the top left corner of the rectangle.
y ordinate of the top left corner of the rectangle.
w width of the rectangle.
h height of the rectangle.
gradient id of the gradient.

void wxPdfDocument::Marker ( double  x,
double  y,
wxPdfMarker  markerType,
double  size 
) [virtual]

Draws a graphical marker symbol.

Parameters:
x abscissa of the marker's center
y ordinate of the marker's center
markerType type of the marker
size size of the marker

void wxPdfDocument::Annotate ( double  x,
double  y,
const wxString &  text 
) [virtual]

Adds a text annotation.

Parameters:
x abscissa of the annotation symbol
y ordinate of the annotation symbol
text annotation text

void wxPdfDocument::AppendJavascript ( const wxString &  javascript  )  [virtual]

Appends Javascript.

Allows to append Javascript code to a Javascript object at the document level.

Parameters:
javascript Javascript code to be appended

void wxPdfDocument::WriteXml ( const wxString &  str  ) 

Prints a string containing simple XML markup.

Output starts at the current position.

Parameters:
str string containing text with simple XML markup
See also:
Styling text using a simple markup language

void wxPdfDocument::CheckBox ( const wxString &  name,
double  width,
bool  checked = false 
)

Adds a check box field at the current position.

Adds a check box to the list of form fields at the current position

Parameters:
name field name of the check box
width width of the check box
checked default value of the check box

void wxPdfDocument::CheckBox ( const wxString &  name,
double  x,
double  y,
double  width,
bool  checked = false 
)

Adds a check box field.

Adds a check box to the list of form fields

Parameters:
name field name of the check box
x abscissa of the check box position
y ordinate of the check box position
width width of the check box
checked default value of the check box

void wxPdfDocument::ComboBox ( const wxString &  name,
double  width,
double  height,
const wxArrayString &  values 
)

Adds a combo box field at the current position.

Adds a combo box to the list of form fields at the current position

Parameters:
name field name of the combo box
width width of the combo box
height height of the combo box
values array of option values of the combo box

void wxPdfDocument::ComboBox ( const wxString &  name,
double  x,
double  y,
double  width,
double  height,
const wxArrayString &  values 
)

Adds a combo box field.

Adds a combo box to the list of form fields

Parameters:
name field name of the combo box
x abscissa of the combo box position
y ordinate of the combo box position
width width of the combo box
height height of the combo box
values array of option values of the combo box

void wxPdfDocument::PushButton ( const wxString &  name,
double  width,
double  height,
const wxString &  caption,
const wxString &  action 
)

Adds a push button at the current position.

Adds a push button to the list of form fields at the current position

Parameters:
name field name of the push button
width width of the push button
height height of the push button
caption caption of the push button
action associated Javascript action

void wxPdfDocument::PushButton ( const wxString &  name,
double  x,
double  y,
double  width,
double  height,
const wxString &  caption,
const wxString &  action 
)

Adds a push button.

Adds a push button to the list of form fields

Parameters:
name field name of the push button
x abscissa of the push button position
y ordinate of the push button position
width width of the push button
height height of the push button
caption caption of the push button
action associated Javascript action

void wxPdfDocument::RadioButton ( const wxString &  group,
const wxString &  name,
double  width 
)

Adds a radio button at the current position.

Adds a radio button to the list of form fields at the current position

Parameters:
group name of the radio button group this radio button belongs to
name field name of the radio button
width width of the radio button

void wxPdfDocument::RadioButton ( const wxString &  group,
const wxString &  name,
double  x,
double  y,
double  width 
)

Adds a radio button.

Adds a radio button to the list of form fields

Parameters:
group name of the radio button group this radio button belongs to
name field name of the radio button
x abscissa of the radio button position
y ordinate of the radio button position
width width of the radio button

void wxPdfDocument::TextField ( const wxString &  name,
double  width,
double  height,
const wxString &  value = wxEmptyString,
bool  multiline = false 
)

Adds a text field at the current position.

Adds a text field to the list of form fields at the current position

Parameters:
name field name of the text field
width width of the text field
height height of the text field
value default value of the text field
multiline flag whether the text field is a multiline field or not

void wxPdfDocument::TextField ( const wxString &  name,
double  x,
double  y,
double  width,
double  height,
const wxString &  value = wxEmptyString,
bool  multiline = false 
)

Adds a text field.

Adds a text field to the list of form fields

Parameters:
name field name of the text field
x abscissa of the text field position
y ordinate of the text field position
width width of the text field
height height of the text field
value default value of the text field
multiline flag whether the text field is a multiline field or not

void wxPdfDocument::SetFormColors ( const wxPdfColour borderColor = wxPdfColour(),
const wxPdfColour backgroundColor = wxPdfColour(250),
const wxPdfColour textColor = wxPdfColour() 
)

Sets colors for form fields.

Sets the border, background and text color to be used for all subsequent form field additions until this method is called again with different values.

Parameters:
borderColor color of the form field's border
backgroundColor color of the form field's background
textColor color of the form field's font

void wxPdfDocument::SetFormBorderStyle ( wxPdfBorderStyle  borderStyle = wxPDF_BORDER_SOLID,
double  borderWidth = -1 
)

Sets the border style for form fields.

Sets the border width and style to be used for all subsequent form field additions until this method is called again with different values.

Parameters:
borderStyle style of the form field's border
  • wxPDF_BORDER_SOLID - solid border
  • wxPDF_BORDER_DASHED - dashed border
  • wxPDF_BORDER_BEVELED - beveled border
  • wxPDF_BORDER_INSET - inset border
  • wxPDF_BORDER_UNDERLINE - border on the bottom side only
borderWidth width of the form field's border

int wxPdfDocument::BeginTemplate ( double  x = 0,
double  y = 0,
double  width = 0,
double  height = 0 
)

Starts a new Template.

Starts a new template, optionally with own dimensions. The margins have to adapted to the new template size. For writing outside the template, for example to build a clipped template, the margins and "cursor" position have to be set manually after the call to BeginTemplate().

If no dimensions are given, the template uses the current page size. The method returns the ID of the current template. The ID is used to reference a template in the UseTemplate() method. Warning: A template once created is embedded in the resulting PDF document at all events, even if it is not used.

Parameters:
x The x-coordinate given in user units
y The y-coordinate given in user units
width The width given in user units
height The height given in user units
Returns:
int The ID of the created template
See also:
EndTemplate(), UseTemplate()
Attention: Calls to BeginTemplate can not be nested!

int wxPdfDocument::EndTemplate (  ) 

Terminates a template.

Terminates the creation of a template and reset initiated variables on beginTemplate.

Returns:
If a template was under construction, its ID is returned, otherwise a 0 is returned.
See also:
BeginTemplate(), UseTemplate()

void wxPdfDocument::GetTemplateSize ( int  templateId,
double &  width,
double &  height 
)

Get the calculated size of a template.

Retrieves the size of a template.

Parameters:
templateId A valid template ID
width The width of the template
height The height of the template
See also:
BeginTemplate(), EndTemplate(), UseTemplate(), ImportPage()
Attention: The width and/or height parameters have to be set to a value <= 0 prior to calling this method, otherwise they will not be calculated. If one dimension, i.e. width, is passed with a value > 0, the other one, i.e. height, is calculated accordingly.

void wxPdfDocument::UseTemplate ( int  templateId,
double  x = -1,
double  y = -1,
double  width = 0,
double  height = 0 
)

Uses a template in current page or in another template.

Uses the specified template just like an image in the current page or in another template.

All parameters are optional. The width or height is calculated using GetTemplateSize internally. By default the size as defined by BeginTemplate is used.

Parameters:
templateId A valid template ID
x The x coordinate
y The y coordinate
width The new width of the template
height The new height of the template
See also:
BeginTemplate(), EndTemplate(), ImportPage()
Attention: The template may be displayed distorted, if both width and height are given with values > 0 and do not correspond to the dimensions of the template.

int wxPdfDocument::SetSourceFile ( const wxString &  filename,
const wxString &  password = wxEmptyString 
)

Sets a source file for the external template feature.

Selects the source for the external template feature. A parser is setup for importing pages from the PDF document. Although wxPdfDocument usually creates PDF documents conforming to version 1.3 of the PDF standard, parsing of documents conforming to versions up to 1.6 is supported. If pages are aimported from documents conforming to a higher version than 1.3 the version used by wxPdDocument is updated accordingly.

Parameters:
filename a valid filename
password a valid user or owner password if the PDF document is encrypted
Returns:
the number of available pages, or 0 if the document could not be opened
See also:
ImportPage(), UseTemplate()
Attention: Access permissions for printing, copying and extracting text or graphics are required. If a PDF document does not have these access permissions, it cannot be used as a source for the external template feature.

bool wxPdfDocument::GetSourceInfo ( wxPdfInfo info  ) 

Gets the document information dictionary of the current external PDF document.

Gets the values of the Info dictionary of the current external document, if available.

Parameters:
info the info dictionary object receiving the document information
Returns:
true if the info dictionary was available, false otherwise
See also:
SetSourceFile()

int wxPdfDocument::ImportPage ( int  pageno  ) 

Imports a page from an external PDF document.

Imports a page from the current external PDF document. As the bounding box of the template the ArtBox of the imported page is used. If the page does not have an explicit ArtBox, the CropBox will be used instead; if there is no explicit CropBox then the MediaBox will be used.

Parameters:
pageno page number of the page to be imported
Returns:
Index of imported page - for use in UseTemplate(). A value of 0 is returned if the page number is out of range or no source was selected.
See also:
SetSourceFile()

void wxPdfDocument::GetTemplateBBox ( int  templateId,
double &  x,
double &  y,
double &  width,
double &  height 
)

Gets the bounding box of a template.

Especially for pages imported from an external PDF document the size of the bounding box might be of interest. The values returned correspond to the coordinates of the lower left corner and the width and height of the template.

Parameters:
templateId A valid template ID
x The x coordinate of the lower left corner
y The y coordinate of the lower left corner
width The width of the template
height The height of the template
See also:
SetTemplateBBox(), BeginTemplate(), ImportPage()

void wxPdfDocument::SetTemplateBBox ( int  templateId,
double  x,
double  y,
double  width,
double  height 
)

Sets the bounding box of a template.

As long as a template hasn't been used it is possible to change the bounding box of the template. This may be useful for pages imported from an external PDF document allowing to set the visible portion of the template. Note: Setting the bounding box influences only the visible area of the template, not the real size it occupies.

Parameters:
templateId A valid template ID
x The x coordinate of the lower left corner
y The y coordinate of the lower left corner
width The width of the template
height The height of the template
See also:
GetTemplateBBox(), BeginTemplate(), ImportPage()

void wxPdfDocument::ShapedText ( const wxPdfShape shape,
const wxString &  text,
wxPdfShapedTextMode  mode = wxPDF_SHAPEDTEXTMODE_STRETCHTOFIT 
)

Prints a text string along a path defined by a shape.

Parameters:
shape shape defining a path along which the text is printed
text text string to be printed
mode flag how to handle the text string
  • wxPDF_SHAPEDTEXTMODE_ONETIME: the text should be printed at most one time depending on the path length
  • wxPDF_SHAPEDTEXTMODE_STRETCHTOFIT: the text should be stretched to fit exactly along the given path (default)
  • wxPDF_SHAPEDTEXTMODE_REPEAT: the text should be repeated if the text length is shorter than the path length

wxString wxPdfDocument::RGB2String ( const wxColour &  color  )  [static]

Converts a wxColour to the corresponding PDF specification.

Parameters:
color color to be converted to a hexadecimal string representation
Returns:
the hexadecimal string representation of the color

wxString wxPdfDocument::Double2String ( double  value,
int  precision = 0 
) [static]

Formats a floating point number with a fixed precision.

Parameters:
value the value to be formatted
precision the number of decimal places
Returns:
the string representation of the number

double wxPdfDocument::String2Double ( const wxString &  str  )  [static]

Parses a floating point number.

Parameters:
str the string to be parsed
Returns:
the value of floating point number given by the string representation, 0 if the string could not be parsed.

wxString wxPdfDocument::Convert2Roman ( int  value  )  [static]

Converts an integer number to a roman number.

Parameters:
value integer value to be converted
Returns:
the string representation of the integer value as a roman number

double wxPdfDocument::ForceRange ( double  value,
double  minValue,
double  maxValue 
) [static]

Forces a floating point number into a fixed range.

Parameters:
value value to be forced into range
minValue lower limit
maxValue upper limit
Returns:
value conforming to the given range:
  • the minValue if the value falls below the lower limit
  • the value itself if it is within range
  • the maxValue if the value exceeds the upper limit

wxString wxPdfDocument::GetUniqueId ( const wxString &  prefix = wxEmptyString  )  [static]

Create a unique ID.

bool wxPdfDocument::SelectFont ( const wxString &  family,
const wxString &  style = wxEmptyString,
double  size = 0,
bool  setFont = true 
) [protected, virtual]

Select font.

void wxPdfDocument::BeginPage ( int  orientation  )  [protected, virtual]

Start document.

void wxPdfDocument::EndPage (  )  [protected, virtual]

End of page contents.

void wxPdfDocument::EndDoc (  )  [protected, virtual]

End dociment.

void wxPdfDocument::PutHeader (  )  [protected, virtual]

Add header.

void wxPdfDocument::PutPages (  )  [protected, virtual]

Add pages.

void wxPdfDocument::ReplaceNbPagesAlias (  )  [protected, virtual]

Replace page number aliases.

void wxPdfDocument::PutResources (  )  [protected, virtual]

Add resources.

void wxPdfDocument::PutBookmarks (  )  [protected, virtual]

Add bookmarks.

void wxPdfDocument::PutExtGStates (  )  [protected, virtual]

Add extended graphics states.

void wxPdfDocument::PutShaders (  )  [protected, virtual]

Add shaders.

void wxPdfDocument::PutFonts (  )  [protected, virtual]

Adds fonts.

void wxPdfDocument::PutImages (  )  [protected, virtual]

Add images.

void wxPdfDocument::PutTemplates (  )  [protected, virtual]

Add templates.

void wxPdfDocument::PutImportedObjects (  )  [protected, virtual]

Add imported objects.

void wxPdfDocument::WriteObjectValue ( wxPdfObject value,
bool  newline = true 
) [protected, virtual]

void wxPdfDocument::PutSpotColors (  )  [protected, virtual]

Add spot colors.

void wxPdfDocument::PutJavaScript (  )  [protected, virtual]

Add Javascript (document level).

void wxPdfDocument::PutResourceDict (  )  [protected, virtual]

Add resource dictionary.

void wxPdfDocument::PutEncryption (  )  [protected, virtual]

Add encryption info.

void wxPdfDocument::PutFormFields (  )  [protected, virtual]

Add form fields.

void wxPdfDocument::PutInfo (  )  [protected, virtual]

Add info.

void wxPdfDocument::PutCatalog (  )  [protected, virtual]

Addcatalog.

void wxPdfDocument::PutXObjectDict (  )  [protected, virtual]

Add object dictionary.

void wxPdfDocument::PutTrailer (  )  [protected, virtual]

Add trailer.

int wxPdfDocument::CalculateStreamLength ( int  len  )  [protected]

Calculate stream size.

int wxPdfDocument::CalculateStreamOffset (  )  [protected]

Calculate stream offset.

int wxPdfDocument::GetNewObjId (  )  [protected]

Get new object id.

void wxPdfDocument::NewObj ( int  objId = 0  )  [protected]

Begin a new object.

wxString wxPdfDocument::DoDecoration ( double  x,
double  y,
const wxString &  txt 
) [protected]

Decorate text.

void wxPdfDocument::TextEscape ( const wxString &  s,
bool  newline = true 
) [protected]

Format a text string.

void wxPdfDocument::PutStream ( wxMemoryOutputStream &  s  )  [protected]

Add byte stream.

void wxPdfDocument::OutTextstring ( const wxString &  s,
bool  newline = true 
) [protected]

Add a text string to the document.

void wxPdfDocument::OutRawTextstring ( const wxString &  s,
bool  newline = true 
) [protected]

Add a raw text string to the document (without charset conversion).

void wxPdfDocument::OutHexTextstring ( const wxString &  s,
bool  newline = true 
) [protected]

Add a hex text string to the document (without charset conversion).

void wxPdfDocument::OutAsciiTextstring ( const wxString &  s,
bool  newline = true 
) [protected]

Add an ASCII text string to the document.

void wxPdfDocument::OutEscape ( const char *  s,
int  len 
) [protected]

Add \ before \, ( and ).

void wxPdfDocument::OutAscii ( const wxString &  s,
bool  newline = true 
) [protected]

Add ASCII string.

void wxPdfDocument::Out ( const char *  s,
bool  newline = true 
) [protected]

Add character string.

void wxPdfDocument::Out ( const char *  s,
int  len,
bool  newline = true 
) [protected]

Add len characters.

void wxPdfDocument::OutPoint ( double  x,
double  y 
) [protected]

Sets a draw point.

void wxPdfDocument::OutPointRelative ( double  dx,
double  dy 
) [protected]

Sets a draw point relative to current position.

void wxPdfDocument::OutLine ( double  x,
double  y 
) [protected]

Draws a line from last draw point.

void wxPdfDocument::OutLineRelative ( double  dx,
double  dy 
) [protected]

Draws a line relative from last draw point.

void wxPdfDocument::OutCurve ( double  x1,
double  y1,
double  x2,
double  y2,
double  x3,
double  y3 
) [protected]

Draws a Bézier curve from last draw point.

void wxPdfDocument::Transform ( double  tm[6]  )  [protected]

Perform transformation.

void wxPdfDocument::AddFormField ( wxPdfAnnotationWidget field,
bool  setFormField = true 
) [protected]

Adds a form field to the document.

void wxPdfDocument::OutIndirectObject ( wxPdfIndirectObject object  )  [protected]

Add an indirect object to the document.

TODO: support for radio button groups

void wxPdfDocument::OutImage ( wxPdfImage currentImage,
double  x,
double  y,
double  w,
double  h,
const wxPdfLink link 
) [protected]

Add an image object to the document.

void wxPdfDocument::PrepareXmlCell ( wxXmlNode *  node,
wxPdfCellContext context 
) [protected]

Prepare an XML cell for output.

void wxPdfDocument::WriteXmlCell ( wxXmlNode *  node,
wxPdfCellContext context 
) [protected]

Output a prepared XML cell.

void wxPdfDocument::DoXmlAlign ( wxPdfCellContext context  )  [protected]

Take alignment of an XML cell into account.

void wxPdfDocument::PrepareXmlTable ( wxXmlNode *  node,
wxPdfCellContext context 
) [protected]

Prepare an XML table for output.

void wxPdfDocument::WriteXmlTable ( wxPdfCellContext context  )  [protected]

Output a prepared XML table.

void wxPdfDocument::InitializeCoreFonts (  )  [protected]

Initialize the core fonts.


Friends And Related Function Documentation

friend class wxPdfImage [friend]

friend class wxPdfTable [friend]


The documentation for this class was generated from the following files:
Generated on Fri Dec 15 21:30:37 2006 for wxPdfDocument by  doxygen 1.5.1-p1