summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authorHenrique Nakashima <hnakashima@chromium.org>2018-07-05 18:04:19 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-07-05 18:04:19 +0000
commit7007fd56221cb2c19444051ad34afb758c89706b (patch)
tree1fab21c7a5df5e78a55598245a94bde9913fdedd /public
parent6f0d8ea78adbb7f5d93e2470a6888b5417a01bca (diff)
downloadpdfium-7007fd56221cb2c19444051ad34afb758c89706b.tar.xz
Create content mark APIs to get values by key.
Bug: pdfium:1037 Change-Id: Ie887c0bbf3e543676adec6d8411b0b3254677d3c Reviewed-on: https://pdfium-review.googlesource.com/37170 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'public')
-rw-r--r--public/fpdf_edit.h52
1 files changed, 49 insertions, 3 deletions
diff --git a/public/fpdf_edit.h b/public/fpdf_edit.h
index 6490c18c6a..380a0a236e 100644
--- a/public/fpdf_edit.h
+++ b/public/fpdf_edit.h
@@ -368,7 +368,18 @@ FPDFPageObjMark_GetParamValueType(FPDF_PAGEOBJECTMARK mark,
unsigned long index);
// Experimental API.
-// Get the value of an int property in a content mark.
+// Get the type of the value of a property in a content mark by key.
+//
+// mark - handle to a content mark.
+// key - string key of the property.
+//
+// Returns the type of the value, or FPDF_OBJECT_UNKNOWN in case of failure.
+FPDF_EXPORT FPDF_OBJECT_TYPE FPDF_CALLCONV
+FPDFPageObjMark_GetParamValueTypeByKey(FPDF_PAGEOBJECTMARK mark,
+ FPDF_BYTESTRING key);
+
+// Experimental API.
+// Get the value of a number property in a content mark as int.
// FPDFPageObjMark_GetParamValueType() should have returned FPDF_OBJECT_NUMBER
// for this property.
//
@@ -380,12 +391,28 @@ FPDF_EXPORT int FPDF_CALLCONV
FPDFPageObjMark_GetParamIntValue(FPDF_PAGEOBJECTMARK mark, unsigned long index);
// Experimental API.
+// Get the value of a number property in a content mark by key as int.
+// FPDFPageObjMark_GetParamValueType() should have returned FPDF_OBJECT_NUMBER
+// for this property.
+//
+// mark - handle to a content mark.
+// key - string key of the property.
+// out_value - pointer to variable that will receive the value. Not filled if
+// false is returned.
+//
+// Returns TRUE if the key maps to a number value, FALSE otherwise.
+FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
+FPDFPageObjMark_GetParamIntValueByKey(FPDF_PAGEOBJECTMARK mark,
+ FPDF_BYTESTRING key,
+ int* out_value);
+
+// Experimental API.
// Get the value of a string property in a content mark.
-// |buffer| is only modified if |buflen| is longer than the length of the key.
+// |buffer| is only modified if |buflen| is longer than the length of the value.
//
// mark - handle to a content mark.
// index - index of the property.
-// buffer - buffer for holding the returned key in UTF16-LE.
+// buffer - buffer for holding the returned value in UTF16-LE.
// buflen - length of the buffer.
//
// Returns the length of the value.
@@ -395,6 +422,25 @@ FPDFPageObjMark_GetParamStringValue(FPDF_PAGEOBJECTMARK mark,
void* buffer,
unsigned long buflen);
+// Experimental API.
+// Get the value of a string property in a content mark by key.
+// |buffer| is only modified if |buflen| is longer than the length of the value.
+//
+// mark - handle to a content mark.
+// key - string key of the property.
+// buffer - buffer for holding the returned value in UTF16-LE.
+// buflen - length of the buffer.
+// out_buflen - pointer to variable that will receive the length of the value.
+// Not filled if false is returned.
+//
+// Returns TRUE if the key maps to a string value, FALSE otherwise.
+FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
+FPDFPageObjMark_GetParamStringValueByKey(FPDF_PAGEOBJECTMARK mark,
+ FPDF_BYTESTRING key,
+ void* buffer,
+ unsigned long buflen,
+ unsigned long* out_buflen);
+
// Load an image from a JPEG image file and then set it into |image_object|.
//
// pages - pointer to the start of all loaded pages, may be NULL.