summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authorJulian Lunger <jlunger@google.com>2017-12-27 10:18:50 -0500
committerChromium commit bot <commit-bot@chromium.org>2018-01-09 23:41:53 +0000
commitecd063eccdb25cbb573d01fc512a3d40322761be (patch)
treec190a0305bb384efe82bc08de57fede4814017d6 /public
parent81a1ac47e5d93980b59b1c34e8cf1bb22a89a936 (diff)
downloadpdfium-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 'public')
-rw-r--r--public/fpdf_edit.h3
-rw-r--r--public/fpdf_structtree.h10
2 files changed, 13 insertions, 0 deletions
diff --git a/public/fpdf_edit.h b/public/fpdf_edit.h
index 3bd246b0ad..685fbdd029 100644
--- a/public/fpdf_edit.h
+++ b/public/fpdf_edit.h
@@ -80,6 +80,9 @@ typedef struct FPDF_IMAGEOBJ_METADATA {
unsigned int bits_per_pixel;
// The image's colorspace. See above for the list of FPDF_COLORSPACE_*.
int colorspace;
+ // The image's marked content ID. Useful for pairing with associated alt-text.
+ // A value of -1 indicates no ID.
+ int marked_content_id;
} FPDF_IMAGEOBJ_METADATA;
#ifdef __cplusplus
diff --git a/public/fpdf_structtree.h b/public/fpdf_structtree.h
index 688471f28d..2e86ae65b3 100644
--- a/public/fpdf_structtree.h
+++ b/public/fpdf_structtree.h
@@ -75,6 +75,16 @@ FPDF_StructElement_GetAltText(FPDF_STRUCTELEMENT struct_element,
void* buffer,
unsigned long buflen);
+// Function: FPDF_StructElement_GetMarkedContentID
+// Get the marked content ID for a given element.
+// Parameters:
+// struct_element - Handle to the struct element.
+// Return value:
+// The marked content ID of the element. If no ID exists, returns
+// -1.
+FPDF_EXPORT int FPDF_CALLCONV
+FPDF_StructElement_GetMarkedContentID(FPDF_STRUCTELEMENT struct_element);
+
// Function: FPDF_StructElement_GetType
// Get the type (/S) for a given element.
// Parameters: