summaryrefslogtreecommitdiff
path: root/src/pdf_bridge.h
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-08-02 21:28:49 -0300
committerGabriel Schneider <[email protected]>2026-08-10 09:17:07 -0300
commitec19caddb60e748115adb562b46d007598dcdb95 (patch)
treeaaf282dec5beaf445fc7a5fb194aa438c3ae4986 /src/pdf_bridge.h
parent5d5f2a25011c751452fb4ff42e28ee84d4bb4fdf (diff)
downloadpardes-ec19caddb60e748115adb562b46d007598dcdb95.tar.gz
pardes-ec19caddb60e748115adb562b46d007598dcdb95.zip
render PDFs as a continuous vertical page strip
Diffstat (limited to 'src/pdf_bridge.h')
-rw-r--r--src/pdf_bridge.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pdf_bridge.h b/src/pdf_bridge.h
index 77b3dc58..cc706c33 100644
--- a/src/pdf_bridge.h
+++ b/src/pdf_bridge.h
@@ -23,6 +23,11 @@ typedef struct pardes_pdf_pixmap {
int components;
} pardes_pdf_pixmap;
+typedef struct pardes_pdf_page_size {
+ float width;
+ float height;
+} pardes_pdf_page_size;
+
typedef struct pardes_pdf_text {
void *handle;
const unsigned char *data;
@@ -105,6 +110,13 @@ enum {
pardes_pdf_document *pardes_pdf_open(const char *path, int *page_count);
void pardes_pdf_close(pardes_pdf_document *document);
+/* Page dimensions in PDF points after crop/rotation, without rasterizing. */
+int pardes_pdf_get_page_size(
+ pardes_pdf_document *document,
+ int page,
+ pardes_pdf_page_size *out
+);
+
/*
* Start at dpi, raise the uniform scale until both optional minimum pixel
* dimensions are met, then clamp the page's longest side to max_dimension.