Skip to main content

High-performance Rust components for DocQuill: PDF renderer and EMF/WMF converter

Project description

DocQuill Rust Components

PyPI version License

High-performance Rust components for DocQuill:

  • 🖨️ PDF Renderer - Fast PDF generation using pdf-writer
  • 🖼️ EMF/WMF Converter - Convert Windows metafiles to SVG

Installation

pip install docquill-rust

Or install with the main package:

pip install docquill[rust]

Requirements

  • Python 3.9+
  • No Rust compiler required - pre-built wheels are available for:
    • Linux (x86_64, aarch64)
    • macOS (Intel x86_64, Apple Silicon arm64)
    • Windows (x86_64)

Features

PDF Renderer

High-performance PDF generation as an alternative to ReportLab:

from docquill import Document

doc = Document.open("document.docx")

# Use Rust backend (automatically detected when installed)
doc.to_pdf("output.pdf", use_rust=True)

Benefits:

  • 2-5x faster PDF generation
  • Lower memory usage
  • Full Unicode support (DejaVu Sans embedded)

EMF/WMF Converter

Convert Windows Enhanced Metafile (EMF) and Windows Metafile (WMF) to SVG:

import docquill_rust

# Convert file
docquill_rust.convert_emf_to_svg("input.emf", "output.svg")

# Convert bytes to SVG string
svg_content = docquill_rust.convert_emf_bytes_to_svg(emf_bytes)

Supported formats:

  • EMF (Enhanced Metafile)
  • EMF+ (GDI+ Enhanced Metafile)
  • WMF (Windows Metafile)
  • WMF with embedded EMF

Performance: ~50x faster than Java-based converters (FreeHEP/Apache POI)

Building from Source

If you need to build from source (e.g., for unsupported platforms):

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Install maturin
pip install maturin

# Build and install
cd packages/docquill_rust
maturin develop --release

License

Apache License 2.0

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

docquill_rust-0.1.7.tar.gz (47.2 kB view details)

Uploaded Source

Built Distributions

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

docquill_rust-0.1.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

docquill_rust-0.1.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

docquill_rust-0.1.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl (1.7 MB view details)

Uploaded PyPymacOS 10.12+ x86-64

docquill_rust-0.1.7-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

docquill_rust-0.1.7-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

docquill_rust-0.1.7-cp39-abi3-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.9+Windows x86-64

docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.28+ x86-64

docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.28+ ARM64

docquill_rust-0.1.7-cp39-abi3-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

File details

Details for the file docquill_rust-0.1.7.tar.gz.

File metadata

  • Download URL: docquill_rust-0.1.7.tar.gz
  • Upload date:
  • Size: 47.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for docquill_rust-0.1.7.tar.gz
Algorithm Hash digest
SHA256 8998f61d87800058d3464bc0e26d3034218aa38eeaa7ff13c5e4091783e89ba3
MD5 37ba9006ea1ea651a8a2fceaf43ba267
BLAKE2b-256 6beb69d243ddd9298d00ed064c5658f661ed1414ba2f01fdc2f36bca3cc4b73a

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7.tar.gz:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1026ae3bca1595c06dadf94da6830d07677c0fe32afff9ac7f739c4578f62213
MD5 8c0b2f8cc4f56b213fb195f766c9a50c
BLAKE2b-256 1b621e85ab15c7092f74f11270b5e5681de9b1e29e37513c03b8d3639ec4a4fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 43f7ef841d5c2e687990532a9d2666561e5289d9dab6c25a04cbdf71eb671bd9
MD5 a1a2defd0d1c87296b3874db15cb58aa
BLAKE2b-256 5eafde3f9140cd33319538fcc2c8ca3365eb22b8ba4bdbf7c9d342946eb2d9ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 87a54afbff4c115750fb2fff8e2cbe21c3960fba7eb0f71070c14f64faecfb82
MD5 5b779b81026d50fe874390256a119d0b
BLAKE2b-256 95ee2c592d93d218064f921da7999ee750c10448d2b753e4dafc16e898b5ad89

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 53287f0b2a53e4de67b2240484eb0ebe2930fcdfa0bfaa70c11031dec5dd12ee
MD5 4cbb4d16855ba2f6f4d4c0c992c14266
BLAKE2b-256 41788ceaf009dbf46691f1f077c705918831a0a1932f9e7162e74d123199140f

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 77b90802482511ad1a442e270516c85beb10e8989fb3c4b6a63b92f70c3f9479
MD5 75d3845cfcc567e6a09aed562fdb14bb
BLAKE2b-256 2752a44a43201214b68374d309f3ef8723dda734448c2d1d47c29c306d61e0fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-cp39-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 dd7088355e695e368ba636bd3fe866b30774d182416fbed6905d1d0c5565301e
MD5 de3c1bbb78c21327e6c9836f21bec167
BLAKE2b-256 06a2bb94e86e8f921a6cde765737d1498f6ab6e28a9dc33220831e28e525d12d

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-cp39-abi3-win_amd64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0b440357def4fc8be077c8f881ed483214e9412d5d76bdea2d3904df01f1deb1
MD5 282d253963c11865db90508594fdbf72
BLAKE2b-256 4ff1e21a9c7ed2e047003ca60f0e27432bd7cf6bd180915834551626a2efae79

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_x86_64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d80232580d8eb19da439ab4ab57c2f2c87e955a6763897be3784ddaef973b063
MD5 168ea4a5b8912bf802203f36b33565fa
BLAKE2b-256 449b280f5412505b557c76111f834512fb82831a69bb9ba44dfeb4e50ccb96d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-cp39-abi3-manylinux_2_28_aarch64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docquill_rust-0.1.7-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for docquill_rust-0.1.7-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1ab95ac2320ca141ba0e176fcc1d801591eae9d431db990d33a2617dcda31d3e
MD5 15ec5dd88a3effb0b0bb6a5f9a1b7b87
BLAKE2b-256 ed5a4810d5ee94a515c2f72415f8e5a41557ff180a182541d2f0827f238cd8e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for docquill_rust-0.1.7-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: build-rust.yml on AddNap/DocQuill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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