High-performance Rust components for DocQuill: PDF renderer and EMF/WMF converter
Project description
DocQuill Rust Components
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file docquill_rust-0.1.4.tar.gz.
File metadata
- Download URL: docquill_rust-0.1.4.tar.gz
- Upload date:
- Size: 44.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00150f1eed2f4b6a1f33eace63568db8409d4b60c3834b26e6fcbb39fa2eb651
|
|
| MD5 |
7cd8afd2a065c40bda62d62fd723aa44
|
|
| BLAKE2b-256 |
9c4ac6b9ddbbaa4d7daa613ae4a3c07231e995e6fad0a4a44e5162ea9f5aaee2
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4.tar.gz:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4.tar.gz -
Subject digest:
00150f1eed2f4b6a1f33eace63568db8409d4b60c3834b26e6fcbb39fa2eb651 - Sigstore transparency entry: 729236349
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82d88ddb42febe800c4ad2822f742eee9b5ff9b74386f2cc1dfb4421a8f93550
|
|
| MD5 |
d67e1f5749d17949bf0fa1ee2451c2b8
|
|
| BLAKE2b-256 |
582bb8dc4b3d63f35003851b17b6059bf5b73cc0e6b399d55b3ac5fed512ec7d
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl -
Subject digest:
82d88ddb42febe800c4ad2822f742eee9b5ff9b74386f2cc1dfb4421a8f93550 - Sigstore transparency entry: 729236373
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d58e6ab223997b6c283b160e0499755c361da4767333f4aefa4186845a2b4585
|
|
| MD5 |
e2a6d9d33c41833ee045975e583f3285
|
|
| BLAKE2b-256 |
cf45a39304e79d903bbdcbaa4df8871a253ac8b62a78d8facba7a82673d7e2be
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl -
Subject digest:
d58e6ab223997b6c283b160e0499755c361da4767333f4aefa4186845a2b4585 - Sigstore transparency entry: 729236352
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b5e04477064a9597900a3b3fb21574082231b3907f8b66681aac7e0104e6f26
|
|
| MD5 |
14c4e14fe200157664a0d2edacb1a0ac
|
|
| BLAKE2b-256 |
c2b1452141c7750939c165df84936b5674ea8d2194029c9389f3ab7421fd4afd
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl -
Subject digest:
8b5e04477064a9597900a3b3fb21574082231b3907f8b66681aac7e0104e6f26 - Sigstore transparency entry: 729236368
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e32ef266d4002517e3c480759cdb2e4283a8bd022820a467e35f7a4c0fb01e02
|
|
| MD5 |
efa518cf2154a11f767d1dadc5ac4e2e
|
|
| BLAKE2b-256 |
f21df2556ab31918349951e0b10f8355aa45b54db6acbd9c0367aa2c174c245a
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl -
Subject digest:
e32ef266d4002517e3c480759cdb2e4283a8bd022820a467e35f7a4c0fb01e02 - Sigstore transparency entry: 729236355
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc54a37e809bf2a808bc08d224737bc713853f8a94ec327de02f22f644468d3b
|
|
| MD5 |
92e5d8735812efa0831fccf37c5535b0
|
|
| BLAKE2b-256 |
d8aab29981e8b9b44771cfc2ddfcc73d8e40953146b576320680cc1f5f70996d
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl -
Subject digest:
cc54a37e809bf2a808bc08d224737bc713853f8a94ec327de02f22f644468d3b - Sigstore transparency entry: 729236376
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-cp39-abi3-win_amd64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-cp39-abi3-win_amd64.whl
- Upload date:
- Size: 1.0 MB
- Tags: CPython 3.9+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad674f7c0ef3e61ca8d66e2a34db7fde8a0b7f5316f696e68d66e699248ce7f0
|
|
| MD5 |
c10e58e05e1afc197df293bc0f677e35
|
|
| BLAKE2b-256 |
e928468a56e9bb2f988aa54038ce66118e5b528a4d85fe56879cb2e10e52f9fa
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-cp39-abi3-win_amd64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-cp39-abi3-win_amd64.whl -
Subject digest:
ad674f7c0ef3e61ca8d66e2a34db7fde8a0b7f5316f696e68d66e699248ce7f0 - Sigstore transparency entry: 729236372
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.9+, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23dc54e960f8f3f9eff6850cb4f605f0336073368795ad32f6dd921a50a09f49
|
|
| MD5 |
6aec3cb135ccf53b94c3b65a0b28556e
|
|
| BLAKE2b-256 |
4a60ee2884a2c9ca8fbc6d68ec8cb7a6616f28ce32a0aa32d4a9a8899acbb911
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_x86_64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_x86_64.whl -
Subject digest:
23dc54e960f8f3f9eff6850cb4f605f0336073368795ad32f6dd921a50a09f49 - Sigstore transparency entry: 729236363
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.9+, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
935ad7fbfa54e30d19181222d007dbb1df67031e0b415b5afc83435817ff8aeb
|
|
| MD5 |
f6bc4698524a76d41d1c68337ae454bc
|
|
| BLAKE2b-256 |
c087b1e8c061ac967b4aabc38850ec3d647cba096466b768a02944c772530011
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_aarch64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-cp39-abi3-manylinux_2_28_aarch64.whl -
Subject digest:
935ad7fbfa54e30d19181222d007dbb1df67031e0b415b5afc83435817ff8aeb - Sigstore transparency entry: 729236361
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type:
File details
Details for the file docquill_rust-0.1.4-cp39-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: docquill_rust-0.1.4-cp39-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.0 MB
- Tags: CPython 3.9+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b59b3e0688b62b30dd1f548be661881c0cca99afaa61664a8ad16c895d0bb36
|
|
| MD5 |
0c76db9caf1ec7ebc205bc0eef36bda3
|
|
| BLAKE2b-256 |
a03245d3b48cf777b096eb6a4a0baae2a17d648dfa7d3da9cef28970f69043a1
|
Provenance
The following attestation bundles were made for docquill_rust-0.1.4-cp39-abi3-macosx_11_0_arm64.whl:
Publisher:
build-rust.yml on AddNap/DocQuill
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
docquill_rust-0.1.4-cp39-abi3-macosx_11_0_arm64.whl -
Subject digest:
8b59b3e0688b62b30dd1f548be661881c0cca99afaa61664a8ad16c895d0bb36 - Sigstore transparency entry: 729236356
- Sigstore integration time:
-
Permalink:
AddNap/DocQuill@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Branch / Tag:
refs/tags/rust-v0.1.4 - Owner: https://github.com/AddNap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-rust.yml@1dfc96ee2ad807b1bf6a1cadb2dfc49040e5d9bd -
Trigger Event:
push
-
Statement type: