Skip to main content

Textual PDF

A Textual widget for viewing PDF files.

Installation

Install the package using your package manager:

pip install textual-pdf
uv add textual-pdf
poetry add textual-pdf

Usage

Here is a simple example of how to use the PDFViewer widget in your Textual application:

from textual.app import App, ComposeResult
from textual_pdf.pdf_viewer import PDFViewer

class PDFApp(App):
    def compose(self) -> ComposeResult:
        yield PDFViewer("path/to/your/document.pdf")

app = PDFApp()
app.run()

The PDFViewer class also comes with an option to switch protocols

PDFViewer supports whatever image protocols textual-image supports, which are TGP, Sixel, and Halfcell and Unicode

TGP and Sixel are the most recommended to use as they allow the clearest image to be produced. Halfcell and Unicode are not readable at all, and simply exists for the fun of it.

# use tgp
PDFViewer("path/to/your/document.pdf", protocol="TGP")
# autodetect (default)
PDFViewer("path/to/your/document.pdf", protocol="Auto")

CLI

textual-pdf is available as a CLI tool via ptf

uv tool install git+https://github.com/NSPC911/ptf

License

This project is licensed under the MIT License.

Release files for textual-pdf 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for textual-pdf 0.1.7
File Size Uploaded
textual_pdf-0.1.7.tar.gz 4.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for textual-pdf 0.1.7
File Interpreter ABI Platform
textual_pdf-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 4.1 MB

Release files / textual_pdf-0.1.7.tar.gz

Download URL textual_pdf-0.1.7.tar.gz
Size 4.1 MB
Tags Source
SHA-256 checksum
How to use checksums
41cca4670d745eb76bc5c2323e9d149e7d1f167bde31230ee7692370d1b1c46e
BLAKE2b-256 checksum
How to use checksums
29a9cb0ffaa56891663fb48932999089cd2f6f761be68e0efc3583048c00d3fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Release files / textual_pdf-0.1.7-py3-none-any.whl

Download URL textual_pdf-0.1.7-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
52af2fe17797b8ea99480a06ad05169543cbbd7001b4837197c7df30f456309e
BLAKE2b-256 checksum
How to use checksums
9813dd2ee268efd99f6489ea860219484b5900c83f5b1a664526a84b5419f47a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page