hpdf 2.0.8-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History +57 -0
- data/License +25 -0
- data/README +136 -0
- data/docs/annotation_handling.html +503 -0
- data/docs/api.css +115 -0
- data/docs/api_reference.html +112 -0
- data/docs/bindings.html +242 -0
- data/docs/compile_your_program.html +365 -0
- data/docs/default.css +115 -0
- data/docs/destination_handling.html +620 -0
- data/docs/document_handling.html +4751 -0
- data/docs/documentation.html +110 -0
- data/docs/encoder_handling.html +428 -0
- data/docs/error_handling.html +1609 -0
- data/docs/examples.html +702 -0
- data/docs/ext_gstate.html +407 -0
- data/docs/font_handling.html +669 -0
- data/docs/fonts.html +978 -0
- data/docs/graphics.html +1210 -0
- data/docs/handles.html +204 -0
- data/docs/how_to_use.html +371 -0
- data/docs/image/Thumbs.db +0 -0
- data/docs/image/character_map.png +0 -0
- data/docs/image/encoding_list.png +0 -0
- data/docs/image/extgtate.png +0 -0
- data/docs/image/figure1.png +0 -0
- data/docs/image/figure10.png +0 -0
- data/docs/image/figure11.png +0 -0
- data/docs/image/figure12.png +0 -0
- data/docs/image/figure13.png +0 -0
- data/docs/image/figure14.png +0 -0
- data/docs/image/figure15.png +0 -0
- data/docs/image/figure16.png +0 -0
- data/docs/image/figure17.png +0 -0
- data/docs/image/figure18.png +0 -0
- data/docs/image/figure19.png +0 -0
- data/docs/image/figure2.png +0 -0
- data/docs/image/figure20.png +0 -0
- data/docs/image/figure21.png +0 -0
- data/docs/image/figure22.png +0 -0
- data/docs/image/figure23.png +0 -0
- data/docs/image/figure24.png +0 -0
- data/docs/image/figure25.png +0 -0
- data/docs/image/figure26.png +0 -0
- data/docs/image/figure27.png +0 -0
- data/docs/image/figure28.png +0 -0
- data/docs/image/figure3.png +0 -0
- data/docs/image/figure4.png +0 -0
- data/docs/image/figure5.png +0 -0
- data/docs/image/figure6.png +0 -0
- data/docs/image/figure7.png +0 -0
- data/docs/image/figure8.png +0 -0
- data/docs/image/figure9.png +0 -0
- data/docs/image/font_demo.png +0 -0
- data/docs/image/harulogo.png +0 -0
- data/docs/image/image_demo.png +0 -0
- data/docs/image/jpfont_demo.png +0 -0
- data/docs/image/line_demo.png +0 -0
- data/docs/image/png_demo.png +0 -0
- data/docs/image/text_annot.png +0 -0
- data/docs/image/text_demo.png +0 -0
- data/docs/image/text_demo2.png +0 -0
- data/docs/image/tt_font.png +0 -0
- data/docs/image_handling.html +505 -0
- data/docs/index.html +305 -0
- data/docs/install.html +243 -0
- data/docs/outline_handling.html +229 -0
- data/docs/page_handling.html +2647 -0
- data/docs/page_operator.html +2640 -0
- data/docs/useful_links.html +203 -0
- data/examples/arc_demo.rb +82 -0
- data/examples/demo.rb +91 -0
- data/examples/encryption.rb +41 -0
- data/examples/ext_gstater_demo.rb +171 -0
- data/examples/font_demo.rb +67 -0
- data/examples/jpfont_demo.rb +122 -0
- data/examples/line_demo.rb +301 -0
- data/examples/slide_show_demo.rb +139 -0
- data/examples/text_demo2.rb +189 -0
- data/examples/ttfont_demo.rb +106 -0
- data/lib/hpdf.so +0 -0
- data/tests/arc_demo.rb +82 -0
- data/tests/demo.rb +91 -0
- data/tests/encryption.rb +41 -0
- data/tests/ext_gstater_demo.rb +171 -0
- data/tests/font_demo.rb +67 -0
- data/tests/line_demo.rb +301 -0
- data/tests/slide_show_demo.rb +139 -0
- data/tests/test_all_examples.rb +31 -0
- data/tests/text_demo2.rb +189 -0
- metadata +137 -0
@@ -0,0 +1,4751 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
<title>Haru Free PDF Library</title>
|
5
|
+
<meta http-equiv="Content-Type"
|
6
|
+
content="text/html; charset=iso-8859-1">
|
7
|
+
<link href="api.css" type="text/css" rel="stylesheet">
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div id="headcontainer">
|
11
|
+
<div class="head"><img alt="Haru Free PDF Library"
|
12
|
+
src="image/harulogo.png" style="width: 413px; height: 40px;"></div>
|
13
|
+
</div>
|
14
|
+
<div id="barcontainer">
|
15
|
+
<div class="buildbar"><a href="index.html">home</a> | <a
|
16
|
+
href="http://sourceforge.net/project/showfiles.php?group_id=83044">download</a>
|
17
|
+
|
|
18
|
+
<a href="documentation.html">documentation</a> | <a
|
19
|
+
href="examples.html">examples </a>| <a
|
20
|
+
href="http://sourceforge.net/projects/libharu/">sourceforge</a> |
|
21
|
+
<a href="http://sourceforge.net/forum/?group_id=83044">forums</a><br>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
<div id="container">
|
25
|
+
<div id="mainpage">
|
26
|
+
<div id="ccol">
|
27
|
+
<h2>Document Handling Functions<br>
|
28
|
+
</h2>
|
29
|
+
<h3><a name="HPDF_New_HPDF_NewEX_"></a>HPDF_New, HPDF_NewEX<br>
|
30
|
+
</h3>
|
31
|
+
<div class="bodytext1">
|
32
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
33
|
+
"apdf.h"<br>
|
34
|
+
<br>
|
35
|
+
HPDF_Doc<br>
|
36
|
+
HPDF_New (HPDF_Error_Handler user_error_fn,<br>
|
37
|
+
|
38
|
+
<span style="font-weight: bold;">void</span>
|
39
|
+
*user_data);<br>
|
40
|
+
<br>
|
41
|
+
HPDF_Doc<br>
|
42
|
+
HPDF_NewEx (HPDF_Error_Handler user_error_fn,<br>
|
43
|
+
|
44
|
+
HPDF_Alloc_Func user_alloc_fn,<br>
|
45
|
+
|
46
|
+
HPDF_Free_Func user_free_fn,<br>
|
47
|
+
|
48
|
+
HPDF_UINT
|
49
|
+
mem_pool_buf_size,<br>
|
50
|
+
|
51
|
+
<span style="font-weight: bold;">void</span>
|
52
|
+
*user_data);
|
53
|
+
</div>
|
54
|
+
<h4>Description<br>
|
55
|
+
</h4>
|
56
|
+
HPDF_New() and HPDF_NewEX() create an instance of a document object and
|
57
|
+
initialize it. <br>
|
58
|
+
<br>
|
59
|
+
<h4>Parameter</h4>
|
60
|
+
<span style="font-weight: bold;">user_error_fn</span>
|
61
|
+
<div class="bodytext5">Specify <a
|
62
|
+
href="error_handling.html#User-defined_error_handler_">user-defined
|
63
|
+
error handler</a> which is invoked when an error occurred.<br>
|
64
|
+
<br>
|
65
|
+
</div>
|
66
|
+
<span style="font-weight: bold;">user_alloc_fn</span>
|
67
|
+
<div class="bodytext5">Specify user-defined memory allocation
|
68
|
+
function. If NULL is specified,
|
69
|
+
malloc() is used.<br>
|
70
|
+
<br>
|
71
|
+
</div>
|
72
|
+
<span style="font-weight: bold;">user_free_fn</span>
|
73
|
+
<div class="bodytext5">Specify user-defined memory freeing function.
|
74
|
+
If NULL is specified,
|
75
|
+
free() is used.<br>
|
76
|
+
<br>
|
77
|
+
</div>
|
78
|
+
<span style="font-weight: bold;">mem_pool_buf_size</span>
|
79
|
+
<div class="bodytext5">On default setting, Haru does not use memory
|
80
|
+
pool. A memory allocation
|
81
|
+
function is called on demand from an application. If this parameter set
|
82
|
+
to non-zero value, a memory management will be done as following.<br>
|
83
|
+
<ul>
|
84
|
+
<li>A memory is allocated per mem_pool_buf_size.</li>
|
85
|
+
<li>Memory manager gives a memory of requested size to an
|
86
|
+
application. And pool the remaining memory to use at next request</li>
|
87
|
+
<li>If the size of requested memory is larger than the remaining
|
88
|
+
memory, a new memory block is allocated.</li>
|
89
|
+
<li>The unused memory is not released immediately. It is released all
|
90
|
+
together when HPDF_Free() is invoked.</li>
|
91
|
+
</ul>
|
92
|
+
</div>
|
93
|
+
<span style="font-weight: bold;">user_data</span>
|
94
|
+
<div class="bodytext5">Specify user-defind void pointer.This pointer
|
95
|
+
is used by error
|
96
|
+
handling. <br>
|
97
|
+
</div>
|
98
|
+
<br>
|
99
|
+
<h4>Returns</h4>
|
100
|
+
HPDF_New() and HPDF_NewEX() returns a handle of document object. If it
|
101
|
+
failed, it returns NULL.<br>
|
102
|
+
<br>
|
103
|
+
</div>
|
104
|
+
<h3><a name="HPDF_Free_"></a>HPDF_Free
|
105
|
+
</h3>
|
106
|
+
<div class="bodytext1">
|
107
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
108
|
+
<br>
|
109
|
+
HPDF_Doc<br>
|
110
|
+
HPDF_Free (HPDF_Doc pdf);
|
111
|
+
</div>
|
112
|
+
<h4>Description<br>
|
113
|
+
</h4>
|
114
|
+
HPDF_Free() revokes a document object and all resources. <br>
|
115
|
+
<br>
|
116
|
+
<h4>Parameter</h4>
|
117
|
+
<span style="font-weight: bold;">pdf</span>
|
118
|
+
<div class="bodytext5">Specify the handle of a document object.</div>
|
119
|
+
<br>
|
120
|
+
</div>
|
121
|
+
<h3><a name="HPDF_NewDoc_"></a>HPDF_NewDoc
|
122
|
+
</h3>
|
123
|
+
<div class="bodytext1">
|
124
|
+
<div class="bodycode2">#<span style="font-weight: bold;">include </span>"apdf.h"<br>
|
125
|
+
<br>
|
126
|
+
HPDF_STATUS<br>
|
127
|
+
HPDF_NewDoc (HPDF_Doc pdf);<br>
|
128
|
+
</div>
|
129
|
+
<h4>Description<br>
|
130
|
+
</h4>
|
131
|
+
HPDF_NewDoc() creates new document. If document object already has a
|
132
|
+
document, the current document is revoked.<br>
|
133
|
+
<br>
|
134
|
+
<h4>Parameter</h4>
|
135
|
+
<span style="font-weight: bold;">pdf</span>
|
136
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
137
|
+
</div>
|
138
|
+
<br>
|
139
|
+
<h4>Returns</h4>
|
140
|
+
When HPDF_NewDoc succeeds, it returns HPDF_OK. Otherwise, it returns
|
141
|
+
error-code and error-handler is called.<br>
|
142
|
+
<br>
|
143
|
+
<h4>Error</h4>
|
144
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
145
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
146
|
+
<br>
|
147
|
+
</div>
|
148
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
149
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
150
|
+
</div>
|
151
|
+
<br>
|
152
|
+
</div>
|
153
|
+
<h3><a name="HPDF_FreeDoc"></a>HPDF_FreeDoc、
|
154
|
+
HPDF_FreeDocAll
|
155
|
+
</h3>
|
156
|
+
<div class="bodytext1">
|
157
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
158
|
+
<apdf.h><br>
|
159
|
+
<br>
|
160
|
+
<span style="font-weight: bold;">void</span><br>
|
161
|
+
HPDF_FreeDoc (HPDF_Doc pdf);<br>
|
162
|
+
<br>
|
163
|
+
<span style="font-weight: bold;">void</span><br>
|
164
|
+
HPDF_FreeDocAll (HPDF_Doc pdf);<br>
|
165
|
+
</div>
|
166
|
+
<h4>Description<br>
|
167
|
+
</h4>
|
168
|
+
HPDF_FreeDoc(), HPDF_FreeDocAll() revokes the current document.
|
169
|
+
HPDF_FreeDoc() keeps loaded resource (such as fonts and encodings) and
|
170
|
+
these resources are recycled when new document required these
|
171
|
+
resources. HPDF_FreeDocAll() revokes the current document and all
|
172
|
+
resources.<br>
|
173
|
+
<br>
|
174
|
+
<h4>Parameter</h4>
|
175
|
+
<span style="font-weight: bold;">pdf</span>
|
176
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
177
|
+
</div>
|
178
|
+
<br>
|
179
|
+
</div>
|
180
|
+
<h3><a name="HPDF_SaveToFile_"></a>HPDF_SaveToFile<br>
|
181
|
+
</h3>
|
182
|
+
<div class="bodytext1">
|
183
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
184
|
+
<br>
|
185
|
+
HPDF_STATUS<br>
|
186
|
+
HPDF_SaveToFile (HPDF_Doc pdf,<br>
|
187
|
+
|
188
|
+
<span style="font-weight: bold;">const char</span> *file_name);<br>
|
189
|
+
</div>
|
190
|
+
<h4>Description<br>
|
191
|
+
</h4>
|
192
|
+
HPDF_SaveToFile() saves the current document to a file.<br>
|
193
|
+
<br>
|
194
|
+
<h4>Parameter</h4>
|
195
|
+
<span style="font-weight: bold;">pdf</span>
|
196
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
197
|
+
<br>
|
198
|
+
</div>
|
199
|
+
<span style="font-weight: bold;">file_name</span>
|
200
|
+
<div class="bodytext5">Specify the name of file to save.<br>
|
201
|
+
</div>
|
202
|
+
<br>
|
203
|
+
<h4>Returns</h4>
|
204
|
+
When
|
205
|
+
HPDF_SaveToFile() succeeds, it returns HPDF_OK. Otherwise, it returns
|
206
|
+
error-code and error-handler is called.<br>
|
207
|
+
<br>
|
208
|
+
<h4>Error</h4>
|
209
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
210
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
211
|
+
<br>
|
212
|
+
</div>
|
213
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
214
|
+
<br>
|
215
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
216
|
+
<br>
|
217
|
+
</div>
|
218
|
+
<span style="font-weight: bold;">HPDF_FILE_IO_ERROR</span><br>
|
219
|
+
<div class="bodytext5">An error occurred while processing file I/O.<br>
|
220
|
+
<br>
|
221
|
+
</div>
|
222
|
+
</div>
|
223
|
+
<br>
|
224
|
+
<h3><a name="HPDF_SaveToStream_"></a>HPDF_SaveToStream<br>
|
225
|
+
</h3>
|
226
|
+
<div class="bodytext1">
|
227
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
228
|
+
<br>
|
229
|
+
HPDF_STATUS<br>
|
230
|
+
HPDF_SaveToStream (HPDF_Doc pdf);<br>
|
231
|
+
</div>
|
232
|
+
<h4>Description<br>
|
233
|
+
</h4>
|
234
|
+
HPDF_SaveToStream() saves the current document to a temporary stream of
|
235
|
+
a document object.<br>
|
236
|
+
<br>
|
237
|
+
<h4>Parameter</h4>
|
238
|
+
<span style="font-weight: bold;">pdf</span>
|
239
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
240
|
+
</div>
|
241
|
+
<br>
|
242
|
+
<h4>Returns</h4>
|
243
|
+
When
|
244
|
+
HPDF_SaveToStream() succeeds, it returns HPDF_OK. Otherwise, it returns
|
245
|
+
error-code and error-handler is called.<br>
|
246
|
+
<br>
|
247
|
+
<h4>Error</h4>
|
248
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
249
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
250
|
+
<br>
|
251
|
+
</div>
|
252
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
253
|
+
<br>
|
254
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
255
|
+
</div>
|
256
|
+
</div>
|
257
|
+
<br>
|
258
|
+
<h3><a name="HPDF_GetStreamSize_"></a>HPDF_GetStreamSize<br>
|
259
|
+
</h3>
|
260
|
+
<div class="bodytext1">
|
261
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
262
|
+
<br>
|
263
|
+
HPDF_UINT32<br>
|
264
|
+
HPDF_GetStreamSize (HPDF_Doc pdf);<br>
|
265
|
+
</div>
|
266
|
+
<h4>Description<br>
|
267
|
+
</h4>
|
268
|
+
HPDF_GetStreamSize() gets the size of the temporary stream of the
|
269
|
+
document.<br>
|
270
|
+
<br>
|
271
|
+
<h4>Parameter</h4>
|
272
|
+
<span style="font-weight: bold;">pdf</span>
|
273
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
274
|
+
</div>
|
275
|
+
<br>
|
276
|
+
<h4>Returns</h4>
|
277
|
+
When
|
278
|
+
HPDF_GetStreamSize() succeeds, it returns the size of the temporary
|
279
|
+
stream of the document. Otherwise, it returns 0.<br>
|
280
|
+
<br>
|
281
|
+
<h4>Error</h4>
|
282
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
283
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
284
|
+
</div>
|
285
|
+
</div>
|
286
|
+
<br>
|
287
|
+
<h3><a name="HPDF_ReadFromStream_"></a>HPDF_ReadFromStream<br>
|
288
|
+
</h3>
|
289
|
+
<div class="bodytext1">
|
290
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
291
|
+
<br>
|
292
|
+
HPDF_STATUS<br>
|
293
|
+
HPDF_ReadFromStream (HPDF_Doc
|
294
|
+
pdf,<br>
|
295
|
+
|
296
|
+
HPDF_BYTE *buf,<br>
|
297
|
+
|
298
|
+
HPDF_UINT32 *size)<br>
|
299
|
+
</div>
|
300
|
+
<h4>Description<br>
|
301
|
+
</h4>
|
302
|
+
HPDF_ReadFromStream() copies the data from the temporary stream of the
|
303
|
+
document into the buffer.<br>
|
304
|
+
<br>
|
305
|
+
<h4>Parameter</h4>
|
306
|
+
<span style="font-weight: bold;">pdf</span>
|
307
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
308
|
+
<br>
|
309
|
+
</div>
|
310
|
+
<span style="font-weight: bold;">buf</span><br>
|
311
|
+
<div class="bodytext5">A pointer of the buffer.<br>
|
312
|
+
<br>
|
313
|
+
</div>
|
314
|
+
<span style="font-weight: bold;">size</span><br>
|
315
|
+
<div class="bodytext5">Specifiy the size of buffer. After
|
316
|
+
HPDF_ReadFromStream() is execute, the number of bytes that succeeds in
|
317
|
+
reading is set.<br>
|
318
|
+
</div>
|
319
|
+
<br>
|
320
|
+
<h4>Returns</h4>
|
321
|
+
When
|
322
|
+
HPDF_ReadFromStream() succeeds, it returns HPDF_OK or HPDF_STREAM_EOF.
|
323
|
+
Otherwise, it returns error-code and error-handler is invoked.<br>
|
324
|
+
<br>
|
325
|
+
<div class="bodynote">NOTE:
|
326
|
+
<br>
|
327
|
+
Even if the result of HPDF_ReadFromStream() is HPDF_EOF, if the value
|
328
|
+
of size parameter is more than 0, data is read into the buffer. </div>
|
329
|
+
|
330
|
+
<br>
|
331
|
+
<h4>Error</h4>
|
332
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT<br>
|
333
|
+
</span>
|
334
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
335
|
+
<br>
|
336
|
+
</div>
|
337
|
+
<span style="font-weight: bold;">HPDF_INVALID_OPERATION</span><br>
|
338
|
+
<div class="bodytext5">No data is saved to the temporary stream of the
|
339
|
+
document.<br>
|
340
|
+
<br>
|
341
|
+
</div>
|
342
|
+
<span style="font-weight: bold;">HPDF_INVALID_PARAMETER</span>
|
343
|
+
<div class="bodytext5">An invalid value was set to 'size' parameter.<br>
|
344
|
+
</div>
|
345
|
+
</div>
|
346
|
+
<br>
|
347
|
+
<h3><a name="HPDF_ResetStream_"></a>HPDF_ResetStream<br>
|
348
|
+
</h3>
|
349
|
+
<br>
|
350
|
+
<div class="bodytext1">
|
351
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
352
|
+
<br>
|
353
|
+
HPDF_STATUS<br>
|
354
|
+
HPDF_ResetStream (HPDF_Doc pdf);<br>
|
355
|
+
<br>
|
356
|
+
</div>
|
357
|
+
<h4>Description<br>
|
358
|
+
</h4>
|
359
|
+
HPDF_ResetStream() rewinds the temporary stream of the document.<br>
|
360
|
+
<br>
|
361
|
+
<h4>Parameter</h4>
|
362
|
+
<span style="font-weight: bold;">pdf</span>
|
363
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
364
|
+
</div>
|
365
|
+
<br>
|
366
|
+
<h4>Returns</h4>
|
367
|
+
When
|
368
|
+
HPDF_ResetStream() succeeds, it returns HPDF_OK.
|
369
|
+
Otherwise, it returns error-code and error-handler is invoked.<br>
|
370
|
+
|
371
|
+
<br>
|
372
|
+
<h4>Error</h4>
|
373
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT
|
374
|
+
</span>
|
375
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
376
|
+
<br>
|
377
|
+
</div>
|
378
|
+
<span style="font-weight: bold;">HPDF_INVALID_OPERATION</span>
|
379
|
+
<div class="bodytext5">No data is saved to the temporary stream of the
|
380
|
+
document.<br>
|
381
|
+
</div>
|
382
|
+
<br>
|
383
|
+
</div>
|
384
|
+
<h3><a name="HPDF_HasDoc"></a>HPDF_HasDoc</h3>
|
385
|
+
<div class="bodytext1">
|
386
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
387
|
+
<apdf.h><br>
|
388
|
+
<br>
|
389
|
+
HPDF_BOOL<br>
|
390
|
+
HPDF_HasDoc (HPDF_Doc pdf);<br>
|
391
|
+
</div>
|
392
|
+
<h4>Description<br>
|
393
|
+
</h4>
|
394
|
+
HPDF_SaveToFile() saves the current document to a file.<br>
|
395
|
+
<br>
|
396
|
+
<h4>Parameter</h4>
|
397
|
+
<span style="font-weight: bold;">pdf</span>
|
398
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
399
|
+
<br>
|
400
|
+
</div>
|
401
|
+
<span style="font-weight: bold;">file_name</span>
|
402
|
+
<div class="bodytext5">Specify the name of file to save.<br>
|
403
|
+
</div>
|
404
|
+
<br>
|
405
|
+
<h4>Returns</h4>
|
406
|
+
If the spacified document handle is valid, it returns HPDF_TRUE.
|
407
|
+
Otherwise, it returns
|
408
|
+
error-code and error-handler is called.<br>
|
409
|
+
<br>
|
410
|
+
<h4>Error</h4>
|
411
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
412
|
+
<div class="bodytext5">An invalid document handle is set.</div>
|
413
|
+
<br>
|
414
|
+
</div>
|
415
|
+
<h3><a name="HPDF_SetErrorHandler_"></a>HPDF_SetErrorHandler<br>
|
416
|
+
</h3>
|
417
|
+
<div class="bodytext1">
|
418
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
419
|
+
<apdf.h><br>
|
420
|
+
<br>
|
421
|
+
HPDF_STATUS<br>
|
422
|
+
HPDF_SetErrorHandler
|
423
|
+
(HPDF_Doc
|
424
|
+
pdf,<br>
|
425
|
+
|
426
|
+
HPDF_Error_Handler user_error_fn);<br>
|
427
|
+
</div>
|
428
|
+
<h4>Description<br>
|
429
|
+
</h4>
|
430
|
+
HPDF_SetErrorHandler() sets an user-defined error handler. If a
|
431
|
+
function call fails, the function this error handler is called.<br>
|
432
|
+
<br>
|
433
|
+
<br>
|
434
|
+
<h4>Parameter</h4>
|
435
|
+
<span style="font-weight: bold;">pdf</span>
|
436
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
437
|
+
<br>
|
438
|
+
</div>
|
439
|
+
<span style="font-weight: bold;">user_error_fn</span>
|
440
|
+
<div class="bodytext5">Specify <a
|
441
|
+
href="error_handling.html#User-defined_error_handler_">user-defined
|
442
|
+
error handler</a> which is invoked when an error occurred. If this
|
443
|
+
parameter is set to NULL, the error-handler which has been set is
|
444
|
+
revoked.
|
445
|
+
</div>
|
446
|
+
<br>
|
447
|
+
<h4>Returns</h4>
|
448
|
+
When HPDF_SaveToFile() succeeds, it returns HPDF_OK. Otherwise,
|
449
|
+
it returns error-code and error-handler is called.<br>
|
450
|
+
<br>
|
451
|
+
<h4>Error</h4>
|
452
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
453
|
+
<div class="bodytext5">An invalid document handle is set.</div>
|
454
|
+
<br>
|
455
|
+
</div>
|
456
|
+
<h3><a name="HPDF_GetError_"></a>HPDF_GetError<br>
|
457
|
+
</h3>
|
458
|
+
<div class="bodytext1">
|
459
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
460
|
+
<apdf.h><br>
|
461
|
+
<br>
|
462
|
+
HPDF_STATUS<br>
|
463
|
+
HPDF_GetError (HPDF_Doc pdf);<br>
|
464
|
+
<br>
|
465
|
+
</div>
|
466
|
+
<h4>Description<br>
|
467
|
+
</h4>
|
468
|
+
HPDF_GetError returns the last-error code of specified PdfDoc object.<br>
|
469
|
+
<br>
|
470
|
+
<h4>Parameter</h4>
|
471
|
+
<span style="font-weight: bold;">pdf</span>
|
472
|
+
<div class="bodytext5">Specify the handle of a document object</div>
|
473
|
+
<br>
|
474
|
+
<h4>Returns</h4>
|
475
|
+
HPDF_GetError returns the last-error code of specified PdfDoc object.<br>
|
476
|
+
If there is no error, it returns HPDF_OK.<br>
|
477
|
+
<br>
|
478
|
+
<h4>Error</h4>
|
479
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
480
|
+
<div class="bodytext5">An invalid document handle is set.</div>
|
481
|
+
<br>
|
482
|
+
</div>
|
483
|
+
<h3><a name="HPDF_ResetError_"></a>HPDF_ResetError<br>
|
484
|
+
</h3>
|
485
|
+
<div class="bodytext1">
|
486
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
487
|
+
<apdf.h><br>
|
488
|
+
<br>
|
489
|
+
<span style="font-weight: bold;">void</span><br>
|
490
|
+
HPDF_ResetError (HPDF_Doc pdf);<br>
|
491
|
+
<br>
|
492
|
+
</div>
|
493
|
+
<h4>Description<br>
|
494
|
+
</h4>
|
495
|
+
Once an error code is set, IO processing functions cannot be invoked.<br>
|
496
|
+
In the case of executing a function after the cause of the error is
|
497
|
+
fixed, an application have to invoke HPDF_ResetError to clear
|
498
|
+
error-code before executing functions.<br>
|
499
|
+
<br>
|
500
|
+
<h4>Parameter</h4>
|
501
|
+
<span style="font-weight: bold;">pdf</span>
|
502
|
+
<div class="bodytext5">Specify the handle of a document object</div>
|
503
|
+
<br>
|
504
|
+
</div>
|
505
|
+
<h3><a name="HPDF_SetPagesConfiguration_"></a>HPDF_SetPagesConfiguration<br>
|
506
|
+
</h3>
|
507
|
+
<div class="bodytext1">
|
508
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
509
|
+
<apdf.h><br>
|
510
|
+
<br>
|
511
|
+
HPDF_STATUS<br>
|
512
|
+
HPDF_SetPagesConfiguration (HPDF_Doc pdf,<br>
|
513
|
+
|
514
|
+
HPDF_UINT page_per_pages);<br>
|
515
|
+
<br>
|
516
|
+
</div>
|
517
|
+
<h4>Description<br>
|
518
|
+
</h4>
|
519
|
+
In the default setting, a HPDF_Doc object has one "Pages" object as
|
520
|
+
root of pages. All "Page" objects are created as a kid of the "Pages"
|
521
|
+
object.<br>
|
522
|
+
Since a "Pages" object can own only 8191 kids objects, the maximum
|
523
|
+
number of pages are 8191 page.<br>
|
524
|
+
<br>
|
525
|
+
<img alt="figure7.png" src="image/figure7.png"
|
526
|
+
style="width: 302px; height: 143px;"><br>
|
527
|
+
Additionally, the state that there are a lot of "Page" object
|
528
|
+
under one "Pages" object is not good, because it causes performance
|
529
|
+
degradation of a viewer application.<br>
|
530
|
+
<br>
|
531
|
+
An application can change the setting of a pages tree by invoking
|
532
|
+
HPDF_SetPagesConfiguration(). If page_per_pages parameter is set to
|
533
|
+
more than zero, a two-tier pages tree is created. A root "Pages" object
|
534
|
+
can own 8191 "Pages" object, and each lower "Pages" object can own
|
535
|
+
page_per_pages "Page" objects. As a result, the maximum number of pages
|
536
|
+
becomes 8191 * page_per_pages page.<br>
|
537
|
+
<br>
|
538
|
+
<img alt="figure8" src="image/figure8.png"
|
539
|
+
style="width: 471px; height: 202px;"><br>
|
540
|
+
An application cannot invoke HPDF_SetPageConfiguration() after a page
|
541
|
+
is
|
542
|
+
added to document.<br>
|
543
|
+
<br>
|
544
|
+
<h4>Parameter</h4>
|
545
|
+
<span style="font-weight: bold;">pdf</span>
|
546
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
547
|
+
<br>
|
548
|
+
</div>
|
549
|
+
<span style="font-weight: bold;">page_per_pages</span><br>
|
550
|
+
<div class="bodytext5">Specify the numbers of pages that a "Pages"
|
551
|
+
object can own.<br>
|
552
|
+
</div>
|
553
|
+
<br>
|
554
|
+
<h4>Returns</h4>
|
555
|
+
When HPDF_SetPageConfiguration() succeeds, it returns HPDF_OK.
|
556
|
+
Otherwise,
|
557
|
+
it returns error-code and error-handler is called.<br>
|
558
|
+
<br>
|
559
|
+
<h4>Error</h4>
|
560
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
561
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
562
|
+
<br>
|
563
|
+
</div>
|
564
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT_STATE</span><br>
|
565
|
+
<div class="bodytext5">A page object already exists in a document.<br>
|
566
|
+
<br>
|
567
|
+
</div>
|
568
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
569
|
+
<br>
|
570
|
+
<div class="bodytext5">Memory Allocation Failed.
|
571
|
+
</div>
|
572
|
+
</div>
|
573
|
+
<br>
|
574
|
+
<h3>HPDF_SetPageLayout<br>
|
575
|
+
</h3>
|
576
|
+
<div class="bodytext1">
|
577
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
578
|
+
<apdf.h><br>
|
579
|
+
<br>
|
580
|
+
HPDF_STATUS<br>
|
581
|
+
HPDF_SetPageLayout
|
582
|
+
(HPDF_Doc pdf,<br>
|
583
|
+
|
584
|
+
HPDF_PageLayout layout);<br>
|
585
|
+
<br>
|
586
|
+
</div>
|
587
|
+
<h4>Description<br>
|
588
|
+
</h4>
|
589
|
+
HPDF_SetPageLayout() sets how the page should be displayed. If this
|
590
|
+
attribute is not set, the setting of a viewer application is used.<br>
|
591
|
+
<br>
|
592
|
+
<h4>Parameter</h4>
|
593
|
+
<span style="font-weight: bold;">pdf</span>
|
594
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
595
|
+
<br>
|
596
|
+
</div>
|
597
|
+
<span style="font-weight: bold;">layout<br>
|
598
|
+
</span>
|
599
|
+
<div class="bodytext5">The following values are available.<br>
|
600
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="2"
|
601
|
+
cellspacing="2">
|
602
|
+
<tbody>
|
603
|
+
<tr>
|
604
|
+
<td
|
605
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);"><span
|
606
|
+
style="font-weight: bold;">Value</span><br>
|
607
|
+
</td>
|
608
|
+
<td
|
609
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);"><span
|
610
|
+
style="font-weight: bold;">Description</span><br>
|
611
|
+
</td>
|
612
|
+
</tr>
|
613
|
+
<tr>
|
614
|
+
<td style="vertical-align: top;">HPDF_PAGE_LAYOUT_SINGLE<br>
|
615
|
+
</td>
|
616
|
+
<td style="vertical-align: top;">Only one page is displayed.<br>
|
617
|
+
</td>
|
618
|
+
</tr>
|
619
|
+
<tr>
|
620
|
+
<td style="vertical-align: top;">HPDF_PAGE_LAYOUT_ONE_COLUMN<br>
|
621
|
+
</td>
|
622
|
+
<td style="vertical-align: top;">Display the pages in one column.<br>
|
623
|
+
</td>
|
624
|
+
</tr>
|
625
|
+
<tr>
|
626
|
+
<td style="vertical-align: top;">HPDF_PAGE_LAYOUT_TWO_COLUMN_LEFT<br>
|
627
|
+
</td>
|
628
|
+
<td style="vertical-align: top;">Display the pages in two column.
|
629
|
+
The page of the odd number is displayed left. <br>
|
630
|
+
</td>
|
631
|
+
</tr>
|
632
|
+
<tr>
|
633
|
+
<td style="vertical-align: top;">HPDF_PAGE_LAYOUT_TWO_COLUMN_RIGHT<br>
|
634
|
+
</td>
|
635
|
+
<td style="vertical-align: top;">Display the pages in two column.
|
636
|
+
The page of the odd number is displayed right. <br>
|
637
|
+
</td>
|
638
|
+
</tr>
|
639
|
+
</tbody>
|
640
|
+
</table>
|
641
|
+
<br>
|
642
|
+
</div>
|
643
|
+
<h4>Returns</h4>
|
644
|
+
When HPDF_SetPageLayout() succeeds, it returns HPDF_OK.
|
645
|
+
Otherwise,
|
646
|
+
it returns error-code and error-handler is called.<br>
|
647
|
+
<br>
|
648
|
+
<h4>Error</h4>
|
649
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
650
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
651
|
+
<br>
|
652
|
+
</div>
|
653
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
654
|
+
<br>
|
655
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
656
|
+
<br>
|
657
|
+
</div>
|
658
|
+
<span style="font-weight: bold;">HPDF_PAGE_LAYOUT_OUT_OF_RANGE<br>
|
659
|
+
</span>
|
660
|
+
<div class="bodytext5">An invalid page layout is specified.<br>
|
661
|
+
</div>
|
662
|
+
</div>
|
663
|
+
<br>
|
664
|
+
<h3><a name="HPDF_GetPageLayout_"></a>HPDF_GetPageLayout<br>
|
665
|
+
</h3>
|
666
|
+
<div class="bodytext1">
|
667
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
668
|
+
<apdf.h><br>
|
669
|
+
<br>
|
670
|
+
HPDF_PageLayout<br>
|
671
|
+
HPDF_GetPageLayout (HPDF_Doc pdf);<br>
|
672
|
+
</div>
|
673
|
+
<h4>Description<br>
|
674
|
+
</h4>
|
675
|
+
HPDF_GetPageLayout() returns the current setting for page layout.<br>
|
676
|
+
<h4>Parameter</h4>
|
677
|
+
<span style="font-weight: bold;">pdf</span>
|
678
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
679
|
+
</div>
|
680
|
+
<h4>Returns</h4>
|
681
|
+
When HPDF_GetPageLayout() succeeds, it returns the current
|
682
|
+
setting for page layout. If page layout is not set, it returns
|
683
|
+
HPDF_PAGE_LAYOUT_EOF<br>
|
684
|
+
</div>
|
685
|
+
<br>
|
686
|
+
<h3><a name="HPDF_SetPageMode_"></a>HPDF_SetPageMode<br>
|
687
|
+
</h3>
|
688
|
+
<div class="bodytext1">
|
689
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
690
|
+
"apdf.h"<br>
|
691
|
+
<br>
|
692
|
+
HPDF_STATUS<br>
|
693
|
+
HPDF_SetPageMode
|
694
|
+
(HPDF_Doc pdf,<br>
|
695
|
+
|
696
|
+
HPDF_PageMode mode);<br>
|
697
|
+
<br>
|
698
|
+
</div>
|
699
|
+
<h4>Description<br>
|
700
|
+
</h4>
|
701
|
+
HPDF_SetPageMode() sets how the document should be displayed. <br>
|
702
|
+
<br>
|
703
|
+
<h4>Parameter</h4>
|
704
|
+
<span style="font-weight: bold;">pdf</span>
|
705
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
706
|
+
<br>
|
707
|
+
</div>
|
708
|
+
<span style="font-weight: bold;">mode<br>
|
709
|
+
</span>
|
710
|
+
<div class="bodytext5">The following values are available.<br>
|
711
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="2"
|
712
|
+
cellspacing="2">
|
713
|
+
<tbody>
|
714
|
+
<tr>
|
715
|
+
<td
|
716
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);"><span
|
717
|
+
style="font-weight: bold;">Value</span><br>
|
718
|
+
</td>
|
719
|
+
<td
|
720
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);"><span
|
721
|
+
style="font-weight: bold;">Description</span><br>
|
722
|
+
</td>
|
723
|
+
</tr>
|
724
|
+
<tr>
|
725
|
+
<td style="vertical-align: top;">HPDF_PAGE_MODE_USE_NONE<br>
|
726
|
+
</td>
|
727
|
+
<td style="vertical-align: top;">Display the document with
|
728
|
+
neither outline nor thumbnail. </td>
|
729
|
+
</tr>
|
730
|
+
<tr>
|
731
|
+
<td style="vertical-align: top;">HPDF_PAGE_MODE_USE_OUTLINE<br>
|
732
|
+
</td>
|
733
|
+
<td style="vertical-align: top;">Display the document with
|
734
|
+
outline pain.<br>
|
735
|
+
</td>
|
736
|
+
</tr>
|
737
|
+
<tr>
|
738
|
+
<td style="vertical-align: top;">HPDF_PAGE_MODE_USE_THUMBS<br>
|
739
|
+
</td>
|
740
|
+
<td style="vertical-align: top;">Display the document with
|
741
|
+
thumbnail pain.<br>
|
742
|
+
</td>
|
743
|
+
</tr>
|
744
|
+
<tr>
|
745
|
+
<td style="vertical-align: top;">HPDF_PAGE_MODE_FULL_SCREEN<br>
|
746
|
+
</td>
|
747
|
+
<td style="vertical-align: top;">Display the document with full
|
748
|
+
screen mode. <br>
|
749
|
+
</td>
|
750
|
+
</tr>
|
751
|
+
</tbody>
|
752
|
+
</table>
|
753
|
+
<br>
|
754
|
+
</div>
|
755
|
+
<h4>Returns</h4>
|
756
|
+
When HPDF_SetPageMode() succeeds, it returns HPDF_OK.
|
757
|
+
Otherwise,
|
758
|
+
it returns error-code and error-handler is called.<br>
|
759
|
+
<br>
|
760
|
+
<h4>Error</h4>
|
761
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
762
|
+
<div class="bodytext5">An invalid document handle is set.<br>
|
763
|
+
<br>
|
764
|
+
</div>
|
765
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
766
|
+
<br>
|
767
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
768
|
+
<br>
|
769
|
+
</div>
|
770
|
+
<span style="font-weight: bold;">HPDF_PAGE_MODE_OUT_OF_RANGE<br>
|
771
|
+
</span>
|
772
|
+
<div class="bodytext5">An invalid page mode is specified.<br>
|
773
|
+
</div>
|
774
|
+
</div>
|
775
|
+
<br>
|
776
|
+
<h3><a name="HPDF_GetPageMode_"></a>HPDF_GetPageMode<br>
|
777
|
+
</h3>
|
778
|
+
<div class="bodytext1">
|
779
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
780
|
+
"apdf.h"<br>
|
781
|
+
<br>
|
782
|
+
HPDF_PageMode<br>
|
783
|
+
HPDF_GetPageMode (HPDF_Doc pdf);<br>
|
784
|
+
</div>
|
785
|
+
<h4>Description<br>
|
786
|
+
</h4>
|
787
|
+
HPDF_GetPageLayout() returns the current setting for page mode.<br>
|
788
|
+
<h4>Parameter</h4>
|
789
|
+
<span style="font-weight: bold;">pdf</span>
|
790
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
791
|
+
</div>
|
792
|
+
<h4>Returns</h4>
|
793
|
+
When HPDF_GetPageMode() succeeds, it returns the current
|
794
|
+
setting for page mode. <br>
|
795
|
+
</div>
|
796
|
+
<br>
|
797
|
+
<h3><a name="HPDF_SetOpenAction_"></a>HPDF_SetOpenAction<br>
|
798
|
+
</h3>
|
799
|
+
<div class="bodytext1">
|
800
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
801
|
+
<br>
|
802
|
+
HPDF_STATUS<br>
|
803
|
+
HPDF_SetOpenAction
|
804
|
+
(HPDF_Doc
|
805
|
+
pdf,<br>
|
806
|
+
|
807
|
+
HPDF_Destination open_action);<br>
|
808
|
+
</div>
|
809
|
+
<h4>Description<br>
|
810
|
+
</h4>
|
811
|
+
HPDF_SetOpenAction() set the first page appears when a document is
|
812
|
+
opened. <br>
|
813
|
+
<br>
|
814
|
+
<h4>Parameter</h4>
|
815
|
+
<span style="font-weight: bold;">pdf</span>
|
816
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
817
|
+
<br>
|
818
|
+
</div>
|
819
|
+
<span style="font-weight: bold;">open_action</span>
|
820
|
+
<div class="bodytext5">Set a valid destination object.<br>
|
821
|
+
</div>
|
822
|
+
<br>
|
823
|
+
<h4>Returns</h4>
|
824
|
+
When HPDF_SetOpenAction() succeeds, it returns HPDF_OK.
|
825
|
+
Otherwise, it returns
|
826
|
+
error-code and error-handler is called.<br>
|
827
|
+
<br>
|
828
|
+
<h4>Error</h4>
|
829
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
830
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
831
|
+
<br>
|
832
|
+
</div>
|
833
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
834
|
+
<br>
|
835
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
836
|
+
<br>
|
837
|
+
</div>
|
838
|
+
<span style="font-weight: bold;">HPDF_INVALID_DESTINATION</span><br>
|
839
|
+
<div class="bodytext5">An invalid destination object was set.<br>
|
840
|
+
</div>
|
841
|
+
</div>
|
842
|
+
<br>
|
843
|
+
<h3><a name="HPDF_GetCurrentPage_"></a>HPDF_GetCurrentPage<br>
|
844
|
+
</h3>
|
845
|
+
<div class="bodytext1">
|
846
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include</span>
|
847
|
+
<apdf.h><br>
|
848
|
+
<br>
|
849
|
+
HPDF_Page<br>
|
850
|
+
HPDF_GetCurrentPage (HPDF_Doc pdf);<br>
|
851
|
+
</div>
|
852
|
+
<h4>Description<br>
|
853
|
+
</h4>
|
854
|
+
HPDF_GetPageLayout() returns the handle of current page object.<br>
|
855
|
+
<br>
|
856
|
+
<h4>Parameter</h4>
|
857
|
+
<span style="font-weight: bold;">pdf</span>
|
858
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
859
|
+
</div>
|
860
|
+
<h4>Returns</h4>
|
861
|
+
When HPDF_GetPageLayout() succeeds, it returns the handle of a
|
862
|
+
current page object. Otherwise it returns NULL.<br>
|
863
|
+
</div>
|
864
|
+
<br>
|
865
|
+
<h3><a name="HPDF_AddPage"></a>HPDF_AddPage</h3>
|
866
|
+
<div class="bodytext1">
|
867
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
868
|
+
<br>
|
869
|
+
HPDF_Page<br>
|
870
|
+
HPDF_AddPage (HPDF_Doc pdf);<br>
|
871
|
+
</div>
|
872
|
+
<h4>Description<br>
|
873
|
+
</h4>
|
874
|
+
HPDF_AddPage() creates a new page and adds it after the last page of a
|
875
|
+
document. <br>
|
876
|
+
<br>
|
877
|
+
<h4>Parameter</h4>
|
878
|
+
<span style="font-weight: bold;">pdf</span>
|
879
|
+
<div class="bodytext5">Specify the handle of a document object<br>
|
880
|
+
</div>
|
881
|
+
<br>
|
882
|
+
<h4>Returns</h4>
|
883
|
+
When HPDF_AddPage() succeeds, it returns the handle of created
|
884
|
+
page object. Otherwise, it returns
|
885
|
+
error-code and error-handler is called.<br>
|
886
|
+
<br>
|
887
|
+
<h4>Error</h4>
|
888
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
889
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
890
|
+
<br>
|
891
|
+
</div>
|
892
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span>
|
893
|
+
<br>
|
894
|
+
<div class="bodytext5">Memory Allocation Failed.
|
895
|
+
</div>
|
896
|
+
</div>
|
897
|
+
<br>
|
898
|
+
<h3><a name="HPDF_InsertPage"></a>HPDF_InsertPage</h3>
|
899
|
+
<div class="bodytext1">
|
900
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span><apdf.h><br>
|
901
|
+
<br>
|
902
|
+
HPDF_Page<br>
|
903
|
+
HPDF_InsertPage (HPDF_Doc pdf,<br>
|
904
|
+
|
905
|
+
HPDF_Page target)<br>
|
906
|
+
</div>
|
907
|
+
<h4>Description<br>
|
908
|
+
</h4>
|
909
|
+
HPDF_InsertPage() creates a new page and inserts it just before the
|
910
|
+
specified page. <br>
|
911
|
+
<br>
|
912
|
+
<h4>Parameter</h4>
|
913
|
+
<span style="font-weight: bold;">pdf</span>
|
914
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
915
|
+
<br>
|
916
|
+
</div>
|
917
|
+
<span style="font-weight: bold;">page
|
918
|
+
</span>
|
919
|
+
<div class="bodytext5">Specify the handle of a page object which
|
920
|
+
specifies the insertion place.<br>
|
921
|
+
</div>
|
922
|
+
<br>
|
923
|
+
<h4>Returns</h4>
|
924
|
+
When HPDF_InsertPage() succeeds, it returns the handle of created
|
925
|
+
page object. Otherwise, it returns NULL and error-handler is called.<br>
|
926
|
+
<br>
|
927
|
+
<h4>Error</h4>
|
928
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
929
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
930
|
+
<br>
|
931
|
+
</div>
|
932
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
933
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
934
|
+
<br>
|
935
|
+
</div>
|
936
|
+
<span style="font-weight: bold;">HPDF_INVALID_PAGE</span><br>
|
937
|
+
<div class="bodytext5">An invalid page handle was set.
|
938
|
+
</div>
|
939
|
+
</div>
|
940
|
+
<br>
|
941
|
+
<h3><a name="HPDF_GetFont"></a>HPDF_GetFont</h3>
|
942
|
+
<div class="bodytext1">
|
943
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
944
|
+
<br>
|
945
|
+
HPDF_Font<br>
|
946
|
+
HPDF_GetFont (HPDF_Doc pdf,<br>
|
947
|
+
|
948
|
+
<span style="font-weight: bold;">const </span>char *font_name,<br>
|
949
|
+
|
950
|
+
<span style="font-weight: bold;">const </span>char
|
951
|
+
*encoding_name);<br>
|
952
|
+
<br>
|
953
|
+
</div>
|
954
|
+
<h4>Description<br>
|
955
|
+
</h4>
|
956
|
+
HPDF_GetFont gets the handle of a corresponding font object by
|
957
|
+
specified name and encoding.<br>
|
958
|
+
<br>
|
959
|
+
<h4>Parameter</h4>
|
960
|
+
<span style="font-weight: bold;">pdf</span>
|
961
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
962
|
+
<br>
|
963
|
+
</div>
|
964
|
+
<span style="font-weight: bold;">font_name
|
965
|
+
</span>
|
966
|
+
<div class="bodytext5">Specify a valid font name. (See "<a
|
967
|
+
href="fonts.html">Fonts and Encodings</a>")<br>
|
968
|
+
<br>
|
969
|
+
</div>
|
970
|
+
<span style="font-weight: bold;">encoding_name
|
971
|
+
</span><br>
|
972
|
+
<div class="bodytext5">Specify a valid encoding name. (See "<a
|
973
|
+
href="fonts.html">Fonts and Encodings</a>")<br>
|
974
|
+
<br>
|
975
|
+
</div>
|
976
|
+
<h4>Returns</h4>
|
977
|
+
When HPDF_GetFont() succeeds, it returns the handle of a font
|
978
|
+
object. Otherwise, it returns NULL and error-handler is called.<br>
|
979
|
+
<br>
|
980
|
+
<h4>Error</h4>
|
981
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
982
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
983
|
+
<br>
|
984
|
+
</div>
|
985
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
986
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
987
|
+
<br>
|
988
|
+
</div>
|
989
|
+
<span style="font-weight: bold;">HPDF_INVALID_FONT_NAME,
|
990
|
+
HPDF_UNSUPPORTED_FONT_TYPE
|
991
|
+
</span>
|
992
|
+
<div class="bodytext5">An invalid font name was set.<br>
|
993
|
+
<br>
|
994
|
+
</div>
|
995
|
+
<span style="font-weight: bold;">HPDF_INVALID_ENCODING_NAME</span><br>
|
996
|
+
<div class="bodytext5">An invalid encoding name was set.
|
997
|
+
</div>
|
998
|
+
</div>
|
999
|
+
<br>
|
1000
|
+
<h3><a name="HPDF_LoadType1FontFromFile"></a>HPDF_LoadType1FontFromFile</h3>
|
1001
|
+
<div class="bodytext1">
|
1002
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1003
|
+
<br>
|
1004
|
+
<span style="font-weight: bold;">const </span>char*<br>
|
1005
|
+
HPDF_LoadType1FontFromFile (HPDF_Doc pdf,<br>
|
1006
|
+
|
1007
|
+
<span style="font-weight: bold;">const </span>char *afmfilename,<br>
|
1008
|
+
|
1009
|
+
<span style="font-weight: bold;">const </span>char *pfmfilename);<br>
|
1010
|
+
<br>
|
1011
|
+
</div>
|
1012
|
+
<h4>Description<br>
|
1013
|
+
</h4>
|
1014
|
+
HPDF_LoadType1FontFromFile loads a type1 font from an external file and
|
1015
|
+
register it to a
|
1016
|
+
document object. (See "<a href="fonts.html">Fonts
|
1017
|
+
and Encodings</a>")<br>
|
1018
|
+
<br>
|
1019
|
+
<h4>Parameter</h4>
|
1020
|
+
<span style="font-weight: bold;">pdf</span>
|
1021
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
1022
|
+
<br>
|
1023
|
+
</div>
|
1024
|
+
<span style="font-weight: bold;">afm_file_name
|
1025
|
+
</span>
|
1026
|
+
<div class="bodytext5">A path of an AFM file. <br>
|
1027
|
+
<br>
|
1028
|
+
</div>
|
1029
|
+
<span style="font-weight: bold;">data_file_name
|
1030
|
+
</span><br>
|
1031
|
+
<div class="bodytext5">A path of a PFA/PFB file. If it is NULL, the
|
1032
|
+
gryph data of font file is not embedded to a PDF file.<br>
|
1033
|
+
<br>
|
1034
|
+
</div>
|
1035
|
+
<h4>Returns</h4>
|
1036
|
+
When HPDF_LoadType1FontFromFile() succeeds, it returns the name
|
1037
|
+
of a font. Otherwise, it returns NULL and error-handler is called.<br>
|
1038
|
+
<br>
|
1039
|
+
<h4>Error</h4>
|
1040
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1041
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1042
|
+
<br>
|
1043
|
+
</div>
|
1044
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1045
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1046
|
+
<br>
|
1047
|
+
</div>
|
1048
|
+
<span style="font-weight: bold;">HPDF_FONT_EXISTS</span><br>
|
1049
|
+
<div class="bodytext5">The font of the same name has already been
|
1050
|
+
registered.<br>
|
1051
|
+
<br>
|
1052
|
+
</div>
|
1053
|
+
<span style="font-weight: bold;">HPDF_INVALID_AFM_HEADER,
|
1054
|
+
HPDF_INVALID_CHAR_MATRICS_DATA, HPDF_INVALID_N_DATA</span><br>
|
1055
|
+
<div class="bodytext5">Cannot recognize AFM file.<br>
|
1056
|
+
<br>
|
1057
|
+
</div>
|
1058
|
+
<span style="font-weight: bold;">HPDF_UNSUPPORTED_TYPE1_FONT</span><br>
|
1059
|
+
<div class="bodytext5">Cannot recognize PFA/PFB file.<br>
|
1060
|
+
</div>
|
1061
|
+
</div>
|
1062
|
+
<br>
|
1063
|
+
<h3><a name="HPDF_LoadTTFontFromFile"></a>HPDF_LoadTTFontFromFile</h3>
|
1064
|
+
<div class="bodytext1">
|
1065
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1066
|
+
<br>
|
1067
|
+
<span style="font-weight: bold;">const </span>char*<br>
|
1068
|
+
HPDF_LoadTTFontFromFile
|
1069
|
+
(HPDF_Doc pdf,<br>
|
1070
|
+
|
1071
|
+
<span style="font-weight: bold;">const </span>char
|
1072
|
+
*file_name,<br>
|
1073
|
+
|
1074
|
+
HPDF_BOOL embedding);<br>
|
1075
|
+
<br>
|
1076
|
+
</div>
|
1077
|
+
<h4>Description<br>
|
1078
|
+
</h4>
|
1079
|
+
HPDF_LoadTTFontFromFile loads a TrueType font from an external file and
|
1080
|
+
register it to a
|
1081
|
+
document object. (See "<a href="fonts.html">Fonts
|
1082
|
+
and Encodings</a>")<br>
|
1083
|
+
<br>
|
1084
|
+
<h4>Parameter</h4>
|
1085
|
+
<span style="font-weight: bold;">pdf</span>
|
1086
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
1087
|
+
<br>
|
1088
|
+
</div>
|
1089
|
+
<span style="font-weight: bold;">file_name
|
1090
|
+
</span>
|
1091
|
+
<div class="bodytext5">A path of a TrueType font file (.ttf). <br>
|
1092
|
+
<br>
|
1093
|
+
</div>
|
1094
|
+
<span style="font-weight: bold;">embedding </span><br>
|
1095
|
+
<div class="bodytext5">If this parameter is set to HPDF_TRUE, the glyph
|
1096
|
+
data of the font is embedded, otherwise only the matrix data is
|
1097
|
+
included in PDF file.<br>
|
1098
|
+
<br>
|
1099
|
+
</div>
|
1100
|
+
<h4>Returns</h4>
|
1101
|
+
When HPDF_LoadTTFontFromFile() succeeds, it returns the name
|
1102
|
+
of a font. Otherwise, it returns NULL and error-handler is called.<br>
|
1103
|
+
<br>
|
1104
|
+
<h4>Error</h4>
|
1105
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1106
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1107
|
+
<br>
|
1108
|
+
</div>
|
1109
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1110
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1111
|
+
<br>
|
1112
|
+
</div>
|
1113
|
+
<span style="font-weight: bold;">HPDF_FONT_EXISTS</span><br>
|
1114
|
+
<div class="bodytext5">The font of the same name has already been
|
1115
|
+
registered.<br>
|
1116
|
+
<br>
|
1117
|
+
</div>
|
1118
|
+
<span style="font-weight: bold;">HPDF_INVALID_TTC_INDEX,
|
1119
|
+
HPDF_INVALID_TTC_FILE, HPDF_TTF_INVALID_CMAP, HPDF_TTF_INVALID_FOMAT,
|
1120
|
+
HPDF_TTF_MISSING_TABLE </span><br>
|
1121
|
+
<div class="bodytext5">Failed to load .ttf file.<br>
|
1122
|
+
<br>
|
1123
|
+
</div>
|
1124
|
+
<span style="font-weight: bold;">HPDF_TTF_CANNOT_EMBEDDING_FONT</span><br>
|
1125
|
+
<div class="bodytext5">The font is not allowed to embed.<br>
|
1126
|
+
<br>
|
1127
|
+
</div>
|
1128
|
+
<br>
|
1129
|
+
</div>
|
1130
|
+
<h3><a name="HPDF_LoadTTFontFromFile2"></a>HPDF_LoadTTFontFromFile2</h3>
|
1131
|
+
<div class="bodytext1">
|
1132
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1133
|
+
<br>
|
1134
|
+
HPDF_STATUS<br>
|
1135
|
+
HPDF_LoadTTFontFromFile2 (HPDF_Doc pdf,<br>
|
1136
|
+
|
1137
|
+
<span style="font-weight: bold;">const </span>char *file_name,<br>
|
1138
|
+
|
1139
|
+
HPDF_UINT index,<br>
|
1140
|
+
|
1141
|
+
HPDF_BOOL embedding);<br>
|
1142
|
+
<br>
|
1143
|
+
</div>
|
1144
|
+
<h4>Description<br>
|
1145
|
+
</h4>
|
1146
|
+
HPDF_LoadTTFontFromFile2 loads a TrueType font from an TrueType
|
1147
|
+
collection file and register it to a
|
1148
|
+
document object. (See "<a href="fonts.html">Fonts
|
1149
|
+
and Encodings</a>")<br>
|
1150
|
+
<br>
|
1151
|
+
<h4>Parameter</h4>
|
1152
|
+
<span style="font-weight: bold;">pdf</span>
|
1153
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
1154
|
+
<br>
|
1155
|
+
</div>
|
1156
|
+
<span style="font-weight: bold;">file_name
|
1157
|
+
</span>
|
1158
|
+
<div class="bodytext5">A path of a TrueType font collection file
|
1159
|
+
(.ttc). <br>
|
1160
|
+
<br>
|
1161
|
+
</div>
|
1162
|
+
<span style="font-weight: bold;">index
|
1163
|
+
</span>
|
1164
|
+
<div class="bodytext5">The index of font that wants to be loaded. <br>
|
1165
|
+
<br>
|
1166
|
+
</div>
|
1167
|
+
<span style="font-weight: bold;">embedding </span><br>
|
1168
|
+
<div class="bodytext5">If this parameter is set to HPDF_TRUE, the glyph
|
1169
|
+
data of the font is embedded, otherwise only the matrix data is
|
1170
|
+
included in PDF file.<br>
|
1171
|
+
<br>
|
1172
|
+
</div>
|
1173
|
+
<h4>Returns</h4>
|
1174
|
+
When HPDF_LoadTTFontFromFile2() succeeds, it returns the name
|
1175
|
+
of a font. Otherwise, it returns NULL and error-handler is called.<br>
|
1176
|
+
<br>
|
1177
|
+
<h4>Error</h4>
|
1178
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1179
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1180
|
+
<br>
|
1181
|
+
</div>
|
1182
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1183
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1184
|
+
<br>
|
1185
|
+
</div>
|
1186
|
+
<span style="font-weight: bold;">HPDF_FONT_EXISTS</span><br>
|
1187
|
+
<div class="bodytext5">The font of the same name has already been
|
1188
|
+
registered.<br>
|
1189
|
+
<br>
|
1190
|
+
</div>
|
1191
|
+
<span style="font-weight: bold;">HPDF_INVALID_TTC_INDEX,
|
1192
|
+
HPDF_INVALID_TTC_FILE, HPDF_TTF_INVALID_CMAP, HPDF_TTF_INVALID_FOMAT,
|
1193
|
+
HPDF_TTF_MISSING_TABLE </span><br>
|
1194
|
+
<div class="bodytext5">Failed to load .ttf file.<br>
|
1195
|
+
<br>
|
1196
|
+
</div>
|
1197
|
+
<span style="font-weight: bold;">HPDF_TTF_CANNOT_EMBEDDING_FONT</span><br>
|
1198
|
+
<div class="bodytext5">The font is not allowed to embed.<br>
|
1199
|
+
</div>
|
1200
|
+
<br>
|
1201
|
+
<span style="font-weight: bold;">HPDF_INVALID_TTC_INDEX</span><br>
|
1202
|
+
<div class="bodytext5">The value specified at index parameter exceeds
|
1203
|
+
the number of fonts. <br>
|
1204
|
+
</div>
|
1205
|
+
<br>
|
1206
|
+
</div>
|
1207
|
+
<br>
|
1208
|
+
<h3><a name="HPDF_AddPageLabel"></a>HPDF_AddPageLabel</h3>
|
1209
|
+
<div class="bodytext1">
|
1210
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1211
|
+
<br>
|
1212
|
+
HPDF_STATUS<br>
|
1213
|
+
HPDF_AddPageLabel
|
1214
|
+
(HPDF_Doc
|
1215
|
+
pdf,<br>
|
1216
|
+
|
1217
|
+
HPDF_UINT
|
1218
|
+
page_num,<br>
|
1219
|
+
|
1220
|
+
HPDF_PageNumStyle style,<br>
|
1221
|
+
|
1222
|
+
HPDF_UINT
|
1223
|
+
first_page,<br>
|
1224
|
+
|
1225
|
+
<span style="font-weight: bold;">const </span>char
|
1226
|
+
*prefix);<br>
|
1227
|
+
<br>
|
1228
|
+
</div>
|
1229
|
+
<h4>Description<br>
|
1230
|
+
</h4>
|
1231
|
+
HPDF_AddPageLabel() adds a page labeling range for the document.<br>
|
1232
|
+
<br>
|
1233
|
+
<h4>Parameter</h4>
|
1234
|
+
<span style="font-weight: bold;">pdf</span>
|
1235
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1236
|
+
<br>
|
1237
|
+
</div>
|
1238
|
+
<span style="font-weight: bold;">page_num
|
1239
|
+
</span>
|
1240
|
+
<div class="bodytext5">The first page that applies this labeling range.
|
1241
|
+
<br>
|
1242
|
+
<br>
|
1243
|
+
</div>
|
1244
|
+
<span style="font-weight: bold;">style
|
1245
|
+
</span>
|
1246
|
+
<div class="bodytext5">The numbering style.<br>
|
1247
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="1"
|
1248
|
+
cellspacing="1">
|
1249
|
+
<tbody>
|
1250
|
+
<tr>
|
1251
|
+
<td
|
1252
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); width: 23px;"><br>
|
1253
|
+
</td>
|
1254
|
+
<td
|
1255
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); width: 300px;">Value<br>
|
1256
|
+
</td>
|
1257
|
+
<td
|
1258
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">Description<br>
|
1259
|
+
</td>
|
1260
|
+
</tr>
|
1261
|
+
<tr>
|
1262
|
+
<td style="vertical-align: top; width: 23px; text-align: right;">1<br>
|
1263
|
+
</td>
|
1264
|
+
<td style="vertical-align: top; width: 300px;">HPDF_PAGE_NUM_STYLE_DECIMAL<br>
|
1265
|
+
</td>
|
1266
|
+
<td style="vertical-align: top;">Page label is displayed by
|
1267
|
+
Arabic numerals.<br>
|
1268
|
+
</td>
|
1269
|
+
</tr>
|
1270
|
+
<tr>
|
1271
|
+
<td style="vertical-align: top; width: 23px; text-align: right;">2<br>
|
1272
|
+
</td>
|
1273
|
+
<td style="vertical-align: top; width: 300px;">HPDF_PAGE_NUM_STYLE_UPPER_ROMAN<br>
|
1274
|
+
</td>
|
1275
|
+
<td style="vertical-align: top;">Page label is displayed by
|
1276
|
+
Uppercase roman numerals.<br>
|
1277
|
+
</td>
|
1278
|
+
</tr>
|
1279
|
+
<tr>
|
1280
|
+
<td style="vertical-align: top; text-align: right;">3<br>
|
1281
|
+
</td>
|
1282
|
+
<td style="vertical-align: top; width: 300px;">HPDF_PAGE_NUM_STYLE_LOWER_ROMAN<br>
|
1283
|
+
</td>
|
1284
|
+
<td style="vertical-align: top;">Page label is displayed by
|
1285
|
+
Lowercase roman numerals.<br>
|
1286
|
+
</td>
|
1287
|
+
</tr>
|
1288
|
+
<tr>
|
1289
|
+
<td style="vertical-align: top; text-align: right;">4<br>
|
1290
|
+
</td>
|
1291
|
+
<td style="vertical-align: top; width: 300px;">HPDF_PAGE_NUM_STYLE_UPPER_LETTERS<br>
|
1292
|
+
</td>
|
1293
|
+
<td style="vertical-align: top;">Page label is displayed by
|
1294
|
+
Uppercase letters (using A to Z).<br>
|
1295
|
+
</td>
|
1296
|
+
</tr>
|
1297
|
+
<tr>
|
1298
|
+
<td style="vertical-align: top; text-align: right;">5<br>
|
1299
|
+
</td>
|
1300
|
+
<td style="vertical-align: top; width: 300px;">HPDF_PAGE_NUM_STYLE_LOWER_LETTERS<br>
|
1301
|
+
</td>
|
1302
|
+
<td style="vertical-align: top;">Page label is displayed by
|
1303
|
+
Lowercase letters (using a to z).</td>
|
1304
|
+
</tr>
|
1305
|
+
</tbody>
|
1306
|
+
</table>
|
1307
|
+
<br>
|
1308
|
+
</div>
|
1309
|
+
<span style="font-weight: bold;">first_page </span>
|
1310
|
+
<div class="bodytext5">The first page number in this range. <br>
|
1311
|
+
<br>
|
1312
|
+
</div>
|
1313
|
+
<span style="font-weight: bold;">prefix </span>
|
1314
|
+
<div class="bodytext5">The prefix for the page label. (NULL is
|
1315
|
+
allowed.) <br>
|
1316
|
+
<br>
|
1317
|
+
</div>
|
1318
|
+
<h4>Returns</h4>
|
1319
|
+
When HPDF_AddPageLabel () succeeds, it returns HPDF_OK.
|
1320
|
+
Otherwise, it returns error code and error-handler is invoked.<br>
|
1321
|
+
<br>
|
1322
|
+
<h4>Error</h4>
|
1323
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1324
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1325
|
+
<br>
|
1326
|
+
</div>
|
1327
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1328
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1329
|
+
<br>
|
1330
|
+
</div>
|
1331
|
+
<span style="font-weight: bold;">HPDF_PAGE_NUM_STYLE_OUT_OF_RANGE</span><br>
|
1332
|
+
<div class="bodytext5">An invalid page numbering style is specified.<br>
|
1333
|
+
<br>
|
1334
|
+
</div>
|
1335
|
+
</div>
|
1336
|
+
<br>
|
1337
|
+
<h3><a name="HPDF_UseJPFonts"></a>HPDF_UseJPFonts</h3>
|
1338
|
+
<div class="bodytext1">
|
1339
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1340
|
+
<br>
|
1341
|
+
HPDF_STATUS<br>
|
1342
|
+
HPDF_UseJPFonts (HPDF_Doc pdf);<br>
|
1343
|
+
<br>
|
1344
|
+
</div>
|
1345
|
+
<h4>Description<br>
|
1346
|
+
</h4>
|
1347
|
+
HPDF_UseJPFonts() enables Japanese fonts. After HPDF_UseJPFonts() is
|
1348
|
+
involed, an application can use the following Japanese fonts.<br>
|
1349
|
+
<ul>
|
1350
|
+
<li>MS-Mincyo</li>
|
1351
|
+
<li>MS-Mincyo,Bold</li>
|
1352
|
+
<li>MS-Mincyo,Italic</li>
|
1353
|
+
<li>MS-Mincyo,BoldItalic</li>
|
1354
|
+
<li>MS-Gothic</li>
|
1355
|
+
<li>MS-Gothic,Bold</li>
|
1356
|
+
<li>MS-Gothic,Italic</li>
|
1357
|
+
<li>MS-Gothic,BoldItalic</li>
|
1358
|
+
<li>MS-PMincyo</li>
|
1359
|
+
<li>MS-PMincyo,Bold</li>
|
1360
|
+
<li>MS-PMincyo,Italic</li>
|
1361
|
+
<li>MS-PMincyo,BoldItalic</li>
|
1362
|
+
<li>MS-PGothic</li>
|
1363
|
+
<li>MS-PGothic,Bold</li>
|
1364
|
+
<li>MS-PGothic,Italic</li>
|
1365
|
+
<li>MS-PGothic,BoldItalic</li>
|
1366
|
+
</ul>
|
1367
|
+
<h4>Parameter</h4>
|
1368
|
+
<span style="font-weight: bold;">pdf</span>
|
1369
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1370
|
+
<br>
|
1371
|
+
</div>
|
1372
|
+
<h4>Returns</h4>
|
1373
|
+
When HPDF_UseJPFonts() succeeds, it returns HPDF_OK. Otherwise, it
|
1374
|
+
returns error code and error-handler is invoked.<br>
|
1375
|
+
<br>
|
1376
|
+
<h4>Error</h4>
|
1377
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1378
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1379
|
+
<br>
|
1380
|
+
</div>
|
1381
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1382
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1383
|
+
<br>
|
1384
|
+
</div>
|
1385
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1386
|
+
<div class="bodytext5">The font of the same name has already been
|
1387
|
+
registered.<br>
|
1388
|
+
<br>
|
1389
|
+
</div>
|
1390
|
+
</div>
|
1391
|
+
<br>
|
1392
|
+
<h3><a name="HPDF_UseKRFonts"></a>HPDF_UseKRFonts</h3>
|
1393
|
+
<div class="bodytext1">
|
1394
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1395
|
+
<br>
|
1396
|
+
HPDF_STATUS<br>
|
1397
|
+
HPDF_UseKRFonts (HPDF_Doc pdf);<br>
|
1398
|
+
<br>
|
1399
|
+
</div>
|
1400
|
+
<h4>Description<br>
|
1401
|
+
</h4>
|
1402
|
+
HPDF_UseKRFonts() enables Korean fonts. After HPDF_UseKRFonts()
|
1403
|
+
is involed, an application can use the following Korean fonts.<br>
|
1404
|
+
<ul>
|
1405
|
+
<li>DotumChe</li>
|
1406
|
+
<li>DotumChe,Bold</li>
|
1407
|
+
<li>DotumChe,Italic</li>
|
1408
|
+
<li>DotumChe,BoldItalic</li>
|
1409
|
+
<li>Dotum</li>
|
1410
|
+
<li>Dotum,Bold</li>
|
1411
|
+
<li>Dotum,Italic</li>
|
1412
|
+
<li>Dotum,BoldItalic</li>
|
1413
|
+
<li>BatangChe</li>
|
1414
|
+
<li>BatangChe,Bold</li>
|
1415
|
+
<li>BatangChe,Italic</li>
|
1416
|
+
<li>BatangChe,BoldItalic</li>
|
1417
|
+
<li>Batang</li>
|
1418
|
+
<li>Batang,Bold</li>
|
1419
|
+
<li>Batang,Italic</li>
|
1420
|
+
<li>Batang,BoldItalic</li>
|
1421
|
+
</ul>
|
1422
|
+
<h4>Parameter</h4>
|
1423
|
+
<span style="font-weight: bold;">pdf</span>
|
1424
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1425
|
+
<br>
|
1426
|
+
</div>
|
1427
|
+
<h4>Returns</h4>
|
1428
|
+
When HPDF_UseKRFonts() succeeds, it returns HPDF_OK. Otherwise, it
|
1429
|
+
returns error code and error-handler is invoked.<br>
|
1430
|
+
<br>
|
1431
|
+
<h4>Error</h4>
|
1432
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1433
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1434
|
+
<br>
|
1435
|
+
</div>
|
1436
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1437
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1438
|
+
<br>
|
1439
|
+
</div>
|
1440
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1441
|
+
<div class="bodytext5">The font of the same name has already been
|
1442
|
+
registered.<br>
|
1443
|
+
<br>
|
1444
|
+
</div>
|
1445
|
+
</div>
|
1446
|
+
<br>
|
1447
|
+
<h3><a name="HPDF_UseCNSFonts"></a>HPDF_UseCNSFonts</h3>
|
1448
|
+
<div class="bodytext1">
|
1449
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1450
|
+
<br>
|
1451
|
+
HPDF_STATUS<br>
|
1452
|
+
HPDF_UseCNSFonts (HPDF_Doc pdf);<br>
|
1453
|
+
<br>
|
1454
|
+
</div>
|
1455
|
+
<h4>Description<br>
|
1456
|
+
</h4>
|
1457
|
+
HPDF_UseCNSFonts() enables simplified Chinese fonts. After
|
1458
|
+
HPDF_UseCNSFonts()
|
1459
|
+
is involed, an application can use the following simplified Chinese
|
1460
|
+
fonts.<br>
|
1461
|
+
<ul>
|
1462
|
+
<li>SimSun</li>
|
1463
|
+
<li>SimSun,Bold</li>
|
1464
|
+
<li>SimSun,Italic</li>
|
1465
|
+
<li>SimSun,BoldItalic</li>
|
1466
|
+
<li>SimHei</li>
|
1467
|
+
<li>SimHei,Bold</li>
|
1468
|
+
<li>SimHei,Italic</li>
|
1469
|
+
<li>SimHei,BoldItalic</li>
|
1470
|
+
</ul>
|
1471
|
+
<h4>Parameter</h4>
|
1472
|
+
<span style="font-weight: bold;">pdf</span>
|
1473
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1474
|
+
<br>
|
1475
|
+
</div>
|
1476
|
+
<h4>Returns</h4>
|
1477
|
+
When HPDF_UseCNSFonts() succeeds, it returns HPDF_OK. Otherwise, it
|
1478
|
+
returns error code and error-handler is invoked.<br>
|
1479
|
+
<br>
|
1480
|
+
<h4>Error</h4>
|
1481
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1482
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1483
|
+
<br>
|
1484
|
+
</div>
|
1485
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1486
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1487
|
+
<br>
|
1488
|
+
</div>
|
1489
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1490
|
+
<div class="bodytext5">The font of the same name has already been
|
1491
|
+
registered.<br>
|
1492
|
+
<br>
|
1493
|
+
</div>
|
1494
|
+
</div>
|
1495
|
+
<br>
|
1496
|
+
<h3><a name="HPDF_UseCNTFonts"></a>HPDF_UseCNTFonts</h3>
|
1497
|
+
<div class="bodytext1">
|
1498
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1499
|
+
<br>
|
1500
|
+
HPDF_STATUS<br>
|
1501
|
+
HPDF_UseCNTFonts (HPDF_Doc pdf);<br>
|
1502
|
+
<br>
|
1503
|
+
</div>
|
1504
|
+
<h4>Description<br>
|
1505
|
+
</h4>
|
1506
|
+
HPDF_UseCNTFonts() enables traditional Chinese fonts. After
|
1507
|
+
HPDF_UseCNTFonts()
|
1508
|
+
is involed, an application can use the following traditional Chinese
|
1509
|
+
fonts.<br>
|
1510
|
+
<ul>
|
1511
|
+
<li>MingLiU</li>
|
1512
|
+
<li>MingLiU,Bold</li>
|
1513
|
+
<li>MingLiU,Italic</li>
|
1514
|
+
<li>MingLiU,BoldItalic</li>
|
1515
|
+
</ul>
|
1516
|
+
<h4>Parameter</h4>
|
1517
|
+
<span style="font-weight: bold;">pdf</span>
|
1518
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1519
|
+
<br>
|
1520
|
+
</div>
|
1521
|
+
<h4>Returns</h4>
|
1522
|
+
When HPDF_UseCNSFonts() succeeds, it returns HPDF_OK. Otherwise, it
|
1523
|
+
returns error code and error-handler is invoked.<br>
|
1524
|
+
<br>
|
1525
|
+
<h4>Error</h4>
|
1526
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1527
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1528
|
+
<br>
|
1529
|
+
</div>
|
1530
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1531
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1532
|
+
<br>
|
1533
|
+
</div>
|
1534
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1535
|
+
<div class="bodytext5">The font of the same name has already been
|
1536
|
+
registered.<br>
|
1537
|
+
<br>
|
1538
|
+
</div>
|
1539
|
+
</div>
|
1540
|
+
<br>
|
1541
|
+
<h3><a name="HPDF_CreateExtGstate"></a>HPDF_CreateExtGstate</h3>
|
1542
|
+
<div class="bodytext1">
|
1543
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1544
|
+
<br>
|
1545
|
+
HPDF_ExtGState<br>
|
1546
|
+
HPDF_CreateExtGState (HPDF_Doc pdf);;<br>
|
1547
|
+
<br>
|
1548
|
+
</div>
|
1549
|
+
<h4>Description<br>
|
1550
|
+
</h4>
|
1551
|
+
HPDF_CreateExtGState() creates a new extended graphics state object.<br>
|
1552
|
+
As a side effect, HPDF_CreateExtGState() bumps up the version of PDF to
|
1553
|
+
1.4.<br>
|
1554
|
+
<br>
|
1555
|
+
<div class="bodynote">NOTE:<br>
|
1556
|
+
In Acrobat Reader 5.0, when ExtGState object is used combined with
|
1557
|
+
HPDF_Page_Concat(), there is a case that cannot be correctly displayed.</div>
|
1558
|
+
<br>
|
1559
|
+
<h4>Parameter</h4>
|
1560
|
+
<span style="font-weight: bold;">pdf</span>
|
1561
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1562
|
+
<br>
|
1563
|
+
</div>
|
1564
|
+
<h4>Returns</h4>
|
1565
|
+
When
|
1566
|
+
HPDF_CreateExtGState() succeeds, it returns the handle of created
|
1567
|
+
extended graphics stateobject. Otherwise, it
|
1568
|
+
returns NULL and error-handler is invoked.<br>
|
1569
|
+
<br>
|
1570
|
+
<h4>Error</h4>
|
1571
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1572
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1573
|
+
<br>
|
1574
|
+
</div>
|
1575
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1576
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1577
|
+
</div>
|
1578
|
+
</div>
|
1579
|
+
<br>
|
1580
|
+
<h3><a name="HPDF_CreateOutline"></a>HPDF_CreateOutline</h3>
|
1581
|
+
<div class="bodytext1">
|
1582
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1583
|
+
<br>
|
1584
|
+
HPDF_Outline<br>
|
1585
|
+
HPDF_CreateOutline (HPDF_Doc
|
1586
|
+
pdf,<br>
|
1587
|
+
|
1588
|
+
HPDF_Outline parent,<br>
|
1589
|
+
|
1590
|
+
<span style="font-weight: bold;">const </span>char
|
1591
|
+
*title,<br>
|
1592
|
+
|
1593
|
+
HPDF_Encoder encoder);<br>
|
1594
|
+
<br>
|
1595
|
+
</div>
|
1596
|
+
<h4>Description<br>
|
1597
|
+
</h4>
|
1598
|
+
HPDF_CreateOutline() creates a new outline object.<br>
|
1599
|
+
<br>
|
1600
|
+
<h4>Parameter</h4>
|
1601
|
+
<span style="font-weight: bold;">pdf</span>
|
1602
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1603
|
+
<br>
|
1604
|
+
</div>
|
1605
|
+
<span style="font-weight: bold;">parent
|
1606
|
+
</span>
|
1607
|
+
<div class="bodytext5">The handle of an outline object which comes to
|
1608
|
+
the parent of the created outline object.<br>
|
1609
|
+
If this parameter is NULL, The outline is created as a root outline.<br>
|
1610
|
+
<br>
|
1611
|
+
</div>
|
1612
|
+
<span style="font-weight: bold;">title
|
1613
|
+
</span>
|
1614
|
+
<div class="bodytext5">The caption of the outline object.<br>
|
1615
|
+
<br>
|
1616
|
+
</div>
|
1617
|
+
<span style="font-weight: bold;">encoder</span><br>
|
1618
|
+
<div class="bodytext5">The handle of an encoding object applied to the
|
1619
|
+
title. If NULL is set, PDFDocEncoding is used.<br>
|
1620
|
+
</div>
|
1621
|
+
<br>
|
1622
|
+
<h4>Returns</h4>
|
1623
|
+
When
|
1624
|
+
HPDF_CreateOutline() succeeds, it returns the handle of created outline
|
1625
|
+
object. Otherwise, it
|
1626
|
+
returns NULL and error-handler is invoked.<br>
|
1627
|
+
<br>
|
1628
|
+
<h4>Error</h4>
|
1629
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1630
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1631
|
+
<br>
|
1632
|
+
</div>
|
1633
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1634
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1635
|
+
<br>
|
1636
|
+
</div>
|
1637
|
+
<span style="font-weight: bold;">HPDF_INVALID_OUTLINE</span><br>
|
1638
|
+
<div class="bodytext5">An invalid parent outline is specified.<br>
|
1639
|
+
</div>
|
1640
|
+
</div>
|
1641
|
+
<br>
|
1642
|
+
<br>
|
1643
|
+
<h3><a name="HPDF_GetEncoder"></a>HPDF_GetEncoder</h3>
|
1644
|
+
<div class="bodytext1">
|
1645
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1646
|
+
<br>
|
1647
|
+
HPDF_Encoder<br>
|
1648
|
+
HPDF_GetEncoder (HPDF_Doc pdf,<br>
|
1649
|
+
|
1650
|
+
<span style="font-weight: bold;">const </span>char
|
1651
|
+
*encoding_name);<br>
|
1652
|
+
<br>
|
1653
|
+
</div>
|
1654
|
+
<h4>Description<br>
|
1655
|
+
</h4>
|
1656
|
+
HPDF_GetEncoder() gets the handle of a corresponding encoder object by
|
1657
|
+
specified encoding name.<br>
|
1658
|
+
<br>
|
1659
|
+
<h4>Parameter</h4>
|
1660
|
+
<span style="font-weight: bold;">pdf</span>
|
1661
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
1662
|
+
<br>
|
1663
|
+
</div>
|
1664
|
+
<span style="font-weight: bold;">encoding_name
|
1665
|
+
</span><br>
|
1666
|
+
<div class="bodytext5">Specify a valid encoding name. (See "<a
|
1667
|
+
href="fonts.html">Fonts and Encodings</a>")<br>
|
1668
|
+
<br>
|
1669
|
+
</div>
|
1670
|
+
<h4>Returns</h4>
|
1671
|
+
When HPDF_GetEncoder() succeeds, it returns the handle of an
|
1672
|
+
encoder object. Otherwise, it returns NULL and error-handler is called.<br>
|
1673
|
+
<br>
|
1674
|
+
<h4>Error</h4>
|
1675
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1676
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1677
|
+
<br>
|
1678
|
+
</div>
|
1679
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1680
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1681
|
+
<br>
|
1682
|
+
</div>
|
1683
|
+
<span style="font-weight: bold;">HPDF_INVALID_ENCODING_NAME</span><br>
|
1684
|
+
<div class="bodytext5">An invalid encoding name was set.
|
1685
|
+
</div>
|
1686
|
+
</div>
|
1687
|
+
<br>
|
1688
|
+
<h3><a name="HPDF_GetCurrentEncoder"></a>HPDF_GetCurrentEncoder</h3>
|
1689
|
+
<div class="bodytext1">
|
1690
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1691
|
+
<br>
|
1692
|
+
HPDF_Encoder<br>
|
1693
|
+
HPDF_GetCurrentEncoder (HPDF_Doc pdf);<br>
|
1694
|
+
<br>
|
1695
|
+
</div>
|
1696
|
+
<h4>Description<br>
|
1697
|
+
</h4>
|
1698
|
+
HPDF_GetCurrentEncoder() gets the handle of the current encoder of the
|
1699
|
+
document object.<br>
|
1700
|
+
The current encoder is set by invoking HPDF_SetCurrentEncoder() and it
|
1701
|
+
is used to processing a text when an application invoks
|
1702
|
+
HPDF_Info_SetInfoAttr().<br>
|
1703
|
+
The default value of it is NULL.<br>
|
1704
|
+
<h4>Parameter</h4>
|
1705
|
+
<span style="font-weight: bold;">pdf</span>
|
1706
|
+
<div class="bodytext5">A handle of a document object.<br>
|
1707
|
+
</div>
|
1708
|
+
<h4>Returns</h4>
|
1709
|
+
It returns a handle of an encoder object or NULL.<br>
|
1710
|
+
<br>
|
1711
|
+
</div>
|
1712
|
+
<h3><a name="HPDF_SetCurrentEncoder"></a>HPDF_SetCurrentEncoder</h3>
|
1713
|
+
<div class="bodytext1">
|
1714
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1715
|
+
<br>
|
1716
|
+
HPDF_Outline<br>
|
1717
|
+
HPDF_SetCurrentEncoder (HPDF_Doc pdf,<br>
|
1718
|
+
|
1719
|
+
<span style="font-weight: bold;">const </span>char
|
1720
|
+
*encoding_name);<br>
|
1721
|
+
<br>
|
1722
|
+
</div>
|
1723
|
+
<h4>Description<br>
|
1724
|
+
</h4>
|
1725
|
+
HPDF_SetCurrentEncoder() sets the current encoder for the document.<br>
|
1726
|
+
<br>
|
1727
|
+
<h4>Parameter</h4>
|
1728
|
+
<span style="font-weight: bold;">pdf</span>
|
1729
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1730
|
+
<br>
|
1731
|
+
</div>
|
1732
|
+
<span style="font-weight: bold;">encoding_name
|
1733
|
+
</span>
|
1734
|
+
<div class="bodytext5">The name of an encoding. (See "<a
|
1735
|
+
href="fonts.html">Fonts and Encodings</a>")<br>
|
1736
|
+
<br>
|
1737
|
+
</div>
|
1738
|
+
<h4>Returns</h4>
|
1739
|
+
When HPDF_SetCurrentEncoder() succeeds, it returns the handle of
|
1740
|
+
created outline
|
1741
|
+
object. Otherwise, it
|
1742
|
+
returns NULL and error-handler is invoked.<br>
|
1743
|
+
<br>
|
1744
|
+
<h4>Error</h4>
|
1745
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1746
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1747
|
+
<br>
|
1748
|
+
</div>
|
1749
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1750
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1751
|
+
<br>
|
1752
|
+
</div>
|
1753
|
+
<span style="font-weight: bold;">HPDF_INVALID_ENCODING_NAME</span><br>
|
1754
|
+
<div class="bodytext5">An invalid encoding name was set.<br>
|
1755
|
+
<br>
|
1756
|
+
</div>
|
1757
|
+
</div>
|
1758
|
+
<br>
|
1759
|
+
<h3><a name="HPDF_UseJPEncodings"></a>HPDF_UseJPEncodings</h3>
|
1760
|
+
<div class="bodytext1">
|
1761
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1762
|
+
<br>
|
1763
|
+
HPDF_STATUS<br>
|
1764
|
+
HPDF_UseJPEncodings (HPDF_Doc pdf);<br>
|
1765
|
+
<br>
|
1766
|
+
</div>
|
1767
|
+
<h4>Description<br>
|
1768
|
+
</h4>
|
1769
|
+
HPDF_UseJPEncodings() enables Japanese encodings. After
|
1770
|
+
HPDF_UseJPEncodings() is
|
1771
|
+
involed, an application can use the following Japanese encodings.<br>
|
1772
|
+
<ul>
|
1773
|
+
<li>90ms-RKSJ-H</li>
|
1774
|
+
<li>90ms-RKSJ-V</li>
|
1775
|
+
<li>90msp-RKSJ-H</li>
|
1776
|
+
<li>EUC-H</li>
|
1777
|
+
<li>EUC-V</li>
|
1778
|
+
</ul>
|
1779
|
+
<h4>Parameter</h4>
|
1780
|
+
<span style="font-weight: bold;">pdf</span>
|
1781
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1782
|
+
<br>
|
1783
|
+
</div>
|
1784
|
+
<h4>Returns</h4>
|
1785
|
+
When HPDF_UseJPEncodings() succeeds, it returns HPDF_OK. Otherwise, it
|
1786
|
+
returns error code and error-handler is invoked.<br>
|
1787
|
+
<br>
|
1788
|
+
<h4>Error</h4>
|
1789
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1790
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1791
|
+
<br>
|
1792
|
+
</div>
|
1793
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1794
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1795
|
+
<br>
|
1796
|
+
</div>
|
1797
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1798
|
+
<div class="bodytext5">The encoding of the same name has already been
|
1799
|
+
registered.<br>
|
1800
|
+
<br>
|
1801
|
+
</div>
|
1802
|
+
</div>
|
1803
|
+
<br>
|
1804
|
+
<h3><a name="HPDF_UseKREncodings"></a>HPDF_UseKREncodings</h3>
|
1805
|
+
<div class="bodytext1">
|
1806
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1807
|
+
<br>
|
1808
|
+
HPDF_STATUS<br>
|
1809
|
+
HPDF_UseKREncodings (HPDF_Doc pdf);<br>
|
1810
|
+
<br>
|
1811
|
+
</div>
|
1812
|
+
<h4>Description<br>
|
1813
|
+
</h4>
|
1814
|
+
HPDF_UseKREncodings() enables Korean encodings. After
|
1815
|
+
HPDF_UseKREncodings() is
|
1816
|
+
involed, an application can use the following Korean encodings.<br>
|
1817
|
+
<ul>
|
1818
|
+
<li>KSC-EUC-H</li>
|
1819
|
+
<li>KSC-EUC-V</li>
|
1820
|
+
<li>KSCms-UHC-H</li>
|
1821
|
+
<li>KSCms-UHC-HW-H</li>
|
1822
|
+
<li>KSCms-UHC-HW-V</li>
|
1823
|
+
</ul>
|
1824
|
+
<h4>Parameter</h4>
|
1825
|
+
<span style="font-weight: bold;">pdf</span>
|
1826
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1827
|
+
<br>
|
1828
|
+
</div>
|
1829
|
+
<h4>Returns</h4>
|
1830
|
+
When HPDF_UseKREncodings() succeeds, it returns HPDF_OK. Otherwise, it
|
1831
|
+
returns error code and error-handler is invoked.<br>
|
1832
|
+
<br>
|
1833
|
+
<h4>Error</h4>
|
1834
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1835
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1836
|
+
<br>
|
1837
|
+
</div>
|
1838
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1839
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1840
|
+
<br>
|
1841
|
+
</div>
|
1842
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1843
|
+
<div class="bodytext5">The encodingof the same name has already been
|
1844
|
+
registered.<br>
|
1845
|
+
<br>
|
1846
|
+
</div>
|
1847
|
+
</div>
|
1848
|
+
<br>
|
1849
|
+
<h3><a name="HPDF_UseCNSEncodings"></a>HPDF_UseCNSEncodings</h3>
|
1850
|
+
<div class="bodytext1">
|
1851
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1852
|
+
<br>
|
1853
|
+
HPDF_STATUS<br>
|
1854
|
+
HPDF_UseCNSEncodings (HPDF_Doc pdf);<br>
|
1855
|
+
<br>
|
1856
|
+
</div>
|
1857
|
+
<h4>Description<br>
|
1858
|
+
</h4>
|
1859
|
+
HPDF_UseCNSEncodings() enables simplified Chinese encodings. After
|
1860
|
+
HPDF_UseCNSEncodings()
|
1861
|
+
is involed, an application can use the following simplified Chinese
|
1862
|
+
encodings.<br>
|
1863
|
+
<ul>
|
1864
|
+
<li>GB-EUC-H</li>
|
1865
|
+
<li>GB-EUC-V</li>
|
1866
|
+
<li>GBK-EUC-H</li>
|
1867
|
+
<li>GBK-EUC-V</li>
|
1868
|
+
</ul>
|
1869
|
+
<h4>Parameter</h4>
|
1870
|
+
<span style="font-weight: bold;">pdf</span>
|
1871
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1872
|
+
<br>
|
1873
|
+
</div>
|
1874
|
+
<h4>Returns</h4>
|
1875
|
+
When HPDF_UseCNSEncodings() succeeds, it returns HPDF_OK. Otherwise, it
|
1876
|
+
returns error code and error-handler is invoked.<br>
|
1877
|
+
<br>
|
1878
|
+
<h4>Error</h4>
|
1879
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1880
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1881
|
+
<br>
|
1882
|
+
</div>
|
1883
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1884
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1885
|
+
<br>
|
1886
|
+
</div>
|
1887
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1888
|
+
<div class="bodytext5">The encoding of the same name has already been
|
1889
|
+
registered.<br>
|
1890
|
+
<br>
|
1891
|
+
</div>
|
1892
|
+
</div>
|
1893
|
+
<br>
|
1894
|
+
<h3><a name="HPDF_UseCNTEncodings"></a>HPDF_UseCNTEncodings</h3>
|
1895
|
+
<div class="bodytext1">
|
1896
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1897
|
+
<br>
|
1898
|
+
HPDF_STATUS<br>
|
1899
|
+
HPDF_UseCNTEncodings (HPDF_Doc pdf);<br>
|
1900
|
+
<br>
|
1901
|
+
</div>
|
1902
|
+
<h4>Description<br>
|
1903
|
+
</h4>
|
1904
|
+
HPDF_UseCNTEncodings() enables traditional Chinese encodings. After
|
1905
|
+
HPDF_UseCNTEncodings()
|
1906
|
+
is involed, an application can use the following traditional Chinese
|
1907
|
+
encodings.<br>
|
1908
|
+
<ul>
|
1909
|
+
<li>GB-EUC-H</li>
|
1910
|
+
<li>GB-EUC-V</li>
|
1911
|
+
<li>GBK-EUC-H</li>
|
1912
|
+
<li>GBK-EUC-V</li>
|
1913
|
+
</ul>
|
1914
|
+
<h4>Parameter</h4>
|
1915
|
+
<span style="font-weight: bold;">pdf</span>
|
1916
|
+
<div class="bodytext5">The handle of a document object.<br>
|
1917
|
+
<br>
|
1918
|
+
</div>
|
1919
|
+
<h4>Returns</h4>
|
1920
|
+
When HPDF_UseCNTEncodings() succeeds, it returns HPDF_OK. Otherwise, it
|
1921
|
+
returns error code and error-handler is invoked.<br>
|
1922
|
+
<br>
|
1923
|
+
<h4>Error</h4>
|
1924
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1925
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1926
|
+
<br>
|
1927
|
+
</div>
|
1928
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1929
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1930
|
+
<br>
|
1931
|
+
</div>
|
1932
|
+
<span style="font-weight: bold;">HPDF_DUPLICATE_REGISTRATION</span><br>
|
1933
|
+
<div class="bodytext5">The encoding of the same name has already been
|
1934
|
+
registered.<br>
|
1935
|
+
<br>
|
1936
|
+
</div>
|
1937
|
+
</div>
|
1938
|
+
<br>
|
1939
|
+
<h3><a name="HPDF_LoadPngImageFromFile_"></a>HPDF_LoadPngImageFromFile<br>
|
1940
|
+
</h3>
|
1941
|
+
<div class="bodytext1">
|
1942
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1943
|
+
<br>
|
1944
|
+
HPDF_Image<br>
|
1945
|
+
HPDF_LoadPngImageFromFile (HPDF_Doc pdf,<br>
|
1946
|
+
|
1947
|
+
const char *filename);<br>
|
1948
|
+
<br>
|
1949
|
+
</div>
|
1950
|
+
<h4>Description<br>
|
1951
|
+
</h4>
|
1952
|
+
HPDF_LoadPngImageFromFile() loads an external png image file. <br>
|
1953
|
+
<br>
|
1954
|
+
<h4>Parameter</h4>
|
1955
|
+
<span style="font-weight: bold;">pdf</span>
|
1956
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
1957
|
+
<br>
|
1958
|
+
</div>
|
1959
|
+
<span style="font-weight: bold;">filename
|
1960
|
+
</span>
|
1961
|
+
<div class="bodytext5">A path to a PNG image file. <br>
|
1962
|
+
<br>
|
1963
|
+
</div>
|
1964
|
+
<br>
|
1965
|
+
<h4>Returns</h4>
|
1966
|
+
When HPDF_LoadPngImageFromFile() succeeds, it returns the handle
|
1967
|
+
of an image object. Otherwise, it returns NULL and error-handler
|
1968
|
+
is called.<br>
|
1969
|
+
<br>
|
1970
|
+
<h4>Error</h4>
|
1971
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
1972
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
1973
|
+
<br>
|
1974
|
+
</div>
|
1975
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
1976
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
1977
|
+
<br>
|
1978
|
+
</div>
|
1979
|
+
<span style="font-weight: bold;">HPDF_UNSUPPORTED_FUNC</span><br>
|
1980
|
+
<div class="bodytext5">The library is not configured to use PNGLIB.<br>
|
1981
|
+
<br>
|
1982
|
+
</div>
|
1983
|
+
<span style="font-weight: bold;">HPDF_LIBPNG_ERROR</span><br>
|
1984
|
+
<div class="bodytext5">Failed when invoking PNGLIB's function.<br>
|
1985
|
+
<br>
|
1986
|
+
</div>
|
1987
|
+
<span style="font-weight: bold;">HPDF_INVALID_PNG_IMAGE</span><br>
|
1988
|
+
<div class="bodytext5">Invalid png format.<br>
|
1989
|
+
</div>
|
1990
|
+
</div>
|
1991
|
+
<br>
|
1992
|
+
<h3><a name="HPDF_LoadPngImageFromFile2_"></a>HPDF_LoadPngImageFromFile2<br>
|
1993
|
+
</h3>
|
1994
|
+
<div class="bodytext1">
|
1995
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
1996
|
+
<br>
|
1997
|
+
HPDF_Image<br>
|
1998
|
+
HPDF_LoadPngImageFromFile2 (HPDF_Doc pdf,<br>
|
1999
|
+
|
2000
|
+
|
2001
|
+
<span style="font-weight: bold;">const </span>char
|
2002
|
+
*filename);<br>
|
2003
|
+
<br>
|
2004
|
+
</div>
|
2005
|
+
<h4>Description<br>
|
2006
|
+
</h4>
|
2007
|
+
HPDF_LoadPngImageFromFile2() loads an external png image file.<br>
|
2008
|
+
Unlike
|
2009
|
+
HPDF_LoadPngImageFromFile(),
|
2010
|
+
HPDF_LoadPngImageFromFile2() does not load whole data immediately.
|
2011
|
+
(only size and color properties is loaded). <br>
|
2012
|
+
The main data is loaded just before the image object is written to PDF,
|
2013
|
+
and the loaded data is deleted immediately. <br>
|
2014
|
+
<br>
|
2015
|
+
<h4>Parameter</h4>
|
2016
|
+
<span style="font-weight: bold;">pdf</span>
|
2017
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2018
|
+
<br>
|
2019
|
+
</div>
|
2020
|
+
<span style="font-weight: bold;">filename
|
2021
|
+
</span>
|
2022
|
+
<div class="bodytext5">A path to a PNG image file. <br>
|
2023
|
+
<br>
|
2024
|
+
</div>
|
2025
|
+
<br>
|
2026
|
+
<h4>Returns</h4>
|
2027
|
+
When HPDF_LoadPngImageFromFile2() succeeds, it returns the handle
|
2028
|
+
of an image object. Otherwise, it returns NULL and error-handler
|
2029
|
+
is called.<br>
|
2030
|
+
<br>
|
2031
|
+
<h4>Error</h4>
|
2032
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2033
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2034
|
+
<br>
|
2035
|
+
</div>
|
2036
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2037
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2038
|
+
<br>
|
2039
|
+
</div>
|
2040
|
+
<span style="font-weight: bold;">HPDF_UNSUPPORTED_FUNC</span><br>
|
2041
|
+
<div class="bodytext5">The library is not configured to use PNGLIB.<br>
|
2042
|
+
<br>
|
2043
|
+
</div>
|
2044
|
+
<span style="font-weight: bold;">HPDF_LIBPNG_ERROR</span><br>
|
2045
|
+
<div class="bodytext5">Failed when invoking PNGLIB's function.<br>
|
2046
|
+
<br>
|
2047
|
+
</div>
|
2048
|
+
<span style="font-weight: bold;">HPDF_INVALID_PNG_IMAGE</span><br>
|
2049
|
+
<div class="bodytext5">Invalid png format.<br>
|
2050
|
+
<br>
|
2051
|
+
</div>
|
2052
|
+
</div>
|
2053
|
+
<br>
|
2054
|
+
<h3><a name="HPDF_LoadRawImageFromFile_"></a>HPDF_LoadRawImageFromFile<br>
|
2055
|
+
</h3>
|
2056
|
+
<div class="bodytext1">
|
2057
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2058
|
+
<br>
|
2059
|
+
HPDF_Image<br>
|
2060
|
+
HPDF_LoadRawImageFromFile
|
2061
|
+
(HPDF_Doc
|
2062
|
+
pdf,<br>
|
2063
|
+
|
2064
|
+
<span style="font-weight: bold;">const </span>char
|
2065
|
+
*filename,<br>
|
2066
|
+
|
2067
|
+
HPDF_UINT width,<br>
|
2068
|
+
|
2069
|
+
HPDF_UINT height,<br>
|
2070
|
+
|
2071
|
+
HPDF_ColorSpace color_space);<br>
|
2072
|
+
<br>
|
2073
|
+
</div>
|
2074
|
+
<h4>Description<br>
|
2075
|
+
</h4>
|
2076
|
+
HPDF_LoadRawImageFromFile() loads an image which has "raw" image format.<br>
|
2077
|
+
This function loads the data without any conversion. So it is usually
|
2078
|
+
faster than the other functions.<br>
|
2079
|
+
<br>
|
2080
|
+
HPDF_LoadRawImageFromFile() can load 3 types of format described below.<br>
|
2081
|
+
<br>
|
2082
|
+
<span style="font-weight: bold;">1. 8 bit gray scale image.
|
2083
|
+
</span>
|
2084
|
+
<div class="bodytext5">The gray scale describes one pixel by one byte.
|
2085
|
+
And the size of the image data is same as width * height.<br>
|
2086
|
+
The sequence of the data is as follows.<br>
|
2087
|
+
<br>
|
2088
|
+
<table style="width: 100px; text-align: left;" border="1"
|
2089
|
+
cellpadding="1" cellspacing="1">
|
2090
|
+
<tbody>
|
2091
|
+
<tr>
|
2092
|
+
<td
|
2093
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">1<br>
|
2094
|
+
</td>
|
2095
|
+
<td
|
2096
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">2<br>
|
2097
|
+
</td>
|
2098
|
+
<td
|
2099
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">3<br>
|
2100
|
+
</td>
|
2101
|
+
<td
|
2102
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">4<br>
|
2103
|
+
</td>
|
2104
|
+
</tr>
|
2105
|
+
<tr>
|
2106
|
+
<td
|
2107
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">6<br>
|
2108
|
+
</td>
|
2109
|
+
<td
|
2110
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">7<br>
|
2111
|
+
</td>
|
2112
|
+
<td
|
2113
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">8<br>
|
2114
|
+
</td>
|
2115
|
+
<td
|
2116
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">9<br>
|
2117
|
+
</td>
|
2118
|
+
</tr>
|
2119
|
+
<tr>
|
2120
|
+
<td
|
2121
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">11<br>
|
2122
|
+
</td>
|
2123
|
+
<td
|
2124
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">12<br>
|
2125
|
+
</td>
|
2126
|
+
<td
|
2127
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">13<br>
|
2128
|
+
</td>
|
2129
|
+
<td
|
2130
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); text-align: center;">14<br>
|
2131
|
+
</td>
|
2132
|
+
</tr>
|
2133
|
+
</tbody>
|
2134
|
+
</table>
|
2135
|
+
<br>
|
2136
|
+
</div>
|
2137
|
+
<span style="font-weight: bold;">1. 24bit RGB color image.
|
2138
|
+
</span>
|
2139
|
+
<div class="bodytext5">The 24bit RGB color image describes one pixel by
|
2140
|
+
3 byte (each one byte describes a value of either red, green or blue).
|
2141
|
+
And the size of the image is same as width * height * 3.<br>
|
2142
|
+
The sequence of the data is as follows.<br>
|
2143
|
+
<br>
|
2144
|
+
<table style="width: 100px; text-align: left;" border="1"
|
2145
|
+
cellpadding="1" cellspacing="1">
|
2146
|
+
<tbody>
|
2147
|
+
<tr>
|
2148
|
+
<td
|
2149
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">1<br>
|
2150
|
+
</td>
|
2151
|
+
<td
|
2152
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">1<br>
|
2153
|
+
</td>
|
2154
|
+
<td
|
2155
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">1<br>
|
2156
|
+
</td>
|
2157
|
+
<td
|
2158
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">2<br>
|
2159
|
+
</td>
|
2160
|
+
<td
|
2161
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">2<br>
|
2162
|
+
</td>
|
2163
|
+
<td
|
2164
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">2<br>
|
2165
|
+
</td>
|
2166
|
+
<td
|
2167
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">3<br>
|
2168
|
+
</td>
|
2169
|
+
<td
|
2170
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">3<br>
|
2171
|
+
</td>
|
2172
|
+
<td
|
2173
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">3<br>
|
2174
|
+
</td>
|
2175
|
+
<td
|
2176
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">4<br>
|
2177
|
+
</td>
|
2178
|
+
<td
|
2179
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">4<br>
|
2180
|
+
</td>
|
2181
|
+
<td
|
2182
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">4<br>
|
2183
|
+
</td>
|
2184
|
+
</tr>
|
2185
|
+
<tr>
|
2186
|
+
<td
|
2187
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">6<br>
|
2188
|
+
</td>
|
2189
|
+
<td
|
2190
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">6<br>
|
2191
|
+
</td>
|
2192
|
+
<td
|
2193
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">6<br>
|
2194
|
+
</td>
|
2195
|
+
<td
|
2196
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">7<br>
|
2197
|
+
</td>
|
2198
|
+
<td
|
2199
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">7<br>
|
2200
|
+
</td>
|
2201
|
+
<td
|
2202
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">7<br>
|
2203
|
+
</td>
|
2204
|
+
<td
|
2205
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">8<br>
|
2206
|
+
</td>
|
2207
|
+
<td
|
2208
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">8<br>
|
2209
|
+
</td>
|
2210
|
+
<td
|
2211
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">8<br>
|
2212
|
+
</td>
|
2213
|
+
<td
|
2214
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">9<br>
|
2215
|
+
</td>
|
2216
|
+
<td
|
2217
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">9<br>
|
2218
|
+
</td>
|
2219
|
+
<td
|
2220
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">9<br>
|
2221
|
+
</td>
|
2222
|
+
</tr>
|
2223
|
+
<tr>
|
2224
|
+
<td
|
2225
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">11<br>
|
2226
|
+
</td>
|
2227
|
+
<td
|
2228
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">11<br>
|
2229
|
+
</td>
|
2230
|
+
<td
|
2231
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">11<br>
|
2232
|
+
</td>
|
2233
|
+
<td
|
2234
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">12<br>
|
2235
|
+
</td>
|
2236
|
+
<td
|
2237
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">12<br>
|
2238
|
+
</td>
|
2239
|
+
<td
|
2240
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">12<br>
|
2241
|
+
</td>
|
2242
|
+
<td
|
2243
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">13<br>
|
2244
|
+
</td>
|
2245
|
+
<td
|
2246
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">13<br>
|
2247
|
+
</td>
|
2248
|
+
<td
|
2249
|
+
style="vertical-align: top; background-color: rgb(204, 255, 255); text-align: center;">13<br>
|
2250
|
+
</td>
|
2251
|
+
<td
|
2252
|
+
style="vertical-align: top; background-color: rgb(255, 204, 204); text-align: center;">14<br>
|
2253
|
+
</td>
|
2254
|
+
<td
|
2255
|
+
style="vertical-align: top; background-color: rgb(153, 255, 153); text-align: center;">14<br>
|
2256
|
+
</td>
|
2257
|
+
<td
|
2258
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">14<br>
|
2259
|
+
</td>
|
2260
|
+
</tr>
|
2261
|
+
</tbody>
|
2262
|
+
</table>
|
2263
|
+
<br>
|
2264
|
+
</div>
|
2265
|
+
<span style="font-weight: bold;">1. 36bit CMYK color image.
|
2266
|
+
</span><br>
|
2267
|
+
<div class="bodytext5">The 36bit CMYK color image describes one pixel
|
2268
|
+
by 4 byte (each one byte describes a value of either Cyan Magenta
|
2269
|
+
Yellow Black). And the size of the image is same as width * height * 4.
|
2270
|
+
<br>
|
2271
|
+
The sequence of the data is as follows.<br>
|
2272
|
+
<br>
|
2273
|
+
<table style="width: 100px; text-align: left;" border="1"
|
2274
|
+
cellpadding="1" cellspacing="1">
|
2275
|
+
<tbody>
|
2276
|
+
<tr>
|
2277
|
+
<td
|
2278
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">1<br>
|
2279
|
+
</td>
|
2280
|
+
<td
|
2281
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">1<br>
|
2282
|
+
</td>
|
2283
|
+
<td
|
2284
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">1<br>
|
2285
|
+
</td>
|
2286
|
+
<td
|
2287
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">1<br>
|
2288
|
+
</td>
|
2289
|
+
<td
|
2290
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">2<br>
|
2291
|
+
</td>
|
2292
|
+
<td
|
2293
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">2<br>
|
2294
|
+
</td>
|
2295
|
+
<td
|
2296
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">2<br>
|
2297
|
+
</td>
|
2298
|
+
<td
|
2299
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">2<br>
|
2300
|
+
</td>
|
2301
|
+
<td
|
2302
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">3<br>
|
2303
|
+
</td>
|
2304
|
+
<td
|
2305
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">3<br>
|
2306
|
+
</td>
|
2307
|
+
<td
|
2308
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">3<br>
|
2309
|
+
</td>
|
2310
|
+
<td
|
2311
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">3<br>
|
2312
|
+
</td>
|
2313
|
+
<td
|
2314
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">4<br>
|
2315
|
+
</td>
|
2316
|
+
<td
|
2317
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">4<br>
|
2318
|
+
</td>
|
2319
|
+
<td
|
2320
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">4<br>
|
2321
|
+
</td>
|
2322
|
+
<td
|
2323
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">4<br>
|
2324
|
+
</td>
|
2325
|
+
</tr>
|
2326
|
+
<tr>
|
2327
|
+
<td
|
2328
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">6<br>
|
2329
|
+
</td>
|
2330
|
+
<td
|
2331
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">6<br>
|
2332
|
+
</td>
|
2333
|
+
<td
|
2334
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">6<br>
|
2335
|
+
</td>
|
2336
|
+
<td
|
2337
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">6<br>
|
2338
|
+
</td>
|
2339
|
+
<td
|
2340
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">7<br>
|
2341
|
+
</td>
|
2342
|
+
<td
|
2343
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">7<br>
|
2344
|
+
</td>
|
2345
|
+
<td
|
2346
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">7<br>
|
2347
|
+
</td>
|
2348
|
+
<td
|
2349
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">7<br>
|
2350
|
+
</td>
|
2351
|
+
<td
|
2352
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">8<br>
|
2353
|
+
</td>
|
2354
|
+
<td
|
2355
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">8<br>
|
2356
|
+
</td>
|
2357
|
+
<td
|
2358
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">8<br>
|
2359
|
+
</td>
|
2360
|
+
<td
|
2361
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">8<br>
|
2362
|
+
</td>
|
2363
|
+
<td
|
2364
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">9<br>
|
2365
|
+
</td>
|
2366
|
+
<td
|
2367
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">9<br>
|
2368
|
+
</td>
|
2369
|
+
<td
|
2370
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">9<br>
|
2371
|
+
</td>
|
2372
|
+
<td
|
2373
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">9<br>
|
2374
|
+
</td>
|
2375
|
+
</tr>
|
2376
|
+
<tr>
|
2377
|
+
<td
|
2378
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">11<br>
|
2379
|
+
</td>
|
2380
|
+
<td
|
2381
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">11<br>
|
2382
|
+
</td>
|
2383
|
+
<td
|
2384
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">11<br>
|
2385
|
+
</td>
|
2386
|
+
<td
|
2387
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">11<br>
|
2388
|
+
</td>
|
2389
|
+
<td
|
2390
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">12<br>
|
2391
|
+
</td>
|
2392
|
+
<td
|
2393
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">12<br>
|
2394
|
+
</td>
|
2395
|
+
<td
|
2396
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">12<br>
|
2397
|
+
</td>
|
2398
|
+
<td
|
2399
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">12<br>
|
2400
|
+
</td>
|
2401
|
+
<td
|
2402
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">13<br>
|
2403
|
+
</td>
|
2404
|
+
<td
|
2405
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">13<br>
|
2406
|
+
</td>
|
2407
|
+
<td
|
2408
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">13<br>
|
2409
|
+
</td>
|
2410
|
+
<td
|
2411
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">13<br>
|
2412
|
+
</td>
|
2413
|
+
<td
|
2414
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 255, 255);">14<br>
|
2415
|
+
</td>
|
2416
|
+
<td
|
2417
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 204, 255);">14<br>
|
2418
|
+
</td>
|
2419
|
+
<td
|
2420
|
+
style="vertical-align: top; text-align: center; background-color: rgb(255, 255, 153);">14<br>
|
2421
|
+
</td>
|
2422
|
+
<td
|
2423
|
+
style="vertical-align: top; text-align: center; background-color: rgb(204, 204, 204);">14<br>
|
2424
|
+
</td>
|
2425
|
+
</tr>
|
2426
|
+
</tbody>
|
2427
|
+
</table>
|
2428
|
+
<br>
|
2429
|
+
</div>
|
2430
|
+
<br>
|
2431
|
+
<h4>Parameter</h4>
|
2432
|
+
<span style="font-weight: bold;">pdf</span>
|
2433
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2434
|
+
<br>
|
2435
|
+
</div>
|
2436
|
+
<span style="font-weight: bold;">filename
|
2437
|
+
</span>
|
2438
|
+
<div class="bodytext5">A path to a image file.<br>
|
2439
|
+
<br>
|
2440
|
+
</div>
|
2441
|
+
<span style="font-weight: bold;">width</span><br>
|
2442
|
+
<div class="bodytext5">The width of an image file. <br>
|
2443
|
+
<br>
|
2444
|
+
</div>
|
2445
|
+
<span style="font-weight: bold;">height</span><br>
|
2446
|
+
<div class="bodytext5">The height of an image file. <br>
|
2447
|
+
<br>
|
2448
|
+
</div>
|
2449
|
+
<span style="font-weight: bold;">color_space</span><br>
|
2450
|
+
<div class="bodytext5">HPDF_CS_DEVICE_GRAY or HPDF_CS_DEVICE_RGB or
|
2451
|
+
HPDF_CS_DEVICE_CMYK is allowed.<br>
|
2452
|
+
</div>
|
2453
|
+
<br>
|
2454
|
+
<h4>Returns</h4>
|
2455
|
+
When HPDF_LoadRawImageFromFile() succeeds, it returns the handle
|
2456
|
+
of an image object. Otherwise, it returns NULL and error-handler
|
2457
|
+
is called.<br>
|
2458
|
+
<br>
|
2459
|
+
<h4>Error</h4>
|
2460
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2461
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2462
|
+
<br>
|
2463
|
+
</div>
|
2464
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2465
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2466
|
+
<br>
|
2467
|
+
</div>
|
2468
|
+
<span style="font-weight: bold;">HPDF_INVALID_COLOR_SPACE</span><br>
|
2469
|
+
<div class="bodytext5">An invalid color_space value is specified.<br>
|
2470
|
+
<br>
|
2471
|
+
</div>
|
2472
|
+
<span style="font-weight: bold;">HPDF_INVALID_IMAGE</span><br>
|
2473
|
+
<div class="bodytext5">The size of an image data is invalid.<br>
|
2474
|
+
<br>
|
2475
|
+
</div>
|
2476
|
+
<span style="font-weight: bold;">HPDF_FILE_IO_ERROR</span><br>
|
2477
|
+
<div class="bodytext5">Cannot read data from the file.<br>
|
2478
|
+
</div>
|
2479
|
+
</div>
|
2480
|
+
<br>
|
2481
|
+
<h3><a name="HPDF_LoadRawImageFromMem_"></a>HPDF_LoadRawImageFromMem<br>
|
2482
|
+
</h3>
|
2483
|
+
<div class="bodytext1">
|
2484
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2485
|
+
<br>
|
2486
|
+
HPDF_Image<br>
|
2487
|
+
HPDF_LoadRawImageFromMem
|
2488
|
+
(HPDF_Doc
|
2489
|
+
pdf,<br>
|
2490
|
+
|
2491
|
+
<span style="font-weight: bold;">const </span>HPDF_BYTE
|
2492
|
+
*buf,<br>
|
2493
|
+
|
2494
|
+
HPDF_UINT width,<br>
|
2495
|
+
|
2496
|
+
HPDF_UINT height,<br>
|
2497
|
+
|
2498
|
+
HPDF_ColorSpace color_space,<br>
|
2499
|
+
|
2500
|
+
HPDF_UINT
|
2501
|
+
bits_per_component);<br>
|
2502
|
+
<br>
|
2503
|
+
</div>
|
2504
|
+
<h4>Description<br>
|
2505
|
+
</h4>
|
2506
|
+
HPDF_LoadRawImageFromMem() loads an image which has "raw" image format
|
2507
|
+
from buffer.<br>
|
2508
|
+
This function loads the data without any conversion. So it is usually
|
2509
|
+
faster than the other functions.<br>
|
2510
|
+
<br>
|
2511
|
+
The formats that HPDF_LoadRawImageFromMem() can load is the same as
|
2512
|
+
HPDF_LoadRawImageFromFile().<br>
|
2513
|
+
<br>
|
2514
|
+
<h4>Parameter</h4>
|
2515
|
+
<span style="font-weight: bold;">pdf</span>
|
2516
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2517
|
+
<br>
|
2518
|
+
</div>
|
2519
|
+
<span style="font-weight: bold;">buf</span>
|
2520
|
+
<div class="bodytext5">The pointer to the image data.<br>
|
2521
|
+
<br>
|
2522
|
+
</div>
|
2523
|
+
<span style="font-weight: bold;">width</span><br>
|
2524
|
+
<div class="bodytext5">The width of an image file. <br>
|
2525
|
+
<br>
|
2526
|
+
</div>
|
2527
|
+
<span style="font-weight: bold;">height</span><br>
|
2528
|
+
<div class="bodytext5">The height of an image file. <br>
|
2529
|
+
<br>
|
2530
|
+
</div>
|
2531
|
+
<span style="font-weight: bold;">color_space</span><br>
|
2532
|
+
<div class="bodytext5">HPDF_CS_DEVICE_GRAY or HPDF_CS_DEVICE_RGB or
|
2533
|
+
HPDF_CS_DEVICE_CMYK is allowed.<br>
|
2534
|
+
<br>
|
2535
|
+
</div>
|
2536
|
+
<span style="font-weight: bold;">bits_per_component</span><br>
|
2537
|
+
<div class="bodytext5">The bit size of each color component. The valid
|
2538
|
+
value is either 1, 2, 4, 8. <br>
|
2539
|
+
<br>
|
2540
|
+
</div>
|
2541
|
+
<br>
|
2542
|
+
<h4>Returns</h4>
|
2543
|
+
When HPDF_LoadRawImageFromMem() succeeds, it returns the handle
|
2544
|
+
of an image object. Otherwise, it returns NULL and error-handler
|
2545
|
+
is called.<br>
|
2546
|
+
<br>
|
2547
|
+
<h4>Error</h4>
|
2548
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2549
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2550
|
+
<br>
|
2551
|
+
</div>
|
2552
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2553
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2554
|
+
<br>
|
2555
|
+
</div>
|
2556
|
+
<span style="font-weight: bold;">HPDF_INVALID_COLOR_SPACE</span><br>
|
2557
|
+
<div class="bodytext5">An invalid color_space value is specified.<br>
|
2558
|
+
<br>
|
2559
|
+
</div>
|
2560
|
+
<span style="font-weight: bold;">HPDF_INVALID_IMAGE</span><br>
|
2561
|
+
<div class="bodytext5">The size of an image data is invalid.<br>
|
2562
|
+
<br>
|
2563
|
+
</div>
|
2564
|
+
</div>
|
2565
|
+
<br>
|
2566
|
+
<h3><a name="HPDF_LoadJpegImageFromFile_"></a>HPDF_LoadJpegImageFromFile<br>
|
2567
|
+
</h3>
|
2568
|
+
<div class="bodytext1">
|
2569
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2570
|
+
<br>
|
2571
|
+
HPDF_Image<br>
|
2572
|
+
HPDF_LoadJpegImageFromFile (HPDF_Doc pdf,<br>
|
2573
|
+
|
2574
|
+
|
2575
|
+
<span style="font-weight: bold;">const </span>char
|
2576
|
+
*filename);<br>
|
2577
|
+
<br>
|
2578
|
+
</div>
|
2579
|
+
<h4>Description<br>
|
2580
|
+
</h4>
|
2581
|
+
HPDF_LoadJpegImageFromFile() loads an external Jpeg image file.<br>
|
2582
|
+
<br>
|
2583
|
+
<h4>Parameter</h4>
|
2584
|
+
<span style="font-weight: bold;">pdf</span>
|
2585
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2586
|
+
<br>
|
2587
|
+
</div>
|
2588
|
+
<span style="font-weight: bold;">filename
|
2589
|
+
</span>
|
2590
|
+
<div class="bodytext5">A path to a Jpeg image file. <br>
|
2591
|
+
<br>
|
2592
|
+
</div>
|
2593
|
+
<br>
|
2594
|
+
<h4>Returns</h4>
|
2595
|
+
When HPDF_LoadJpegImageFromFile() succeeds, it returns the handle
|
2596
|
+
of an image object. Otherwise, it returns NULL and error-handler
|
2597
|
+
is called.<br>
|
2598
|
+
<br>
|
2599
|
+
<h4>Error</h4>
|
2600
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2601
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2602
|
+
<br>
|
2603
|
+
</div>
|
2604
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2605
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2606
|
+
<br>
|
2607
|
+
</div>
|
2608
|
+
<span style="font-weight: bold;">HPDF_UNSUPPORTED_JPEG_FORMAT</span><br>
|
2609
|
+
<div class="bodytext5">Unsupported () JPEG image format.<br>
|
2610
|
+
<br>
|
2611
|
+
</div>
|
2612
|
+
</div>
|
2613
|
+
<br>
|
2614
|
+
<h3><a name="HPDF_SetInfoAttr_"></a>HPDF_SetInfoAttr<br>
|
2615
|
+
</h3>
|
2616
|
+
<div class="bodytext1">
|
2617
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2618
|
+
<br>
|
2619
|
+
HPDF_STATUS<br>
|
2620
|
+
HPDF_SetInfoAttr (HPDF_Doc
|
2621
|
+
pdf,<br>
|
2622
|
+
|
2623
|
+
HPDF_InfoType type,<br>
|
2624
|
+
|
2625
|
+
<span style="font-weight: bold;">const </span>char
|
2626
|
+
*value);<br>
|
2627
|
+
</div>
|
2628
|
+
<h4>Description<br>
|
2629
|
+
</h4>
|
2630
|
+
HPDF_SetInfoAttr() sets the text of the info dictionary.
|
2631
|
+
HPDF_SetInfoAttr() uses the current encoding of the document. If it is
|
2632
|
+
not set, the PDFDocEncoding is used.<br>
|
2633
|
+
<br>
|
2634
|
+
<h4>Parameter</h4>
|
2635
|
+
<span style="font-weight: bold;">pdf</span>
|
2636
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2637
|
+
<br>
|
2638
|
+
</div>
|
2639
|
+
<span style="font-weight: bold;">type</span>
|
2640
|
+
<div class="bodytext5">The following values are available.<br>
|
2641
|
+
<ul>
|
2642
|
+
<li>HPDF_INFO_AUTHOR</li>
|
2643
|
+
<li>HPDF_INFO_CREATOR<br>
|
2644
|
+
</li>
|
2645
|
+
<li>HPDF_INFO_TITLE<br>
|
2646
|
+
</li>
|
2647
|
+
<li>HPDF_INFO_SUBJECT</li>
|
2648
|
+
<li>HPDF_INFO_KEYWORDS<br>
|
2649
|
+
</li>
|
2650
|
+
</ul>
|
2651
|
+
</div>
|
2652
|
+
<span style="font-weight: bold;">value</span><br>
|
2653
|
+
<div class="bodytext5">A text to set the infomation. <br>
|
2654
|
+
</div>
|
2655
|
+
<br>
|
2656
|
+
<h4>Returns</h4>
|
2657
|
+
When HPDF_SetInfoAttr() succeeds, it returns HPDF_OK. Otherwise,
|
2658
|
+
it returns error code and error-handler
|
2659
|
+
is called.<br>
|
2660
|
+
<br>
|
2661
|
+
<h4>Error</h4>
|
2662
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2663
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2664
|
+
<br>
|
2665
|
+
</div>
|
2666
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2667
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2668
|
+
<br>
|
2669
|
+
</div>
|
2670
|
+
<span style="font-weight: bold;">HPDF_INVALID_PARAMETER</span><br>
|
2671
|
+
<div class="bodytext5">An invalid type parameter was set.<br>
|
2672
|
+
<br>
|
2673
|
+
</div>
|
2674
|
+
</div>
|
2675
|
+
<br>
|
2676
|
+
<h3><a name="HPDF_GetInfoAttr"></a>HPDF_GetInfoAttr</h3>
|
2677
|
+
<div class="bodytext1">
|
2678
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2679
|
+
<br>
|
2680
|
+
<span style="font-weight: bold;">const </span>char*<br>
|
2681
|
+
HPDF_GetInfoAttr (HPDF_Doc
|
2682
|
+
pdf,<br>
|
2683
|
+
|
2684
|
+
HPDF_InfoType type);<br>
|
2685
|
+
<br>
|
2686
|
+
</div>
|
2687
|
+
<h4>Description<br>
|
2688
|
+
</h4>
|
2689
|
+
HPDF_GetInfoAttr() gets the string value fron info dictionary.<br>
|
2690
|
+
<br>
|
2691
|
+
<h4>Parameter</h4>
|
2692
|
+
<span style="font-weight: bold;">pdf</span>
|
2693
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2694
|
+
<br>
|
2695
|
+
</div>
|
2696
|
+
<span style="font-weight: bold;">type</span>
|
2697
|
+
<div class="bodytext5">The following values are available.<br>
|
2698
|
+
<ul>
|
2699
|
+
<li>HPDF_INFO_CREATION_DATE</li>
|
2700
|
+
<li>HPDF_INFO_MOD_DATE</li>
|
2701
|
+
<li>HPDF_INFO_AUTHOR</li>
|
2702
|
+
<li>HPDF_INFO_CREATOR<br>
|
2703
|
+
</li>
|
2704
|
+
<li>HPDF_INFO_TITLE<br>
|
2705
|
+
</li>
|
2706
|
+
<li>HPDF_INFO_SUBJECT</li>
|
2707
|
+
<li>HPDF_INFO_KEYWORDS</li>
|
2708
|
+
</ul>
|
2709
|
+
</div>
|
2710
|
+
<h4>Returns</h4>
|
2711
|
+
When HPDF_GetInfoAttr() succeeds, it returns the string value of the
|
2712
|
+
info dictionary.<br>
|
2713
|
+
If the infomation has not been set or an error has occurred, it returns
|
2714
|
+
NULL<br>
|
2715
|
+
<br>
|
2716
|
+
<h4>Error</h4>
|
2717
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2718
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2719
|
+
<br>
|
2720
|
+
</div>
|
2721
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2722
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2723
|
+
<br>
|
2724
|
+
</div>
|
2725
|
+
<span style="font-weight: bold;">HPDF_INVALID_PARAMETER</span><br>
|
2726
|
+
<div class="bodytext5">An invalid type parameter was set.<br>
|
2727
|
+
</div>
|
2728
|
+
</div>
|
2729
|
+
<br>
|
2730
|
+
<h3><a name="HPDF_SetInfoDateAttr_"></a>HPDF_SetInfoDateAttr<br>
|
2731
|
+
</h3>
|
2732
|
+
<div class="bodytext1">
|
2733
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2734
|
+
<br>
|
2735
|
+
typedef struct _HPDF_Date {<br>
|
2736
|
+
HPDF_INT year;<br>
|
2737
|
+
HPDF_INT month;<br>
|
2738
|
+
HPDF_INT day;<br>
|
2739
|
+
HPDF_INT hour;<br>
|
2740
|
+
HPDF_INT minutes;<br>
|
2741
|
+
HPDF_INT seconds;<br>
|
2742
|
+
char ind;<br>
|
2743
|
+
HPDF_INT off_hour;<br>
|
2744
|
+
HPDF_INT off_minutes;<br>
|
2745
|
+
} HPDF_Date;<br>
|
2746
|
+
<br>
|
2747
|
+
HPDF_STATUS<br>
|
2748
|
+
HPDF_Info_SetInfoDateAttr (HPDF_Dict info,<br>
|
2749
|
+
|
2750
|
+
HPDF_InfoType type,<br>
|
2751
|
+
|
2752
|
+
HPDF_Date value);<br>
|
2753
|
+
<br>
|
2754
|
+
</div>
|
2755
|
+
<h4>Description<br>
|
2756
|
+
</h4>
|
2757
|
+
HPDF_SetInfoDateAttr() sets the datetime value to the info dictionary. <br>
|
2758
|
+
<br>
|
2759
|
+
<h4>Parameter</h4>
|
2760
|
+
<span style="font-weight: bold;">pdf</span>
|
2761
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2762
|
+
<br>
|
2763
|
+
</div>
|
2764
|
+
<span style="font-weight: bold;">type</span>
|
2765
|
+
<div class="bodytext5">The following values are available.<br>
|
2766
|
+
<ul>
|
2767
|
+
<li>HPDF_INFO_CREATION_DATE</li>
|
2768
|
+
<li>HPDF_INFO_MOD_DATE<br>
|
2769
|
+
</li>
|
2770
|
+
</ul>
|
2771
|
+
</div>
|
2772
|
+
<span style="font-weight: bold;">value</span><br>
|
2773
|
+
<div class="bodytext5">A datetime value to set the infomation.<br>
|
2774
|
+
<br>
|
2775
|
+
HPDF_Date struct<br>
|
2776
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="2"
|
2777
|
+
cellspacing="2">
|
2778
|
+
<tbody>
|
2779
|
+
<tr>
|
2780
|
+
<td
|
2781
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204); width: 28px; text-align: right;"><br>
|
2782
|
+
</td>
|
2783
|
+
<td
|
2784
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">name<br>
|
2785
|
+
</td>
|
2786
|
+
<td
|
2787
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">effective
|
2788
|
+
values<br>
|
2789
|
+
</td>
|
2790
|
+
</tr>
|
2791
|
+
<tr>
|
2792
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">1<br>
|
2793
|
+
</td>
|
2794
|
+
<td style="vertical-align: top;">year<br>
|
2795
|
+
</td>
|
2796
|
+
<td style="vertical-align: top;"><br>
|
2797
|
+
</td>
|
2798
|
+
</tr>
|
2799
|
+
<tr>
|
2800
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">2<br>
|
2801
|
+
</td>
|
2802
|
+
<td style="vertical-align: top;">month<br>
|
2803
|
+
</td>
|
2804
|
+
<td style="vertical-align: top;">between 1 and 12.</td>
|
2805
|
+
</tr>
|
2806
|
+
<tr>
|
2807
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">3<br>
|
2808
|
+
</td>
|
2809
|
+
<td style="vertical-align: top;">day<br>
|
2810
|
+
</td>
|
2811
|
+
<td style="vertical-align: top;">between 1 and ether of 28, 29,
|
2812
|
+
30, 31. (It is different by the month.)<br>
|
2813
|
+
</td>
|
2814
|
+
</tr>
|
2815
|
+
<tr>
|
2816
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">4<br>
|
2817
|
+
</td>
|
2818
|
+
<td style="vertical-align: top;">hour<br>
|
2819
|
+
</td>
|
2820
|
+
<td style="vertical-align: top;">0 to 23<br>
|
2821
|
+
</td>
|
2822
|
+
</tr>
|
2823
|
+
<tr>
|
2824
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">5<br>
|
2825
|
+
</td>
|
2826
|
+
<td style="vertical-align: top;">minutes<br>
|
2827
|
+
</td>
|
2828
|
+
<td style="vertical-align: top;">0 to 59<br>
|
2829
|
+
</td>
|
2830
|
+
</tr>
|
2831
|
+
<tr>
|
2832
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">6<br>
|
2833
|
+
</td>
|
2834
|
+
<td style="vertical-align: top;">seconds<br>
|
2835
|
+
</td>
|
2836
|
+
<td style="vertical-align: top;">0 to 59<br>
|
2837
|
+
</td>
|
2838
|
+
</tr>
|
2839
|
+
<tr>
|
2840
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">7<br>
|
2841
|
+
</td>
|
2842
|
+
<td style="vertical-align: top;">ind<br>
|
2843
|
+
</td>
|
2844
|
+
<td style="vertical-align: top;">the relationship of local time
|
2845
|
+
to Universal Time.<br>
|
2846
|
+
" ", +, −, and Z are available.<br>
|
2847
|
+
</td>
|
2848
|
+
</tr>
|
2849
|
+
<tr>
|
2850
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">8<br>
|
2851
|
+
</td>
|
2852
|
+
<td style="vertical-align: top;">off_hour<br>
|
2853
|
+
</td>
|
2854
|
+
<td style="vertical-align: top;">if ind is not space, 0 to 23 is
|
2855
|
+
valid. Otherwise, this value is ignored.<br>
|
2856
|
+
</td>
|
2857
|
+
</tr>
|
2858
|
+
<tr>
|
2859
|
+
<td style="vertical-align: top; width: 28px; text-align: right;">9<br>
|
2860
|
+
</td>
|
2861
|
+
<td style="vertical-align: top;">off_minutes<br>
|
2862
|
+
</td>
|
2863
|
+
<td style="vertical-align: top;">if ind is not space, 0 to 59 is
|
2864
|
+
valid. Otherwise, this value is ignored.</td>
|
2865
|
+
</tr>
|
2866
|
+
</tbody>
|
2867
|
+
</table>
|
2868
|
+
<br>
|
2869
|
+
</div>
|
2870
|
+
<br>
|
2871
|
+
<h4>Returns</h4>
|
2872
|
+
When HPDF_SetInfoDateAttr() succeeds, it returns HPDF_OK.
|
2873
|
+
Otherwise, it returns error code and error-handler
|
2874
|
+
is called.<br>
|
2875
|
+
<br>
|
2876
|
+
<h4>Error</h4>
|
2877
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2878
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2879
|
+
<br>
|
2880
|
+
</div>
|
2881
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2882
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2883
|
+
<br>
|
2884
|
+
</div>
|
2885
|
+
<span style="font-weight: bold;">HPDF_INVALID_PARAMETER</span><br>
|
2886
|
+
<div class="bodytext5">An invalid type parameter was set.<br>
|
2887
|
+
<br>
|
2888
|
+
</div>
|
2889
|
+
<span style="font-weight: bold;">HPDF_INVALID_DATE_TIME
|
2890
|
+
</span>
|
2891
|
+
<div class="bodytext5">An invalid datetime value was set.<br>
|
2892
|
+
<br>
|
2893
|
+
</div>
|
2894
|
+
</div>
|
2895
|
+
<br>
|
2896
|
+
<h3><a name="HPDF_SetPassword_"></a>HPDF_SetPassword<br>
|
2897
|
+
</h3>
|
2898
|
+
<div class="bodytext1">
|
2899
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2900
|
+
<br>
|
2901
|
+
HPDF_STATUS<br>
|
2902
|
+
HPDF_SetPassword (HPDF_Doc pdf,<br>
|
2903
|
+
|
2904
|
+
const char *owner_passwd,<br>
|
2905
|
+
|
2906
|
+
const char *user_passwd);<br>
|
2907
|
+
<br>
|
2908
|
+
</div>
|
2909
|
+
<h4>Description<br>
|
2910
|
+
</h4>
|
2911
|
+
HPDF_SetPassword() sets the pasword for the document.<br>
|
2912
|
+
If the password is set, contents in the document are encrypted. <br>
|
2913
|
+
<br>
|
2914
|
+
<h4>Parameter</h4>
|
2915
|
+
<span style="font-weight: bold;">pdf</span>
|
2916
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2917
|
+
<br>
|
2918
|
+
</div>
|
2919
|
+
<span style="font-weight: bold;">owner_password</span>
|
2920
|
+
<div class="bodytext5">The password for the owner of the document. The
|
2921
|
+
owner can change the permission of the document.<br>
|
2922
|
+
NULL, zero length string and the same value as user password are not
|
2923
|
+
allowed. <br>
|
2924
|
+
<br>
|
2925
|
+
</div>
|
2926
|
+
<span style="font-weight: bold;">user_password</span><br>
|
2927
|
+
<div class="bodytext5">The password for the user of the document. The
|
2928
|
+
user_password is allowed to be set to NULL or zero length string.<br>
|
2929
|
+
</div>
|
2930
|
+
<br>
|
2931
|
+
<h4>Returns</h4>
|
2932
|
+
When HPDF_SetPassword() succeeds, it returns HPDF_OK.
|
2933
|
+
Otherwise, it returns error code and error-handler
|
2934
|
+
is called.<br>
|
2935
|
+
<br>
|
2936
|
+
<h4>Error</h4>
|
2937
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
2938
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
2939
|
+
<br>
|
2940
|
+
</div>
|
2941
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
2942
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
2943
|
+
<br>
|
2944
|
+
</div>
|
2945
|
+
<span style="font-weight: bold;">HPDF_INVALID_PASSWORD</span><br>
|
2946
|
+
<div class="bodytext5">NULL, zero length string and the same value as
|
2947
|
+
user password are set to owner-password.<br>
|
2948
|
+
<br>
|
2949
|
+
</div>
|
2950
|
+
</div>
|
2951
|
+
<br>
|
2952
|
+
<h3><a name="HPDF_SetPermission_"></a>HPDF_SetPermission<br>
|
2953
|
+
</h3>
|
2954
|
+
<div class="bodytext1">
|
2955
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
2956
|
+
<br>
|
2957
|
+
HPDF_STATUS<br>
|
2958
|
+
HPDF_SetPermission (HPDF_Doc pdf,<br>
|
2959
|
+
|
2960
|
+
HPDF_UINT permission);<br>
|
2961
|
+
<br>
|
2962
|
+
</div>
|
2963
|
+
<h4>Description<br>
|
2964
|
+
</h4>
|
2965
|
+
HPDF_SetPermission() set the flags of the permission for the document.<br>
|
2966
|
+
<br>
|
2967
|
+
<h4>Parameter</h4>
|
2968
|
+
<span style="font-weight: bold;">pdf</span>
|
2969
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
2970
|
+
<br>
|
2971
|
+
</div>
|
2972
|
+
<span style="font-weight: bold;">permission</span><br>
|
2973
|
+
<div class="bodytext5">The flags specifying which operations are
|
2974
|
+
permitted. This parameter is set by logical addition of the following
|
2975
|
+
values.<br>
|
2976
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="1"
|
2977
|
+
cellspacing="1">
|
2978
|
+
<tbody>
|
2979
|
+
<tr>
|
2980
|
+
<td
|
2981
|
+
style="vertical-align: top; text-align: right; width: 24px; background-color: rgb(204, 204, 204);"><br>
|
2982
|
+
</td>
|
2983
|
+
<td
|
2984
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">value<br>
|
2985
|
+
</td>
|
2986
|
+
<td
|
2987
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">description<br>
|
2988
|
+
</td>
|
2989
|
+
</tr>
|
2990
|
+
<tr>
|
2991
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">1<br>
|
2992
|
+
</td>
|
2993
|
+
<td style="vertical-align: top;">HPDF_ENABLE_READ<br>
|
2994
|
+
</td>
|
2995
|
+
<td style="vertical-align: top;">user can read the document.<br>
|
2996
|
+
</td>
|
2997
|
+
</tr>
|
2998
|
+
<tr>
|
2999
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">2<br>
|
3000
|
+
</td>
|
3001
|
+
<td style="vertical-align: top;">HPDF_ENABLE_PRINT<br>
|
3002
|
+
</td>
|
3003
|
+
<td style="vertical-align: top;">user can print the document.<br>
|
3004
|
+
</td>
|
3005
|
+
</tr>
|
3006
|
+
<tr>
|
3007
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">3<br>
|
3008
|
+
</td>
|
3009
|
+
<td style="vertical-align: top;">HPDF_ENABLE_EDIT_ALL<br>
|
3010
|
+
</td>
|
3011
|
+
<td style="vertical-align: top;">user can edit the contents of
|
3012
|
+
the document other than annotations, form fields.<br>
|
3013
|
+
</td>
|
3014
|
+
</tr>
|
3015
|
+
<tr>
|
3016
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">4<br>
|
3017
|
+
</td>
|
3018
|
+
<td style="vertical-align: top;">HPDF_ENABLE_COPY<br>
|
3019
|
+
</td>
|
3020
|
+
<td style="vertical-align: top;">user can copy the text and the
|
3021
|
+
graphics of the document.</td>
|
3022
|
+
</tr>
|
3023
|
+
<tr>
|
3024
|
+
<td style="vertical-align: top; text-align: right;">5<br>
|
3025
|
+
</td>
|
3026
|
+
<td style="vertical-align: top;">HPDF_ENABLE_EDIT<br>
|
3027
|
+
</td>
|
3028
|
+
<td style="vertical-align: top;">user can add or modify the
|
3029
|
+
annotations and form fields of the document.<br>
|
3030
|
+
</td>
|
3031
|
+
</tr>
|
3032
|
+
</tbody>
|
3033
|
+
</table>
|
3034
|
+
<br>
|
3035
|
+
</div>
|
3036
|
+
<br>
|
3037
|
+
<h4>Returns</h4>
|
3038
|
+
When HPDF_SetPermission() succeeds, it returns HPDF_OK.
|
3039
|
+
Otherwise, it returns error code and error-handler
|
3040
|
+
is called.<br>
|
3041
|
+
<br>
|
3042
|
+
<h4>Error</h4>
|
3043
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
3044
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
3045
|
+
<br>
|
3046
|
+
</div>
|
3047
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM</span><br>
|
3048
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
3049
|
+
<br>
|
3050
|
+
</div>
|
3051
|
+
</div>
|
3052
|
+
<br>
|
3053
|
+
<h3><a name="HPDF_SetEncryptionMode_"></a>HPDF_SetEncryptionMode<br>
|
3054
|
+
</h3>
|
3055
|
+
<div class="bodytext1">
|
3056
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
3057
|
+
<br>
|
3058
|
+
HPDF_STATUS<br>
|
3059
|
+
HPDF_SetEncryptionMode
|
3060
|
+
(HPDF_Doc
|
3061
|
+
pdf,<br>
|
3062
|
+
|
3063
|
+
HPDF_EncryptMode mode,<br>
|
3064
|
+
|
3065
|
+
HPDF_UINT
|
3066
|
+
key_len);<br>
|
3067
|
+
<br>
|
3068
|
+
</div>
|
3069
|
+
<h4>Description<br>
|
3070
|
+
</h4>
|
3071
|
+
HPDF_SetEncryptionMode() set the type of encryption.<br>
|
3072
|
+
As the side effect, HPDF_SetEncryptionMode() ups the version of PDF to
|
3073
|
+
1.4 when the mode is set to HPDF_ENCRYPT_R3.<br>
|
3074
|
+
<br>
|
3075
|
+
<h4>Parameter</h4>
|
3076
|
+
<span style="font-weight: bold;">pdf</span>
|
3077
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
3078
|
+
<br>
|
3079
|
+
</div>
|
3080
|
+
<span style="font-weight: bold;">mode</span><br>
|
3081
|
+
<div class="bodytext5">The flags specifying which operations are
|
3082
|
+
permitted. This parameter is set by logical addition of the following
|
3083
|
+
values.<br>
|
3084
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="1"
|
3085
|
+
cellspacing="1">
|
3086
|
+
<tbody>
|
3087
|
+
<tr>
|
3088
|
+
<td
|
3089
|
+
style="vertical-align: top; text-align: right; width: 24px; background-color: rgb(204, 204, 204);"><br>
|
3090
|
+
</td>
|
3091
|
+
<td
|
3092
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">value<br>
|
3093
|
+
</td>
|
3094
|
+
<td
|
3095
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">description<br>
|
3096
|
+
</td>
|
3097
|
+
</tr>
|
3098
|
+
<tr>
|
3099
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">1<br>
|
3100
|
+
</td>
|
3101
|
+
<td style="vertical-align: top;">HPDF_ENCRYPT_R2<br>
|
3102
|
+
</td>
|
3103
|
+
<td style="vertical-align: top;">Use "Revision 2" algorithm.<br>
|
3104
|
+
The length of key is automatically set to 5(40bit).<br>
|
3105
|
+
</td>
|
3106
|
+
</tr>
|
3107
|
+
<tr>
|
3108
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">2<br>
|
3109
|
+
</td>
|
3110
|
+
<td style="vertical-align: top;">HPDF_ENCRYPT_R3<br>
|
3111
|
+
</td>
|
3112
|
+
<td style="vertical-align: top;">Use "Revision 3" algorithm.<br>
|
3113
|
+
Between 5(40bit) and 16(128bit) can be specified for length of the key.
|
3114
|
+
<br>
|
3115
|
+
</td>
|
3116
|
+
</tr>
|
3117
|
+
</tbody>
|
3118
|
+
</table>
|
3119
|
+
<br>
|
3120
|
+
</div>
|
3121
|
+
<span style="font-weight: bold;">key_len</span><br>
|
3122
|
+
<div class="bodytext5">Specify the byte length of an encryption key.
|
3123
|
+
This parameter is valid only when "mode" parameter is set to
|
3124
|
+
HPDF_ENCRYPT_R3.<br>
|
3125
|
+
Between 5(40bit) and 16(128bit) can be specified for length of the key.<br>
|
3126
|
+
</div>
|
3127
|
+
<br>
|
3128
|
+
<h4>Returns</h4>
|
3129
|
+
When HPDF_SetEncryptionMode() succeeds, it returns HPDF_OK.
|
3130
|
+
Otherwise, it returns error code and error-handler
|
3131
|
+
is called.<br>
|
3132
|
+
<br>
|
3133
|
+
<h4>Error</h4>
|
3134
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
3135
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
3136
|
+
<br>
|
3137
|
+
</div>
|
3138
|
+
<span style="font-weight: bold;">HPDF_INVALID_ENCRYPT_KEY_LEN</span><br>
|
3139
|
+
<div class="bodytext5">An invalid key length was specified.<br>
|
3140
|
+
<br>
|
3141
|
+
</div>
|
3142
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM<br>
|
3143
|
+
</span>
|
3144
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
3145
|
+
<br>
|
3146
|
+
</div>
|
3147
|
+
<br>
|
3148
|
+
</div>
|
3149
|
+
<h3><a name="HPDF_SetCompressionMode_"></a>HPDF_SetCompressionMode<br>
|
3150
|
+
</h3>
|
3151
|
+
<div class="bodytext1">
|
3152
|
+
<div class="bodycode2"><span style="font-weight: bold;">#include </span>"apdf.h"<br>
|
3153
|
+
<br>
|
3154
|
+
HPDF_STATUS<br>
|
3155
|
+
HPDF_SetCompressionMode (HPDF_Doc pdf,<br>
|
3156
|
+
|
3157
|
+
HPDF_UINT mode);<br>
|
3158
|
+
<br>
|
3159
|
+
</div>
|
3160
|
+
<h4>Description<br>
|
3161
|
+
</h4>
|
3162
|
+
HPDF_SetCompressionMode() set the mode of compression.<br>
|
3163
|
+
<br>
|
3164
|
+
<h4>Parameter</h4>
|
3165
|
+
<span style="font-weight: bold;">pdf</span>
|
3166
|
+
<div class="bodytext5">Specify the handle of a document object.<br>
|
3167
|
+
<br>
|
3168
|
+
</div>
|
3169
|
+
<span style="font-weight: bold;">mode</span><br>
|
3170
|
+
<div class="bodytext5">The flags specifying which type of contents
|
3171
|
+
should be compressed. <br>
|
3172
|
+
<table style="width: 100%; text-align: left;" border="1" cellpadding="1"
|
3173
|
+
cellspacing="1">
|
3174
|
+
<tbody>
|
3175
|
+
<tr>
|
3176
|
+
<td
|
3177
|
+
style="vertical-align: top; text-align: right; width: 24px; background-color: rgb(204, 204, 204);"><br>
|
3178
|
+
</td>
|
3179
|
+
<td
|
3180
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">value<br>
|
3181
|
+
</td>
|
3182
|
+
<td
|
3183
|
+
style="vertical-align: top; background-color: rgb(204, 204, 204);">description<br>
|
3184
|
+
</td>
|
3185
|
+
</tr>
|
3186
|
+
<tr>
|
3187
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">1<br>
|
3188
|
+
</td>
|
3189
|
+
<td style="vertical-align: top;">HPDF_COMP_NONE<br>
|
3190
|
+
</td>
|
3191
|
+
<td style="vertical-align: top;">All contents are not compressed.
|
3192
|
+
<br>
|
3193
|
+
</td>
|
3194
|
+
</tr>
|
3195
|
+
<tr>
|
3196
|
+
<td style="vertical-align: top; text-align: right; width: 24px;">2<br>
|
3197
|
+
</td>
|
3198
|
+
<td style="vertical-align: top;">HPDF_COMP_TEXT<br>
|
3199
|
+
</td>
|
3200
|
+
<td style="vertical-align: top;">Compress the contents stream of
|
3201
|
+
the page. </td>
|
3202
|
+
</tr>
|
3203
|
+
<tr>
|
3204
|
+
<td style="vertical-align: top; text-align: right;">3<br>
|
3205
|
+
</td>
|
3206
|
+
<td style="vertical-align: top;">HPDF_COMP_IMAGE<br>
|
3207
|
+
</td>
|
3208
|
+
<td style="vertical-align: top;">Compress the streams of the
|
3209
|
+
image
|
3210
|
+
objects. <br>
|
3211
|
+
</td>
|
3212
|
+
</tr>
|
3213
|
+
<tr>
|
3214
|
+
<td style="vertical-align: top; text-align: right;">4<br>
|
3215
|
+
</td>
|
3216
|
+
<td style="vertical-align: top;">HPDF_COMP_METADATA<br>
|
3217
|
+
</td>
|
3218
|
+
<td style="vertical-align: top;">Other stream datas (fonts,
|
3219
|
+
cmaps and so on) are compressed.<br>
|
3220
|
+
</td>
|
3221
|
+
</tr>
|
3222
|
+
<tr>
|
3223
|
+
<td style="vertical-align: top; text-align: right;">5<br>
|
3224
|
+
</td>
|
3225
|
+
<td style="vertical-align: top;">HPDF_COMP_ALL</td>
|
3226
|
+
<td style="vertical-align: top;">All stream datas are compressed.
|
3227
|
+
(The same as "HPDF_COMP_TEXT | HPDF_COMP_IMAGE | HPDF_COMP_METADATA")<br>
|
3228
|
+
</td>
|
3229
|
+
</tr>
|
3230
|
+
</tbody>
|
3231
|
+
</table>
|
3232
|
+
<br>
|
3233
|
+
</div>
|
3234
|
+
<h4>Returns</h4>
|
3235
|
+
When HPDF_SetCompressionMode() succeeds, it returns HPDF_OK.
|
3236
|
+
Otherwise, it returns error code and error-handler
|
3237
|
+
is called.<br>
|
3238
|
+
<br>
|
3239
|
+
<h4>Error</h4>
|
3240
|
+
<span style="font-weight: bold;">HPDF_INVALID_DOCUMENT</span>
|
3241
|
+
<div class="bodytext5">An invalid document handle was set.<br>
|
3242
|
+
<br>
|
3243
|
+
</div>
|
3244
|
+
<span style="font-weight: bold;">HPDF_INVALID_COMPRESSION_MODE</span><br>
|
3245
|
+
<div class="bodytext5">An invalid compression mode was specified.<br>
|
3246
|
+
<br>
|
3247
|
+
</div>
|
3248
|
+
<span style="font-weight: bold;">HPDF_FAILD_TO_ALLOC_MEM
|
3249
|
+
</span>
|
3250
|
+
<div class="bodytext5">Memory Allocation Failed.<br>
|
3251
|
+
<br>
|
3252
|
+
</div>
|
3253
|
+
<br>
|
3254
|
+
</div>
|
3255
|
+
<br>
|
3256
|
+
<br>
|
3257
|
+
<br>
|
3258
|
+
<br>
|
3259
|
+
<br>
|
3260
|
+
<br>
|
3261
|
+
<br>
|
3262
|
+
<br>
|
3263
|
+
<br>
|
3264
|
+
<br>
|
3265
|
+
<br>
|
3266
|
+
<br>
|
3267
|
+
<br>
|
3268
|
+
<br>
|
3269
|
+
<br>
|
3270
|
+
<br>
|
3271
|
+
<br>
|
3272
|
+
<br>
|
3273
|
+
<br>
|
3274
|
+
<br>
|
3275
|
+
<br>
|
3276
|
+
<br>
|
3277
|
+
</div>
|
3278
|
+
</div>
|
3279
|
+
<div id="lcol">
|
3280
|
+
<div class="sidebar">
|
3281
|
+
<ul>
|
3282
|
+
</ul>
|
3283
|
+
<ul>
|
3284
|
+
<li><a href="#HPDF_New_HPDF_NewEX_">HPDF_New, HPDF_NewEX</a></li>
|
3285
|
+
<li><a href="#HPDF_Free_">HPDF_Free</a><br>
|
3286
|
+
</li>
|
3287
|
+
<li><a href="#HPDF_NewDoc_">HPDF_NewDoc</a></li>
|
3288
|
+
<li><a href="#HPDF_FreeDoc">HPDF_FreeDoc、
|
3289
|
+
HPDF_FreeDocAll</a></li>
|
3290
|
+
<li><a href="#HPDF_SaveToFile_">HPDF_SaveToFile</a></li>
|
3291
|
+
<li><a href="#HPDF_SaveToStream_">HPDF_SaveToStream</a></li>
|
3292
|
+
<li><a href="#HPDF_GetStreamSize_">HPDF_GetStreamSize</a></li>
|
3293
|
+
<li><a href="#HPDF_ReadFromStream_">HPDF_ReadFromStream</a></li>
|
3294
|
+
<li><a href="#HPDF_ResetStream_">HPDF_ResetStream</a><br>
|
3295
|
+
</li>
|
3296
|
+
<li><a href="#HPDF_HasDoc">HPDF_HasDoc</a></li>
|
3297
|
+
<li><a href="#HPDF_SetErrorHandler_">HPDF_SetErrorHandler</a></li>
|
3298
|
+
<li><a href="#HPDF_GetError_">HPDF_GetError</a></li>
|
3299
|
+
<li><a href="#HPDF_ResetError_">HPDF_ResetError</a></li>
|
3300
|
+
<li><a href="#HPDF_SetPagesConfiguration_">HPDF_SetPagesConfiguration</a></li>
|
3301
|
+
<li><a href="#HPDF_GetPageLayout_">HPDF_SetPageLayout</a></li>
|
3302
|
+
<li><a href="#HPDF_GetPageLayout_">HPDF_GetPageLayout</a></li>
|
3303
|
+
<li><a href="#HPDF_SetPageMode_">HPDF_SetPageMode</a></li>
|
3304
|
+
<li><a href="#HPDF_GetPageMode_">HPDF_GetPageMode</a></li>
|
3305
|
+
<li><a href="#HPDF_SetOpenAction_">HPDF_SetOpenAction</a></li>
|
3306
|
+
<li><a href="#HPDF_GetCurrentPage_">HPDF_GetCurrentPage</a></li>
|
3307
|
+
<li><a href="#HPDF_AddPage">HPDF_AddPage</a></li>
|
3308
|
+
<li><a href="#HPDF_InsertPage">HPDF_InsertPage</a></li>
|
3309
|
+
<li><a href="#HPDF_GetFont">HPDF_GetFont</a></li>
|
3310
|
+
<li><a href="#HPDF_LoadType1FontFromFile">HPDF_LoadType1FontFromFile</a></li>
|
3311
|
+
<li><a href="#HPDF_LoadTTFontFromFile">HPDF_LoadTTFontFromFile</a></li>
|
3312
|
+
<li><a href="#HPDF_LoadTTFontFromFile2">HPDF_LoadTTFontFromFile2</a></li>
|
3313
|
+
<li><a href="#HPDF_AddPageLabel">HPDF_AddPageLabel</a></li>
|
3314
|
+
<li><a href="#HPDF_UseJPFonts">HPDF_UseJPFonts</a></li>
|
3315
|
+
<li><a href="#HPDF_UseKRFonts">HPDF_UseKRFonts</a></li>
|
3316
|
+
<li><a href="#HPDF_UseCNSFonts">HPDF_UseCNSFonts</a></li>
|
3317
|
+
<li><a href="#HPDF_UseCNTFonts">HPDF_UseCNTFonts</a></li>
|
3318
|
+
<li><a href="#HPDF_CreateExtGstate">HPDF_CreateExtGState<br>
|
3319
|
+
</a></li>
|
3320
|
+
<li><a href="#HPDF_CreateOutline">HPDF_CreateOutline</a></li>
|
3321
|
+
<li><a href="#HPDF_GetEncoder">HPDF_GetEncoder</a></li>
|
3322
|
+
<li><a href="#HPDF_GetCurrentEncoder">HPDF_GetCurrentEncoder</a></li>
|
3323
|
+
<li><a href="#HPDF_SetCurrentEncoder">HPDF_SetCurrentEncoder</a></li>
|
3324
|
+
<li><a href="#HPDF_UseJPEncodings">HPDF_UseJPEncodings</a></li>
|
3325
|
+
<li><a href="#HPDF_UseKREncodings">HPDF_UseKREncodings</a></li>
|
3326
|
+
<li><a href="#HPDF_UseCNSEncodings">HPDF_UseCNSEncodings</a></li>
|
3327
|
+
<li><a href="#HPDF_UseCNTEncodings">HPDF_UseCNTEncodings</a></li>
|
3328
|
+
<li><a href="#HPDF_LoadPngImageFromFile_">HPDF_LoadPngImageFromFile</a></li>
|
3329
|
+
<li><a href="#HPDF_LoadPngImageFromFile2_">HPDF_LoadPngImageFromFile2</a></li>
|
3330
|
+
<li><a href="#HPDF_LoadRawImageFromFile_">HPDF_LoadRawImageFromFile</a></li>
|
3331
|
+
<li><a href="#HPDF_LoadRawImageFromMem_">HPDF_LoadRawImageFromMem</a></li>
|
3332
|
+
<li><a href="#HPDF_LoadJpegImageFromFile_">HPDF_LoadJpegImageFromFile</a></li>
|
3333
|
+
<li><a href="#HPDF_SetInfoAttr_">HPDF_SetInfoAttr</a></li>
|
3334
|
+
<li><a href="#HPDF_GetInfoAttr">HPDF_GetInfoAttr</a></li>
|
3335
|
+
<li><a href="#HPDF_SetInfoDateAttr_">HPDF_SetInfoDateAttr</a></li>
|
3336
|
+
<li><a href="#HPDF_SetPassword_">HPDF_SetPassword</a></li>
|
3337
|
+
<li><a href="#HPDF_SetPermission_">HPDF_SetPermission</a></li>
|
3338
|
+
<li><a href="#HPDF_SetEncryptionMode_">HPDF_SetEncryptionMode</a></li>
|
3339
|
+
<li><a href="#HPDF_SetCompressionMode_">HPDF_SetCompressionMode</a><br>
|
3340
|
+
</li>
|
3341
|
+
</ul>
|
3342
|
+
<br>
|
3343
|
+
<br>
|
3344
|
+
<br>
|
3345
|
+
<br>
|
3346
|
+
<br>
|
3347
|
+
<br>
|
3348
|
+
<br>
|
3349
|
+
<br>
|
3350
|
+
<br>
|
3351
|
+
<br>
|
3352
|
+
<br>
|
3353
|
+
<br>
|
3354
|
+
<br>
|
3355
|
+
<br>
|
3356
|
+
<br>
|
3357
|
+
<br>
|
3358
|
+
<br>
|
3359
|
+
<br>
|
3360
|
+
<br>
|
3361
|
+
<br>
|
3362
|
+
<br>
|
3363
|
+
<br>
|
3364
|
+
<br>
|
3365
|
+
<br>
|
3366
|
+
<br>
|
3367
|
+
<br>
|
3368
|
+
<br>
|
3369
|
+
<br>
|
3370
|
+
<br>
|
3371
|
+
<br>
|
3372
|
+
<br>
|
3373
|
+
<br>
|
3374
|
+
<br>
|
3375
|
+
<br>
|
3376
|
+
<br>
|
3377
|
+
<br>
|
3378
|
+
<br>
|
3379
|
+
<br>
|
3380
|
+
<br>
|
3381
|
+
<br>
|
3382
|
+
<br>
|
3383
|
+
<br>
|
3384
|
+
<br>
|
3385
|
+
<br>
|
3386
|
+
<br>
|
3387
|
+
<br>
|
3388
|
+
<br>
|
3389
|
+
<br>
|
3390
|
+
<br>
|
3391
|
+
<br>
|
3392
|
+
<br>
|
3393
|
+
<br>
|
3394
|
+
<br>
|
3395
|
+
<br>
|
3396
|
+
<br>
|
3397
|
+
<br>
|
3398
|
+
<br>
|
3399
|
+
<br>
|
3400
|
+
<br>
|
3401
|
+
<br>
|
3402
|
+
<br>
|
3403
|
+
<br>
|
3404
|
+
<br>
|
3405
|
+
<br>
|
3406
|
+
<br>
|
3407
|
+
<br>
|
3408
|
+
<br>
|
3409
|
+
<br>
|
3410
|
+
<br>
|
3411
|
+
<br>
|
3412
|
+
<br>
|
3413
|
+
<br>
|
3414
|
+
<br>
|
3415
|
+
<br>
|
3416
|
+
<br>
|
3417
|
+
<br>
|
3418
|
+
<br>
|
3419
|
+
<br>
|
3420
|
+
<br>
|
3421
|
+
<br>
|
3422
|
+
<br>
|
3423
|
+
<br>
|
3424
|
+
<br>
|
3425
|
+
<br>
|
3426
|
+
<br>
|
3427
|
+
<br>
|
3428
|
+
<br>
|
3429
|
+
<br>
|
3430
|
+
<br>
|
3431
|
+
<br>
|
3432
|
+
<br>
|
3433
|
+
<br>
|
3434
|
+
<br>
|
3435
|
+
<br>
|
3436
|
+
<br>
|
3437
|
+
<br>
|
3438
|
+
<br>
|
3439
|
+
<br>
|
3440
|
+
<br>
|
3441
|
+
<br>
|
3442
|
+
<br>
|
3443
|
+
<br>
|
3444
|
+
<br>
|
3445
|
+
<br>
|
3446
|
+
<br>
|
3447
|
+
<br>
|
3448
|
+
<br>
|
3449
|
+
<br>
|
3450
|
+
<br>
|
3451
|
+
<br>
|
3452
|
+
<br>
|
3453
|
+
<br>
|
3454
|
+
<br>
|
3455
|
+
<br>
|
3456
|
+
<br>
|
3457
|
+
<br>
|
3458
|
+
<br>
|
3459
|
+
<br>
|
3460
|
+
<br>
|
3461
|
+
<br>
|
3462
|
+
<br>
|
3463
|
+
<br>
|
3464
|
+
<br>
|
3465
|
+
<br>
|
3466
|
+
<br>
|
3467
|
+
<br>
|
3468
|
+
<br>
|
3469
|
+
<br>
|
3470
|
+
<br>
|
3471
|
+
<br>
|
3472
|
+
<br>
|
3473
|
+
<br>
|
3474
|
+
<br>
|
3475
|
+
<br>
|
3476
|
+
<br>
|
3477
|
+
<br>
|
3478
|
+
<br>
|
3479
|
+
<br>
|
3480
|
+
<br>
|
3481
|
+
<br>
|
3482
|
+
<br>
|
3483
|
+
<br>
|
3484
|
+
<br>
|
3485
|
+
<br>
|
3486
|
+
<br>
|
3487
|
+
<br>
|
3488
|
+
<br>
|
3489
|
+
<br>
|
3490
|
+
<br>
|
3491
|
+
<br>
|
3492
|
+
<br>
|
3493
|
+
<br>
|
3494
|
+
<br>
|
3495
|
+
<br>
|
3496
|
+
<br>
|
3497
|
+
<br>
|
3498
|
+
<br>
|
3499
|
+
<br>
|
3500
|
+
<br>
|
3501
|
+
<br>
|
3502
|
+
<br>
|
3503
|
+
<br>
|
3504
|
+
<br>
|
3505
|
+
<br>
|
3506
|
+
<br>
|
3507
|
+
<br>
|
3508
|
+
<br>
|
3509
|
+
<br>
|
3510
|
+
<br>
|
3511
|
+
<br>
|
3512
|
+
<br>
|
3513
|
+
<br>
|
3514
|
+
<br>
|
3515
|
+
<br>
|
3516
|
+
<br>
|
3517
|
+
<br>
|
3518
|
+
<br>
|
3519
|
+
<br>
|
3520
|
+
<br>
|
3521
|
+
<br>
|
3522
|
+
<br>
|
3523
|
+
<br>
|
3524
|
+
<br>
|
3525
|
+
<br>
|
3526
|
+
<br>
|
3527
|
+
<br>
|
3528
|
+
<br>
|
3529
|
+
<br>
|
3530
|
+
<br>
|
3531
|
+
<br>
|
3532
|
+
<br>
|
3533
|
+
<br>
|
3534
|
+
<br>
|
3535
|
+
<br>
|
3536
|
+
<br>
|
3537
|
+
<br>
|
3538
|
+
<br>
|
3539
|
+
<br>
|
3540
|
+
<br>
|
3541
|
+
<br>
|
3542
|
+
<br>
|
3543
|
+
<br>
|
3544
|
+
<br>
|
3545
|
+
<br>
|
3546
|
+
<br>
|
3547
|
+
<br>
|
3548
|
+
<br>
|
3549
|
+
<br>
|
3550
|
+
<br>
|
3551
|
+
<br>
|
3552
|
+
<br>
|
3553
|
+
<br>
|
3554
|
+
<br>
|
3555
|
+
<br>
|
3556
|
+
<br>
|
3557
|
+
<br>
|
3558
|
+
<br>
|
3559
|
+
<br>
|
3560
|
+
<br>
|
3561
|
+
<br>
|
3562
|
+
<br>
|
3563
|
+
<br>
|
3564
|
+
<br>
|
3565
|
+
<br>
|
3566
|
+
<br>
|
3567
|
+
<br>
|
3568
|
+
<br>
|
3569
|
+
<br>
|
3570
|
+
<br>
|
3571
|
+
<br>
|
3572
|
+
<br>
|
3573
|
+
<br>
|
3574
|
+
<br>
|
3575
|
+
<br>
|
3576
|
+
<br>
|
3577
|
+
<br>
|
3578
|
+
<br>
|
3579
|
+
<br>
|
3580
|
+
<br>
|
3581
|
+
<br>
|
3582
|
+
<br>
|
3583
|
+
<br>
|
3584
|
+
<br>
|
3585
|
+
<br>
|
3586
|
+
<br>
|
3587
|
+
<br>
|
3588
|
+
<br>
|
3589
|
+
<br>
|
3590
|
+
<br>
|
3591
|
+
<br>
|
3592
|
+
<br>
|
3593
|
+
<br>
|
3594
|
+
<br>
|
3595
|
+
<br>
|
3596
|
+
<br>
|
3597
|
+
<br>
|
3598
|
+
<br>
|
3599
|
+
<br>
|
3600
|
+
<br>
|
3601
|
+
<br>
|
3602
|
+
<br>
|
3603
|
+
<br>
|
3604
|
+
<br>
|
3605
|
+
<br>
|
3606
|
+
<br>
|
3607
|
+
<br>
|
3608
|
+
<br>
|
3609
|
+
<br>
|
3610
|
+
<br>
|
3611
|
+
<br>
|
3612
|
+
<br>
|
3613
|
+
<br>
|
3614
|
+
<br>
|
3615
|
+
<br>
|
3616
|
+
<br>
|
3617
|
+
<br>
|
3618
|
+
<br>
|
3619
|
+
<br>
|
3620
|
+
<br>
|
3621
|
+
<br>
|
3622
|
+
<br>
|
3623
|
+
<br>
|
3624
|
+
<br>
|
3625
|
+
<br>
|
3626
|
+
<br>
|
3627
|
+
<br>
|
3628
|
+
<br>
|
3629
|
+
<br>
|
3630
|
+
<br>
|
3631
|
+
<br>
|
3632
|
+
<br>
|
3633
|
+
<br>
|
3634
|
+
<br>
|
3635
|
+
<br>
|
3636
|
+
<br>
|
3637
|
+
<br>
|
3638
|
+
<br>
|
3639
|
+
<br>
|
3640
|
+
<br>
|
3641
|
+
<br>
|
3642
|
+
<br>
|
3643
|
+
<br>
|
3644
|
+
<br>
|
3645
|
+
<br>
|
3646
|
+
<br>
|
3647
|
+
<br>
|
3648
|
+
<br>
|
3649
|
+
<br>
|
3650
|
+
<br>
|
3651
|
+
<br>
|
3652
|
+
<br>
|
3653
|
+
<br>
|
3654
|
+
<br>
|
3655
|
+
<br>
|
3656
|
+
<br>
|
3657
|
+
<br>
|
3658
|
+
<br>
|
3659
|
+
<br>
|
3660
|
+
<br>
|
3661
|
+
<br>
|
3662
|
+
<br>
|
3663
|
+
<br>
|
3664
|
+
<br>
|
3665
|
+
<br>
|
3666
|
+
<br>
|
3667
|
+
<br>
|
3668
|
+
<br>
|
3669
|
+
<br>
|
3670
|
+
<br>
|
3671
|
+
<br>
|
3672
|
+
<br>
|
3673
|
+
<br>
|
3674
|
+
<br>
|
3675
|
+
<br>
|
3676
|
+
<br>
|
3677
|
+
<br>
|
3678
|
+
<br>
|
3679
|
+
<br>
|
3680
|
+
<br>
|
3681
|
+
<br>
|
3682
|
+
<br>
|
3683
|
+
<br>
|
3684
|
+
<br>
|
3685
|
+
<br>
|
3686
|
+
<br>
|
3687
|
+
<br>
|
3688
|
+
<br>
|
3689
|
+
<br>
|
3690
|
+
<br>
|
3691
|
+
<br>
|
3692
|
+
<br>
|
3693
|
+
<br>
|
3694
|
+
<br>
|
3695
|
+
<br>
|
3696
|
+
<br>
|
3697
|
+
<br>
|
3698
|
+
<br>
|
3699
|
+
<br>
|
3700
|
+
<br>
|
3701
|
+
<br>
|
3702
|
+
<br>
|
3703
|
+
<br>
|
3704
|
+
<br>
|
3705
|
+
<br>
|
3706
|
+
<br>
|
3707
|
+
<br>
|
3708
|
+
<br>
|
3709
|
+
<br>
|
3710
|
+
<br>
|
3711
|
+
<br>
|
3712
|
+
<br>
|
3713
|
+
<br>
|
3714
|
+
<br>
|
3715
|
+
<br>
|
3716
|
+
<br>
|
3717
|
+
<br>
|
3718
|
+
<br>
|
3719
|
+
<br>
|
3720
|
+
<br>
|
3721
|
+
<br>
|
3722
|
+
<br>
|
3723
|
+
<br>
|
3724
|
+
<br>
|
3725
|
+
<br>
|
3726
|
+
<br>
|
3727
|
+
<br>
|
3728
|
+
<br>
|
3729
|
+
<br>
|
3730
|
+
<br>
|
3731
|
+
<br>
|
3732
|
+
<br>
|
3733
|
+
<br>
|
3734
|
+
<br>
|
3735
|
+
<br>
|
3736
|
+
<br>
|
3737
|
+
<br>
|
3738
|
+
<br>
|
3739
|
+
<br>
|
3740
|
+
<br>
|
3741
|
+
<br>
|
3742
|
+
<br>
|
3743
|
+
<br>
|
3744
|
+
<br>
|
3745
|
+
<br>
|
3746
|
+
<br>
|
3747
|
+
<br>
|
3748
|
+
<br>
|
3749
|
+
<br>
|
3750
|
+
<br>
|
3751
|
+
<br>
|
3752
|
+
<br>
|
3753
|
+
<br>
|
3754
|
+
<br>
|
3755
|
+
<br>
|
3756
|
+
<br>
|
3757
|
+
<br>
|
3758
|
+
<br>
|
3759
|
+
<br>
|
3760
|
+
<br>
|
3761
|
+
<br>
|
3762
|
+
<br>
|
3763
|
+
<br>
|
3764
|
+
<br>
|
3765
|
+
<br>
|
3766
|
+
<br>
|
3767
|
+
<br>
|
3768
|
+
<br>
|
3769
|
+
<br>
|
3770
|
+
<br>
|
3771
|
+
<br>
|
3772
|
+
<br>
|
3773
|
+
<br>
|
3774
|
+
<br>
|
3775
|
+
<br>
|
3776
|
+
<br>
|
3777
|
+
<br>
|
3778
|
+
<br>
|
3779
|
+
<br>
|
3780
|
+
<br>
|
3781
|
+
<br>
|
3782
|
+
<br>
|
3783
|
+
<br>
|
3784
|
+
<br>
|
3785
|
+
<br>
|
3786
|
+
<br>
|
3787
|
+
<br>
|
3788
|
+
<br>
|
3789
|
+
<br>
|
3790
|
+
<br>
|
3791
|
+
<br>
|
3792
|
+
<br>
|
3793
|
+
<br>
|
3794
|
+
<br>
|
3795
|
+
<br>
|
3796
|
+
<br>
|
3797
|
+
<br>
|
3798
|
+
<br>
|
3799
|
+
<br>
|
3800
|
+
<br>
|
3801
|
+
<br>
|
3802
|
+
<br>
|
3803
|
+
<br>
|
3804
|
+
<br>
|
3805
|
+
<br>
|
3806
|
+
<br>
|
3807
|
+
<br>
|
3808
|
+
<br>
|
3809
|
+
<br>
|
3810
|
+
<br>
|
3811
|
+
<br>
|
3812
|
+
<br>
|
3813
|
+
<br>
|
3814
|
+
<br>
|
3815
|
+
<br>
|
3816
|
+
<br>
|
3817
|
+
<br>
|
3818
|
+
<br>
|
3819
|
+
<br>
|
3820
|
+
<br>
|
3821
|
+
<br>
|
3822
|
+
<br>
|
3823
|
+
<br>
|
3824
|
+
<br>
|
3825
|
+
<br>
|
3826
|
+
<br>
|
3827
|
+
<br>
|
3828
|
+
<br>
|
3829
|
+
<br>
|
3830
|
+
<br>
|
3831
|
+
<br>
|
3832
|
+
<br>
|
3833
|
+
<br>
|
3834
|
+
<br>
|
3835
|
+
<br>
|
3836
|
+
<br>
|
3837
|
+
<br>
|
3838
|
+
<br>
|
3839
|
+
<br>
|
3840
|
+
<br>
|
3841
|
+
<br>
|
3842
|
+
<br>
|
3843
|
+
<br>
|
3844
|
+
<br>
|
3845
|
+
<br>
|
3846
|
+
<br>
|
3847
|
+
<br>
|
3848
|
+
<br>
|
3849
|
+
<br>
|
3850
|
+
<br>
|
3851
|
+
<br>
|
3852
|
+
<br>
|
3853
|
+
<br>
|
3854
|
+
<br>
|
3855
|
+
<br>
|
3856
|
+
<br>
|
3857
|
+
<br>
|
3858
|
+
<br>
|
3859
|
+
<br>
|
3860
|
+
<br>
|
3861
|
+
<br>
|
3862
|
+
<br>
|
3863
|
+
<br>
|
3864
|
+
<br>
|
3865
|
+
<br>
|
3866
|
+
<br>
|
3867
|
+
<br>
|
3868
|
+
<br>
|
3869
|
+
<br>
|
3870
|
+
<br>
|
3871
|
+
<br>
|
3872
|
+
<br>
|
3873
|
+
<br>
|
3874
|
+
<br>
|
3875
|
+
<br>
|
3876
|
+
<br>
|
3877
|
+
<br>
|
3878
|
+
<br>
|
3879
|
+
<br>
|
3880
|
+
<br>
|
3881
|
+
<br>
|
3882
|
+
<br>
|
3883
|
+
<br>
|
3884
|
+
<br>
|
3885
|
+
<br>
|
3886
|
+
<br>
|
3887
|
+
<br>
|
3888
|
+
<br>
|
3889
|
+
<br>
|
3890
|
+
<br>
|
3891
|
+
<br>
|
3892
|
+
<br>
|
3893
|
+
<br>
|
3894
|
+
<br>
|
3895
|
+
<br>
|
3896
|
+
<br>
|
3897
|
+
<br>
|
3898
|
+
<br>
|
3899
|
+
<br>
|
3900
|
+
<br>
|
3901
|
+
<br>
|
3902
|
+
<br>
|
3903
|
+
<br>
|
3904
|
+
<br>
|
3905
|
+
<br>
|
3906
|
+
<br>
|
3907
|
+
<br>
|
3908
|
+
<br>
|
3909
|
+
<br>
|
3910
|
+
<br>
|
3911
|
+
<br>
|
3912
|
+
<br>
|
3913
|
+
<br>
|
3914
|
+
<br>
|
3915
|
+
<br>
|
3916
|
+
<br>
|
3917
|
+
<br>
|
3918
|
+
<br>
|
3919
|
+
<br>
|
3920
|
+
<br>
|
3921
|
+
<br>
|
3922
|
+
<br>
|
3923
|
+
<br>
|
3924
|
+
<br>
|
3925
|
+
<br>
|
3926
|
+
<br>
|
3927
|
+
<br>
|
3928
|
+
<br>
|
3929
|
+
<br>
|
3930
|
+
<br>
|
3931
|
+
<br>
|
3932
|
+
<br>
|
3933
|
+
<br>
|
3934
|
+
<br>
|
3935
|
+
<br>
|
3936
|
+
<br>
|
3937
|
+
<br>
|
3938
|
+
<br>
|
3939
|
+
<br>
|
3940
|
+
<br>
|
3941
|
+
<br>
|
3942
|
+
<br>
|
3943
|
+
<br>
|
3944
|
+
<br>
|
3945
|
+
<br>
|
3946
|
+
<br>
|
3947
|
+
<br>
|
3948
|
+
<br>
|
3949
|
+
<br>
|
3950
|
+
<br>
|
3951
|
+
<br>
|
3952
|
+
<br>
|
3953
|
+
<br>
|
3954
|
+
<br>
|
3955
|
+
<br>
|
3956
|
+
<br>
|
3957
|
+
<br>
|
3958
|
+
<br>
|
3959
|
+
<br>
|
3960
|
+
<br>
|
3961
|
+
<br>
|
3962
|
+
<br>
|
3963
|
+
<br>
|
3964
|
+
<br>
|
3965
|
+
<br>
|
3966
|
+
<br>
|
3967
|
+
<br>
|
3968
|
+
<br>
|
3969
|
+
<br>
|
3970
|
+
<br>
|
3971
|
+
<br>
|
3972
|
+
<br>
|
3973
|
+
<br>
|
3974
|
+
<br>
|
3975
|
+
<br>
|
3976
|
+
<br>
|
3977
|
+
<br>
|
3978
|
+
<br>
|
3979
|
+
<br>
|
3980
|
+
<br>
|
3981
|
+
<br>
|
3982
|
+
<br>
|
3983
|
+
<br>
|
3984
|
+
<br>
|
3985
|
+
<br>
|
3986
|
+
<br>
|
3987
|
+
<br>
|
3988
|
+
<br>
|
3989
|
+
<br>
|
3990
|
+
<br>
|
3991
|
+
<br>
|
3992
|
+
<br>
|
3993
|
+
<br>
|
3994
|
+
<br>
|
3995
|
+
<br>
|
3996
|
+
<br>
|
3997
|
+
<br>
|
3998
|
+
<br>
|
3999
|
+
<br>
|
4000
|
+
<br>
|
4001
|
+
<br>
|
4002
|
+
<br>
|
4003
|
+
<br>
|
4004
|
+
<br>
|
4005
|
+
<br>
|
4006
|
+
<br>
|
4007
|
+
<br>
|
4008
|
+
<br>
|
4009
|
+
<br>
|
4010
|
+
<br>
|
4011
|
+
<br>
|
4012
|
+
<br>
|
4013
|
+
<br>
|
4014
|
+
<br>
|
4015
|
+
<br>
|
4016
|
+
<br>
|
4017
|
+
<br>
|
4018
|
+
<br>
|
4019
|
+
<br>
|
4020
|
+
<br>
|
4021
|
+
<br>
|
4022
|
+
<br>
|
4023
|
+
<br>
|
4024
|
+
<br>
|
4025
|
+
<br>
|
4026
|
+
<br>
|
4027
|
+
<br>
|
4028
|
+
<br>
|
4029
|
+
<br>
|
4030
|
+
<br>
|
4031
|
+
<br>
|
4032
|
+
<br>
|
4033
|
+
<br>
|
4034
|
+
<br>
|
4035
|
+
<br>
|
4036
|
+
<br>
|
4037
|
+
<br>
|
4038
|
+
<br>
|
4039
|
+
<br>
|
4040
|
+
<br>
|
4041
|
+
<br>
|
4042
|
+
<br>
|
4043
|
+
<br>
|
4044
|
+
<br>
|
4045
|
+
<br>
|
4046
|
+
<br>
|
4047
|
+
<br>
|
4048
|
+
<br>
|
4049
|
+
<br>
|
4050
|
+
<br>
|
4051
|
+
<br>
|
4052
|
+
<br>
|
4053
|
+
<br>
|
4054
|
+
<br>
|
4055
|
+
<br>
|
4056
|
+
<br>
|
4057
|
+
<br>
|
4058
|
+
<br>
|
4059
|
+
<br>
|
4060
|
+
<br>
|
4061
|
+
<br>
|
4062
|
+
<br>
|
4063
|
+
<br>
|
4064
|
+
<br>
|
4065
|
+
<br>
|
4066
|
+
<br>
|
4067
|
+
<br>
|
4068
|
+
<br>
|
4069
|
+
<br>
|
4070
|
+
<br>
|
4071
|
+
<br>
|
4072
|
+
<br>
|
4073
|
+
<br>
|
4074
|
+
<br>
|
4075
|
+
<br>
|
4076
|
+
<br>
|
4077
|
+
<br>
|
4078
|
+
<br>
|
4079
|
+
<br>
|
4080
|
+
<br>
|
4081
|
+
<br>
|
4082
|
+
<br>
|
4083
|
+
<br>
|
4084
|
+
<br>
|
4085
|
+
<br>
|
4086
|
+
<br>
|
4087
|
+
<br>
|
4088
|
+
<br>
|
4089
|
+
<br>
|
4090
|
+
<br>
|
4091
|
+
<br>
|
4092
|
+
<br>
|
4093
|
+
<br>
|
4094
|
+
<br>
|
4095
|
+
<br>
|
4096
|
+
<br>
|
4097
|
+
<br>
|
4098
|
+
<br>
|
4099
|
+
<br>
|
4100
|
+
<br>
|
4101
|
+
<br>
|
4102
|
+
<br>
|
4103
|
+
<br>
|
4104
|
+
<br>
|
4105
|
+
<br>
|
4106
|
+
<br>
|
4107
|
+
<br>
|
4108
|
+
<br>
|
4109
|
+
<br>
|
4110
|
+
<br>
|
4111
|
+
<br>
|
4112
|
+
<br>
|
4113
|
+
<br>
|
4114
|
+
<br>
|
4115
|
+
<br>
|
4116
|
+
<br>
|
4117
|
+
<br>
|
4118
|
+
<br>
|
4119
|
+
<br>
|
4120
|
+
<br>
|
4121
|
+
<br>
|
4122
|
+
<br>
|
4123
|
+
<br>
|
4124
|
+
<br>
|
4125
|
+
<br>
|
4126
|
+
<br>
|
4127
|
+
<br>
|
4128
|
+
<br>
|
4129
|
+
<br>
|
4130
|
+
<br>
|
4131
|
+
<br>
|
4132
|
+
<br>
|
4133
|
+
<br>
|
4134
|
+
<br>
|
4135
|
+
<br>
|
4136
|
+
<br>
|
4137
|
+
<br>
|
4138
|
+
<br>
|
4139
|
+
<br>
|
4140
|
+
<br>
|
4141
|
+
<br>
|
4142
|
+
<br>
|
4143
|
+
<br>
|
4144
|
+
<br>
|
4145
|
+
<br>
|
4146
|
+
<br>
|
4147
|
+
<br>
|
4148
|
+
<br>
|
4149
|
+
<br>
|
4150
|
+
<br>
|
4151
|
+
<br>
|
4152
|
+
<br>
|
4153
|
+
<br>
|
4154
|
+
<br>
|
4155
|
+
<br>
|
4156
|
+
<br>
|
4157
|
+
<br>
|
4158
|
+
<br>
|
4159
|
+
<br>
|
4160
|
+
<br>
|
4161
|
+
<br>
|
4162
|
+
<br>
|
4163
|
+
<br>
|
4164
|
+
<br>
|
4165
|
+
<br>
|
4166
|
+
<br>
|
4167
|
+
<br>
|
4168
|
+
<br>
|
4169
|
+
<br>
|
4170
|
+
<br>
|
4171
|
+
<br>
|
4172
|
+
<br>
|
4173
|
+
<br>
|
4174
|
+
<br>
|
4175
|
+
<br>
|
4176
|
+
<br>
|
4177
|
+
<br>
|
4178
|
+
<br>
|
4179
|
+
<br>
|
4180
|
+
<br>
|
4181
|
+
<br>
|
4182
|
+
<br>
|
4183
|
+
<br>
|
4184
|
+
<br>
|
4185
|
+
<br>
|
4186
|
+
<br>
|
4187
|
+
<br>
|
4188
|
+
<br>
|
4189
|
+
<br>
|
4190
|
+
<br>
|
4191
|
+
<br>
|
4192
|
+
<br>
|
4193
|
+
<br>
|
4194
|
+
<br>
|
4195
|
+
<br>
|
4196
|
+
<br>
|
4197
|
+
<br>
|
4198
|
+
<br>
|
4199
|
+
<br>
|
4200
|
+
<br>
|
4201
|
+
<br>
|
4202
|
+
<br>
|
4203
|
+
<br>
|
4204
|
+
<br>
|
4205
|
+
<br>
|
4206
|
+
<br>
|
4207
|
+
<br>
|
4208
|
+
<br>
|
4209
|
+
<br>
|
4210
|
+
<br>
|
4211
|
+
<br>
|
4212
|
+
<br>
|
4213
|
+
<br>
|
4214
|
+
<br>
|
4215
|
+
<br>
|
4216
|
+
<br>
|
4217
|
+
<br>
|
4218
|
+
<br>
|
4219
|
+
<br>
|
4220
|
+
<br>
|
4221
|
+
<br>
|
4222
|
+
<br>
|
4223
|
+
<br>
|
4224
|
+
<br>
|
4225
|
+
<br>
|
4226
|
+
<br>
|
4227
|
+
<br>
|
4228
|
+
<br>
|
4229
|
+
<br>
|
4230
|
+
<br>
|
4231
|
+
<br>
|
4232
|
+
<br>
|
4233
|
+
<br>
|
4234
|
+
<br>
|
4235
|
+
<br>
|
4236
|
+
<br>
|
4237
|
+
<br>
|
4238
|
+
<br>
|
4239
|
+
<br>
|
4240
|
+
<br>
|
4241
|
+
<br>
|
4242
|
+
<br>
|
4243
|
+
<br>
|
4244
|
+
<br>
|
4245
|
+
<br>
|
4246
|
+
<br>
|
4247
|
+
<br>
|
4248
|
+
<br>
|
4249
|
+
<br>
|
4250
|
+
<br>
|
4251
|
+
<br>
|
4252
|
+
<br>
|
4253
|
+
<br>
|
4254
|
+
<br>
|
4255
|
+
<br>
|
4256
|
+
<br>
|
4257
|
+
<br>
|
4258
|
+
<br>
|
4259
|
+
<br>
|
4260
|
+
<br>
|
4261
|
+
<br>
|
4262
|
+
<br>
|
4263
|
+
<br>
|
4264
|
+
<br>
|
4265
|
+
<br>
|
4266
|
+
<br>
|
4267
|
+
<br>
|
4268
|
+
<br>
|
4269
|
+
<br>
|
4270
|
+
<br>
|
4271
|
+
<br>
|
4272
|
+
<br>
|
4273
|
+
<br>
|
4274
|
+
<br>
|
4275
|
+
<br>
|
4276
|
+
<br>
|
4277
|
+
<br>
|
4278
|
+
<br>
|
4279
|
+
<br>
|
4280
|
+
<br>
|
4281
|
+
<br>
|
4282
|
+
<br>
|
4283
|
+
<br>
|
4284
|
+
<br>
|
4285
|
+
<br>
|
4286
|
+
<br>
|
4287
|
+
<br>
|
4288
|
+
<br>
|
4289
|
+
<br>
|
4290
|
+
<br>
|
4291
|
+
<br>
|
4292
|
+
<br>
|
4293
|
+
<br>
|
4294
|
+
<br>
|
4295
|
+
<br>
|
4296
|
+
<br>
|
4297
|
+
<br>
|
4298
|
+
<br>
|
4299
|
+
<br>
|
4300
|
+
<br>
|
4301
|
+
<br>
|
4302
|
+
<br>
|
4303
|
+
<br>
|
4304
|
+
<br>
|
4305
|
+
<br>
|
4306
|
+
<br>
|
4307
|
+
<br>
|
4308
|
+
<br>
|
4309
|
+
<br>
|
4310
|
+
<br>
|
4311
|
+
<br>
|
4312
|
+
<br>
|
4313
|
+
<br>
|
4314
|
+
<br>
|
4315
|
+
<br>
|
4316
|
+
<br>
|
4317
|
+
<br>
|
4318
|
+
<br>
|
4319
|
+
<br>
|
4320
|
+
<br>
|
4321
|
+
<br>
|
4322
|
+
<br>
|
4323
|
+
<br>
|
4324
|
+
<br>
|
4325
|
+
<br>
|
4326
|
+
<br>
|
4327
|
+
<br>
|
4328
|
+
<br>
|
4329
|
+
<br>
|
4330
|
+
<br>
|
4331
|
+
<br>
|
4332
|
+
<br>
|
4333
|
+
<br>
|
4334
|
+
<br>
|
4335
|
+
<br>
|
4336
|
+
<br>
|
4337
|
+
<br>
|
4338
|
+
<br>
|
4339
|
+
<br>
|
4340
|
+
<br>
|
4341
|
+
<br>
|
4342
|
+
<br>
|
4343
|
+
<br>
|
4344
|
+
<br>
|
4345
|
+
<br>
|
4346
|
+
<br>
|
4347
|
+
<br>
|
4348
|
+
<br>
|
4349
|
+
<br>
|
4350
|
+
<br>
|
4351
|
+
<br>
|
4352
|
+
<br>
|
4353
|
+
<br>
|
4354
|
+
<br>
|
4355
|
+
<br>
|
4356
|
+
<br>
|
4357
|
+
<br>
|
4358
|
+
<br>
|
4359
|
+
<br>
|
4360
|
+
<br>
|
4361
|
+
<br>
|
4362
|
+
<br>
|
4363
|
+
<br>
|
4364
|
+
<br>
|
4365
|
+
<br>
|
4366
|
+
<br>
|
4367
|
+
<br>
|
4368
|
+
<br>
|
4369
|
+
<br>
|
4370
|
+
<br>
|
4371
|
+
<br>
|
4372
|
+
<br>
|
4373
|
+
<br>
|
4374
|
+
<br>
|
4375
|
+
<br>
|
4376
|
+
<br>
|
4377
|
+
<br>
|
4378
|
+
<br>
|
4379
|
+
<br>
|
4380
|
+
<br>
|
4381
|
+
<br>
|
4382
|
+
<br>
|
4383
|
+
<br>
|
4384
|
+
<br>
|
4385
|
+
<br>
|
4386
|
+
<br>
|
4387
|
+
<br>
|
4388
|
+
<br>
|
4389
|
+
<br>
|
4390
|
+
<br>
|
4391
|
+
<br>
|
4392
|
+
<br>
|
4393
|
+
<br>
|
4394
|
+
<br>
|
4395
|
+
<br>
|
4396
|
+
<br>
|
4397
|
+
<br>
|
4398
|
+
<br>
|
4399
|
+
<br>
|
4400
|
+
<br>
|
4401
|
+
<br>
|
4402
|
+
<br>
|
4403
|
+
<br>
|
4404
|
+
<br>
|
4405
|
+
<br>
|
4406
|
+
<br>
|
4407
|
+
<br>
|
4408
|
+
<br>
|
4409
|
+
<br>
|
4410
|
+
<br>
|
4411
|
+
<br>
|
4412
|
+
<br>
|
4413
|
+
<br>
|
4414
|
+
<br>
|
4415
|
+
<br>
|
4416
|
+
<br>
|
4417
|
+
<br>
|
4418
|
+
<br>
|
4419
|
+
<br>
|
4420
|
+
<br>
|
4421
|
+
<br>
|
4422
|
+
<br>
|
4423
|
+
<br>
|
4424
|
+
<br>
|
4425
|
+
<br>
|
4426
|
+
<br>
|
4427
|
+
<br>
|
4428
|
+
<br>
|
4429
|
+
<br>
|
4430
|
+
<br>
|
4431
|
+
<br>
|
4432
|
+
<br>
|
4433
|
+
<br>
|
4434
|
+
<br>
|
4435
|
+
<br>
|
4436
|
+
<br>
|
4437
|
+
<br>
|
4438
|
+
<br>
|
4439
|
+
<br>
|
4440
|
+
<br>
|
4441
|
+
<br>
|
4442
|
+
<br>
|
4443
|
+
<br>
|
4444
|
+
<br>
|
4445
|
+
<br>
|
4446
|
+
<br>
|
4447
|
+
<br>
|
4448
|
+
<br>
|
4449
|
+
<br>
|
4450
|
+
<br>
|
4451
|
+
<br>
|
4452
|
+
<br>
|
4453
|
+
<br>
|
4454
|
+
<br>
|
4455
|
+
<br>
|
4456
|
+
<br>
|
4457
|
+
<br>
|
4458
|
+
<br>
|
4459
|
+
<br>
|
4460
|
+
<br>
|
4461
|
+
<br>
|
4462
|
+
<br>
|
4463
|
+
<br>
|
4464
|
+
<br>
|
4465
|
+
<br>
|
4466
|
+
<br>
|
4467
|
+
<br>
|
4468
|
+
<br>
|
4469
|
+
<br>
|
4470
|
+
<br>
|
4471
|
+
<br>
|
4472
|
+
<br>
|
4473
|
+
<br>
|
4474
|
+
<br>
|
4475
|
+
<br>
|
4476
|
+
<br>
|
4477
|
+
<br>
|
4478
|
+
<br>
|
4479
|
+
<br>
|
4480
|
+
<br>
|
4481
|
+
<br>
|
4482
|
+
<br>
|
4483
|
+
<br>
|
4484
|
+
<br>
|
4485
|
+
<br>
|
4486
|
+
<br>
|
4487
|
+
<br>
|
4488
|
+
<br>
|
4489
|
+
<br>
|
4490
|
+
<br>
|
4491
|
+
<br>
|
4492
|
+
<br>
|
4493
|
+
<br>
|
4494
|
+
<br>
|
4495
|
+
<br>
|
4496
|
+
<br>
|
4497
|
+
<br>
|
4498
|
+
<br>
|
4499
|
+
<br>
|
4500
|
+
<br>
|
4501
|
+
<br>
|
4502
|
+
<br>
|
4503
|
+
<br>
|
4504
|
+
<br>
|
4505
|
+
<br>
|
4506
|
+
<br>
|
4507
|
+
<br>
|
4508
|
+
<br>
|
4509
|
+
<br>
|
4510
|
+
<br>
|
4511
|
+
<br>
|
4512
|
+
<br>
|
4513
|
+
<br>
|
4514
|
+
<br>
|
4515
|
+
<br>
|
4516
|
+
<br>
|
4517
|
+
<br>
|
4518
|
+
<br>
|
4519
|
+
<br>
|
4520
|
+
<br>
|
4521
|
+
<br>
|
4522
|
+
<br>
|
4523
|
+
<br>
|
4524
|
+
<br>
|
4525
|
+
<br>
|
4526
|
+
<br>
|
4527
|
+
<br>
|
4528
|
+
<br>
|
4529
|
+
<br>
|
4530
|
+
<br>
|
4531
|
+
<br>
|
4532
|
+
<br>
|
4533
|
+
<br>
|
4534
|
+
<br>
|
4535
|
+
<br>
|
4536
|
+
<br>
|
4537
|
+
<br>
|
4538
|
+
<br>
|
4539
|
+
<br>
|
4540
|
+
<br>
|
4541
|
+
<br>
|
4542
|
+
<br>
|
4543
|
+
<br>
|
4544
|
+
<br>
|
4545
|
+
<br>
|
4546
|
+
<br>
|
4547
|
+
<br>
|
4548
|
+
<br>
|
4549
|
+
<br>
|
4550
|
+
<br>
|
4551
|
+
<br>
|
4552
|
+
<br>
|
4553
|
+
<br>
|
4554
|
+
<br>
|
4555
|
+
<br>
|
4556
|
+
<br>
|
4557
|
+
<br>
|
4558
|
+
<br>
|
4559
|
+
<br>
|
4560
|
+
<br>
|
4561
|
+
<br>
|
4562
|
+
<br>
|
4563
|
+
<br>
|
4564
|
+
<br>
|
4565
|
+
<br>
|
4566
|
+
<br>
|
4567
|
+
<br>
|
4568
|
+
<br>
|
4569
|
+
<br>
|
4570
|
+
<br>
|
4571
|
+
<br>
|
4572
|
+
<br>
|
4573
|
+
<br>
|
4574
|
+
<br>
|
4575
|
+
<br>
|
4576
|
+
<br>
|
4577
|
+
<br>
|
4578
|
+
<br>
|
4579
|
+
<br>
|
4580
|
+
<br>
|
4581
|
+
<br>
|
4582
|
+
<br>
|
4583
|
+
<br>
|
4584
|
+
<br>
|
4585
|
+
<br>
|
4586
|
+
<br>
|
4587
|
+
<br>
|
4588
|
+
<br>
|
4589
|
+
<br>
|
4590
|
+
<br>
|
4591
|
+
<br>
|
4592
|
+
<br>
|
4593
|
+
<br>
|
4594
|
+
<br>
|
4595
|
+
<br>
|
4596
|
+
<br>
|
4597
|
+
<br>
|
4598
|
+
<br>
|
4599
|
+
<br>
|
4600
|
+
<br>
|
4601
|
+
<br>
|
4602
|
+
<br>
|
4603
|
+
<br>
|
4604
|
+
<br>
|
4605
|
+
<br>
|
4606
|
+
<br>
|
4607
|
+
<br>
|
4608
|
+
<br>
|
4609
|
+
<br>
|
4610
|
+
<br>
|
4611
|
+
<br>
|
4612
|
+
<br>
|
4613
|
+
<br>
|
4614
|
+
<br>
|
4615
|
+
<br>
|
4616
|
+
<br>
|
4617
|
+
<br>
|
4618
|
+
<br>
|
4619
|
+
<br>
|
4620
|
+
<br>
|
4621
|
+
<br>
|
4622
|
+
<br>
|
4623
|
+
<br>
|
4624
|
+
<br>
|
4625
|
+
<br>
|
4626
|
+
<br>
|
4627
|
+
<br>
|
4628
|
+
<br>
|
4629
|
+
<br>
|
4630
|
+
<br>
|
4631
|
+
<br>
|
4632
|
+
<br>
|
4633
|
+
<br>
|
4634
|
+
<br>
|
4635
|
+
<br>
|
4636
|
+
<br>
|
4637
|
+
<br>
|
4638
|
+
<br>
|
4639
|
+
<br>
|
4640
|
+
<br>
|
4641
|
+
<br>
|
4642
|
+
<br>
|
4643
|
+
<br>
|
4644
|
+
<br>
|
4645
|
+
<br>
|
4646
|
+
<br>
|
4647
|
+
<br>
|
4648
|
+
<br>
|
4649
|
+
<br>
|
4650
|
+
<br>
|
4651
|
+
<br>
|
4652
|
+
<br>
|
4653
|
+
<br>
|
4654
|
+
<br>
|
4655
|
+
<br>
|
4656
|
+
<br>
|
4657
|
+
<br>
|
4658
|
+
<br>
|
4659
|
+
<br>
|
4660
|
+
<br>
|
4661
|
+
<br>
|
4662
|
+
<br>
|
4663
|
+
<br>
|
4664
|
+
<br>
|
4665
|
+
<br>
|
4666
|
+
<br>
|
4667
|
+
<br>
|
4668
|
+
<br>
|
4669
|
+
<br>
|
4670
|
+
<br>
|
4671
|
+
<br>
|
4672
|
+
<br>
|
4673
|
+
<br>
|
4674
|
+
<br>
|
4675
|
+
<br>
|
4676
|
+
<br>
|
4677
|
+
<br>
|
4678
|
+
<br>
|
4679
|
+
<br>
|
4680
|
+
<br>
|
4681
|
+
<br>
|
4682
|
+
<br>
|
4683
|
+
<br>
|
4684
|
+
<br>
|
4685
|
+
<br>
|
4686
|
+
<br>
|
4687
|
+
<br>
|
4688
|
+
<br>
|
4689
|
+
<br>
|
4690
|
+
<br>
|
4691
|
+
<br>
|
4692
|
+
<br>
|
4693
|
+
<br>
|
4694
|
+
<br>
|
4695
|
+
<br>
|
4696
|
+
<br>
|
4697
|
+
<br>
|
4698
|
+
<br>
|
4699
|
+
<br>
|
4700
|
+
<br>
|
4701
|
+
<br>
|
4702
|
+
<br>
|
4703
|
+
<br>
|
4704
|
+
<br>
|
4705
|
+
<br>
|
4706
|
+
<br>
|
4707
|
+
<br>
|
4708
|
+
<br>
|
4709
|
+
<br>
|
4710
|
+
<br>
|
4711
|
+
<br>
|
4712
|
+
<br>
|
4713
|
+
<br>
|
4714
|
+
<br>
|
4715
|
+
<br>
|
4716
|
+
<br>
|
4717
|
+
<br>
|
4718
|
+
<br>
|
4719
|
+
<br>
|
4720
|
+
<br>
|
4721
|
+
<br>
|
4722
|
+
<br>
|
4723
|
+
<br>
|
4724
|
+
<br>
|
4725
|
+
<br>
|
4726
|
+
<br>
|
4727
|
+
<br>
|
4728
|
+
<br>
|
4729
|
+
<br>
|
4730
|
+
<br>
|
4731
|
+
<br>
|
4732
|
+
<br>
|
4733
|
+
<br>
|
4734
|
+
<br>
|
4735
|
+
<br>
|
4736
|
+
<br>
|
4737
|
+
</div>
|
4738
|
+
</div>
|
4739
|
+
<br>
|
4740
|
+
<br>
|
4741
|
+
<br>
|
4742
|
+
<br>
|
4743
|
+
<br>
|
4744
|
+
<br>
|
4745
|
+
<br>
|
4746
|
+
<br>
|
4747
|
+
<br>
|
4748
|
+
<br>
|
4749
|
+
</div>
|
4750
|
+
</body>
|
4751
|
+
</html>
|