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
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
39typedef enum {
40 kPDESoftMaskAlpha,
41 kPDESoftMaskLuminosity,
42} PDESoftMaskSubtype;
43//----------------------------------------------------------
44
45//----------------------------------------------------------
46// Graphics state
47typedef struct PDEGStateRec_* PDEGState;
48
49typedef enum {
50 kPDELineCapButt = 0,
51 kPDELineCapRound = 1,
52 kPDELineCapSquare = 2
53} PDELineCap;
54
55typedef enum {
56 kPDELineJoinMiter = 0,
57 kPDELineJoinRound = 1,
58 kPDELineJoinBevel = 2
59} PDELineJoin;
60
61typedef enum {
62 kPDEBlendModeNormal,
63 kPDEBlendModeMultiply,
64 kPDEBlendModeScreen,
65 kPDEBlendModeOverlay,
66 kPDEBlendModeDarken,
67 kPDEBlendModeLighten,
68 kPDEBlendModeColorDodge,
69 kPDEBlendModeColorBurn,
70 kPDEBlendModeHardLight,
71 kPDEBlendModeSoftLight,
72 kPDEBlendModeDifference,
73 kPDEBlendModeExclusion,
74 kPDEBlendModeHue,
75 kPDEBlendModeSaturation,
76 kPDEBlendModeColor,
77 kPDEBlendModeLuminosity
78} PDEBlendMode;
79
80typedef enum {
81 kPDERenderingIntentPerceptual,
82 kPDERenderingIntentRelativeColorimetric,
83 kPDERenderingIntentSaturation,
84 kPDERenderingIntentAbsoluteColorimetric
85} PDERenderingIntent;
86
87#define kPDEDashMaxPatternSize 15
88
89typedef struct {
90 size_t patternSize;
91 float pattern[kPDEDashMaxPatternSize];
92 float phase;
93} PDEDash;
94
95enum {
96 kPDEGStateHasFillColor = 0x1,
97 kPDEGStateHasStrokeColor = 0x2,
98 kPDEGStateHasLineWidth = 0x4,
99 kPDEGStateHasMiterLimit = 0x8,
100 kPDEGStateHasLineCap = 0x10,
101 kPDEGStateHasLineJoin = 0x20,
102 kPDEGStateHasDash = 0x40,
103 kPDEGStateHasIntent = 0x80,
104 kPDEGStateHasStrokeAdjustment = 0x100,
105 kPDEGStateHasBlendMode = 0x200,
106 kPDEGStateHasSoftMask = 0x400,
107 kPDEGStateHasFillAlpha = 0x800,
108 kPDEGStateHasStrokeAlpha = 0x1000,
109 kPDEGStateHasAlphaIsShape = 0x2000,
110 kPDEGStateHasFillOverprint = 0x4000,
111 kPDEGStateHasStrokeOverprint = 0x8000,
112 kPDEGStateHasOverprintMode = 0x10000,
113 kPDEGStateHasFlatness = 0x20000,
114 kPDEGStateHasSmoothness = 0x40000
115};
116typedef uint32_t PDEGStateFlags;
117//----------------------------------------------------------
118
119typedef struct PDEContentRec_* PDEContent;
120
121//----------------------------------------------------------
122// Content element
123typedef struct PDEElementRec_* PDEElement;
124
125typedef enum {
126 kPDEElementUnknown,
127 /*
128 A group of PDEElement objects on a page in a PDF file.In the PDF file, containers are
129 delimited by Marked Content BMC / EMC or BDC / EMC pairs.Every PDEContainer
130 has a Marked Content tag associated with it.In addition to grouping a set of elements,
131 a BDC / EMC pair specifies a property list to be associated with the grouping.Thus, a
132 PDEContainer corresponding to a BDC / EMC pair also has a property list dictionary
133 associated with it.
134 */
135 kPDEElementContainer,
140 /*
141 A path object is an arbitrary shape made up of straight lines, rectangles, and cubic Bézier
142 curves. A path may intersect itself and may have disconnected sections and holes.
143 A path object ends with one or more painting operators that specify whether the path shall be stroked,
144 filled, used as a clipping boundary, or some combination of these operations.
145 */
146 kPDEElementPath,
147 /*
148 A text object consists of one or more character strings that identify sequences of glyphs to be painted.
149 Like a path, text can be stroked, filled, or used as a clipping boundary.
150 */
151 kPDEElementText,
152 /*
153 An inline image object uses a special syntax to express the data for a small image directly within the content stream.
154 */
155 kPDEElementInlineImage,
156 /*
157 An external object (XObject) is an object defined outside the content stream and referenced as a named resource.
158 */
159 kPDEElementXObject,
160 /*
161 A shading object describes a geometric shape whose colour is an arbitrary function of position within the shape.
162 */
163 kPDEElementShading
165//----------------------------------------------------------
166
167//----------------------------------------------------------
168// Vector path
169// return true if enumeration is complete
170typedef PDErrCode(PDFSDK_CALLCONV* PDEPathMoveToProc)(void* clientData, const PDPointF* to);
171typedef PDErrCode(PDFSDK_CALLCONV* PDEPathLineToProc)(void* clientData, const PDPointF* to);
172typedef PDErrCode(PDFSDK_CALLCONV* PDEPathCurveToProc)(void* clientData, const PDPointF* c1, const PDPointF* c2, const PDPointF* to);
173typedef PDErrCode(PDFSDK_CALLCONV* PDEPathVCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
174typedef PDErrCode(PDFSDK_CALLCONV* PDEPathYCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
175typedef PDErrCode(PDFSDK_CALLCONV* PDEPathRectProc)(void* clientData, const PDRectF* rect);
176typedef PDErrCode(PDFSDK_CALLCONV* PDEPathCloseProc)(void* clientData);
177
178typedef struct {
179 PDEPathMoveToProc moveTo;
180 PDEPathLineToProc lineTo;
181 PDEPathCurveToProc curveTo;
182 PDEPathVCurveToProc vCurveTo;
183 PDEPathYCurveToProc yCurveTo;
184 PDEPathRectProc rect;
185 PDEPathCloseProc close;
187
188typedef enum {
189 kPDEPathMoveTo,
190 kPDEPathLineTo,
191 kPDEPathCurveTo,
192 kPDEPathVCurveTo,
193 kPDEPathYCurveTo,
194 kPDEPathRect,
195 kPDEPathClose
196} PDEPathSegmentOp;
197
198typedef struct {
199 PDEPathSegmentOp op;
200 float x0, y0;
201 float x1, y1;
202 float x2, y2;
204
205enum {
206 kPDEPaintInvisible = 0x00,
207 kPDEPaintStroke = 0x01,
208 kPDEPaintFill = 0x02,
209 kPDEPaintEOFill = 0x04,
210};
211typedef uint8_t PDEPaintOp;
212//----------------------------------------------------------
213
214//----------------------------------------------------------
215// Text
216
217typedef struct PDETextItemRec_* PDETextItem;
218
219enum {
220 kPDETextRenderFill = 0x00,
221 kPDETextRenderStroke = 0x01,
222 kPDETextRenderFillAndStroke = 0x02,
223 kPDETextRenderInvisible = 0x03,
224};
225
226enum {
227 kPDETextRenderClipMask = 0x04
228};
229
230typedef uint32_t PDETextRenderMode;
231
233 float charSpacing;
234 float wordSpacing;
235 float horzScaling;
236 float leading;
237 float textRise;
238 PDETextRenderMode textRenderMode;
239 bool textKnockout;
240};
241
242typedef wchar_t UnicodeChar;
243//----------------------------------------------------------
244
245//----------------------------------------------------------
246// Color space
247typedef struct PDEColorSpaceRec_* PDEColorSpace;
248
249typedef enum {
250 kPDEColorSpaceDeviceGray,
251 kPDEColorSpaceDeviceRGB,
252 kPDEColorSpaceDeviceCMYK,
253 kPDEColorSpaceCalGray,
254 kPDEColorSpaceCalRGB,
255 kPDEColorSpaceLab,
256 kPDEColorSpaceICCBased,
257 kPDEColorSpaceIndexed,
258 kPDEColorSpacePattern,
259 kPDEColorSpaceSeparation,
260 kPDEColorSpaceDeviceN
261} PDEColorSpaceFamily;
262
263typedef struct {
264 float x;
265 float y;
266 float z;
267} PDECieXYZ;
268
269typedef struct {
270 PDECieXYZ red;
271 PDECieXYZ green;
272 PDECieXYZ blue;
274//----------------------------------------------------------
275
276//----------------------------------------------------------
277// Pattern
278typedef struct PDEPatternRec_* PDEPattern;
279
280typedef enum {
281 kPDEPatternTiling = 1,
282 kPDEPatternShading = 2
283} PDEPatternType;
284
285typedef enum {
286 kPDETilingPatternPaintColored = 1,
287 kPDETilingPatternPaintUncolored = 2
288} PDETilingPatternPaintType;
289
290typedef enum {
291 kPDETilingPatternTilingConstSpacing = 1,
292 kPDETilingPatternTilingDoNotDistort = 2,
293 kPDETilingPatternTilingFast = 3
294} PDETilingPatternTilingType;
295//----------------------------------------------------------
296
297//----------------------------------------------------------
298// Shading
299typedef struct PDEShadingRec_* PDEShading;
300
301typedef enum {
302 kPDEShadingFunctionBased = 1,
303 kPDEShadingAxial = 2,
304 kPDEShadingRadial = 3,
305 kPDEShadingFreeFormGouraud = 4,
306 kPDEShadingLatticeFormGouraud = 5,
307 kPDEShadingCoonsPatchMesh = 6,
308 kPDEShadingTensorPatchMesh = 7
309} PDEShadingType;
310//----------------------------------------------------------
311
312//----------------------------------------------------------
313// XObject
314typedef struct PDEXObjectRec_* PDEXObject;
315
316typedef enum {
317 kPDEXObjectForm,
318 kPDEXObjectImage,
319 kPDEXObjectPostScript,
320 kPDEXObjectUnknown
321} PDEXObjectType;
322
323typedef struct PDEXGroupRec_* PDEXGroup;
324
325enum {
326 kPDEXGroupIsolated = 0x01,
327 kPDEXGroupKnockout = 0x02
328};
329typedef uint8_t PDEXGroupFlags;
330
331typedef struct {
332 bool imageMask;
333 int width;
334 int height;
335 int bitsPerComponent;
337//----------------------------------------------------------
338
339//----------------------------------------------------------
340// Font
341typedef struct PDEFontRec_* PDEFont;
342
343typedef enum {
344 kPDEFontType1,
345 kPDEFontMMType1,
346 kPDEFontTrueType,
347 kPDEFontType3,
348 kPDEFontType0
349} PDEFontSubtype;
350
351enum {
352 kPDEFontFlagsFixedPitch = 1 << 0,
353 kPDEFontFlagsSerif = 1 << 1,
354 kPDEFontFlagsSymbolic = 1 << 2,
355 kPDEFontFlagsScript = 1 << 3,
356 kPDEFontFlagsNonsymbolic = 1 << 5,
357 kPDEFontFlagsItalic = 1 << 6,
358 kPDEFontFlagsAllCap = 1 << 16,
359 kPDEFontFlagsSmallCap = 1 << 17,
360 kPDEFontFlagsForceBold = 1 << 18
361};
362
363typedef uint32_t PDEFontFlags;
364
365typedef struct {
366 PDEFontFlags flags;
367 PDRectF fontBBox;
368 int16_t missingWidth;
369 int16_t stemV;
370 int16_t stemH;
371 int16_t capHeight;
372 int16_t xHeight;
373 int16_t ascent;
374 int16_t descent;
375 int16_t leading;
376 int16_t maxWidth;
377 int16_t avgWidth;
378 int16_t italicAngle;
380
381typedef enum {
382 kPDECIDFontType0,
383 kPDECIDFontType2,
384} PDECIDFontType;
385
386typedef struct {
387 PDAtom registry;
388 PDAtom ordering;
389 int supplement;
391
392typedef struct {
393 float wy;
394 float vx;
395 float vy;
397
398typedef enum {
399 kPDEWritingModeHorz = 0x00,
400 kPDEWritingModeVert = 0x01
401} PDEWritingMode;
402
403typedef enum {
404 kPDEFontFauxNone,
405 kPDEFontFauxOriginal,
406 kPDEFontFauxSystemMatch,
407 kPDEFontFauxSystemFaux,
408 kPDEFontFauxStandardFaux,
409} PDEFontFauxType;
410
411typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineMoveToProc)(void* clientData, const PDPointF* to);
412typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineLineToProc)(void* clientData, const PDPointF* to);
413typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineConicCurveToProc)(void* clientData, const PDPointF* c, const PDPointF* to);
414typedef PDErrCode(PDFSDK_CALLCONV* PDEOutlineCubicCurveToProc)(void* clientData, const PDPointF* c1, const PDPointF* c2, const PDPointF* to);
415
416typedef struct {
417 PDEOutlineMoveToProc moveTo;
418 PDEOutlineLineToProc lineTo;
419 PDEOutlineConicCurveToProc conicCurveTo;
420 PDEOutlineCubicCurveToProc cubicCurveTo;
422
423typedef struct {
424 const PDEFontMetrics* metrics;
425 int firstChar;
426 int lastChar;
427 const int16_t* widths;
428 const char** encoding;
429 PDAtom baseEncoding;
431
432typedef enum {
433 kPDETextAlignLeft,
434 kPDETextAlignCenter,
435 kPDETextAlignRight,
436 kPDETextAlignJustify,
437 kPDETextAlignBoth, // Same as above, but also justify the last line
438} PDETextAlign;
439
440PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocAttachPageLoadedCallback(PDDoc doc, PDPageLoadedProc proc, void* clientData);
441PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocDetachPageLoadedCallback(PDDoc doc, PDPageLoadedProc proc, void* clientData);
442
443PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocAttachPageContentChangedCallback(PDDoc doc, PDPageContentChangedProc proc, void* clientData);
444PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocDetachPageContentChangedCallback(PDDoc doc, PDPageContentChangedProc proc, void* clientData);
445PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocNotifyPageContentChanged(PDDoc doc, size_t iPage, const PDRectF* rects, size_t numRects);
446
447//----------------------------------------------------------
448// Content
449//----------------------------------------------------------
450PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDPageGetContent(PDPage page, PDEContent* pContent);
451PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDPageIsContentLoaded(PDPage page, bool* pLoaded);
452
453PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateContent(PDEContent* pContent);
454PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentGetNumElements(PDEContent content, size_t* pNumElements);
455PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentGetElement(PDEContent content, size_t index, PDEElement* pElement);
456PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentInsertElement(PDEContent content, size_t index, PDEElement element);
457PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContentRemoveElement(PDEContent content, size_t index);
458//----------------------------------------------------------
459
460//----------------------------------------------------------
461// Element
462//----------------------------------------------------------
463PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementCopy(PDEElement element, PDEElement* pCopy);
464PDF_CORE_API bool PDFSDK_CALLCONV PDEElementEqual(PDEElement elementA, PDEElement elementB);
465PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetType(PDEElement element, PDEElementType* pType);
466PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetBBox(PDEElement element, PDRectF* pBBox);
467PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetQuad(PDEElement element, PDQuad* pQuad);
468PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetClip(PDEElement element, PDEClip* pClip);
469PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetClip(PDEElement element, PDEClip clip);
470PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetGState(PDEElement element, PDEGState* pState);
471PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetGState(PDEElement element, PDEGState state);
472PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementGetMatrix(PDEElement element, PDMatrix* pMatrix);
473PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementSetMatrix(PDEElement element, const PDMatrix* matrix);
474PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEElementHitTest(PDEElement element, const PDPointF* point, bool* pResult);
475PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCConfigIsElementVisible(PDOCConfig config, PDEElement element, bool* pVisible);
476//----------------------------------------------------------
477
478//----------------------------------------------------------
479// Container
480//----------------------------------------------------------
481PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateContainer(PDAtom tag, PDObject dict, PDEElement* pContainer);
482PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetTag(PDEElement container, PDAtom* pTag);
483PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerSetTag(PDEElement container, PDAtom tag);
484PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetDict(PDEElement container, PDObject* pDict);
485PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerSetDict(PDEElement container, PDObject dict);
486PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetContent(PDEElement container, PDEContent* pContent);
487PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEContainerGetOCMD(PDEElement container, PDOCMD* pOCMD);
488//----------------------------------------------------------
489
490//----------------------------------------------------------
491// Place
492//----------------------------------------------------------
493// PDF_CORE_API PDEElement PDFSDK_CALLCONV PDECreatePlace(PDAtom tag, PDObject dict);
494// PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceGetTag(PDEElement place, PDAtom* pTag);
495// PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceSetTag(PDEElement place, PDAtom tag);
496// PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceGetDict(PDEElement place, PDObject* pDict);
497// PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPlaceSetDict(PDEElement place, PDObject dict);
498//----------------------------------------------------------
499
500//----------------------------------------------------------
501// Function
502//----------------------------------------------------------
503PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetFunctionFromPDObject(PDObject funcObj, PDEFunction* pFunc);
504PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetPDObject(PDEFunction func, PDObject* pObj);
505PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetNumInputs(PDEFunction func, size_t* pNumInputs);
506PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionGetNumOutputs(PDEFunction func, size_t* pNumOutputs);
507PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFunctionExec(PDEFunction func, const float* inputs, float* outputs);
508//----------------------------------------------------------
509
510//----------------------------------------------------------
511// SoftMask
512//----------------------------------------------------------
513PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateSoftMask(PDDoc pddoc, PDESoftMask* pSMask);
514PDF_CORE_API bool PDFSDK_CALLCONV PDESoftMaskEqual(PDESoftMask softMaskA, PDESoftMask softMaskB);
515PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetSubtype(PDESoftMask softMask, PDESoftMaskSubtype* pSubtype);
516PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetSubtype(PDESoftMask softMask, PDESoftMaskSubtype subtype);
517PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetGroup(PDESoftMask softMask, PDEXObject* pGroup);
518PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetGroup(PDESoftMask softMask, PDEXObject group);
519PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetBackdropColor(PDESoftMask softMask, PDEColor* pBackdrop);
520PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetBackdropColor(PDESoftMask softMask, PDEColor backdrop);
521PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskGetTransfer(PDESoftMask softMask, PDEFunction* pTransfer);
522PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDESoftMaskSetTransfer(PDESoftMask softMask, PDEFunction transfer);
523//----------------------------------------------------------
524
525//----------------------------------------------------------
526// Graphic state
527//----------------------------------------------------------
528PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateGState(PDEGState* pGState);
529PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateCopy(PDEGState gstate, PDEGState* pCopy);
530PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillColor(PDEGState gstate, PDEColor* pColor);
531PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillColor(PDEGState gstate, PDEColor color);
532PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeColor(PDEGState gstate, PDEColor* pColor);
533PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeColor(PDEGState gstate, PDEColor color);
534PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineWidth(PDEGState gstate, float* pLineWidth);
535PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineWidth(PDEGState gstate, float lineWidth);
536PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineCap(PDEGState gstate, PDELineCap* pLineCap);
537PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineCap(PDEGState gstate, PDELineCap lineCap);
538PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetLineJoin(PDEGState gstate, PDELineJoin* pLineJoin);
539PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetLineJoin(PDEGState gstate, PDELineJoin lineJoin);
540PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetMiterLimit(PDEGState gstate, float* pMiterLimit);
541PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetMiterLimit(PDEGState gstate, float miterLimit);
542PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetDash(PDEGState gstate, PDEDash* pDash);
543PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetDash(PDEGState gstate, const PDEDash* dash);
544PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetIntent(PDEGState gstate, PDERenderingIntent* pIntent);
545PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetIntent(PDEGState gstate, PDERenderingIntent intent);
546PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeAdjustment(PDEGState gstate, bool* pAdjustStrokes);
547PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeAdjustment(PDEGState gstate, bool adjustStrokes);
548PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetBlendMode(PDEGState gstate, PDEBlendMode* pBlendMode);
549PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetBlendMode(PDEGState gstate, PDEBlendMode blendMode);
550PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSoftMask(PDEGState gstate, PDESoftMask* pSoftMask);
551PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSoftMask(PDEGState gstate, PDESoftMask softMask);
552PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSoftMaskMatrix(PDEGState gstate, PDMatrix* pSoftMaskMatrix);
553PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSoftMaskMatrix(PDEGState gstate, const PDMatrix* softMaskMatrix);
554PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillAlpha(PDEGState gstate, float* pAlpha);
555PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillAlpha(PDEGState gstate, float alpha);
556PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeAlpha(PDEGState gstate, float* pAlpha);
557PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeAlpha(PDEGState gstate, float alpha);
558PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetAlphaIsShape(PDEGState gstate, bool* pAlphaIsShape);
559PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetAlphaIsShape(PDEGState gstate, bool alphaIsShape);
560PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFillOverprint(PDEGState gstate, bool* pOverprint);
561PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFillOverprint(PDEGState gstate, bool overprint);
562PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetStrokeOverprint(PDEGState gstate, bool* pOverprint);
563PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetStrokeOverprint(PDEGState gstate, bool overprint);
564PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetOverprintMode(PDEGState gstate, int* pOpm);
565PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetOverprintMode(PDEGState gstate, int opm);
566PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFlatness(PDEGState gstate, float* pFlatness);
567PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetFlatness(PDEGState gstate, float flatness);
568PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetSmoothness(PDEGState gstate, float* pSmoothness);
569PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateSetSmoothness(PDEGState gstate, float smoothness);
570PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGStateGetFlags(PDEGState gstate, PDEGStateFlags* pFlags);
571//----------------------------------------------------------
572
573//----------------------------------------------------------
574// Clip
575//----------------------------------------------------------
576PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateClip(PDEClip* pClip);
577PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipCopy(PDEClip clip, PDEClip* pCopy);
578PDF_CORE_API bool PDFSDK_CALLCONV PDEClipEqual(PDEClip clipA, PDEClip clipB);
579PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetBBox(PDEClip clip, PDRectF* pBBox);
580PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetNumElements(PDEClip clip, size_t* pNumElements);
581PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipGetElement(PDEClip clip, size_t index, PDEElement* pElement);
582PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipInsertElement(PDEClip clip, size_t index, PDEElement element);
583PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEClipRemoveElement(PDEClip clip, size_t index);
584//----------------------------------------------------------
585
586//----------------------------------------------------------
587// Path
588//----------------------------------------------------------
589PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePath(PDEElement* pPath);
590PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetPaintOp(PDEElement path, PDEPaintOp* pPaintOp);
591PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathSetPaintOp(PDEElement path, PDEPaintOp paintOp);
592PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathEnum(PDEElement path, PDEPathEnumMonitor* mon, void* monClientData);
593PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetNumSegments(PDEElement path, size_t* pNumSegments);
594PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathGetSegment(PDEElement path, size_t index, PDEPathSegment* pSegment);
595PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathAddSegment(PDEElement path, PDEPathSegment seg);
596PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPathRemoveSegment(PDEElement path, size_t index);
597//----------------------------------------------------------
598
599//----------------------------------------------------------
600// Text
601//----------------------------------------------------------
602PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateText(PDEElement* pText);
603PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetNumItems(PDEElement text, size_t* pNumItems);
604PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetItem(PDEElement text, size_t index, PDETextItem* pItem);
605PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetItemAtPoint(PDEElement text, const PDPointF* pagePt, PDETextItem* pItem);
606PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextInsertItem(PDEElement text, size_t index, PDETextItem item);
607PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextRemoveItem(PDEElement text, size_t index);
608PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextSplitItem(PDEElement text, size_t itemIndex, size_t charIndex);
609PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextGetKnockout(PDEElement text, bool* pKnockout);
610PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextSetKnockout(PDEElement text, bool knockout);
611
612PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateTextItem(PDETextItem* pItem);
613PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateTextItemEmptyCopy(PDETextItem item, PDETextItem* pItem);
614PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopy(PDETextItem item, PDETextItem* pCopy);
615PDF_CORE_API int PDFSDK_CALLCONV PDETextItemCompare(PDETextItem itemA, PDETextItem itemB);
616PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopyChars(PDETextItem item, char* buffer, size_t bufferSize, size_t* pSize);
617PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemCopyCharsByIndex(PDETextItem item, size_t index, char* buffer, size_t bufferSize, size_t* pSize);
618PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetChars(PDETextItem item, const char* chars, size_t numChars);
619PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemInsertChars(PDETextItem item, size_t index, const char* chars, size_t numChars);
620PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemInsertUnicodeChars(PDETextItem item, size_t index, UnicodeChar const* unicodeID, size_t unicodeIDsize);
621PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemRemoveChars(PDETextItem item, size_t index, size_t numChars);
622PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetGState(PDETextItem item, PDEGState* pState);
623PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetGState(PDETextItem item, PDEGState gstate);
624PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetTextState(PDETextItem item, PDETextState* pTextState);
625PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetTextState(PDETextItem item, const PDETextState* textState);
626PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetFont(PDETextItem item, PDEFont* pFont);
627PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetFont(PDETextItem item, PDEFont font);
628PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetFontSize(PDETextItem item, float* pFontSize);
629PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetFontSize(PDETextItem item, float fontSize);
630PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetTextMatrix(PDETextItem item, PDMatrix* pMatrix);
631PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetTextMatrix(PDETextItem item, const PDMatrix* matrix);
632PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetNumChars(PDETextItem item, size_t* pNumChars);
633PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharOutline(PDETextItem item, size_t index, PDEOutlineEnumMonitor* mon, void* monClientData);
634PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharProc(PDETextItem item, size_t index, PDEContent* pCharProc);
635PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharAdvance(PDETextItem item, size_t index, PDPointF* pAdvance);
636PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharVertMetric(PDETextItem item, size_t index, PDEGlyphVertMetric* pVertMetric);
637PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharsRect(PDETextItem item, size_t begindex, size_t endindex, PDRectF* pRect);
638PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetCharQuad(PDETextItem item, size_t index, PDQuad* pQuad);
639PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetOutlineQuad(PDETextItem item, size_t index, PDQuad* pQuad);
640PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetUnicodeText(PDETextItem item, UnicodeChar* buffer, size_t size, size_t* pSize);
641PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetUnicodeChar(PDETextItem item, size_t index, UnicodeChar* buffer, size_t size, size_t* pSize);
642PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetBBox(PDETextItem item, PDRectF* pBBox);
643PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetMatrix(PDETextItem item, PDMatrix* pMatrix);
644PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetMatrix(PDETextItem item, const PDMatrix* matrix);
645PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemGetParent(PDETextItem item, PDEElement* pText);
646PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSetParent(PDETextItem item, PDEElement pText); //TODO:remove it
647PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemSplitInplace(PDETextItem item, size_t charIndex, PDETextItem* pItem);
648PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextItemIsCharWhitespace(PDETextItem item, size_t charIndex, bool* pIsWhitespace);
649
650PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDETextLayout(PDDoc doc,
651 const wchar_t* text,
652 const PDRectF* rect,
653 const PDFontInfo* font,
654 float fontSize,
655 PDColorValue fontColor,
656 PDETextAlign alignment,
657 PDEElement* pText);
658//----------------------------------------------------------
659
660//----------------------------------------------------------
661// Inline image
662//----------------------------------------------------------
663PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateInlineImage(PDEImageAttrs* attrs, PDEColorSpace cs, const char* data);
664PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateInlineImageCrop(PDEElement image, const PDRectI* cropRect, PDEElement* pOut);
665PDF_CORE_API int PDFSDK_CALLCONV PDEInlineImageCompare(PDEElement imageA, PDEElement imageB);
666PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetAttrs(PDEElement image, PDEImageAttrs* pAttrs);
667PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetColorSpace(PDEElement image, PDEColorSpace* pColorSpace);
668PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetInterpolate(PDEElement image, bool* pInterpolate);
669PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageSetInterpolate(PDEElement image, bool interpolate);
670PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetIntent(PDEElement image, PDERenderingIntent* pIntent);
671PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageSetIntent(PDEElement image, PDERenderingIntent intent);
672PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageGetDecodeArray(PDEElement image, float* decodeArray);
673PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEInlineImageOpenStream(PDEElement image, PDReadStream* pStream);
674//----------------------------------------------------------
675
676//----------------------------------------------------------
677// XObject element
678//----------------------------------------------------------
679PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXObjectElement(PDEXObject xobject, PDEElement* pElement);
680PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXObjectElementCrop(PDEElement xoe, const PDRectI* cropRect, PDEElement* pCrop);
681PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectElementGetXObject(PDEElement xoe, PDEXObject* pXObject);
682PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectElementSetXObject(PDEElement xoe, PDEXObject xobject);
683//----------------------------------------------------------
684
685//----------------------------------------------------------
686// Shading element
687//----------------------------------------------------------
688PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingElement(PDEShading shading, PDEElement* pElement);
689PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingElementGetShading(PDEElement she, PDEShading* pShading);
690PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingElementSetShading(PDEElement she, PDEShading shading);
691//----------------------------------------------------------
692
693//----------------------------------------------------------
694// Color space
695//----------------------------------------------------------
696PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetColorSpaceFromPDObject(PDObject csObj, PDEColorSpace* pColorSpace);
697PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceGray(PDEColorSpace* pColorSpace);
698PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceRGB(PDEColorSpace* pColorSpace);
699PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpaceDeviceCMYK(PDEColorSpace* pColorSpace);
700PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorSpacePattern(PDEColorSpace* pColorSpace);
701PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetPDObject(PDEColorSpace colorSpace, PDObject* pObj);
702PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetFamily(PDEColorSpace colorSpace, PDEColorSpaceFamily* pFamily);
703PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetNumComponents(PDEColorSpace colorSpace, size_t* pNumComponents);
704PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceGetComponentRange(PDEColorSpace colorSpace, size_t index, PDENumRange* pRange);
705PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceDoesProduceOutput(PDEColorSpace colorSpace, bool* pResult);
706PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpacePackColor(PDEColorSpace colorSpace, const float* components, void* buffer);
707PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceUnpackColor(PDEColorSpace colorSpace, const void* buffer, float* components);
708PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceTransformToRGB(PDEColorSpace colorSpace, const float* components, PDERenderingIntent intent, PDColorValue* pRGB);
709PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorSpaceTransformImageDataToRGB(PDEColorSpace colorSpace, const void* data, int numEntries, PDERenderingIntent intent, void* buffer);
710//----------------------------------------------------------
711
712//----------------------------------------------------------
713// Color
714//----------------------------------------------------------
715PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColor(PDEColorSpace colorSpace, float const* components, size_t numComponents, PDEPattern pattern, PDEColor* pColor);
716PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorGray(float gray, PDEColor* pColor);
717PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorRGB(float red, float green, float blue, PDEColor* pColor);
718PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateColorFromValue(PDColorValue value, PDEColor* pColor);
719PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetColorSpace(PDEColor color, PDEColorSpace* pColorSpace);
720PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetNumComponents(PDEColor colorSpace, size_t* pNumComponents);
721PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetComponent(PDEColor color, size_t index, float* pComponent);
722PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetComponents(PDEColor color, float* components);
723PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorGetPattern(PDEColor color, PDEPattern* pPattern);
724PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEColorToRGB(PDEColor color, PDERenderingIntent intent, PDColorValue* pRGB);
725//----------------------------------------------------------
726
727//----------------------------------------------------------
728// Pattern
729//----------------------------------------------------------
730PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetPatternFromPDObject(PDObject patternObj, PDEPattern* pPattern);
731PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetPDObject(PDEPattern pattern, PDObject* pObj);
732PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetType(PDEPattern pattern, PDEPatternType* pType);
733PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternGetMatrix(PDEPattern pattern, PDMatrix* pMatrix);
734PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternSetMatrix(PDEPattern pattern, const PDMatrix* matrix);
735
736PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePatternTiling(PDDoc doc,
737 PDETilingPatternPaintType paintType,
738 PDETilingPatternTilingType tilingType,
739 const PDRectF* bbox,
740 float xstep,
741 float ystep,
742 PDEContent content,
743 PDEPattern* pPattern);
744PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetPaintType(PDEPattern pattern, PDETilingPatternPaintType* pPaintType);
745PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetPaintType(PDEPattern pattern, PDETilingPatternPaintType paintType);
746PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetTilingType(PDEPattern pattern, PDETilingPatternTilingType* pTilingType);
747PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetTilingType(PDEPattern pattern, PDETilingPatternTilingType tilingType);
748PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetBBox(PDEPattern pattern, PDRectF* pBBox);
749PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetBBox(PDEPattern pattern, const PDRectF* bbox);
750PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetXStep(PDEPattern pattern, float* pXStep);
751PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetXStep(PDEPattern pattern, float xstep);
752PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetYStep(PDEPattern pattern, float* pYStep);
753PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingSetYStep(PDEPattern pattern, float ystep);
754PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternTilingGetContent(PDEPattern pattern, PDEContent* pContent);
755
756PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreatePatternShading(PDDoc doc, PDEShading shading, PDEPattern* pPattern);
757PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingGetShading(PDEPattern pattern, PDEShading* pShading);
758PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingSetShading(PDEPattern pattern, PDEShading shading);
759PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingGetExtGState(PDEPattern pattern, PDEGState* pExtGState);
760PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEPatternShadingSetExtGState(PDEPattern pattern, PDEGState extGState);
761//----------------------------------------------------------
762
763//----------------------------------------------------------
764// Shading
765//----------------------------------------------------------
766PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetShadingFromPDObject(PDObject shadingObj, PDEShading* pShading);
767PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetPDObject(PDEShading shading, PDObject* pObj);
768
769PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetType(PDEShading shading, PDEShadingType* pType);
770PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetColorSpace(PDEShading shading, PDEColorSpace* pColorSpace);
771PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetBackground(PDEShading shading, PDEColor* pBackground);
772PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetBackground(PDEShading shading, PDEColor background);
773PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetBBox(PDEShading shading, PDRectF* pBBox);
774PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetBBox(PDEShading shading, const PDRectF* bbox);
775PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingGetAntiAlias(PDEShading shading, bool* pAntiAlias);
776PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingSetAntiAlias(PDEShading shading, bool antiAlias);
777
778PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingFunctionBased(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, PDEShading* pShading);
779PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetXDomain(PDEShading shading, PDENumRange* pDomain);
780PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetXDomain(PDEShading shading, PDENumRange const* domain);
781PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetYDomain(PDEShading shading, PDENumRange* pDomain);
782PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetYDomain(PDEShading shading, PDENumRange const* domain);
783PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetMatrix(PDEShading shading, PDMatrix* pMatrix);
784PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetMatrix(PDEShading shading, const PDMatrix* matrix);
785PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedGetFunction(PDEShading shading, PDEFunction* pFunction);
786PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFunctionBasedSetFunction(PDEShading shading, PDEFunction function);
787
788PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingAxial(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, const PDPointF* start, const PDPointF* end, PDEShading* pShading);
789PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetStartPoint(PDEShading shading, PDPointF* pPoint);
790PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetStartPoint(PDEShading shading, const PDPointF* point);
791PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetEndPoint(PDEShading shading, PDPointF* pPoint);
792PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetEndPoint(PDEShading shading, const PDPointF* point);
793PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetFunction(PDEShading shading, PDEFunction* pFunction);
794PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetFunction(PDEShading shading, PDEFunction function);
795PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetDomain(PDEShading shading, PDENumRange* pDomain);
796PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetDomain(PDEShading shading, PDENumRange const* domain);
797PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetExtendStart(PDEShading shading, bool* pExtend);
798PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetExtendStart(PDEShading shading, bool extend);
799PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialGetExtendEnd(PDEShading shading, bool* pExtend);
800PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingAxialSetExtendEnd(PDEShading shading, bool extend);
801
802PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateShadingRadial(PDDoc doc, PDEColorSpace colorSpace, PDEFunction function, const PDPointF* start, float startRadius, const PDPointF* end, float endRadius, PDEShading* pShading);
803PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetStartPoint(PDEShading shading, PDPointF* pPoint);
804PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetStartPoint(PDEShading shading, const PDPointF* point);
805PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetStartRadius(PDEShading shading, float* pRadius);
806PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetStartRadius(PDEShading shading, float radius);
807PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetEndPoint(PDEShading shading, PDPointF* pPoint);
808PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetEndPoint(PDEShading shading, const PDPointF* point);
809PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetEndRadius(PDEShading shading, float* pRadius);
810PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetEndRadius(PDEShading shading, float radius);
811PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetFunction(PDEShading shading, PDEFunction* pFunction);
812PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetFunction(PDEShading shading, PDEFunction function);
813PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetDomain(PDEShading shading, PDENumRange* pDomain);
814PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetDomain(PDEShading shading, PDENumRange const* domain);
815PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetExtendStart(PDEShading shading, bool* pExtend);
816PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetExtendStart(PDEShading shading, bool extend);
817PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialGetExtendEnd(PDEShading shading, bool* pExtend);
818PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingRadialSetExtendEnd(PDEShading shading, bool extend);
819
820PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetFunction(PDEShading shading, PDEFunction* pFunction);
821PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudSetFunction(PDEShading shading, PDEFunction function);
822PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetNumVertices(PDEShading shading, size_t* pNumVertices);
823PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetVertexCoord(PDEShading shading, size_t index, PDPointF* pCoord);
824PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingFreeFormGouraudGetVertexColor(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue* pColor);
825
826PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetFunction(PDEShading shading, PDEFunction* pFunction);
827PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudSetFunction(PDEShading shading, PDEFunction function);
828PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetNumVertices(PDEShading shading, size_t* pNumVertices);
829PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVerticesPerRow(PDEShading shading, size_t* pVerticesPerRow);
830PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVertexCoord(PDEShading shading, size_t index, PDPointF* pCoord);
831PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingLatticeFormGouraudGetVertexColor(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue* pColor);
832
833PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetFunction(PDEShading shading, PDEFunction* pFunction);
834PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshSetFunction(PDEShading shading, PDEFunction function);
835PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetNumPatches(PDEShading shading, size_t* pNumPatches);
836PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetPatchCoords(PDEShading shading, size_t index, PDPointF pCoords[16]);
837PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEShadingPatchMeshGetPatchColors(PDEShading shading, size_t index, PDERenderingIntent intent, PDColorValue pColors[4]);
838//----------------------------------------------------------
839
840//----------------------------------------------------------
841// XObject
842//----------------------------------------------------------
843PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetXObjectFromPDObject(PDObject obj, PDEXObject* pXObject);
844
845PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocImportIcon(PDDoc doc, PDDoc to, size_t pageNo, PDEXObject* xobject);
846PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocCreatePageFromIcon(PDDoc doc, size_t insertAt, PDDoc iconDoc, PDEXObject icon);
847PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFormXObject(PDDoc doc, PDEContent content, PDEXObject* pXObject);
848PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectCopy(PDEXObject source, PDEXObject* pXObject);
849PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetBBox(PDEXObject xform, PDRectF* pBBox);
850PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetBBox(PDEXObject xform, const PDRectF* bbox);
851PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetMatrix(PDEXObject xform, PDMatrix* pMatrix);
852PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetMatrix(PDEXObject xform, const PDMatrix* matrix);
853PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetContent(PDEXObject xform, PDEContent* pContent);
854PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetContent(PDEXObject xform, const PDEContent content);
855PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetXGroup(PDEXObject xform, PDEXGroup* pGroup);
856PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetXGroup(PDEXObject xform, PDEXGroup group);
857PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectGetOCMD(PDEXObject xform, PDOCMD* pOCMD);
858PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetOCMD(PDEXObject xform, PDOCMD ocmd);
859PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFormXObjectSetADBECompoundType(PDEXObject xform, const char* type);
860
861PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateXGroup(PDEColorSpace colorSpace, PDEXGroupFlags flags, PDEXGroup* pGroup);
862PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupGetColorSpace(PDEXGroup group, PDEColorSpace* pColorSpace);
863PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupSetColorSpace(PDEXGroup group, PDEColorSpace colorSpace);
864PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupGetFlags(PDEXGroup group, PDEXGroupFlags* pFlags);
865PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXGroupSetFlags(PDEXGroup group, PDEXGroupFlags flags);
866
867PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObject(PDDoc doc, PDEImageAttrs const* attrs, PDEColorSpace cs, const void* imageData, PDAtom compressionFilter, PDEXObject* pXObject);
868PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObjectEmbedJpeg(PDDoc doc, const wchar_t* jpegImagePath, PDEXObject* pXObject);
869PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateImageXObjectCrop(PDEXObject ximage, const PDRectI* cropRect, PDEXObject* pOut);
870PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectGetType(PDEXObject xobj, PDEXObjectType* pType);
871PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEXObjectGetPDObject(PDEXObject xobj, PDObject* pObj);
872PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetAttrs(PDEXObject ximage, PDEImageAttrs* pAttrs);
873PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetColorSpace(PDEXObject ximage, PDEColorSpace* pColorSpace);
874PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectHasAlphaChannelInData(PDEXObject ximage, bool* pHasAlphaChannel);
875PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetInterpolate(PDEXObject ximage, bool* pInterpolate);
876PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetInterpolate(PDEXObject ximage, bool interpolate);
877PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetIntent(PDEXObject ximage, PDERenderingIntent* pIntent);
878PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetIntent(PDEXObject ximage, PDERenderingIntent intent);
879PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectResetIntent(PDEXObject ximage);
880PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetDecodeArray(PDEXObject ximage, float* decodeArray, size_t decodeArraySize, size_t* pOutDecodeArraySize);
881PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetMask(PDEXObject ximage, PDEXObject* pMask);
882PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetMask(PDEXObject ximage, PDEXObject mask);
883PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetColorKey(PDEXObject ximage, int* colorKey);
884PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetSMask(PDEXObject ximage, PDEXObject* pSMask);
885PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetSMask(PDEXObject ximage, PDEXObject smask);
886PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetSMaskInData(PDEXObject ximage, int* pSMaskInData);
887PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetMatteArray(PDEXObject ximage, float* matteArray);
888PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetMatteArray(PDEXObject ximage, const float* matteArray);
889PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectGetOCMD(PDEXObject ximage, PDOCMD* pOCMD);
890PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectSetOCMD(PDEXObject ximage, PDOCMD ocmd);
891PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageGetCompressionFilter(PDEXObject ximage, PDAtom* pComppressionFilter);
892PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEImageXObjectOpenStream(PDEXObject ximage, PDReadStream* pStream);
893//----------------------------------------------------------
894
895//----------------------------------------------------------
896// Font
897//----------------------------------------------------------
898PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEGetFontFromPDObject(PDObject fontObj, PDEFont* pFont);
899PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFontInDoc(PDDoc doc, const PDFontInfo* fontInfo, bool needSubset, bool forceSysFont, PDEFont* pFont);
900PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDECreateFontToTypeUnicode(PDDoc doc, PDEFont font, const UnicodeChar* unicode, size_t unicodeLen, PDEFontFauxType* pFauxType, PDEFont* pFont);
901PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetPDObject(PDEFont font, PDObject* pFontObj);
902PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetSubtype(PDEFont font, PDEFontSubtype* pSubtype);
903PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetName(PDEFont font, PDAtom* pName);
904PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetMetrics(PDEFont font, PDEFontMetrics* pMetrics);
905PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontMatrix(PDEFont font, PDMatrix* pMatrix);
906PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontBBox(PDEFont font, PDRectF* pBBox);
907PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontIsEmbedded(PDEFont font, bool* pEmbedded);
908PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetWritingMode(PDEFont font, PDEWritingMode* pWMode);
909PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCharProc(PDEFont font, const char* codepoint, size_t codepointLen, PDEContent* pCharProc);
910PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontEnumCharOutline(PDEFont font, const char* codepoint, size_t codepointLen, PDEOutlineEnumMonitor mon, void* monClientData);
911PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCharWidth(PDEFont font, const char* codepoint, size_t codepointLen, int16_t* pWidth);
912PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetCharVertMetric(PDEFont font, const char* codepoint, size_t codepointLen, PDEGlyphVertMetric* pVertMetric);
913PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetStyle(PDEFont font, PDFontStyle* style);
914PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFontInfo(PDEFont font, PDFontInfo* pInfo);
915PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetEncodingName(PDEFont font, PDAtom* pEncodingName);
916PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCanTypeUnicode(PDEFont font, const UnicodeChar* unicode, size_t unicodeLen, bool* pCanType);
917PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontIsFauxed(PDEFont font, bool* pFauxed);
918PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetFauxFontInfo(PDEFont font, PDFontInfo* pInfo);
919PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontOpenFontFileStream(PDEFont font, PDReadStream* pStream);
920PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontCharToUnicode(PDEFont font, char const* codepoint, size_t codepointLen, UnicodeChar* unicode, size_t unicodeLen, size_t* pUnicodeLen);
921PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontUnicodeToChar(PDEFont font, UnicodeChar const* unicode, size_t unicodeLen, char* codepoint, size_t codepointLen, size_t* pCodepointLen);
922PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontFindSubstFontInfo(PDEFont font, bool forceBold, bool forceItalic, PDFontInfo* pInfo);
923PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetSubstMetrics(PDEFont font, PDEFontMetrics* pMetrics);
924PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDEFontGetType3GlyphsBBox(PDEFont font, PDRectF* pBBox);
925//----------------------------------------------------------
926
927#ifdef __cplusplus
928}
929#endif
930
931#endif // PDFSDK_CORE_CONTENT_H_INCLUDED_
PDEElementType
Definition content.h:125
@ kPDEElementPlace
Definition content.h:139
Document API.
Optional Content API.
struct PDOCConfigRec_ * PDOCConfig
Definition optional_content.h:39
Error codes.
int32_t PDErrCode
Definition errors.h:44
Fonts API.
Math types.
Objects API.
Definition content.h:386
Definition content.h:263
Definition content.h:269
Definition content.h:423
Definition content.h:89
Definition content.h:365
Definition content.h:392
Definition content.h:331
Definition content.h:30
Definition content.h:416
Definition content.h:178
Definition content.h:198
Definition content.h:232
Definition fonts.h:25
Definition math_types.h:60
Definition objects.h:80
Definition math_types.h:12
Definition math_types.h:52
Definition math_types.h:30
Definition math_types.h:44