Skip to main content

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

Project description

lpdfio-lpdf

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

Installation

pip install lpdfio-lpdf

Usage

from lpdf import LpdfEngine

engine = LpdfEngine("")          # empty key → free tier (watermark)

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.0.2.tar.gz (746.2 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.0.2-py3-none-any.whl (774.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lpdfio_lpdf-0.0.2.tar.gz
  • Upload date:
  • Size: 746.2 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.0.2.tar.gz
Algorithm Hash digest
SHA256 062cc97ab099347651a93bba99c6cec1fcda51b4c15674573e145b2655b116c8
MD5 afe51668b12b3ff50c0b75393323466a
BLAKE2b-256 2e41ded563b3409a8141573953a4c77b8bf95f19a4aa99186d2d68189c2d5c3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lpdfio_lpdf-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 774.7 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.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2cf40ba4d4d22023e1441314285333c5dce07747afa836d0b28885628c564e7f
MD5 975f7659e5b1155bfe1e6bbde7e2e08f
BLAKE2b-256 6d608902d4c305de266b3c4e67b02bb753c6ad6c70bacc92767bd24c5a6a4f50

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