PDF SDK Documentation

Comprehensive Guide for Developers: Features, Integration, and API Reference

Loading...
Searching...
No Matches
content.h
Go to the documentation of this file.
1// Copyright (c) 2009-2025 Avanquest Software. All rights reserved.
2
3#ifndef PDFSDK_CORE_CONTENT_H_INCLUDED_
4#define PDFSDK_CORE_CONTENT_H_INCLUDED_
5
10
11#include <pdfsdk/core/api_macro.h>
13#include <pdfsdk/core/fonts.h>
14#include <pdfsdk/core/objects.h>
16#include <pdfsdk/errors.h>
17#include <pdfsdk/math_types.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23typedef void(PDFSDK_CALLCONV* PDPageLoadedProc)(size_t iPage, void* clientData);
24typedef void(PDFSDK_CALLCONV* PDPageContentChangedProc)(size_t iPage, const PDRectF* rects, size_t numRects, void* clientData);
25
26typedef struct PDEFunctionRec_* PDEFunction;
27typedef struct PDEColorRec_* PDEColor;
28typedef struct PDEClipRec_* PDEClip;
29
30typedef struct {
31 float low;
32 float high;
34
35//----------------------------------------------------------
36// Soft mask
37typedef struct PDESoftMaskRec_* PDESoftMask;
38
52//----------------------------------------------------------
53
54//----------------------------------------------------------
55// Graphics state
56typedef struct PDEGStateRec_* PDEGState;
57
70
84
120
146
147#define kPDEDashMaxPatternSize 15
148
149typedef struct {
150 size_t patternSize;
151 float pattern[kPDEDashMaxPatternSize];
152 float phase;
153} PDEDash;
154
160enum {
196};
197typedef uint32_t PDEGStateFlags;
198//----------------------------------------------------------
199
200typedef struct PDEContentRec_* PDEContent;
201
202//----------------------------------------------------------
203// Content element
204typedef struct PDEElementRec_* PDEElement;
205
256//----------------------------------------------------------
257
288
289typedef uint32_t PDEFontToUnicodeCheckFlags;
290
303
304typedef uint32_t PDEFontToUnicodeCreateFlags;
305//----------------------------------------------------------
306
307//----------------------------------------------------------
308// Vector path
309// return true if enumeration is complete
310typedef PDErrCode(PDFSDK_CALLCONV* PDEPathMoveToProc)(void* clientData, const PDPointF* to);
311typedef PDErrCode(PDFSDK_CALLCONV* PDEPathLineToProc)(void* clientData, const PDPointF* to);
312typedef PDErrCode(PDFSDK_CALLCONV* PDEPathCurveToProc)(void* clientData, const PDPointF* c1, const PDPointF* c2, const PDPointF* to);
313typedef PDErrCode(PDFSDK_CALLCONV* PDEPathVCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
314typedef PDErrCode(PDFSDK_CALLCONV* PDEPathYCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
315typedef PDErrCode(PDFSDK_CALLCONV* PDEPathRectProc)(void* clientData, const PDRectF* rect);
316typedef PDErrCode(PDFSDK_CALLCONV* PDEPathCloseProc)(void* clientData);
317
318typedef struct {
319 PDEPathMoveToProc moveTo;
320 PDEPathLineToProc lineTo;
321 PDEPathCurveToProc curveTo;
322 PDEPathVCurveToProc vCurveTo;
323 PDEPathYCurveToProc yCurveTo;
324 PDEPathRectProc rect;
325 PDEPathCloseProc close;
327
356
357typedef struct {
359 float x0, y0;
360 float x1, y1;
361 float x2, y2;
363
374enum {
384};
385typedef int PDEPaintOp;
386//----------------------------------------------------------
387
388//----------------------------------------------------------
389// Text
390
391typedef struct PDETextItemRec_* PDETextItem;
392
399enum {
404};
405
406enum {
408};
409
410typedef uint32_t PDETextRenderMode;
411
413 float charSpacing;
414 float wordSpacing;
415 float horzScaling;
416 float leading;
417 float textRise;
418 PDETextRenderMode textRenderMode;
419 bool textKnockout;
420};
421
422typedef wchar_t UnicodeChar;
423//----------------------------------------------------------
424
425//----------------------------------------------------------
426// Color space
427typedef struct PDEColorSpaceRec_* PDEColorSpace;
428
471
472typedef struct {
473 float x;
474 float y;
475 float z;
476} PDECieXYZ;
477
478typedef struct {
479 PDECieXYZ red;
480 PDECieXYZ green;
481 PDECieXYZ blue;
483//----------------------------------------------------------
484
485//----------------------------------------------------------
486// Pattern
487typedef struct PDEPatternRec_* PDEPattern;
488
507
523
545//----------------------------------------------------------
546
547//----------------------------------------------------------
548// Shading
549typedef struct PDEShadingRec_* PDEShading;
550
574//----------------------------------------------------------
575
576//----------------------------------------------------------
577// XObject
578typedef struct PDEXObjectRec_* PDEXObject;
579
594
595typedef struct PDEXGroupRec_* PDEXGroup;
596
607enum {
615};
616typedef uint8_t PDEXGroupFlags;
617
618typedef struct {
619 bool imageMask;
620 int width;
621 int height;
622 int bitsPerComponent;
624//----------------------------------------------------------
625
626//----------------------------------------------------------
627// Font
628typedef struct PDEFontRec_* PDEFont;
629
653
670
681enum {
699};
700
701typedef uint32_t PDEFontFlags;
702
703typedef struct {
704 PDEFontFlags flags;
705 PDRectF fontBBox;
706 int16_t missingWidth;
707 int16_t stemV;
708 int16_t stemH;
709 int16_t capHeight;
710 int16_t xHeight;
711 int16_t ascent;
712 int16_t descent;
713 int16_t leading;
714 int16_t maxWidth;
715 int16_t avgWidth;
716 int16_t italicAngle;
718
722typedef struct {
723 bool useCacheDevice;
727
744
750typedef struct {
751 PDAtom registry;
752 PDAtom ordering;
753 int supplement;
755
761typedef struct {
762 float wy;
763 float vx;
764 float vy;
766
779
797
813
814typedef uint32_t PDEFontCreateFlags;
815
816typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineMoveToProc)(void* clientData, const PDPointF* to);
817typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineLineToProc)(void* clientData, const PDPointF* to);
818typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineConicCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
819typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineCubicCurveToProc)(void* clientData, const PDPointF* c1, const PDPointF* c2, const PDPointF* to);
820
821typedef struct {
822 PDEOutlineMoveToProc moveTo;
823 PDEOutlineLineToProc lineTo;
824 PDEOutlineConicCurveToProc conicCurveTo;
825 PDEOutlineCubicCurveToProc cubicCurveTo;
827
844
845PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocAttachPageLoadedCallback(PDDoc doc, PDPageLoadedProc proc, void* clientData);
846PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocDetachPageLoadedCallback(PDDoc doc, PDPageLoadedProc proc, void* clientData);
847
848PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocAttachPageContentChangedCallback(PDDoc doc, PDPageContentChangedProc proc, void* clientData);
849PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocDetachPageContentChangedCallback(PDDoc doc, PDPageContentChangedProc proc, void* clientData);
850PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocNotifyPageContentChanged(PDDoc doc, size_t iPage, const PDRectF* rects, size_t numRects);
851
852//----------------------------------------------------------
853// Content
854//----------------------------------------------------------
855PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDPageGetContent(PDPage page, PDEContent* pContent);
856PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDPageIsContentLoaded(PDPage page, bool* pLoaded);
857
858PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateContent(PDEContent* pContent);
859PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentGetNumElements(PDEContent content, size_t* pNumElements);
860PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentGetElement(PDEContent content, size_t index, PDEElement* pElement);
861PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentInsertElement(PDEContent content, size_t index, PDEElement element);
862PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentRemoveElement(PDEContent content, size_t index);
863//----------------------------------------------------------
864
865//----------------------------------------------------------
866// Element
867//----------------------------------------------------------
868PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementCopy(PDEElement element, PDEElement* pCopy);
869PDF_CORE_API bool PDFSDK_CALLCONV PDEElementEqual(PDEElement elementA, PDEElement elementB);
870PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetType(PDEElement element, PDEElementType* pType);
871PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetBBox(PDEElement element, PDRectF* pBBox);
872PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetQuad(PDEElement element, PDQuad* pQuad);
873PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetClip(PDEElement element, PDEClip* pClip);
874PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetClip(PDEElement element, PDEClip clip);
875PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetGState(PDEElement element, PDEGState* pState);
876PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetGState(PDEElement element, PDEGState state);
877PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetMatrix(PDEElement element, PDMatrix* pMatrix);
878PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetMatrix(PDEElement element, const PDMatrix* matrix);
879PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementHitTest(PDEElement element, const PDPointF* point, bool* pResult);
880PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCContextIsElementVisible(PDOCContext ctx, PDEElement element, bool* pVisible);
881//----------------------------------------------------------
882
883//----------------------------------------------------------
884// Container
885//----------------------------------------------------------
886PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateContainer(PDAtom tag, PDObject dict, PDEElement* pContainer);
887PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetTag(PDEElement container, PDAtom* pTag);
888PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerSetTag(PDEElement container, PDAtom tag);
889PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetDict(PDEElement container, PDObject* pDict);
890PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerSetDict(PDEElement container, PDObject dict);
891PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetContent(PDEElement container, PDEContent* pContent);
892PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetOCMD(PDEElement container, PDOCMD* pOCMD);
893//----------------------------------------------------------
894
895//----------------------------------------------------------
896// Place
897//----------------------------------------------------------
898PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePlace(PDAtom tag, PDObject dict, PDEElement* pPlace);
899PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceGetTag(PDEElement place, PDAtom* pTag);
900PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceSetTag(PDEElement place, PDAtom tag);
901PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceGetDict(PDEElement place, PDObject* pDict);
902PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceSetDict(PDEElement place, PDObject dict);
903//----------------------------------------------------------
904
905//----------------------------------------------------------
906// Function
907//----------------------------------------------------------
908PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetFunctionFromPDObject(PDObject funcObj, PDEFunction* pFunc);
909PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetPDObject(PDEFunction func, PDObject* pObj);
910PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetNumInputs(PDEFunction func, size_t* pNumInputs);
911PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetNumOutputs(PDEFunction func, size_t* pNumOutputs);
912PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionExec(PDEFunction func, const float* inputs, float* outputs);
913//----------------------------------------------------------
914
915//----------------------------------------------------------
916// SoftMask
917//----------------------------------------------------------
918PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateSoftMask(PDDoc pddoc, PDESoftMask* pSMask);
919PDF_CORE_API bool PDFSDK_CALLCONV PDESoftMaskEqual(PDESoftMask softMaskA, PDESoftMask softMaskB);
920PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetSubtype(PDESoftMask softMask, PDESoftMaskSubtype* pSubtype);
921PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetSubtype(PDESoftMask softMask, PDESoftMaskSubtype subtype);
922PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetGroup(PDESoftMask softMask, PDEXObject* pGroup);
923PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetGroup(PDESoftMask softMask, PDEXObject group);
924PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetBackdropColor(PDESoftMask softMask, PDColorValue* pBackdrop);
925PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetBackdropColor(PDESoftMask softMask, PDColorValue backdrop);
926PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetTransfer(PDESoftMask softMask, PDEFunction* pTransfer);
927PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetTransfer(PDESoftMask softMask, PDEFunction transfer);
928//----------------------------------------------------------
929
930//----------------------------------------------------------
931// Graphic state
932//----------------------------------------------------------
933PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateGState(PDEGState* pGState);
934PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateCopy(PDEGState gstate, PDEGState* pCopy);
935PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColor(PDEGState gstate, PDEColor* pColor);
936PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColorSpace(PDEGState gstate, PDEColorSpace* pColorSpace);
937PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColorNumComponents(PDEGState gstate, size_t* pNumComponents);
938PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColorComponents(PDEGState gstate, float* components);
939PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColorPattern(PDEGState gstate, PDEPattern* pPattern);
940PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillColor(PDEGState gstate, PDEColor color);
941PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillColorSpace(PDEGState gstate, PDEColorSpace colorSpace);
942PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillColorComponents(PDEGState gstate, const float* components, size_t numComponents, PDEPattern pattern);
943PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColor(PDEGState gstate, PDEColor* pColor);
944PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColorSpace(PDEGState gstate, PDEColorSpace* pColorSpace);
945PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColorNumComponents(PDEGState gstate, size_t* pNumComponents);
946PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColorComponents(PDEGState gstate, float* components);
947PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColorPattern(PDEGState gstate, PDEPattern* pPattern);
948PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeColor(PDEGState gstate, PDEColor color);
949PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeColorSpace(PDEGState gstate, PDEColorSpace colorSpace);
950PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeColorComponents(PDEGState gstate, const float* components, size_t numComponents, PDEPattern pattern);
951PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineWidth(PDEGState gstate, float* pLineWidth);
952PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineWidth(PDEGState gstate, float lineWidth);
953PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineCap(PDEGState gstate, PDELineCap* pLineCap);
954PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineCap(PDEGState gstate, PDELineCap lineCap);
955PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineJoin(PDEGState gstate, PDELineJoin* pLineJoin);
956PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineJoin(PDEGState gstate, PDELineJoin lineJoin);
957PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetMiterLimit(PDEGState gstate, float* pMiterLimit);
958PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetMiterLimit(PDEGState gstate, float miterLimit);
959PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetDash(PDEGState gstate, PDEDash* pDash);
960PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetDash(PDEGState gstate, const PDEDash* dash);
961PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetIntent(PDEGState gstate, PDERenderingIntent* pIntent);
962PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetIntent(PDEGState gstate, PDERenderingIntent intent);
963PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeAdjustment(PDEGState gstate, bool* pAdjustStrokes);
964PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeAdjustment(PDEGState gstate, bool adjustStrokes);
965PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetBlendMode(PDEGState gstate, PDEBlendMode* pBlendMode);
966PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetBlendMode(PDEGState gstate, PDEBlendMode blendMode);
967PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSoftMask(PDEGState gstate, PDESoftMask* pSoftMask);
968PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSoftMask(PDEGState gstate, PDESoftMask softMask);
969PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSoftMaskMatrix(PDEGState gstate, PDMatrix* pSoftMaskMatrix);
970PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSoftMaskMatrix(PDEGState gstate, const PDMatrix* softMaskMatrix);
971PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillAlpha(PDEGState gstate, float* pAlpha);
972PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillAlpha(PDEGState gstate, float alpha);
973PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeAlpha(PDEGState gstate, float* pAlpha);
974PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeAlpha(PDEGState gstate, float alpha);
975PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetAlphaIsShape(PDEGState gstate, bool* pAlphaIsShape);
976PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetAlphaIsShape(PDEGState gstate, bool alphaIsShape);
977PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillOverprint(PDEGState gstate, bool* pOverprint);
978PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillOverprint(PDEGState gstate, bool overprint);
979PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeOverprint(PDEGState gstate, bool* pOverprint);
980PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeOverprint(PDEGState gstate, bool overprint);
981PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetOverprintMode(PDEGState gstate, int* pOpm);
982PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetOverprintMode(PDEGState gstate, int opm);
983PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFlatness(PDEGState gstate, float* pFlatness);
984PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFlatness(PDEGState gstate, float flatness);
985PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSmoothness(PDEGState gstate, float* pSmoothness);
986PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSmoothness(PDEGState gstate, float smoothness);
987PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFlags(PDEGState gstate, PDEGStateFlags* pFlags);
988//----------------------------------------------------------
989
990//----------------------------------------------------------
991// Clip
992//----------------------------------------------------------
993PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateClip(PDEClip* pClip);
994PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipCopy(PDEClip clip, PDEClip* pCopy);
995PDF_CORE_API bool PDFSDK_CALLCONV PDEClipEqual(PDEClip clipA, PDEClip clipB);
996PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetBBox(PDEClip clip, PDRectF* pBBox);
997PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetNumElements(PDEClip clip, size_t* pNumElements);
998PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetElement(PDEClip clip, size_t index, PDEElement* pElement);
999PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipInsertElement(PDEClip clip, size_t index, PDEElement element);
1000PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipRemoveElement(PDEClip clip, size_t index);
1001//----------------------------------------------------------
1002
1003//----------------------------------------------------------
1004// Path
1005//----------------------------------------------------------
1006PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePath(PDEElement* pPath);
1007PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetPaintOp(PDEElement path, PDEPaintOp* pPaintOp);
1008PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathSetPaintOp(PDEElement path, PDEPaintOp paintOp);
1009PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathEnum(PDEElement path, PDEPathEnumMonitor* mon, void* monClientData);
1010PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetNumSegments(PDEElement path, size_t* pNumSegments);
1011PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetSegment(PDEElement path, size_t index, PDEPathSegment* pSegment);
1012PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathAddSegment(PDEElement path, PDEPathSegment seg);
1013PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathRemoveSegment(PDEElement path, size_t index);
1014//----------------------------------------------------------
1015
1016//----------------------------------------------------------
1017// Text
1018//----------------------------------------------------------
1019PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateText(PDEElement* pText);
1020PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetNumItems(PDEElement text, size_t* pNumItems);
1021PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetItem(PDEElement text, size_t index, PDETextItem* pItem);
1022PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetItemAtPoint(PDEElement text, const PDPointF* pagePt, PDETextItem* pItem);
1023PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextInsertItem(PDEElement text, size_t index, PDETextItem item);
1024PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextRemoveItem(PDEElement text, size_t index);
1025PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextSplitItem(PDEElement text, size_t itemIndex, size_t charIndex);
1026PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetKnockout(PDEElement text, bool* pKnockout);
1027PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextSetKnockout(PDEElement text, bool knockout);
1028
1029PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateTextItem(PDETextItem* pItem);
1030PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateTextItemEmptyCopy(PDETextItem item, PDETextItem* pItem);
1031PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopy(PDETextItem item, PDETextItem* pCopy);
1032PDF_CORE_API int PDFSDK_CALLCONV PDETextItemCompare(PDETextItem itemA, PDETextItem itemB);
1033PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopyChars(PDETextItem item, char* buffer, size_t bufferSize, size_t* pSize);
1034PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopyCharsByIndex(PDETextItem item, size_t index, char* buffer, size_t bufferSize, size_t* pSize);
1035PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetChars(PDETextItem item, const char* chars, size_t numChars);
1036PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemInsertChars(PDETextItem item, size_t index, const char* chars, size_t numChars);
1037PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemInsertUnicodeChars(PDETextItem item, size_t index, const UnicodeChar* unicodeID, size_t unicodeIDsize);
1038PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemRemoveChars(PDETextItem item, size_t index, size_t numChars);
1039PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetGState(PDETextItem item, PDEGState* pState);
1040PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetGState(PDETextItem item, PDEGState gstate);
1041PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetTextState(PDETextItem item, PDETextState* pTextState);
1042PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetTextState(PDETextItem item, const PDETextState* textState);
1043PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetFont(PDETextItem item, PDEFont* pFont);
1044PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetFont(PDETextItem item, PDEFont font);
1045PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetFontSize(PDETextItem item, float* pFontSize);
1046PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetFontSize(PDETextItem item, float fontSize);
1047PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetTextMatrix(PDETextItem item, PDMatrix* pMatrix);
1048PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetTextMatrix(PDETextItem item, const PDMatrix* matrix);
1049PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetNumChars(PDETextItem item, size_t* pNumChars);
1050PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharOutline(PDETextItem item, size_t index, const PDEOutlineEnumMonitor* mon, void* monClientData);
1051PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetType3CharProc(PDETextItem item, size_t index, PDEContent* pCharProc);
1052PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharAdvance(PDETextItem item, size_t index, PDPointF* pAdvance);
1053PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharVertMetric(PDETextItem item, size_t index, PDEGlyphVertMetric* pVertMetric);
1054PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharsRect(PDETextItem item, size_t begindex, size_t endindex, PDRectF* pRect);
1055PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharQuad(PDETextItem item, size_t index, PDQuad* pQuad);
1056PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetOutlineQuad(PDETextItem item, size_t index, PDQuad* pQuad);
1057PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetUnicodeText(PDETextItem item, UnicodeChar* buffer, size_t size, size_t* pSize);
1058PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetUnicodeChar(PDETextItem item, size_t index, UnicodeChar* buffer, size_t size, size_t* pSize);
1059PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetChar(PDETextItem item, size_t index, char* buffer, size_t size, size_t* pSize);
1060PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetGlyphIndex(PDETextItem item, size_t index, unsigned int* pGlyphIndex);
1061PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetBBox(PDETextItem item, PDRectF* pBBox);
1062PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetMatrix(PDETextItem item, PDMatrix* pMatrix);
1063PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetMatrix(PDETextItem item, const PDMatrix* matrix);
1064PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetParent(PDETextItem item, PDEElement* pText);
1065PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSplitInplace(PDETextItem item, size_t charIndex, PDETextItem* pItem);
1066PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemIsCharWhitespace(PDETextItem item, size_t charIndex, bool* pIsWhitespace);
1067
1068PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextLayout(PDDoc doc,
1069 const wchar_t* text,
1070 const PDRectF* rect,
1071 const PDFontInfo* font,
1072 float fontSize,
1073 PDColorValue fontColor,
1074 PDETextAlign alignment,
1075 PDEElement* pText);
1076//----------------------------------------------------------
1077
1078//----------------------------------------------------------
1079// Inline image
1080//----------------------------------------------------------
1081PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateInlineImage(PDEImageAttrs* attrs, PDEColorSpace cs, const char* data, PDEElement* pElement);
1082PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateInlineImageCrop(PDEElement image, const PDRectI* cropRect, PDEElement* pOut);
1083PDF_CORE_API int PDFSDK_CALLCONV PDEInlineImageCompare(PDEElement imageA, PDEElement imageB);
1084PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetAttrs(PDEElement image, PDEImageAttrs* pAttrs);
1085PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetColorSpace(PDEElement image, PDEColorSpace* pColorSpace);
1086PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetInterpolate(PDEElement image, bool* pInterpolate);
1087PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageSetInterpolate(PDEElement image, bool interpolate);
1088PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetIntent(PDEElement image, PDERenderingIntent* pIntent);
1089PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageSetIntent(PDEElement image, PDERenderingIntent intent);
1090PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetDecodeArray(PDEElement image, float* decodeArray, size_t decodeArraySize, size_t* pDecodeArraySize);
1091PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageOpenStream(PDEElement image, PDReadStream* pStream);
1092//----------------------------------------------------------
1093
1094//----------------------------------------------------------
1095// XObject element
1096//----------------------------------------------------------
1097PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXObjectElement(PDEXObject xobject, PDEElement* pElement);
1098PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXObjectElementCrop(PDEElement xoe, const PDRectI* cropRect, PDEElement* pCrop);
1099PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectElementGetXObject(PDEElement xoe, PDEXObject* pXObject);
1100PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectElementSetXObject(PDEElement xoe, PDEXObject xobject);
1101//----------------------------------------------------------
1102
1103//----------------------------------------------------------
1104// Shading element
1105//----------------------------------------------------------
1106PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingElement(PDEShading shading, PDEElement* pElement);
1107PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingElementGetShading(PDEElement she, PDEShading* pShading);
1108PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingElementSetShading(PDEElement she, PDEShading shading);
1109//----------------------------------------------------------
1110
1111//----------------------------------------------------------
1112// Color space
1113//----------------------------------------------------------
1114PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetColorSpaceFromPDObject(PDObject csObj, PDEColorSpace* pColorSpace);
1115PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceGray(PDEColorSpace* pColorSpace);
1116PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceRGB(PDEColorSpace* pColorSpace);
1117PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceCMYK(PDEColorSpace* pColorSpace);
1118PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpacePattern(PDEColorSpace* pColorSpace);
1119PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceICCBasedFromFile(PDDoc doc, const wchar_t* profilePath, PDEColorSpace* pColorSpace);
1120PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceICCBasedFromBuffer(PDDoc doc, const void* buffer, size_t size, PDEColorSpace* pColorSpace);
1121PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetPDObject(PDEColorSpace colorSpace, PDObject* pObj);
1122PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetFamily(PDEColorSpace colorSpace, PDEColorSpaceFamily* pFamily);
1123PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetNumComponents(PDEColorSpace colorSpace, size_t* pNumComponents);
1124PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetComponentRange(PDEColorSpace colorSpace, size_t index, PDENumRange* pRange);
1125PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceDoesProduceOutput(PDEColorSpace colorSpace, bool* pResult);
1126PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceIsSpecial(PDEColorSpace colorSpace, bool* pResult);
1127PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpacePackColor(PDEColorSpace colorSpace, const float* components, void* buffer);
1128PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceUnpackColor(PDEColorSpace colorSpace, const void* buffer, float* components);
1129PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceTransformToRGB(PDEColorSpace colorSpace, const float* components, PDERenderingIntent intent, PDColorValue* pRGB);
1130PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceTransformImageDataToRGB(PDEColorSpace colorSpace, const void* data, int numEntries, PDERenderingIntent intent, void* buffer);
1131PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceTransformImageData(PDEColorSpace srcColorSpace, PDEColorSpace dstColorSpace, const void* data, int numEntries, PDERenderingIntent intent, void* buffer);
1132//----------------------------------------------------------
1133
1134//----------------------------------------------------------
1135// Color
1136//----------------------------------------------------------
1137PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColor(PDEColorSpace colorSpace, float const* components, size_t numComponents, PDEPattern pattern, PDEColor* pColor);
1138PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorGray(float gray, PDEColor* pColor);
1139PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorRGB(float red, float green, float blue, PDEColor* pColor);
1140PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorFromValue(PDColorValue value, PDEColor* pColor);
1141PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetColorSpace(PDEColor color, PDEColorSpace* pColorSpace);
1142PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetNumComponents(PDEColor colorSpace, size_t* pNumComponents);
1143PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetComponent(PDEColor color, size_t index, float* pComponent);
1144PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetComponents(PDEColor color, float* components);
1145PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetPattern(PDEColor color, PDEPattern* pPattern);
1146PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorToRGB(PDEColor color, PDERenderingIntent intent, PDColorValue* pRGB);
1147//----------------------------------------------------------
1148
1149//----------------------------------------------------------
1150// Pattern
1151//----------------------------------------------------------
1152PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetPatternFromPDObject(PDObject patternObj, PDEPattern* pPattern);
1153PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetPDObject(PDEPattern pattern, PDObject* pObj);
1154PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetType(PDEPattern pattern, PDEPatternType* pType);
1155PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetMatrix(PDEPattern pattern, PDMatrix* pMatrix);
1156PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternSetMatrix(PDEPattern pattern, const PDMatrix* matrix);
1157
1158PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePatternTiling(PDDoc doc,
1159 PDETilingPatternPaintType paintType,
1160 PDETilingPatternTilingType tilingType,
1161 const PDRectF* bbox,
1162 float xstep,
1163 float ystep,
1164 PDEContent content,
1165 PDEPattern* pPattern);
1166PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetPaintType(PDEPattern pattern, PDETilingPatternPaintType* pPaintType);
1167PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetPaintType(PDEPattern pattern, PDETilingPatternPaintType paintType);
1168PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetTilingType(PDEPattern pattern, PDETilingPatternTilingType* pTilingType);
1169PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetTilingType(PDEPattern pattern, PDETilingPatternTilingType tilingType);
1170PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetBBox(PDEPattern pattern, PDRectF* pBBox);
1171PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetBBox(PDEPattern pattern, const PDRectF* bbox);
1172PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetXStep(PDEPattern pattern, float* pXStep);
1173PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetXStep(PDEPattern pattern, float xstep);
1174PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetYStep(PDEPattern pattern, float* pYStep);
1175PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetYStep(PDEPattern pattern, float ystep);
1176PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetContent(PDEPattern pattern, PDEContent* pContent);
1177
1178PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePatternShading(PDDoc doc, PDEShading shading, PDEPattern* pPattern);
1179PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingGetShading(PDEPattern pattern, PDEShading* pShading);
1180PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingSetShading(PDEPattern pattern, PDEShading shading);
1181PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingGetExtGState(PDEPattern pattern, PDEGState* pExtGState);
1182PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingSetExtGState(PDEPattern pattern, PDEGState extGState);
1183//----------------------------------------------------------
1184
1185//----------------------------------------------------------
1186// Shading
1187//----------------------------------------------------------
1188PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetShadingFromPDObject(PDObject shadingObj, PDEShading* pShading);
1189PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetPDObject(PDEShading shading, PDObject* pObj);
1190
1191PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetType(PDEShading shading, PDEShadingType* pType);
1192PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetColorSpace(PDEShading shading, PDEColorSpace* pColorSpace);
1193PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetBackground(PDEShading shading, PDEColor* pBackground);
1194PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetBackground(PDEShading shading, PDEColor background);
1195PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetBBox(PDEShading shading, PDRectF* pBBox);
1196PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetBBox(PDEShading shading, const PDRectF* bbox);
1197PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetAntiAlias(PDEShading shading, bool* pAntiAlias);
1198PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetAntiAlias(PDEShading shading, bool antiAlias);
1199
1200PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingFunctionBased(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, PDEShading* pShading);
1201PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetXDomain(PDEShading shading, PDENumRange* pDomain);
1202PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetXDomain(PDEShading shading, PDENumRange const* domain);
1203PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetYDomain(PDEShading shading, PDENumRange* pDomain);
1204PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetYDomain(PDEShading shading, PDENumRange const* domain);
1205PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetMatrix(PDEShading shading, PDMatrix* pMatrix);
1206PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetMatrix(PDEShading shading, const PDMatrix* matrix);
1207PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetFunction(PDEShading shading, PDEFunction* pFunction);
1208PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetFunction(PDEShading shading, PDEFunction function);
1209
1210PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingAxial(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, const PDPointF* start, const PDPointF* end, PDEShading* pShading);
1211PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetStartPoint(PDEShading shading, PDPointF* pPoint);
1212PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetStartPoint(PDEShading shading, const PDPointF* point);
1213PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetEndPoint(PDEShading shading, PDPointF* pPoint);
1214PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetEndPoint(PDEShading shading, const PDPointF* point);
1215PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetFunction(PDEShading shading, PDEFunction* pFunction);
1216PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetFunction(PDEShading shading, PDEFunction function);
1217PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetDomain(PDEShading shading, PDENumRange* pDomain);
1218PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetDomain(PDEShading shading, PDENumRange const* domain);
1219PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetExtendStart(PDEShading shading, bool* pExtend);
1220PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetExtendStart(PDEShading shading, bool extend);
1221PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetExtendEnd(PDEShading shading, bool* pExtend);
1222PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetExtendEnd(PDEShading shading, bool extend);
1223
1224PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingRadial(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, const PDPointF* start, float startRadius, const PDPointF* end, float endRadius, PDEShading* pShading);
1225PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetStartPoint(PDEShading shading, PDPointF* pPoint);
1226PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetStartPoint(PDEShading shading, const PDPointF* point);
1227PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetStartRadius(PDEShading shading, float* pRadius);
1228PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetStartRadius(PDEShading shading, float radius);
1229PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetEndPoint(PDEShading shading, PDPointF* pPoint);
1230PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetEndPoint(PDEShading shading, const PDPointF* point);
1231PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetEndRadius(PDEShading shading, float* pRadius);
1232PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetEndRadius(PDEShading shading, float radius);
1233PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetFunction(PDEShading shading, PDEFunction* pFunction);
1234PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetFunction(PDEShading shading, PDEFunction function);
1235PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetDomain(PDEShading shading, PDENumRange* pDomain);
1236PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetDomain(PDEShading shading, PDENumRange const* domain);
1237PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetExtendStart(PDEShading shading, bool* pExtend);
1238PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetExtendStart(PDEShading shading, bool extend);
1239PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetExtendEnd(PDEShading shading, bool* pExtend);
1240PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetExtendEnd(PDEShading shading, bool extend);
1241
1242PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetFunction(PDEShading shading, PDEFunction* pFunction);
1243PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudSetFunction(PDEShading shading, PDEFunction function);
1244PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetNumVertices(PDEShading shading, size_t* pNumVertices);
1245PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetVertexCoord(PDEShading shading, size_t index, PDPointF* pCoord);
1246PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetVertexColor(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue* pColor);
1247
1248PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetFunction(PDEShading shading, PDEFunction* pFunction);
1249PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudSetFunction(PDEShading shading, PDEFunction function);
1250PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetNumVertices(PDEShading shading, size_t* pNumVertices);
1251PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVerticesPerRow(PDEShading shading, size_t* pVerticesPerRow);
1252PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVertexCoord(PDEShading shading, size_t index, PDPointF* pCoord);
1253PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVertexColor(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue* pColor);
1254
1255PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetFunction(PDEShading shading, PDEFunction* pFunction);
1256PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshSetFunction(PDEShading shading, PDEFunction function);
1257PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetNumPatches(PDEShading shading, size_t* pNumPatches);
1258PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetPatchCoords(PDEShading shading, size_t index, PDPointF pCoords[16]);
1259PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetPatchColors(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue pColors[4]);
1260//----------------------------------------------------------
1261
1262//----------------------------------------------------------
1263// XObject
1264//----------------------------------------------------------
1265PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetXObjectFromPDObject(PDObject obj, PDEXObject* pXObject);
1266
1267PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocImportIcon(PDDoc doc, PDDoc to, size_t pageNo, PDEXObject* xobject);
1268PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocCreatePageFromIcon(PDDoc doc, size_t insertAt, PDDoc iconDoc, PDEXObject icon);
1269PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFormXObject(PDDoc doc, PDEContent content, PDEXObject* pXObject);
1270PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectCopy(PDEXObject source, PDEXObject* pXObject);
1271PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetBBox(PDEXObject xform, PDRectF* pBBox);
1272PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetBBox(PDEXObject xform, const PDRectF* bbox);
1273PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetMatrix(PDEXObject xform, PDMatrix* pMatrix);
1274PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetMatrix(PDEXObject xform, const PDMatrix* matrix);
1275PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetContent(PDEXObject xform, PDEContent* pContent);
1276PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetContent(PDEXObject xform, const PDEContent content);
1277PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetXGroup(PDEXObject xform, PDEXGroup* pGroup);
1278PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetXGroup(PDEXObject xform, PDEXGroup group);
1279PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetOCMD(PDEXObject xform, PDOCMD* pOCMD);
1280PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetOCMD(PDEXObject xform, PDOCMD ocmd);
1281PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetADBECompoundType(PDEXObject xform, const char* type);
1282
1283PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXGroup(PDEColorSpace colorSpace, PDEXGroupFlags flags, PDEXGroup* pGroup);
1284PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupGetColorSpace(PDEXGroup group, PDEColorSpace* pColorSpace);
1285PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupSetColorSpace(PDEXGroup group, PDEColorSpace colorSpace);
1286PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupGetFlags(PDEXGroup group, PDEXGroupFlags* pFlags);
1287PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupSetFlags(PDEXGroup group, PDEXGroupFlags flags);
1288
1289PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObject(PDDoc doc, PDEImageAttrs const* attrs, PDEColorSpace cs, const void* imageData, PDAtom compressionFilter, PDEXObject* pXObject);
1290PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObjectEmbedJpeg(PDDoc doc, const wchar_t* jpegImagePath, PDEXObject* pXObject);
1291PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObjectCrop(PDEXObject ximage, const PDRectI* cropRect, PDEXObject* pOut);
1292PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectGetType(PDEXObject xobj, PDEXObjectType* pType);
1293PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectGetPDObject(PDEXObject xobj, PDObject* pObj);
1294PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectConvertColorSpace(PDDoc doc, PDEXObject xobj, PDEColorSpace targetCS, PDEXObject* pOut);
1295
1296PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetAttrs(PDEXObject ximage, PDEImageAttrs* pAttrs);
1297PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetColorSpace(PDEXObject ximage, PDEColorSpace* pColorSpace);
1298PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectHasAlphaChannelInData(PDEXObject ximage, bool* pHasAlphaChannel);
1299PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetInterpolate(PDEXObject ximage, bool* pInterpolate);
1300PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetInterpolate(PDEXObject ximage, bool interpolate);
1301PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetIntent(PDEXObject ximage, PDERenderingIntent* pIntent);
1302PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetIntent(PDEXObject ximage, PDERenderingIntent intent);
1303PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectResetIntent(PDEXObject ximage);
1304PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetDecodeArray(PDEXObject ximage, float* decodeArray, size_t decodeArraySize, size_t* pOutDecodeArraySize);
1305PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetMask(PDEXObject ximage, PDEXObject* pMask);
1306PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetMask(PDEXObject ximage, PDEXObject mask);
1307PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetColorKey(PDEXObject ximage, int* colorKey);
1308PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetSMask(PDEXObject ximage, PDEXObject* pSMask);
1309PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetSMask(PDEXObject ximage, PDEXObject smask);
1310PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetSMaskInData(PDEXObject ximage, int* pSMaskInData);
1311PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetMatteArray(PDEXObject ximage, float* matteArray);
1312PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetMatteArray(PDEXObject ximage, const float* matteArray);
1313PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetOCMD(PDEXObject ximage, PDOCMD* pOCMD);
1314PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetOCMD(PDEXObject ximage, PDOCMD ocmd);
1315PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageGetCompressionFilter(PDEXObject ximage, PDAtom* pComppressionFilter);
1316PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectOpenStream(PDEXObject ximage, PDReadStream* pStream);
1317//----------------------------------------------------------
1318
1319//----------------------------------------------------------
1320// Font
1321//----------------------------------------------------------
1322PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetFontFromPDObject(PDObject fontObj, PDEFont* pFont);
1323PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFontFromInfo(PDDoc doc, const PDFontInfo* fontInfo, bool forceSysFont, PDEFontCreateFlags createFlags, PDEFont* pFont);
1324PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFontToTypeUnicode(PDDoc doc, PDEFont font, const UnicodeChar* unicode, size_t unicodeLen, PDEFontFauxType* pFauxType, PDEFontCreateFlags createFlags, PDEFont* pFont);
1325
1326PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetPDObject(PDEFont font, PDObject* pFontObj);
1327PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetSubtype(PDEFont font, PDEFontSubtype* pSubtype);
1328PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetName(PDEFont font, PDAtom* pName);
1329PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetMetrics(PDEFont font, PDEFontMetrics* pMetrics);
1330PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontMatrix(PDEFont font, PDMatrix* pMatrix);
1331PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontBBox(PDEFont font, PDRectF* pBBox);
1332PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetWritingMode(PDEFont font, PDEWritingMode* pWMode);
1333PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetStyle(PDEFont font, PDFontStyle* style);
1334PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontInfo(PDEFont font, PDFontInfo* pInfo);
1335PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCIDSystemInfo(PDEFont font, PDECIDSystemInfo* pInfo);
1336PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetEncodingName(PDEFont font, PDAtom* pEncodingName);
1337PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontIsFauxed(PDEFont font, bool* pFauxed);
1338PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFauxFontInfo(PDEFont font, PDFontInfo* pInfo);
1339PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontFindSubstFontInfo(PDEFont font, bool forceBold, bool forceItalic, PDFontInfo* pInfo);
1340
1341PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEAddFontNameSubstitution(PDAtom pdfFontName,
1342 PDAtom substFamilyName,
1343 PDFontStyle substStyle,
1344 uint32_t* pHandlerID);
1345PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDERemoveFontNameSubstitution(uint32_t handlerID);
1346PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEAddCIDFontSubstitution(const PDECIDSystemInfo* cidSystemInfo,
1347 PDAtom substFamilyName,
1348 PDFontStyle substStyle,
1349 uint32_t* pHandlerID);
1350PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDERemoveCIDFontSubstitution(uint32_t handlerID);
1351
1352PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetSubstMetrics(PDEFont font, PDEFontMetrics* pMetrics);
1353PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetType3GlyphsBBox(PDEFont font, PDRectF* pBBox);
1354
1355PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontIsEmbedded(PDEFont font, bool* pEmbedded);
1356PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontFileFormat(PDEFont font, PDEFontFileFormat* pFormat);
1357PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontOpenFontFileStream(PDEFont font, PDReadStream* pStream);
1358PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontFileData(PDEFont font, void* buffer, size_t bufsize, size_t* pSize);
1359PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFontEmbeddedCopy(PDDoc doc, const PDEFont sourceFont, PDEFontCreateFlags createFlags, PDEFont* pFontEmbeddedCopy);
1360PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEConvertFontToType0(PDDoc doc, const PDEFont sourceFont, PDEFontCreateFlags createFlags, PDEFont* pFontType0);
1361
1362PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontHasValidCIDSet(PDEFont font, bool* pHasValidCIDSet);
1363PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCreateCIDSet(PDEFont font, PDDoc doc);
1364
1365PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontHasRenderableGlyphs(PDEFont font, bool* pHasRenderableGlyphs);
1366
1367PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontHasValidCharSet(PDEFont font, bool* pHasValidCharSet);
1368PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCreateCharSet(PDEFont font, PDDoc doc);
1369
1370PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontSetType3FontBBox(PDEFont font, const PDRectF* bbox);
1371PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontSetType3FontMatrix(PDEFont font, const PDMatrix* matrix);
1372PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetType3CharProc(PDEFont font, uint8_t charcode, PDEContent* pContent);
1373PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetType3GlyphInfo(PDEFont font, uint8_t charcode, PDEType3GlyphInfo* pGlyphInfo);
1374PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontSetType3CharProc(PDEFont font, uint8_t charcode, const PDEType3GlyphInfo* glyphInfo, PDEContent content);
1375
1376PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontEnumCharOutline(PDEFont font, const char* codepoint, size_t codepointLen, const PDEOutlineEnumMonitor* mon, void* monClientData);
1377PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCharWidth(PDEFont font, const char* codepoint, size_t codepointLen, int16_t* pWidth);
1378PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontIsGlyphPresent(PDEFont font, const char* codepoint, size_t codepointLen, bool* pIsPresent);
1379PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCharVertMetric(PDEFont font, const char* codepoint, size_t codepointLen, PDEGlyphVertMetric* pVertMetric);
1380
1381PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontHasValidToUnicodeMap(PDEFont font, PDEFontToUnicodeCheckFlags checkFlags, bool* pHasValidToUnicodeMap);
1382PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCreateToUnicodeMap(PDEFont font, PDDoc doc, PDEFontToUnicodeCreateFlags createFlags);
1383PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCanTypeUnicode(PDEFont font, const UnicodeChar* unicode, size_t unicodeLen, bool* pCanType);
1384PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCharToUnicode(PDEFont font, char const* codepoint, size_t codepointLen, bool noFallback, UnicodeChar* unicode, size_t unicodeLen, size_t* pUnicodeLen);
1385PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCharToUnicodeEx(PDEFont font, char const* codepoint, size_t codepointLen, bool noFallback, UnicodeChar* unicode, size_t unicodeLen, size_t* pUnicodeLen);
1386PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontUnicodeToChar(PDEFont font, UnicodeChar const* unicode, size_t unicodeLen, char* codepoint, size_t codepointLen, size_t* pCodepointLen);
1387
1388PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontHasValidWidths(PDEFont font, bool* pHasValidWidths);
1389PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCreateWidths(PDEFont font, PDDoc doc);
1390
1391typedef PDErrCode(PDFSDK_CALLCONV* PDFontResourceEnumProc)(PDEFont font, void* clientData);
1392PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocEnumFonts(PDDoc doc, PDFontResourceEnumProc proc, void* clientData, const PDProgressMonitor* mon, void* monData);
1393//----------------------------------------------------------
1394
1395#ifdef __cplusplus
1396}
1397#endif
1398
1399#endif // PDFSDK_CORE_CONTENT_H_INCLUDED_
PDERenderingIntent
Specifies the way to reproduce colour on a target device.
Definition content.h:130
@ kPDERenderingIntentAbsoluteColorimetric
Definition content.h:141
@ kPDERenderingIntentRelativeColorimetric
Definition content.h:134
@ kPDERenderingIntentPerceptual
Definition content.h:131
@ kPDERenderingIntentSaturation
Definition content.h:138
PDETilingPatternTilingType
For a tiling pattern - specifies the type of tiling spacing.
Definition content.h:536
@ kPDETilingPatternTilingConstSpacing
Definition content.h:537
@ kPDETilingPatternTilingDoNotDistort
Definition content.h:539
@ kPDETilingPatternTilingFast
Definition content.h:541
PDEFontToUnicodeCheckFlagsBits
Flags that control which validity checks are performed by PDEFontHasValidToUnicodeMap.
Definition content.h:277
@ kPDEFontToUnicodeCheckBfrangeCrossFirstByte
Definition content.h:280
@ kPDEFontToUnicodeCheckPUA
Definition content.h:283
@ kPDEFontToUnicodeCheckNotEmpty
Definition content.h:278
@ kPDEFontToUnicodeCheckInvalid
Definition content.h:282
@ kPDEFontToUnicodeCheckBfrangeDestOverflow
Definition content.h:281
@ kPDEFontToUnicodeCheckOversizedBlocks
Definition content.h:279
@ kPDEFontToUnicodeCheckAll
Definition content.h:284
PDEShadingType
Specifies the type of shading.
Definition content.h:558
@ kPDEShadingAxial
Definition content.h:561
@ kPDEShadingFunctionBased
Definition content.h:559
@ kPDEShadingFreeFormGouraud
Definition content.h:565
@ kPDEShadingCoonsPatchMesh
Definition content.h:569
@ kPDEShadingLatticeFormGouraud
Definition content.h:567
@ kPDEShadingRadial
Definition content.h:563
@ kPDEShadingTensorPatchMesh
Definition content.h:571
PDEFontCreateFlagsBits
Definition content.h:798
@ kPDEFontCreateFlagsDefault
Definition content.h:811
@ kPDEFontCreateNeedSubset
Definition content.h:805
@ kPDEFontCreateEmbedded
Definition content.h:799
PDEPatternType
Specifies the type of pattern used to fill a graphical object.
Definition content.h:500
@ kPDEPatternShading
Definition content.h:504
@ kPDEPatternTiling
Definition content.h:501
PDETextAlign
Specifies the alignment in the inline-progression direction, of text and other content within lines o...
Definition content.h:837
@ kPDETextAlignLeft
Definition content.h:838
@ kPDETextAlignJustify
Definition content.h:841
@ kPDETextAlignCenter
Definition content.h:839
@ kPDETextAlignRight
Definition content.h:840
@ kPDETextAlignBoth
Definition content.h:842
PDEFontFileFormat
Identifies the format of an embedded font program.
Definition content.h:662
@ kPDEFontFileFormatCIDFontType0C
Definition content.h:667
@ kPDEFontFileFormatOpenType
Definition content.h:668
@ kPDEFontFileFormatNone
Definition content.h:663
@ kPDEFontFileFormatTrueType
Definition content.h:665
@ kPDEFontFileFormatType1C
Definition content.h:666
@ kPDEFontFileFormatType1
Definition content.h:664
PDEXObjectType
Specifies the type of external object.
Definition content.h:586
@ kPDEXObjectUnknown
Definition content.h:592
@ kPDEXObjectPostScript
Definition content.h:590
@ kPDEXObjectForm
Definition content.h:587
@ kPDEXObjectImage
Definition content.h:589
PDEPathSegmentOp
Specifies a path construction operator.
Definition content.h:337
@ kPDEPathVCurveTo
Definition content.h:345
@ kPDEPathCurveTo
Definition content.h:342
@ kPDEPathYCurveTo
Definition content.h:348
@ kPDEPathRect
Definition content.h:351
@ kPDEPathMoveTo
Definition content.h:338
@ kPDEPathClose
Definition content.h:353
@ kPDEPathLineTo
Definition content.h:340
@ kPDEXGroupKnockout
Definition content.h:612
@ kPDEXGroupIsolated
Definition content.h:608
@ kPDETextRenderFillAndStroke
Definition content.h:402
@ kPDETextRenderFill
Definition content.h:400
@ kPDETextRenderInvisible
Definition content.h:403
@ kPDETextRenderStroke
Definition content.h:401
PDELineCap
Specifies the style of line cap endings.
Definition content.h:64
@ kPDELineCapSquare
Definition content.h:67
@ kPDELineCapRound
Definition content.h:66
@ kPDELineCapButt
Definition content.h:65
@ kPDETextRenderClipMask
Definition content.h:407
@ kPDEGStateHasStrokeColorSpace
Definition content.h:163
@ kPDEGStateHasLineJoin
Definition content.h:170
@ kPDEGStateHasStrokeAlpha
Definition content.h:183
@ kPDEGStateHasStrokeOverprint
Definition content.h:189
@ kPDEGStateHasBlendMode
Definition content.h:177
@ kPDEGStateHasFillAlpha
Definition content.h:181
@ kPDEGStateHasFillColorSpace
Definition content.h:161
@ kPDEGStateHasSoftMask
Definition content.h:179
@ kPDEGStateHasFillColorComponents
Definition content.h:162
@ kPDEGStateHasSmoothness
Definition content.h:194
@ kPDEGStateHasOverprintMode
Definition content.h:190
@ kPDEGStateHasIntent
Definition content.h:174
@ kPDEGStateHasFillOverprint
Definition content.h:187
@ kPDEGStateHasLineWidth
Definition content.h:165
@ kPDEGStateHasAlphaIsShape
Definition content.h:185
@ kPDEGStateHasFlatness
Definition content.h:192
@ kPDEGStateHasMiterLimit
Definition content.h:166
@ kPDEGStateHasLineCap
Definition content.h:168
@ kPDEGStateHasStrokeColorComponents
Definition content.h:164
@ kPDEGStateHasStrokeAdjustment
Definition content.h:175
@ kPDEGStateHasDash
Definition content.h:172
PDEWritingMode
Specifies the writing orientation of any CIDFont. This is the WMode key from the CMap stream dictiona...
Definition content.h:775
@ kPDEWritingModeVert
Definition content.h:777
@ kPDEWritingModeHorz
Definition content.h:776
PDETilingPatternPaintType
Specifies the type of tiling pattern.
Definition content.h:515
@ kPDETilingPatternPaintColored
Definition content.h:516
@ kPDETilingPatternPaintUncolored
Definition content.h:519
PDEColorSpaceFamily
Specifies a colour space family.
Definition content.h:439
@ kPDEColorSpaceICCBased
Definition content.h:455
@ kPDEColorSpaceCalRGB
Definition content.h:449
@ kPDEColorSpaceDeviceRGB
Definition content.h:442
@ kPDEColorSpaceIndexed
Definition content.h:457
@ kPDEColorSpaceDeviceN
Definition content.h:467
@ kPDEColorSpacePattern
Definition content.h:460
@ kPDEColorSpaceDeviceCMYK
Definition content.h:444
@ kPDEColorSpaceCalGray
Definition content.h:446
@ kPDEColorSpaceLab
Definition content.h:452
@ kPDEColorSpaceDeviceGray
Definition content.h:440
@ kPDEColorSpaceSeparation
Definition content.h:463
PDEElementType
Specifies a marked-content sequence of graphics objects (Container), a marked-content point in the co...
Definition content.h:214
@ kPDEElementText
Definition content.h:242
@ kPDEElementShading
Definition content.h:254
@ kPDEElementContainer
Definition content.h:226
@ kPDEElementXObject
Definition content.h:250
@ kPDEElementPlace
Definition content.h:230
@ kPDEElementUnknown
Definition content.h:218
@ kPDEElementPath
Definition content.h:237
@ kPDEElementInlineImage
Definition content.h:246
@ kPDEPaintStroke
Definition content.h:376
@ kPDEPaintInvisible
Definition content.h:375
@ kPDEPaintEOFill
Definition content.h:380
@ kPDEPaintFill
Definition content.h:378
PDEFontSubtype
Specifies the font subtype or type (if there is no subtype).
Definition content.h:640
@ kPDEFontMMType1
Definition content.h:643
@ kPDEFontType3
Definition content.h:648
@ kPDEFontType1
Definition content.h:641
@ kPDEFontType0
Definition content.h:650
@ kPDEFontTrueType
Definition content.h:646
@ kPDEFontFlagsSmallCap
Definition content.h:694
@ kPDEFontFlagsAllCap
Definition content.h:692
@ kPDEFontFlagsSerif
Definition content.h:684
@ kPDEFontFlagsFixedPitch
Definition content.h:682
@ kPDEFontFlagsScript
Definition content.h:688
@ kPDEFontFlagsItalic
Definition content.h:691
@ kPDEFontFlagsSymbolic
Definition content.h:686
@ kPDEFontFlagsForceBold
Definition content.h:696
@ kPDEFontFlagsNonsymbolic
Definition content.h:689
PDEFontToUnicodeCreateFlagsBits
Flags that control how PDEFontCreateToUnicodeMap generates the ToUnicode map.
Definition content.h:294
@ kPDEFontToUnicodeCreateFilterPUA
Definition content.h:297
@ kPDEFontToUnicodeCreateDefault
Definition content.h:295
@ kPDEFontToUnicodeCreateFilterInvalid
Definition content.h:296
@ kPDEFontToUnicodeCreateAllowFallbacks
Definition content.h:300
PDEBlendMode
Specifies the type of function/mode used to determine how new content interacts with existing content...
Definition content.h:93
@ kPDEBlendModeOverlay
Definition content.h:98
@ kPDEBlendModeSoftLight
Definition content.h:107
@ kPDEBlendModeScreen
Definition content.h:96
@ kPDEBlendModeColorBurn
Definition content.h:103
@ kPDEBlendModeExclusion
Definition content.h:110
@ kPDEBlendModeHue
Definition content.h:111
@ kPDEBlendModeLighten
Definition content.h:100
@ kPDEBlendModeNormal
Definition content.h:94
@ kPDEBlendModeSaturation
Definition content.h:113
@ kPDEBlendModeColor
Definition content.h:115
@ kPDEBlendModeDifference
Definition content.h:109
@ kPDEBlendModeColorDodge
Definition content.h:101
@ kPDEBlendModeLuminosity
Definition content.h:117
@ kPDEBlendModeDarken
Definition content.h:99
@ kPDEBlendModeMultiply
Definition content.h:95
@ kPDEBlendModeHardLight
Definition content.h:105
PDEFontFauxType
Specifies how an embedded font was processed.
Definition content.h:787
@ kPDEFontFauxClientMatch
Definition content.h:794
@ kPDEFontFauxSystemFaux
Definition content.h:791
@ kPDEFontFauxStandardFaux
Definition content.h:792
@ kPDEFontFauxSystemMatch
Definition content.h:790
@ kPDEFontFauxNone
Definition content.h:788
@ kPDEFontFauxOriginal
Definition content.h:789
PDECIDFontType
Specifies the CIDFont subtype.
Definition content.h:738
@ kPDECIDFontType0
Definition content.h:739
@ kPDECIDFontType2
Definition content.h:741
PDESoftMaskSubtype
Specifies the way to obtain a transparency effect of a graphical element.
Definition content.h:48
@ kPDESoftMaskAlpha
Definition content.h:49
@ kPDESoftMaskLuminosity
Definition content.h:50
PDELineJoin
Specifies the shape to be used when joining corners of paths that are stroked and meet at acute angle...
Definition content.h:76
@ kPDELineJoinRound
Definition content.h:79
@ kPDELineJoinMiter
Definition content.h:77
@ kPDELineJoinBevel
Definition content.h:81
Document API.
Optional Content API.
struct PDOCContextRec_ * PDOCContext
A runtime optional-content visibility context.
Definition optional_content.h:71
struct PDOCMDRec_ * PDOCMD
Represents an optional content membership dictionary.
Definition optional_content.h:40
Error codes.
int32_t PDErrCode
Definition errors.h:44
Fonts API.
PDFontStyle
Specifies the styling to apply to a font.
Definition fonts.h:24
Math types.
Objects API.
Specifies the CIDSystemInfo dictionary.
Definition content.h:750
Definition content.h:472
Definition content.h:478
Definition content.h:149
Definition content.h:703
Specifies the vertical metrics of CIDFonts.
Definition content.h:761
float vy
Definition content.h:764
float wy
Definition content.h:762
float vx
Definition content.h:763
Definition content.h:618
Definition content.h:30
Definition content.h:821
Definition content.h:318
Definition content.h:357
Definition content.h:412
Specifies the glyph information for Type3 fonts extracted from d0 and d1 operators in the content str...
Definition content.h:722
PDPointF widths
Whether the glyph uses d1 operator.
Definition content.h:724
PDRectF bbox
The widths of the glyph, specified by the d0 operator (wx, wy) OR d1 operator (wx,...
Definition content.h:725
Specifies the font information.
Definition fonts.h:36
Definition math_types.h:60
Definition objects.h:83
Definition math_types.h:12
Definition progress_monitor.h:15
Definition math_types.h:52
Definition math_types.h:30
Definition math_types.h:44