zooui.objects.mediaobjects.pdfmediaobject module¶
Multi-page PDF rendered as individually tiled pages with page navigation.
- class zooui.objects.mediaobjects.pdfmediaobject._BlockingConverter[source]¶
Bases:
objectDummy converter whose progress never reaches 1.0.
Used to prevent TiledMediaObject.render() from calling __run_tiler() while PdfMediaObject manages page-specific tiling externally.
- progress = 0.0¶
- class zooui.objects.mediaobjects.pdfmediaobject.PdfMediaObject(pdf_path, scene, autofit=True, start_page=0)[source]¶
Bases:
TiledMediaObject- Constructor :
PdfMediaObject(pdf_path, scene, autofit, start_page)
- Parameters :
pdf_path : str scene : Scene autofit : bool (default=True) start_page : int (default=0)
PdfMediaObject(pdf_path, scene, autofit, start_page) –> None
A multi-page PDF rendered as individually tiled pages in the ZUI.
Each page is rasterized as a separate PPM and tiled independently. Page navigation is controlled via Ctrl+Up/Down and Ctrl+Alt+G (go to page).
A lazy 2-page tiling buffer tiles the current page and the next page, providing instant display on forward navigation.
- Constructor :
PdfMediaObject(pdf_path, scene, autofit, start_page)
- Parameters :
pdf_path : str scene : Scene autofit : bool (default=True) start_page : int (default=0)
PdfMediaObject(pdf_path, scene, autofit, start_page) –> None
Initialize a new PdfMediaObject from the PDF at pdf_path.
Sets up deferred initialization — the PDF is converted in a background process, then pages are tiled lazily with a 2-page buffer.
- property current_page¶
Zero-based index of the current page.
- property page_count¶
Total number of pages in the PDF (0 while loading).
- property current_page_label¶
Human-readable page label, e.g. ‘Page 3/42’.
- render(painter, mode)[source]¶
Override render to manage page lifecycle and prevent premature tiling.
- _on_conversion_complete()[source]¶
Handle PDF conversion completion: discover pages and start tiling.