1 | <?php include("head.inc"); ?> |
---|
2 | |
---|
3 | <div id="toc"> |
---|
4 | <h2>On this page:</h2> |
---|
5 | <ul> |
---|
6 | <?php echo li_arrow() ?><a href="#overview">Overview</a></li> |
---|
7 | <?php echo li_arrow() ?><a href="#features">Features</a></li> |
---|
8 | <?php echo li_arrow() ?><a href="#limitations">Limitations</a></li> |
---|
9 | <?php echo li_arrow() ?><a href="#hacking">Hacking</a></li> |
---|
10 | </ul> |
---|
11 | </div> |
---|
12 | |
---|
13 | <a name="overview"> </a> |
---|
14 | <h2>Overview</h2> |
---|
15 | |
---|
16 | <p>dompdf is an HTML to PDF converter. At its heart, dompdf is (mostly) |
---|
17 | CSS2.1 compliant HTML layout and rendering engine written in PHP. It is |
---|
18 | a style-driven renderer: it will download and read external stylesheets, |
---|
19 | inline style tags, and the style attributes of individual HTML elements. It |
---|
20 | also supports most presentational HTML attributes.</p> |
---|
21 | |
---|
22 | <p>PDF rendering is currently provided either by PDFLib (<a |
---|
23 | href="http://www.pdflib.com">www.pdflib.com</a>) or by a bundled |
---|
24 | version the R&OS CPDF class written by Wayne Munro (<a |
---|
25 | href="http://www.ros.co.nz/pdf/">www.ros.co.nz/pdf</a>). (Some |
---|
26 | performance related changes have been made to the R&OS class, |
---|
27 | however). In order to use PDFLib with dompdf, the PDFLib PECL |
---|
28 | extension is required. Using PDFLib improves performance and reduces |
---|
29 | the memory requirements of dompdf somewhat, while the R&OS CPDF class, |
---|
30 | though slightly slower, eliminates any dependencies on external PDF |
---|
31 | libraries.</p> |
---|
32 | |
---|
33 | <p>dompdf was entered in the <a |
---|
34 | href="http://www.zend.com/php5/contest/contest.php">Zend PHP 5 |
---|
35 | Contest</a> and placed 20th overall.</p> |
---|
36 | |
---|
37 | <p>Please note that dompdf works only with PHP 5. There are no plans for |
---|
38 | a PHP 4 port. If your web host does not offer PHP 4, I suggest either pestering |
---|
39 | them, or setting up your own PHP 5 box and using it to run dompdf. Your scripts |
---|
40 | on your web host can redirect PDF requests to your PHP 5 box.</p> |
---|
41 | |
---|
42 | <a name="features"> </a> |
---|
43 | <h2>Features</h2> |
---|
44 | |
---|
45 | <ul> |
---|
46 | |
---|
47 | <li style="list-style-image: url('images/star_01.gif');">handles most |
---|
48 | CSS2.1 properties, including @import, @media & @page rules</li> |
---|
49 | |
---|
50 | <li style="list-style-image: url('images/star_02.gif');">supports most |
---|
51 | presentational HTML 4.0 attributes</li> |
---|
52 | |
---|
53 | <li style="list-style-image: url('images/star_03.gif');">supports external |
---|
54 | stylesheets, either on the local machine or through http/ftp (via |
---|
55 | fopen-wrappers)</li> |
---|
56 | |
---|
57 | <li style="list-style-image: url('images/star_04.gif');">supports complex |
---|
58 | tables, including row & column spans, separate & collapsed border |
---|
59 | models, individual cell styling, multi-page tables (no nested tables yet however)</li> |
---|
60 | |
---|
61 | <li style="list-style-image: url('images/star_05.gif');">image |
---|
62 | support (png, gif & jpeg)</li> |
---|
63 | |
---|
64 | <li style="list-style-image: url('images/star_01.gif');">no dependencies on |
---|
65 | external PDF libraries, thanks to the R&OS PDF class</li> |
---|
66 | |
---|
67 | <li style="list-style-image: url('images/star_02.gif');">inline PHP |
---|
68 | support. See the section on <a href="usage.php#inline">inline PHP</a> for details.</li> |
---|
69 | </ul> |
---|
70 | |
---|
71 | |
---|
72 | <a name="limitations"> </a> |
---|
73 | <h2>Limitations (Known Issues)</h2> |
---|
74 | |
---|
75 | <ul> |
---|
76 | |
---|
77 | <li style="list-style-image: url('images/star_04.gif');">tables can not be |
---|
78 | nested</li> |
---|
79 | |
---|
80 | <li style="list-style-image: url('images/star_02.gif');">ordered lists are |
---|
81 | currently unsupported.</li> |
---|
82 | |
---|
83 | <li style="list-style-image: url('images/star_03.gif');'">absolute & relative |
---|
84 | positioning and floats do not work, yet.</li> |
---|
85 | |
---|
86 | <li style="list-style-image: url('images/star_04.gif');">not particularly |
---|
87 | tolerant to poorly-formed HTML or CSS input (using Tidy first may help)</li> |
---|
88 | |
---|
89 | <li style="list-style-image: url('images/star_03.gif');">large files can |
---|
90 | take a while to render</li> |
---|
91 | |
---|
92 | |
---|
93 | </ul> |
---|
94 | |
---|
95 | <a name="hacking"> </a> |
---|
96 | <h2>Hacking</h2> |
---|
97 | |
---|
98 | <p>If you are interested in extending or modifying dompdf, please feel free |
---|
99 | to contact me (Benj Carson) by email at <a style="white-space: nowrap" |
---|
100 | href="mailto:dompdf%40digitaljunkies%2eca">dompdf at digitaljunkies.ca</a>. |
---|
101 | Let me know what you'd like to try and I can perhaps point you to the |
---|
102 | relevant sections of the source. If you add some features, or fix |
---|
103 | some bugs, please send me a patch and I'll include your changes in the main |
---|
104 | distribution.</p> |
---|
105 | |
---|
106 | <?php include("foot.inc"); ?> |
---|