Skip to main content

Python adapter for lpdf — pixel-perfect, lightweight, and consistent PDF rendering

Project description

lpdfio-lpdf

Python adapter for lpdf — an accurate, efficient, and cross-platform PDF engine.

Installation

pip install lpdfio-lpdf

Usage

from lpdf import LpdfEngine

engine = LpdfEngine("")

engine.load_font("montserrat", open("fonts/Montserrat-Regular.ttf", "rb").read())
engine.load_image("logo", open("images/logo.png", "rb").read())

xml = open("document.xml", "r", encoding="utf-8").read()
pdf = engine.render_pdf(xml)

open("output.pdf", "wb").write(pdf)

XML format

Documents are defined in a layout XML format. See the lpdf documentation and examples for the full schema.

<stack spacing="m" padding="l">
  <text font-size="xl" font="Montserrat-Bold">Invoice #1001</text>
  <grid columns="2">
    <text>Date</text>      <text>2026-04-25</text>
    <text>Due</text>       <text>2026-05-25</text>
  </grid>
</stack>

Requirements

  • Python 3.8+

License

Dual-licensed: Community License (free) and Commercial License (paid). See LICENSE for full terms.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lpdfio_lpdf-0.2.0.tar.gz (746.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lpdfio_lpdf-0.2.0-py3-none-any.whl (774.8 kB view details)

Uploaded Python 3

File details

Details for the file lpdfio_lpdf-0.2.0.tar.gz.

File metadata

  • Download URL: lpdfio_lpdf-0.2.0.tar.gz
  • Upload date:
  • Size: 746.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for lpdfio_lpdf-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8eb9a7c27d6f81bfd2e43af13dc5005560429deca3ca32dee7a707da9b4bc688
MD5 a41e1524d3984022a470e720f7ea23cd
BLAKE2b-256 2912db21c2ed3439f05d3fb4b9fecba82ca5ac276e987d22444ddc97545b7bd9

See more details on using hashes here.

File details

Details for the file lpdfio_lpdf-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: lpdfio_lpdf-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 774.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for lpdfio_lpdf-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9cf7f9ba669a7ed6a6602f099235195cfc570857fd5353bc30532805fa262555
MD5 661c1b515871a937cb99ed85e16a6cc9
BLAKE2b-256 daa1aea4a337397e7fd782be8f1312fb2be641d617240d70739507ac7f67213d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page