Documentation

TCPDF_IMPORT extends TCPDF
in package

Tags
class

TCPDF_IMPORT !!! THIS CLASS IS UNDER DEVELOPMENT !!! PHP class extension of the TCPDF (http://www.tcpdf.org) library to import existing PDF documents.

brief

PHP class extension of the TCPDF library to import existing PDF documents.

version
1.0.001
author

Nicola Asuni - info@tecnick.com

Table of Contents

Properties

$allowLocalFiles  : bool
Whether to allow local file path in image html tags, when prefixed with file://
$alpha  : mixed
Alpha mode array.
$annotation_fonts  : mixed
List of fonts used on form fields (fontname => fontkey).
$author  : mixed
Document author.
$AutoPageBreak  : mixed
Automatic page breaking.
$barcode  : mixed
Barcode to print on page footer (only if set).
$bgcolor  : mixed
Current background color.
$bMargin  : mixed
Page break margin.
$booklet  : mixed
Booklet mode for double-sided pages.
$bordermrk  : mixed
Array used to store positions inside the pages buffer (keys are the page numbers).
$buffer  : mixed
Buffer holding in-memory PDF.
$bufferlen  : mixed
Length of the buffer in bytes.
$cache_file_length  : mixed
Array used to store the lengths of cache files.
$cell_height_ratio  : float
Default cell height ratio.
$cell_margin  : mixed
Array of cell margins ('T' => top, 'R' => right, 'B' => bottom, 'L' => left).
$cell_padding  : mixed
Array of cell internal paddings ('T' => top, 'R' => right, 'B' => bottom, 'L' => left).
$check_page_regions  : mixed
Boolean value true when page region check is active.
$cleaned_ids  : array<string|int, mixed>
$clMargin  : mixed
Cell left margin (used by regions).
$cntmrk  : mixed
Array used to store content positions inside the pages buffer (keys are the page numbers).
$ColorFlag  : mixed
Indicates whether fill and text colors are different.
$column_start_page  : mixed
Starting page for columns.
$columns  : mixed
Array of column measures (width, space, starting Y position).
$colxshift  : mixed
Array of: X difference between table cell x start and starting page margin, cellspacing, cellpadding.
$compress  : mixed
Compression flag.
$CoreFonts  : mixed
Array of standard font names.
$creator  : mixed
Document creator.
$crMargin  : mixed
Cell right margin (used by regions).
$CurOrientation  : mixed
Current page orientation (P = Portrait, L = Landscape).
$current_column  : mixed
Current column number.
$CurrentFont  : mixed
Current font info.
$currpagegroup  : mixed
Current page group number.
$custom_xmp  : mixed
Custom XMP data.
$custom_xmp_rdf  : mixed
Custom XMP RDF data.
$customlistindent  : mixed
HTML PARSER: custom indent amount for lists. Negative value means disabled.
$default_form_prop  : mixed
Deafult Javascript field properties. Possible values are described on official Javascript for Acrobat API reference. Annotation options can be directly specified using the 'aopt' entry.
$default_graphic_vars  : mixed
Array of default graphic settings.
$default_monospaced_font  : mixed
Default monospace font.
$default_table_columns  : mixed
Default number of columns for html table.
$dests  : mixed
A dictionary of names and corresponding destinations (Dests key on document Catalog).
$diffs  : mixed
Array of encoding differences.
$doc_creation_timestamp  : mixed
Document creation date-time
$doc_modification_timestamp  : mixed
Document modification date-time
$docinfounicode  : mixed
If true set the document information dictionary in Unicode.
$dpi  : mixed
DPI (Dot Per Inch) Document Resolution (do not change).
$DrawColor  : mixed
Commands for drawing color.
$efnames  : mixed
Embedded Files Names
$embeddedfiles  : mixed
Array of files to embedd.
$empty_signature_appearance  : mixed
Array of empty digital signature appearances.
$emptypagemrk  : mixed
Array used to store page positions to track empty pages (keys are the page numbers).
$encoding  : mixed
Default encoding.
$encryptdata  : mixed
Array containing encryption settings.
$encrypted  : mixed
IBoolean flag indicating whether document is protected.
$endlinex  : mixed
End position of the latest inserted line.
$epsmarker  : mixed
String used to mark the beginning and end of EPS image blocks.
$extgstates  : mixed
Array of transparency objects and parameters.
$feps  : mixed
Epsilon value used for float calculations.
$fgcolor  : mixed
Current foreground color.
$fhPt  : mixed
Height of page format in points.
$file_id  : mixed
File ID (used on document trailer).
$fileContentCache  : array<string|int, mixed>
Cache array for file content
$FillColor  : mixed
Commands for filling color.
$font_obj_ids  : mixed
Store the font object IDs.
$font_spacing  : mixed
Increases or decreases the space between characters in a text by the specified amount (tracking).
$font_stretching  : mixed
Percentage of character stretching.
$font_subsetting  : mixed
Boolean flag: if true enables font subsetting by default.
$FontAscent  : mixed
Current font ascent (distance between font top and baseline).
$FontDescent  : mixed
Current font descent (distance between font bottom and baseline).
$FontFamily  : mixed
Current font family.
$FontFiles  : mixed
Array of font files.
$fontkeys  : mixed
Store the font keys.
$fontlist  : mixed
List of available fonts on filesystem.
$fonts  : mixed
Array of used fonts.
$FontSize  : mixed
Current font size in user unit.
$FontSizePt  : mixed
Current font size in points.
$FontStyle  : mixed
Current font style.
$footer_font  : array<int, string|float|null>
Default font used on page footer.
$footer_line_color  : array<string|int, int>
Color for footer line (RGB array).
$footer_margin  : float
Minimum distance between footer and bottom page margin.
$footer_text_color  : array<string|int, int>
Color for footer text (RGB array).
$footerlen  : mixed
Array used to store footer length of each page.
$footerpos  : mixed
Array used to store footer positions of each page.
$force_srgb  : mixed
If true force sRGB color profile for all document.
$form_action  : mixed
Current form action (used during XHTML rendering).
$form_enctype  : mixed
Current form encryption type (used during XHTML rendering).
$form_mode  : mixed
Current method to submit forms.
$form_obj_id  : mixed
List of form annotations IDs.
$fwPt  : mixed
Width of page format in points.
$gdgammacache  : mixed
Cache array for computed GD gamma values.
$gradients  : mixed
Array for storing gradient information.
$h  : mixed
Current height of page in user unit.
$hash_key  : mixed
Internal secret used to encrypt data.
$header_font  : array<int, string|float|null>
Default font used on page header.
$header_line_color  : array<string|int, int>
Color for header line (RGB array).
$header_logo  : mixed
Header image logo.
$header_logo_width  : mixed
Width of header image logo in user units.
$header_margin  : float
Minimum distance between header and top page margin.
$header_string  : mixed
String to print on page header after title.
$header_text_color  : array<string|int, int>
Color for header text (RGB array).
$header_title  : mixed
Title to be printed on default page header.
$header_xobj_autoreset  : mixed
If true reset the Header Xobject template at each page
$header_xobjid  : mixed
ID of the stored default header template (-1 = not set).
$hPt  : mixed
Current height of page in points.
$HREF  : mixed
HTML PARSER: array to store current link and rendering styles.
$htmlLinkColorArray  : mixed
Default color for html links.
$htmlLinkFontStyle  : mixed
Default font style to add to html links.
$htmlvspace  : mixed
Count the latest inserted vertical spaces on HTML.
$imagekeys  : mixed
Store the image keys.
$images  : mixed
Array of used images.
$img_rb_x  : mixed
The right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image.
$img_rb_y  : mixed
The right-bottom corner Y coordinate of last inserted image.
$imgscale  : mixed
Adjusting factor to convert pixels to user units.
$InFooter  : mixed
Flag set when processing page footer.
$InHeader  : mixed
Flag set when processing page header.
$inthead  : mixed
True when we are printing the thead section on a new page.
$intmrk  : mixed
Array used to store positions inside the pages buffer (keys are the page numbers).
$inxobj  : mixed
Boolean value true when we are inside an XObject.
$isunicode  : mixed
Boolean flag set to true when the input text is unicode (require unicode fonts).
$javascript  : mixed
Javascript code.
$jpeg_quality  : mixed
Set the default JPEG compression quality (1-100).
$js_objects  : mixed
Javascript objects array.
$k  : mixed
Scale factor (number of points in user unit).
$keywords  : mixed
Document keywords.
$l  : mixed
Language templates.
$last_enc_key  : mixed
Last RC4 key encrypted (cached for optimisation).
$last_enc_key_c  : mixed
Last RC4 computed key.
$lasth  : mixed
Height of last cell printed.
$LayoutMode  : mixed
Layout display mode.
$linestyleCap  : mixed
PDF string for CAP value of the last line.
$linestyleDash  : mixed
PDF string for dash value of the last line.
$linestyleJoin  : mixed
PDF string for join value of the last line.
$linestyleWidth  : mixed
PDF string for width value of the last line.
$linethrough  : mixed
line through state
$LineWidth  : mixed
Line width in user unit.
$links  : mixed
Array of internal links.
$lispacer  : mixed
Spacer string for LI tags.
$listcount  : mixed
HTML PARSER: array count list items on nested lists.
$listindent  : mixed
HTML PARSER: indent amount for lists.
$listindentlevel  : mixed
HTML PARSER: current list indententation level.
$listnum  : mixed
HTML PARSER: current list nesting level.
$listordered  : mixed
HTML PARSER: array of boolean values, true in case of ordered list (OL), false otherwise.
$lisymbol  : mixed
Symbol used for HTML unordered list items.
$lMargin  : mixed
Left margin.
$maxselcol  : mixed
Maximum page and column selected.
$n  : mixed
Current object number.
$n_dests  : mixed
Object ID for Named Destinations
$n_js  : mixed
Javascript counter.
$newline  : mixed
Boolean flag to indicate if a new line is created.
$newpagegroup  : mixed
Array of page numbers were a new page group was started (the page numbers are the keys of the array).
$num_columns  : mixed
Number of colums.
$numfonts  : mixed
Counts the number of fonts.
$numimages  : mixed
Counts the number of pages.
$numpages  : mixed
Counts the number of pages.
$objcopy  : mixed
Cloned copy of the current class object.
$offsets  : mixed
Array of object offsets.
$opencell  : mixed
Boolean flag to indicate if the border of the cell sides that cross the page should be removed.
$openMarkedContent  : mixed
Boolean flag to indicate if marked-content sequence is open.
$original_lMargin  : mixed
Original left margin value.
$original_rMargin  : mixed
Original right margin value.
$OutlineRoot  : mixed
Outline root for bookmark.
$outlines  : mixed
Outlines for bookmark.
$overline  : mixed
Overlining flag.
$overprint  : array<string, bool|int>
Overprint mode array.
$page  : mixed
Current page number.
$page_boxes  : mixed
Define the page boundaries boxes to be set on document.
$page_obj_id  : mixed
ID of page objects.
$page_regions  : mixed
Array of no-write regions.
$PageAnnots  : mixed
Array of Annotations in pages.
$PageBreakTrigger  : mixed
Threshold used to trigger page breaks.
$pagedim  : mixed
Page dimensions.
$pagegroups  : mixed
Array that contains the number of pages in each page group.
$pagelen  : mixed
Array containing page lengths in bytes.
$PageMode  : mixed
A name object specifying how the document should be displayed when opened.
$pageobjects  : mixed
Array of object IDs for each page.
$pageopen  : mixed
Store the fage status (true when opened, false when closed).
$pages  : mixed
Array containing pages.
$pdfa_mode  : mixed
If true set the document to PDF/A mode.
$pdfa_version  : mixed
version of PDF/A mode (1 - 3).
$pdflayers  : mixed
Array of PDF layers data.
$pdfunit  : mixed
Default unit of measure for document.
$PDFVersion  : mixed
PDF version.
$premode  : mixed
Boolean flag to indicate if we are inside a PRE tag.
$print_footer  : mixed
Boolean flag to print/hide page footer.
$print_header  : mixed
Boolean flag to print/hide page header.
$radio_groups  : mixed
List of radio group objects IDs.
$radiobutton_groups  : mixed
List of radio buttons parent objects.
$rasterize_vector_images  : mixed
Boolean flag: if true convert vector images (SVG, EPS) to raster image using GD or ImageMagick library.
$re_space  : mixed
Array of $re_spaces parts.
$re_spaces  : mixed
Regular expression used to find blank characters (required for word-wrapping).
$rMargin  : mixed
Right margin.
$rtl  : mixed
Boolean flag to indicate if the document language is Right-To-Left.
$sig_obj_id  : mixed
Digital signature object ID.
$sign  : mixed
Boolean flag to enable document digital signature.
$signature_appearance  : mixed
Data for digital signature appearance.
$signature_data  : mixed
Digital signature data.
$signature_max_length  : mixed
Digital signature max length.
$spot_colors  : mixed
Array of Spot colors.
$start_transaction_page  : mixed
Store page number when startTransaction() is called.
$start_transaction_y  : mixed
Store Y position when startTransaction() is called.
$starting_page_number  : mixed
Starting page number.
$state  : mixed
Current document state.
$strokecolor  : mixed
Current stroke color.
$subject  : mixed
Document subject.
$svg_tag_depth  : mixed
Depth of the svg tag, to keep track if the svg tag is a subtag or the root tag.
$svgclipid  : mixed
ID of last SVG clipPath.
$svgclipmode  : mixed
Boolean value true when in SVG clipPath tag.
$svgclippaths  : mixed
Array of SVG clipPath commands.
$svgcliptm  : mixed
Array of SVG clipPath tranformation matrix.
$svgdefs  : mixed
Array of SVG defs.
$svgdefsmode  : mixed
Boolean value true when in SVG defs group.
$svgdir  : mixed
Directory used for the last SVG image.
$svggradientid  : mixed
ID of last SVG gradient.
$svggradients  : mixed
Array of SVG gradients.
$svgstyles  : mixed
Array of SVG properties.
$svgtext  : mixed
SVG text.
$svgtextmode  : mixed
SVG text properties.
$svgunit  : mixed
Deafult unit of measure for SVG.
$tagvspaces  : mixed
Array used for custom vertical spaces for HTML tags.
$tcpdflink  : mixed
If true print TCPDF meta link.
$tempfontsize  : mixed
Temporary font size in points.
$TextColor  : mixed
Commands for text color.
$textindent  : mixed
Text indentation value (used for text-indent CSS attribute).
$textrendermode  : mixed
Text rendering mode: 0 = Fill text; 1 = Stroke text; 2 = Fill, then stroke text; 3 = Neither fill nor stroke text (invisible); 4 = Fill text and add to path for clipping; 5 = Stroke text and add to path for clipping; 6 = Fill, then stroke text and add to path for clipping; 7 = Add text to path for clipping.
$textstrokewidth  : mixed
Text stroke width in doc units.
$thead  : mixed
Table header content to be repeated on each new page.
$theadMargins  : mixed
Margins used for table header.
$title  : mixed
Document title.
$tMargin  : mixed
Top margin.
$tmprtl  : mixed
Boolean flag used to force RTL or LTR string direction.
$tocpage  : mixed
Boolean flag true when we are on TOC (Table Of Content) page.
$transfmatrix  : mixed
Array of transformation matrix.
$transfmatrix_key  : mixed
Current key for transformation matrix.
$transfmrk  : mixed
Array used to store positions of graphics transformation blocks inside the page buffer.
$tsa_data  : mixed
Timestamping data.
$tsa_timestamp  : mixed
Boolean flag to enable document timestamping with TSA.
$txtshadow  : mixed
Text shadow data array.
$underline  : mixed
Underlining flag.
$ur  : mixed
Array with additional document-wide usage rights for the document.
$viewer_preferences  : mixed
PDF viewer preferences.
$w  : mixed
Current width of page in user unit.
$wPt  : mixed
Current width of page in points.
$x  : mixed
Current horizontal position in user unit for cell positioning.
$xobjects  : mixed
Array of XObjects.
$xobjid  : mixed
Current XObject ID.
$y  : mixed
Current vertical position in user unit for cell positioning.
$ZoomMode  : mixed
Zoom display mode.

Methods

__construct()  : mixed
This is the class constructor.
__destruct()  : mixed
Default destructor.
_destroy()  : mixed
Unset all class variables except the following critical variables.
_putshaders()  : mixed
Output gradient shaders.
AcceptPageBreak()  : bool
Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value.
addEmptySignatureAppearance()  : mixed
Add an empty digital signature appearance (a cliccable rectangle area to get signature properties)
AddFont()  : array<string|int, mixed>|false
Imports a TrueType, Type1, core, or CID0 font and makes it available.
addHtmlLink()  : int
Output anchor link.
addHTMLTOC()  : mixed
Output a Table Of Content Index (TOC) using HTML templates.
addJavascriptObject()  : int
Adds a javascript object and return object ID
AddLink()  : mixed
Creates a new internal link and returns its identifier. An internal link is a clickable area which directs to another place within the document.<br /> The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink().
AddPage()  : mixed
Adds a new page to the document. If a page is already present, the Footer() method is called first to output the footer (if enabled). Then the page is added, the current position set to the top-left corner according to the left and top margins (or top-right if in RTL mode), and Header() is called to display the header (if enabled).
addPageRegion()  : mixed
Add a single no-write region on selected page.
AddSpotColor()  : mixed
Defines a new spot color.
addTOC()  : mixed
Output a Table of Content Index (TOC).
addTOCPage()  : mixed
Adds a new TOC (Table Of Content) page to the document.
Annotation()  : mixed
Puts a markup annotation on a rectangular area of the page.
Arrow()  : mixed
Draws a grahic arrow.
Bookmark()  : mixed
Adds a bookmark.
Button()  : mixed
Creates a button field
Cell()  : mixed
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.<br /> If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.
CheckBox()  : mixed
Creates a CheckBox field
Circle()  : mixed
Draws a circle.
Close()  : mixed
Terminates the PDF document.
colorRegistrationBar()  : mixed
Paints color transition registration bars
ComboBox()  : mixed
Creates a Combo-box field
commitTransaction()  : mixed
Delete the copy of the current TCPDF object used for undo operation.
CoonsPatchMesh()  : mixed
Paints a coons patch mesh.
copyPage()  : bool
Clone the specified page to a new page.
cropMark()  : mixed
Paints crop marks.
Curve()  : mixed
Draws a Bezier curve.
deletePage()  : bool
Remove the specified page.
Ellipse()  : mixed
Draws an ellipse.
endLayer()  : mixed
End the current PDF layer.
endPage()  : mixed
Terminate the current page
endTemplate()  : string|false
End the current XObject Template started with startTemplate() and restore the previous graphic state.
endTOCPage()  : mixed
Terminate the current TOC (Table Of Content) page
Error()  : mixed
Throw an exception or print an error message and die if the K_TCPDF_PARSER_THROW_EXCEPTION_ERROR constant is set to true.
fixHTMLCode()  : string
Cleanup HTML code (requires HTML Tidy library).
Footer()  : mixed
This method is used to render the page footer.
getAbsFontMeasure()  : float
Convert a relative font measure into absolute value.
GetAbsX()  : float
Returns the absolute X value of current position.
getAliasNbPages()  : string
Returns the string alias used for the total number of pages.
getAliasNumPage()  : string
Returns the string alias used for the page number.
getAliasRightShift()  : string
Returns the string alias used right align page numbers.
getAllSpotColors()  : array<string|int, mixed>
Returns the array of spot colors.
getAlpha()  : array<string, bool|string>
Get the alpha mode array (CA, ca, BM, AIS).
GetArrStringWidth()  : array<string|int, float>|float
Returns the string length of an array of chars in user unit or an array of characters widths. A font must be selected.<br>
getAutoPageBreak()  : bool
Return the auto-page-break mode (true or false).
getBarcode()  : string
Get current barcode.
getBreakMargin()  : int|float
Returns the page break margin.
getCellHeight()  : float
Return the cell height
getCellHeightRatio()  : float
return the height of cell repect font height.
getCellMargins()  : array<string|int, mixed>
Get the internal Cell margin array.
getCellPaddings()  : array<string|int, mixed>
Get the internal Cell padding array.
getCharBBox()  : false|array<string|int, mixed>
Returns the glyph bounding box of the specified character in the current font in user units.
GetCharWidth()  : float
Returns the length of the char in user unit for the current font considering current stretching and spacing (tracking).
getColumn()  : int
Return the current column number
getCSSBorderMargin()  : array<string|int, mixed>
Get the border-spacing from CSS attribute.
getCSSMargin()  : array<string|int, mixed>
Get the internal Cell margin from CSS attribute.
getCSSPadding()  : array<string|int, mixed>
Get the internal Cell padding from CSS attribute.
getDestination()  : array<string|int, mixed>
Return the Named Destination array.
getDocCreationTimestamp()  : int
Returns document creation timestamp in seconds.
getDocModificationTimestamp()  : int
Returns document modification timestamp in seconds.
getFontAscent()  : int
Return the font ascent value.
getFontBBox()  : array<string|int, mixed>
Returns the bounding box of the current font in user units.
getFontDescent()  : int
Return the font descent value
getFontFamily()  : string
Returns the current font family name.
getFontFamilyName()  : string
Return normalized font name
getFontSize()  : float
Returns the current font size.
getFontSizePt()  : int
Returns the current font size in points unit.
getFontSpacing()  : int
Get the amount to increase or decrease the space between characters in a text.
getFontStretching()  : float
Get the percentage of character stretching.
getFontStyle()  : string
Returns the current font style.
getFontSubsetting()  : bool
Return the default option for font subsetting.
getFooterFont()  : array<int, string|float|null>
Get Footer font.
getFooterMargin()  : float
Returns footer margin in user units.
getFormDefaultProp()  : array<string|int, mixed>
Return the default properties for form fields.
getGroupPageNo()  : int
Return the current page in the group.
getGroupPageNoFormatted()  : mixed
Returns the current group page number formatted as a string.
getHeaderData()  : array<string, mixed>
Returns header data: <ul><li>$ret['logo'] = logo image</li><li>$ret['logo_width'] = width of the image logo in user units</li><li>$ret['title'] = header title</li><li>$ret['string'] = header description string</li></ul>
getHeaderFont()  : array<int, string|float|null>
Get header font.
getHeaderMargin()  : float
Returns header margin in user units.
getHTMLFontUnits()  : float
Convert HTML string containing font size value to points
getHTMLUnitToUnits()  : float
Convert HTML string containing value and unit of measure to user's units or points.
getImageRBX()  : float
Return the right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image
getImageRBY()  : float
Return the right-bottom (or left-bottom for RTL) corner Y coordinate of last inserted image
getImageScale()  : float
Returns the adjusting factor to convert pixels to user units.
getLastH()  : float
Get the last cell height.
GetLineWidth()  : int
Returns the current the line width.
getMargins()  : array<string|int, mixed>
Returns an array containing current margins: <ul> <li>$ret['left'] = left margin</li> <li>$ret['right'] = right margin</li> <li>$ret['top'] = top margin</li> <li>$ret['bottom'] = bottom margin</li> <li>$ret['header'] = header margin</li> <li>$ret['footer'] = footer margin</li> <li>$ret['cell'] = cell padding array</li> <li>$ret['padding_left'] = cell left padding</li> <li>$ret['padding_top'] = cell top padding</li> <li>$ret['padding_right'] = cell right padding</li> <li>$ret['padding_bottom'] = cell bottom padding</li> </ul>
getNumberOfColumns()  : int
Return the current number of columns.
GetNumChars()  : int
Returns the numbero of characters in a string.
getNumLines()  : float
This method return the estimated number of lines for print a simple text string using Multicell() method.
getNumPages()  : int
Get the total number of insered pages.
getOriginalMargins()  : array<string|int, mixed>
Returns an array containing original margins: <ul> <li>$ret['left'] = left margin</li> <li>$ret['right'] = right margin</li> </ul>
getOverprint()  : array<string, bool|int>
Get the overprint mode array (OP, op, OPM).
getPage()  : int
Get current document page number.
getPageDimensions()  : array<string|int, mixed>
Returns an array of page dimensions: <ul><li>$this->pagedim[$this->page]['w'] = page width in points</li><li>$this->pagedim[$this->page]['h'] = height in points</li><li>$this->pagedim[$this->page]['wk'] = page width in user units</li><li>$this->pagedim[$this->page]['hk'] = page height in user units</li><li>$this->pagedim[$this->page]['tm'] = top margin</li><li>$this->pagedim[$this->page]['bm'] = bottom margin</li><li>$this->pagedim[$this->page]['lm'] = left margin</li><li>$this->pagedim[$this->page]['rm'] = right margin</li><li>$this->pagedim[$this->page]['pb'] = auto page break</li><li>$this->pagedim[$this->page]['or'] = page orientation</li><li>$this->pagedim[$this->page]['olm'] = original left margin</li><li>$this->pagedim[$this->page]['orm'] = original right margin</li><li>$this->pagedim[$this->page]['Rotate'] = The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90.</li><li>$this->pagedim[$this->page]['PZ'] = The page's preferred zoom (magnification) factor.</li><li>$this->pagedim[$this->page]['trans'] : the style and duration of the visual transition to use when moving from another page to the given page during a presentation<ul><li>$this->pagedim[$this->page]['trans']['Dur'] = The page's display duration (also called its advance timing): the maximum length of time, in seconds, that the page shall be displayed during presentations before the viewer application shall automatically advance to the next page.</li><li>$this->pagedim[$this->page]['trans']['S'] = transition style : Split, Blinds, Box, Wipe, Dissolve, Glitter, R, Fly, Push, Cover, Uncover, Fade</li><li>$this->pagedim[$this->page]['trans']['D'] = The duration of the transition effect, in seconds.</li><li>$this->pagedim[$this->page]['trans']['Dm'] = (Split and Blinds transition styles only) The dimension in which the specified transition effect shall occur: H = Horizontal, V = Vertical. Default value: H.</li><li>$this->pagedim[$this->page]['trans']['M'] = (Split, Box and Fly transition styles only) The direction of motion for the specified transition effect: I = Inward from the edges of the page, O = Outward from the center of the pageDefault value: I.</li><li>$this->pagedim[$this->page]['trans']['Di'] = (Wipe, Glitter, Fly, Cover, Uncover and Push transition styles only) The direction in which the specified transition effect shall moves, expressed in degrees counterclockwise starting from a left-to-right direction. If the value is a number, it shall be one of: 0 = Left to right, 90 = Bottom to top (Wipe only), 180 = Right to left (Wipe only), 270 = Top to bottom, 315 = Top-left to bottom-right (Glitter only). If the value is a name, it shall be None, which is relevant only for the Fly transition when the value of SS is not 1.0. Default value: 0.</li><li>$this->pagedim[$this->page]['trans']['SS'] = (Fly transition style only) The starting or ending scale at which the changes shall be drawn. If M specifies an inward transition, the scale of the changes drawn shall progress from SS to 1.0 over the course of the transition. If M specifies an outward transition, the scale of the changes drawn shall progress from 1.0 to SS over the course of the transition. Default: 1.0. </li><li>$this->pagedim[$this->page]['trans']['B'] = (Fly transition style only) If true, the area that shall be flown in is rectangular and opaque. Default: false.</li></ul></li><li>$this->pagedim[$this->page]['MediaBox'] : the boundaries of the physical medium on which the page shall be displayed or printed<ul><li>$this->pagedim[$this->page]['MediaBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['CropBox'] : the visible region of default user space<ul><li>$this->pagedim[$this->page]['CropBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['BleedBox'] : the region to which the contents of the page shall be clipped when output in a production environment<ul><li>$this->pagedim[$this->page]['BleedBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['TrimBox'] : the intended dimensions of the finished page after trimming<ul><li>$this->pagedim[$this->page]['TrimBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['ArtBox'] : the extent of the page's meaningful content<ul><li>$this->pagedim[$this->page]['ArtBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['ury'] = upper-right y coordinate in points</li></ul></li></ul>
getPageGroupAlias()  : string
Return the alias for the total number of pages in the current page group.
getPageHeight()  : int|float
Returns the page height in units.
getPageNumGroupAlias()  : string
Return the alias for the page number on the current page group.
getPageRegions()  : array<string|int, mixed>
Return an array of no-write page regions
getPageWidth()  : int|float
Returns the page width in units.
getPDFData()  : mixed
Returns the PDF data.
getRawCharWidth()  : float
Returns the length of the char in user unit for the current font.
getRTL()  : bool
Return the RTL status
getScaleFactor()  : int
Returns the scale factor (number of points in user unit).
getStringHeight()  : float
This method return the estimated height needed for printing a simple text string using the Multicell() method.
GetStringWidth()  : array<string|int, float>|float
Returns the length of a string in user unit. A font must be selected.<br>
getTextShadow()  : array<string|int, mixed>
Return the text shadow parameters array.
GetX()  : float
Returns the relative X value of current position.
GetY()  : float
Returns the ordinate of the current position.
Gradient()  : mixed
Output gradient.
Header()  : mixed
This method is used to render the page header.
hyphenateText()  : string
Returns text with soft hyphens.
Image()  : mixed|false
Puts an image in the page.
ImageEps()  : mixed
Embed vector-based Adobe Illustrator (AI) or AI-compatible EPS files.
ImageSVG()  : mixed
Embedd a Scalable Vector Graphics (SVG) image.
importPDF()  : void
Import an existing PDF document
IncludeJS()  : mixed
Adds a javascript
isCharDefined()  : bool
Return true in the character is present in the specified font.
isRTLTextDir()  : bool
Return the current temporary RTL status
isUnicodeFont()  : bool
Return true if the current font is unicode type.
lastPage()  : mixed
Reset pointer to the last document page.
Line()  : mixed
Draws a line between two points.
LinearGradient()  : mixed
Paints a linear colour gradient.
Link()  : mixed
Puts a link on a rectangular area of the page.
ListBox()  : mixed
Creates a List-box field
Ln()  : mixed
Performs a line break.
MirrorH()  : mixed
Horizontal Mirroring.
MirrorL()  : mixed
Reflection against a straight line through point (x, y) with the gradient angle (angle).
MirrorP()  : mixed
Point reflection mirroring.
MirrorV()  : mixed
Verical Mirroring.
movePage()  : bool
Move a page to a previous position.
MultiCell()  : int
This method allows printing text with line breaks.
Open()  : mixed
This method begins the generation of the PDF document.
Output()  : string
Send the document to a given destination: string, local file or browser.
PageNo()  : int
Returns the current page number.
PageNoFormatted()  : mixed
Returns the current page number formatted as a string.
PieSector()  : mixed
Draw the sector of a circle.
PieSectorXY()  : mixed
Draw the sector of an ellipse.
pixelsToUnits()  : float
Converts pixels to User's Units.
Polycurve()  : mixed
Draws a poly-Bezier curve.
Polygon()  : mixed
Draws a polygon.
PolyLine()  : mixed
Draws a polygonal line
printTemplate()  : mixed
Print an XObject Template.
RadialGradient()  : mixed
Paints a radial colour gradient.
RadioButton()  : mixed
Creates a RadioButton field.
Rect()  : mixed
Draws a rectangle.
registrationMark()  : mixed
Paints a registration mark
registrationMarkCMYK()  : mixed
Paints a CMYK registration mark
RegularPolygon()  : mixed
Draws a regular polygon.
removePageRegion()  : mixed
Remove a single no-write region.
replaceMissingChars()  : string
Replace missing font characters on selected font with specified substitutions.
resetColumns()  : mixed
Remove columns and reset page margins.
resetHeaderTemplate()  : mixed
Reset the xobject template used by Header() method.
resetLastH()  : mixed
Reset the last cell height.
rollbackTransaction()  : TCPDF
This method allows to undo the latest transaction by returning the latest saved TCPDF object with startTransaction().
Rotate()  : mixed
Rotate object.
RoundedRect()  : mixed
Draws a rounded rectangle.
RoundedRectXY()  : mixed
Draws a rounded rectangle.
Scale()  : mixed
Vertical and horizontal non-proportional Scaling.
ScaleX()  : mixed
Horizontal Scaling.
ScaleXY()  : mixed
Vertical and horizontal proportional Scaling.
ScaleY()  : mixed
Vertical Scaling.
selectColumn()  : mixed
Set position at a given column
serializeTCPDFtag()  : string
Serialize data to be used with TCPDF tag in HTML code.
setAbsX()  : mixed
Set the absolute X coordinate of the current pointer.
setAbsXY()  : mixed
Set the absolute X and Y coordinates of the current pointer.
setAbsY()  : mixed
Set the absolute Y coordinate of the current pointer.
setAllowLocalFiles()  : mixed
Whether to allow local file path in image html tags, when prefixed with file://
setAlpha()  : mixed
Set alpha for stroking (CA) and non-stroking (ca) operations.
setAuthor()  : mixed
Defines the author of the document.
setAutoPageBreak()  : mixed
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.
setBarcode()  : mixed
Set document barcode.
setBooklet()  : mixed
Set the booklet mode for double-sided pages.
setBookmark()  : mixed
Adds a bookmark - alias for Bookmark().
setCellHeightRatio()  : mixed
Set the height of the cell (line height) respect the font height.
setCellMargins()  : mixed
Set the internal Cell margins.
setCellPadding()  : mixed
Set the same internal Cell padding for top, right, bottom, left-
setCellPaddings()  : mixed
Set the internal Cell paddings.
setColor()  : string
Defines the color used by the specified type ('draw', 'fill', 'text').
setColorArray()  : string
Set the color array for the specified type ('draw', 'fill', 'text').
setColumnsArray()  : mixed
Set columns array.
setCompression()  : mixed
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.
setCreator()  : mixed
Defines the creator of the document. This is typically the name of the application that generates the PDF.
setDefaultMonospacedFont()  : mixed
Defines the default monospaced font.
setDefaultTableColumns()  : mixed
Set the default number of columns in a row for HTML tables.
setDestination()  : string|false
Add a Named Destination.
setDisplayMode()  : mixed
Defines the way the document is to be displayed by the viewer.
setDocCreationTimestamp()  : mixed
Set the document creation timestamp
setDocInfoUnicode()  : mixed
Turn on/off Unicode mode for document information dictionary (meta tags).
setDocModificationTimestamp()  : mixed
Set the document modification timestamp
setDrawColor()  : string
Defines the color used for all drawing operations (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.
setDrawColorArray()  : string
Defines the color used for all drawing operations (lines, rectangles and cell borders).
setDrawSpotColor()  : mixed
Defines the spot color used for all drawing operations (lines, rectangles and cell borders).
setEqualColumns()  : mixed
Set multiple columns of the same size
setExtraXMP()  : mixed
Set additional XMP data to be added on the default XMP data just before the end of "x:xmpmeta" tag.
setExtraXMPRDF()  : mixed
Set additional XMP data to be added on the default XMP data just before the end of "rdf:RDF" tag.
setFillColor()  : string
Defines the color used for all filling operations (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.
setFillColorArray()  : mixed
Defines the color used for all filling operations (filled rectangles and cell backgrounds).
setFillSpotColor()  : mixed
Defines the spot color used for all filling operations (filled rectangles and cell backgrounds).
setFont()  : mixed
Sets the font used to print character strings.
setFontSize()  : mixed
Defines the size of the current font.
setFontSpacing()  : mixed
Set the amount to increase or decrease the space between characters in a text.
setFontStretching()  : mixed
Set the percentage of character stretching.
setFontSubsetting()  : mixed
Enable or disable default option for font subsetting.
setFooterData()  : mixed
Set footer data.
setFooterFont()  : mixed
Set footer font.
setFooterMargin()  : mixed
Set footer margin.
setFormDefaultProp()  : mixed
Set default properties for form fields.
setHeaderData()  : mixed
Set header data.
setHeaderFont()  : mixed
Set header font.
setHeaderMargin()  : mixed
Set header margin.
setHeaderTemplateAutoreset()  : mixed
Set a flag to automatically reset the xobject template used by Header() method at each page.
setHtmlLinksStyle()  : mixed
Set the color and font style for HTML links.
setHtmlVSpace()  : mixed
Set the vertical spaces for HTML tags.
setImageScale()  : mixed
Set the adjusting factor to convert pixels to user units.
setJPEGQuality()  : mixed
Set the default JPEG compression quality (1-100)
setKeywords()  : mixed
Associates keywords with the document, generally in the form 'keyword1 keyword2 ...'.
setLanguageArray()  : mixed
Set language array.
setLastH()  : mixed
Set the last cell height.
setLeftMargin()  : mixed
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.
setLineStyle()  : string
Set line style.
setLineWidth()  : mixed
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.
setLink()  : mixed
Defines the page and position a link points to.
setListIndentWidth()  : mixed
Set custom width for list indentation.
setLIsymbol()  : mixed
Set the default bullet to be used as LI bullet symbol
setMargins()  : mixed
Defines the left, top and right margins.
setOpenCell()  : mixed
Set the top/bottom cell sides to be open or closed when the cell cross the page.
setOverprint()  : mixed
Set overprint mode for stroking (OP) and non-stroking (op) painting operations.
setPage()  : mixed
Move pointer at the specified document page and update page dimensions.
setPageMark()  : mixed
Set start-writing mark on current page stream used to put borders and fills.
setPageOrientation()  : mixed
Set page orientation.
setPageRegions()  : mixed
Set no-write regions on page.
setPageUnit()  : mixed
Set the units of measure for the document.
setPDFVersion()  : mixed
Set the PDF version (check PDF reference for valid values).
setPrintFooter()  : mixed
Set a flag to print page footer.
setPrintHeader()  : mixed
Set a flag to print page header.
setProtection()  : mixed
Set document protection Remark: the protection against modification is for people who have the full Acrobat product.
setRasterizeVectorImages()  : mixed
Enable/disable rasterization of vector images using ImageMagick library.
setRightMargin()  : mixed
Defines the right margin. The method can be called before creating the first page.
setRTL()  : mixed
Enable or disable Right-To-Left language mode
setSignature()  : mixed
Enable document signature (requires the OpenSSL Library).
setSignatureAppearance()  : mixed
Set the digital signature appearance (a cliccable rectangle area to get signature properties)
setSpacesRE()  : mixed
Set regular expression to detect withespaces or word separators.
setSpotColor()  : string
Set the spot color for the specified type ('draw', 'fill', 'text').
setSRGBmode()  : mixed
Set flag to force sRGB_IEC61966-2.1 black scaled ICC color profile for the whole document.
setStartingPageNumber()  : mixed
Set the starting page number.
setSubject()  : mixed
Defines the subject of the document.
setTempRTL()  : mixed
Force temporary RTL language direction
setTextColor()  : string
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.
setTextColorArray()  : mixed
Defines the color used for text. It can be expressed in RGB components or gray scale.
setTextRenderingMode()  : mixed
Set Text rendering mode.
setTextShadow()  : mixed
Set parameters for drop shadow effect for text.
setTextSpotColor()  : mixed
Defines the spot color used for text.
setTimeStamp()  : mixed
Enable document timestamping (requires the OpenSSL Library).
setTitle()  : mixed
Defines the title of the document.
setTopMargin()  : mixed
Defines the top margin. The method can be called before creating the first page.
setUserRights()  : mixed
Set User's Rights for PDF Reader WARNING: This is experimental and currently do not work.
setViewerPreferences()  : mixed
Set the viewer preferences dictionary controlling the way the document is to be presented on the screen or in print.
setVisibility()  : mixed
Set the visibility of the successive elements.
setX()  : mixed
Defines the abscissa of the current position.
setXY()  : mixed
Defines the abscissa and ordinate of the current position.
setY()  : mixed
Moves the current abscissa back to the left margin and sets the ordinate.
Skew()  : mixed
Skew.
SkewX()  : mixed
Skew horizontally.
SkewY()  : mixed
Skew vertically.
StarPolygon()  : mixed
Draws a star polygon
startLayer()  : mixed
Start a new pdf layer.
startPage()  : mixed
Starts a new page to the document. The page must be closed using the endPage() function.
startPageGroup()  : mixed
Create a new page group.
startTemplate()  : string|false
Start a new XObject Template.
startTransaction()  : mixed
Stores a copy of the current TCPDF object used for undo operation.
StartTransform()  : mixed
Starts a 2D tranformation saving current graphic state.
StopTransform()  : mixed
Stops a 2D tranformation restoring previous graphic state.
stringLeftTrim()  : string
Left trim the input string
stringRightTrim()  : string
Right trim the input string
stringTrim()  : string
Trim the input string
Text()  : mixed
Prints a text cell at the specified position.
TextField()  : mixed
Creates a text field
Translate()  : mixed
Translate graphic object horizontally and vertically.
TranslateX()  : mixed
Translate graphic object horizontally.
TranslateY()  : mixed
Translate graphic object vertically.
unhtmlentities()  : string
Reverse function for htmlentities.
Write()  : mixed
This method prints text from the current position.<br />
write1DBarcode()  : mixed
Print a Linear Barcode.
write2DBarcode()  : mixed
Print 2D Barcode.
writeHTML()  : mixed
Allows to preserve some HTML formatting (limited support).<br /> IMPORTANT: The HTML must be well formatted - try to clean-up it using an application like HTML-Tidy before submitting.
writeHTMLCell()  : mixed
Prints a cell (rectangular area) with optional borders, background color and html text string.
_addfield()  : mixed
Adds a javascript form field.
_beginpage()  : mixed
Initialize a new page.
_datastring()  : string
Format a data string for meta information
_datestring()  : string
Returns a formatted date for meta information
_dochecks()  : mixed
Check for locale-related bug
_dolinethrough()  : mixed
Line through text.
_dolinethroughw()  : mixed
Line through for rectangular text area.
_dooverline()  : mixed
Overline text.
_dooverlinew()  : mixed
Overline for rectangular text area.
_dounderline()  : mixed
Underline text.
_dounderlinew()  : mixed
Underline for rectangular text area.
_encrypt_data()  : string
Encrypt the input string.
_enddoc()  : mixed
Output end of document (EOF).
_endpage()  : mixed
Mark end of page.
_fixAES256Password()  : string
Convert password for AES-256 encryption mode
_generateencryptionkey()  : mixed
Compute encryption key
_getannotsrefs()  : string
Get references to page annotations.
_getobj()  : string
Return the starting object string for the selected object ID.
_getrawstream()  : mixed
get raw output stream.
_getxobjectdict()  : string
Return XObjects Dictionary.
_newobj()  : int
Begin a new object and return the object number.
_objectkey()  : int
Compute encryption key depending on object number where the encrypted data is stored.
_OEvalue()  : string
Compute OE value (used for encryption)
_out()  : mixed
Output a string to the document.
_outCurve()  : mixed
Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x2, y2) as the Bezier control points.
_outCurveV()  : mixed
Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using the current point and (x2, y2) as the Bezier control points.
_outCurveY()  : mixed
Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x3, y3) as the Bezier control points.
_outellipticalarc()  : array<string|int, mixed>
Append an elliptical arc to the current path.
_outLine()  : mixed
Append a straight line segment from the current point to the point (x, y).
_outPoint()  : mixed
Begin a new subpath by moving the current point to coordinates (x, y), omitting any connecting line segment.
_outRect()  : mixed
Append a rectangle to the current path as a complete subpath, with lower-left corner (x, y) and dimensions widthand height in user space.
_outRestoreGraphicsState()  : mixed
Outputs the "restore graphics state" operator 'Q'
_outSaveGraphicsState()  : mixed
Outputs the "save graphics state" operator 'q'
_Ovalue()  : string
Compute O value (used for encryption)
_putannotsobjs()  : mixed
Output annotations objects for all pages.
_putAPXObject()  : int
Put appearance streams XObject used to define annotation's appearance states.
_putbookmarks()  : mixed
Create a bookmark PDF string.
_putcatalog()  : int
Output Catalog.
_putcidfont0()  : mixed
Output CID-0 fonts.
_putdests()  : mixed
Insert Named Destinations.
_putEmbeddedFiles()  : mixed
Embedd the attached files.
_putencryption()  : mixed
Put encryption on PDF document.
_putextgstates()  : mixed
Put extgstates for object transparency
_putfonts()  : mixed
Output fonts.
_putheader()  : mixed
Output PDF File Header (7.5.2).
_putimages()  : mixed
Output images.
_putinfo()  : int
Adds some Metadata information (Document Information Dictionary) (see Chapter 14.3.3 Document Information Dictionary of PDF32000_2008.pdf Reference)
_putjavascript()  : mixed
Create a javascript PDF string.
_putocg()  : mixed
Put pdf layers.
_putpages()  : mixed
Output pages (and replace page number aliases).
_putresourcedict()  : mixed
Output Resources Dictionary.
_putresources()  : mixed
Output Resources.
_putsignature()  : mixed
Add certification signature (DocMDP or UR3) You can set only one signature type
_putspotcolors()  : mixed
Output Spot Colors Resources.
_puttruetypeunicode()  : mixed
Adds unicode fonts.<br> Based on PDF Reference 1.3 (section 5)
_putviewerpreferences()  : string
Output viewer preferences.
_putXMP()  : int
Put XMP data object and return ID.
_putxobjects()  : mixed
Output Form XObjects Templates.
_textstring()  : string
Format a text string for meta information
_UEvalue()  : string
Compute UE value (used for encryption)
_Uvalue()  : string
Compute U value (used for encryption)
addExtGState()  : int|void
Add transparency parameters to the current extgstate
addHTMLVertSpace()  : mixed
Add vertical spaces if needed.
adjustCellPadding()  : void|array<string|int, mixed>
Adjust the internal Cell padding array to take account of the line width.
allowedTCPDFtag()  : bool
Check if a TCPDF tag is allowed
applyTSA()  : string
NOT YET IMPLEMENTED Request TSA for a timestamp
checkPageBreak()  : bool
Add page if needed.
checkPageRegions()  : array<string|int, float>
Check page for no-write regions and adapt current coordinates and page margins if necessary.
Clip()  : mixed
Set a rectangular clipping area.
closeHTMLTagHandler()  : array<string|int, mixed>
Process closing tags.
convertSVGtMatrix()  : array<string|int, mixed>
Convert SVG transformation matrix to PDF.
drawHTMLTagBorder()  : mixed
Draw an HTML block border and fill
endSVGElementHandler()  : mixed
Sets the closing SVG element handler function for the XML parser.
fileExists()  : bool
Avoid multiple calls to an external server to see if a file exists
fitBlock()  : array<string|int, mixed>
Set the block dimensions accounting for page breaks and page/column fitting
getAllInternalPageNumberAliases()  : array<string|int, mixed>
Return an array containing all internal page aliases.
getBorderStartPosition()  : array<string|int, mixed>
Return the starting coordinates to draw an html border
getBuffer()  : string
Get buffer content.
getCachedFileContents()  : string
Keeps files in memory, so it doesn't need to downloaded everytime in a loop
getCellBorder()  : string
Returns the code to draw the cell border
getCellCode()  : string
Returns the PDF string code to print 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.<br /> If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.
getCSSBorderDashStyle()  : int
Returns the border dash style from CSS property
getCSSBorderStyle()  : array<string|int, mixed>
Returns the border style array from CSS border properties
getCSSBorderWidth()  : int
Returns the border width from CSS property
getCSSFontSpacing()  : float
Returns the letter-spacing value from CSS value
getCSSFontStretching()  : float
Returns the percentage of font stretching from CSS value
getFontBuffer()  : string|false
Get font buffer content.
getFontsList()  : mixed
Fill the list of available fonts ($this->fontlist).
getGDgamma()  : mixed
Get the GD-corrected PNG gamma value from alpha color
getGraphicVars()  : array<string|int, mixed>
Returns current graphic variables as array.
getHtmlDomArray()  : array<string|int, mixed>
Returns the HTML DOM array.
getImageBuffer()  : string|false
Get image buffer content.
getInternalPageNumberAliases()  : array<string|int, mixed>
Return an array containing variations for the basic page number alias.
getPageBuffer()  : string
Get page buffer content.
getRemainingWidth()  : float
Returns the remaining width between the current position and margins.
getSignatureAppearanceArray()  : array<string|int, mixed>
Get the array that defines the signature appearance (page and rectangle coordinates).
getSpaceString()  : string
Returns the string used to find spaces
hashTCPDFtag()  : string
Calculates the hash value of the given data.
hyphenateWord()  : array<string|int, mixed>
Returns an array of chars containing soft hyphens.
ImagePngAlpha()  : mixed
Extract info from a PNG image with alpha channel using the Imagick or GD library.
inPageBody()  : bool
Check if we are on the page body (excluding page header and footer).
openHTMLTagHandler()  : array<string|int, mixed>
Process opening tags.
putHtmlListBullet()  : mixed
Output an HTML list bullet or ordered item symbol
removeTagNamespace()  : mixed
Return the tag name without the namespace
replaceBuffer()  : mixed
Replace the buffer content
replaceChar()  : int
Replace a char if is defined on the current font.
replaceRightShiftPageNumAliases()  : string
Replace right shift page number aliases with spaces to correct right alignment.
segSVGContentHandler()  : mixed
Sets the character data handler function for the XML parser.
setBuffer()  : mixed
Set buffer content (always append data).
setContentMark()  : mixed
Set start-writing mark on selected page.
setExtGState()  : mixed
Add an extgstate
setFontBuffer()  : mixed
Set font buffer content.
setFontSubBuffer()  : mixed
Set font buffer content.
setFooter()  : mixed
This method is used to render the page footer.
setGraphicVars()  : mixed
Set graphic variables.
setHeader()  : mixed
This method is used to render the page header.
setImageBuffer()  : int
Set image buffer content.
setImageSubBuffer()  : mixed
Set image buffer content for a specified sub-key.
setPageBoxTypes()  : mixed
Set page boxes to be included on page descriptions.
setPageBuffer()  : mixed
Set page buffer content.
setPageFormat()  : mixed
Change the format of the current page
setSVGStyles()  : string
Apply the requested SVG styles (*** TO BE COMPLETED ***)
setTableHeader()  : mixed
This method is used to render the table header on new page (if any).
sortBookmarks()  : mixed
Sort bookmarks for page and key.
startSVGElementHandler()  : mixed
Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***)
SVGPath()  : array<string|int, mixed>
Draws an SVG path
SVGTransform()  : mixed
Apply SVG graphic transformation matrix.
swapMargins()  : mixed
Swap the left and right margins.
Transform()  : mixed
Apply graphic transformations.
unserializeTCPDFtag()  : array<string|int, mixed>
Unserialize data to be used with TCPDF tag in HTML code.

Properties

$allowLocalFiles

Whether to allow local file path in image html tags, when prefixed with file://

protected bool $allowLocalFiles = \false
Tags
protected
since
6.4

(2020-07-23)

$alpha

Alpha mode array.

protected mixed $alpha = array('CA' => 1, 'ca' => 1, 'BM' => '/Normal', 'AIS' => \false)

(Check the "Entries in a Graphics State Parameter Dictionary" on PDF 32000-1:2008).

Tags
protected
since
5.9.152

(2012-03-23)

$annotation_fonts

List of fonts used on form fields (fontname => fontkey).

protected mixed $annotation_fonts = array()
Tags
protected
since
4.8.001

(2009-09-09)

$author

Document author.

protected mixed $author = ''
Tags
protected

$AutoPageBreak

Automatic page breaking.

protected mixed $AutoPageBreak
Tags
protected

$barcode

Barcode to print on page footer (only if set).

protected mixed $barcode = \false
Tags
protected

$bgcolor

Current background color.

protected mixed $bgcolor
Tags
protected

$bMargin

Page break margin.

protected mixed $bMargin
Tags
protected

$booklet

Booklet mode for double-sided pages.

protected mixed $booklet = \false
Tags
protected
since
4.2.000

(2008-10-29)

$bordermrk

Array used to store positions inside the pages buffer (keys are the page numbers).

protected mixed $bordermrk = array()
Tags
protected
since
5.7.000

(2010-08-03)

$buffer

Buffer holding in-memory PDF.

protected mixed $buffer
Tags
protected

$bufferlen

Length of the buffer in bytes.

protected mixed $bufferlen = 0
Tags
protected
since
4.5.000

(2008-12-31)

$cache_file_length

Array used to store the lengths of cache files.

protected mixed $cache_file_length = array()
Tags
protected
since
4.5.029

(2009-03-19)

$cell_height_ratio

Default cell height ratio.

protected float $cell_height_ratio = \K_CELL_HEIGHT_RATIO
Tags
protected
since
3.0.014

(2008-05-23)

$cell_margin

Array of cell margins ('T' => top, 'R' => right, 'B' => bottom, 'L' => left).

protected mixed $cell_margin = array('T' => 0, 'R' => 0, 'B' => 0, 'L' => 0)
Tags
since
5.9.000

(2010-10-04)

protected

$cell_padding

Array of cell internal paddings ('T' => top, 'R' => right, 'B' => bottom, 'L' => left).

protected mixed $cell_padding = array('T' => 0, 'R' => 0, 'B' => 0, 'L' => 0)
Tags
since
5.9.000

(2010-10-03)

protected

$check_page_regions

Boolean value true when page region check is active.

protected mixed $check_page_regions = \true
Tags
protected

$cleaned_ids

protected static array<string|int, mixed> $cleaned_ids = array()

$clMargin

Cell left margin (used by regions).

protected mixed $clMargin
Tags
protected

$cntmrk

Array used to store content positions inside the pages buffer (keys are the page numbers).

protected mixed $cntmrk = array()
Tags
protected
since
4.6.021

(2009-07-20)

$ColorFlag

Indicates whether fill and text colors are different.

protected mixed $ColorFlag
Tags
protected

$column_start_page

Starting page for columns.

protected mixed $column_start_page = 0
Tags
protected
since
4.9.001

(2010-03-28)

$columns

Array of column measures (width, space, starting Y position).

protected mixed $columns = array()
Tags
protected
since
4.9.001

(2010-03-28)

$colxshift

Array of: X difference between table cell x start and starting page margin, cellspacing, cellpadding.

protected mixed $colxshift = array('x' => 0, 's' => array('H' => 0, 'V' => 0), 'p' => array('L' => 0, 'T' => 0, 'R' => 0, 'B' => 0))
Tags
protected
since
5.8.000

(2010-08-11)

$compress

Compression flag.

protected mixed $compress
Tags
protected

$CoreFonts

Array of standard font names.

protected mixed $CoreFonts
Tags
protected

$creator

Document creator.

protected mixed $creator = ''
Tags
protected

$crMargin

Cell right margin (used by regions).

protected mixed $crMargin
Tags
protected

$CurOrientation

Current page orientation (P = Portrait, L = Landscape).

protected mixed $CurOrientation
Tags
protected

$current_column

Current column number.

protected mixed $current_column = 0
Tags
protected
since
4.9.001

(2010-03-28)

$CurrentFont

Current font info.

protected mixed $CurrentFont
Tags
protected

$currpagegroup

Current page group number.

protected mixed $currpagegroup = 0
Tags
protected
since
3.0.000

(2008-03-27)

$custom_xmp

Custom XMP data.

protected mixed $custom_xmp = ''
Tags
protected
since
5.9.128

(2011-10-06)

$custom_xmp_rdf

Custom XMP RDF data.

protected mixed $custom_xmp_rdf = ''
Tags
protected
since
6.3.0

(2019-09-19)

$customlistindent

HTML PARSER: custom indent amount for lists. Negative value means disabled.

protected mixed $customlistindent = -1
Tags
protected
since
4.2.007

(2008-11-12)

$default_form_prop

Deafult Javascript field properties. Possible values are described on official Javascript for Acrobat API reference. Annotation options can be directly specified using the 'aopt' entry.

protected mixed $default_form_prop = array('lineWidth' => 1, 'borderStyle' => 'solid', 'fillColor' => array(255, 255, 255), 'strokeColor' => array(128, 128, 128))
Tags
protected
since
4.8.000

(2009-09-07)

$default_graphic_vars

Array of default graphic settings.

protected mixed $default_graphic_vars = array()
Tags
protected
since
5.5.008

(2010-07-02)

$default_monospaced_font

Default monospace font.

protected mixed $default_monospaced_font = 'courier'
Tags
protected
since
4.5.025

(2009-03-10)

$default_table_columns

Default number of columns for html table.

protected mixed $default_table_columns = 4
Tags
protected

$dests

A dictionary of names and corresponding destinations (Dests key on document Catalog).

protected mixed $dests = array()
Tags
protected
since
5.9.097

(2011-06-23)

$diffs

Array of encoding differences.

protected mixed $diffs = array()
Tags
protected

$doc_creation_timestamp

Document creation date-time

protected mixed $doc_creation_timestamp
Tags
protected
since
5.9.152

(2012-03-22)

$doc_modification_timestamp

Document modification date-time

protected mixed $doc_modification_timestamp
Tags
protected
since
5.9.152

(2012-03-22)

$docinfounicode

If true set the document information dictionary in Unicode.

protected mixed $docinfounicode = \true
Tags
protected

$dpi

DPI (Dot Per Inch) Document Resolution (do not change).

protected mixed $dpi = 72
Tags
protected
since
3.0.000

(2008-03-27)

$DrawColor

Commands for drawing color.

protected mixed $DrawColor
Tags
protected

$efnames

Embedded Files Names

protected mixed $efnames = array()
Tags
protected
since
5.9.204

(2013-01-23)

$embeddedfiles

Array of files to embedd.

protected mixed $embeddedfiles = array()
Tags
protected
since
4.4.000

(2008-12-07)

$empty_signature_appearance

Array of empty digital signature appearances.

protected mixed $empty_signature_appearance = array()
Tags
protected
since
5.9.101

(2011-07-06)

$emptypagemrk

Array used to store page positions to track empty pages (keys are the page numbers).

protected mixed $emptypagemrk = array()
Tags
protected
since
5.8.007

(2010-08-18)

$encoding

Default encoding.

protected mixed $encoding = 'UTF-8'
Tags
protected
since
1.53.0.TC010

$encryptdata

Array containing encryption settings.

protected mixed $encryptdata = array()
Tags
protected
since
5.0.005

(2010-05-11)

$encrypted

IBoolean flag indicating whether document is protected.

protected mixed $encrypted
Tags
protected
since
2.0.000

(2008-01-02)

$endlinex

End position of the latest inserted line.

protected mixed $endlinex = 0
Tags
protected
since
3.2.000

(2008-07-01)

$epsmarker

String used to mark the beginning and end of EPS image blocks.

protected mixed $epsmarker = 'x#!#EPS#!#x'
Tags
protected
since
4.1.000

(2008-10-18)

$extgstates

Array of transparency objects and parameters.

protected mixed $extgstates
Tags
protected
since
3.0.000

(2008-03-27)

$feps

Epsilon value used for float calculations.

protected mixed $feps = 0.005
Tags
protected
since
4.2.000

(2008-10-29)

$fgcolor

Current foreground color.

protected mixed $fgcolor
Tags
protected

$fhPt

Height of page format in points.

protected mixed $fhPt
Tags
protected

$file_id

File ID (used on document trailer).

protected mixed $file_id
Tags
protected
since
5.0.005

(2010-05-12)

$fileContentCache

Cache array for file content

protected array<string|int, mixed> $fileContentCache = array()
Tags
protected
since
6.3.5

(2020-09-28)

$FillColor

Commands for filling color.

protected mixed $FillColor
Tags
protected

$font_obj_ids

Store the font object IDs.

protected mixed $font_obj_ids = array()
Tags
protected
since
4.8.001

(2009-09-09)

$font_spacing

Increases or decreases the space between characters in a text by the specified amount (tracking).

protected mixed $font_spacing = 0
Tags
protected
since
5.9.000

(2010-09-29)

$font_stretching

Percentage of character stretching.

protected mixed $font_stretching = 100
Tags
protected
since
5.9.000

(2010-09-29)

$font_subsetting

Boolean flag: if true enables font subsetting by default.

protected mixed $font_subsetting = \true
Tags
protected
since
5.3.002

(2010-06-07)

$FontAscent

Current font ascent (distance between font top and baseline).

protected mixed $FontAscent
Tags
protected
since
2.8.000

(2007-03-29)

$FontDescent

Current font descent (distance between font bottom and baseline).

protected mixed $FontDescent
Tags
protected
since
2.8.000

(2007-03-29)

$FontFamily

Current font family.

protected mixed $FontFamily
Tags
protected

$FontFiles

Array of font files.

protected mixed $FontFiles = array()
Tags
protected

$fontkeys

Store the font keys.

protected mixed $fontkeys = array()
Tags
protected
since
4.5.000

(2009-01-02)

$fontlist

List of available fonts on filesystem.

protected mixed $fontlist = array()
Tags
protected

$fonts

Array of used fonts.

protected mixed $fonts = array()
Tags
protected

$FontSize

Current font size in user unit.

protected mixed $FontSize
Tags
protected

$FontSizePt

Current font size in points.

protected mixed $FontSizePt
Tags
protected

$FontStyle

Current font style.

protected mixed $FontStyle
Tags
protected

Default font used on page footer.

protected array<int, string|float|null> $footer_font
Tags
protected
phpstan-var

array{0: string, 1: string, 2: float|null}

Color for footer line (RGB array).

protected array<string|int, int> $footer_line_color = array(0, 0, 0)
Tags
since
5.9.174

(2012-07-25)

protected
phpstan-var

array{0: int, 1: int, 2: int}

Minimum distance between footer and bottom page margin.

protected float $footer_margin
Tags
protected

Color for footer text (RGB array).

protected array<string|int, int> $footer_text_color = array(0, 0, 0)
Tags
since
5.9.174

(2012-07-25)

protected
phpstan-var

array{0: int, 1: int, 2: int}

$footerlen

Array used to store footer length of each page.

protected mixed $footerlen = array()
Tags
protected
since
4.0.014

(2008-07-29)

$footerpos

Array used to store footer positions of each page.

protected mixed $footerpos = array()
Tags
protected
since
3.2.000

(2008-07-01)

$force_srgb

If true force sRGB color profile for all document.

protected mixed $force_srgb = \false
Tags
protected
since
5.9.121

(2011-09-28)

$form_action

Current form action (used during XHTML rendering).

protected mixed $form_action = ''
Tags
protected
since
4.8.000

(2009-09-07)

$form_enctype

Current form encryption type (used during XHTML rendering).

protected mixed $form_enctype = 'application/x-www-form-urlencoded'
Tags
protected
since
4.8.000

(2009-09-07)

$form_mode

Current method to submit forms.

protected mixed $form_mode = 'post'
Tags
protected
since
4.8.000

(2009-09-07)

$form_obj_id

List of form annotations IDs.

protected mixed $form_obj_id = array()
Tags
protected
since
4.8.000

(2009-09-07)

$fwPt

Width of page format in points.

protected mixed $fwPt
Tags
protected

$gdgammacache

Cache array for computed GD gamma values.

protected mixed $gdgammacache = array()
Tags
protected
since
5.9.1632

(2012-06-05)

$gradients

Array for storing gradient information.

protected mixed $gradients = array()
Tags
protected
since
3.1.000

(2008-06-09)

$h

Current height of page in user unit.

protected mixed $h
Tags
protected

$hash_key

Internal secret used to encrypt data.

protected mixed $hash_key
Tags
protected
since
6.7.5

(2024-03-21)

$header_font

Default font used on page header.

protected array<int, string|float|null> $header_font
Tags
protected
phpstan-var

array{0: string, 1: string, 2: float|null}

$header_line_color

Color for header line (RGB array).

protected array<string|int, int> $header_line_color = array(0, 0, 0)
Tags
since
5.9.174

(2012-07-25)

protected
phpstan-var

array{0: int, 1: int, 2: int}

Header image logo.

protected mixed $header_logo = ''
Tags
protected

$header_logo_width

Width of header image logo in user units.

protected mixed $header_logo_width = 30
Tags
protected

$header_margin

Minimum distance between header and top page margin.

protected float $header_margin
Tags
protected

$header_string

String to print on page header after title.

protected mixed $header_string = ''
Tags
protected

$header_text_color

Color for header text (RGB array).

protected array<string|int, int> $header_text_color = array(0, 0, 0)
Tags
since
5.9.174

(2012-07-25)

protected
phpstan-var

array{0: int, 1: int, 2: int}

$header_title

Title to be printed on default page header.

protected mixed $header_title = ''
Tags
protected

$header_xobj_autoreset

If true reset the Header Xobject template at each page

protected mixed $header_xobj_autoreset = \false
Tags
protected

$header_xobjid

ID of the stored default header template (-1 = not set).

protected mixed $header_xobjid = \false
Tags
protected

$hPt

Current height of page in points.

protected mixed $hPt
Tags
protected

$HREF

HTML PARSER: array to store current link and rendering styles.

protected mixed $HREF = array()
Tags
protected

$htmlLinkColorArray

Default color for html links.

protected mixed $htmlLinkColorArray = array(0, 0, 255)
Tags
protected
since
4.4.003

(2008-12-09)

$htmlLinkFontStyle

Default font style to add to html links.

protected mixed $htmlLinkFontStyle = 'U'
Tags
protected
since
4.4.003

(2008-12-09)

$htmlvspace

Count the latest inserted vertical spaces on HTML.

protected mixed $htmlvspace = 0
Tags
protected
since
4.0.021

(2008-08-24)

$imagekeys

Store the image keys.

protected mixed $imagekeys = array()
Tags
protected
since
4.5.000

(2008-12-31)

$images

Array of used images.

protected mixed $images = array()
Tags
protected

$img_rb_x

The right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image.

protected mixed $img_rb_x
Tags
since
2002-07-31
author

Nicola Asuni

protected

$img_rb_y

The right-bottom corner Y coordinate of last inserted image.

protected mixed $img_rb_y
Tags
since
2002-07-31
author

Nicola Asuni

protected

$imgscale

Adjusting factor to convert pixels to user units.

protected mixed $imgscale = 1
Tags
since
2004-06-14
author

Nicola Asuni

protected

$InFooter

Flag set when processing page footer.

protected mixed $InFooter = \false
Tags
protected

$InHeader

Flag set when processing page header.

protected mixed $InHeader = \false
Tags
protected

$inthead

True when we are printing the thead section on a new page.

protected mixed $inthead = \false
Tags
protected
since
4.8.027

(2010-01-25)

$intmrk

Array used to store positions inside the pages buffer (keys are the page numbers).

protected mixed $intmrk = array()
Tags
protected
since
3.2.000

(2008-06-26)

$inxobj

Boolean value true when we are inside an XObject.

protected mixed $inxobj = \false
Tags
protected
since
5.8.017

(2010-08-24)

$isunicode

Boolean flag set to true when the input text is unicode (require unicode fonts).

protected mixed $isunicode = \false
Tags
since
2005-01-02
author

Nicola Asuni

protected

$javascript

Javascript code.

protected mixed $javascript = ''
Tags
protected
since
2.1.002

(2008-02-12)

$jpeg_quality

Set the default JPEG compression quality (1-100).

protected mixed $jpeg_quality
Tags
protected
since
3.0.000

(2008-03-27)

$js_objects

Javascript objects array.

protected mixed $js_objects = array()
Tags
protected
since
4.8.000

(2009-09-07)

$k

Scale factor (number of points in user unit).

protected mixed $k
Tags
protected

$keywords

Document keywords.

protected mixed $keywords = ''
Tags
protected

$l

Language templates.

protected mixed $l
Tags
protected

$last_enc_key

Last RC4 key encrypted (cached for optimisation).

protected mixed $last_enc_key
Tags
protected
since
2.0.000

(2008-01-02)

$last_enc_key_c

Last RC4 computed key.

protected mixed $last_enc_key_c
Tags
protected
since
2.0.000

(2008-01-02)

$lasth

Height of last cell printed.

protected mixed $lasth
Tags
protected

$LayoutMode

Layout display mode.

protected mixed $LayoutMode
Tags
protected

$linestyleCap

PDF string for CAP value of the last line.

protected mixed $linestyleCap = '0 J'
Tags
protected
since
4.0.006

(2008-07-16)

$linestyleDash

PDF string for dash value of the last line.

protected mixed $linestyleDash = '[] 0 d'
Tags
protected
since
4.0.006

(2008-07-16)

$linestyleJoin

PDF string for join value of the last line.

protected mixed $linestyleJoin = '0 j'
Tags
protected
since
4.0.006

(2008-07-16)

$linestyleWidth

PDF string for width value of the last line.

protected mixed $linestyleWidth = ''
Tags
protected
since
4.0.006

(2008-07-16)

$linethrough

line through state

protected mixed $linethrough
Tags
protected
since
2.8.000

(2008-03-19)

$LineWidth

Line width in user unit.

protected mixed $LineWidth
Tags
protected

Array of internal links.

protected mixed $links = array()
Tags
protected

$lispacer

Spacer string for LI tags.

protected mixed $lispacer = ''
Tags
protected

$listcount

HTML PARSER: array count list items on nested lists.

protected mixed $listcount = array()
Tags
protected

$listindent

HTML PARSER: indent amount for lists.

protected mixed $listindent = 0
Tags
protected

$listindentlevel

HTML PARSER: current list indententation level.

protected mixed $listindentlevel = 0
Tags
protected

$listnum

HTML PARSER: current list nesting level.

protected mixed $listnum = 0
Tags
protected

$listordered

HTML PARSER: array of boolean values, true in case of ordered list (OL), false otherwise.

protected mixed $listordered = array()
Tags
protected

$lisymbol

Symbol used for HTML unordered list items.

protected mixed $lisymbol = ''
Tags
protected
since
4.0.028

(2008-09-26)

$lMargin

Left margin.

protected mixed $lMargin
Tags
protected

$maxselcol

Maximum page and column selected.

protected mixed $maxselcol = array('page' => 0, 'column' => 0)
Tags
protected
since
5.8.000

(2010-08-11)

$n

Current object number.

protected mixed $n
Tags
protected

$n_dests

Object ID for Named Destinations

protected mixed $n_dests
Tags
protected
since
5.9.097

(2011-06-23)

$n_js

Javascript counter.

protected mixed $n_js
Tags
protected
since
2.1.002

(2008-02-12)

$newline

Boolean flag to indicate if a new line is created.

protected mixed $newline = \true
Tags
protected
since
3.2.000

(2008-07-01)

$newpagegroup

Array of page numbers were a new page group was started (the page numbers are the keys of the array).

protected mixed $newpagegroup = array()
Tags
protected
since
3.0.000

(2008-03-27)

$num_columns

Number of colums.

protected mixed $num_columns = 1
Tags
protected
since
4.9.001

(2010-03-28)

$numfonts

Counts the number of fonts.

protected mixed $numfonts = 0
Tags
protected
since
4.5.000

(2009-01-02)

$numimages

Counts the number of pages.

protected mixed $numimages = 0
Tags
protected
since
4.5.000

(2008-12-31)

$numpages

Counts the number of pages.

protected mixed $numpages = 0
Tags
protected
since
4.5.000

(2008-12-31)

$objcopy

Cloned copy of the current class object.

protected mixed $objcopy
Tags
protected
since
4.5.029

(2009-03-19)

$offsets

Array of object offsets.

protected mixed $offsets = array()
Tags
protected

$opencell

Boolean flag to indicate if the border of the cell sides that cross the page should be removed.

protected mixed $opencell = \true
Tags
protected
since
4.2.010

(2008-11-14)

$openMarkedContent

Boolean flag to indicate if marked-content sequence is open.

protected mixed $openMarkedContent = \false
Tags
protected
since
4.0.013

(2008-07-28)

$original_lMargin

Original left margin value.

protected mixed $original_lMargin
Tags
protected
since
1.53.0.TC013

$original_rMargin

Original right margin value.

protected mixed $original_rMargin
Tags
protected
since
1.53.0.TC013

$OutlineRoot

Outline root for bookmark.

protected mixed $OutlineRoot
Tags
protected
since
2.1.002

(2008-02-12)

$outlines

Outlines for bookmark.

protected mixed $outlines = array()
Tags
protected
since
2.1.002

(2008-02-12)

$overline

Overlining flag.

protected mixed $overline
Tags
protected

$overprint

Overprint mode array.

protected array<string, bool|int> $overprint = array('OP' => \false, 'op' => \false, 'OPM' => 0)

(Check the "Entries in a Graphics State Parameter Dictionary" on PDF 32000-1:2008).

Tags
protected
since
5.9.152

(2012-03-23)

$page

Current page number.

protected mixed $page
Tags
protected

$page_boxes

Define the page boundaries boxes to be set on document.

protected mixed $page_boxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox')
Tags
protected
since
5.9.152

(2012-03-23)

$page_obj_id

ID of page objects.

protected mixed $page_obj_id = array()
Tags
protected
since
4.7.000

(2009-08-29)

$page_regions

Array of no-write regions.

protected mixed $page_regions = array()

('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right)

Tags
protected
since
5.9.003

(2010-10-14)

$PageAnnots

Array of Annotations in pages.

protected mixed $PageAnnots = array()
Tags
protected

$PageBreakTrigger

Threshold used to trigger page breaks.

protected mixed $PageBreakTrigger
Tags
protected

$pagedim

Page dimensions.

protected mixed $pagedim = array()
Tags
protected

$pagegroups

Array that contains the number of pages in each page group.

protected mixed $pagegroups = array()
Tags
protected
since
3.0.000

(2008-03-27)

$pagelen

Array containing page lengths in bytes.

protected mixed $pagelen = array()
Tags
protected
since
4.5.000

(2008-12-31)

$PageMode

A name object specifying how the document should be displayed when opened.

protected mixed $PageMode
Tags
protected
since
3.1.000

(2008-06-09)

$pageobjects

Array of object IDs for each page.

protected mixed $pageobjects = array()
Tags
protected

$pageopen

Store the fage status (true when opened, false when closed).

protected mixed $pageopen = array()
Tags
protected
since
4.5.000

(2009-01-02)

$pages

Array containing pages.

protected mixed $pages = array()
Tags
protected

$pdfa_mode

If true set the document to PDF/A mode.

protected mixed $pdfa_mode = \false
Tags
protected
since
5.9.121

(2011-09-27)

$pdfa_version

version of PDF/A mode (1 - 3).

protected mixed $pdfa_version = 1
Tags
protected
since
6.2.26

(2019-03-12)

$pdflayers

Array of PDF layers data.

protected mixed $pdflayers = array()
Tags
protected
since
5.9.102

(2011-07-13)

$pdfunit

Default unit of measure for document.

protected mixed $pdfunit = 'mm'
Tags
protected
since
5.0.000

(2010-04-22)

$PDFVersion

PDF version.

protected mixed $PDFVersion = '1.7'
Tags
since
1.5.3
protected

$premode

Boolean flag to indicate if we are inside a PRE tag.

protected mixed $premode = \false
Tags
protected
since
4.4.001

(2008-12-08)

Boolean flag to print/hide page footer.

protected mixed $print_footer = \true
Tags
protected

$print_header

Boolean flag to print/hide page header.

protected mixed $print_header = \true
Tags
protected

$radio_groups

List of radio group objects IDs.

protected mixed $radio_groups = array()
Tags
protected
since
4.8.001

(2009-09-09)

$radiobutton_groups

List of radio buttons parent objects.

protected mixed $radiobutton_groups = array()
Tags
protected
since
4.8.001

(2009-09-09)

$rasterize_vector_images

Boolean flag: if true convert vector images (SVG, EPS) to raster image using GD or ImageMagick library.

protected mixed $rasterize_vector_images = \false
Tags
protected
since
5.0.000

(2010-04-26)

$re_space

Array of $re_spaces parts.

protected mixed $re_space = array('p' => '[^\\S\\xa0]', 'm' => '')
Tags
protected
since
5.5.011

(2010-07-09)

$re_spaces

Regular expression used to find blank characters (required for word-wrapping).

protected mixed $re_spaces = '/[^\\S\\xa0]/'
Tags
protected
since
4.6.006

(2009-04-28)

$rMargin

Right margin.

protected mixed $rMargin
Tags
protected

$rtl

Boolean flag to indicate if the document language is Right-To-Left.

protected mixed $rtl = \false
Tags
protected
since
2.0.000

$sig_obj_id

Digital signature object ID.

protected mixed $sig_obj_id = 0
Tags
protected
since
4.6.022

(2009-06-23)

$sign

Boolean flag to enable document digital signature.

protected mixed $sign = \false
Tags
protected
since
4.6.005

(2009-04-24)

$signature_appearance

Data for digital signature appearance.

protected mixed $signature_appearance = array('page' => 1, 'rect' => '0 0 0 0')
Tags
protected
since
5.3.011

(2010-06-16)

$signature_data

Digital signature data.

protected mixed $signature_data = array()
Tags
protected
since
4.6.005

(2009-04-24)

$signature_max_length

Digital signature max length.

protected mixed $signature_max_length = 11742
Tags
protected
since
4.6.005

(2009-04-24)

$spot_colors

Array of Spot colors.

protected mixed $spot_colors = array()
Tags
protected
since
4.0.024

(2008-09-12)

$start_transaction_page

Store page number when startTransaction() is called.

protected mixed $start_transaction_page = 0
Tags
protected
since
4.8.006

(2009-09-23)

$start_transaction_y

Store Y position when startTransaction() is called.

protected mixed $start_transaction_y = 0
Tags
protected
since
4.9.001

(2010-03-28)

$starting_page_number

Starting page number.

protected mixed $starting_page_number = 1
Tags
protected

$state

Current document state.

protected mixed $state
Tags
protected

$strokecolor

Current stroke color.

protected mixed $strokecolor
Tags
protected
since
4.9.008

(2010-04-03)

$subject

Document subject.

protected mixed $subject = ''
Tags
protected

$svg_tag_depth

Depth of the svg tag, to keep track if the svg tag is a subtag or the root tag.

protected mixed $svg_tag_depth = 0
Tags
protected

$svgclipid

ID of last SVG clipPath.

protected mixed $svgclipid = 0
Tags
protected
since
5.0.000

(2010-05-02)

$svgclipmode

Boolean value true when in SVG clipPath tag.

protected mixed $svgclipmode = \false
Tags
protected
since
5.0.000

(2010-04-26)

$svgclippaths

Array of SVG clipPath commands.

protected mixed $svgclippaths = array()
Tags
protected
since
5.0.000

(2010-05-02)

$svgcliptm

Array of SVG clipPath tranformation matrix.

protected mixed $svgcliptm = array()
Tags
protected
since
5.8.022

(2010-08-31)

$svgdefs

Array of SVG defs.

protected mixed $svgdefs = array()
Tags
protected
since
5.0.000

(2010-05-02)

$svgdefsmode

Boolean value true when in SVG defs group.

protected mixed $svgdefsmode = \false
Tags
protected
since
5.0.000

(2010-05-02)

$svgdir

Directory used for the last SVG image.

protected mixed $svgdir = ''
Tags
protected
since
5.0.000

(2010-05-05)

$svggradientid

ID of last SVG gradient.

protected mixed $svggradientid = 0
Tags
protected
since
5.0.000

(2010-05-02)

$svggradients

Array of SVG gradients.

protected mixed $svggradients = array()
Tags
protected
since
5.0.000

(2010-05-02)

$svgstyles

Array of SVG properties.

protected mixed $svgstyles = array(array('alignment-baseline' => 'auto', 'baseline-shift' => 'baseline', 'clip' => 'auto', 'clip-path' => 'none', 'clip-rule' => 'nonzero', 'color' => 'black', 'color-interpolation' => 'sRGB', 'color-interpolation-filters' => 'linearRGB', 'color-profile' => 'auto', 'color-rendering' => 'auto', 'cursor' => 'auto', 'direction' => 'ltr', 'display' => 'inline', 'dominant-baseline' => 'auto', 'enable-background' => 'accumulate', 'fill' => 'black', 'fill-opacity' => 1, 'fill-rule' => 'nonzero', 'filter' => 'none', 'flood-color' => 'black', 'flood-opacity' => 1, 'font' => '', 'font-family' => 'helvetica', 'font-size' => 'medium', 'font-size-adjust' => 'none', 'font-stretch' => 'normal', 'font-style' => 'normal', 'font-variant' => 'normal', 'font-weight' => 'normal', 'glyph-orientation-horizontal' => '0deg', 'glyph-orientation-vertical' => 'auto', 'image-rendering' => 'auto', 'kerning' => 'auto', 'letter-spacing' => 'normal', 'lighting-color' => 'white', 'marker' => '', 'marker-end' => 'none', 'marker-mid' => 'none', 'marker-start' => 'none', 'mask' => 'none', 'opacity' => 1, 'overflow' => 'auto', 'pointer-events' => 'visiblePainted', 'shape-rendering' => 'auto', 'stop-color' => 'black', 'stop-opacity' => 1, 'stroke' => 'none', 'stroke-dasharray' => 'none', 'stroke-dashoffset' => 0, 'stroke-linecap' => 'butt', 'stroke-linejoin' => 'miter', 'stroke-miterlimit' => 4, 'stroke-opacity' => 1, 'stroke-width' => 1, 'text-anchor' => 'start', 'text-decoration' => 'none', 'text-rendering' => 'auto', 'unicode-bidi' => 'normal', 'visibility' => 'visible', 'word-spacing' => 'normal', 'writing-mode' => 'lr-tb', 'text-color' => 'black', 'transfmatrix' => array(1, 0, 0, 1, 0, 0)))
Tags
protected
since
5.0.000

(2010-05-02)

$svgtext

SVG text.

protected mixed $svgtext = ''
Tags
protected
since
5.0.000

(2010-05-02)

$svgtextmode

SVG text properties.

protected mixed $svgtextmode = array()
Tags
protected
since
5.8.013

(2010-08-23)

$svgunit

Deafult unit of measure for SVG.

protected mixed $svgunit = 'px'
Tags
protected
since
5.0.000

(2010-05-02)

$tagvspaces

Array used for custom vertical spaces for HTML tags.

protected mixed $tagvspaces = array()
Tags
protected
since
4.2.001

(2008-10-30)

If true print TCPDF meta link.

protected mixed $tcpdflink = \true
Tags
protected
since
5.9.152

(2012-03-23)

$tempfontsize

Temporary font size in points.

protected mixed $tempfontsize = 10
Tags
protected

$TextColor

Commands for text color.

protected mixed $TextColor
Tags
protected

$textindent

Text indentation value (used for text-indent CSS attribute).

protected mixed $textindent = 0
Tags
protected
since
4.8.006

(2009-09-23)

$textrendermode

Text rendering mode: 0 = Fill text; 1 = Stroke text; 2 = Fill, then stroke text; 3 = Neither fill nor stroke text (invisible); 4 = Fill text and add to path for clipping; 5 = Stroke text and add to path for clipping; 6 = Fill, then stroke text and add to path for clipping; 7 = Add text to path for clipping.

protected mixed $textrendermode = 0
Tags
protected
since
4.9.008

(2010-04-03)

$textstrokewidth

Text stroke width in doc units.

protected mixed $textstrokewidth = 0
Tags
protected
since
4.9.008

(2010-04-03)

$thead

Table header content to be repeated on each new page.

protected mixed $thead = ''
Tags
protected
since
4.5.030

(2009-03-20)

$theadMargins

Margins used for table header.

protected mixed $theadMargins = array()
Tags
protected
since
4.5.030

(2009-03-20)

$title

Document title.

protected mixed $title = ''
Tags
protected

$tMargin

Top margin.

protected mixed $tMargin
Tags
protected

$tmprtl

Boolean flag used to force RTL or LTR string direction.

protected mixed $tmprtl = \false
Tags
protected
since
2.0.000

$tocpage

Boolean flag true when we are on TOC (Table Of Content) page.

protected mixed $tocpage = \false
Tags
protected

$transfmatrix

Array of transformation matrix.

protected mixed $transfmatrix = array()
Tags
protected
since
4.2.000

(2008-10-29)

$transfmatrix_key

Current key for transformation matrix.

protected mixed $transfmatrix_key = 0
Tags
protected
since
4.8.005

(2009-09-17)

$transfmrk

Array used to store positions of graphics transformation blocks inside the page buffer.

protected mixed $transfmrk = array()

keys are the page numbers

Tags
protected
since
4.4.002

(2008-12-09)

$tsa_data

Timestamping data.

protected mixed $tsa_data = array()
Tags
protected
since
6.0.085

(2014-06-19)

$tsa_timestamp

Boolean flag to enable document timestamping with TSA.

protected mixed $tsa_timestamp = \false
Tags
protected
since
6.0.085

(2014-06-19)

$txtshadow

Text shadow data array.

protected mixed $txtshadow = array('enabled' => \false, 'depth_w' => 0, 'depth_h' => 0, 'color' => \false, 'opacity' => 1, 'blend_mode' => 'Normal')
Tags
since
5.9.174

(2012-07-25)

protected

$underline

Underlining flag.

protected mixed $underline
Tags
protected

$ur

Array with additional document-wide usage rights for the document.

protected mixed $ur = array()
Tags
protected
since
5.8.014

(2010-08-23)

$viewer_preferences

PDF viewer preferences.

protected mixed $viewer_preferences
Tags
protected
since
3.1.000

(2008-06-09)

$w

Current width of page in user unit.

protected mixed $w
Tags
protected

$wPt

Current width of page in points.

protected mixed $wPt
Tags
protected

$x

Current horizontal position in user unit for cell positioning.

protected mixed $x
Tags
protected

$xobjects

Array of XObjects.

protected mixed $xobjects = array()
Tags
protected
since
5.8.014

(2010-08-23)

$xobjid

Current XObject ID.

protected mixed $xobjid = ''
Tags
protected
since
5.8.017

(2010-08-24)

$y

Current vertical position in user unit for cell positioning.

protected mixed $y
Tags
protected

$ZoomMode

Zoom display mode.

protected mixed $ZoomMode
Tags
protected

Methods

__construct()

This is the class constructor.

public __construct([string $orientation = 'P' ][, string $unit = 'mm' ][, mixed $format = 'A4' ][, bool $unicode = true ][, string $encoding = 'UTF-8' ][, bool $diskcache = false ][, false|int $pdfa = false ]) : mixed

It allows to set up the page format, the orientation and the measure unit used in all the methods (except for the font sizes).

Parameters
$orientation : string = 'P'

page orientation. Possible values are (case insensitive):

  • P or Portrait (default)
  • L or Landscape
  • '' (empty string) for automatic orientation

$unit : string = 'mm'

User measure unit. Possible values are:

  • pt: point
  • mm: millimeter (default)
  • cm: centimeter
  • in: inch

A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit.

$format : mixed = 'A4'

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().

$unicode : bool = true

TRUE means that the input text is unicode (default = true)

$encoding : string = 'UTF-8'

Charset encoding (used only when converting back html entities); default is UTF-8.

$diskcache : bool = false

DEPRECATED FEATURE

$pdfa : false|int = false

If not false, set the document to PDF/A mode and the good version (1 or 3).

Tags
public
see

getPageSizeFromFormat(), setPageFormat()

__destruct()

Default destructor.

public __destruct() : mixed
Tags
public
since
1.53.0.TC016

_destroy()

Unset all class variables except the following critical variables.

public _destroy([bool $destroyall = false ][, bool $preserve_objcopy = false ]) : mixed
Parameters
$destroyall : bool = false

if true destroys all class variables, otherwise preserves critical variables.

$preserve_objcopy : bool = false

if true preserves the objcopy variable

Tags
public
since
4.5.016

(2009-02-24)

_putshaders()

Output gradient shaders.

public _putshaders() : mixed
Tags
author

Nicola Asuni

since
3.1.000

(2008-06-09)

protected

AcceptPageBreak()

Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value.

public AcceptPageBreak() : bool

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.

Tags
public
since
1.4
see
SetAutoPageBreak()
Return values
bool

addEmptySignatureAppearance()

Add an empty digital signature appearance (a cliccable rectangle area to get signature properties)

public addEmptySignatureAppearance([float $x = 0 ][, float $y = 0 ][, float $w = 0 ][, float $h = 0 ][, int $page = -1 ][, string $name = '' ]) : mixed
Parameters
$x : float = 0

Abscissa of the upper-left corner.

$y : float = 0

Ordinate of the upper-left corner.

$w : float = 0

Width of the signature area.

$h : float = 0

Height of the signature area.

$page : int = -1

option page number (if < 0 the current page is used).

$name : string = ''

Name of the signature.

Tags
public
author

Nicola Asuni

since
5.9.101

(2011-07-06)

AddFont()

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

public AddFont(string $family[, string $style = '' ][, string $fontfile = '' ][, mixed $subset = 'default' ]) : array<string|int, mixed>|false

It is necessary to generate a font definition file first (read /fonts/utils/README.TXT). The definition file (and the font file itself when embedding) must be present either in the current directory or in the one indicated by K_PATH_FONTS if the constant is defined. If it could not be found, the error "Could not include font definition file" is generated.

Parameters
$family : string

Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font.

$style : string = ''

Font style. Possible values are (case insensitive):

  • empty string: regular (default)
  • B: bold
  • I: italic
  • BI or IB: bold italic

$fontfile : string = ''

The font definition file. By default, the name is built from the family and style, in lower case with no spaces.

$subset : mixed = 'default'

if true embedd only a subset of the font (stores only the information related to the used characters); if false embedd full font; if 'default' uses the default value set using setFontSubsetting(). This option is valid only for TrueTypeUnicode fonts. If you want to enable users to change the document, set this parameter to false. If you subset the font, the person who receives your PDF would need to have your same font in order to make changes to your PDF. The file size of the PDF would also be smaller because you are embedding only part of a font.

Tags
public
since
1.5
see

SetFont(), setFontSubsetting()

Return values
array<string|int, mixed>|false

array containing the font data, or false in case of error.

Output anchor link.

public addHtmlLink(string $url, string $name[, bool $fill = false ][, bool $firstline = false ][, array<string|int, mixed>|null $color = null ][, string $style = -1 ][, bool $firstblock = false ]) : int
Parameters
$url : string

link URL or internal link (i.e.: <a href="#23,4.5">link to page 23 at 4.5 Y position</a>)

$name : string

link name

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$firstline : bool = false

if true prints only the first line and return the remaining string.

$color : array<string|int, mixed>|null = null

array of RGB text color

$style : string = -1

font style (U, D, B, I)

$firstblock : bool = false

if true the string is the starting of a line.

Tags
public
Return values
int

the number of cells used or the remaining text if $firstline = true;

addHTMLTOC()

Output a Table Of Content Index (TOC) using HTML templates.

public addHTMLTOC([int|null $page = null ][, string $toc_name = 'TOC' ][, array<string|int, mixed> $templates = array() ][, bool $correct_align = true ][, string $style = '' ][, array<string|int, mixed> $color = array(0, 0, 0) ]) : mixed

This method must be called after all Bookmarks were set. Before calling this method you have to open the page using the addTOCPage() method. After calling this method you have to call endTOCPage() to close the TOC page.

Parameters
$page : int|null = null

page number where this TOC should be inserted (leave empty for current page).

$toc_name : string = 'TOC'

name to use for TOC bookmark.

$templates : array<string|int, mixed> = array()

array of html templates. Use: "#TOC_DESCRIPTION#" for bookmark title, "#TOC_PAGE_NUMBER#" for page number.

$correct_align : bool = true

if true correct the number alignment (numbers must be in monospaced font like courier and right aligned on LTR, or left aligned on RTL)

$style : string = ''

Font style for title: B = Bold, I = Italic, BI = Bold + Italic.

$color : array<string|int, mixed> = array(0, 0, 0)

RGB color array for title (values from 0 to 255).

Tags
public
author

Nicola Asuni

since
5.0.001

(2010-05-06)

see

addTOCPage(), endTOCPage(), addTOC()

addJavascriptObject()

Adds a javascript object and return object ID

public addJavascriptObject(string $script[, bool $onload = false ]) : int
Parameters
$script : string

Javascript code

$onload : bool = false

if true executes this object when opening the document

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Return values
int

internal object ID

Creates a new internal link and returns its identifier. An internal link is a clickable area which directs to another place within the document.<br /> The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink().

public AddLink() : mixed
Tags
public
since
1.5
see

Cell(), Write(), Image(), Link(), SetLink()

AddPage()

Adds a new page to the document. If a page is already present, the Footer() method is called first to output the footer (if enabled). Then the page is added, the current position set to the top-left corner according to the left and top margins (or top-right if in RTL mode), and Header() is called to display the header (if enabled).

public AddPage([string $orientation = '' ][, mixed $format = '' ][, bool $keepmargins = false ][, bool $tocpage = false ]) : mixed

The origin of the coordinate system is at the top-left corner (or top-right for RTL) and increasing ordinates go downwards.

Parameters
$orientation : string = ''

page orientation. Possible values are (case insensitive):

  • P or PORTRAIT (default)
  • L or LANDSCAPE

$format : mixed = ''

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().

$keepmargins : bool = false

if true overwrites the default page margins with the current margins

$tocpage : bool = false

if true set the tocpage state to true (the added page will be used to display Table Of Content).

Tags
public
since
1.0
see

startPage(), endPage(), addTOCPage(), endTOCPage(), getPageSizeFromFormat(), setPageFormat()

addPageRegion()

Add a single no-write region on selected page.

public addPageRegion(array<string|int, mixed> $region) : mixed

A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. A region is always aligned on the left or right side of the page ad is defined using a vertical segment. You can set multiple regions for the same page.

Parameters
$region : array<string|int, mixed>

array of a single no-write region array: ('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right).

Tags
author

Nicola Asuni

public
since
5.9.003

(2010-10-13)

see

setPageRegions(), getPageRegions()

AddSpotColor()

Defines a new spot color.

public AddSpotColor(string $name, float $c, float $m, float $y, float $k) : mixed

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 : string

Full name of the spot color.

$c : float

Cyan color for CMYK. Value between 0 and 100.

$m : float

Magenta color for CMYK. Value between 0 and 100.

$y : float

Yellow color for CMYK. Value between 0 and 100.

$k : float

Key (Black) color for CMYK. Value between 0 and 100.

Tags
public
since
4.0.024

(2008-09-12)

see

SetDrawSpotColor(), SetFillSpotColor(), SetTextSpotColor()

addTOC()

Output a Table of Content Index (TOC).

public addTOC([int|null $page = null ][, string $numbersfont = '' ][, string $filler = '.' ][, string $toc_name = 'TOC' ][, string $style = '' ][, array<string|int, mixed> $color = array(0, 0, 0) ]) : mixed

This method must be called after all Bookmarks were set. Before calling this method you have to open the page using the addTOCPage() method. After calling this method you have to call endTOCPage() to close the TOC page. You can override this method to achieve different styles.

Parameters
$page : int|null = null

page number where this TOC should be inserted (leave empty for current page).

$numbersfont : string = ''

set the font for page numbers (please use monospaced font for better alignment).

$filler : string = '.'

string used to fill the space between text and page number.

$toc_name : string = 'TOC'

name to use for TOC bookmark.

$style : string = ''

Font style for title: B = Bold, I = Italic, BI = Bold + Italic.

$color : array<string|int, mixed> = array(0, 0, 0)

RGB color array for bookmark title (values from 0 to 255).

Tags
public
author

Nicola Asuni

since
4.5.000

(2009-01-02)

see

addTOCPage(), endTOCPage(), addHTMLTOC()

addTOCPage()

Adds a new TOC (Table Of Content) page to the document.

public addTOCPage([string $orientation = '' ][, mixed $format = '' ][, bool $keepmargins = false ]) : mixed
Parameters
$orientation : string = ''

page orientation.

$format : mixed = ''

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().

$keepmargins : bool = false

if true overwrites the default page margins with the current margins

Tags
public
since
5.0.001

(2010-05-06)

see

AddPage(), startPage(), endPage(), endTOCPage()

Annotation()

Puts a markup annotation on a rectangular area of the page.

public Annotation(float $x, float $y, float $w, float $h, string $text[, array<string|int, mixed> $opt = array('Subtype' => 'Text') ][, int $spaces = 0 ]) : mixed

!!!!THE ANNOTATION SUPPORT IS NOT YET FULLY IMPLEMENTED !!!!

Parameters
$x : float

Abscissa of the upper-left corner of the rectangle

$y : float

Ordinate of the upper-left corner of the rectangle

$w : float

Width of the rectangle

$h : float

Height of the rectangle

$text : string

annotation text or alternate content

$opt : array<string|int, mixed> = array('Subtype' => 'Text')

array of options (see section 8.4 of PDF reference 1.7).

$spaces : int = 0

number of spaces on the text to link

Tags
public
since
4.0.018

(2008-08-06)

Arrow()

Draws a grahic arrow.

public Arrow(float $x0, float $y0, float $x1, float $y1[, int $head_style = 0 ][, float $arm_size = 5 ][, int $arm_angle = 15 ]) : mixed
Parameters
$x0 : float

Abscissa of first point.

$y0 : float

Ordinate of first point.

$x1 : float

Abscissa of second point.

$y1 : float

Ordinate of second point.

$head_style : int = 0

(0 = draw only arrowhead arms, 1 = draw closed arrowhead, but no fill, 2 = closed and filled arrowhead, 3 = filled arrowhead)

$arm_size : float = 5

length of arrowhead arms

$arm_angle : int = 15

angle between an arm and the shaft

Tags
author

Piotr Galecki, Nicola Asuni, Andy Meier

since
4.6.018

(2009-07-10)

Bookmark()

Adds a bookmark.

public Bookmark(string $txt[, int $level = 0 ][, float $y = -1 ][, int|string $page = '' ][, string $style = '' ][, array<string|int, mixed> $color = array(0, 0, 0) ][, float $x = -1 ][, mixed $link = '' ]) : mixed
Parameters
$txt : string

Bookmark description.

$level : int = 0

Bookmark level (minimum value is 0).

$y : float = -1

Y position in user units of the bookmark on the selected page (default = -1 = current position; 0 = page start;).

$page : int|string = ''

Target page number (leave empty for current page). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.

$style : string = ''

Font style: B = Bold, I = Italic, BI = Bold + Italic.

$color : array<string|int, mixed> = array(0, 0, 0)

RGB color array (values from 0 to 255).

$x : float = -1

X position in user units of the bookmark on the selected page (default = -1 = current position;).

$link : mixed = ''

URL, or numerical link ID, or named destination (# character followed by the destination name), or embedded file (* character followed by the file name).

Tags
public
since
2.1.002

(2008-02-12)

Button()

Creates a button field

public Button(string $name, int $w, int $h, string $caption, mixed $action[, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

field name

$w : int

width

$h : int

height

$caption : string

caption.

$action : mixed

action triggered by pressing the button. Use a string to specify a javascript action. Use an array to specify a form action options as on section 12.7.5 of PDF32000_2008.

$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

annotation parameters. Possible values are described on official PDF32000_2008 reference.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

if true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Cell()

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.<br /> If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.

public Cell(float $w[, float $h = 0 ][, string $txt = '' ][, mixed $border = 0 ][, int $ln = 0 ][, string $align = '' ][, bool $fill = false ][, mixed $link = '' ][, int $stretch = 0 ][, bool $ignore_min_height = false ][, string $calign = 'T' ][, string $valign = 'M' ]) : mixed
Parameters
$w : float

Cell width. If 0, the cell extends up to the right margin.

$h : float = 0

Cell height. Default value: 0.

$txt : string = ''

String to print. Default value: empty string.

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$ln : int = 0

Indicates where the current position should go after the call. Possible values are:

  • 0: to the right (or left for RTL languages)
  • 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 : string = ''

Allows to center or align the text. Possible values are:

  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • J: justify

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$link : mixed = ''

URL or identifier returned by AddLink().

$stretch : int = 0

font stretch mode:

  • 0 = disabled
  • 1 = horizontal scaling only if text is larger than cell width
  • 2 = forced horizontal scaling to fit cell width
  • 3 = character spacing only if text is larger than cell width
  • 4 = forced character spacing to fit cell width
General font stretching and scaling values will be preserved when possible.

$ignore_min_height : bool = false

if true ignore automatic minimum height value.

$calign : string = 'T'

cell vertical alignment relative to the specified Y value. Possible values are:

  • T : cell top
  • C : center
  • B : cell bottom
  • A : font top
  • L : font baseline
  • D : font bottom

$valign : string = 'M'

text vertical alignment inside the cell. Possible values are:

  • T : top
  • C : center
  • B : bottom

Tags
public
since
1.0
see

SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak()

CheckBox()

Creates a CheckBox field

public CheckBox(string $name, int $w[, bool $checked = false ][, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, string $onvalue = 'Yes' ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

field name

$w : int

width

$checked : bool = false

define the initial state.

$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

annotation parameters. Possible values are described on official PDF32000_2008 reference.

$onvalue : string = 'Yes'

value to be returned if selected.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

if true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Circle()

Draws a circle.

public Circle(float $x0, float $y0, float $r[, float $angstr = 0 ][, float $angend = 360 ][, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ][, int $nc = 2 ]) : mixed

A circle is formed from n Bezier curves.

Parameters
$x0 : float

Abscissa of center point.

$y0 : float

Ordinate of center point.

$r : float

Radius.

$angstr : float = 0

Angle start of draw line. Default value: 0.

$angend : float = 360

Angle finish of draw line. Default value: 360.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of circle. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(red, green, blue). Default value: default color (empty array).

$nc : int = 2

Number of curves used to draw a 90 degrees portion of circle.

Tags
public
since
2.1.000

(2008-01-08)

Close()

Terminates the PDF document.

public Close() : mixed

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

Tags
public
since
1.0
see

Open(), Output()

colorRegistrationBar()

Paints color transition registration bars

public colorRegistrationBar(float $x, float $y, float $w, float $h[, bool $transition = true ][, bool $vertical = false ][, string $colors = 'A,R,G,B,C,M,Y,K' ]) : mixed
Parameters
$x : float

abscissa of the top left corner of the rectangle.

$y : float

ordinate of the top left corner of the rectangle.

$w : float

width of the rectangle.

$h : float

height of the rectangle.

$transition : bool = true

if true prints tcolor transitions to white.

$vertical : bool = false

if true prints bar vertically.

$colors : string = 'A,R,G,B,C,M,Y,K'

colors to print separated by comma. Valid values are: A,W,R,G,B,C,M,Y,K,RGB,CMYK,ALL,ALLSPOT,<SPOT_COLOR_NAME>. Where: A = grayscale black, W = grayscale white, R = RGB red, G RGB green, B RGB blue, C = CMYK cyan, M = CMYK magenta, Y = CMYK yellow, K = CMYK key/black, RGB = RGB registration color, CMYK = CMYK registration color, ALL = Spot registration color, ALLSPOT = print all defined spot colors, <SPOT_COLOR_NAME> = name of the spot color to print.

Tags
author

Nicola Asuni

since
4.9.000

(2010-03-26)

public

ComboBox()

Creates a Combo-box field

public ComboBox(string $name, int $w, int $h, array<string|int, mixed> $values[, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

field name

$w : int

width

$h : int

height

$values : array<string|int, mixed>

array containing the list of values.

$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

annotation parameters. Possible values are described on official PDF32000_2008 reference.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

if true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

commitTransaction()

Delete the copy of the current TCPDF object used for undo operation.

public commitTransaction() : mixed
Tags
public
since
4.5.029

(2009-03-19)

CoonsPatchMesh()

Paints a coons patch mesh.

public CoonsPatchMesh(float $x, float $y, float $w, float $h[, array<string|int, mixed> $col1 = array() ][, array<string|int, mixed> $col2 = array() ][, array<string|int, mixed> $col3 = array() ][, array<string|int, mixed> $col4 = array() ][, array<string|int, mixed> $coords = array(0.0, 0.0, 0.33, 0.0, 0.67, 0.0, 1.0, 0.0, 1.0, 0.33, 1.0, 0.67, 1.0, 1.0, 0.67, 1.0, 0.33, 1.0, 0.0, 1.0, 0.0, 0.67, 0.0, 0.33) ][, array<string|int, mixed> $coords_min = 0 ][, array<string|int, mixed> $coords_max = 1 ][, bool $antialias = false ]) : mixed
Parameters
$x : float

abscissa of the top left corner of the rectangle.

$y : float

ordinate of the top left corner of the rectangle.

$w : float

width of the rectangle.

$h : float

height of the rectangle.

$col1 : array<string|int, mixed> = array()

first color (lower left corner) (RGB components).

$col2 : array<string|int, mixed> = array()

second color (lower right corner) (RGB components).

$col3 : array<string|int, mixed> = array()

third color (upper right corner) (RGB components).

$col4 : array<string|int, mixed> = array()

fourth color (upper left corner) (RGB components).

$coords : array<string|int, mixed> = array(0.0, 0.0, 0.33, 0.0, 0.67, 0.0, 1.0, 0.0, 1.0, 0.33, 1.0, 0.67, 1.0, 1.0, 0.67, 1.0, 0.33, 1.0, 0.0, 1.0, 0.0, 0.67, 0.0, 0.33)
  • for one patch mesh: array(float x1, float y1, .... float x12, float y12): 12 pairs of coordinates (normally from 0 to 1) which specify the Bezier control points that define the patch. First pair is the lower left edge point, next is its right control point (control point 2). Then the other points are defined in the order: control point 1, edge point, control point 2 going counter-clockwise around the patch. Last (x12, y12) is the first edge point's left control point (control point 1).
  • for two or more patch meshes: array[number of patches]: arrays with the following keys for each patch: f: where to put that patch (0 = first patch, 1, 2, 3 = right, top and left of precedent patch - I didn't figure this out completely - just try and error ;-) points: 12 pairs of coordinates of the Bezier control points as above for the first patch, 8 pairs of coordinates for the following patches, ignoring the coordinates already defined by the precedent patch (I also didn't figure out the order of these - also: try and see what's happening) colors: must be 4 colors for the first patch, 2 colors for the following patches
$coords_min : array<string|int, mixed> = 0

minimum value used by the coordinates. If a coordinate's value is smaller than this it will be cut to coords_min. default: 0

$coords_max : array<string|int, mixed> = 1

maximum value used by the coordinates. If a coordinate's value is greater than this it will be cut to coords_max. default: 1

$antialias : bool = false

A flag indicating whether to filter the shading function to prevent aliasing artifacts.

Tags
author

Andreas W\FCrmser, Nicola Asuni

since
3.1.000

(2008-06-09)

public

copyPage()

Clone the specified page to a new page.

public copyPage([int $page = 0 ]) : bool
Parameters
$page : int = 0

number of page to copy (0 = current page)

Tags
public
since
4.9.015

(2010-04-20)

Return values
bool

true in case of success, false in case of error.

cropMark()

Paints crop marks.

public cropMark(float $x, float $y, float $w, float $h[, string $type = 'T,R,B,L' ][, array<string|int, mixed> $color = array(100, 100, 100, 100, 'All') ]) : mixed
Parameters
$x : float

abscissa of the crop mark center.

$y : float

ordinate of the crop mark center.

$w : float

width of the crop mark.

$h : float

height of the crop mark.

$type : string = 'T,R,B,L'

type of crop mark, one symbol per type separated by comma: T = TOP, F = BOTTOM, L = LEFT, R = RIGHT, TL = A = TOP-LEFT, TR = B = TOP-RIGHT, BL = C = BOTTOM-LEFT, BR = D = BOTTOM-RIGHT.

$color : array<string|int, mixed> = array(100, 100, 100, 100, 'All')

crop mark color (default spot registration color).

Tags
author

Nicola Asuni

since
4.9.000

(2010-03-26)

public

Curve()

Draws a Bezier curve.

public Curve(float $x0, float $y0, float $x1, float $y1, float $x2, float $y2, float $x3, float $y3[, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed

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

Parameters
$x0 : float

Abscissa of start point.

$y0 : float

Ordinate of start point.

$x1 : float

Abscissa of control point 1.

$y1 : float

Ordinate of control point 1.

$x2 : float

Abscissa of control point 2.

$y2 : float

Ordinate of control point 2.

$x3 : float

Abscissa of end point.

$y3 : float

Ordinate of end point.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of curve. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
public
see
SetLineStyle()
since
2.1.000

(2008-01-08)

deletePage()

Remove the specified page.

public deletePage(int $page) : bool
Parameters
$page : int

page to remove

Tags
public
since
4.6.004

(2009-04-23)

Return values
bool

true in case of success, false in case of error.

Ellipse()

Draws an ellipse.

public Ellipse(float $x0, float $y0, float $rx[, float $ry = 0 ][, float $angle = 0 ][, float $astart = 0 ][, float $afinish = 360 ][, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ][, int $nc = 2 ]) : mixed

An ellipse is formed from n Bezier curves.

Parameters
$x0 : float

Abscissa of center point.

$y0 : float

Ordinate of center point.

$rx : float

Horizontal radius.

$ry : float = 0

Vertical radius (if ry = 0 then is a circle, see Circle()). Default value: 0.

$angle : float = 0

Angle oriented (anti-clockwise). Default value: 0.

$astart : float = 0

Angle start of draw line. Default value: 0.

$afinish : float = 360

Angle finish of draw line. Default value: 360.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of ellipse. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

$nc : int = 2

Number of curves used to draw a 90 degrees portion of ellipse.

Tags
author

Nicola Asuni

public
since
2.1.000

(2008-01-08)

endLayer()

End the current PDF layer.

public endLayer() : mixed
Tags
public
since
5.9.102

(2011-07-13)

endPage()

Terminate the current page

public endPage([bool $tocpage = false ]) : mixed
Parameters
$tocpage : bool = false

if true set the tocpage state to false (end the page used to display Table Of Content).

Tags
public
since
4.2.010

(2008-11-14)

see

AddPage(), startPage(), addTOCPage(), endTOCPage()

endTemplate()

End the current XObject Template started with startTemplate() and restore the previous graphic state.

public endTemplate() : string|false

An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked.

Tags
author

Nicola Asuni

public
since
5.8.017

(2010-08-24)

see

startTemplate(), printTemplate()

Return values
string|false

the XObject Template ID in case of success or false in case of error.

endTOCPage()

Terminate the current TOC (Table Of Content) page

public endTOCPage() : mixed
Tags
public
since
5.0.001

(2010-05-06)

see

AddPage(), startPage(), endPage(), addTOCPage()

Error()

Throw an exception or print an error message and die if the K_TCPDF_PARSER_THROW_EXCEPTION_ERROR constant is set to true.

public Error(string $msg) : mixed
Parameters
$msg : string

The error message

Tags
public
since
1.0

fixHTMLCode()

Cleanup HTML code (requires HTML Tidy library).

public fixHTMLCode(string $html[, string $default_css = '' ][, array<string|int, mixed>|null $tagvs = null ][, array<string|int, mixed>|null $tidy_options = null ]) : string
Parameters
$html : string

htmlcode to fix

$default_css : string = ''

CSS commands to add

$tagvs : array<string|int, mixed>|null = null

parameters for setHtmlVSpace method

$tidy_options : array<string|int, mixed>|null = null

options for tidy_parse_string function

Tags
author

Nicola Asuni

public
since
5.9.017

(2010-11-16)

see
setHtmlVSpace()
Return values
string

XHTML code cleaned up

This method is used to render the page footer.

public Footer() : mixed

It is automatically called by AddPage() and could be overwritten in your own inherited class.

Tags
public

getAbsFontMeasure()

Convert a relative font measure into absolute value.

public getAbsFontMeasure(int $s) : float
Parameters
$s : int

Font measure.

Tags
since
5.9.186

(2012-09-13)

Return values
float

Absolute measure.

GetAbsX()

Returns the absolute X value of current position.

public GetAbsX() : float
Tags
public
since
1.2
see

SetX(), GetY(), SetY()

Return values
float

getAliasNbPages()

Returns the string alias used for the total number of pages.

public getAliasNbPages() : string

If the current font is unicode type, the returned string is surrounded by additional curly braces. This alias will be replaced by the total number of pages in the document.

Tags
since
4.0.018

(2008-08-08)

public
Return values
string

getAliasNumPage()

Returns the string alias used for the page number.

public getAliasNumPage() : string

If the current font is unicode type, the returned string is surrounded by additional curly braces. This alias will be replaced by the page number.

Tags
since
4.5.000

(2009-01-02)

public
Return values
string

getAliasRightShift()

Returns the string alias used right align page numbers.

public getAliasRightShift() : string

If the current font is unicode type, the returned string wil contain an additional open curly brace.

Tags
since
5.9.099

(2011-06-27)

public
Return values
string

getAllSpotColors()

Returns the array of spot colors.

public getAllSpotColors() : array<string|int, mixed>
Tags
public
since
6.0.038

(2013-09-30)

Return values
array<string|int, mixed>

Spot colors array.

getAlpha()

Get the alpha mode array (CA, ca, BM, AIS).

public getAlpha() : array<string, bool|string>

(Check the "Entries in a Graphics State Parameter Dictionary" on PDF 32000-1:2008).

Tags
public
since
5.9.152

(2012-03-23)

Return values
array<string, bool|string>

GetArrStringWidth()

Returns the string length of an array of chars in user unit or an array of characters widths. A font must be selected.<br>

public GetArrStringWidth(array<string|int, mixed> $sa[, string $fontname = '' ][, string $fontstyle = '' ][, float $fontsize = 0 ][, bool $getarray = false ]) : array<string|int, float>|float
Parameters
$sa : array<string|int, mixed>

The array of chars whose total length is to be computed

$fontname : string = ''

Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained.

$fontstyle : string = ''

Font style. Possible values are (case insensitive):

  • empty string: regular
  • B: bold
  • I: italic
  • U: underline
  • D: line through
  • O: overline
or any combination. The default value is regular.

$fontsize : float = 0

Font size in points. The default value is the current size.

$getarray : bool = false

if true returns an array of characters widths, if false returns the total length.

Tags
phpstan-return

($getarray is true ? float[] : float) total string length or array of characted widths

author

Nicola Asuni

public
since
2.4.000

(2008-03-06)

Return values
array<string|int, float>|float

total string length or array of characted widths

getAutoPageBreak()

Return the auto-page-break mode (true or false).

public getAutoPageBreak() : bool
Tags
public
since
5.9.088
Return values
bool

auto-page-break mode

getBarcode()

Get current barcode.

public getBarcode() : string
Tags
public
since
4.0.012

(2008-07-24)

Return values
string

getBreakMargin()

Returns the page break margin.

public getBreakMargin([int|null $pagenum = null ]) : int|float
Parameters
$pagenum : int|null = null

page number (empty = current page)

Tags
author

Nicola Asuni

public
since
1.5.2
see
getPageDimensions()
Return values
int|float

page break margin.

getCellHeight()

Return the cell height

public getCellHeight(int $fontsize[, bool $padding = TRUE ]) : float
Parameters
$fontsize : int

Font size in internal units

$padding : bool = TRUE

If true add cell padding

Tags
public
Return values
float

getCellHeightRatio()

return the height of cell repect font height.

public getCellHeightRatio() : float
Tags
public
since
4.0.012

(2008-07-24)

Return values
float

getCellMargins()

Get the internal Cell margin array.

public getCellMargins() : array<string|int, mixed>
Tags
public
since
5.9.000

(2010-10-03)

see
setCellMargins()
Return values
array<string|int, mixed>

of margin values

getCellPaddings()

Get the internal Cell padding array.

public getCellPaddings() : array<string|int, mixed>
Tags
public
since
5.9.000

(2010-10-03)

see

setCellPaddings(), SetCellPadding()

Return values
array<string|int, mixed>

of padding values

getCharBBox()

Returns the glyph bounding box of the specified character in the current font in user units.

public getCharBBox(int $char) : false|array<string|int, mixed>
Parameters
$char : int

Input character code.

Tags
since
5.9.186

(2012-09-13)

Return values
false|array<string|int, mixed>

array(xMin, yMin, xMax, yMax) or FALSE if not defined.

GetCharWidth()

Returns the length of the char in user unit for the current font considering current stretching and spacing (tracking).

public GetCharWidth(int $char[, bool $notlast = true ]) : float
Parameters
$char : int

The char code whose length is to be returned

$notlast : bool = true

If false ignore the font-spacing.

Tags
author

Nicola Asuni

public
since
2.4.000

(2008-03-06)

Return values
float

char width

getColumn()

Return the current column number

public getColumn() : int
Tags
public
since
5.5.011

(2010-07-08)

Return values
int

current column number

getCSSBorderMargin()

Get the border-spacing from CSS attribute.

public getCSSBorderMargin(string $cssbspace[, float $width = 0 ]) : array<string|int, mixed>
Parameters
$cssbspace : string

border-spacing CSS properties

$width : float = 0

width of the containing element

Tags
public
since
5.9.010

(2010-10-27)

Return values
array<string|int, mixed>

of border spacings

getCSSMargin()

Get the internal Cell margin from CSS attribute.

public getCSSMargin(string $cssmargin[, float $width = 0 ]) : array<string|int, mixed>
Parameters
$cssmargin : string

margin properties

$width : float = 0

width of the containing element

Tags
public
since
5.9.000

(2010-10-04)

Return values
array<string|int, mixed>

of cell margins

getCSSPadding()

Get the internal Cell padding from CSS attribute.

public getCSSPadding(string $csspadding[, float $width = 0 ]) : array<string|int, mixed>
Parameters
$csspadding : string

padding properties

$width : float = 0

width of the containing element

Tags
public
since
5.9.000

(2010-10-04)

Return values
array<string|int, mixed>

of cell paddings

getDestination()

Return the Named Destination array.

public getDestination() : array<string|int, mixed>
Tags
public
author

Nicola Asuni

since
5.9.097

(2011-06-23)

Return values
array<string|int, mixed>

Named Destination array.

getDocCreationTimestamp()

Returns document creation timestamp in seconds.

public getDocCreationTimestamp() : int
Tags
public
since
5.9.152

(2012-03-23)

Return values
int

Creation timestamp in seconds.

getDocModificationTimestamp()

Returns document modification timestamp in seconds.

public getDocModificationTimestamp() : int
Tags
public
since
5.9.152

(2012-03-23)

Return values
int

Modfication timestamp in seconds.

getFontAscent()

Return the font ascent value.

public getFontAscent(string $font[, string $style = '' ][, float $size = 0 ]) : int
Parameters
$font : string

font name

$style : string = ''

font style

$size : float = 0

The size (in points)

Tags
public
author

Nicola Asuni

since
4.9.003

(2010-03-30)

Return values
int

font ascent

getFontBBox()

Returns the bounding box of the current font in user units.

public getFontBBox() : array<string|int, mixed>
Tags
public
since
5.9.152

(2012-03-23)

Return values
array<string|int, mixed>

getFontDescent()

Return the font descent value

public getFontDescent(string $font[, string $style = '' ][, float $size = 0 ]) : int
Parameters
$font : string

font name

$style : string = ''

font style

$size : float = 0

The size (in points)

Tags
public
author

Nicola Asuni

since
4.9.003

(2010-03-30)

Return values
int

font descent

getFontFamily()

Returns the current font family name.

public getFontFamily() : string
Tags
public
since
4.3.008

(2008-12-05)

Return values
string

current font family name

getFontFamilyName()

Return normalized font name

public getFontFamilyName(string $fontfamily) : string
Parameters
$fontfamily : string

property string containing font family names

Tags
author

Nicola Asuni

public
since
5.8.004

(2010-08-17)

Return values
string

normalized font name

getFontSize()

Returns the current font size.

public getFontSize() : float
Tags
public
since
3.2.000

(2008-06-23)

Return values
float

current font size

getFontSizePt()

Returns the current font size in points unit.

public getFontSizePt() : int
Tags
public
since
3.2.000

(2008-06-23)

Return values
int

current font size in points unit

getFontSpacing()

Get the amount to increase or decrease the space between characters in a text.

public getFontSpacing() : int
Tags
author

Nicola Asuni

public
since
5.9.000

(2010-09-29)

Return values
int

font spacing (tracking) value

getFontStretching()

Get the percentage of character stretching.

public getFontStretching() : float
Tags
author

Nicola Asuni

public
since
5.9.000

(2010-09-29)

Return values
float

stretching value

getFontStyle()

Returns the current font style.

public getFontStyle() : string
Tags
public
since
4.3.008

(2008-12-05)

Return values
string

current font style

getFontSubsetting()

Return the default option for font subsetting.

public getFontSubsetting() : bool
Tags
author

Nicola Asuni

public
since
5.3.002

(2010-06-07)

Return values
bool

default font subsetting state.

getFooterFont()

Get Footer font.

public getFooterFont() : array<int, string|float|null>
Tags
phpstan-return

array{0: string, 1: string, 2: float|null} $font

public
since
4.0.012

(2008-07-24)

Return values
array<int, string|float|null>

Array describing the basic font parameters: (family, style, size).

getFooterMargin()

Returns footer margin in user units.

public getFooterMargin() : float
Tags
since
4.0.012

(2008-07-24)

public
Return values
float

getFormDefaultProp()

Return the default properties for form fields.

public getFormDefaultProp() : array<string|int, mixed>
Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-06)

Return values
array<string|int, mixed>

$prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

getGroupPageNo()

Return the current page in the group.

public getGroupPageNo() : int
Tags
public
since
3.0.000

(2008-03-27)

Return values
int

current page in the group

getGroupPageNoFormatted()

Returns the current group page number formatted as a string.

public getGroupPageNoFormatted() : mixed
Tags
public
since
4.3.003

(2008-11-18)

see

PaneNo(), formatPageNumber()

getHeaderData()

Returns header data: <ul><li>$ret['logo'] = logo image</li><li>$ret['logo_width'] = width of the image logo in user units</li><li>$ret['title'] = header title</li><li>$ret['string'] = header description string</li></ul>

public getHeaderData() : array<string, mixed>
Tags
public
since
4.0.012

(2008-07-24)

Return values
array<string, mixed>

getHeaderFont()

Get header font.

public getHeaderFont() : array<int, string|float|null>
Tags
phpstan-return

array{0: string, 1: string, 2: float|null}

public
since
4.0.012

(2008-07-24)

Return values
array<int, string|float|null>

Array describing the basic font parameters: (family, style, size).

getHeaderMargin()

Returns header margin in user units.

public getHeaderMargin() : float
Tags
since
4.0.012

(2008-07-24)

public
Return values
float

getHTMLFontUnits()

Convert HTML string containing font size value to points

public getHTMLFontUnits(string $val[, float $refsize = 12 ][, float $parent_size = 12 ][, string $defaultunit = 'pt' ]) : float
Parameters
$val : string

String containing font size value and unit.

$refsize : float = 12

Reference font size in points.

$parent_size : float = 12

Parent font size in points.

$defaultunit : string = 'pt'

Default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt).

Tags
public
Return values
float

value in points

getHTMLUnitToUnits()

Convert HTML string containing value and unit of measure to user's units or points.

public getHTMLUnitToUnits(string $htmlval[, string $refsize = 1 ][, string $defaultunit = 'px' ][, bool $points = false ]) : float
Parameters
$htmlval : string

String containing values and unit.

$refsize : string = 1

Reference value in points.

$defaultunit : string = 'px'

Default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt).

$points : bool = false

If true returns points, otherwise returns value in user's units.

Tags
public
since
4.4.004

(2008-12-10)

Return values
float

value in user's unit or point if $points=true

getImageRBX()

Return the right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image

public getImageRBX() : float
Tags
public
Return values
float

getImageRBY()

Return the right-bottom (or left-bottom for RTL) corner Y coordinate of last inserted image

public getImageRBY() : float
Tags
public
Return values
float

getImageScale()

Returns the adjusting factor to convert pixels to user units.

public getImageScale() : float
Tags
author

Nicola Asuni

public
since
1.5.2
Return values
float

adjusting factor to convert pixels to user units.

getLastH()

Get the last cell height.

public getLastH() : float
Tags
public
since
4.0.017

(2008-08-05)

Return values
float

last cell height

GetLineWidth()

Returns the current the line width.

public GetLineWidth() : int
Tags
public
since
2.1.000

(2008-01-07)

see

Line(), SetLineWidth()

Return values
int

Line width

getMargins()

Returns an array containing current margins: <ul> <li>$ret['left'] = left margin</li> <li>$ret['right'] = right margin</li> <li>$ret['top'] = top margin</li> <li>$ret['bottom'] = bottom margin</li> <li>$ret['header'] = header margin</li> <li>$ret['footer'] = footer margin</li> <li>$ret['cell'] = cell padding array</li> <li>$ret['padding_left'] = cell left padding</li> <li>$ret['padding_top'] = cell top padding</li> <li>$ret['padding_right'] = cell right padding</li> <li>$ret['padding_bottom'] = cell bottom padding</li> </ul>

public getMargins() : array<string|int, mixed>
Tags
public
since
3.2.000

(2008-06-23)

Return values
array<string|int, mixed>

containing all margins measures

getNumberOfColumns()

Return the current number of columns.

public getNumberOfColumns() : int
Tags
public
since
5.8.018

(2010-08-25)

Return values
int

number of columns

GetNumChars()

Returns the numbero of characters in a string.

public GetNumChars(string $s) : int
Parameters
$s : string

The input string.

Tags
public
since
2.0.0001

(2008-01-07)

Return values
int

number of characters

getNumLines()

This method return the estimated number of lines for print a simple text string using Multicell() method.

public getNumLines(string $txt[, float $w = 0 ][, bool $reseth = false ][, bool $autopadding = true ][, array<string|int, mixed>|null $cellpadding = null ][, mixed $border = 0 ]) : float
Parameters
$txt : string

String for calculating his height

$w : float = 0

Width of cells. If 0, they extend up to the right margin of the page.

$reseth : bool = false

if true reset the last cell height (default false).

$autopadding : bool = true

if true, uses internal padding and automatically adjust it to account for line width (default true).

$cellpadding : array<string|int, mixed>|null = null

Internal cell padding, if empty uses default cell padding.

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

Tags
author

Alexander Escalona Fern\E1ndez, Nicola Asuni

public
since
4.5.011
Return values
float

Return the minimal height needed for multicell method for printing the $txt param.

getNumPages()

Get the total number of insered pages.

public getNumPages() : int
Tags
public
since
2.1.000

(2008-01-07)

see

setPage(), getPage(), lastpage()

Return values
int

number of pages

getOriginalMargins()

Returns an array containing original margins: <ul> <li>$ret['left'] = left margin</li> <li>$ret['right'] = right margin</li> </ul>

public getOriginalMargins() : array<string|int, mixed>
Tags
public
since
4.0.012

(2008-07-24)

Return values
array<string|int, mixed>

containing all margins measures

getOverprint()

Get the overprint mode array (OP, op, OPM).

public getOverprint() : array<string, bool|int>

(Check the "Entries in a Graphics State Parameter Dictionary" on PDF 32000-1:2008).

Tags
public
since
5.9.152

(2012-03-23)

Return values
array<string, bool|int>

getPage()

Get current document page number.

public getPage() : int
Tags
public
since
2.1.000

(2008-01-07)

see

setPage(), lastpage(), getNumPages()

Return values
int

page number

getPageDimensions()

Returns an array of page dimensions: <ul><li>$this->pagedim[$this->page]['w'] = page width in points</li><li>$this->pagedim[$this->page]['h'] = height in points</li><li>$this->pagedim[$this->page]['wk'] = page width in user units</li><li>$this->pagedim[$this->page]['hk'] = page height in user units</li><li>$this->pagedim[$this->page]['tm'] = top margin</li><li>$this->pagedim[$this->page]['bm'] = bottom margin</li><li>$this->pagedim[$this->page]['lm'] = left margin</li><li>$this->pagedim[$this->page]['rm'] = right margin</li><li>$this->pagedim[$this->page]['pb'] = auto page break</li><li>$this->pagedim[$this->page]['or'] = page orientation</li><li>$this->pagedim[$this->page]['olm'] = original left margin</li><li>$this->pagedim[$this->page]['orm'] = original right margin</li><li>$this->pagedim[$this->page]['Rotate'] = The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90.</li><li>$this->pagedim[$this->page]['PZ'] = The page's preferred zoom (magnification) factor.</li><li>$this->pagedim[$this->page]['trans'] : the style and duration of the visual transition to use when moving from another page to the given page during a presentation<ul><li>$this->pagedim[$this->page]['trans']['Dur'] = The page's display duration (also called its advance timing): the maximum length of time, in seconds, that the page shall be displayed during presentations before the viewer application shall automatically advance to the next page.</li><li>$this->pagedim[$this->page]['trans']['S'] = transition style : Split, Blinds, Box, Wipe, Dissolve, Glitter, R, Fly, Push, Cover, Uncover, Fade</li><li>$this->pagedim[$this->page]['trans']['D'] = The duration of the transition effect, in seconds.</li><li>$this->pagedim[$this->page]['trans']['Dm'] = (Split and Blinds transition styles only) The dimension in which the specified transition effect shall occur: H = Horizontal, V = Vertical. Default value: H.</li><li>$this->pagedim[$this->page]['trans']['M'] = (Split, Box and Fly transition styles only) The direction of motion for the specified transition effect: I = Inward from the edges of the page, O = Outward from the center of the pageDefault value: I.</li><li>$this->pagedim[$this->page]['trans']['Di'] = (Wipe, Glitter, Fly, Cover, Uncover and Push transition styles only) The direction in which the specified transition effect shall moves, expressed in degrees counterclockwise starting from a left-to-right direction. If the value is a number, it shall be one of: 0 = Left to right, 90 = Bottom to top (Wipe only), 180 = Right to left (Wipe only), 270 = Top to bottom, 315 = Top-left to bottom-right (Glitter only). If the value is a name, it shall be None, which is relevant only for the Fly transition when the value of SS is not 1.0. Default value: 0.</li><li>$this->pagedim[$this->page]['trans']['SS'] = (Fly transition style only) The starting or ending scale at which the changes shall be drawn. If M specifies an inward transition, the scale of the changes drawn shall progress from SS to 1.0 over the course of the transition. If M specifies an outward transition, the scale of the changes drawn shall progress from 1.0 to SS over the course of the transition. Default: 1.0. </li><li>$this->pagedim[$this->page]['trans']['B'] = (Fly transition style only) If true, the area that shall be flown in is rectangular and opaque. Default: false.</li></ul></li><li>$this->pagedim[$this->page]['MediaBox'] : the boundaries of the physical medium on which the page shall be displayed or printed<ul><li>$this->pagedim[$this->page]['MediaBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['MediaBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['CropBox'] : the visible region of default user space<ul><li>$this->pagedim[$this->page]['CropBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['CropBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['BleedBox'] : the region to which the contents of the page shall be clipped when output in a production environment<ul><li>$this->pagedim[$this->page]['BleedBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['BleedBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['TrimBox'] : the intended dimensions of the finished page after trimming<ul><li>$this->pagedim[$this->page]['TrimBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['TrimBox']['ury'] = upper-right y coordinate in points</li></ul></li><li>$this->pagedim[$this->page]['ArtBox'] : the extent of the page's meaningful content<ul><li>$this->pagedim[$this->page]['ArtBox']['llx'] = lower-left x coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['lly'] = lower-left y coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['urx'] = upper-right x coordinate in points</li><li>$this->pagedim[$this->page]['ArtBox']['ury'] = upper-right y coordinate in points</li></ul></li></ul>

public getPageDimensions([int|null $pagenum = null ]) : array<string|int, mixed>
Parameters
$pagenum : int|null = null

page number (empty = current page)

Tags
author

Nicola Asuni

public
since
4.5.027

(2009-03-16)

Return values
array<string|int, mixed>

of page dimensions.

getPageGroupAlias()

Return the alias for the total number of pages in the current page group.

public getPageGroupAlias() : string

If the current font is unicode type, the returned string is surrounded by additional curly braces. This alias will be replaced by the total number of pages in this group.

Tags
public
since
3.0.000

(2008-03-27)

Return values
string

alias of the current page group

getPageHeight()

Returns the page height in units.

public getPageHeight([int|null $pagenum = null ]) : int|float
Parameters
$pagenum : int|null = null

page number (empty = current page)

Tags
author

Nicola Asuni

public
since
1.5.2
see
getPageDimensions()
Return values
int|float

page height.

getPageNumGroupAlias()

Return the alias for the page number on the current page group.

public getPageNumGroupAlias() : string

If the current font is unicode type, the returned string is surrounded by additional curly braces. This alias will be replaced by the page number (relative to the belonging group).

Tags
public
since
4.5.000

(2009-01-02)

Return values
string

alias of the current page group

getPageRegions()

Return an array of no-write page regions

public getPageRegions() : array<string|int, mixed>
Tags
author

Nicola Asuni

public
since
5.9.003

(2010-10-13)

see

setPageRegions(), addPageRegion()

Return values
array<string|int, mixed>

of no-write page regions

getPageWidth()

Returns the page width in units.

public getPageWidth([int|null $pagenum = null ]) : int|float
Parameters
$pagenum : int|null = null

page number (empty = current page)

Tags
author

Nicola Asuni

public
since
1.5.2
see
getPageDimensions()
Return values
int|float

page width.

getPDFData()

Returns the PDF data.

public getPDFData() : mixed
Tags
public

getRawCharWidth()

Returns the length of the char in user unit for the current font.

public getRawCharWidth(int $char) : float
Parameters
$char : int

The char code whose length is to be returned

Tags
author

Nicola Asuni

public
since
5.9.000

(2010-09-28)

Return values
float

char width

getRTL()

Return the RTL status

public getRTL() : bool
Tags
public
since
4.0.012

(2008-07-24)

Return values
bool

getScaleFactor()

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

public getScaleFactor() : int
Tags
author

Nicola Asuni

public
since
1.5.2
Return values
int

scale factor.

getStringHeight()

This method return the estimated height needed for printing a simple text string using the Multicell() method.

public getStringHeight(float $w, string $txt[, bool $reseth = false ][, bool $autopadding = true ][, array<string|int, mixed>|null $cellpadding = null ][, mixed $border = 0 ]) : float

Generally, if you want to know the exact height for a block of content you can use the following alternative technique:

Parameters
$w : float

Width of cells. If 0, they extend up to the right margin of the page.

$txt : string

String for calculating his height

$reseth : bool = false

if true reset the last cell height (default false).

$autopadding : bool = true

if true, uses internal padding and automatically adjust it to account for line width (default true).

$cellpadding : array<string|int, mixed>|null = null

Internal cell padding, if empty uses default cell padding.

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

Tags
pre

// store current object $pdf->startTransaction(); // store starting values $start_y = $pdf->GetY(); $start_page = $pdf->getPage(); // call your printing functions with your parameters // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $pdf->MultiCell($w=0, $h=0, $txt, $border=1, $align='L', $fill=false, $ln=1, $x=null, $y=null, $reseth=true, $stretch=0, $ishtml=false, $autopadding=true, $maxh=0); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // get the new Y $end_y = $pdf->GetY(); $end_page = $pdf->getPage(); // calculate height $height = 0; if ($end_page == $start_page) { $height = $end_y - $start_y; } else { for ($page=$start_page; $page <= $end_page; ++$page) { $this->setPage($page); if ($page == $start_page) { // first page $height += $this->h - $start_y - $this->bMargin; } elseif ($page == $end_page) { // last page $height += $end_y - $this->tMargin; } else { $height += $this->h - $this->tMargin - $this->bMargin; } } } // restore previous object $pdf = $pdf->rollbackTransaction();

author

Nicola Asuni, Alexander Escalona Fern\E1ndez

public
Return values
float

Return the minimal height needed for multicell method for printing the $txt param.

GetStringWidth()

Returns the length of a string in user unit. A font must be selected.<br>

public GetStringWidth(string $s[, string $fontname = '' ][, string $fontstyle = '' ][, float $fontsize = 0 ][, bool $getarray = false ]) : array<string|int, float>|float
Parameters
$s : string

The string whose length is to be computed

$fontname : string = ''

Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained.

$fontstyle : string = ''

Font style. Possible values are (case insensitive):

  • empty string: regular
  • B: bold
  • I: italic
  • U: underline
  • D: line-through
  • O: overline
or any combination. The default value is regular.

$fontsize : float = 0

Font size in points. The default value is the current size.

$getarray : bool = false

if true returns an array of characters widths, if false returns the total length.

Tags
phpstan-return

($getarray is true ? float[] : float) total string length or array of characted widths

author

Nicola Asuni

public
since
1.2
Return values
array<string|int, float>|float

total string length or array of characted widths

getTextShadow()

Return the text shadow parameters array.

public getTextShadow() : array<string|int, mixed>
Tags
since
5.9.174

(2012-07-25)

public
Return values
array<string|int, mixed>

array of parameters.

GetX()

Returns the relative X value of current position.

public GetX() : float

The value is relative to the left border for LTR languages and to the right border for RTL languages.

Tags
public
since
1.2
see

SetX(), GetY(), SetY()

Return values
float

GetY()

Returns the ordinate of the current position.

public GetY() : float
Tags
public
since
1.0
see

SetY(), GetX(), SetX()

Return values
float

Gradient()

Output gradient.

public Gradient(int $type, array<string|int, mixed> $coords, array<string|int, mixed> $stops[, array<string|int, mixed> $background = array() ][, bool $antialias = false ]) : mixed
Parameters
$type : int

type of gradient (1 Function-based shading; 2 Axial shading; 3 Radial shading; 4 Free-form Gouraud-shaded triangle mesh; 5 Lattice-form Gouraud-shaded triangle mesh; 6 Coons patch mesh; 7 Tensor-product patch mesh). (Not all types are currently supported)

$coords : array<string|int, mixed>

array of coordinates.

$stops : array<string|int, mixed>

array gradient color components: color = array of GRAY, RGB or CMYK color components; offset = (0 to 1) represents a location along the gradient vector; exponent = exponent of the exponential interpolation function (default = 1).

$background : array<string|int, mixed> = array()

An array of colour components appropriate to the colour space, specifying a single background colour value.

$antialias : bool = false

A flag indicating whether to filter the shading function to prevent aliasing artifacts.

Tags
author

Nicola Asuni

since
3.1.000

(2008-06-09)

public

Header()

This method is used to render the page header.

public Header() : mixed

It is automatically called by AddPage() and could be overwritten in your own inherited class.

Tags
public

hyphenateText()

Returns text with soft hyphens.

public hyphenateText(string $text, mixed $patterns[, array<string|int, mixed> $dictionary = array() ][, int $leftmin = 1 ][, int $rightmin = 2 ][, int $charmin = 1 ][, int $charmax = 8 ]) : string
Parameters
$text : string

text to process

$patterns : mixed

Array of hypenation patterns or a TEX file containing hypenation patterns. TEX patterns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/

$dictionary : array<string|int, mixed> = array()

Array of words to be returned without applying the hyphenation algorithm.

$leftmin : int = 1

Minimum number of character to leave on the left of the word without applying the hyphens.

$rightmin : int = 2

Minimum number of character to leave on the right of the word without applying the hyphens.

$charmin : int = 1

Minimum word length to apply the hyphenation algorithm.

$charmax : int = 8

Maximum length of broken piece of word.

Tags
author

Nicola Asuni

since
4.9.012

(2010-04-12)

public
Return values
string

text with soft hyphens

Image()

Puts an image in the page.

public Image(string $file[, float|null $x = null ][, float|null $y = null ][, float $w = 0 ][, float $h = 0 ][, string $type = '' ][, mixed $link = '' ][, string $align = '' ][, mixed $resize = false ][, int $dpi = 300 ][, string $palign = '' ][, bool $ismask = false ][, mixed $imgmask = false ][, mixed $border = 0 ][, mixed $fitbox = false ][, bool $hidden = false ][, bool $fitonpage = false ][, bool $alt = false ][, array<string|int, mixed> $altimgs = array() ]) : mixed|false

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

  • explicit width and height (expressed in user unit)
  • one explicit dimension, the other being calculated automatically in order to keep the original proportions
  • no explicit dimension, in which case the image is put at 72 dpi
Supported formats are JPEG and PNG images whitout GD library and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM; 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 : string

Name of the file containing the image or a '@' character followed by the image data string. To link an image without embedding it on the document, set an asterisk character before the URL (i.e.: '*http://www.example.com/image.jpg').

$x : float|null = null

Abscissa of the upper-left corner (LTR) or upper-right corner (RTL).

$y : float|null = null

Ordinate of the upper-left corner (LTR) or upper-right corner (RTL).

$w : float = 0

Width of the image in the page. If not specified or equal to zero, it is automatically calculated.

$h : float = 0

Height of the image in the page. If not specified or equal to zero, it is automatically calculated.

$type : string = ''

Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension.

$link : mixed = ''

URL or identifier returned by AddLink().

$align : string = ''

Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

$resize : mixed = false

If true resize (reduce) the image to fit $w and $h (requires GD or ImageMagick library); if false do not resize; if 2 force resize in all cases (upscaling and downscaling).

$dpi : int = 300

dot-per-inch resolution used on resize

$palign : string = ''

Allows to center or align the image on the current line. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$ismask : bool = false

true if this image is a mask, false otherwise

$imgmask : mixed = false

image object returned by this function or false

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$fitbox : mixed = false

If not false scale image dimensions proportionally to fit within the ($w, $h) box. $fitbox can be true or a 2 characters string indicating the image alignment inside the box. The first character indicate the horizontal alignment (L = left, C = center, R = right) the second character indicate the vertical algnment (T = top, M = middle, B = bottom).

$hidden : bool = false

If true do not display the image.

$fitonpage : bool = false

If true the image is resized to not exceed page dimensions.

$alt : bool = false

If true the image will be added as alternative and not directly printed (the ID of the image will be returned).

$altimgs : array<string|int, mixed> = array()

Array of alternate images IDs. Each alternative image must be an array with two values: an integer representing the image ID (the value returned by the Image method) and a boolean value to indicate if the image is the default for printing.

Tags
public
since
1.1
Return values
mixed|false

image information

ImageEps()

Embed vector-based Adobe Illustrator (AI) or AI-compatible EPS files.

public ImageEps(string $file[, float|null $x = null ][, float|null $y = null ][, float $w = 0 ][, float $h = 0 ][, mixed $link = '' ][, bool $useBoundingBox = true ][, string $align = '' ][, string $palign = '' ][, mixed $border = 0 ][, bool $fitonpage = false ][, bool $fixoutvals = false ]) : mixed

NOTE: EPS is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of vector images using ImageMagick library. Only vector drawing is supported, not text or bitmap. Although the script was successfully tested with various AI format versions, best results are probably achieved with files that were exported in the AI3 format (tested with Illustrator CS2, Freehand MX and Photoshop CS2).

Parameters
$file : string

Name of the file containing the image or a '@' character followed by the EPS/AI data string.

$x : float|null = null

Abscissa of the upper-left corner.

$y : float|null = null

Ordinate of the upper-left corner.

$w : float = 0

Width of the image in the page. If not specified or equal to zero, it is automatically calculated.

$h : float = 0

Height of the image in the page. If not specified or equal to zero, it is automatically calculated.

$link : mixed = ''

URL or identifier returned by AddLink().

$useBoundingBox : bool = true

specifies whether to position the bounding box (true) or the complete canvas (false) at location (x,y). Default value is true.

$align : string = ''

Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

$palign : string = ''

Allows to center or align the image on the current line. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$fitonpage : bool = false

if true the image is resized to not exceed page dimensions.

$fixoutvals : bool = false

if true remove values outside the bounding box.

Tags
author

Valentin Schmidt, Nicola Asuni

since
3.1.000

(2008-06-09)

public

ImageSVG()

Embedd a Scalable Vector Graphics (SVG) image.

public ImageSVG(string $file[, float|null $x = null ][, float|null $y = null ][, float $w = 0 ][, float $h = 0 ][, mixed $link = '' ][, string $align = '' ][, string $palign = '' ][, mixed $border = 0 ][, bool $fitonpage = false ]) : mixed

NOTE: SVG standard is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of vector images using ImageMagick library.

Parameters
$file : string

Name of the SVG file or a '@' character followed by the SVG data string.

$x : float|null = null

Abscissa of the upper-left corner.

$y : float|null = null

Ordinate of the upper-left corner.

$w : float = 0

Width of the image in the page. If not specified or equal to zero, it is automatically calculated.

$h : float = 0

Height of the image in the page. If not specified or equal to zero, it is automatically calculated.

$link : mixed = ''

URL or identifier returned by AddLink().

$align : string = ''

Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line
If the alignment is an empty string, then the pointer will be restored on the starting SVG position.

$palign : string = ''

Allows to center or align the image on the current line. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$fitonpage : bool = false

if true the image is resized to not exceed page dimensions.

Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

public

importPDF()

Import an existing PDF document

public importPDF(string $filename) : void
Parameters
$filename : string

Filename of the PDF document to import.

Tags
public
since
1.0.000

(2011-05-24)

IncludeJS()

Adds a javascript

public IncludeJS(string $script) : mixed
Parameters
$script : string

Javascript code

Tags
public
author

Johannes G\FCntert, Nicola Asuni

since
2.1.002

(2008-02-12)

isCharDefined()

Return true in the character is present in the specified font.

public isCharDefined(mixed $char[, string $font = '' ][, string $style = '' ]) : bool
Parameters
$char : mixed

Character to check (integer value or string)

$font : string = ''

Font name (family name).

$style : string = ''

Font style.

Tags
public
since
5.9.153

(2012-03-28)

Return values
bool

true if the char is defined, false otherwise.

isRTLTextDir()

Return the current temporary RTL status

public isRTLTextDir() : bool
Tags
public
since
4.8.014

(2009-11-04)

Return values
bool

isUnicodeFont()

Return true if the current font is unicode type.

public isUnicodeFont() : bool
Tags
author

Nicola Asuni

public
since
5.8.002

(2010-08-14)

Return values
bool

true for unicode font, false otherwise.

lastPage()

Reset pointer to the last document page.

public lastPage([bool $resetmargins = false ]) : mixed
Parameters
$resetmargins : bool = false

if true reset left, right, top margins and Y position.

Tags
public
since
2.0.000

(2008-01-04)

see

setPage(), getPage(), getNumPages()

Line()

Draws a line between two points.

public Line(float $x1, float $y1, float $x2, float $y2[, array<string|int, mixed> $style = array() ]) : mixed
Parameters
$x1 : float

Abscissa of first point.

$y1 : float

Ordinate of first point.

$x2 : float

Abscissa of second point.

$y2 : float

Ordinate of second point.

$style : array<string|int, mixed> = array()

Line style. Array like for SetLineStyle(). Default value: default line style (empty array).

Tags
public
since
1.0
see

SetLineWidth(), SetDrawColor(), SetLineStyle()

LinearGradient()

Paints a linear colour gradient.

public LinearGradient(float $x, float $y, float $w, float $h[, array<string|int, mixed> $col1 = array() ][, array<string|int, mixed> $col2 = array() ][, array<string|int, mixed> $coords = array(0, 0, 1, 0) ]) : mixed
Parameters
$x : float

abscissa of the top left corner of the rectangle.

$y : float

ordinate of the top left corner of the rectangle.

$w : float

width of the rectangle.

$h : float

height of the rectangle.

$col1 : array<string|int, mixed> = array()

first color (Grayscale, RGB or CMYK components).

$col2 : array<string|int, mixed> = array()

second color (Grayscale, RGB or CMYK components).

$coords : array<string|int, mixed> = array(0, 0, 1, 0)

array of the form (x1, y1, x2, y2) which defines the gradient vector (see linear_gradient_coords.jpg). The default value is from left to right (x1=0, y1=0, x2=1, y2=0).

Tags
author

Andreas W\FCrmser, Nicola Asuni

since
3.1.000

(2008-06-09)

public

Puts a link on a rectangular area of the page.

public Link(float $x, float $y, float $w, float $h, mixed $link[, int $spaces = 0 ]) : mixed

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 : float

Abscissa of the upper-left corner of the rectangle

$y : float

Ordinate of the upper-left corner of the rectangle

$w : float

Width of the rectangle

$h : float

Height of the rectangle

$link : mixed

URL or identifier returned by AddLink()

$spaces : int = 0

number of spaces on the text to link

Tags
public
since
1.5
see

AddLink(), Annotation(), Cell(), Write(), Image()

ListBox()

Creates a List-box field

public ListBox(string $name, int $w, int $h, array<string|int, mixed> $values[, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

field name

$w : int

width

$h : int

height

$values : array<string|int, mixed>

array containing the list of values.

$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

annotation parameters. Possible values are described on official PDF32000_2008 reference.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

if true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Ln()

Performs a line break.

public Ln([float|null $h = null ][, bool $cell = false ]) : mixed

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

Parameters
$h : float|null = null

The height of the break. By default, the value equals the height of the last printed cell.

$cell : bool = false

if true add the current left (or right o for RTL) padding to the X coordinate

Tags
public
since
1.0
see
Cell()

MirrorH()

Horizontal Mirroring.

public MirrorH([float|null $x = null ]) : mixed
Parameters
$x : float|null = null

abscissa of the point. Default is current x position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

MirrorL()

Reflection against a straight line through point (x, y) with the gradient angle (angle).

public MirrorL([float $angle = 0 ][, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$angle : float = 0

gradient angle of the straight line. Default is 0 (horizontal line).

$x : float|null = null

abscissa of the point. Default is current x position

$y : float|null = null

ordinate of the point. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

MirrorP()

Point reflection mirroring.

public MirrorP([float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$x : float|null = null

abscissa of the point. Default is current x position

$y : float|null = null

ordinate of the point. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

MirrorV()

Verical Mirroring.

public MirrorV([float|null $y = null ]) : mixed
Parameters
$y : float|null = null

ordinate of the point. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

movePage()

Move a page to a previous position.

public movePage(int $frompage, int $topage) : bool
Parameters
$frompage : int

number of the source page

$topage : int

number of the destination page (must be less than $frompage)

Tags
public
since
4.5.000

(2009-01-02)

Return values
bool

true in case of success, false in case of error.

MultiCell()

This method allows printing text with line breaks.

public MultiCell(float $w, float $h, string $txt[, mixed $border = 0 ][, string $align = 'J' ][, bool $fill = false ][, int $ln = 1 ][, float|null $x = null ][, float|null $y = null ][, bool $reseth = true ][, int $stretch = 0 ][, bool $ishtml = false ][, bool $autopadding = true ][, float $maxh = 0 ][, string $valign = 'T' ][, bool $fitcell = false ]) : int

They can be automatic (as soon as the text reaches the right border of the cell) or explicit (via the \n 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 : float

Width of cells. If 0, they extend up to the right margin of the page.

$h : float

Cell minimum height. The cell extends automatically if needed.

$txt : string

String to print

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$align : string = 'J'

Allows to center or align the text. Possible values are:

  • L or empty string: left align
  • C: center
  • R: right align
  • J: justification (default value when $ishtml=false)

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$ln : int = 1

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 [DEFAULT]
  • 2: below

$x : float|null = null

x position in user units

$y : float|null = null

y position in user units

$reseth : bool = true

if true reset the last cell height (default true).

$stretch : int = 0

font stretch mode:

  • 0 = disabled
  • 1 = horizontal scaling only if text is larger than cell width
  • 2 = forced horizontal scaling to fit cell width
  • 3 = character spacing only if text is larger than cell width
  • 4 = forced character spacing to fit cell width
General font stretching and scaling values will be preserved when possible.

$ishtml : bool = false

INTERNAL USE ONLY -- set to true if $txt is HTML content (default = false). Never set this parameter to true, use instead writeHTMLCell() or writeHTML() methods.

$autopadding : bool = true

if true, uses internal padding and automatically adjust it to account for line width.

$maxh : float = 0

maximum height. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. This feature works only when $ishtml=false.

$valign : string = 'T'

Vertical alignment of text (requires $maxh = $h > 0). Possible values are:

  • T: TOP
  • M: middle
  • B: bottom
. This feature works only when $ishtml=false and the cell must fit in a single page.

$fitcell : bool = false

if true attempt to fit all the text within the cell by reducing the font size (do not work in HTML mode). $maxh must be greater than 0 and equal to $h.

Tags
public
since
1.3
see

SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), Cell(), Write(), SetAutoPageBreak()

Return values
int

Return the number of cells or 1 for html mode.

Open()

This method begins the generation of the PDF document.

public Open() : mixed

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

Tags
public
since
1.0
see

AddPage(), Close()

Output()

Send the document to a given destination: string, local file or browser.

public Output([string $name = 'doc.pdf' ][, string $dest = 'I' ]) : string

In the last case, the plug-in may be used (if present) or a download ("Save as" dialog box) may be forced.
The method first calls Close() if necessary to terminate the document.

Parameters
$name : string = 'doc.pdf'

The name of the file when saved

$dest : string = 'I'

Destination where to send the document. It can take one of the following values:

  • I: send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF.
  • D: send to the browser and force a file download with the name given by name.
  • F: save to a local server file with the name given by name.
  • S: return the document as a string (name is ignored).
  • FI: equivalent to F + I option
  • FD: equivalent to F + D option
  • E: return the document as base64 mime multi-part email attachment (RFC 2045)

Tags
public
since
1.0
see
Close()
Return values
string

PageNo()

Returns the current page number.

public PageNo() : int
Tags
public
since
1.0
see
getAliasNbPages()
Return values
int

page number

PageNoFormatted()

Returns the current page number formatted as a string.

public PageNoFormatted() : mixed
Tags
public
since
4.2.005

(2008-11-06)

see

PaneNo(), formatPageNumber()

PieSector()

Draw the sector of a circle.

public PieSector(float $xc, float $yc, float $r, float $a, float $b[, string $style = 'FD' ][, float $cw = true ][, float $o = 90 ]) : mixed

It can be used for instance to render pie charts.

Parameters
$xc : float

abscissa of the center.

$yc : float

ordinate of the center.

$r : float

radius.

$a : float

start angle (in degrees).

$b : float

end angle (in degrees).

$style : string = 'FD'

Style of rendering. See the getPathPaintOperator() function for more information.

$cw : float = true

indicates whether to go clockwise (default: true).

$o : float = 90

origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock). Default: 90.

Tags
author

Maxime Delorme, Nicola Asuni

since
3.1.000

(2008-06-09)

public

PieSectorXY()

Draw the sector of an ellipse.

public PieSectorXY(float $xc, float $yc, float $rx, float $ry, float $a, float $b[, string $style = 'FD' ][, float $cw = false ][, float $o = 0 ][, int $nc = 2 ]) : mixed

It can be used for instance to render pie charts.

Parameters
$xc : float

abscissa of the center.

$yc : float

ordinate of the center.

$rx : float

the x-axis radius.

$ry : float

the y-axis radius.

$a : float

start angle (in degrees).

$b : float

end angle (in degrees).

$style : string = 'FD'

Style of rendering. See the getPathPaintOperator() function for more information.

$cw : float = false

indicates whether to go clockwise.

$o : float = 0

origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock).

$nc : int = 2

Number of curves used to draw a 90 degrees portion of arc.

Tags
author

Maxime Delorme, Nicola Asuni

since
3.1.000

(2008-06-09)

public

pixelsToUnits()

Converts pixels to User's Units.

public pixelsToUnits(int $px) : float
Parameters
$px : int

pixels

Tags
public
see

setImageScale(), getImageScale()

Return values
float

value in user's unit

Polycurve()

Draws a poly-Bezier curve.

public Polycurve(float $x0, float $y0, array<string|int, float> $segments[, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed

Each Bezier curve segment is a tangent to the line between the control points at either end of the curve.

Parameters
$x0 : float

Abscissa of start point.

$y0 : float

Ordinate of start point.

$segments : array<string|int, float>

An array of bezier descriptions. Format: array(x1, y1, x2, y2, x3, y3).

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of curve. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
public
see
SetLineStyle()
since
3.0008

(2008-05-12)

Polygon()

Draws a polygon.

public Polygon(array<string|int, mixed> $p[, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ][, bool $closed = true ]) : mixed
Parameters
$p : array<string|int, mixed>

Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1))

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of polygon. Array with keys among the following:

  • all: Line style of all lines. Array like for SetLineStyle().
  • 0 to ($np - 1): Line style of each line. Array like for SetLineStyle().
If a key is not present or is null, not draws the line. Default value is default line style (empty array).
$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

$closed : bool = true

if true the polygon is closes, otherwise will remain open

Tags
public
since
2.1.000

(2008-01-08)

PolyLine()

Draws a polygonal line

public PolyLine(array<string|int, mixed> $p[, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed
Parameters
$p : array<string|int, mixed>

Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1))

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of polygon. Array with keys among the following:

  • all: Line style of all lines. Array like for SetLineStyle().
  • 0 to ($np - 1): Line style of each line. Array like for SetLineStyle().
If a key is not present or is null, not draws the line. Default value is default line style (empty array).
$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
since
4.8.003

(2009-09-15)

public

printTemplate()

Print an XObject Template.

public printTemplate(string $id[, float|null $x = null ][, float|null $y = null ][, float $w = 0 ][, float $h = 0 ][, string $align = '' ][, string $palign = '' ][, bool $fitonpage = false ]) : mixed

You can print an XObject Template inside the currently opened Template. An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked.

Parameters
$id : string

The ID of XObject Template to print.

$x : float|null = null

X position in user units (empty string = current x position)

$y : float|null = null

Y position in user units (empty string = current y position)

$w : float = 0

Width in user units (zero = remaining page width)

$h : float = 0

Height in user units (zero = remaining page height)

$align : string = ''

Indicates the alignment of the pointer next to template insertion relative to template height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

$palign : string = ''

Allows to center or align the template on the current line. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$fitonpage : bool = false

If true the template is resized to not exceed page dimensions.

Tags
author

Nicola Asuni

public
since
5.8.017

(2010-08-24)

see

startTemplate(), endTemplate()

RadialGradient()

Paints a radial colour gradient.

public RadialGradient(float $x, float $y, float $w, float $h[, array<string|int, mixed> $col1 = array() ][, array<string|int, mixed> $col2 = array() ][, array<string|int, mixed> $coords = array(0.5, 0.5, 0.5, 0.5, 1) ]) : mixed
Parameters
$x : float

abscissa of the top left corner of the rectangle.

$y : float

ordinate of the top left corner of the rectangle.

$w : float

width of the rectangle.

$h : float

height of the rectangle.

$col1 : array<string|int, mixed> = array()

first color (Grayscale, RGB or CMYK components).

$col2 : array<string|int, mixed> = array()

second color (Grayscale, RGB or CMYK components).

$coords : array<string|int, mixed> = array(0.5, 0.5, 0.5, 0.5, 1)

array of the form (fx, fy, cx, cy, r) where (fx, fy) is the starting point of the gradient with color1, (cx, cy) is the center of the circle with color2, and r is the radius of the circle (see radial_gradient_coords.jpg). (fx, fy) should be inside the circle, otherwise some areas will not be defined.

Tags
author

Andreas W\FCrmser, Nicola Asuni

since
3.1.000

(2008-06-09)

public

RadioButton()

Creates a RadioButton field.

public RadioButton(string $name, int $w[, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, string $onvalue = 'On' ][, bool $checked = false ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

Field name.

$w : int

Width of the radio button.

$prop : array<string|int, mixed> = array()

Javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

Annotation parameters. Possible values are described on official PDF32000_2008 reference.

$onvalue : string = 'On'

Value to be returned if selected.

$checked : bool = false

Define the initial state.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

If true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Rect()

Draws a rectangle.

public Rect(float $x, float $y, float $w, float $h[, string $style = '' ][, array<string|int, mixed> $border_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed
Parameters
$x : float

Abscissa of upper-left corner.

$y : float

Ordinate of upper-left corner.

$w : float

Width.

$h : float

Height.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$border_style : array<string|int, mixed> = array()

Border style of rectangle. Array with keys among the following:

  • all: Line style of all borders. Array like for SetLineStyle().
  • L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for SetLineStyle().
If a key is not present or is null, the correspondent border is not drawn. Default value: default line style (empty array).
$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
public
since
1.0
see
SetLineStyle()

registrationMark()

Paints a registration mark

public registrationMark(float $x, float $y, float $r[, bool $double = false ][, array<string|int, mixed> $cola = array(100, 100, 100, 100, 'All') ][, array<string|int, mixed> $colb = array(0, 0, 0, 0, 'None') ]) : mixed
Parameters
$x : float

abscissa of the registration mark center.

$y : float

ordinate of the registration mark center.

$r : float

radius of the crop mark.

$double : bool = false

if true print two concentric crop marks.

$cola : array<string|int, mixed> = array(100, 100, 100, 100, 'All')

crop mark color (default spot registration color 'All').

$colb : array<string|int, mixed> = array(0, 0, 0, 0, 'None')

second crop mark color (default spot registration color 'None').

Tags
author

Nicola Asuni

since
4.9.000

(2010-03-26)

public

registrationMarkCMYK()

Paints a CMYK registration mark

public registrationMarkCMYK(float $x, float $y, float $r) : mixed
Parameters
$x : float

abscissa of the registration mark center.

$y : float

ordinate of the registration mark center.

$r : float

radius of the crop mark.

Tags
author

Nicola Asuni

since
6.0.038

(2013-09-30)

public

RegularPolygon()

Draws a regular polygon.

public RegularPolygon(float $x0, float $y0, float $r, int $ns[, float $angle = 0 ][, bool $draw_circle = false ][, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ][, string $circle_style = '' ][, array<string|int, mixed> $circle_outLine_style = array() ][, array<string|int, mixed> $circle_fill_color = array() ]) : mixed
Parameters
$x0 : float

Abscissa of center point.

$y0 : float

Ordinate of center point.

$r : float

Radius of inscribed circle.

$ns : int

Number of sides.

$angle : float = 0

Angle oriented (anti-clockwise). Default value: 0.

$draw_circle : bool = false

Draw inscribed circle or not. Default value: false.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of polygon sides. Array with keys among the following:

  • all: Line style of all sides. Array like for SetLineStyle().
  • 0 to ($ns - 1): Line style of each side. Array like for SetLineStyle().
If a key is not present or is null, not draws the side. Default value is default line style (empty array).
$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(red, green, blue). Default value: default color (empty array).

$circle_style : string = ''

Style of rendering of inscribed circle (if draws). Possible values are:

  • D or empty string: Draw (default).
  • F: Fill.
  • DF or FD: Draw and fill.
  • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
  • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
$circle_outLine_style : array<string|int, mixed> = array()

Line style of inscribed circle (if draws). Array like for SetLineStyle(). Default value: default line style (empty array).

$circle_fill_color : array<string|int, mixed> = array()

Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array).

Tags
public
since
2.1.000

(2008-01-08)

removePageRegion()

Remove a single no-write region.

public removePageRegion(int $key) : mixed
Parameters
$key : int

region key

Tags
author

Nicola Asuni

public
since
5.9.003

(2010-10-13)

see

setPageRegions(), getPageRegions()

replaceMissingChars()

Replace missing font characters on selected font with specified substitutions.

public replaceMissingChars(string $text[, string $font = '' ][, string $style = '' ][, array<string|int, mixed> $subs = array() ]) : string
Parameters
$text : string

Text to process.

$font : string = ''

Font name (family name).

$style : string = ''

Font style.

$subs : array<string|int, mixed> = array()

Array of possible character substitutions. The key is the character to check (integer value) and the value is a single intege value or an array of possible substitutes.

Tags
public
since
5.9.153

(2012-03-28)

Return values
string

Processed text.

resetColumns()

Remove columns and reset page margins.

public resetColumns() : mixed
Tags
public
since
5.9.072

(2011-04-26)

resetHeaderTemplate()

Reset the xobject template used by Header() method.

public resetHeaderTemplate() : mixed
Tags
public

resetLastH()

Reset the last cell height.

public resetLastH() : mixed
Tags
public
since
5.9.000

(2010-10-03)

rollbackTransaction()

This method allows to undo the latest transaction by returning the latest saved TCPDF object with startTransaction().

public rollbackTransaction([bool $self = false ]) : TCPDF
Parameters
$self : bool = false

if true restores current class object to previous state without the need of reassignment via the returned value.

Tags
public
since
4.5.029

(2009-03-19)

Return values
TCPDF

object.

Rotate()

Rotate object.

public Rotate(float $angle[, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$angle : float

angle in degrees for counter-clockwise rotation

$x : float|null = null

abscissa of the rotation center. Default is current x position

$y : float|null = null

ordinate of the rotation center. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

RoundedRect()

Draws a rounded rectangle.

public RoundedRect(float $x, float $y, float $w, float $h, float $r[, string $round_corner = '1111' ][, string $style = '' ][, array<string|int, mixed> $border_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed
Parameters
$x : float

Abscissa of upper-left corner.

$y : float

Ordinate of upper-left corner.

$w : float

Width.

$h : float

Height.

$r : float

the radius of the circle used to round off the corners of the rectangle.

$round_corner : string = '1111'

Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top right, bottom right, bottom left and top left. Default value: all rounded corner ("1111").

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$border_style : array<string|int, mixed> = array()

Border style of rectangle. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
public
since
2.1.000

(2008-01-08)

RoundedRectXY()

Draws a rounded rectangle.

public RoundedRectXY(float $x, float $y, float $w, float $h, float $rx, float $ry[, string $round_corner = '1111' ][, string $style = '' ][, array<string|int, mixed> $border_style = array() ][, array<string|int, mixed> $fill_color = array() ]) : mixed
Parameters
$x : float

Abscissa of upper-left corner.

$y : float

Ordinate of upper-left corner.

$w : float

Width.

$h : float

Height.

$rx : float

the x-axis radius of the ellipse used to round off the corners of the rectangle.

$ry : float

the y-axis radius of the ellipse used to round off the corners of the rectangle.

$round_corner : string = '1111'

Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top right, bottom right, bottom left and top left. Default value: all rounded corner ("1111").

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$border_style : array<string|int, mixed> = array()

Border style of rectangle. Array like for SetLineStyle(). Default value: default line style (empty array).

$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array).

Tags
public
since
4.9.019

(2010-04-22)

Scale()

Vertical and horizontal non-proportional Scaling.

public Scale(float $s_x, float $s_y[, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$s_x : float

scaling factor for width as percent. 0 is not allowed.

$s_y : float

scaling factor for height as percent. 0 is not allowed.

$x : float|null = null

abscissa of the scaling center. Default is current x position

$y : float|null = null

ordinate of the scaling center. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

ScaleX()

Horizontal Scaling.

public ScaleX(float $s_x[, int $x = '' ][, int $y = '' ]) : mixed
Parameters
$s_x : float

scaling factor for width as percent. 0 is not allowed.

$x : int = ''

abscissa of the scaling center. Default is current x position

$y : int = ''

ordinate of the scaling center. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

ScaleXY()

Vertical and horizontal proportional Scaling.

public ScaleXY(float $s[, int $x = '' ][, int $y = '' ]) : mixed
Parameters
$s : float

scaling factor for width and height as percent. 0 is not allowed.

$x : int = ''

abscissa of the scaling center. Default is current x position

$y : int = ''

ordinate of the scaling center. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

ScaleY()

Vertical Scaling.

public ScaleY(float $s_y[, int $x = '' ][, int $y = '' ]) : mixed
Parameters
$s_y : float

scaling factor for height as percent. 0 is not allowed.

$x : int = ''

abscissa of the scaling center. Default is current x position

$y : int = ''

ordinate of the scaling center. Default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

selectColumn()

Set position at a given column

public selectColumn([int|null $col = null ]) : mixed
Parameters
$col : int|null = null

column number (from 0 to getNumberOfColumns()-1); empty string = current column.

Tags
public
since
4.9.001

(2010-03-28)

serializeTCPDFtag()

Serialize data to be used with TCPDF tag in HTML code.

public serializeTCPDFtag(string $method[, array<string|int, mixed> $params = array() ]) : string
Parameters
$method : string

TCPDF method name

$params : array<string|int, mixed> = array()

Method parameters

Tags
public

static

Return values
string

Serialized data

setAbsX()

Set the absolute X coordinate of the current pointer.

public setAbsX(float $x) : mixed
Parameters
$x : float

The value of the abscissa in user units.

Tags
public
since
5.9.186

(2012-09-13)

see

setAbsX(), setAbsY(), SetAbsXY()

setAbsXY()

Set the absolute X and Y coordinates of the current pointer.

public setAbsXY(float $x, float $y) : mixed
Parameters
$x : float

The value of the abscissa in user units.

$y : float

(float) The value of the ordinate in user units.

Tags
public
since
5.9.186

(2012-09-13)

see

setAbsX(), setAbsY(), SetAbsXY()

setAbsY()

Set the absolute Y coordinate of the current pointer.

public setAbsY(float $y) : mixed
Parameters
$y : float

(float) The value of the ordinate in user units.

Tags
public
since
5.9.186

(2012-09-13)

see

setAbsX(), setAbsY(), SetAbsXY()

setAllowLocalFiles()

Whether to allow local file path in image html tags, when prefixed with file://

public setAllowLocalFiles(bool $allowLocalFiles) : mixed
Parameters
$allowLocalFiles : bool

true, when local files should be allowed. Otherwise false.

Tags
public
since
6.4

setAlpha()

Set alpha for stroking (CA) and non-stroking (ca) operations.

public setAlpha([float $stroking = 1 ][, string $bm = 'Normal' ][, float|null $nonstroking = null ][, bool $ais = false ]) : mixed
Parameters
$stroking : float = 1

Alpha value for stroking operations: real value from 0 (transparent) to 1 (opaque).

$bm : string = 'Normal'

blend mode, one of the following: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity

$nonstroking : float|null = null

Alpha value for non-stroking operations: real value from 0 (transparent) to 1 (opaque).

$ais : bool = false
Tags
public
since
3.0.000

(2008-03-27)

setAuthor()

Defines the author of the document.

public setAuthor(string $author) : mixed
Parameters
$author : string

The name of the author.

Tags
public
since
1.2
see

SetCreator(), SetKeywords(), SetSubject(), SetTitle()

setAutoPageBreak()

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.

public setAutoPageBreak(bool $auto[, float $margin = 0 ]) : mixed
Parameters
$auto : bool

Boolean indicating if mode should be on or off.

$margin : float = 0

Distance from the bottom of the page.

Tags
public
since
1.0
see

Cell(), MultiCell(), AcceptPageBreak()

setBarcode()

Set document barcode.

public setBarcode([string $bc = '' ]) : mixed
Parameters
$bc : string = ''

barcode

Tags
public

setBooklet()

Set the booklet mode for double-sided pages.

public setBooklet([bool $booklet = true ][, float $inner = -1 ][, float $outer = -1 ]) : mixed
Parameters
$booklet : bool = true

true set the booklet mode on, false otherwise.

$inner : float = -1

Inner page margin.

$outer : float = -1

Outer page margin.

Tags
public
since
4.2.000

(2008-10-29)

setBookmark()

Adds a bookmark - alias for Bookmark().

public setBookmark(string $txt[, int $level = 0 ][, float $y = -1 ][, int|string $page = '' ][, string $style = '' ][, array<string|int, mixed> $color = array(0, 0, 0) ][, float $x = -1 ][, mixed $link = '' ]) : mixed
Parameters
$txt : string

Bookmark description.

$level : int = 0

Bookmark level (minimum value is 0).

$y : float = -1

Y position in user units of the bookmark on the selected page (default = -1 = current position; 0 = page start;).

$page : int|string = ''

Target page number (leave empty for current page). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.

$style : string = ''

Font style: B = Bold, I = Italic, BI = Bold + Italic.

$color : array<string|int, mixed> = array(0, 0, 0)

RGB color array (values from 0 to 255).

$x : float = -1

X position in user units of the bookmark on the selected page (default = -1 = current position;).

$link : mixed = ''

URL, or numerical link ID, or named destination (# character followed by the destination name), or embedded file (* character followed by the file name).

Tags
public

setCellHeightRatio()

Set the height of the cell (line height) respect the font height.

public setCellHeightRatio(float $h) : mixed
Parameters
$h : float

cell proportion respect font height (typical value = 1.25).

Tags
public
since
3.0.014

(2008-06-04)

setCellMargins()

Set the internal Cell margins.

public setCellMargins([int|float|null $left = null ][, int|float|null $top = null ][, int|float|null $right = null ][, int|float|null $bottom = null ]) : mixed
Parameters
$left : int|float|null = null

left margin

$top : int|float|null = null

top margin

$right : int|float|null = null

right margin

$bottom : int|float|null = null

bottom margin

Tags
public
since
5.9.000

(2010-10-03)

see
getCellMargins()

setCellPadding()

Set the same internal Cell padding for top, right, bottom, left-

public setCellPadding(int|float $pad) : mixed
Parameters
$pad : int|float

internal padding.

Tags
public
since
2.1.000

(2008-01-09)

see

getCellPaddings(), setCellPaddings()

setCellPaddings()

Set the internal Cell paddings.

public setCellPaddings([int|float|null $left = null ][, int|float|null $top = null ][, int|float|null $right = null ][, int|float|null $bottom = null ]) : mixed
Parameters
$left : int|float|null = null

left padding

$top : int|float|null = null

top padding

$right : int|float|null = null

right padding

$bottom : int|float|null = null

bottom padding

Tags
public
since
5.9.000

(2010-10-03)

see

getCellPaddings(), SetCellPadding()

setColor()

Defines the color used by the specified type ('draw', 'fill', 'text').

public setColor(string $type[, float $col1 = 0 ][, float $col2 = -1 ][, float $col3 = -1 ][, float $col4 = -1 ][, bool $ret = false ][, string $name = '' ]) : string
Parameters
$type : string

Type of object affected by this color: ('draw', 'fill', 'text').

$col1 : float = 0

GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100).

$col2 : float = -1

GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100).

$col3 : float = -1

BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100).

$col4 : float = -1

KEY (BLACK) color for CMYK (0-100).

$ret : bool = false

If true do not send the command.

$name : string = ''

spot color name (if any)

Tags
public
since
5.9.125

(2011-10-03)

Return values
string

The PDF command or empty string.

setColorArray()

Set the color array for the specified type ('draw', 'fill', 'text').

public setColorArray(string $type, array<string|int, mixed> $color[, bool $ret = false ]) : string

It can be expressed in RGB, CMYK or GRAY SCALE components. The method can be called before the first page is created and the value is retained from page to page.

Parameters
$type : string

Type of object affected by this color: ('draw', 'fill', 'text').

$color : array<string|int, mixed>

Array of colors (1=gray, 3=RGB, 4=CMYK or 5=spotcolor=CMYK+name values).

$ret : bool = false

If true do not send the PDF command.

Tags
public
since
3.1.000

(2008-06-11)

Return values
string

The PDF command or empty string.

setColumnsArray()

Set columns array.

public setColumnsArray(array<string|int, mixed> $columns) : mixed

Each column is represented by an array of arrays with the following keys: (w = width, s = space between columns, y = column top position).

Parameters
$columns : array<string|int, mixed>
Tags
public
since
4.9.001

(2010-03-28)

setCompression()

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.

public setCompression([bool $compress = true ]) : mixed

Note: the Zlib extension is required for this feature. If not present, compression will be turned off.

Parameters
$compress : bool = true

Boolean indicating if compression must be enabled.

Tags
public
since
1.4

setCreator()

Defines the creator of the document. This is typically the name of the application that generates the PDF.

public setCreator(string $creator) : mixed
Parameters
$creator : string

The name of the creator.

Tags
public
since
1.2
see

SetAuthor(), SetKeywords(), SetSubject(), SetTitle()

setDefaultMonospacedFont()

Defines the default monospaced font.

public setDefaultMonospacedFont(string $font) : mixed
Parameters
$font : string

Font name.

Tags
public
since
4.5.025

setDefaultTableColumns()

Set the default number of columns in a row for HTML tables.

public setDefaultTableColumns([int $cols = 4 ]) : mixed
Parameters
$cols : int = 4

number of columns

Tags
public
since
3.0.014

(2008-06-04)

setDestination()

Add a Named Destination.

public setDestination(string $name[, float $y = -1 ][, int|string $page = '' ][, float $x = -1 ]) : string|false

NOTE: destination names are unique, so only last entry will be saved.

Parameters
$name : string

Destination name.

$y : float = -1

Y position in user units of the destiantion on the selected page (default = -1 = current position; 0 = page start;).

$page : int|string = ''

Target page number (leave empty for current page). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.

$x : float = -1

X position in user units of the destiantion on the selected page (default = -1 = current position;).

Tags
public
author

Christian Deligant, Nicola Asuni

since
5.9.097

(2011-06-23)

Return values
string|false

Stripped named destination identifier or false in case of error.

setDisplayMode()

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

public setDisplayMode(mixed $zoom[, string $layout = 'SinglePage' ][, string $mode = 'UseNone' ]) : mixed
Parameters
$zoom : mixed

The zoom to use. It can be one of the following string values or a number indicating the zooming factor to use.

  • fullpage: displays the entire page on screen
  • fullwidth: uses maximum width of window
  • real: uses real size (equivalent to 100% zoom)
  • default: uses viewer default mode

$layout : string = 'SinglePage'

The page layout. Possible values are:

  • SinglePage Display one page at a time
  • OneColumn Display the pages in one column
  • TwoColumnLeft Display the pages in two columns, with odd-numbered pages on the left
  • TwoColumnRight Display the pages in two columns, with odd-numbered pages on the right
  • TwoPageLeft (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left
  • TwoPageRight (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right

$mode : string = 'UseNone'

A name object specifying how the document should be displayed when opened:

  • UseNone Neither document outline nor thumbnail images visible
  • UseOutlines Document outline visible
  • UseThumbs Thumbnail images visible
  • FullScreen Full-screen mode, with no menu bar, window controls, or any other window visible
  • UseOC (PDF 1.5) Optional content group panel visible
  • UseAttachments (PDF 1.6) Attachments panel visible

Tags
public
since
1.2

setDocCreationTimestamp()

Set the document creation timestamp

public setDocCreationTimestamp(mixed $time) : mixed
Parameters
$time : mixed

Document creation timestamp in seconds or date-time string.

Tags
public
since
5.9.152

(2012-03-23)

setDocInfoUnicode()

Turn on/off Unicode mode for document information dictionary (meta tags).

public setDocInfoUnicode([bool $unicode = true ]) : mixed

This has effect only when unicode mode is set to false.

Parameters
$unicode : bool = true

if true set the meta information in Unicode

Tags
since
5.9.027

(2010-12-01)

public

setDocModificationTimestamp()

Set the document modification timestamp

public setDocModificationTimestamp(mixed $time) : mixed
Parameters
$time : mixed

Document modification timestamp in seconds or date-time string.

Tags
public
since
5.9.152

(2012-03-23)

setDrawColor()

Defines the color used for all drawing operations (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.

public setDrawColor([float $col1 = 0 ][, float $col2 = -1 ][, float $col3 = -1 ][, float $col4 = -1 ][, bool $ret = false ][, string $name = '' ]) : string
Parameters
$col1 : float = 0

GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100).

$col2 : float = -1

GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100).

$col3 : float = -1

BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100).

$col4 : float = -1

KEY (BLACK) color for CMYK (0-100).

$ret : bool = false

If true do not send the command.

$name : string = ''

spot color name (if any)

Tags
public
since
1.3
see

SetDrawColorArray(), SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()

Return values
string

the PDF command

setDrawColorArray()

Defines the color used for all drawing operations (lines, rectangles and cell borders).

public setDrawColorArray(array<string|int, mixed> $color[, bool $ret = false ]) : string

It can be expressed in RGB, CMYK or GRAY SCALE components. The method can be called before the first page is created and the value is retained from page to page.

Parameters
$color : array<string|int, mixed>

Array of colors (1, 3 or 4 values).

$ret : bool = false

If true do not send the PDF command.

Tags
public
since
3.1.000

(2008-06-11)

see
SetDrawColor()
Return values
string

the PDF command

setDrawSpotColor()

Defines the spot color used for all drawing operations (lines, rectangles and cell borders).

public setDrawSpotColor(string $name[, float $tint = 100 ]) : mixed
Parameters
$name : string

Name of the spot color.

$tint : float = 100

Intensity of the color (from 0 to 100 ; 100 = full intensity by default).

Tags
public
since
4.0.024

(2008-09-12)

see

AddSpotColor(), SetFillSpotColor(), SetTextSpotColor()

setEqualColumns()

Set multiple columns of the same size

public setEqualColumns([int $numcols = 0 ][, int $width = 0 ][, int|null $y = null ]) : mixed
Parameters
$numcols : int = 0

number of columns (set to zero to disable columns mode)

$width : int = 0

column width

$y : int|null = null

column starting Y position (leave empty for current Y position)

Tags
public
since
4.9.001

(2010-03-28)

setExtraXMP()

Set additional XMP data to be added on the default XMP data just before the end of "x:xmpmeta" tag.

public setExtraXMP(string $xmp) : mixed

IMPORTANT: This data is added as-is without controls, so you have to validate your data before using this method!

Parameters
$xmp : string

Custom XMP data.

Tags
since
5.9.128

(2011-10-06)

public

setExtraXMPRDF()

Set additional XMP data to be added on the default XMP data just before the end of "rdf:RDF" tag.

public setExtraXMPRDF(string $xmp) : mixed

IMPORTANT: This data is added as-is without controls, so you have to validate your data before using this method!

Parameters
$xmp : string

Custom XMP RDF data.

Tags
since
6.3.0

(2019-09-19)

public

setFillColor()

Defines the color used for all filling operations (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.

public setFillColor([float $col1 = 0 ][, float $col2 = -1 ][, float $col3 = -1 ][, float $col4 = -1 ][, bool $ret = false ][, string $name = '' ]) : string
Parameters
$col1 : float = 0

GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100).

$col2 : float = -1

GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100).

$col3 : float = -1

BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100).

$col4 : float = -1

KEY (BLACK) color for CMYK (0-100).

$ret : bool = false

If true do not send the command.

$name : string = ''

Spot color name (if any).

Tags
public
since
1.3
see

SetFillColorArray(), SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()

Return values
string

The PDF command.

setFillColorArray()

Defines the color used for all filling operations (filled rectangles and cell backgrounds).

public setFillColorArray(array<string|int, mixed> $color[, bool $ret = false ]) : mixed

It can be expressed in RGB, CMYK or GRAY SCALE components. The method can be called before the first page is created and the value is retained from page to page.

Parameters
$color : array<string|int, mixed>

Array of colors (1, 3 or 4 values).

$ret : bool = false

If true do not send the PDF command.

Tags
public
since
3.1.000

(2008-6-11)

see
SetFillColor()

setFillSpotColor()

Defines the spot color used for all filling operations (filled rectangles and cell backgrounds).

public setFillSpotColor(string $name[, float $tint = 100 ]) : mixed
Parameters
$name : string

Name of the spot color.

$tint : float = 100

Intensity of the color (from 0 to 100 ; 100 = full intensity by default).

Tags
public
since
4.0.024

(2008-09-12)

see

AddSpotColor(), SetDrawSpotColor(), SetTextSpotColor()

setFont()

Sets the font used to print character strings.

public setFont(string $family[, string $style = '' ][, float|null $size = null ][, string $fontfile = '' ][, mixed $subset = 'default' ][, bool $out = true ]) : mixed

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(). Note: for the standard fonts, the font metric files must be accessible. There are three possibilities for this:

  • They are in the current directory (the one where the running script lies)
  • They are in one of the directories defined by the include_path parameter
  • They are in the directory defined by the K_PATH_FONTS constant

Parameters
$family : string

Family font. It can be either a name defined by AddFont() or one of the standard Type1 families (case insensitive):

  • times (Times-Roman)
  • timesb (Times-Bold)
  • timesi (Times-Italic)
  • timesbi (Times-BoldItalic)
  • helvetica (Helvetica)
  • helveticab (Helvetica-Bold)
  • helveticai (Helvetica-Oblique)
  • helveticabi (Helvetica-BoldOblique)
  • courier (Courier)
  • courierb (Courier-Bold)
  • courieri (Courier-Oblique)
  • courierbi (Courier-BoldOblique)
  • symbol (Symbol)
  • zapfdingbats (ZapfDingbats)
It is also possible to pass an empty string. In that case, the current family is retained.

$style : string = ''

Font style. Possible values are (case insensitive):

  • empty string: regular
  • B: bold
  • I: italic
  • U: underline
  • D: line through
  • O: overline
or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats basic fonts or other fonts when not defined.

$size : float|null = null

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

$fontfile : string = ''

The font definition file. By default, the name is built from the family and style, in lower case with no spaces.

$subset : mixed = 'default'

if true embedd only a subset of the font (stores only the information related to the used characters); if false embedd full font; if 'default' uses the default value set using setFontSubsetting(). This option is valid only for TrueTypeUnicode fonts. If you want to enable users to change the document, set this parameter to false. If you subset the font, the person who receives your PDF would need to have your same font in order to make changes to your PDF. The file size of the PDF would also be smaller because you are embedding only part of a font.

$out : bool = true

if true output the font size command, otherwise only set the font properties.

Tags
author

Nicola Asuni

public
since
1.0
see

AddFont(), SetFontSize()

setFontSize()

Defines the size of the current font.

public setFontSize(float $size[, bool $out = true ]) : mixed
Parameters
$size : float

The font size in points.

$out : bool = true

if true output the font size command, otherwise only set the font properties.

Tags
public
since
1.0
see
SetFont()

setFontSpacing()

Set the amount to increase or decrease the space between characters in a text.

public setFontSpacing([float $spacing = 0 ]) : mixed
Parameters
$spacing : float = 0

amount to increase or decrease the space between characters in a text (0 = default spacing)

Tags
author

Nicola Asuni

public
since
5.9.000

(2010-09-29)

setFontStretching()

Set the percentage of character stretching.

public setFontStretching([int $perc = 100 ]) : mixed
Parameters
$perc : int = 100

percentage of stretching (100 = no stretching)

Tags
author

Nicola Asuni

public
since
5.9.000

(2010-09-29)

setFontSubsetting()

Enable or disable default option for font subsetting.

public setFontSubsetting([bool $enable = true ]) : mixed
Parameters
$enable : bool = true

if true enable font subsetting by default.

Tags
author

Nicola Asuni

public
since
5.3.002

(2010-06-07)

setFooterData()

Set footer data.

public setFooterData([array<string|int, int> $tc = array(0, 0, 0) ][, array<string|int, int> $lc = array(0, 0, 0) ]) : mixed
Parameters
$tc : array<string|int, int> = array(0, 0, 0)

RGB array color for text.

$lc : array<string|int, int> = array(0, 0, 0)

RGB array color for line.

Tags
public

setFooterFont()

Set footer font.

public setFooterFont(array<int, string|float|null> $font) : mixed
Parameters
$font : array<int, string|float|null>

Array describing the basic font parameters: (family, style, size).

Tags
phpstan-param

array{0: string, 1: string, 2: float|null} $font

public
since
1.1

setFooterMargin()

Set footer margin.

public setFooterMargin([float $fm = 10 ]) : mixed

(minimum distance between footer and bottom page margin)

Parameters
$fm : float = 10

distance in user units

Tags
public

setFormDefaultProp()

Set default properties for form fields.

public setFormDefaultProp([array<string|int, mixed> $prop = array() ]) : mixed
Parameters
$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-06)

setHeaderData()

Set header data.

public setHeaderData([string $ln = '' ][, int $lw = 0 ][, string $ht = '' ][, string $hs = '' ][, array<string|int, int> $tc = array(0, 0, 0) ][, array<string|int, int> $lc = array(0, 0, 0) ]) : mixed
Parameters
$ln : string = ''

header image logo

$lw : int = 0

header image logo width in mm

$ht : string = ''

string to print as title on document header

$hs : string = ''

string to print on document header

$tc : array<string|int, int> = array(0, 0, 0)

RGB array color for text.

$lc : array<string|int, int> = array(0, 0, 0)

RGB array color for line.

Tags
public

setHeaderFont()

Set header font.

public setHeaderFont(array<int, string|float|null> $font) : mixed
Parameters
$font : array<int, string|float|null>

Array describing the basic font parameters: (family, style, size).

Tags
phpstan-param

array{0: string, 1: string, 2: float|null} $font

public
since
1.1

setHeaderMargin()

Set header margin.

public setHeaderMargin([float $hm = 10 ]) : mixed

(minimum distance between header and top page margin)

Parameters
$hm : float = 10

distance in user units

Tags
public

setHeaderTemplateAutoreset()

Set a flag to automatically reset the xobject template used by Header() method at each page.

public setHeaderTemplateAutoreset([bool $val = true ]) : mixed
Parameters
$val : bool = true

set to true to reset Header xobject template at each page, false otherwise.

Tags
public

setHtmlLinksStyle()

Set the color and font style for HTML links.

public setHtmlLinksStyle([array<string|int, mixed> $color = array(0, 0, 255) ][, string $fontstyle = 'U' ]) : mixed
Parameters
$color : array<string|int, mixed> = array(0, 0, 255)

RGB array of colors

$fontstyle : string = 'U'

additional font styles to add

Tags
public
since
4.4.003

(2008-12-09)

setHtmlVSpace()

Set the vertical spaces for HTML tags.

public setHtmlVSpace(array<string|int, mixed> $tagvs) : mixed

The array must have the following structure (example): $tagvs = array('h1' => array(0 => array('h' => '', 'n' => 2), 1 => array('h' => 1.3, 'n' => 1))); The first array level contains the tag names, the second level contains 0 for opening tags or 1 for closing tags, the third level contains the vertical space unit (h) and the number spaces to add (n). If the h parameter is not specified, default values are used.

Parameters
$tagvs : array<string|int, mixed>

array of tags and relative vertical spaces.

Tags
public
since
4.2.001

(2008-10-30)

setImageScale()

Set the adjusting factor to convert pixels to user units.

public setImageScale(float $scale) : mixed
Parameters
$scale : float

adjusting factor to convert pixels to user units.

Tags
author

Nicola Asuni

public
since
1.5.2

setJPEGQuality()

Set the default JPEG compression quality (1-100)

public setJPEGQuality(int $quality) : mixed
Parameters
$quality : int

JPEG quality, integer between 1 and 100

Tags
public
since
3.0.000

(2008-03-27)

setKeywords()

Associates keywords with the document, generally in the form 'keyword1 keyword2 ...'.

public setKeywords(string $keywords) : mixed
Parameters
$keywords : string

The list of keywords.

Tags
public
since
1.2
see

SetAuthor(), SetCreator(), SetSubject(), SetTitle()

setLanguageArray()

Set language array.

public setLanguageArray(array<string|int, mixed> $language) : mixed
Parameters
$language : array<string|int, mixed>
Tags
public
since
1.1

setLastH()

Set the last cell height.

public setLastH(float $h) : mixed
Parameters
$h : float

cell height.

Tags
author

Nicola Asuni

public
since
1.53.0.TC034

setLeftMargin()

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.

public setLeftMargin(int|float $margin) : mixed
Parameters
$margin : int|float

The margin.

Tags
public
since
1.4
see

SetTopMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()

setLineStyle()

Set line style.

public setLineStyle(array<string|int, mixed> $style[, bool $ret = false ]) : string
Parameters
$style : array<string|int, mixed>

Line style. Array with keys among the following:

  • width (float): Width of the line in user units.
  • cap (string): Type of cap to put on the line. Possible values are: butt, round, square. The difference between "square" and "butt" is that "square" projects a flat end past the end of the line.
  • join (string): Type of join. Possible values are: miter, round, bevel.
  • dash (mixed): Dash pattern. Is 0 (without dash) or string with series of length values, which are the lengths of the on and off dashes. For example: "2" represents 2 on, 2 off, 2 on, 2 off, ...; "2,1" is 2 on, 1 off, 2 on, 1 off, ...
  • phase (integer): Modifier on the dash pattern which is used to shift the point at which the pattern starts.
  • color (array): Draw color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName).
$ret : bool = false

if true do not send the command.

Tags
public
since
2.1.000

(2008-01-08)

Return values
string

the PDF command

setLineWidth()

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.

public setLineWidth(float $width) : mixed
Parameters
$width : float

The width.

Tags
public
since
1.0
see

Line(), Rect(), Cell(), MultiCell()

Defines the page and position a link points to.

public setLink(int $link[, float $y = 0 ][, int|string $page = -1 ]) : mixed
Parameters
$link : int

The link identifier returned by AddLink()

$y : float = 0

Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page)

$page : int|string = -1

Number of target page; -1 indicates the current page (default value). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.

Tags
public
since
1.5
see
AddLink()

setListIndentWidth()

Set custom width for list indentation.

public setListIndentWidth(float $width) : mixed
Parameters
$width : float

width of the indentation. Use negative value to disable it.

Tags
public
since
4.2.007

(2008-11-12)

setLIsymbol()

Set the default bullet to be used as LI bullet symbol

public setLIsymbol([string $symbol = '!' ]) : mixed
Parameters
$symbol : string = '!'

character or string to be used (legal values are: '' = automatic, '!' = auto bullet, '#' = auto numbering, 'disc', 'disc', 'circle', 'square', '1', 'decimal', 'decimal-leading-zero', 'i', 'lower-roman', 'I', 'upper-roman', 'a', 'lower-alpha', 'lower-latin', 'A', 'upper-alpha', 'upper-latin', 'lower-greek', 'img|type|width|height|image.ext')

Tags
public
since
4.0.028

(2008-09-26)

setMargins()

Defines the left, top and right margins.

public setMargins(int|float $left, int|float $top[, int|float|null $right = null ][, bool $keepmargins = false ]) : mixed
Parameters
$left : int|float

Left margin.

$top : int|float

Top margin.

$right : int|float|null = null

Right margin. Default value is the left one.

$keepmargins : bool = false

if true overwrites the default page margins

Tags
public
since
1.0
see

SetLeftMargin(), SetTopMargin(), SetRightMargin(), SetAutoPageBreak()

setOpenCell()

Set the top/bottom cell sides to be open or closed when the cell cross the page.

public setOpenCell(bool $isopen) : mixed
Parameters
$isopen : bool

if true keeps the top/bottom border open for the cell sides that cross the page.

Tags
public
since
4.2.010

(2008-11-14)

setOverprint()

Set overprint mode for stroking (OP) and non-stroking (op) painting operations.

public setOverprint([bool $stroking = true ][, bool|null $nonstroking = null ][, int $mode = 0 ]) : mixed

(Check the "Entries in a Graphics State Parameter Dictionary" on PDF 32000-1:2008).

Parameters
$stroking : bool = true

If true apply overprint for stroking operations.

$nonstroking : bool|null = null

If true apply overprint for painting operations other than stroking.

$mode : int = 0

Overprint mode: (0 = each source colour component value replaces the value previously painted for the corresponding device colorant; 1 = a tint value of 0.0 for a source colour component shall leave the corresponding component of the previously painted colour unchanged).

Tags
public
since
5.9.152

(2012-03-23)

setPage()

Move pointer at the specified document page and update page dimensions.

public setPage(int $pnum[, bool $resetmargins = false ]) : mixed
Parameters
$pnum : int

page number (1 ... numpages)

$resetmargins : bool = false

if true reset left, right, top margins and Y position.

Tags
public
since
2.1.000

(2008-01-07)

see

getPage(), lastpage(), getNumPages()

setPageMark()

Set start-writing mark on current page stream used to put borders and fills.

public setPageMark() : mixed

Borders and fills are always created after content and inserted on the position marked by this method. This function must be called after calling Image() function for a background image. Background images must be always inserted before calling Multicell() or WriteHTMLCell() or WriteHTML() functions.

Tags
public
since
4.0.016

(2008-07-30)

setPageOrientation()

Set page orientation.

public setPageOrientation(string $orientation[, bool|null $autopagebreak = null ][, float|null $bottommargin = null ]) : mixed
Parameters
$orientation : string

page orientation. Possible values are (case insensitive):

  • P or Portrait (default)
  • L or Landscape
  • '' (empty string) for automatic orientation

$autopagebreak : bool|null = null

Boolean indicating if auto-page-break mode should be on or off.

$bottommargin : float|null = null

bottom margin of the page.

Tags
public
since
3.0.015

(2008-06-06)

setPageRegions()

Set no-write regions on page.

public setPageRegions([array<string|int, mixed> $regions = array() ]) : mixed

A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. A region is always aligned on the left or right side of the page ad is defined using a vertical segment. You can set multiple regions for the same page.

Parameters
$regions : array<string|int, mixed> = array()

array of no-write regions. For each region you can define an array as follow: ('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right). Omit this parameter to remove all regions.

Tags
author

Nicola Asuni

public
since
5.9.003

(2010-10-13)

see

addPageRegion(), getPageRegions()

setPageUnit()

Set the units of measure for the document.

public setPageUnit(string $unit) : mixed
Parameters
$unit : string

User measure unit. Possible values are:

  • pt: point
  • mm: millimeter (default)
  • cm: centimeter
  • in: inch

A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit.

Tags
public
since
3.0.015

(2008-06-06)

setPDFVersion()

Set the PDF version (check PDF reference for valid values).

public setPDFVersion([string $version = '1.7' ]) : mixed
Parameters
$version : string = '1.7'

PDF document version.

Tags
public
since
3.1.000

(2008-06-09)

setPrintFooter()

Set a flag to print page footer.

public setPrintFooter([bool $val = true ]) : mixed
Parameters
$val : bool = true

set to true to print the page footer (default), false otherwise.

Tags
public

setPrintHeader()

Set a flag to print page header.

public setPrintHeader([bool $val = true ]) : mixed
Parameters
$val : bool = true

set to true to print the page header (default), false otherwise.

Tags
public

setProtection()

Set document protection Remark: the protection against modification is for people who have the full Acrobat product.

public setProtection([array<string|int, mixed> $permissions = array('print', 'modify', 'copy', 'annot-forms', 'fill-forms', 'extract', 'assemble', 'print-high') ][, string $user_pass = '' ][, string|null $owner_pass = null ][, int $mode = 0 ][, array<string|int, mixed>|null $pubkeys = null ]) : mixed

If you don't set any password, the document will open as usual. If you set a user password, the PDF viewer will ask for it before displaying the document. The master password, if different from the user one, can be used to get full access. Note: protecting a document requires to encrypt it, which increases the processing time a lot. This can cause a PHP time-out in some cases, especially if the document contains images or fonts.

Parameters
$permissions : array<string|int, mixed> = array('print', 'modify', 'copy', 'annot-forms', 'fill-forms', 'extract', 'assemble', 'print-high')

the set of permissions (specify the ones you want to block):

  • print : Print the document;
  • modify : Modify the contents of the document by operations other than those controlled by 'fill-forms', 'extract' and 'assemble';
  • copy : Copy or otherwise extract text and graphics from the document;
  • annot-forms : Add or modify text annotations, fill in interactive form fields, and, if 'modify' is also set, create or modify interactive form fields (including signature fields);
  • fill-forms : Fill in existing interactive form fields (including signature fields), even if 'annot-forms' is not specified;
  • extract : Extract text and graphics (in support of accessibility to users with disabilities or for other purposes);
  • assemble : Assemble the document (insert, rotate, or delete pages and create bookmarks or thumbnail images), even if 'modify' is not set;
  • print-high : Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this is not set, printing is limited to a low-level representation of the appearance, possibly of degraded quality.
  • owner : (inverted logic - only for public-key) when set permits change of encryption and enables all other permissions.

$user_pass : string = ''

user password. Empty by default.

$owner_pass : string|null = null

owner password. If not specified, a random value is used.

$mode : int = 0

encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit.

$pubkeys : array<string|int, mixed>|null = null

array of recipients containing public-key certificates ('c') and permissions ('p'). For example: array(array('c' => 'file://../examples/data/cert/tcpdf.crt', 'p' => array('print')))

Tags
public
since
2.0.000

(2008-01-02)

author

Nicola Asuni

setRasterizeVectorImages()

Enable/disable rasterization of vector images using ImageMagick library.

public setRasterizeVectorImages(bool $mode) : mixed
Parameters
$mode : bool

if true enable rasterization, false otherwise.

Tags
public
since
5.0.000

(2010-04-27)

setRightMargin()

Defines the right margin. The method can be called before creating the first page.

public setRightMargin(int|float $margin) : mixed
Parameters
$margin : int|float

The margin.

Tags
public
since
1.5
see

SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins()

setRTL()

Enable or disable Right-To-Left language mode

public setRTL(bool $enable[, bool $resetx = true ]) : mixed
Parameters
$enable : bool

if true enable Right-To-Left language mode.

$resetx : bool = true

if true reset the X position on direction change.

Tags
public
since
2.0.000

(2008-01-03)

setSignature()

Enable document signature (requires the OpenSSL Library).

public setSignature([mixed $signing_cert = '' ][, mixed $private_key = '' ][, string $private_key_password = '' ][, string $extracerts = '' ][, int $cert_type = 2 ][, array<string|int, mixed> $info = array() ][, string $approval = '' ]) : mixed

The digital signature improve document authenticity and integrity and allows o enable extra features on Acrobat Reader. To create self-signed signature: openssl req -x509 -nodes -days 365000 -newkey rsa:1024 -keyout tcpdf.crt -out tcpdf.crt To export crt to p12: openssl pkcs12 -export -in tcpdf.crt -out tcpdf.p12 To convert pfx certificate to pem: openssl pkcs12 -in tcpdf.pfx -out tcpdf.crt -nodes

Parameters
$signing_cert : mixed = ''

signing certificate (string or filename prefixed with 'file://')

$private_key : mixed = ''

private key (string or filename prefixed with 'file://')

$private_key_password : string = ''

password

$extracerts : string = ''

specifies the name of a file containing a bunch of extra certificates to include in the signature which can for example be used to help the recipient to verify the certificate that you used.

$cert_type : int = 2

The access permissions granted for this document. Valid values shall be: 1 = No changes to the document shall be permitted; any change to the document shall invalidate the signature; 2 = Permitted changes shall be filling in forms, instantiating page templates, and signing; other changes shall invalidate the signature; 3 = Permitted changes shall be the same as for 2, as well as annotation creation, deletion, and modification; other changes shall invalidate the signature.

$info : array<string|int, mixed> = array()

array of option information: Name, Location, Reason, ContactInfo.

$approval : string = ''

Enable approval signature eg. for PDF incremental update

Tags
public
author

Nicola Asuni

since
4.6.005

(2009-04-24)

setSignatureAppearance()

Set the digital signature appearance (a cliccable rectangle area to get signature properties)

public setSignatureAppearance([float $x = 0 ][, float $y = 0 ][, float $w = 0 ][, float $h = 0 ][, int $page = -1 ][, string $name = '' ]) : mixed
Parameters
$x : float = 0

Abscissa of the upper-left corner.

$y : float = 0

Ordinate of the upper-left corner.

$w : float = 0

Width of the signature area.

$h : float = 0

Height of the signature area.

$page : int = -1

option page number (if < 0 the current page is used).

$name : string = ''

Name of the signature.

Tags
public
author

Nicola Asuni

since
5.3.011

(2010-06-17)

setSpacesRE()

Set regular expression to detect withespaces or word separators.

public setSpacesRE([string $re = '/[^\S\xa0]/' ]) : mixed

The pattern delimiter must be the forward-slash character "/". Some example patterns are:

Non-Unicode or missing PCRE unicode support: "/[^\S\xa0]/"
Unicode and PCRE unicode support: "/(?!\xa0)[\s\p{Z}]/u"
Unicode and PCRE unicode support in Chinese mode: "/(?!\xa0)[\s\p{Z}\p{Lo}]/u"
if PCRE unicode support is turned ON ("\P" is the negate class of "\p"):
     \s     : any whitespace character
     \p{Z}  : any separator
     \p{Lo} : Unicode letter or ideograph that does not have lowercase and uppercase variants. Is used to chunk chinese words.
     \xa0   : Unicode Character 'NO-BREAK SPACE' (U+00A0)
Parameters
$re : string = '/[^\S\xa0]/'

regular expression (leave empty for default).

Tags
public
since
4.6.016

(2009-06-15)

setSpotColor()

Set the spot color for the specified type ('draw', 'fill', 'text').

public setSpotColor(string $type, string $name[, float $tint = 100 ]) : string
Parameters
$type : string

Type of object affected by this color: ('draw', 'fill', 'text').

$name : string

Name of the spot color.

$tint : float = 100

Intensity of the color (from 0 to 100 ; 100 = full intensity by default).

Tags
public
since
5.9.125

(2011-10-03)

Return values
string

PDF color command.

setSRGBmode()

Set flag to force sRGB_IEC61966-2.1 black scaled ICC color profile for the whole document.

public setSRGBmode([bool $mode = false ]) : mixed
Parameters
$mode : bool = false

If true force sRGB output intent.

Tags
public
since
5.9.121

(2011-09-28)

setStartingPageNumber()

Set the starting page number.

public setStartingPageNumber([int $num = 1 ]) : mixed
Parameters
$num : int = 1

Starting page number.

Tags
since
5.9.093

(2011-06-16)

public

setSubject()

Defines the subject of the document.

public setSubject(string $subject) : mixed
Parameters
$subject : string

The subject.

Tags
public
since
1.2
see

SetAuthor(), SetCreator(), SetKeywords(), SetTitle()

setTempRTL()

Force temporary RTL language direction

public setTempRTL(false|string $mode) : mixed
Parameters
$mode : false|string

can be false, 'L' for LTR or 'R' for RTL

Tags
public
since
2.1.000

(2008-01-09)

setTextColor()

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.

public setTextColor([float $col1 = 0 ][, float $col2 = -1 ][, float $col3 = -1 ][, float $col4 = -1 ][, bool $ret = false ][, string $name = '' ]) : string
Parameters
$col1 : float = 0

GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100).

$col2 : float = -1

GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100).

$col3 : float = -1

BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100).

$col4 : float = -1

KEY (BLACK) color for CMYK (0-100).

$ret : bool = false

If true do not send the command.

$name : string = ''

Spot color name (if any).

Tags
public
since
1.3
see

SetTextColorArray(), SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()

Return values
string

Empty string.

setTextColorArray()

Defines the color used for text. It can be expressed in RGB components or gray scale.

public setTextColorArray(array<string|int, mixed> $color[, bool $ret = false ]) : mixed

The method can be called before the first page is created and the value is retained from page to page.

Parameters
$color : array<string|int, mixed>

Array of colors (1, 3 or 4 values).

$ret : bool = false

If true do not send the PDF command.

Tags
public
since
3.1.000

(2008-6-11)

see
SetFillColor()

setTextRenderingMode()

Set Text rendering mode.

public setTextRenderingMode([int $stroke = 0 ][, bool $fill = true ][, bool $clip = false ]) : mixed
Parameters
$stroke : int = 0

outline size in user units (0 = disable).

$fill : bool = true

if true fills the text (default).

$clip : bool = false

if true activate clipping mode

Tags
public
since
4.9.008

(2009-04-02)

setTextShadow()

Set parameters for drop shadow effect for text.

public setTextShadow([array<string|int, mixed> $params = array('enabled' => false, 'depth_w' => 0, 'depth_h' => 0, 'color' => false, 'opacity' => 1, 'blend_mode' => 'Normal') ]) : mixed
Parameters
$params : array<string|int, mixed> = array('enabled' => false, 'depth_w' => 0, 'depth_h' => 0, 'color' => false, 'opacity' => 1, 'blend_mode' => 'Normal')

Array of parameters: enabled (boolean) set to true to enable shadow; depth_w (float) shadow width in user units; depth_h (float) shadow height in user units; color (array) shadow color or false to use the stroke color; opacity (float) Alpha value: real value from 0 (transparent) to 1 (opaque); blend_mode (string) blend mode, one of the following: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity.

Tags
since
5.9.174

(2012-07-25)

public

setTextSpotColor()

Defines the spot color used for text.

public setTextSpotColor(string $name[, int $tint = 100 ]) : mixed
Parameters
$name : string

Name of the spot color.

$tint : int = 100

Intensity of the color (from 0 to 100 ; 100 = full intensity by default).

Tags
public
since
4.0.024

(2008-09-12)

see

AddSpotColor(), SetDrawSpotColor(), SetFillSpotColor()

setTimeStamp()

Enable document timestamping (requires the OpenSSL Library).

public setTimeStamp([string $tsa_host = '' ][, string $tsa_username = '' ][, string $tsa_password = '' ][, string $tsa_cert = '' ]) : mixed

The trusted timestamping improve document security that means that no one should be able to change the document once it has been recorded. Use with digital signature only!

Parameters
$tsa_host : string = ''

Time Stamping Authority (TSA) server (prefixed with 'https://')

$tsa_username : string = ''

Specifies the username for TSA authorization (optional) OR specifies the TSA authorization PEM file (see: example_66.php, optional)

$tsa_password : string = ''

Specifies the password for TSA authorization (optional)

$tsa_cert : string = ''

Specifies the location of TSA certificate for authorization (optional for cURL)

Tags
public
author

Richard Stockinger

since
6.0.090

(2014-06-16)

setTitle()

Defines the title of the document.

public setTitle(string $title) : mixed
Parameters
$title : string

The title.

Tags
public
since
1.2
see

SetAuthor(), SetCreator(), SetKeywords(), SetSubject()

setTopMargin()

Defines the top margin. The method can be called before creating the first page.

public setTopMargin(int|float $margin) : mixed
Parameters
$margin : int|float

The margin.

Tags
public
since
1.5
see

SetLeftMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()

setUserRights()

Set User's Rights for PDF Reader WARNING: This is experimental and currently do not work.

public setUserRights([bool $enable = true ][, string $document = '/FullSave' ][, string $annots = '/Create/Delete/Modify/Copy/Import/Export' ][, string $form = '/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate' ][, string $signature = '/Modify' ][, string $ef = '/Create/Delete/Modify/Import' ][, string $formex = '' ]) : mixed

Check the PDF Reference 8.7.1 Transform Methods, Table 8.105 Entries in the UR transform parameters dictionary

Parameters
$enable : bool = true

if true enable user's rights on PDF reader

$document : string = '/FullSave'

Names specifying additional document-wide usage rights for the document. The only defined value is "/FullSave", which permits a user to save the document along with modified form and/or annotation data.

$annots : string = '/Create/Delete/Modify/Copy/Import/Export'

Names specifying additional annotation-related usage rights for the document. Valid names in PDF 1.5 and later are /Create/Delete/Modify/Copy/Import/Export, which permit the user to perform the named operation on annotations.

$form : string = '/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate'

Names specifying additional form-field-related usage rights for the document. Valid names are: /Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate

$signature : string = '/Modify'

Names specifying additional signature-related usage rights for the document. The only defined value is /Modify, which permits a user to apply a digital signature to an existing signature form field or clear a signed signature form field.

$ef : string = '/Create/Delete/Modify/Import'

Names specifying additional usage rights for named embedded files in the document. Valid names are /Create/Delete/Modify/Import, which permit the user to perform the named operation on named embedded files Names specifying additional embedded-files-related usage rights for the document.

$formex : string = ''

Names specifying additional form-field-related usage rights. The only valid name is BarcodePlaintext, which permits text form field data to be encoded as a plaintext two-dimensional barcode.

Tags
public
author

Nicola Asuni

since
2.9.000

(2008-03-26)

setViewerPreferences()

Set the viewer preferences dictionary controlling the way the document is to be presented on the screen or in print.

public setViewerPreferences(array<string|int, mixed> $preferences) : mixed

(see Section 8.1 of PDF reference, "Viewer Preferences").

  • HideToolbar boolean (Optional) A flag specifying whether to hide the viewer application's tool bars when the document is active. Default value: false.
  • HideMenubar boolean (Optional) A flag specifying whether to hide the viewer application's menu bar when the document is active. Default value: false.
  • HideWindowUI boolean (Optional) A flag specifying whether to hide user interface elements in the document's window (such as scroll bars and navigation controls), leaving only the document's contents displayed. Default value: false.
  • FitWindow boolean (Optional) A flag specifying whether to resize the document's window to fit the size of the first displayed page. Default value: false.
  • CenterWindow boolean (Optional) A flag specifying whether to position the document's window in the center of the screen. Default value: false.
  • DisplayDocTitle boolean (Optional; PDF 1.4) A flag specifying whether the window's title bar should display the document title taken from the Title entry of the document information dictionary (see Section 10.2.1, "Document Information Dictionary"). If false, the title bar should instead display the name of the PDF file containing the document. Default value: false.
  • NonFullScreenPageMode name (Optional) The document's page mode, specifying how to display the document on exiting full-screen mode:
    • UseNone Neither document outline nor thumbnail images visible
    • UseOutlines Document outline visible
    • UseThumbs Thumbnail images visible
    • UseOC Optional content group panel visible
    This entry is meaningful only if the value of the PageMode entry in the catalog dictionary (see Section 3.6.1, "Document Catalog") is FullScreen; it is ignored otherwise. Default value: UseNone.
  • ViewArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be displayed when viewing the document on the screen. Valid values are (see Section 10.10.1, "Page Boundaries").:
    • MediaBox
    • CropBox (default)
    • BleedBox
    • TrimBox
    • ArtBox
  • ViewClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when viewing the document on the screen. Valid values are (see Section 10.10.1, "Page Boundaries").:
    • MediaBox
    • CropBox (default)
    • BleedBox
    • TrimBox
    • ArtBox
  • PrintArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be rendered when printing the document. Valid values are (see Section 10.10.1, "Page Boundaries").:
    • MediaBox
    • CropBox (default)
    • BleedBox
    • TrimBox
    • ArtBox
  • PrintClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when printing the document. Valid values are (see Section 10.10.1, "Page Boundaries").:
    • MediaBox
    • CropBox (default)
    • BleedBox
    • TrimBox
    • ArtBox
  • PrintScaling name (Optional; PDF 1.6) The page scaling option to be selected when a print dialog is displayed for this document. Valid values are:
    • None, which indicates that the print dialog should reflect no page scaling
    • AppDefault (default), which indicates that applications should use the current print scaling
  • Duplex name (Optional; PDF 1.7) The paper handling option to use when printing the file from the print dialog. The following values are valid:
    • Simplex - Print single-sided
    • DuplexFlipShortEdge - Duplex and flip on the short edge of the sheet
    • DuplexFlipLongEdge - Duplex and flip on the long edge of the sheet
    Default value: none
  • PickTrayByPDFSize boolean (Optional; PDF 1.7) A flag specifying whether the PDF page size is used to select the input paper tray. This setting influences only the preset values used to populate the print dialog presented by a PDF viewer application. If PickTrayByPDFSize is true, the check box in the print dialog associated with input paper tray is checked. Note: This setting has no effect on Mac OS systems, which do not provide the ability to pick the input tray by size.
  • PrintPageRange array (Optional; PDF 1.7) The page numbers used to initialize the print dialog box when the file is printed. The first page of the PDF file is denoted by 1. Each pair consists of the first and last pages in the sub-range. An odd number of integers causes this entry to be ignored. Negative numbers cause the entire array to be ignored. Default value: as defined by PDF viewer application
  • NumCopies integer (Optional; PDF 1.7) The number of copies to be printed when the print dialog is opened for this file. Supported values are the integers 2 through 5. Values outside this range are ignored. Default value: as defined by PDF viewer application, but typically 1
Parameters
$preferences : array<string|int, mixed>

array of options.

Tags
author

Nicola Asuni

public
since
3.1.000

(2008-06-09)

setVisibility()

Set the visibility of the successive elements.

public setVisibility(string $v) : mixed

This can be useful, for instance, to put a background image or color that will show on screen but won't print.

Parameters
$v : string

visibility mode. Legal values are: all, print, screen or view.

Tags
public
since
3.0.000

(2008-03-27)

setX()

Defines the abscissa of the current position.

public setX(float $x[, bool $rtloff = false ]) : mixed

If the passed value is negative, it is relative to the right of the page (or left if language is RTL).

Parameters
$x : float

The value of the abscissa in user units.

$rtloff : bool = false

if true always uses the page top-left corner as origin of axis.

Tags
public
since
1.2
see

GetX(), GetY(), SetY(), SetXY()

setXY()

Defines the abscissa and ordinate of the current position.

public setXY(float $x, float $y[, bool $rtloff = false ]) : mixed

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

Parameters
$x : float

The value of the abscissa.

$y : float

The value of the ordinate.

$rtloff : bool = false

if true always uses the page top-left corner as origin of axis.

Tags
public
since
1.2
see

SetX(), SetY()

setY()

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

public setY(float $y[, bool $resetx = true ][, bool $rtloff = false ]) : mixed

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

Parameters
$y : float

The value of the ordinate in user units.

$resetx : bool = true

if true (default) reset the X position.

$rtloff : bool = false

if true always uses the page top-left corner as origin of axis.

Tags
public
since
1.0
see

GetX(), GetY(), SetY(), SetXY()

Skew()

Skew.

public Skew(float $angle_x, float $angle_y[, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$angle_x : float

angle in degrees between -90 (skew to the left) and 90 (skew to the right)

$angle_y : float

angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)

$x : float|null = null

abscissa of the skewing center. default is current x position

$y : float|null = null

ordinate of the skewing center. default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

SkewX()

Skew horizontally.

public SkewX(float $angle_x[, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$angle_x : float

angle in degrees between -90 (skew to the left) and 90 (skew to the right)

$x : float|null = null

abscissa of the skewing center. default is current x position

$y : float|null = null

ordinate of the skewing center. default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

SkewY()

Skew vertically.

public SkewY(float $angle_y[, float|null $x = null ][, float|null $y = null ]) : mixed
Parameters
$angle_y : float

angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)

$x : float|null = null

abscissa of the skewing center. default is current x position

$y : float|null = null

ordinate of the skewing center. default is current y position

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

StarPolygon()

Draws a star polygon

public StarPolygon(float $x0, float $y0, float $r, int $nv, int $ng[, float $angle = 0 ][, bool $draw_circle = false ][, string $style = '' ][, array<string|int, mixed> $line_style = array() ][, array<string|int, mixed> $fill_color = array() ][, string $circle_style = '' ][, array<string|int, mixed> $circle_outLine_style = array() ][, array<string|int, mixed> $circle_fill_color = array() ]) : mixed
Parameters
$x0 : float

Abscissa of center point.

$y0 : float

Ordinate of center point.

$r : float

Radius of inscribed circle.

$nv : int

Number of vertices.

$ng : int

Number of gap (if ($ng % $nv = 1) then is a regular polygon).

$angle : float = 0

Angle oriented (anti-clockwise). Default value: 0.

$draw_circle : bool = false

Draw inscribed circle or not. Default value is false.

$style : string = ''

Style of rendering. See the getPathPaintOperator() function for more information.

$line_style : array<string|int, mixed> = array()

Line style of polygon sides. Array with keys among the following:

  • all: Line style of all sides. Array like for SetLineStyle().
  • 0 to (n - 1): Line style of each side. Array like for SetLineStyle().
If a key is not present or is null, not draws the side. Default value is default line style (empty array).
$fill_color : array<string|int, mixed> = array()

Fill color. Format: array(red, green, blue). Default value: default color (empty array).

$circle_style : string = ''

Style of rendering of inscribed circle (if draws). Possible values are:

  • D or empty string: Draw (default).
  • F: Fill.
  • DF or FD: Draw and fill.
  • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
  • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
$circle_outLine_style : array<string|int, mixed> = array()

Line style of inscribed circle (if draws). Array like for SetLineStyle(). Default value: default line style (empty array).

$circle_fill_color : array<string|int, mixed> = array()

Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array).

Tags
public
since
2.1.000

(2008-01-08)

startLayer()

Start a new pdf layer.

public startLayer([string $name = '' ][, bool|null $print = true ][, bool $view = true ][, bool $lock = true ]) : mixed
Parameters
$name : string = ''

Layer name (only a-z letters and numbers). Leave empty for automatic name.

$print : bool|null = true

Set to TRUE to print this layer, FALSE to not print and NULL to not set this option

$view : bool = true

Set to true to view this layer.

$lock : bool = true

If true lock the layer

Tags
public
since
5.9.102

(2011-07-13)

startPage()

Starts a new page to the document. The page must be closed using the endPage() function.

public startPage([string $orientation = '' ][, mixed $format = '' ][, bool $tocpage = false ]) : mixed

The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards.

Parameters
$orientation : string = ''

page orientation. Possible values are (case insensitive):

  • P or PORTRAIT (default)
  • L or LANDSCAPE

$format : mixed = ''

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().

$tocpage : bool = false

if true the page is designated to contain the Table-Of-Content.

Tags
since
4.2.010

(2008-11-14)

see

AddPage(), endPage(), addTOCPage(), endTOCPage(), getPageSizeFromFormat(), setPageFormat()

public

startPageGroup()

Create a new page group.

public startPageGroup([int|null $page = null ]) : mixed

NOTE: call this function before calling AddPage()

Parameters
$page : int|null = null

starting group page (leave empty for next page).

Tags
public
since
3.0.000

(2008-03-27)

startTemplate()

Start a new XObject Template.

public startTemplate([int $w = 0 ][, int $h = 0 ][, mixed $group = false ]) : string|false

An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked. Note: X,Y coordinates will be reset to 0,0.

Parameters
$w : int = 0

Template width in user units (empty string or zero = page width less margins).

$h : int = 0

Template height in user units (empty string or zero = page height less margins).

$group : mixed = false

Set transparency group. Can be a boolean value or an array specifying optional parameters: 'CS' (solour space name), 'I' (boolean flag to indicate isolated group) and 'K' (boolean flag to indicate knockout group).

Tags
author

Nicola Asuni

public
since
5.8.017

(2010-08-24)

see

endTemplate(), printTemplate()

Return values
string|false

the XObject Template ID in case of success or false in case of error.

startTransaction()

Stores a copy of the current TCPDF object used for undo operation.

public startTransaction() : mixed
Tags
public
since
4.5.029

(2009-03-19)

StartTransform()

Starts a 2D tranformation saving current graphic state.

public StartTransform() : mixed

This function must be called before scaling, mirroring, translation, rotation and skewing. Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior.

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

StopTransform()

Stops a 2D tranformation restoring previous graphic state.

public StopTransform() : mixed

This function must be called after scaling, mirroring, translation, rotation and skewing. Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior.

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

stringLeftTrim()

Left trim the input string

public stringLeftTrim(string $str[, string $replace = '' ]) : string
Parameters
$str : string

string to trim

$replace : string = ''

string that replace spaces.

Tags
author

Nicola Asuni

public
since
5.8.000

(2010-08-11)

Return values
string

left trimmed string

stringRightTrim()

Right trim the input string

public stringRightTrim(string $str[, string $replace = '' ]) : string
Parameters
$str : string

string to trim

$replace : string = ''

string that replace spaces.

Tags
author

Nicola Asuni

public
since
5.8.000

(2010-08-11)

Return values
string

right trimmed string

stringTrim()

Trim the input string

public stringTrim(string $str[, string $replace = '' ]) : string
Parameters
$str : string

string to trim

$replace : string = ''

string that replace spaces.

Tags
author

Nicola Asuni

public
since
5.8.000

(2010-08-11)

Return values
string

trimmed string

Text()

Prints a text cell at the specified position.

public Text(float $x, float $y, string $txt[, int $fstroke = 0 ][, bool $fclip = false ][, bool $ffill = true ][, mixed $border = 0 ][, int $ln = 0 ][, string $align = '' ][, bool $fill = false ][, mixed $link = '' ][, int $stretch = 0 ][, bool $ignore_min_height = false ][, string $calign = 'T' ][, string $valign = 'M' ][, bool $rtloff = false ]) : mixed

This method allows to place a string precisely on the page.

Parameters
$x : float

Abscissa of the cell origin

$y : float

Ordinate of the cell origin

$txt : string

String to print

$fstroke : int = 0

outline size in user units (0 = disable)

$fclip : bool = false

if true activate clipping mode (you must call StartTransform() before this function and StopTransform() to stop the clipping tranformation).

$ffill : bool = true

if true fills the text

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$ln : int = 0

Indicates where the current position should go after the call. Possible values are:

  • 0: to the right (or left for RTL languages)
  • 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 : string = ''

Allows to center or align the text. Possible values are:

  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • J: justify

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$link : mixed = ''

URL or identifier returned by AddLink().

$stretch : int = 0

font stretch mode:

  • 0 = disabled
  • 1 = horizontal scaling only if text is larger than cell width
  • 2 = forced horizontal scaling to fit cell width
  • 3 = character spacing only if text is larger than cell width
  • 4 = forced character spacing to fit cell width
General font stretching and scaling values will be preserved when possible.

$ignore_min_height : bool = false

if true ignore automatic minimum height value.

$calign : string = 'T'

cell vertical alignment relative to the specified Y value. Possible values are:

  • T : cell top
  • A : font top
  • L : font baseline
  • D : font bottom
  • B : cell bottom

$valign : string = 'M'

text vertical alignment inside the cell. Possible values are:

  • T : top
  • C : center
  • B : bottom

$rtloff : bool = false

if true uses the page top-left corner as origin of axis for $x and $y initial position.

Tags
public
since
1.0
see

Cell(), Write(), MultiCell(), WriteHTML(), WriteHTMLCell()

TextField()

Creates a text field

public TextField(string $name, float $w, float $h[, array<string|int, mixed> $prop = array() ][, array<string|int, mixed> $opt = array() ][, float|null $x = null ][, float|null $y = null ][, bool $js = false ]) : mixed
Parameters
$name : string

field name

$w : float

Width of the rectangle

$h : float

Height of the rectangle

$prop : array<string|int, mixed> = array()

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

$opt : array<string|int, mixed> = array()

annotation parameters. Possible values are described on official PDF32000_2008 reference.

$x : float|null = null

Abscissa of the upper-left corner of the rectangle

$y : float|null = null

Ordinate of the upper-left corner of the rectangle

$js : bool = false

if true put the field using JavaScript (requires Acrobat Writer to be rendered).

Tags
public
author

Nicola Asuni

since
4.8.000

(2009-09-07)

Translate()

Translate graphic object horizontally and vertically.

public Translate(int $t_x, int $t_y) : mixed
Parameters
$t_x : int

movement to the right

$t_y : int

movement to the bottom

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

TranslateX()

Translate graphic object horizontally.

public TranslateX(int $t_x) : mixed
Parameters
$t_x : int

movement to the right (or left for RTL)

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

TranslateY()

Translate graphic object vertically.

public TranslateY(int $t_y) : mixed
Parameters
$t_y : int

movement to the bottom

Tags
public
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

unhtmlentities()

Reverse function for htmlentities.

public unhtmlentities(string $text_to_convert) : string

Convert entities in UTF-8.

Parameters
$text_to_convert : string

Text to convert.

Tags
public
Return values
string

converted text string

Write()

This method prints text from the current position.<br />

public Write(float $h, string $txt[, mixed $link = '' ][, bool $fill = false ][, string $align = '' ][, bool $ln = false ][, int $stretch = 0 ][, bool $firstline = false ][, bool $firstblock = false ][, float $maxh = 0 ][, float $wadj = 0 ][, array<string|int, mixed>|null $margin = null ]) : mixed
Parameters
$h : float

Line height

$txt : string

String to print

$link : mixed = ''

URL or identifier returned by AddLink()

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$align : string = ''

Allows to center or align the text. Possible values are:

  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • J: justify

$ln : bool = false

if true set cursor at the bottom of the line, otherwise set cursor at the top of the line.

$stretch : int = 0

font stretch mode:

  • 0 = disabled
  • 1 = horizontal scaling only if text is larger than cell width
  • 2 = forced horizontal scaling to fit cell width
  • 3 = character spacing only if text is larger than cell width
  • 4 = forced character spacing to fit cell width
General font stretching and scaling values will be preserved when possible.

$firstline : bool = false

if true prints only the first line and return the remaining string.

$firstblock : bool = false

if true the string is the starting of a line.

$maxh : float = 0

maximum height. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature.

$wadj : float = 0

first line width will be reduced by this amount (used in HTML mode).

$margin : array<string|int, mixed>|null = null

margin array of the parent container

Tags
public
since
1.5
Return values
mixed

Return the number of cells or the remaining string if $firstline = true.

write1DBarcode()

Print a Linear Barcode.

public write1DBarcode(string $code, string $type[, float|null $x = null ][, float|null $y = null ][, float|null $w = null ][, float|null $h = null ][, float|null $xres = null ][, array<string|int, mixed> $style = array() ][, string $align = '' ]) : mixed
Parameters
$code : string

code to print

$type : string

type of barcode (see tcpdf_barcodes_1d.php for supported formats).

$x : float|null = null

x position in user units (null = current x position)

$y : float|null = null

y position in user units (null = current y position)

$w : float|null = null

width in user units (null = remaining page width)

$h : float|null = null

height in user units (null = remaining page height)

$xres : float|null = null

width of the smallest bar in user units (null = default value = 0.4mm)

$style : array<string|int, mixed> = array()

array of options:

  • boolean $style['border'] if true prints a border
  • int $style['padding'] padding to leave around the barcode in user units (set to 'auto' for automatic padding)
  • int $style['hpadding'] horizontal padding in user units (set to 'auto' for automatic padding)
  • int $style['vpadding'] vertical padding in user units (set to 'auto' for automatic padding)
  • array $style['fgcolor'] color array for bars and text
  • mixed $style['bgcolor'] color array for background (set to false for transparent)
  • boolean $style['text'] if true prints text below the barcode
  • string $style['label'] override default label
  • string $style['font'] font name for text
  • int $style['fontsize'] font size for text
  • int $style['stretchtext']: 0 = disabled; 1 = horizontal scaling only if necessary; 2 = forced horizontal scaling; 3 = character spacing only if necessary; 4 = forced character spacing.
  • string $style['position'] horizontal position of the containing barcode cell on the page: L = left margin; C = center; R = right margin.
  • string $style['align'] horizontal position of the barcode on the containing rectangle: L = left; C = center; R = right.
  • string $style['stretch'] if true stretch the barcode to best fit the available width, otherwise uses $xres resolution for a single bar.
  • string $style['fitwidth'] if true reduce the width to fit the barcode width + padding. When this option is enabled the 'stretch' option is automatically disabled.
  • string $style['cellfitalign'] this option works only when 'fitwidth' is true and 'position' is unset or empty. Set the horizontal position of the containing barcode cell inside the specified rectangle: L = left; C = center; R = right.
$align : string = ''

Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

Tags
author

Nicola Asuni

since
3.1.000

(2008-06-09)

public

write2DBarcode()

Print 2D Barcode.

public write2DBarcode(string $code, string $type[, float|null $x = null ][, float|null $y = null ][, float|null $w = null ][, float|null $h = null ][, array<string|int, mixed> $style = array() ][, string $align = '' ][, bool $distort = false ]) : mixed
Parameters
$code : string

code to print

$type : string

type of barcode (see tcpdf_barcodes_2d.php for supported formats).

$x : float|null = null

x position in user units

$y : float|null = null

y position in user units

$w : float|null = null

width in user units

$h : float|null = null

height in user units

$style : array<string|int, mixed> = array()

array of options:

  • boolean $style['border'] if true prints a border around the barcode
  • int $style['padding'] padding to leave around the barcode in barcode units (set to 'auto' for automatic padding)
  • int $style['hpadding'] horizontal padding in barcode units (set to 'auto' for automatic padding)
  • int $style['vpadding'] vertical padding in barcode units (set to 'auto' for automatic padding)
  • int $style['module_width'] width of a single module in points
  • int $style['module_height'] height of a single module in points
  • array $style['fgcolor'] color array for bars and text
  • mixed $style['bgcolor'] color array for background or false for transparent
  • string $style['position'] barcode position on the page: L = left margin; C = center; R = right margin; S = stretch
$align : string = ''

Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

$distort : bool = false

if true distort the barcode to fit width and height, otherwise preserve aspect ratio

Tags
author

Nicola Asuni

since
4.5.037

(2009-04-07)

public

writeHTML()

Allows to preserve some HTML formatting (limited support).<br /> IMPORTANT: The HTML must be well formatted - try to clean-up it using an application like HTML-Tidy before submitting.

public writeHTML(string $html[, bool $ln = true ][, bool $fill = false ][, bool $reseth = false ][, bool $cell = false ][, string $align = '' ]) : mixed

Supported tags are: a, b, blockquote, br, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, img, li, ol, p, pre, small, span, strong, sub, sup, table, tcpdf, td, th, thead, tr, tt, u, ul NOTE: all the HTML attributes must be enclosed in double-quote.

Parameters
$html : string

text to display

$ln : bool = true

if true add a new line after text (default = true)

$fill : bool = false

Indicates if the background must be painted (true) or transparent (false).

$reseth : bool = false

if true reset the last cell height (default false).

$cell : bool = false

if true add the current left (or right for RTL) padding to each Write (default false).

$align : string = ''

Allows to center or align the text. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

Tags
public

writeHTMLCell()

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

public writeHTMLCell(float $w, float $h, float|null $x, float|null $y[, string $html = '' ][, mixed $border = 0 ][, int $ln = 0 ][, bool $fill = false ][, bool $reseth = true ][, string $align = '' ][, bool $autopadding = true ]) : mixed

The upper-left corner of the cell corresponds to the current position. After the call, the current position moves to the right or to the next line.
If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. IMPORTANT: The HTML must be well formatted - try to clean-up it using an application like HTML-Tidy before submitting. Supported tags are: a, b, blockquote, br, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, img, li, ol, p, pre, small, span, strong, sub, sup, table, tcpdf, td, th, thead, tr, tt, u, ul NOTE: all the HTML attributes must be enclosed in double-quote.

Parameters
$w : float

Cell width. If 0, the cell extends up to the right margin.

$h : float

Cell minimum height. The cell extends automatically if needed.

$x : float|null

upper-left corner X coordinate

$y : float|null

upper-left corner Y coordinate

$html : string = ''

html text to print. Default value: empty string.

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$ln : int = 0

Indicates where the current position should go after the call. Possible values are:

  • 0: to the right (or left for RTL language)
  • 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.

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$reseth : bool = true

if true reset the last cell height (default true).

$align : string = ''

Allows to center or align the text. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$autopadding : bool = true

if true, uses internal padding and automatically adjust it to account for line width.

Tags
see

Multicell(), writeHTML()

public

_addfield()

Adds a javascript form field.

protected _addfield(string $type, string $name, int $x, int $y, int $w, int $h, array<string|int, mixed> $prop) : mixed
Parameters
$type : string

field type

$name : string

field name

$x : int

horizontal position

$y : int

vertical position

$w : int

width

$h : int

height

$prop : array<string|int, mixed>

javascript field properties. Possible values are described on official Javascript for Acrobat API reference.

Tags
protected
author

Denis Van Nuffelen, Nicola Asuni

since
2.1.002

(2008-02-12)

_beginpage()

Initialize a new page.

protected _beginpage([string $orientation = '' ][, mixed $format = '' ]) : mixed
Parameters
$orientation : string = ''

page orientation. Possible values are (case insensitive):

  • P or PORTRAIT (default)
  • L or LANDSCAPE

$format : mixed = ''

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().

Tags
protected
see

getPageSizeFromFormat(), setPageFormat()

_datastring()

Format a data string for meta information

protected _datastring(string $s[, int $n = 0 ]) : string
Parameters
$s : string

data string to escape.

$n : int = 0

object ID

Tags
protected
Return values
string

escaped string.

_datestring()

Returns a formatted date for meta information

protected _datestring([int $n = 0 ][, int $timestamp = 0 ]) : string
Parameters
$n : int = 0

Object ID.

$timestamp : int = 0

Timestamp to convert.

Tags
protected
since
4.6.028

(2009-08-25)

Return values
string

escaped date string.

_dochecks()

Check for locale-related bug

protected _dochecks() : mixed
Tags
protected

_dolinethrough()

Line through text.

protected _dolinethrough(int $x, int $y, string $txt) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$txt : string

text to linethrough

Tags
protected

_dolinethroughw()

Line through for rectangular text area.

protected _dolinethroughw(int $x, int $y, int $w) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$w : int

line length (width)

Tags
protected
since
4.9.008

(2009-09-29)

_dooverline()

Overline text.

protected _dooverline(int $x, int $y, string $txt) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$txt : string

text to overline

Tags
protected
since
4.9.015

(2010-04-19)

_dooverlinew()

Overline for rectangular text area.

protected _dooverlinew(int $x, int $y, int $w) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$w : int

width to overline

Tags
protected
since
4.9.015

(2010-04-19)

_dounderline()

Underline text.

protected _dounderline(int $x, int $y, string $txt) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$txt : string

text to underline

Tags
protected

_dounderlinew()

Underline for rectangular text area.

protected _dounderlinew(int $x, int $y, int $w) : mixed
Parameters
$x : int

X coordinate

$y : int

Y coordinate

$w : int

width to underline

Tags
protected
since
4.8.008

(2009-09-29)

_encrypt_data()

Encrypt the input string.

protected _encrypt_data(int $n, string $s) : string
Parameters
$n : int

object number

$s : string

data string to encrypt

Tags
protected
author

Nicola Asuni

since
5.0.005

(2010-05-11)

Return values
string

encrypted string

_enddoc()

Output end of document (EOF).

protected _enddoc() : mixed
Tags
protected

_endpage()

Mark end of page.

protected _endpage() : mixed
Tags
protected

_fixAES256Password()

Convert password for AES-256 encryption mode

protected _fixAES256Password(string $password) : string
Parameters
$password : string

password

Tags
protected
since
5.9.006

(2010-10-19)

author

Nicola Asuni

Return values
string

password

_generateencryptionkey()

Compute encryption key

protected _generateencryptionkey() : mixed
Tags
protected
since
2.0.000

(2008-01-02)

author

Nicola Asuni

_getannotsrefs()

Get references to page annotations.

protected _getannotsrefs(int $n) : string
Parameters
$n : int

page number

Tags
protected
author

Nicola Asuni

since
5.0.010

(2010-05-17)

Return values
string

_getobj()

Return the starting object string for the selected object ID.

protected _getobj([int|null $objid = null ]) : string
Parameters
$objid : int|null = null

Object ID (leave empty to get a new ID).

Tags
protected
since
5.8.009

(2010-08-20)

Return values
string

the starting object string

_getrawstream()

get raw output stream.

protected _getrawstream(string $s[, int $n = 0 ]) : mixed
Parameters
$s : string

string to output.

$n : int = 0

object reference for encryption mode

Tags
protected
author

Nicola Asuni

since
5.5.000

(2010-06-22)

_getxobjectdict()

Return XObjects Dictionary.

protected _getxobjectdict() : string
Tags
protected
since
5.8.014

(2010-08-23)

Return values
string

XObjects dictionary

_newobj()

Begin a new object and return the object number.

protected _newobj() : int
Tags
protected
Return values
int

object number

_objectkey()

Compute encryption key depending on object number where the encrypted data is stored.

protected _objectkey(int $n) : int

This is used for all strings and streams without crypt filter specifier.

Parameters
$n : int

object number

Tags
protected
author

Nicola Asuni

since
2.0.000

(2008-01-02)

Return values
int

object key

_OEvalue()

Compute OE value (used for encryption)

protected _OEvalue() : string
Tags
protected
since
5.9.006

(2010-10-19)

author

Nicola Asuni

Return values
string

OE value

_out()

Output a string to the document.

protected _out(string $s) : mixed
Parameters
$s : string

string to output.

Tags
protected

_outCurve()

Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x2, y2) as the Bezier control points.

protected _outCurve(float $x1, float $y1, float $x2, float $y2, float $x3, float $y3) : mixed

The new current point shall be (x3, y3).

Parameters
$x1 : float

Abscissa of control point 1.

$y1 : float

Ordinate of control point 1.

$x2 : float

Abscissa of control point 2.

$y2 : float

Ordinate of control point 2.

$x3 : float

Abscissa of end point.

$y3 : float

Ordinate of end point.

Tags
protected
since
2.1.000

(2008-01-08)

_outCurveV()

Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using the current point and (x2, y2) as the Bezier control points.

protected _outCurveV(float $x2, float $y2, float $x3, float $y3) : mixed

The new current point shall be (x3, y3).

Parameters
$x2 : float

Abscissa of control point 2.

$y2 : float

Ordinate of control point 2.

$x3 : float

Abscissa of end point.

$y3 : float

Ordinate of end point.

Tags
protected
since
4.9.019

(2010-04-26)

_outCurveY()

Append a cubic Bezier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x3, y3) as the Bezier control points.

protected _outCurveY(float $x1, float $y1, float $x3, float $y3) : mixed

The new current point shall be (x3, y3).

Parameters
$x1 : float

Abscissa of control point 1.

$y1 : float

Ordinate of control point 1.

$x3 : float

Abscissa of end point.

$y3 : float

Ordinate of end point.

Tags
protected
since
2.1.000

(2008-01-08)

_outellipticalarc()

Append an elliptical arc to the current path.

protected _outellipticalarc(float $xc, float $yc, float $rx, float $ry[, float $xang = 0 ][, float $angs = 0 ][, float $angf = 360 ][, bool $pie = false ][, int $nc = 2 ][, bool $startpoint = true ][, bool $ccw = true ][, bool $svg = false ]) : array<string|int, mixed>

An ellipse is formed from n Bezier curves.

Parameters
$xc : float

Abscissa of center point.

$yc : float

Ordinate of center point.

$rx : float

Horizontal radius.

$ry : float

Vertical radius (if ry = 0 then is a circle, see Circle()). Default value: 0.

$xang : float = 0

Angle between the X-axis and the major axis of the ellipse. Default value: 0.

$angs : float = 0

Angle start of draw line. Default value: 0.

$angf : float = 360

Angle finish of draw line. Default value: 360.

$pie : bool = false

if true do not mark the border point (used to draw pie sectors).

$nc : int = 2

Number of curves used to draw a 90 degrees portion of ellipse.

$startpoint : bool = true

if true output a starting point.

$ccw : bool = true

if true draws in counter-clockwise.

$svg : bool = false

if true the angles are in svg mode (already calculated).

Tags
author

Nicola Asuni

protected
since
4.9.019

(2010-04-26)

Return values
array<string|int, mixed>

bounding box coordinates (x min, y min, x max, y max)

_outLine()

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

protected _outLine(float $x, float $y) : mixed

The new current point shall be (x, y).

Parameters
$x : float

Abscissa of end point.

$y : float

Ordinate of end point.

Tags
protected
since
2.1.000

(2008-01-08)

_outPoint()

Begin a new subpath by moving the current point to coordinates (x, y), omitting any connecting line segment.

protected _outPoint(float $x, float $y) : mixed
Parameters
$x : float

Abscissa of point.

$y : float

Ordinate of point.

Tags
protected
since
2.1.000

(2008-01-08)

_outRect()

Append a rectangle to the current path as a complete subpath, with lower-left corner (x, y) and dimensions widthand height in user space.

protected _outRect(float $x, float $y, float $w, float $h, string $op) : mixed
Parameters
$x : float

Abscissa of upper-left corner.

$y : float

Ordinate of upper-left corner.

$w : float

Width.

$h : float

Height.

$op : string

options

Tags
protected
since
2.1.000

(2008-01-08)

_outRestoreGraphicsState()

Outputs the "restore graphics state" operator 'Q'

protected _outRestoreGraphicsState() : mixed
Tags
protected

_outSaveGraphicsState()

Outputs the "save graphics state" operator 'q'

protected _outSaveGraphicsState() : mixed
Tags
protected

_Ovalue()

Compute O value (used for encryption)

protected _Ovalue() : string
Tags
protected
since
2.0.000

(2008-01-02)

author

Nicola Asuni

Return values
string

O value

_putannotsobjs()

Output annotations objects for all pages.

protected _putannotsobjs() : mixed

!!! THIS METHOD IS NOT YET COMPLETED !!! See section 12.5 of PDF 32000_2008 reference.

Tags
protected
author

Nicola Asuni

since
4.0.018

(2008-08-06)

_putAPXObject()

Put appearance streams XObject used to define annotation's appearance states.

protected _putAPXObject([int $w = 0 ][, int $h = 0 ][, string $stream = '' ]) : int
Parameters
$w : int = 0

annotation width

$h : int = 0

annotation height

$stream : string = ''

appearance stream

Tags
protected
since
4.8.001

(2009-09-09)

Return values
int

object ID

_putbookmarks()

Create a bookmark PDF string.

protected _putbookmarks() : mixed
Tags
protected
author

Olivier Plathey, Nicola Asuni

since
2.1.002

(2008-02-12)

_putcatalog()

Output Catalog.

protected _putcatalog() : int
Tags
protected
Return values
int

object id

_putcidfont0()

Output CID-0 fonts.

protected _putcidfont0(array<string|int, mixed> $font) : mixed

A Type 0 CIDFont contains glyph descriptions based on the Adobe Type 1 font format

Parameters
$font : array<string|int, mixed>

font data

Tags
protected
author

Andrew Whitehead, Nicola Asuni, Yukihiro Nakadaira

since
3.2.000

(2008-06-23)

_putdests()

Insert Named Destinations.

protected _putdests() : mixed
Tags
protected
author

Johannes G\FCntert, Nicola Asuni

since
5.9.098

(2011-06-23)

_putEmbeddedFiles()

Embedd the attached files.

protected _putEmbeddedFiles() : mixed
Tags
since
4.4.000

(2008-12-07)

protected
see
Annotation()

_putencryption()

Put encryption on PDF document.

protected _putencryption() : mixed
Tags
protected
author

Nicola Asuni

since
2.0.000

(2008-01-02)

_putextgstates()

Put extgstates for object transparency

protected _putextgstates() : mixed
Tags
protected
since
3.0.000

(2008-03-27)

_putfonts()

Output fonts.

protected _putfonts() : mixed
Tags
author

Nicola Asuni

protected

_putheader()

Output PDF File Header (7.5.2).

protected _putheader() : mixed
Tags
protected

_putimages()

Output images.

protected _putimages() : mixed
Tags
protected

_putinfo()

Adds some Metadata information (Document Information Dictionary) (see Chapter 14.3.3 Document Information Dictionary of PDF32000_2008.pdf Reference)

protected _putinfo() : int
Tags
protected
Return values
int

object id

_putjavascript()

Create a javascript PDF string.

protected _putjavascript() : mixed
Tags
protected
author

Johannes G\FCntert, Nicola Asuni

since
2.1.002

(2008-02-12)

_putocg()

Put pdf layers.

protected _putocg() : mixed
Tags
protected
since
3.0.000

(2008-03-27)

_putpages()

Output pages (and replace page number aliases).

protected _putpages() : mixed
Tags
protected

_putresourcedict()

Output Resources Dictionary.

protected _putresourcedict() : mixed
Tags
protected

_putresources()

Output Resources.

protected _putresources() : mixed
Tags
protected

_putsignature()

Add certification signature (DocMDP or UR3) You can set only one signature type

protected _putsignature() : mixed
Tags
protected
author

Nicola Asuni

since
4.6.008

(2009-05-07)

_putspotcolors()

Output Spot Colors Resources.

protected _putspotcolors() : mixed
Tags
protected
since
4.0.024

(2008-09-12)

_puttruetypeunicode()

Adds unicode fonts.<br> Based on PDF Reference 1.3 (section 5)

protected _puttruetypeunicode(array<string|int, mixed> $font) : mixed
Parameters
$font : array<string|int, mixed>

font data

Tags
protected
author

Nicola Asuni

since
1.52.0.TC005

(2005-01-05)

_putviewerpreferences()

Output viewer preferences.

protected _putviewerpreferences() : string
Tags
author

Nicola asuni

since
3.1.000

(2008-06-09)

protected
Return values
string

for viewer preferences

_putXMP()

Put XMP data object and return ID.

protected _putXMP() : int
Tags
since
5.9.121

(2011-09-28)

protected
Return values
int

The object ID.

_putxobjects()

Output Form XObjects Templates.

protected _putxobjects() : mixed
Tags
author

Nicola Asuni

since
5.8.017

(2010-08-24)

protected
see

startTemplate(), endTemplate(), printTemplate()

_textstring()

Format a text string for meta information

protected _textstring(string $s[, int $n = 0 ]) : string
Parameters
$s : string

string to escape.

$n : int = 0

object ID

Tags
protected
Return values
string

escaped string.

_UEvalue()

Compute UE value (used for encryption)

protected _UEvalue() : string
Tags
protected
since
5.9.006

(2010-10-19)

author

Nicola Asuni

Return values
string

UE value

_Uvalue()

Compute U value (used for encryption)

protected _Uvalue() : string
Tags
protected
since
2.0.000

(2008-01-02)

author

Nicola Asuni

Return values
string

U value

addExtGState()

Add transparency parameters to the current extgstate

protected addExtGState(array<string|int, mixed> $parms) : int|void
Parameters
$parms : array<string|int, mixed>

parameters

Tags
protected
since
3.0.000

(2008-03-27)

Return values
int|void

the number of extgstates

addHTMLVertSpace()

Add vertical spaces if needed.

protected addHTMLVertSpace([string $hbz = 0 ][, string $hb = 0 ][, bool $cell = false ][, bool $firsttag = false ][, bool $lasttag = false ]) : mixed
Parameters
$hbz : string = 0

Distance between current y and line bottom.

$hb : string = 0

The height of the break.

$cell : bool = false

if true add the default left (or right if RTL) padding to each new line (default false).

$firsttag : bool = false

set to true when the tag is the first.

$lasttag : bool = false

set to true when the tag is the last.

Tags
protected

adjustCellPadding()

Adjust the internal Cell padding array to take account of the line width.

protected adjustCellPadding([string|array<string|int, mixed>|int|bool $brd = 0 ]) : void|array<string|int, mixed>
Parameters
$brd : string|array<string|int, mixed>|int|bool = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

Tags
public
since
5.9.000

(2010-10-03)

Return values
void|array<string|int, mixed>

array of adjustments

allowedTCPDFtag()

Check if a TCPDF tag is allowed

protected allowedTCPDFtag(string $method) : bool
Parameters
$method : string

TCPDF method name

Tags
protected
Return values
bool

applyTSA()

NOT YET IMPLEMENTED Request TSA for a timestamp

protected applyTSA(string $signature) : string
Parameters
$signature : string

Digital signature as binary string

Tags
protected
author

Richard Stockinger

since
6.0.090

(2014-06-16)

Return values
string

Timestamped digital signature

checkPageBreak()

Add page if needed.

protected checkPageBreak([float $h = 0 ][, float|null $y = null ][, bool $addpage = true ]) : bool
Parameters
$h : float = 0

Cell height. Default value: 0.

$y : float|null = null

starting y position, leave empty for current position.

$addpage : bool = true

if true add a page, otherwise only return the true/false state

Tags
since
3.2.000

(2008-07-01)

protected
Return values
bool

true in case of page break, false otherwise.

checkPageRegions()

Check page for no-write regions and adapt current coordinates and page margins if necessary.

protected checkPageRegions(float $h, float $x, float $y) : array<string|int, float>

A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. A region is always aligned on the left or right side of the page ad is defined using a vertical segment.

Parameters
$h : float

height of the text/image/object to print in user units

$x : float

current X coordinate in user units

$y : float

current Y coordinate in user units

Tags
author

Nicola Asuni

protected
since
5.9.003

(2010-10-13)

Return values
array<string|int, float>

array($x, $y)

Clip()

Set a rectangular clipping area.

protected Clip(float $x, float $y, float $w, float $h) : mixed
Parameters
$x : float

abscissa of the top left corner of the rectangle (or top right corner for RTL mode).

$y : float

ordinate of the top left corner of the rectangle.

$w : float

width of the rectangle.

$h : float

height of the rectangle.

Tags
author

Andreas W\FCrmser, Nicola Asuni

since
3.1.000

(2008-06-09)

protected

closeHTMLTagHandler()

Process closing tags.

protected closeHTMLTagHandler(array<string|int, mixed> $dom, int $key, bool $cell[, int $maxbottomliney = 0 ]) : array<string|int, mixed>
Parameters
$dom : array<string|int, mixed>

html dom array

$key : int

current element id

$cell : bool

if true add the default left (or right if RTL) padding to each new line (default false).

$maxbottomliney : int = 0

maximum y value of current line

Tags
protected
Return values
array<string|int, mixed>

$dom

convertSVGtMatrix()

Convert SVG transformation matrix to PDF.

protected convertSVGtMatrix(array<string|int, mixed> $tm) : array<string|int, mixed>
Parameters
$tm : array<string|int, mixed>

original SVG transformation matrix

Tags
protected
since
5.0.000

(2010-05-02)

Return values
array<string|int, mixed>

transformation matrix

drawHTMLTagBorder()

Draw an HTML block border and fill

protected drawHTMLTagBorder(array<string|int, mixed> $tag, int $xmax) : mixed
Parameters
$tag : array<string|int, mixed>

array of tag properties.

$xmax : int

end X coordinate for border.

Tags
protected
since
5.7.000

(2010-08-03)

endSVGElementHandler()

Sets the closing SVG element handler function for the XML parser.

protected endSVGElementHandler(resource|string $parser, string $name) : mixed
Parameters
$parser : resource|string

The first parameter, parser, is a reference to the XML parser calling the handler.

$name : string

The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters.

Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

protected

fileExists()

Avoid multiple calls to an external server to see if a file exists

protected fileExists(string $file) : bool
Parameters
$file : string
Return values
bool

fitBlock()

Set the block dimensions accounting for page breaks and page/column fitting

protected fitBlock(float $w, float $h, float $x, float $y[, bool $fitonpage = false ]) : array<string|int, mixed>
Parameters
$w : float

width

$h : float

height

$x : float

X coordinate

$y : float

Y coodiante

$fitonpage : bool = false

if true the block is resized to not exceed page dimensions.

Tags
protected
since
5.5.009

(2010-07-05)

Return values
array<string|int, mixed>

array($w, $h, $x, $y)

getAllInternalPageNumberAliases()

Return an array containing all internal page aliases.

protected getAllInternalPageNumberAliases() : array<string|int, mixed>
Tags
protected
Return values
array<string|int, mixed>

of page number aliases

getBorderStartPosition()

Return the starting coordinates to draw an html border

protected getBorderStartPosition() : array<string|int, mixed>
Tags
protected
since
5.7.000

(2010-08-03)

Return values
array<string|int, mixed>

containing top-left border coordinates

getBuffer()

Get buffer content.

protected getBuffer() : string
Tags
protected
since
4.5.000

(2009-01-02)

Return values
string

buffer content

getCachedFileContents()

Keeps files in memory, so it doesn't need to downloaded everytime in a loop

protected getCachedFileContents(string $file) : string
Parameters
$file : string
Return values
string

getCellBorder()

Returns the code to draw the cell border

protected getCellBorder(float $x, float $y, float $w, float $h, string|array<string|int, mixed>|int $brd) : string
Parameters
$x : float

X coordinate.

$y : float

Y coordinate.

$w : float

Cell width.

$h : float

Cell height.

$brd : string|array<string|int, mixed>|int

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

Tags
protected
see
SetLineStyle()
since
5.7.000

(2010-08-02)

Return values
string

containing cell border code

getCellCode()

Returns the PDF string code to print 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.<br /> If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.

protected getCellCode(float $w[, float $h = 0 ][, string $txt = '' ][, mixed $border = 0 ][, int $ln = 0 ][, string $align = '' ][, bool $fill = false ][, mixed $link = '' ][, int $stretch = 0 ][, bool $ignore_min_height = false ][, string $calign = 'T' ][, string $valign = 'M' ]) : string
Parameters
$w : float

Cell width. If 0, the cell extends up to the right margin.

$h : float = 0

Cell height. Default value: 0.

$txt : string = ''

String to print. Default value: empty string.

$border : mixed = 0

Indicates if borders must be drawn around the cell. The value can be a number:

  • 0: no border (default)
  • 1: frame
or a string containing some or all of the following characters (in any order):
  • L: left
  • T: top
  • R: right
  • B: bottom
or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)))

$ln : int = 0

Indicates where the current position should go after the call. Possible values are:

  • 0: to the right (or left for RTL languages)
  • 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 : string = ''

Allows to center or align the text. Possible values are:

  • L or empty string: left align (default value)
  • C: center
  • R: right align
  • J: justify

$fill : bool = false

Indicates if the cell background must be painted (true) or transparent (false).

$link : mixed = ''

URL or identifier returned by AddLink().

$stretch : int = 0

font stretch mode:

  • 0 = disabled
  • 1 = horizontal scaling only if text is larger than cell width
  • 2 = forced horizontal scaling to fit cell width
  • 3 = character spacing only if text is larger than cell width
  • 4 = forced character spacing to fit cell width
General font stretching and scaling values will be preserved when possible.

$ignore_min_height : bool = false

if true ignore automatic minimum height value.

$calign : string = 'T'

cell vertical alignment relative to the specified Y value. Possible values are:

  • T : cell top
  • C : center
  • B : cell bottom
  • A : font top
  • L : font baseline
  • D : font bottom

$valign : string = 'M'

text vertical alignment inside the cell. Possible values are:

  • T : top
  • M : middle
  • B : bottom

Tags
protected
since
1.0
see
Cell()
Return values
string

containing cell code

getCSSBorderDashStyle()

Returns the border dash style from CSS property

protected getCSSBorderDashStyle(string $style) : int
Parameters
$style : string

border style to convert

Tags
protected
since
5.7.000

(2010-08-02)

Return values
int

sash style (return -1 in case of none or hidden border)

getCSSBorderStyle()

Returns the border style array from CSS border properties

protected getCSSBorderStyle(string $cssborder) : array<string|int, mixed>
Parameters
$cssborder : string

border properties

Tags
protected
since
5.7.000

(2010-08-02)

Return values
array<string|int, mixed>

containing border properties

getCSSBorderWidth()

Returns the border width from CSS property

protected getCSSBorderWidth(string $width) : int
Parameters
$width : string

border width

Tags
protected
since
5.7.000

(2010-08-02)

Return values
int

with in user units

getCSSFontSpacing()

Returns the letter-spacing value from CSS value

protected getCSSFontSpacing(string $spacing[, float $parent = 0 ]) : float
Parameters
$spacing : string

letter-spacing value

$parent : float = 0

font spacing (tracking) value of the parent element

Tags
protected
since
5.9.000

(2010-10-02)

Return values
float

quantity to increases or decreases the space between characters in a text.

getCSSFontStretching()

Returns the percentage of font stretching from CSS value

protected getCSSFontStretching(string $stretch[, float $parent = 100 ]) : float
Parameters
$stretch : string

stretch mode

$parent : float = 100

stretch value of the parent element

Tags
protected
since
5.9.000

(2010-10-02)

Return values
float

font stretching percentage

getFontBuffer()

Get font buffer content.

protected getFontBuffer(string $font) : string|false
Parameters
$font : string

font key

Tags
protected
since
4.5.000

(2009-01-02)

Return values
string|false

font buffer content or false in case of error

getFontsList()

Fill the list of available fonts ($this->fontlist).

protected getFontsList() : mixed
Tags
protected
since
4.0.013

(2008-07-28)

getGDgamma()

Get the GD-corrected PNG gamma value from alpha color

protected getGDgamma(resource $img, int $c) : mixed
Parameters
$img : resource

GD image Resource ID.

$c : int

alpha color

Tags
protected
since
4.3.007

(2008-12-04)

getGraphicVars()

Returns current graphic variables as array.

protected getGraphicVars() : array<string|int, mixed>
Tags
protected
since
4.2.010

(2008-11-14)

Return values
array<string|int, mixed>

of graphic variables

getHtmlDomArray()

Returns the HTML DOM array.

protected getHtmlDomArray(string $html) : array<string|int, mixed>
Parameters
$html : string

html code

Tags
protected
since
3.2.000

(2008-06-20)

Return values
array<string|int, mixed>

getImageBuffer()

Get image buffer content.

protected getImageBuffer(string $image) : string|false
Parameters
$image : string

image key

Tags
protected
since
4.5.000

(2008-12-31)

Return values
string|false

image buffer content or false in case of error

getInternalPageNumberAliases()

Return an array containing variations for the basic page number alias.

protected getInternalPageNumberAliases([string $a = '' ]) : array<string|int, mixed>
Parameters
$a : string = ''

Base alias.

Tags
protected
Return values
array<string|int, mixed>

of page number aliases

getPageBuffer()

Get page buffer content.

protected getPageBuffer(int $page) : string
Parameters
$page : int

page number

Tags
protected
since
4.5.000

(2008-12-31)

Return values
string

page buffer content or false in case of error

getRemainingWidth()

Returns the remaining width between the current position and margins.

protected getRemainingWidth() : float
Tags
protected
Return values
float

Return the remaining width

getSignatureAppearanceArray()

Get the array that defines the signature appearance (page and rectangle coordinates).

protected getSignatureAppearanceArray([float $x = 0 ][, float $y = 0 ][, float $w = 0 ][, float $h = 0 ][, int $page = -1 ][, string $name = '' ]) : array<string|int, mixed>
Parameters
$x : float = 0

Abscissa of the upper-left corner.

$y : float = 0

Ordinate of the upper-left corner.

$w : float = 0

Width of the signature area.

$h : float = 0

Height of the signature area.

$page : int = -1

option page number (if < 0 the current page is used).

$name : string = ''

Name of the signature.

Tags
protected
author

Nicola Asuni

since
5.9.101

(2011-07-06)

Return values
array<string|int, mixed>

Array defining page and rectangle coordinates of signature appearance.

getSpaceString()

Returns the string used to find spaces

protected getSpaceString() : string
Tags
protected
author

Nicola Asuni

since
4.8.024

(2010-01-15)

Return values
string

hashTCPDFtag()

Calculates the hash value of the given data.

protected hashTCPDFtag(string $data) : string
Parameters
$data : string

The data to be hashed.

Return values
string

The hashed value of the data.

hyphenateWord()

Returns an array of chars containing soft hyphens.

protected hyphenateWord(array<string|int, mixed> $word, array<string|int, mixed> $patterns[, array<string|int, mixed> $dictionary = array() ][, int $leftmin = 1 ][, int $rightmin = 2 ][, int $charmin = 1 ][, int $charmax = 8 ]) : array<string|int, mixed>
Parameters
$word : array<string|int, mixed>

array of chars

$patterns : array<string|int, mixed>

Array of hypenation patterns.

$dictionary : array<string|int, mixed> = array()

Array of words to be returned without applying the hyphenation algorithm.

$leftmin : int = 1

Minimum number of character to leave on the left of the word without applying the hyphens.

$rightmin : int = 2

Minimum number of character to leave on the right of the word without applying the hyphens.

$charmin : int = 1

Minimum word length to apply the hyphenation algorithm.

$charmax : int = 8

Maximum length of broken piece of word.

Tags
author

Nicola Asuni

since
4.9.012

(2010-04-12)

protected
Return values
array<string|int, mixed>

text with soft hyphens

ImagePngAlpha()

Extract info from a PNG image with alpha channel using the Imagick or GD library.

protected ImagePngAlpha(string $file, float $x, float $y, float $wpx, float $hpx, float $w, float $h, string $type, mixed $link, string $align, bool $resize, int $dpi, string $palign[, string $filehash = '' ]) : mixed
Parameters
$file : string

Name of the file containing the image.

$x : float

Abscissa of the upper-left corner.

$y : float

Ordinate of the upper-left corner.

$wpx : float

Original width of the image in pixels.

$hpx : float

original height of the image in pixels.

$w : float

Width of the image in the page. If not specified or equal to zero, it is automatically calculated.

$h : float

Height of the image in the page. If not specified or equal to zero, it is automatically calculated.

$type : string

Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension.

$link : mixed

URL or identifier returned by AddLink().

$align : string

Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:

  • T: top-right for LTR or top-left for RTL
  • M: middle-right for LTR or middle-left for RTL
  • B: bottom-right for LTR or bottom-left for RTL
  • N: next line

$resize : bool

If true resize (reduce) the image to fit $w and $h (requires GD library).

$dpi : int

dot-per-inch resolution used on resize

$palign : string

Allows to center or align the image on the current line. Possible values are:

  • L : left align
  • C : center
  • R : right align
  • '' : empty string : left for LTR or right for RTL

$filehash : string = ''

File hash used to build unique file names.

Tags
author

Nicola Asuni

protected
since
4.3.007

(2008-12-04)

see
Image()

inPageBody()

Check if we are on the page body (excluding page header and footer).

protected inPageBody() : bool
Tags
protected
since
5.9.091

(2011-06-15)

Return values
bool

true if we are not in page header nor in page footer, false otherwise.

openHTMLTagHandler()

Process opening tags.

protected openHTMLTagHandler(array<string|int, mixed> $dom, int $key, bool $cell) : array<string|int, mixed>
Parameters
$dom : array<string|int, mixed>

html dom array

$key : int

current element id

$cell : bool

if true add the default left (or right if RTL) padding to each new line (default false).

Tags
protected
Return values
array<string|int, mixed>

$dom

putHtmlListBullet()

Output an HTML list bullet or ordered item symbol

protected putHtmlListBullet(int $listdepth[, string $listtype = '' ][, float $size = 10 ]) : mixed
Parameters
$listdepth : int

list nesting level

$listtype : string = ''

type of list

$size : float = 10

current font size

Tags
protected
since
4.4.004

(2008-12-10)

removeTagNamespace()

Return the tag name without the namespace

protected removeTagNamespace(string $name) : mixed
Parameters
$name : string

Tag name

Tags
protected

replaceBuffer()

Replace the buffer content

protected replaceBuffer(string $data) : mixed
Parameters
$data : string

data

Tags
protected
since
5.5.000

(2010-06-22)

replaceChar()

Replace a char if is defined on the current font.

protected replaceChar(int $oldchar, int $newchar) : int
Parameters
$oldchar : int

Integer code (unicode) of the character to replace.

$newchar : int

Integer code (unicode) of the new character.

Tags
protected
since
5.9.167

(2012-06-22)

Return values
int

the replaced char or the old char in case the new char i not defined

replaceRightShiftPageNumAliases()

Replace right shift page number aliases with spaces to correct right alignment.

protected replaceRightShiftPageNumAliases(string $page, array<string|int, mixed> $aliases, int $diff) : string

This works perfectly only when using monospaced fonts.

Parameters
$page : string

Page content.

$aliases : array<string|int, mixed>

Array of page aliases.

$diff : int

initial difference to add.

Tags
protected
Return values
string

replaced page content.

segSVGContentHandler()

Sets the character data handler function for the XML parser.

protected segSVGContentHandler(resource $parser, string $data) : mixed
Parameters
$parser : resource

The first parameter, parser, is a reference to the XML parser calling the handler.

$data : string

The second parameter, data, contains the character data as a string.

Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

protected

setBuffer()

Set buffer content (always append data).

protected setBuffer(string $data) : mixed
Parameters
$data : string

data

Tags
protected
since
4.5.000

(2009-01-02)

setContentMark()

Set start-writing mark on selected page.

protected setContentMark([int $page = 0 ]) : mixed

Borders and fills are always created after content and inserted on the position marked by this method.

Parameters
$page : int = 0

page number (default is the current page)

Tags
protected
since
4.6.021

(2009-07-20)

setExtGState()

Add an extgstate

protected setExtGState(int $gs) : mixed
Parameters
$gs : int

extgstate

Tags
protected
since
3.0.000

(2008-03-27)

setFontBuffer()

Set font buffer content.

protected setFontBuffer(string $font, array<string|int, mixed> $data) : mixed
Parameters
$font : string

font key

$data : array<string|int, mixed>

font data

Tags
protected
since
4.5.000

(2009-01-02)

setFontSubBuffer()

Set font buffer content.

protected setFontSubBuffer(string $font, string $key, mixed $data) : mixed
Parameters
$font : string

font key

$key : string

font sub-key

$data : mixed

font data

Tags
protected
since
4.5.000

(2009-01-02)

setFooter()

This method is used to render the page footer.

protected setFooter() : mixed
Tags
protected
since
4.0.012

(2008-07-24)

setGraphicVars()

Set graphic variables.

protected setGraphicVars(array<string|int, mixed> $gvars[, bool $extended = false ]) : mixed
Parameters
$gvars : array<string|int, mixed>

array of graphic variablesto restore

$extended : bool = false

if true restore extended graphic variables

Tags
protected
since
4.2.010

(2008-11-14)

setHeader()

This method is used to render the page header.

protected setHeader() : mixed
Tags
protected
since
4.0.012

(2008-07-24)

setImageBuffer()

Set image buffer content.

protected setImageBuffer(string $image, array<string|int, mixed> $data) : int
Parameters
$image : string

image key

$data : array<string|int, mixed>

image data

Tags
protected
since
4.5.000

(2008-12-31)

Return values
int

image index number

setImageSubBuffer()

Set image buffer content for a specified sub-key.

protected setImageSubBuffer(string $image, string $key, array<string|int, mixed> $data) : mixed
Parameters
$image : string

image key

$key : string

image sub-key

$data : array<string|int, mixed>

image data

Tags
protected
since
4.5.000

(2008-12-31)

setPageBoxTypes()

Set page boxes to be included on page descriptions.

protected setPageBoxTypes(array<string|int, mixed> $boxes) : mixed
Parameters
$boxes : array<string|int, mixed>

Array of page boxes to set on document: ('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox').

Tags
protected

setPageBuffer()

Set page buffer content.

protected setPageBuffer(int $page, string $data[, bool $append = false ]) : mixed
Parameters
$page : int

page number

$data : string

page data

$append : bool = false

if true append data, false replace.

Tags
protected
since
4.5.000

(2008-12-31)

setPageFormat()

Change the format of the current page

protected setPageFormat(mixed $format[, string $orientation = 'P' ]) : mixed
Parameters
$format : mixed

The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() documentation or an array of two numbers (width, height) or an array containing the following measures and options:

  • ['format'] = page format name (one of the above);
  • ['Rotate'] : The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90.
  • ['PZ'] : The page's preferred zoom (magnification) factor.
  • ['MediaBox'] : the boundaries of the physical medium on which the page shall be displayed or printed:
  • ['MediaBox']['llx'] : lower-left x coordinate
  • ['MediaBox']['lly'] : lower-left y coordinate
  • ['MediaBox']['urx'] : upper-right x coordinate
  • ['MediaBox']['ury'] : upper-right y coordinate
  • ['CropBox'] : the visible region of default user space:
  • ['CropBox']['llx'] : lower-left x coordinate
  • ['CropBox']['lly'] : lower-left y coordinate
  • ['CropBox']['urx'] : upper-right x coordinate
  • ['CropBox']['ury'] : upper-right y coordinate
  • ['BleedBox'] : the region to which the contents of the page shall be clipped when output in a production environment:
  • ['BleedBox']['llx'] : lower-left x coordinate
  • ['BleedBox']['lly'] : lower-left y coordinate
  • ['BleedBox']['urx'] : upper-right x coordinate
  • ['BleedBox']['ury'] : upper-right y coordinate
  • ['TrimBox'] : the intended dimensions of the finished page after trimming:
  • ['TrimBox']['llx'] : lower-left x coordinate
  • ['TrimBox']['lly'] : lower-left y coordinate
  • ['TrimBox']['urx'] : upper-right x coordinate
  • ['TrimBox']['ury'] : upper-right y coordinate
  • ['ArtBox'] : the extent of the page's meaningful content:
  • ['ArtBox']['llx'] : lower-left x coordinate
  • ['ArtBox']['lly'] : lower-left y coordinate
  • ['ArtBox']['urx'] : upper-right x coordinate
  • ['ArtBox']['ury'] : upper-right y coordinate
  • ['BoxColorInfo'] :specify the colours and other visual characteristics that should be used in displaying guidelines on the screen for each of the possible page boundaries other than the MediaBox:
  • ['BoxColorInfo'][BOXTYPE]['C'] : an array of three numbers in the range 0-255, representing the components in the DeviceRGB colour space.
  • ['BoxColorInfo'][BOXTYPE]['W'] : the guideline width in default user units
  • ['BoxColorInfo'][BOXTYPE]['S'] : the guideline style: S = Solid; D = Dashed
  • ['BoxColorInfo'][BOXTYPE]['D'] : dash array defining a pattern of dashes and gaps to be used in drawing dashed guidelines
  • ['trans'] : the style and duration of the visual transition to use when moving from another page to the given page during a presentation
  • ['trans']['Dur'] : The page's display duration (also called its advance timing): the maximum length of time, in seconds, that the page shall be displayed during presentations before the viewer application shall automatically advance to the next page.
  • ['trans']['S'] : transition style : Split, Blinds, Box, Wipe, Dissolve, Glitter, R, Fly, Push, Cover, Uncover, Fade
  • ['trans']['D'] : The duration of the transition effect, in seconds.
  • ['trans']['Dm'] : (Split and Blinds transition styles only) The dimension in which the specified transition effect shall occur: H = Horizontal, V = Vertical. Default value: H.
  • ['trans']['M'] : (Split, Box and Fly transition styles only) The direction of motion for the specified transition effect: I = Inward from the edges of the page, O = Outward from the center of the pageDefault value: I.
  • ['trans']['Di'] : (Wipe, Glitter, Fly, Cover, Uncover and Push transition styles only) The direction in which the specified transition effect shall moves, expressed in degrees counterclockwise starting from a left-to-right direction. If the value is a number, it shall be one of: 0 = Left to right, 90 = Bottom to top (Wipe only), 180 = Right to left (Wipe only), 270 = Top to bottom, 315 = Top-left to bottom-right (Glitter only). If the value is a name, it shall be None, which is relevant only for the Fly transition when the value of SS is not 1.0. Default value: 0.
  • ['trans']['SS'] : (Fly transition style only) The starting or ending scale at which the changes shall be drawn. If M specifies an inward transition, the scale of the changes drawn shall progress from SS to 1.0 over the course of the transition. If M specifies an outward transition, the scale of the changes drawn shall progress from 1.0 to SS over the course of the transition. Default: 1.0.
  • ['trans']['B'] : (Fly transition style only) If true, the area that shall be flown in is rectangular and opaque. Default: false.
$orientation : string = 'P'

page orientation. Possible values are (case insensitive):

  • P or Portrait (default)
  • L or Landscape
  • '' (empty string) for automatic orientation
Tags
protected
since
3.0.015

(2008-06-06)

see
getPageSizeFromFormat()

setSVGStyles()

Apply the requested SVG styles (*** TO BE COMPLETED ***)

protected setSVGStyles(array<string|int, mixed> $svgstyle, array<string|int, mixed> $prevsvgstyle[, int $x = 0 ][, int $y = 0 ][, int $w = 1 ][, int $h = 1 ][, string $clip_function = '' ][, array<string|int, mixed> $clip_params = array() ]) : string
Parameters
$svgstyle : array<string|int, mixed>

array of SVG styles to apply

$prevsvgstyle : array<string|int, mixed>

array of previous SVG style

$x : int = 0

X origin of the bounding box

$y : int = 0

Y origin of the bounding box

$w : int = 1

width of the bounding box

$h : int = 1

height of the bounding box

$clip_function : string = ''

clip function

$clip_params : array<string|int, mixed> = array()

array of parameters for clipping function

Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

protected
Return values
string

style

setTableHeader()

This method is used to render the table header on new page (if any).

protected setTableHeader() : mixed
Tags
protected
since
4.5.030

(2009-03-25)

sortBookmarks()

Sort bookmarks for page and key.

protected sortBookmarks() : mixed
Tags
protected
since
5.9.119

(2011-09-19)

startSVGElementHandler()

Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***)

protected startSVGElementHandler(resource|string $parser, string $name, array<string|int, mixed> $attribs[, array<string|int, mixed> $ctm = array() ]) : mixed
Parameters
$parser : resource|string

The first parameter, parser, is a reference to the XML parser calling the handler.

$name : string

The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters.

$attribs : array<string|int, mixed>

The third parameter, attribs, contains an associative array with the element's attributes (if any). The keys of this array are the attribute names, the values are the attribute values. Attribute names are case-folded on the same criteria as element names. Attribute values are not case-folded. The original order of the attributes can be retrieved by walking through attribs the normal way, using each(). The first key in the array was the first attribute, and so on.

$ctm : array<string|int, mixed> = array()

tranformation matrix for clipping mode (starting transformation matrix).

Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

protected

SVGPath()

Draws an SVG path

protected SVGPath(string $d[, string $style = '' ]) : array<string|int, mixed>
Parameters
$d : string

attribute d of the path SVG element

$style : string = ''

Style of rendering. Possible values are:

  • D or empty string: Draw (default).
  • F: Fill.
  • F*: Fill using the even-odd rule to determine which regions lie inside the clipping path.
  • DF or FD: Draw and fill.
  • DF* or FD*: Draw and fill using the even-odd rule to determine which regions lie inside the clipping path.
  • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
  • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
Tags
author

Nicola Asuni

since
5.0.000

(2010-05-02)

protected
Return values
array<string|int, mixed>

of container box measures (x, y, w, h)

SVGTransform()

Apply SVG graphic transformation matrix.

protected SVGTransform(array<string|int, mixed> $tm) : mixed
Parameters
$tm : array<string|int, mixed>

original SVG transformation matrix

Tags
protected
since
5.0.000

(2010-05-02)

swapMargins()

Swap the left and right margins.

protected swapMargins([bool $reverse = true ]) : mixed
Parameters
$reverse : bool = true

if true swap left and right margins.

Tags
protected
since
4.2.000

(2008-10-29)

Transform()

Apply graphic transformations.

protected Transform(array<string|int, mixed> $tm) : mixed
Parameters
$tm : array<string|int, mixed>

transformation matrix

Tags
protected
since
2.1.000

(2008-01-07)

see

StartTransform(), StopTransform()

unserializeTCPDFtag()

Unserialize data to be used with TCPDF tag in HTML code.

protected unserializeTCPDFtag(string $data) : array<string|int, mixed>
Parameters
$data : string

serialized data

Tags
protected

static

Return values
array<string|int, mixed>

containing unserialized data


        
On this page

Search results