html2ps/pdf script parameters

Back to table of contents

Note that parameter names are case-sensitive. This script accepts parameters passed using both the GET and POST methods. Script parameters (in order that the corresponding controls appear in index.php) are:

Parameter Description
URL URL you're going to convert (page should be available via either http or https). Note that the http:// prefix is prepended to this value automatically in case no http or https protocol part is found, thus you may set the value of this parameter, for example, to www.google.com, not http://www.google.com
pixels

'Virtual screen' horizontal resolution used during the page rendering process. As you know, a lot of HTML pages contain dimensions set in pixels -- images, in most cases, but sometimes fonts. Postscript/PDF files do not have "pixels", all dimensions are measured in "points" so we need to provide information about the pixel/point ratio. In our case, this ratio can be calculated as follows:

R = (page full width in points - page horizontal margins in points) / virtual resolution

Thus, you can specify resolution in 800 pixels and make pages designed for 800x600 resolution to fit your printed page exactly.

index.php provides three default values for this parameter: 640, 800 and 1024; if you need more exotic value, say 945, you may specify this in the script query string manually and still get correct results.

Please note that pages may be cut off on the right side if they're designed for the higher resolution than you've specified (for example, if they have hardcoded table widths or wide images). It is a feature. In such cases please consider increasing 'pixels' value.

scalepoint

When a page contains both device-dependent (in pixels) and device-independent (in points) dimensions, we're in trouble. For example, imagine a page containing absolute-positioned text inside the image; in this case, as display and paper have different sizes, point/pixel ratio will be different in the browser window and file rendered by the script, possilibly breaking the page layout. To prevent this, the scalepoint option is used.

If this parameter is set, the HTML page "points" are scaled to keep the mentioned ratio, so if you print the resulting file and measure fonts, they will be smaller than you expect, but the page layout will be exactly the same as you see in browser window (well, close to it). If you want fonts to have their real size, disable this option.

Note that this additional scaling applies to points only; such units as in, cm, mm and pc are not affected by this option.

media Name of predefined media to use. Note that media name is case-sensitive!
cssmedia HTML page can contain stylesheets for different target media types; for example, the printable version of a page may have navigation panes and banners hidden, while the version for handhelds may be specially formatted to work on small displays and so on. By setting the value of this parameter, you determine which set of CSS rules will be used during PS/PDF rendering.
leftmargin, rightmargin, topmargin, bottommargin Page margins (millimeters).
landscape Set this parameter to rotate the media to landscape orientation. Please note that the 'virtual resolution' will remain the same; all page content will be scaled to fit the new page width.
pageborder Set this parameter if you want the page border to be printed.
encoding Encoding can usually be automatically detected using HTTP response header or META tags inside the HTML. Sometimes, encoding information is missing; you can specify encoding name as a value of this parameter.
debugbox Set this option if you want to see boundaries of all boxes generated by the script. It is unlikely you'll need this option, as it is mostly for debugging purposes.
method This option determines the type of script output:
  • ps -- Postscript;
  • ps2pdf -- PDF (converted from Postscript using Ghostscript utility);
  • pdflib -- PDF generated using PDFLIB;
  • fpdf -- PDF generated using FPdf
pdfversion This option determines the compatibility level of PDF to be generated; the higher level you use, more features can this PDF contain. On the other hand, high-level PDFs may not be readable by older viewer versions:
  • 1.2 (Acrobat Reader 3)
  • 1.3 (Acrobat Reader 4)
  • 1.4 (Acrobat Reader 5)
  • 1.5 (Acrobat Reader 6)
output The value of this parameter determines how the generated file will be handled:
  • 0 -- PDF file will be opened immediately (possibly in the same browser window). Note it will not work for Postscript files in most cases, they will be downloaded as usual;
  • 1 -- user will be prompted to download generated file;
  • 2 -- generated file will be stored on the server;
compress Set this option to generate compressed Postscript files. You'll probably only need this option only if you're working with Postscript (NOT PDF) files via Adobe Acrobat Distiller, as it does not support compressed Postscript. In any other case, use compressed Postscript, as it will save on bandwidth.
html2xhtml If you're absolutely sure you have valid strict XHTML page, you can set this option to disable HTML-to-XHTML conversion and speed up script execution a little. In any other case, do not set this option, as the script will not work with non-well-formed XML.