OSDN Git Service

binding with libharu.
[putex/putex.git] / src / texsourc / lib / libhpdf / if / vb6 / hpdf_types.bas
1 Attribute VB_Name = "Module3"
2 ''/*
3 ' * << Haru Free PDF Library 2.0.3 >> -- hpdf_types.h
4 ' *
5 ' * URL http://libharu.org/
6 ' *
7 ' * Copyright (c) 1999-2006 Takeshi Kanno
8 ' *
9 ' * Permission to use copy modify distribute and sell this software
10 ' * and its documentation for any purpose is hereby granted without fee
11 ' * provided that the above copyright notice appear in all copies and
12 ' * that both that copyright notice and this permission notice appear
13 ' * in supporting documentation.
14 ' * It is provided "as is" without express or implied warranty.
15 ' *
16 ' */
17
18
19 ''/*----------------------------------------------------------------------------*/
20 ''/*----- type definition ------------------------------------------------------*/
21
22
23 '/*  native OS integer types */
24 'typedef  signed int          HPDF_INT
25 'typedef  unsigned int        HPDF_UNIT
26
27
28 '/*  32bit integer types
29 ' */
30 'typedef  signed int          HPDF_INT32
31 'typedef  unsigned int        HPDF_UNIT32
32
33
34 '/*  16bit integer types
35 ' */
36 'typedef  signed short        HPDF_INT16
37 'typedef  unsigned short      HPDF_UNIT16
38
39
40 '/*  8bit integer types
41 ' */
42 'typedef  signed char         HPDF_INT8
43 'typedef  unsigned char       HPDF_UNIT8
44
45
46 '/*  8bit binary types
47 ' */
48 'typedef  unsigned char       HPDF_BYTE
49
50
51 '/*  float type (32bit IEEE754)
52 ' */
53 'typedef  float               HPDF_REAL
54
55
56 '/*  double type (64bit IEEE754)
57 ' */
58 'typedef  double              HPDF_DOUBLE
59
60
61 '/*  boolean type (0: False !0: True)
62 ' */
63 'typedef  signed int          HPDF_BOOL
64
65
66 '/*  error-no type (32bit unsigned integer)
67 ' */
68 'typedef  unsigned long       HPDF_STATUS
69
70
71 '/*  charactor-code type (16bit)
72 ' */
73 'typedef  long16         HPDF_CID
74 'typedef  long16         HPDF_UNICODE
75
76
77 '/*  HPDF_Point struct
78 ' */
79 Public Type HPDF_Point
80     x As Single
81     y As Single
82 End Type
83
84 Public Type HPDF_Rect
85     Left        As Single
86     bottom      As Single
87     Right       As Single
88     top         As Single
89 End Type
90
91 Public Type HPDF_Box
92     Left        As Single
93     bottom      As Single
94     Right       As Single
95     top         As Single
96 End Type
97
98 '/* HPDF_Date struct
99 ' */
100 Public Type HPDF_Date
101     Year        As Long
102     Month       As Long
103     Day         As Long
104     Hour        As Long
105     minutes     As Long
106     seconds     As Long
107     ind         As Byte
108     off_hour    As Long
109     off_minutes As Long
110 End Type
111
112
113 Public Enum HPDF_InfoType
114     '/* date-time type parameters */
115     HPDF_INFO_CREATION_DATE = 0
116     HPDF_INFO_MOD_DATE = 1
117
118     '/* string type parameters */
119     HPDF_INFO_AUTHOR = 2
120     HPDF_INFO_CREATOR = 3
121     HPDF_INFO_PRODUCER = 4
122     HPDF_INFO_TITLE = 5
123     HPDF_INFO_SUBJECT = 6
124     HPDF_INFO_KEYWORDS = 7
125     HPDF_INFO_EOF = 8
126 End Enum
127
128
129 Public Enum HPDF_EncryptMode
130     HPDF_ENCRYPT_R2 = 2
131     HPDF_ENCRYPT_R3 = 3
132 End Enum
133
134
135 #If 0 Then
136 typedef void
137 (HPDF_STDCALL *HPDF_Error_Handler)  (long   error_no
138                                      long   detail_no
139                                      void         *user_data)
140
141 typedef void*
142 (HPDF_STDCALL *HPDF_Alloc_Func)  (long  size)
143
144
145 typedef void
146 (HPDF_STDCALL *HPDF_Free_Func)  (void  *aptr)
147 #End If
148
149 '/*---------------------------------------------------------------------------*/
150 '/*------ text width struct --------------------------------------------------*/
151 Public Type HPDF_TextWidth
152     numchars    As Long
153     '/* don't use this value (it may be change in the feature).
154     '   use numspace as alternated. */
155     numwords    As Long
156     Width       As Long
157     numspace    As Long
158 End Type
159
160
161 '/*---------------------------------------------------------------------------*/
162 '/*------ dash mode ----------------------------------------------------------*/
163 Public Type HPDF_DashMode
164     ptn(8)      As Integer
165     num_ptn     As Long
166     phase       As Long
167 End Type
168
169
170 '/*---------------------------------------------------------------------------*/
171 '/*----- HPDF_TransMatrix struct ---------------------------------------------*/
172 Public Type HPDF_TransMatrix
173      a          As Single
174      b          As Single
175      c          As Single
176      d          As Single
177      x          As Single
178      y          As Single
179 End Type
180
181
182 '/*---------------------------------------------------------------------------*/
183 Public Enum HPDF_ColorSpace
184     HPDF_CS_DEVICE_GRAY = 0
185     HPDF_CS_DEVICE_RGB = 1
186     HPDF_CS_DEVICE_CMYK = 2
187     HPDF_CS_CAL_GRAY = 3
188     HPDF_CS_CAL_RGB = 4
189     HPDF_CS_LAB = 5
190     HPDF_CS_ICC_BASED = 6
191     HPDF_CS_SEPARATION = 7
192     HPDF_CS_DEVICE_N = 8
193     HPDF_CS_INDEXED = 9
194     HPDF_CS_PATTERN = 10
195     HPDF_CS_EOF = 11
196 End Enum
197
198 '/*---------------------------------------------------------------------------*/
199 '/*----- HPDF_RGBColor struct ------------------------------------------------*/
200 Public Type HPDF_RGBColor
201        r        As Single
202        g        As Single
203        b        As Single
204 End Type
205
206 '/*---------------------------------------------------------------------------*/
207 '/*----- HPDF_CMYKColor struct -----------------------------------------------*/
208 Public Type HPDF_CMYKColor
209        c      As Single
210        m      As Single
211        y      As Single
212        k      As Single
213 End Type
214
215 '/*---------------------------------------------------------------------------*/
216 '/*------ The line cap style -------------------------------------------------*/
217 Public Enum HPDF_LineCap
218     HPDF_BUTT_END = 0
219     HPDF_ROUND_END = 1
220     HPDF_PROJECTING_SCUARE_END = 2
221     HPDF_LINECAP_EOF = 3
222 End Enum
223
224 '/*----------------------------------------------------------------------------*/
225 '/*------ The line join style -------------------------------------------------*/
226 Public Enum HPDF_LineJoin
227     HPDF_MITER_JOIN = 0
228     HPDF_ROUND_JOIN = 1
229     HPDF_BEVEL_JOIN = 2
230     HPDF_LINEJOIN_EOF = 3
231 End Enum
232
233 '/*----------------------------------------------------------------------------*/
234 '/*------ The text rendering mode ---------------------------------------------*/
235 Public Enum HPDF_TextRenderingMode
236     HPDF_FILL = 0
237     HPDF_STROKE = 1
238     HPDF_FILL_THEN_STROKE = 2
239     HPDF_INVISIBLE = 3
240     HPDF_FILL_CLIPPING = 4
241     HPDF_STROKE_CLIPPING = 5
242     HPDF_FILL_STROKE_CLIPPING = 6
243     HPDF_CLIPPING = 7
244     HPDF_RENDERING_MODE_EOF = 8
245 End Enum
246
247
248 Public Enum HPDF_WritingMode
249     HPDF_WMODE_HORIZONTAL = 0
250     HPDF_WMODE_VERTICAL = 1
251     HPDF_WMODE_EOF = 2
252 End Enum
253
254
255 Public Enum HPDF_PageLayout
256     HPDF_PAGE_LAYOUT_SINGLE = 0
257     HPDF_PAGE_LAYOUT_ONE_COLUMN = 1
258     HPDF_PAGE_LAYOUT_TWO_COLUMN_LEFT = 2
259     HPDF_PAGE_LAYOUT_TWO_COLUMN_RIGHT = 3
260     HPDF_PAGE_LAYOUT_EOF = 4
261 End Enum
262
263
264 Public Enum HPDF_PageMode
265     HPDF_PAGE_MODE_USE_NONE = 0
266     HPDF_PAGE_MODE_USE_OUTLINE = 1
267     HPDF_PAGE_MODE_USE_THUMBS = 2
268     HPDF_PAGE_MODE_FULL_SCREEN = 3
269 '/*  HPDF_PAGE_MODE_USE_OC              =4
270     HPDF_PAGE_MODE_USE_ATTACHMENTS = 4
271 ' */
272     HPDF_PAGE_MODE_EOF
273 End Enum
274
275
276 Public Enum HPDF_PageNumStyle
277     HPDF_PAGE_NUM_STYLE_DECIMAL = 0
278     HPDF_PAGE_NUM_STYLE_UPPER_ROMAN = 1
279     HPDF_PAGE_NUM_STYLE_LOWER_ROMAN = 2
280     HPDF_PAGE_NUM_STYLE_UPPER_LETTERS = 3
281     HPDF_PAGE_NUM_STYLE_LOWER_LETTERS = 4
282     HPDF_PAGE_NUM_STYLE_EOF = 5
283 End Enum
284
285
286 Public Enum HPDF_DestinationType
287     HPDF_XYZ = 0
288     HPDF_FIT = 1
289     HPDF_FIT_H = 2
290     HPDF_FIT_V = 3
291     HPDF_FIT_R = 4
292     HPDF_FIT_B = 5
293     HPDF_FIT_BH = 6
294     HPDF_FIT_BV = 7
295     HPDF_DST_EOF = 8
296 End Enum
297
298
299 Public Enum HPDF_AnnotType
300     HPDF_ANNOT_TEXT_NOTES = 1
301     HPDF_ANNOT_LINK = 2
302     HPDF_ANNOT_SOUND = 3
303     HPDF_ANNOT_FREE_TEXT = 4
304     HPDF_ANNOT_STAMP = 5
305     HPDF_ANNOT_SQUARE = 6
306     HPDF_ANNOT_CIRCLE = 7
307     HPDF_ANNOT_STRIKE_OUT = 8
308     HPDF_ANNOT_HIGHTLIGHT = 9
309     HPDF_ANNOT_UNDERLINE = 10
310     HPDF_ANNOT_INK = 11
311     HPDF_ANNOT_FILE_ATTACHMENT = 12
312     HPDF_ANNOT_POPUP = 13
313 End Enum
314
315
316 Public Enum HPDF_AnnotFlgs
317     HPDF_ANNOT_INVISIBLE = 1
318     HPDF_ANNOT_HIDDEN = 2
319     HPDF_ANNOT_PRINT = 3
320     HPDF_ANNOT_NOZOOM = 4
321     HPDF_ANNOT_NOROTATE = 5
322     HPDF_ANNOT_NOVIEW = 6
323     HPDF_ANNOT_READONLY = 7
324 End Enum
325
326
327 Public Enum HPDF_AnnotHighlightMode
328     HPDF_ANNOT_NO_HIGHTLIGHT = 0
329     HPDF_ANNOT_INVERT_BOX = 1
330     HPDF_ANNOT_INVERT_BORDER = 2
331     HPDF_ANNOT_DOWN_APPEARANCE = 3
332     HPDF_ANNOT_HIGHTLIGHT_MODE_EOF = 4
333 End Enum
334
335
336 Public Enum HPDF_AnnotIcon
337     HPDF_ANNOT_ICON_COMMENT = 0
338     HPDF_ANNOT_ICON_KEY = 1
339     HPDF_ANNOT_ICON_NOTE = 2
340     HPDF_ANNOT_ICON_HELP = 3
341     HPDF_ANNOT_ICON_NEW_PARAGRAPH = 4
342     HPDF_ANNOT_ICON_PARAGRAPH = 5
343     HPDF_ANNOT_ICON_INSERT = 6
344     HPDF_ANNOT_ICON_EOF = 7
345 End Enum
346
347
348
349 '/*----------------------------------------------------------------------------*/
350 '/*------ border stype --------------------------------------------------------*/
351 Public Enum HPDF_BSSubtype
352     HPDF_BS_SOLID = 1
353     HPDF_BS_DASHED = 2
354     HPDF_BS_BEVELED = 3
355     HPDF_BS_INSET = 4
356     HPDF_BS_UNDERLINED = 5
357 End Enum
358
359
360 Public Enum HPDF_PageSizes
361     HPDF_PAGE_SIZE_LETTER = 0
362     HPDF_PAGE_SIZE_LEGAL = 1
363     HPDF_PAGE_SIZE_A3 = 2
364     HPDF_PAGE_SIZE_A4 = 3
365     HPDF_PAGE_SIZE_A5 = 4
366     HPDF_PAGE_SIZE_B4 = 5
367     HPDF_PAGE_SIZE_B5 = 6
368     HPDF_PAGE_SIZE_EXECUTIVE = 7
369     HPDF_PAGE_SIZE_US4x6 = 8
370     HPDF_PAGE_SIZE_US4x8 = 9
371     HPDF_PAGE_SIZE_US5x7 = 10
372     HPDF_PAGE_SIZE_COMM10 = 11
373     HPDF_PAGE_SIZE_EOF = 12
374 End Enum
375
376
377 Public Enum HPDF_PageDirection
378     HPDF_PAGE_PORTRAIT = 0
379     HPDF_PAGE_LANDSCAPE = 1
380 End Enum
381
382
383 Public Enum HPDF_EncoderType
384     HPDF_ENCODER_TYPE_SINGLE_BYTE = 1
385     HPDF_ENCODER_TYPE_DOUBLE_BYTE = 2
386     HPDF_ENCODER_TYPE_UNINITIALIZED = 3
387     HPDF_ENCODER_UNKNOWN = 4
388 End Enum
389
390
391 Public Enum HPDF_ByteType
392     HPDF_BYTE_TYPE_SINGLE = 0
393     HPDF_BYTE_TYPE_LEAD = 1
394     HPDF_BYTE_TYPE_TRIAL = 2
395     HPDF_BYTE_TYPE_UNKNOWN = 3
396 End Enum
397
398
399 Public Enum HPDF_TextAlignment
400     HPDF_TALIGN_LEFT = 0
401     HPDF_TALIGN_RIGHT = 1
402     HPDF_TALIGN_CENTER = 2
403     HPDF_TALIGN_JUSTIFY = 3
404 End Enum