TCPDF Custom page size
Asked Answered
E

7

33

This example on tcpdf's website shows how to use page formats like A4, A5 etc, but how do I set tcpdf to use custom sizes like 175mm x 266 mm?

Solutions appreciated.

Endothecium answered 16/10, 2010 at 12:7 Comment(0)
G
55

No editing of the class is require... tcpdf doesn't accept a width/length parameter, it just accepts two lengths and determines which is which using the layout (either Portrait or Landscape)

$pageLayout = array($width, $height); //  or array($height, $width) 
$pdf = new TCPDF('p', 'pt', $pageLayout, true, 'UTF-8', false);
Grigg answered 24/6, 2011 at 12:6 Comment(0)
G
10

On the newer TCPDF version you can define the page size in multiple ways:

  • All standard page formats are already defined (more than 300 types).
  • You can simply define a page size by defining an array with 2 numbers: width, height (regardless the page orientation).
  • Alternatively, you can define advanced page details (MediaBox, Cropbox, BleedBox, TrimBox, ArtBox) as explained on the documentation of the setPageFormat() method at http://www.tcpdf.org.

Check also the default examples no. 28 and 60 at http://www.tcpdf.org.

Gendron answered 27/9, 2011 at 7:9 Comment(0)
J
10

Go to /config/tcpdf_config.php and around line 117, modify the line:

define ('PDF_PAGE_FORMAT', 'A4');

by

define ('PDF_PAGE_FORMAT', 'LETTER');

It is important to put "LETTER" in uppercase, you can see all possible values in this file: tcpdf/include/tcpdf_static.php.

Jawbreaker answered 3/4, 2014 at 16:6 Comment(0)
B
3

The truth, now you can solve it like this.

//AddPage [P(PORTRAIT),L(LANDSCAPE)],FORMAT(A4-A5-ETC)

$pdf->AddPage('P','A5');

Source: https://tcpdf.org/examples/example_028/

Burro answered 14/10, 2016 at 9:53 Comment(0)
G
2
// 8.5 X 13 inches paper (8.5, 13)
// Convert inches to mm (215.9, 330.2)

$pdf = new Pdf('P', 'mm', array(215.9, 330.2), true, 'UTF-8', false);
Gentes answered 21/2, 2022 at 3:37 Comment(1)
Welcome to Stackoveflow Go throug this odc please stackoverflow.com/help/how-to-answerParturition
E
0

Edit tcpdf.php and add a new page type or modify an existing type to your page size.

Endothecium answered 23/10, 2010 at 12:51 Comment(0)
W
0

The above answer won't work for me, so I add my solution here - from http://www.tcpdf.org/examples/example_060.phps, change urx, ury for your purpose

// set page format (read source code documentation for further information)
// MediaBox - width = urx - llx 210 (mm), height = ury - lly = 297 (mm) this is A4
$page_format = array(
    'MediaBox' => array ('llx' => 0, 'lly' => 0, 'urx' => 210, 'ury' => 297),
    //'CropBox' => array ('llx' => 0, 'lly' => 0, 'urx' => 210, 'ury' => 297),
    //'BleedBox' => array ('llx' => 5, 'lly' => 5, 'urx' => 205, 'ury' => 292),
    //'TrimBox' => array ('llx' => 10, 'lly' => 10, 'urx' => 200, 'ury' => 287),
    //'ArtBox' => array ('llx' => 15, 'lly' => 15, 'urx' => 195, 'ury' => 282),
    'Dur' => 3,
    'trans' => array(
        'D' => 1.5,
        'S' => 'Split',
        'Dm' => 'V',
        'M' => 'O'
    ),
    'Rotate' => 90,
    'PZ' => 1,
);

// Check the example n. 29 for viewer preferences

// add first page ---
$pdf->AddPage('P', $page_format, false, false);
Warmup answered 24/9, 2013 at 14:55 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.