summaryrefslogtreecommitdiff
path: root/fpdfsdk/fpdf_ppo.cpp
AgeCommit message (Collapse)Author
2018-05-09Add proper const/non-const versions of CPDF_Array methods.Lei Zhang
Instead of having const methods that return non-const pointers. BUG=pdfium:234 Change-Id: I61495543f67229500dfcf2248e93468e9a9b23cf Reviewed-on: https://pdfium-review.googlesource.com/32183 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
2018-05-09Add proper const/non-const versions of CPDF_Object methods.Lei Zhang
Instead of having const methods that return non-const pointers. BUG=pdfium:234 Change-Id: I598e9b4f267f702e2e71001cfe3aa3c9e9d8c12f Reviewed-on: https://pdfium-review.googlesource.com/32182 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
2018-05-08Rename CPDF_Document::GetPage() to GetPageDictionary().Tom Sepez
Avoids a conflict should we wish to have the document actually track pages, with a GetPage() that returns CPDF_Page. Do the same thing to CPDF_DataAvail along the way. Add some missing consts as well. Change-Id: I2cb2213cc4c0649662fceab80407ee4a3f4cf30e Reviewed-on: https://pdfium-review.googlesource.com/32158 Commit-Queue: dsinclair <dsinclair@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
2018-04-25Introduce ScopedFPDF types in public/cpp/fpdf_scopers.hTom Sepez
Applies std::remove_ptr to the public API types so that we can deduce a correct unique ptr type no matter how that API might change away from void* usage. Creates shorter names for std::unique_ptr<std::remove_pointer<>, ...> Change-Id: I04a0ff43cb7d5a4d3867939a53a54c9cef00db86 Reviewed-on: https://pdfium-review.googlesource.com/31292 Reviewed-by: Lei Zhang <thestig@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
2018-03-28Rename some fsdk files to cpdfsdkDan Sinclair
This CL renames fsdk_common and fsdk_define to cpdfsdk_common and cpdfsdk_helpers respectively. Change-Id: I8ee7a308561f1ff2f510954444f953b0c8fed788 Reviewed-on: https://pdfium-review.googlesource.com/29371 Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
2018-03-16Fix methods that have definition with different parameter names.Lei Zhang
Found by ClangTidy. BUG=pdfium:1039 Change-Id: I2bb9256a63d5459e959c1a3228418073245d7a86 Reviewed-on: https://pdfium-review.googlesource.com/28731 Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
2018-02-12Mark some CPDF_Dictionary pointers as const.Lei Zhang
This makes it obvious if they are dictionaries that are only read from, or if they are being modified. Also clarify some page dictionary variables names to make it obvious that they are the source or destination page. Change-Id: I1d3c769c9940296b8f159b454bde32e595a95cac Reviewed-on: https://pdfium-review.googlesource.com/26330 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
2018-02-12Remove a parameter from CPDF_NPageToOneExporter::MakeXObject().Lei Zhang
It's always the same member variable. Also make a CPDF_NPageToOneExporter::FinishPage() parameter const-ref. Change-Id: Id2550115259177d72b814bf6d4afe5fb775f6b86 Reviewed-on: https://pdfium-review.googlesource.com/26290 Reviewed-by: Shirleen Lou <xlou@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
2018-02-09Use CPDF_Dictionary::SetRectFor() when appropriate.Lei Zhang
Change-Id: I4ced221fb5691927485deceb7002dac880c2c210 Reviewed-on: https://pdfium-review.googlesource.com/26110 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
2018-02-09Use CFX_Size in CPDF_Page and fpdf_ppo.cpp.Lei Zhang
Instead of having separate floats for width and height. Also remove some out parameters and just return them instead. Change-Id: I798b1453910c89477d422dcb7c0805b90823bf98 Reviewed-on: https://pdfium-review.googlesource.com/26090 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
2018-02-09Fix nits in ParsePageRangeString().Lei Zhang
- Fix typos. - Do not pass by value. - Return early if the page range string is empty after removing spaces. - Simplify and rearrange bits of the implementation. Change-Id: Ia4c4f43c2ca18383ad1edc8233969a7013e34722 Reviewed-on: https://pdfium-review.googlesource.com/24290 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org>
2018-02-08Split CPDF_PageOrganizer into multiple classes.chromium/3345Lei Zhang
Retain CPDF_PageOrganizer as a base class. Add CPDF_PageExporter and CPDF_NPageToOneExporter sub-classes. The sub-classes only do one type of exporting. Therefore it is much easier to understand what part of the original combined CPDF_PageOrganizer is used where. Change-Id: I424ef9c32b101d23e8397fc9a656d9b0b5da6a27 Reviewed-on: https://pdfium-review.googlesource.com/26011 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org>
2018-02-08Add document getters in CPDF_PageOrganizer.Lei Zhang
This is to prepare for splitting CPDF_PageOrganizer into multiple classes. Change-Id: Ibf54342096aeb66465fd24dc1ba40c73112fb4c9 Reviewed-on: https://pdfium-review.googlesource.com/26010 Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
2018-02-07More GetPageNumbers() clean up in fpdf_ppo.cpp.Lei Zhang
- Pass by const ref. - Simplify logic. - Return page number vector directly. Change-Id: If68c89437380b871ca6635f2355049dd19a9e512 Reviewed-on: https://pdfium-review.googlesource.com/24270 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Reviewed-by: Shirleen Lou <xlou@chromium.org>
2018-02-06Change MakeXObject to update reference from the root of the source page.xlou
The code changes include two parts: 1. Only updating resources' reference caused font not to clone properly. Hence changing to update reference from the root of the source page dictionary. 2. Since PDF objects are at document level, pObjNumberMap needs to be defined before pages are created to avoid same object being copied more than one times with different object numbers. Change-Id: I6f90aff2e3901cee73ce09fe550ad79add6be7eb Reviewed-on: https://pdfium-review.googlesource.com/25190 Commit-Queue: Shirleen Lou <xlou@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
2018-02-02Fix IWYU errors in fpdfppo.cpp.Lei Zhang
Also rename the file to fpdf_ppo.cpp so it is consistent with the public header file name. This makes the linter happy. Change-Id: Ib3608c78111842579898c55f1399982ab2549310 Reviewed-on: https://pdfium-review.googlesource.com/24970 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>