aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2021-11-02 23:12:39 +0100
committerJay Berkenbilt <ejb@ql.org>2021-11-03 14:43:17 +0100
commit33a47d5c3c4402d8d94b00ed9b3aa2c339203d2f (patch)
tree07d97e20673566493b4c237784d27a2aed588ec4 /include
parent42ca1f007ac18b2a1426093c02c6ff261b737eae (diff)
downloadqpdf-33a47d5c3c4402d8d94b00ed9b3aa2c339203d2f.tar.zst
Make QPDF::findPage public (fixes #516)
This was originally not public because I wanted to get rid fo the pages cache, but I recently realized there were deep reasons not to do that, and the author of pikepdf wanted this, so I decided to make it public.
Diffstat (limited to 'include')
-rw-r--r--include/qpdf/QPDF.hh11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/qpdf/QPDF.hh b/include/qpdf/QPDF.hh
index 48b92137..941004cc 100644
--- a/include/qpdf/QPDF.hh
+++ b/include/qpdf/QPDF.hh
@@ -605,6 +605,15 @@ class QPDF
QPDF_DLL
std::vector<QPDFObjectHandle> const& getAllPages();
+ // These methods, given a page object or its object/generation
+ // number, returns the 0-based index into the array returned by
+ // getAllPages() for that page. An exception is thrown if the page
+ // is not found.
+ QPDF_DLL
+ int findPage(QPDFObjGen const& og);
+ QPDF_DLL
+ int findPage(QPDFObjectHandle& page);
+
// This method synchronizes QPDF's cache of the page structure
// with the actual /Pages tree. If you restrict changes to the
// /Pages tree, including addition, removal, or replacement of
@@ -990,8 +999,6 @@ class QPDF
std::set<QPDFObjGen>& visited,
std::set<QPDFObjGen>& seen);
void insertPage(QPDFObjectHandle newpage, int pos);
- int findPage(QPDFObjGen const& og);
- int findPage(QPDFObjectHandle& page);
void flattenPagesTree();
void insertPageobjToPage(QPDFObjectHandle const& obj, int pos,
bool check_duplicate);