11#define FFI_LIB "libpdfium.so"
22typedef long int ptrdiff_t ;
33typedef long unsigned int size_t ;
4- typedef int wchar_t ;
4+ typedef unsigned int wchar_t ;
55typedef struct {
66 long long __max_align_ll __attribute__((__aligned__ (__alignof__(long long ))));
77 long double __max_align_ld __attribute__((__aligned__ (__alignof__(long double ))));
@@ -43,6 +43,8 @@ typedef const struct fpdf_signature_t__* FPDF_SIGNATURE;
4343typedef void * FPDF_SKIA_CANVAS ;
4444typedef struct fpdf_structelement_t__ * FPDF_STRUCTELEMENT ;
4545typedef const struct fpdf_structelement_attr_t__ * FPDF_STRUCTELEMENT_ATTR ;
46+ typedef const struct fpdf_structelement_attr_value_t__ *
47+ FPDF_STRUCTELEMENT_ATTR_VALUE ;
4648typedef struct fpdf_structtree_t__ * FPDF_STRUCTTREE ;
4749typedef struct fpdf_textpage_t__ * FPDF_TEXTPAGE ;
4850typedef struct fpdf_widget_t__ * FPDF_WIDGET ;
@@ -237,12 +239,12 @@ FPDF_RenderPageBitmapWithMatrix(FPDF_BITMAP bitmap,
237239 void * first_scan ,
238240 int stride );
239241 int FPDFBitmap_GetFormat (FPDF_BITMAP bitmap );
240- void FPDFBitmap_FillRect (FPDF_BITMAP bitmap ,
241- int left ,
242- int top ,
243- int width ,
244- int height ,
245- FPDF_DWORD color );
242+ FPDF_BOOL FPDFBitmap_FillRect (FPDF_BITMAP bitmap ,
243+ int left ,
244+ int top ,
245+ int width ,
246+ int height ,
247+ FPDF_DWORD color );
246248 void * FPDFBitmap_GetBuffer (FPDF_BITMAP bitmap );
247249 int FPDFBitmap_GetWidth (FPDF_BITMAP bitmap );
248250 int FPDFBitmap_GetHeight (FPDF_BITMAP bitmap );
@@ -769,6 +771,12 @@ FPDFAnnot_IsOptionSelected(FPDF_FORMHANDLE handle,
769771FPDFAnnot_GetFontSize (FPDF_FORMHANDLE hHandle ,
770772 FPDF_ANNOTATION annot ,
771773 float * value );
774+ FPDF_BOOL
775+ FPDFAnnot_GetFontColor (FPDF_FORMHANDLE hHandle ,
776+ FPDF_ANNOTATION annot ,
777+ unsigned int * R ,
778+ unsigned int * G ,
779+ unsigned int * B );
772780 FPDF_BOOL FPDFAnnot_IsChecked (FPDF_FORMHANDLE hHandle ,
773781 FPDF_ANNOTATION annot );
774782 FPDF_BOOL
@@ -793,6 +801,10 @@ FPDFAnnot_GetFormFieldExportValue(FPDF_FORMHANDLE hHandle,
793801 unsigned long buflen );
794802 FPDF_BOOL FPDFAnnot_SetURI (FPDF_ANNOTATION annot ,
795803 const char * uri );
804+ FPDF_ATTACHMENT
805+ FPDFAnnot_GetFileAttachment (FPDF_ANNOTATION annot );
806+ FPDF_ATTACHMENT
807+ FPDFAnnot_AddFileAttachment (FPDF_ANNOTATION annot , FPDF_WIDESTRING name );
796808typedef unsigned char __u_char ;
797809typedef unsigned short int __u_short ;
798810typedef unsigned int __u_int ;
@@ -823,7 +835,7 @@ typedef unsigned int __gid_t;
823835typedef unsigned long int __ino_t ;
824836typedef unsigned long int __ino64_t ;
825837typedef unsigned int __mode_t ;
826- typedef unsigned long int __nlink_t ;
838+ typedef unsigned int __nlink_t ;
827839typedef long int __off_t ;
828840typedef long int __off64_t ;
829841typedef int __pid_t ;
@@ -840,7 +852,7 @@ typedef int __daddr_t;
840852typedef int __key_t ;
841853typedef int __clockid_t ;
842854typedef void * __timer_t ;
843- typedef long int __blksize_t ;
855+ typedef int __blksize_t ;
844856typedef long int __blkcnt_t ;
845857typedef long int __blkcnt64_t ;
846858typedef unsigned long int __fsblkcnt_t ;
@@ -920,6 +932,10 @@ FPDFPage_RemoveObject(FPDF_PAGE page, FPDF_PAGEOBJECT page_object);
920932 FPDF_BOOL
921933FPDFPageObj_HasTransparency (FPDF_PAGEOBJECT page_object );
922934 int FPDFPageObj_GetType (FPDF_PAGEOBJECT page_object );
935+ FPDF_BOOL
936+ FPDFPageObj_GetIsActive (FPDF_PAGEOBJECT page_object , FPDF_BOOL * active );
937+ FPDF_BOOL
938+ FPDFPageObj_SetIsActive (FPDF_PAGEOBJECT page_object , FPDF_BOOL active );
923939 void
924940FPDFPageObj_Transform (FPDF_PAGEOBJECT page_object ,
925941 double a ,
@@ -929,6 +945,8 @@ FPDFPageObj_Transform(FPDF_PAGEOBJECT page_object,
929945 double e ,
930946 double f );
931947 FPDF_BOOL
948+ FPDFPageObj_TransformF (FPDF_PAGEOBJECT page_object , const FS_MATRIX * matrix );
949+ FPDF_BOOL
932950FPDFPageObj_GetMatrix (FPDF_PAGEOBJECT page_object , FS_MATRIX * matrix );
933951 FPDF_BOOL
934952FPDFPageObj_SetMatrix (FPDF_PAGEOBJECT page_object , const FS_MATRIX * matrix );
@@ -942,6 +960,8 @@ FPDFPageObj_SetMatrix(FPDF_PAGEOBJECT page_object, const FS_MATRIX* matrix);
942960 FPDF_PAGEOBJECT
943961FPDFPageObj_NewImageObj (FPDF_DOCUMENT document );
944962 int
963+ FPDFPageObj_GetMarkedContentID (FPDF_PAGEOBJECT page_object );
964+ int
945965FPDFPageObj_CountMarks (FPDF_PAGEOBJECT page_object );
946966 FPDF_PAGEOBJECTMARK
947967FPDFPageObj_GetMark (FPDF_PAGEOBJECT page_object , unsigned long index );
@@ -951,15 +971,15 @@ FPDFPageObj_AddMark(FPDF_PAGEOBJECT page_object, FPDF_BYTESTRING name);
951971FPDFPageObj_RemoveMark (FPDF_PAGEOBJECT page_object , FPDF_PAGEOBJECTMARK mark );
952972 FPDF_BOOL
953973FPDFPageObjMark_GetName (FPDF_PAGEOBJECTMARK mark ,
954- void * buffer ,
974+ FPDF_WCHAR * buffer ,
955975 unsigned long buflen ,
956976 unsigned long * out_buflen );
957977 int
958978FPDFPageObjMark_CountParams (FPDF_PAGEOBJECTMARK mark );
959979 FPDF_BOOL
960980FPDFPageObjMark_GetParamKey (FPDF_PAGEOBJECTMARK mark ,
961981 unsigned long index ,
962- void * buffer ,
982+ FPDF_WCHAR * buffer ,
963983 unsigned long buflen ,
964984 unsigned long * out_buflen );
965985 FPDF_OBJECT_TYPE
@@ -972,13 +992,13 @@ FPDFPageObjMark_GetParamIntValue(FPDF_PAGEOBJECTMARK mark,
972992 FPDF_BOOL
973993FPDFPageObjMark_GetParamStringValue (FPDF_PAGEOBJECTMARK mark ,
974994 FPDF_BYTESTRING key ,
975- void * buffer ,
995+ FPDF_WCHAR * buffer ,
976996 unsigned long buflen ,
977997 unsigned long * out_buflen );
978998 FPDF_BOOL
979999FPDFPageObjMark_GetParamBlobValue (FPDF_PAGEOBJECTMARK mark ,
9801000 FPDF_BYTESTRING key ,
981- void * buffer ,
1001+ unsigned char * buffer ,
9821002 unsigned long buflen ,
9831003 unsigned long * out_buflen );
9841004 FPDF_BOOL
@@ -998,7 +1018,7 @@ FPDFPageObjMark_SetBlobParam(FPDF_DOCUMENT document,
9981018 FPDF_PAGEOBJECT page_object ,
9991019 FPDF_PAGEOBJECTMARK mark ,
10001020 FPDF_BYTESTRING key ,
1001- void * value ,
1021+ const unsigned char * value ,
10021022 unsigned long value_len );
10031023 FPDF_BOOL
10041024FPDFPageObjMark_RemoveParam (FPDF_PAGEOBJECT page_object ,
@@ -1056,6 +1076,12 @@ FPDFImageObj_GetImageMetadata(FPDF_PAGEOBJECT image_object,
10561076FPDFImageObj_GetImagePixelSize (FPDF_PAGEOBJECT image_object ,
10571077 unsigned int * width ,
10581078 unsigned int * height );
1079+ FPDF_BOOL
1080+ FPDFImageObj_GetIccProfileDataDecoded (FPDF_PAGEOBJECT image_object ,
1081+ FPDF_PAGE page ,
1082+ uint8_t * buffer ,
1083+ size_t buflen ,
1084+ size_t * out_buflen );
10591085 FPDF_PAGEOBJECT FPDFPageObj_CreateNewPath (float x ,
10601086 float y );
10611087 FPDF_PAGEOBJECT FPDFPageObj_CreateNewRect (float x ,
@@ -1170,6 +1196,13 @@ FPDFText_SetCharcodes(FPDF_PAGEOBJECT text_object,
11701196 FPDF_BOOL cid );
11711197 FPDF_FONT
11721198FPDFText_LoadStandardFont (FPDF_DOCUMENT document , FPDF_BYTESTRING font );
1199+ FPDF_FONT
1200+ FPDFText_LoadCidType2Font (FPDF_DOCUMENT document ,
1201+ const uint8_t * font_data ,
1202+ uint32_t font_data_size ,
1203+ FPDF_BYTESTRING to_unicode_cmap ,
1204+ const uint8_t * cid_to_gid_map_data ,
1205+ uint32_t cid_to_gid_map_data_size );
11731206 FPDF_BOOL
11741207FPDFTextObj_GetFontSize (FPDF_PAGEOBJECT text , float * size );
11751208 void FPDFFont_Close (FPDF_FONT font );
@@ -1193,8 +1226,12 @@ FPDFTextObj_GetRenderedBitmap(FPDF_DOCUMENT document,
11931226 FPDF_PAGEOBJECT text_object ,
11941227 float scale );
11951228 FPDF_FONT FPDFTextObj_GetFont (FPDF_PAGEOBJECT text );
1196- unsigned long
1197- FPDFFont_GetFontName (FPDF_FONT font , char * buffer , unsigned long length );
1229+ size_t FPDFFont_GetBaseFontName (FPDF_FONT font ,
1230+ char * buffer ,
1231+ size_t length );
1232+ size_t FPDFFont_GetFamilyName (FPDF_FONT font ,
1233+ char * buffer ,
1234+ size_t length );
11981235 FPDF_BOOL FPDFFont_GetFontData (FPDF_FONT font ,
11991236 uint8_t * buffer ,
12001237 size_t buflen ,
0 commit comments