diff options
author | Julian Lunger <jlunger@google.com> | 2017-12-27 10:18:50 -0500 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-01-09 23:41:53 +0000 |
commit | ecd063eccdb25cbb573d01fc512a3d40322761be (patch) | |
tree | c190a0305bb384efe82bc08de57fede4814017d6 /fpdfsdk/fpdf_structtree.cpp | |
parent | 81a1ac47e5d93980b59b1c34e8cf1bb22a89a936 (diff) | |
download | pdfium-ecd063eccdb25cbb573d01fc512a3d40322761be.tar.xz |
Expose marked content IDs for images and alt text.
- Adds two new public bits of API:
- StructElement_GetMCID(STRUCTELEMENT) to return the marked content
ID of the struct element.
- IMAGEOBJ_METADATA.mcid to contain the marked content ID of the
image.
- Restores ContentMark::GetMCID, which was removed with other dead
code in https://pdfium-review.googlesource.com/c/pdfium/+/19170.
- Adds a couple calls to tests, including a simple new PDF to test
the struct tree marked content ID.
Bug:pdfium:957
Change-Id: I92856e43d741df989e53a575a08258da19a39f22
Reviewed-on: https://pdfium-review.googlesource.com/20632
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'fpdfsdk/fpdf_structtree.cpp')
-rw-r--r-- | fpdfsdk/fpdf_structtree.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fpdfsdk/fpdf_structtree.cpp b/fpdfsdk/fpdf_structtree.cpp index 30b7c3fce7..676824ef99 100644 --- a/fpdfsdk/fpdf_structtree.cpp +++ b/fpdfsdk/fpdf_structtree.cpp @@ -83,6 +83,14 @@ FPDF_StructElement_GetAltText(FPDF_STRUCTELEMENT struct_element, : 0; } +FPDF_EXPORT int FPDF_CALLCONV +FPDF_StructElement_GetMarkedContentID(FPDF_STRUCTELEMENT struct_element) { + CPDF_StructElement* elem = ToStructTreeElement(struct_element); + CPDF_Object* p = + (elem && elem->GetDict()) ? elem->GetDict()->GetObjectFor("K") : nullptr; + return p && p->IsNumber() ? p->GetInteger() : -1; +} + FPDF_EXPORT unsigned long FPDF_CALLCONV FPDF_StructElement_GetType(FPDF_STRUCTELEMENT struct_element, void* buffer, |