XHTML2PDF3(1)

πŸ’– XHTML2PDF3(1) πŸ’–

okay bestie, pull up a chair, we're learning xhtml2pdf3 β€” the User Commands girly that turns your HTML and CSS into a whole PDF. yes, really. it's giving ✨magic✨ but it's actually just Python.


πŸŽ€ NAME πŸŽ€

xhtml2pdf3 β€” a PDF generator that eats HTML and CSS for breakfast πŸ“


✨ SYNOPSIS ✨

xhtml2pdf3 [-b base path] [--base=base path] [-c CSS file]
           [--css=CSS file] [--css-dump] [-d] [--debug]
           [--encoding=character encoding] [-h] [--help] [-q] [--quiet]
           [--version] [-w] [--warn] [-x] [--xml] [--xhtml] [--html]
           [SRC] [DEST]

🌸 DESCRIPTION 🌸

so this manual page? it documents the xhtml2pdf3 command briefly. that's the whole job. πŸ’…

xhtml2pdf3 is an HTML-to-PDF converter, and it's built on the ReportLab Toolkit, HTML5lib and pyPdf. iconic lineup, no cap.

it supports HTML 5 and CSS 2.1 (plus some of CSS 3 β€” we get a lil taste πŸ‘€). and the best part? it's completely written in pure Python, so it's platform independent, she goes everywhere. 🌍

the main benefit lowkey, and this is the whole point: if you already have Web skills like HTML and CSS, you can generate PDF templates very quickly without learning a single new technology. yes bestie, your existing brain is enough. and it integrates easily into Python frameworks like CherryPy, KID Templating, TurboGears, Django, Zope, Plone, Google AppEngine (GAE) etc. she's social, she gets along with everyone. 🫢


πŸ‘‘ OPTIONS πŸ‘‘

a summary of the options is included below, and yes we're doing all of them. no skipping, that's the rule. πŸ“‹

  • SRC β€” the name of a HTML file, or a file pattern using a * placeholder. wanna read from stdin? use - as the file name, queen. you can also load an URL over HTTP like a main character. ⚠️ and take care of putting the src in quotes if it contains characters like ? β€” those little guys will absolutely cause chaos otherwise. 😭
  • DEST β€” the name of the generated PDF file, or - if you'd like to send the result to stdout, cute. mind that the destination file is not already opened by any other application, like the Adobe Reader β€” she will not be sharing. πŸ™ˆ and if the destination isn't writeable, a similar name will be calculated automatically, so don't panic, she'll find a way. ✨
  • -b, --base β€” specify a base path if the input comes in via STDIN. that's it, that's the girl. πŸŽ€
  • -c, --css β€” path to the default CSS file. dress her up. πŸ’…
  • --css-dump β€” dumps the default CSS definitions to STDOUT. show me the receipts. πŸ“œ
  • -d, --debug β€” show debugging information. we love a ✨transparent✨ moment.
  • --encoding β€” the character encoding of SRC. if you leave it empty (default), this information will be extracted from the HTML header data. she'll figure it out herself, she's smart like that. 🧚
  • -h, --help β€” show the help text. when in doubt, ask her. πŸ™‹
  • -q, --quiet β€” show no messages. silent. mysterious. ethereal. 🀫
  • --version β€” show version information. it's giving receipts. 🏷️
  • -w, --warn β€” show warnings. she's not mad, she's just letting you know bestie. πŸ‘€
  • -x, --xml, --xhtml β€” force parsing in XML mode. this is automatically used if SRC ends with .xml. stricter, more structured, very type-A of her. πŸ’œ
  • --html β€” force parsin in HTML mode (default). the chill, go-with-the-flow option. 🌈

🌟 AUTHOR 🌟

xhtml2pdf3 was written by Dirk Holtwick <<dirk.holtwick@gmail.com>>. thank you king 🫑

this manual page was written by Toby Smithe <<tsmithe@ubuntu.com>>, for the Debian project (but may be used by others). generous! iconic! we stan. πŸ’–


and that's the whole vibe check bestie 🌸 the version tag on this one is pisa, dated 01/29/2026, filed under XHTML2PDF3(1) β€” go forth and generate those PDFs, you're doing amazing, periodt. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from