2 * << Haru Free PDF Library 2.0.6 >> -- hpdf_types.pas
4 * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>
6 * Permission to use, copy, modify, distribute and sell this software
7 * and its documentation for any purpose is hereby granted without fee,
8 * provided that the above copyright notice appear in all copies and
9 * that both that copyright notice and this permission notice appear
10 * in supporting documentation.
11 * It is provided "as is" without express or implied warranty.
24 {*----------------------------------------------------------------------------*}
25 {*----- type definition ------------------------------------------------------*}
28 {* native OS integer types *}
31 HPDF_PUINT = ^Cardinal;
33 {* 32bit integer types
36 HPDF_UINT32 = Longword;
37 HPDF_PUINT32 = ^Longword;
40 {* 16bit integer types
42 HPDF_INT16 = SmallInt;
54 {* 8bit charactor types
65 {* float type (32bit IEEE754)
68 HPDF_PREAL = ^HPDF_REAL;
71 {* double type (64bit IEEE754)
76 {* boolean type (0: False, 1: True)
81 {* error-no type (32bit unsigned integer)
83 HPDF_STATUS = Cardinal;
86 {* charactor-code type (16bit)
91 {* null terminated character *}
97 THPDF_Box = packed record
107 THPDF_Point = packed record
111 PHPDF_Point = ^THPDF_Point;
116 THPDF_Rect = packed record
126 THPDF_Date = packed record
135 off_minutes: HPDF_INT;
140 HPDF_INFO_CREATION_DATE,
152 THPDF_EncryptMode = (
160 {*---------------------------------------------------------------------------*}
161 {*------ text width struct --------------------------------------------------*}
163 THPDF_TextWidth = packed record
165 numwords: HPDF_UINT; {* don't use this value. *}
171 {*---------------------------------------------------------------------------*}
172 {*------ dash mode ----------------------------------------------------------*}
174 THPDF_DashMode = packed record
175 ptn: array[0..7] of HPDF_UINT16;
176 num_ptn: HPDF_UINT16;
181 {*---------------------------------------------------------------------------*}
182 {*----- HPDF_TransMatrix struct ---------------------------------------------*}
184 THPDF_TransMatrix = packed record
194 {*---------------------------------------------------------------------------*}
211 {*---------------------------------------------------------------------------*}
212 {*----- HPDF_RGBColor struct ------------------------------------------------*}
214 THPDF_RGBColor = packed record
220 {*---------------------------------------------------------------------------*}
221 {*----- HPDF_CMYKColor struct -----------------------------------------------*}
223 THPDF_CMYKColor = packed record
230 {*---------------------------------------------------------------------------*}
231 {*------ The line cap style -------------------------------------------------*}
236 HPDF_PROJECTING_SCUARE_END
239 {*----------------------------------------------------------------------------*}
240 {*------ The line join style -------------------------------------------------*}
248 {*----------------------------------------------------------------------------*}
249 {*------ The text rendering mode ---------------------------------------------*}
251 THPDF_TextRenderingMode = (
254 HPDF_FILL_THEN_STROKE,
257 HPDF_STROKE_CLIPPING,
258 HPDF_FILL_STROKE_CLIPPING,
260 HPDF_RENDERING_MODE_EOF
264 THPDF_WritingMode = (
265 HPDF_WMODE_HORIZONTAL,
271 HPDF_PAGE_LAYOUT_SINGLE,
272 HPDF_PAGE_LAYOUT_ONE_COLUMN,
273 HPDF_PAGE_LAYOUT_TWO_COLUMN_LEFT,
274 HPDF_PAGE_LAYOUT_TWO_COLUMN_RIGHT
279 HPDF_PAGE_MODE_USE_NONE,
280 HPDF_PAGE_MODE_USE_OUTLINE,
281 HPDF_PAGE_MODE_USE_THUMBS,
282 HPDF_PAGE_MODE_FULL_SCREEN
283 {* HPDF_PAGE_MODE_USE_OC,
284 HPDF_PAGE_MODE_USE_ATTACHMENTS
289 THPDF_PageNumStyle = (
290 HPDF_PAGE_NUM_STYLE_DECIMAL,
291 HPDF_PAGE_NUM_STYLE_UPPER_ROMAN,
292 HPDF_PAGE_NUM_STYLE_LOWER_ROMAN,
293 HPDF_PAGE_NUM_STYLE_UPPER_LETTERS,
294 HPDF_PAGE_NUM_STYLE_LOWER_LETTERS
298 THPDF_DestinationType = (
312 HPDF_ANNOT_TEXT_NOTES,
315 HPDF_ANNOT_FREE_TEXT,
319 HPDF_ANNOT_STRIKE_OUT,
320 HPDF_ANNOT_HIGHTLIGHT,
321 HPDF_ANNOT_UNDERLINE,
323 HPDF_ANNOT_FILE_ATTACHMENT,
329 HPDF_ANNOT_INVISIBLE,
339 THPDF_AnnotHighlightMode = (
340 HPDF_ANNOT_NO_HIGHTLIGHT,
341 HPDF_ANNOT_INVERT_BOX,
342 HPDF_ANNOT_INVERT_BORDER,
343 HPDF_ANNOT_DOWN_APPEARANCE
348 HPDF_ANNOT_ICON_COMMENT,
350 HPDF_ANNOT_ICON_NOTE,
351 HPDF_ANNOT_ICON_HELP,
352 HPDF_ANNOT_ICON_NEW_PARAGRAPH,
353 HPDF_ANNOT_ICON_PARAGRAPH,
354 HPDF_ANNOT_ICON_INSERT
358 {*----------------------------------------------------------------------------*}
359 {*------ border stype --------------------------------------------------------*}
371 HPDF_PAGE_SIZE_LETTER,
372 HPDF_PAGE_SIZE_LEGAL,
377 HPDF_PAGE_SIZE_EXECUTIVE,
378 HPDF_PAGE_SIZE_US4x6,
379 HPDF_PAGE_SIZE_US4x8,
380 HPDF_PAGE_SIZE_US5x7,
381 HPDF_PAGE_SIZE_COMM10
385 THPDF_PageDirection = (
391 THPDF_EncoderType = (
392 HPDF_ENCODER_TYPE_SINGLE_BYTE,
393 HPDF_ENCODER_TYPE_DOUBLE_BYTE,
394 HPDF_ENCODER_TYPE_UNINITIALIZED,
400 HPDF_BYTE_TYPE_SINGLE,
402 HPDF_BYTE_TYPE_TRIAL,
403 HPDF_BYTE_TYPE_UNKNOWN
407 THPDF_TextAlignment = (
432 THPDF_TransitionStyle = (
437 HPDF_TS_BARN_DOORS_HORIZONTAL_OUT,
438 HPDF_TS_BARN_DOORS_HORIZONTAL_IN,
439 HPDF_TS_BARN_DOORS_VERTICAL_OUT,
440 HPDF_TS_BARN_DOORS_VERTICAL_IN,
443 HPDF_TS_BLINDS_HORIZONTAL,
444 HPDF_TS_BLINDS_VERTICAL,
446 HPDF_TS_GLITTER_RIGHT,
447 HPDF_TS_GLITTER_DOWN,
448 HPDF_TS_GLITTER_TOP_LEFT_TO_BOTTOM_RIGHT,
454 THPDF_ErrorFunc = procedure (error_no: HPDF_STATUS; detail_no: HPDF_STATUS;
455 user_data: Pointer); stdcall;
457 THPDF_AllocFunc = procedure (size: Cardinal); stdcall;
459 THPDF_FreeFunc = procedure (aptr: Pointer); stdcall;