1 /* 2 * << Haru Free PDF Library 2.0.8 >> -- hpdf.h 3 * 4 * URL http://libharu.org/ 5 * 6 * Copyright (c) 1999-2006 Takeshi Kanno 7 * 8 * Permission to use, copy, modify, distribute and sell this software 9 * and its documentation for any purpose is hereby granted without fee, 10 * provided that the above copyright notice appear in all copies and 11 * that both that copyright notice and this permission notice appear 12 * in supporting documentation. 13 * It is provided "as is" without express or implied warranty. 14 * 15 */ 16 17 #ifndef _HPDF_H 18 #define _HPDF_H 19 20 #include "vtk_haru_mangle.h" 21 22 #include "hpdf_config.h" 23 #include "hpdf_version.h" 24 25 #define HPDF_UNUSED(a) ((void)(a)) 26 27 #ifdef HPDF_DLL_MAKE 28 # define HPDF_EXPORT(A) __declspec(dllexport) A __stdcall 29 #else 30 # ifdef HPDF_DLL_MAKE_CDECL 31 # define HPDF_EXPORT(A) __declspec(dllexport) A 32 # else 33 # ifdef HPDF_SHARED_MAKE 34 # define HPDF_EXPORT(A) extern A 35 # endif /* HPDF_SHARED_MAKE */ 36 # endif /* HPDF_DLL_MAKE_CDECL */ 37 #endif /* HPDF_DLL_MAKE */ 38 39 #ifdef HPDF_DLL 40 # define HPDF_SHARED 41 # define HPDF_EXPORT(A) __declspec(dllimport) A __stdcall 42 #else 43 # ifdef HPDF_DLL_CDECL 44 # define HPDF_SHARED 45 # define HPDF_EXPORT(A) __declspec(dllimport) A 46 # endif /* HPDF_DLL_CDECL */ 47 #endif /* HPDF_DLL */ 48 49 #ifdef HPDF_SHARED 50 51 #ifndef HPDF_EXPORT 52 #define HPDF_EXPORT(A) extern A 53 #endif /* HPDF_EXPORT */ 54 55 #include "hpdf_consts.h" 56 #include "hpdf_types.h" 57 58 typedef void *HPDF_HANDLE; 59 typedef HPDF_HANDLE HPDF_Boolean; 60 typedef HPDF_HANDLE HPDF_Doc; 61 typedef HPDF_HANDLE HPDF_Page; 62 typedef HPDF_HANDLE HPDF_Pages; 63 typedef HPDF_HANDLE HPDF_Stream; 64 typedef HPDF_HANDLE HPDF_Image; 65 typedef HPDF_HANDLE HPDF_Font; 66 typedef HPDF_HANDLE HPDF_Outline; 67 typedef HPDF_HANDLE HPDF_Encoder; 68 typedef HPDF_HANDLE HPDF_3DMeasure; 69 typedef HPDF_HANDLE HPDF_ExData; 70 typedef HPDF_HANDLE HPDF_Destination; 71 typedef HPDF_HANDLE HPDF_XObject; 72 typedef HPDF_HANDLE HPDF_Annotation; 73 typedef HPDF_HANDLE HPDF_ExtGState; 74 typedef HPDF_HANDLE HPDF_FontDef; 75 typedef HPDF_HANDLE HPDF_U3D; 76 typedef HPDF_HANDLE HPDF_JavaScript; 77 typedef HPDF_HANDLE HPDF_Error; 78 typedef HPDF_HANDLE HPDF_MMgr; 79 typedef HPDF_HANDLE HPDF_Dict; 80 typedef HPDF_HANDLE HPDF_EmbeddedFile; 81 typedef HPDF_HANDLE HPDF_OutputIntent; 82 typedef HPDF_HANDLE HPDF_Xref; 83 typedef HPDF_HANDLE HPDF_Shading; 84 85 #else 86 87 #ifndef HPDF_EXPORT 88 #define HPDF_EXPORT(A) A 89 #endif /* HPDF_EXPORT */ 90 91 #include "hpdf_consts.h" 92 #include "hpdf_doc.h" 93 #include "hpdf_error.h" 94 #include "hpdf_pdfa.h" 95 96 #endif /* HPDF_SHARED */ 97 98 #ifdef __cplusplus 99 extern "C" { 100 #endif 101 102 HPDF_EXPORT(const char *) 103 HPDF_GetVersion (void); 104 105 106 HPDF_EXPORT(HPDF_Doc) 107 HPDF_NewEx (HPDF_Error_Handler user_error_fn, 108 HPDF_Alloc_Func user_alloc_fn, 109 HPDF_Free_Func user_free_fn, 110 HPDF_UINT mem_pool_buf_size, 111 void *user_data); 112 113 HPDF_EXPORT(HPDF_Doc) 114 HPDF_New (HPDF_Error_Handler user_error_fn, 115 void *user_data); 116 117 118 HPDF_EXPORT(HPDF_STATUS) 119 HPDF_SetErrorHandler (HPDF_Doc pdf, 120 HPDF_Error_Handler user_error_fn); 121 122 123 HPDF_EXPORT(void) 124 HPDF_Free (HPDF_Doc pdf); 125 126 127 HPDF_EXPORT(HPDF_STATUS) 128 HPDF_NewDoc (HPDF_Doc pdf); 129 130 131 HPDF_EXPORT(void) 132 HPDF_FreeDoc (HPDF_Doc pdf); 133 134 135 HPDF_EXPORT(HPDF_BOOL) 136 HPDF_HasDoc (HPDF_Doc pdf); 137 138 139 HPDF_EXPORT(void) 140 HPDF_FreeDocAll (HPDF_Doc pdf); 141 142 143 HPDF_EXPORT(HPDF_STATUS) 144 HPDF_SaveToStream (HPDF_Doc pdf); 145 146 HPDF_EXPORT(HPDF_STATUS) 147 HPDF_GetContents (HPDF_Doc pdf, 148 HPDF_BYTE *buf, 149 HPDF_UINT32 *size); 150 151 HPDF_EXPORT(HPDF_UINT32) 152 HPDF_GetStreamSize (HPDF_Doc pdf); 153 154 155 HPDF_EXPORT(HPDF_STATUS) 156 HPDF_ReadFromStream (HPDF_Doc pdf, 157 HPDF_BYTE *buf, 158 HPDF_UINT32 *size); 159 160 161 HPDF_EXPORT(HPDF_STATUS) 162 HPDF_ResetStream (HPDF_Doc pdf); 163 164 165 HPDF_EXPORT(HPDF_STATUS) 166 HPDF_SaveToFile (HPDF_Doc pdf, 167 const char *file_name); 168 169 170 HPDF_EXPORT(HPDF_STATUS) 171 HPDF_GetError (HPDF_Doc pdf); 172 173 174 HPDF_EXPORT(HPDF_STATUS) 175 HPDF_GetErrorDetail (HPDF_Doc pdf); 176 177 HPDF_EXPORT(void) 178 HPDF_ResetError (HPDF_Doc pdf); 179 180 181 HPDF_EXPORT(HPDF_STATUS) 182 HPDF_CheckError (HPDF_Error error); 183 184 185 HPDF_EXPORT(HPDF_STATUS) 186 HPDF_SetPagesConfiguration (HPDF_Doc pdf, 187 HPDF_UINT page_per_pages); 188 189 190 HPDF_EXPORT(HPDF_Page) 191 HPDF_GetPageByIndex (HPDF_Doc pdf, 192 HPDF_UINT index); 193 194 195 /*---------------------------------------------------------------------------*/ 196 /*---------------------------------------------------------------------------*/ 197 198 HPDF_EXPORT(HPDF_MMgr) 199 HPDF_GetPageMMgr (HPDF_Page page); 200 201 HPDF_EXPORT(HPDF_PageLayout) 202 HPDF_GetPageLayout (HPDF_Doc pdf); 203 204 205 HPDF_EXPORT(HPDF_STATUS) 206 HPDF_SetPageLayout (HPDF_Doc pdf, 207 HPDF_PageLayout layout); 208 209 210 HPDF_EXPORT(HPDF_PageMode) 211 HPDF_GetPageMode (HPDF_Doc pdf); 212 213 214 HPDF_EXPORT(HPDF_STATUS) 215 HPDF_SetPageMode (HPDF_Doc pdf, 216 HPDF_PageMode mode); 217 218 219 HPDF_EXPORT(HPDF_UINT) 220 HPDF_GetViewerPreference (HPDF_Doc pdf); 221 222 223 HPDF_EXPORT(HPDF_STATUS) 224 HPDF_SetViewerPreference (HPDF_Doc pdf, 225 HPDF_UINT value); 226 227 228 HPDF_EXPORT(HPDF_STATUS) 229 HPDF_SetOpenAction (HPDF_Doc pdf, 230 HPDF_Destination open_action); 231 232 233 /*---------------------------------------------------------------------------*/ 234 /*----- page handling -------------------------------------------------------*/ 235 236 237 HPDF_EXPORT(HPDF_Page) 238 HPDF_GetCurrentPage (HPDF_Doc pdf); 239 240 241 HPDF_EXPORT(HPDF_Page) 242 HPDF_AddPage (HPDF_Doc pdf); 243 244 245 HPDF_EXPORT(HPDF_Page) 246 HPDF_InsertPage (HPDF_Doc pdf, 247 HPDF_Page page); 248 249 250 HPDF_EXPORT(HPDF_STATUS) 251 HPDF_Page_SetWidth (HPDF_Page page, 252 HPDF_REAL value); 253 254 255 HPDF_EXPORT(HPDF_STATUS) 256 HPDF_Page_SetHeight (HPDF_Page page, 257 HPDF_REAL value); 258 259 260 HPDF_EXPORT(HPDF_STATUS) 261 HPDF_Page_SetSize (HPDF_Page page, 262 HPDF_PageSizes size, 263 HPDF_PageDirection direction); 264 265 HPDF_EXPORT(HPDF_STATUS) 266 HPDF_Page_SetRotate (HPDF_Page page, 267 HPDF_UINT16 angle); 268 269 HPDF_EXPORT(HPDF_STATUS) 270 HPDF_Page_SetZoom (HPDF_Page page, 271 HPDF_REAL zoom); 272 273 /*---------------------------------------------------------------------------*/ 274 /*----- font handling -------------------------------------------------------*/ 275 276 277 HPDF_EXPORT(HPDF_Font) 278 HPDF_GetFont (HPDF_Doc pdf, 279 const char *font_name, 280 const char *encoding_name); 281 282 283 HPDF_EXPORT(const char*) 284 HPDF_LoadType1FontFromFile (HPDF_Doc pdf, 285 const char *afm_file_name, 286 const char *data_file_name); 287 288 289 HPDF_EXPORT(HPDF_FontDef) 290 HPDF_GetTTFontDefFromFile (HPDF_Doc pdf, 291 const char *file_name, 292 HPDF_BOOL embedding); 293 294 HPDF_EXPORT(const char*) 295 HPDF_LoadTTFontFromFile (HPDF_Doc pdf, 296 const char *file_name, 297 HPDF_BOOL embedding); 298 299 300 HPDF_EXPORT(const char*) 301 HPDF_LoadTTFontFromFile2 (HPDF_Doc pdf, 302 const char *file_name, 303 HPDF_UINT index, 304 HPDF_BOOL embedding); 305 306 307 HPDF_EXPORT(HPDF_STATUS) 308 HPDF_AddPageLabel (HPDF_Doc pdf, 309 HPDF_UINT page_num, 310 HPDF_PageNumStyle style, 311 HPDF_UINT first_page, 312 const char *prefix); 313 314 315 HPDF_EXPORT(HPDF_STATUS) 316 HPDF_UseJPFonts (HPDF_Doc pdf); 317 318 319 HPDF_EXPORT(HPDF_STATUS) 320 HPDF_UseKRFonts (HPDF_Doc pdf); 321 322 323 HPDF_EXPORT(HPDF_STATUS) 324 HPDF_UseCNSFonts (HPDF_Doc pdf); 325 326 327 HPDF_EXPORT(HPDF_STATUS) 328 HPDF_UseCNTFonts (HPDF_Doc pdf); 329 330 331 /*--------------------------------------------------------------------------*/ 332 /*----- outline ------------------------------------------------------------*/ 333 334 335 HPDF_EXPORT(HPDF_Outline) 336 HPDF_CreateOutline (HPDF_Doc pdf, 337 HPDF_Outline parent, 338 const char *title, 339 HPDF_Encoder encoder); 340 341 342 HPDF_EXPORT(HPDF_STATUS) 343 HPDF_Outline_SetOpened (HPDF_Outline outline, 344 HPDF_BOOL opened); 345 346 347 HPDF_EXPORT(HPDF_STATUS) 348 HPDF_Outline_SetDestination (HPDF_Outline outline, 349 HPDF_Destination dst); 350 351 352 /*--------------------------------------------------------------------------*/ 353 /*----- destination --------------------------------------------------------*/ 354 355 HPDF_EXPORT(HPDF_Destination) 356 HPDF_Page_CreateDestination (HPDF_Page page); 357 358 359 HPDF_EXPORT(HPDF_STATUS) 360 HPDF_Destination_SetXYZ (HPDF_Destination dst, 361 HPDF_REAL left, 362 HPDF_REAL top, 363 HPDF_REAL zoom); 364 365 366 HPDF_EXPORT(HPDF_STATUS) 367 HPDF_Destination_SetFit (HPDF_Destination dst); 368 369 370 HPDF_EXPORT(HPDF_STATUS) 371 HPDF_Destination_SetFitH (HPDF_Destination dst, 372 HPDF_REAL top); 373 374 375 HPDF_EXPORT(HPDF_STATUS) 376 HPDF_Destination_SetFitV (HPDF_Destination dst, 377 HPDF_REAL left); 378 379 380 HPDF_EXPORT(HPDF_STATUS) 381 HPDF_Destination_SetFitR (HPDF_Destination dst, 382 HPDF_REAL left, 383 HPDF_REAL bottom, 384 HPDF_REAL right, 385 HPDF_REAL top); 386 387 388 HPDF_EXPORT(HPDF_STATUS) 389 HPDF_Destination_SetFitB (HPDF_Destination dst); 390 391 392 HPDF_EXPORT(HPDF_STATUS) 393 HPDF_Destination_SetFitBH (HPDF_Destination dst, 394 HPDF_REAL top); 395 396 397 HPDF_EXPORT(HPDF_STATUS) 398 HPDF_Destination_SetFitBV (HPDF_Destination dst, 399 HPDF_REAL left); 400 401 /*--------------------------------------------------------------------------*/ 402 /*----- encoder ------------------------------------------------------------*/ 403 404 HPDF_EXPORT(HPDF_Encoder) 405 HPDF_GetEncoder (HPDF_Doc pdf, 406 const char *encoding_name); 407 408 409 HPDF_EXPORT(HPDF_Encoder) 410 HPDF_GetCurrentEncoder (HPDF_Doc pdf); 411 412 413 HPDF_EXPORT(HPDF_STATUS) 414 HPDF_SetCurrentEncoder (HPDF_Doc pdf, 415 const char *encoding_name); 416 417 418 HPDF_EXPORT(HPDF_EncoderType) 419 HPDF_Encoder_GetType (HPDF_Encoder encoder); 420 421 422 HPDF_EXPORT(HPDF_ByteType) 423 HPDF_Encoder_GetByteType (HPDF_Encoder encoder, 424 const char *text, 425 HPDF_UINT index); 426 427 428 HPDF_EXPORT(HPDF_UNICODE) 429 HPDF_Encoder_GetUnicode (HPDF_Encoder encoder, 430 HPDF_UINT16 code); 431 432 433 HPDF_EXPORT(HPDF_WritingMode) 434 HPDF_Encoder_GetWritingMode (HPDF_Encoder encoder); 435 436 437 HPDF_EXPORT(HPDF_STATUS) 438 HPDF_UseJPEncodings (HPDF_Doc pdf); 439 440 441 442 HPDF_EXPORT(HPDF_STATUS) 443 HPDF_UseKREncodings (HPDF_Doc pdf); 444 445 446 447 HPDF_EXPORT(HPDF_STATUS) 448 HPDF_UseCNSEncodings (HPDF_Doc pdf); 449 450 451 452 HPDF_EXPORT(HPDF_STATUS) 453 HPDF_UseCNTEncodings (HPDF_Doc pdf); 454 455 456 HPDF_EXPORT(HPDF_STATUS) 457 HPDF_UseUTFEncodings (HPDF_Doc pdf); 458 459 460 /*--------------------------------------------------------------------------*/ 461 /*----- XObject ------------------------------------------------------------*/ 462 463 HPDF_EXPORT(HPDF_XObject) 464 HPDF_Page_CreateXObjectFromImage (HPDF_Doc pdf, 465 HPDF_Page page, 466 HPDF_Rect rect, 467 HPDF_Image image, 468 HPDF_Boolean zoom); 469 470 HPDF_EXPORT(HPDF_XObject) 471 HPDF_Page_CreateXObjectAsWhiteRect (HPDF_Doc pdf, 472 HPDF_Page page, 473 HPDF_Rect rect); 474 475 /*--------------------------------------------------------------------------*/ 476 /*----- annotation ---------------------------------------------------------*/ 477 478 HPDF_EXPORT(HPDF_Annotation) 479 HPDF_Page_Create3DAnnot (HPDF_Page page, 480 HPDF_Rect rect, 481 HPDF_BOOL tb, 482 HPDF_BOOL np, 483 HPDF_U3D u3d, 484 HPDF_Image ap); 485 486 HPDF_EXPORT(HPDF_Annotation) 487 HPDF_Page_CreateTextAnnot (HPDF_Page page, 488 HPDF_Rect rect, 489 const char *text, 490 HPDF_Encoder encoder); 491 492 HPDF_EXPORT(HPDF_Annotation) 493 HPDF_Page_CreateFreeTextAnnot (HPDF_Page page, 494 HPDF_Rect rect, 495 const char *text, 496 HPDF_Encoder encoder); 497 498 HPDF_EXPORT(HPDF_Annotation) 499 HPDF_Page_CreateLineAnnot (HPDF_Page page, 500 const char *text, 501 HPDF_Encoder encoder); 502 503 HPDF_EXPORT(HPDF_Annotation) 504 HPDF_Page_CreateWidgetAnnot_WhiteOnlyWhilePrint (HPDF_Doc pdf, 505 HPDF_Page page, 506 HPDF_Rect rect); 507 508 HPDF_EXPORT(HPDF_Annotation) 509 HPDF_Page_CreateWidgetAnnot (HPDF_Page page, 510 HPDF_Rect rect); 511 512 HPDF_EXPORT(HPDF_Annotation) 513 HPDF_Page_CreateLinkAnnot (HPDF_Page page, 514 HPDF_Rect rect, 515 HPDF_Destination dst); 516 517 518 HPDF_EXPORT(HPDF_Annotation) 519 HPDF_Page_CreateURILinkAnnot (HPDF_Page page, 520 HPDF_Rect rect, 521 const char *uri); 522 523 524 HPDF_Annotation 525 HPDF_Page_CreateTextMarkupAnnot (HPDF_Page page, 526 HPDF_Rect rect, 527 const char *text, 528 HPDF_Encoder encoder, 529 HPDF_AnnotType subType); 530 531 HPDF_EXPORT(HPDF_Annotation) 532 HPDF_Page_CreateHighlightAnnot (HPDF_Page page, 533 HPDF_Rect rect, 534 const char *text, 535 HPDF_Encoder encoder); 536 537 HPDF_EXPORT(HPDF_Annotation) 538 HPDF_Page_CreateUnderlineAnnot (HPDF_Page page, 539 HPDF_Rect rect, 540 const char *text, 541 HPDF_Encoder encoder); 542 543 HPDF_EXPORT(HPDF_Annotation) 544 HPDF_Page_CreateSquigglyAnnot (HPDF_Page page, 545 HPDF_Rect rect, 546 const char *text, 547 HPDF_Encoder encoder); 548 549 HPDF_EXPORT(HPDF_Annotation) 550 HPDF_Page_CreateStrikeOutAnnot (HPDF_Page page, 551 HPDF_Rect rect, 552 const char *text, 553 HPDF_Encoder encoder); 554 555 HPDF_EXPORT(HPDF_Annotation) 556 HPDF_Page_CreatePopupAnnot ( HPDF_Page page, 557 HPDF_Rect rect, 558 HPDF_Annotation parent); 559 560 HPDF_EXPORT(HPDF_Annotation) 561 HPDF_Page_CreateStampAnnot ( HPDF_Page page, 562 HPDF_Rect rect, 563 HPDF_StampAnnotName name, 564 const char* text, 565 HPDF_Encoder encoder); 566 567 HPDF_EXPORT(HPDF_Annotation) 568 HPDF_Page_CreateProjectionAnnot(HPDF_Page page, 569 HPDF_Rect rect, 570 const char* text, 571 HPDF_Encoder encoder); 572 573 HPDF_EXPORT(HPDF_Annotation) 574 HPDF_Page_CreateSquareAnnot (HPDF_Page page, 575 HPDF_Rect rect, 576 const char *text, 577 HPDF_Encoder encoder); 578 579 HPDF_EXPORT(HPDF_Annotation) 580 HPDF_Page_CreateCircleAnnot (HPDF_Page page, 581 HPDF_Rect rect, 582 const char *text, 583 HPDF_Encoder encoder); 584 585 HPDF_EXPORT(HPDF_STATUS) 586 HPDF_LinkAnnot_SetHighlightMode (HPDF_Annotation annot, 587 HPDF_AnnotHighlightMode mode); 588 589 HPDF_EXPORT(HPDF_STATUS) 590 HPDF_LinkAnnot_SetJavaScript(HPDF_Annotation annot, 591 HPDF_JavaScript javascript); 592 593 HPDF_EXPORT(HPDF_STATUS) 594 HPDF_LinkAnnot_SetBorderStyle (HPDF_Annotation annot, 595 HPDF_REAL width, 596 HPDF_UINT16 dash_on, 597 HPDF_UINT16 dash_off); 598 599 600 HPDF_EXPORT(HPDF_STATUS) 601 HPDF_TextAnnot_SetIcon (HPDF_Annotation annot, 602 HPDF_AnnotIcon icon); 603 604 605 HPDF_EXPORT(HPDF_STATUS) 606 HPDF_TextAnnot_SetOpened (HPDF_Annotation annot, 607 HPDF_BOOL opened); 608 609 HPDF_EXPORT(HPDF_STATUS) 610 HPDF_Annot_SetRGBColor (HPDF_Annotation annot, HPDF_RGBColor color); 611 612 HPDF_EXPORT(HPDF_STATUS) 613 HPDF_Annot_SetCMYKColor (HPDF_Annotation annot, HPDF_CMYKColor color); 614 615 HPDF_EXPORT(HPDF_STATUS) 616 HPDF_Annot_SetGrayColor (HPDF_Annotation annot, HPDF_REAL color); 617 618 HPDF_EXPORT(HPDF_STATUS) 619 HPDF_Annot_SetNoColor (HPDF_Annotation annot); 620 621 HPDF_EXPORT(HPDF_STATUS) 622 HPDF_MarkupAnnot_SetTitle (HPDF_Annotation annot, const char* name); 623 624 HPDF_EXPORT(HPDF_STATUS) 625 HPDF_MarkupAnnot_SetSubject (HPDF_Annotation annot, const char* name); 626 627 HPDF_EXPORT(HPDF_STATUS) 628 HPDF_MarkupAnnot_SetCreationDate (HPDF_Annotation annot, HPDF_Date value); 629 630 HPDF_EXPORT(HPDF_STATUS) 631 HPDF_MarkupAnnot_SetTransparency (HPDF_Annotation annot, HPDF_REAL value); 632 633 HPDF_EXPORT(HPDF_STATUS) 634 HPDF_MarkupAnnot_SetIntent (HPDF_Annotation annot, HPDF_AnnotIntent intent); 635 636 HPDF_EXPORT(HPDF_STATUS) 637 HPDF_MarkupAnnot_SetPopup (HPDF_Annotation annot, HPDF_Annotation popup); 638 639 HPDF_EXPORT(HPDF_STATUS) 640 HPDF_MarkupAnnot_SetRectDiff (HPDF_Annotation annot, HPDF_Rect rect); /* RD entry */ 641 642 HPDF_EXPORT(HPDF_STATUS) 643 HPDF_MarkupAnnot_SetCloudEffect (HPDF_Annotation annot, HPDF_INT cloudIntensity); /* BE entry */ 644 645 HPDF_EXPORT(HPDF_STATUS) 646 HPDF_MarkupAnnot_SetInteriorRGBColor (HPDF_Annotation annot, HPDF_RGBColor color); /* IC with RGB entry */ 647 648 HPDF_EXPORT(HPDF_STATUS) 649 HPDF_MarkupAnnot_SetInteriorCMYKColor (HPDF_Annotation annot, HPDF_CMYKColor color); /* IC with CMYK entry */ 650 651 HPDF_EXPORT(HPDF_STATUS) 652 HPDF_MarkupAnnot_SetInteriorGrayColor (HPDF_Annotation annot, HPDF_REAL color); /* IC with Gray entry */ 653 654 HPDF_EXPORT(HPDF_STATUS) 655 HPDF_MarkupAnnot_SetInteriorTransparent (HPDF_Annotation annot); /* IC with No Color entry */ 656 657 HPDF_EXPORT(HPDF_STATUS) 658 HPDF_TextMarkupAnnot_SetQuadPoints ( HPDF_Annotation annot, HPDF_Point lb, HPDF_Point rb, HPDF_Point rt, HPDF_Point lt); /* l-left, r-right, b-bottom, t-top positions */ 659 660 HPDF_EXPORT(HPDF_STATUS) 661 HPDF_Annot_Set3DView ( HPDF_MMgr mmgr, 662 HPDF_Annotation annot, 663 HPDF_Annotation annot3d, 664 HPDF_Dict view); 665 666 HPDF_EXPORT(HPDF_STATUS) 667 HPDF_PopupAnnot_SetOpened (HPDF_Annotation annot, 668 HPDF_BOOL opened); 669 670 HPDF_EXPORT(HPDF_STATUS) 671 HPDF_FreeTextAnnot_SetLineEndingStyle (HPDF_Annotation annot, HPDF_LineAnnotEndingStyle startStyle, HPDF_LineAnnotEndingStyle endStyle); 672 673 HPDF_EXPORT(HPDF_STATUS) 674 HPDF_FreeTextAnnot_Set3PointCalloutLine (HPDF_Annotation annot, HPDF_Point startPoint, HPDF_Point kneePoint, HPDF_Point endPoint); /* Callout line will be in default user space */ 675 676 HPDF_EXPORT(HPDF_STATUS) 677 HPDF_FreeTextAnnot_Set2PointCalloutLine (HPDF_Annotation annot, HPDF_Point startPoint, HPDF_Point endPoint); /* Callout line will be in default user space */ 678 679 HPDF_EXPORT(HPDF_STATUS) 680 HPDF_FreeTextAnnot_SetDefaultStyle (HPDF_Annotation annot, const char* style); 681 682 HPDF_EXPORT(HPDF_STATUS) 683 HPDF_LineAnnot_SetPosition (HPDF_Annotation annot, 684 HPDF_Point startPoint, HPDF_LineAnnotEndingStyle startStyle, 685 HPDF_Point endPoint, HPDF_LineAnnotEndingStyle endStyle); 686 687 HPDF_EXPORT(HPDF_STATUS) 688 HPDF_LineAnnot_SetLeader (HPDF_Annotation annot, HPDF_INT leaderLen, HPDF_INT leaderExtLen, HPDF_INT leaderOffsetLen); 689 690 HPDF_EXPORT(HPDF_STATUS) 691 HPDF_LineAnnot_SetCaption (HPDF_Annotation annot, HPDF_BOOL showCaption, HPDF_LineAnnotCapPosition position, HPDF_INT horzOffset, HPDF_INT vertOffset); 692 693 HPDF_EXPORT(HPDF_STATUS) 694 HPDF_Annotation_SetBorderStyle (HPDF_Annotation annot, 695 HPDF_BSSubtype subtype, 696 HPDF_REAL width, 697 HPDF_UINT16 dash_on, 698 HPDF_UINT16 dash_off, 699 HPDF_UINT16 dash_phase); 700 701 HPDF_EXPORT(HPDF_STATUS) 702 HPDF_ProjectionAnnot_SetExData(HPDF_Annotation annot, HPDF_ExData exdata); 703 704 705 /*--------------------------------------------------------------------------*/ 706 /*----- 3D Measure ---------------------------------------------------------*/ 707 HPDF_EXPORT(HPDF_3DMeasure) 708 HPDF_Page_Create3DC3DMeasure(HPDF_Page page, 709 HPDF_Point3D firstanchorpoint, 710 HPDF_Point3D textanchorpoint 711 ); 712 713 HPDF_EXPORT(HPDF_3DMeasure) 714 HPDF_Page_CreatePD33DMeasure(HPDF_Page page, 715 HPDF_Point3D annotationPlaneNormal, 716 HPDF_Point3D firstAnchorPoint, 717 HPDF_Point3D secondAnchorPoint, 718 HPDF_Point3D leaderLinesDirection, 719 HPDF_Point3D measurementValuePoint, 720 HPDF_Point3D textYDirection, 721 HPDF_REAL value, 722 const char* unitsString 723 ); 724 725 HPDF_EXPORT(HPDF_STATUS) 726 HPDF_3DMeasure_SetName(HPDF_3DMeasure measure, 727 const char* name); 728 729 HPDF_EXPORT(HPDF_STATUS) 730 HPDF_3DMeasure_SetColor(HPDF_3DMeasure measure, 731 HPDF_RGBColor color); 732 733 HPDF_EXPORT(HPDF_STATUS) 734 HPDF_3DMeasure_SetTextSize(HPDF_3DMeasure measure, 735 HPDF_REAL textsize); 736 737 HPDF_EXPORT(HPDF_STATUS) 738 HPDF_3DC3DMeasure_SetTextBoxSize(HPDF_3DMeasure measure, 739 HPDF_INT32 x, 740 HPDF_INT32 y); 741 742 HPDF_EXPORT(HPDF_STATUS) 743 HPDF_3DC3DMeasure_SetText(HPDF_3DMeasure measure, 744 const char* text, 745 HPDF_Encoder encoder); 746 747 HPDF_EXPORT(HPDF_STATUS) 748 HPDF_3DC3DMeasure_SetProjectionAnotation(HPDF_3DMeasure measure, 749 HPDF_Annotation projectionanotation); 750 751 /*--------------------------------------------------------------------------*/ 752 /*----- External Data ---------------------------------------------------------*/ 753 754 HPDF_EXPORT(HPDF_ExData) 755 HPDF_Page_Create3DAnnotExData(HPDF_Page page ); 756 757 HPDF_EXPORT(HPDF_STATUS) 758 HPDF_3DAnnotExData_Set3DMeasurement(HPDF_ExData exdata, HPDF_3DMeasure measure); 759 760 /*--------------------------------------------------------------------------*/ 761 /*--------------------------------------------------------------------------*/ 762 /*----- 3D View ---------------------------------------------------------*/ 763 764 HPDF_EXPORT(HPDF_Dict) 765 HPDF_Page_Create3DView (HPDF_Page page, 766 HPDF_U3D u3d, 767 HPDF_Annotation annot3d, 768 const char *name); 769 770 HPDF_EXPORT(HPDF_STATUS) 771 HPDF_3DView_Add3DC3DMeasure(HPDF_Dict view, 772 HPDF_3DMeasure measure); 773 774 /*--------------------------------------------------------------------------*/ 775 /*----- image data ---------------------------------------------------------*/ 776 777 HPDF_EXPORT(HPDF_Image) 778 HPDF_LoadPngImageFromMem (HPDF_Doc pdf, 779 const HPDF_BYTE *buffer, 780 HPDF_UINT size); 781 782 HPDF_EXPORT(HPDF_Image) 783 HPDF_LoadPngImageFromFile (HPDF_Doc pdf, 784 const char *filename); 785 786 787 HPDF_EXPORT(HPDF_Image) 788 HPDF_LoadPngImageFromFile2 (HPDF_Doc pdf, 789 const char *filename); 790 791 792 HPDF_EXPORT(HPDF_Image) 793 HPDF_LoadJpegImageFromFile (HPDF_Doc pdf, 794 const char *filename); 795 796 HPDF_EXPORT(HPDF_Image) 797 HPDF_LoadJpegImageFromMem (HPDF_Doc pdf, 798 const HPDF_BYTE *buffer, 799 HPDF_UINT size); 800 801 HPDF_EXPORT(HPDF_Image) 802 HPDF_LoadU3DFromFile (HPDF_Doc pdf, 803 const char *filename); 804 805 HPDF_EXPORT(HPDF_Image) 806 HPDF_LoadU3DFromMem (HPDF_Doc pdf, 807 const HPDF_BYTE *buffer, 808 HPDF_UINT size); 809 810 HPDF_EXPORT(HPDF_Image) 811 HPDF_Image_LoadRaw1BitImageFromMem (HPDF_Doc pdf, 812 const HPDF_BYTE *buf, 813 HPDF_UINT width, 814 HPDF_UINT height, 815 HPDF_UINT line_width, 816 HPDF_BOOL black_is1, 817 HPDF_BOOL top_is_first); 818 819 820 HPDF_EXPORT(HPDF_Image) 821 HPDF_LoadRawImageFromFile (HPDF_Doc pdf, 822 const char *filename, 823 HPDF_UINT width, 824 HPDF_UINT height, 825 HPDF_ColorSpace color_space); 826 827 828 HPDF_EXPORT(HPDF_Image) 829 HPDF_LoadRawImageFromMem (HPDF_Doc pdf, 830 const HPDF_BYTE *buf, 831 HPDF_UINT width, 832 HPDF_UINT height, 833 HPDF_ColorSpace color_space, 834 HPDF_UINT bits_per_component); 835 836 HPDF_EXPORT(HPDF_STATUS) 837 HPDF_Image_AddSMask (HPDF_Image image, 838 HPDF_Image smask); 839 840 HPDF_EXPORT(HPDF_Point) 841 HPDF_Image_GetSize (HPDF_Image image); 842 843 844 HPDF_EXPORT(HPDF_STATUS) 845 HPDF_Image_GetSize2 (HPDF_Image image, HPDF_Point *size); 846 847 848 HPDF_EXPORT(HPDF_UINT) 849 HPDF_Image_GetWidth (HPDF_Image image); 850 851 852 HPDF_EXPORT(HPDF_UINT) 853 HPDF_Image_GetHeight (HPDF_Image image); 854 855 856 HPDF_EXPORT(HPDF_UINT) 857 HPDF_Image_GetBitsPerComponent (HPDF_Image image); 858 859 860 HPDF_EXPORT(const char*) 861 HPDF_Image_GetColorSpace (HPDF_Image image); 862 863 864 HPDF_EXPORT(HPDF_STATUS) 865 HPDF_Image_SetColorMask (HPDF_Image image, 866 HPDF_UINT rmin, 867 HPDF_UINT rmax, 868 HPDF_UINT gmin, 869 HPDF_UINT gmax, 870 HPDF_UINT bmin, 871 HPDF_UINT bmax); 872 873 874 HPDF_EXPORT(HPDF_STATUS) 875 HPDF_Image_SetMaskImage (HPDF_Image image, 876 HPDF_Image mask_image); 877 878 879 /*--------------------------------------------------------------------------*/ 880 /*----- info dictionary ----------------------------------------------------*/ 881 882 883 HPDF_EXPORT(HPDF_STATUS) 884 HPDF_SetInfoAttr (HPDF_Doc pdf, 885 HPDF_InfoType type, 886 const char *value); 887 888 889 HPDF_EXPORT(const char*) 890 HPDF_GetInfoAttr (HPDF_Doc pdf, 891 HPDF_InfoType type); 892 893 894 HPDF_EXPORT(HPDF_STATUS) 895 HPDF_SetInfoDateAttr (HPDF_Doc pdf, 896 HPDF_InfoType type, 897 HPDF_Date value); 898 899 900 /*--------------------------------------------------------------------------*/ 901 /*----- encryption ---------------------------------------------------------*/ 902 903 HPDF_EXPORT(HPDF_STATUS) 904 HPDF_SetPassword (HPDF_Doc pdf, 905 const char *owner_passwd, 906 const char *user_passwd); 907 908 909 HPDF_EXPORT(HPDF_STATUS) 910 HPDF_SetPermission (HPDF_Doc pdf, 911 HPDF_UINT permission); 912 913 914 HPDF_EXPORT(HPDF_STATUS) 915 HPDF_SetEncryptionMode (HPDF_Doc pdf, 916 HPDF_EncryptMode mode, 917 HPDF_UINT key_len); 918 919 920 /*--------------------------------------------------------------------------*/ 921 /*----- compression --------------------------------------------------------*/ 922 923 HPDF_EXPORT(HPDF_STATUS) 924 HPDF_SetCompressionMode (HPDF_Doc pdf, 925 HPDF_UINT mode); 926 927 928 /*--------------------------------------------------------------------------*/ 929 /*----- font ---------------------------------------------------------------*/ 930 931 HPDF_EXPORT(const char*) 932 HPDF_Font_GetFontName (HPDF_Font font); 933 934 935 HPDF_EXPORT(const char*) 936 HPDF_Font_GetEncodingName (HPDF_Font font); 937 938 939 HPDF_EXPORT(HPDF_INT) 940 HPDF_Font_GetUnicodeWidth (HPDF_Font font, 941 HPDF_UNICODE code); 942 943 HPDF_EXPORT(HPDF_Box) 944 HPDF_Font_GetBBox (HPDF_Font font); 945 946 947 HPDF_EXPORT(HPDF_INT) 948 HPDF_Font_GetAscent (HPDF_Font font); 949 950 951 HPDF_EXPORT(HPDF_INT) 952 HPDF_Font_GetDescent (HPDF_Font font); 953 954 955 HPDF_EXPORT(HPDF_UINT) 956 HPDF_Font_GetXHeight (HPDF_Font font); 957 958 959 HPDF_EXPORT(HPDF_UINT) 960 HPDF_Font_GetCapHeight (HPDF_Font font); 961 962 963 HPDF_EXPORT(HPDF_TextWidth) 964 HPDF_Font_TextWidth (HPDF_Font font, 965 const HPDF_BYTE *text, 966 HPDF_UINT len); 967 968 969 HPDF_EXPORT(HPDF_UINT) 970 HPDF_Font_MeasureText (HPDF_Font font, 971 const HPDF_BYTE *text, 972 HPDF_UINT len, 973 HPDF_REAL width, 974 HPDF_REAL font_size, 975 HPDF_REAL char_space, 976 HPDF_REAL word_space, 977 HPDF_BOOL wordwrap, 978 HPDF_REAL *real_width); 979 980 981 /*--------------------------------------------------------------------------*/ 982 /*----- attachements -------------------------------------------------------*/ 983 984 HPDF_EXPORT(HPDF_EmbeddedFile) 985 HPDF_AttachFile (HPDF_Doc pdf, 986 const char *file); 987 988 989 /*--------------------------------------------------------------------------*/ 990 /*----- extended graphics state --------------------------------------------*/ 991 992 HPDF_EXPORT(HPDF_ExtGState) 993 HPDF_CreateExtGState (HPDF_Doc pdf); 994 995 996 HPDF_EXPORT(HPDF_STATUS) 997 HPDF_ExtGState_SetAlphaStroke (HPDF_ExtGState ext_gstate, 998 HPDF_REAL value); 999 1000 1001 HPDF_EXPORT(HPDF_STATUS) 1002 HPDF_ExtGState_SetAlphaFill (HPDF_ExtGState ext_gstate, 1003 HPDF_REAL value); 1004 1005 1006 1007 HPDF_EXPORT(HPDF_STATUS) 1008 HPDF_ExtGState_SetBlendMode (HPDF_ExtGState ext_gstate, 1009 HPDF_BlendMode mode); 1010 1011 1012 /*--------------------------------------------------------------------------*/ 1013 /*--------------------------------------------------------------------------*/ 1014 1015 HPDF_EXPORT(HPDF_REAL) 1016 HPDF_Page_TextWidth (HPDF_Page page, 1017 const char *text); 1018 1019 1020 HPDF_EXPORT(HPDF_UINT) 1021 HPDF_Page_MeasureText (HPDF_Page page, 1022 const char *text, 1023 HPDF_REAL width, 1024 HPDF_BOOL wordwrap, 1025 HPDF_REAL *real_width); 1026 1027 1028 HPDF_EXPORT(HPDF_REAL) 1029 HPDF_Page_GetWidth (HPDF_Page page); 1030 1031 1032 HPDF_EXPORT(HPDF_REAL) 1033 HPDF_Page_GetHeight (HPDF_Page page); 1034 1035 1036 HPDF_EXPORT(HPDF_UINT16) 1037 HPDF_Page_GetGMode (HPDF_Page page); 1038 1039 1040 HPDF_EXPORT(HPDF_Point) 1041 HPDF_Page_GetCurrentPos (HPDF_Page page); 1042 1043 1044 HPDF_EXPORT(HPDF_STATUS) 1045 HPDF_Page_GetCurrentPos2 (HPDF_Page page, 1046 HPDF_Point *pos); 1047 1048 1049 HPDF_EXPORT(HPDF_Point) 1050 HPDF_Page_GetCurrentTextPos (HPDF_Page page); 1051 1052 1053 HPDF_EXPORT(HPDF_STATUS) 1054 HPDF_Page_GetCurrentTextPos2 (HPDF_Page page, 1055 HPDF_Point *pos); 1056 1057 1058 HPDF_EXPORT(HPDF_Font) 1059 HPDF_Page_GetCurrentFont (HPDF_Page page); 1060 1061 1062 HPDF_EXPORT(HPDF_REAL) 1063 HPDF_Page_GetCurrentFontSize (HPDF_Page page); 1064 1065 1066 HPDF_EXPORT(HPDF_TransMatrix) 1067 HPDF_Page_GetTransMatrix (HPDF_Page page); 1068 1069 1070 HPDF_EXPORT(HPDF_REAL) 1071 HPDF_Page_GetLineWidth (HPDF_Page page); 1072 1073 1074 HPDF_EXPORT(HPDF_LineCap) 1075 HPDF_Page_GetLineCap (HPDF_Page page); 1076 1077 1078 HPDF_EXPORT(HPDF_LineJoin) 1079 HPDF_Page_GetLineJoin (HPDF_Page page); 1080 1081 1082 HPDF_EXPORT(HPDF_REAL) 1083 HPDF_Page_GetMiterLimit (HPDF_Page page); 1084 1085 1086 HPDF_EXPORT(HPDF_DashMode) 1087 HPDF_Page_GetDash (HPDF_Page page); 1088 1089 1090 HPDF_EXPORT(HPDF_REAL) 1091 HPDF_Page_GetFlat (HPDF_Page page); 1092 1093 1094 HPDF_EXPORT(HPDF_REAL) 1095 HPDF_Page_GetCharSpace (HPDF_Page page); 1096 1097 1098 HPDF_EXPORT(HPDF_REAL) 1099 HPDF_Page_GetWordSpace (HPDF_Page page); 1100 1101 1102 HPDF_EXPORT(HPDF_REAL) 1103 HPDF_Page_GetHorizontalScalling (HPDF_Page page); 1104 1105 1106 HPDF_EXPORT(HPDF_REAL) 1107 HPDF_Page_GetTextLeading (HPDF_Page page); 1108 1109 1110 HPDF_EXPORT(HPDF_TextRenderingMode) 1111 HPDF_Page_GetTextRenderingMode (HPDF_Page page); 1112 1113 1114 /* This function is obsolete. Use HPDF_Page_GetTextRise. */ 1115 HPDF_EXPORT(HPDF_REAL) 1116 HPDF_Page_GetTextRaise (HPDF_Page page); 1117 1118 1119 HPDF_EXPORT(HPDF_REAL) 1120 HPDF_Page_GetTextRise (HPDF_Page page); 1121 1122 1123 HPDF_EXPORT(HPDF_RGBColor) 1124 HPDF_Page_GetRGBFill (HPDF_Page page); 1125 1126 1127 HPDF_EXPORT(HPDF_RGBColor) 1128 HPDF_Page_GetRGBStroke (HPDF_Page page); 1129 1130 1131 HPDF_EXPORT(HPDF_CMYKColor) 1132 HPDF_Page_GetCMYKFill (HPDF_Page page); 1133 1134 1135 HPDF_EXPORT(HPDF_CMYKColor) 1136 HPDF_Page_GetCMYKStroke (HPDF_Page page); 1137 1138 1139 HPDF_EXPORT(HPDF_REAL) 1140 HPDF_Page_GetGrayFill (HPDF_Page page); 1141 1142 1143 HPDF_EXPORT(HPDF_REAL) 1144 HPDF_Page_GetGrayStroke (HPDF_Page page); 1145 1146 1147 HPDF_EXPORT(HPDF_ColorSpace) 1148 HPDF_Page_GetStrokingColorSpace (HPDF_Page page); 1149 1150 1151 HPDF_EXPORT(HPDF_ColorSpace) 1152 HPDF_Page_GetFillingColorSpace (HPDF_Page page); 1153 1154 1155 HPDF_EXPORT(HPDF_TransMatrix) 1156 HPDF_Page_GetTextMatrix (HPDF_Page page); 1157 1158 1159 HPDF_EXPORT(HPDF_UINT) 1160 HPDF_Page_GetGStateDepth (HPDF_Page page); 1161 1162 1163 /*--------------------------------------------------------------------------*/ 1164 /*----- GRAPHICS OPERATORS -------------------------------------------------*/ 1165 1166 1167 /*--- General graphics state ---------------------------------------------*/ 1168 1169 /* w */ 1170 HPDF_EXPORT(HPDF_STATUS) 1171 HPDF_Page_SetLineWidth (HPDF_Page page, 1172 HPDF_REAL line_width); 1173 1174 /* J */ 1175 HPDF_EXPORT(HPDF_STATUS) 1176 HPDF_Page_SetLineCap (HPDF_Page page, 1177 HPDF_LineCap line_cap); 1178 1179 /* j */ 1180 HPDF_EXPORT(HPDF_STATUS) 1181 HPDF_Page_SetLineJoin (HPDF_Page page, 1182 HPDF_LineJoin line_join); 1183 1184 /* M */ 1185 HPDF_EXPORT(HPDF_STATUS) 1186 HPDF_Page_SetMiterLimit (HPDF_Page page, 1187 HPDF_REAL miter_limit); 1188 1189 /* d */ 1190 HPDF_EXPORT(HPDF_STATUS) 1191 HPDF_Page_SetDash (HPDF_Page page, 1192 const HPDF_UINT16 *dash_ptn, 1193 HPDF_UINT num_param, 1194 HPDF_UINT phase); 1195 1196 1197 1198 /* ri --not implemented yet */ 1199 1200 /* i */ 1201 HPDF_EXPORT(HPDF_STATUS) 1202 HPDF_Page_SetFlat (HPDF_Page page, 1203 HPDF_REAL flatness); 1204 1205 /* gs */ 1206 1207 HPDF_EXPORT(HPDF_STATUS) 1208 HPDF_Page_SetExtGState (HPDF_Page page, 1209 HPDF_ExtGState ext_gstate); 1210 1211 /* sh */ 1212 HPDF_EXPORT(HPDF_STATUS) 1213 HPDF_Page_SetShading (HPDF_Page page, 1214 HPDF_Shading shading); 1215 1216 1217 /*--- Special graphic state operator --------------------------------------*/ 1218 1219 /* q */ 1220 HPDF_EXPORT(HPDF_STATUS) 1221 HPDF_Page_GSave (HPDF_Page page); 1222 1223 /* Q */ 1224 HPDF_EXPORT(HPDF_STATUS) 1225 HPDF_Page_GRestore (HPDF_Page page); 1226 1227 /* cm */ 1228 HPDF_EXPORT(HPDF_STATUS) 1229 HPDF_Page_Concat (HPDF_Page page, 1230 HPDF_REAL a, 1231 HPDF_REAL b, 1232 HPDF_REAL c, 1233 HPDF_REAL d, 1234 HPDF_REAL x, 1235 HPDF_REAL y); 1236 1237 /*--- Path construction operator ------------------------------------------*/ 1238 1239 /* m */ 1240 HPDF_EXPORT(HPDF_STATUS) 1241 HPDF_Page_MoveTo (HPDF_Page page, 1242 HPDF_REAL x, 1243 HPDF_REAL y); 1244 1245 /* l */ 1246 HPDF_EXPORT(HPDF_STATUS) 1247 HPDF_Page_LineTo (HPDF_Page page, 1248 HPDF_REAL x, 1249 HPDF_REAL y); 1250 1251 /* c */ 1252 HPDF_EXPORT(HPDF_STATUS) 1253 HPDF_Page_CurveTo (HPDF_Page page, 1254 HPDF_REAL x1, 1255 HPDF_REAL y1, 1256 HPDF_REAL x2, 1257 HPDF_REAL y2, 1258 HPDF_REAL x3, 1259 HPDF_REAL y3); 1260 1261 /* v */ 1262 HPDF_EXPORT(HPDF_STATUS) 1263 HPDF_Page_CurveTo2 (HPDF_Page page, 1264 HPDF_REAL x2, 1265 HPDF_REAL y2, 1266 HPDF_REAL x3, 1267 HPDF_REAL y3); 1268 1269 /* y */ 1270 HPDF_EXPORT(HPDF_STATUS) 1271 HPDF_Page_CurveTo3 (HPDF_Page page, 1272 HPDF_REAL x1, 1273 HPDF_REAL y1, 1274 HPDF_REAL x3, 1275 HPDF_REAL y3); 1276 1277 /* h */ 1278 HPDF_EXPORT(HPDF_STATUS) 1279 HPDF_Page_ClosePath (HPDF_Page page); 1280 1281 /* re */ 1282 HPDF_EXPORT(HPDF_STATUS) 1283 HPDF_Page_Rectangle (HPDF_Page page, 1284 HPDF_REAL x, 1285 HPDF_REAL y, 1286 HPDF_REAL width, 1287 HPDF_REAL height); 1288 1289 1290 /*--- Path painting operator ---------------------------------------------*/ 1291 1292 /* S */ 1293 HPDF_EXPORT(HPDF_STATUS) 1294 HPDF_Page_Stroke (HPDF_Page page); 1295 1296 /* s */ 1297 HPDF_EXPORT(HPDF_STATUS) 1298 HPDF_Page_ClosePathStroke (HPDF_Page page); 1299 1300 /* f */ 1301 HPDF_EXPORT(HPDF_STATUS) 1302 HPDF_Page_Fill (HPDF_Page page); 1303 1304 /* f* */ 1305 HPDF_EXPORT(HPDF_STATUS) 1306 HPDF_Page_Eofill (HPDF_Page page); 1307 1308 /* B */ 1309 HPDF_EXPORT(HPDF_STATUS) 1310 HPDF_Page_FillStroke (HPDF_Page page); 1311 1312 /* B* */ 1313 HPDF_EXPORT(HPDF_STATUS) 1314 HPDF_Page_EofillStroke (HPDF_Page page); 1315 1316 /* b */ 1317 HPDF_EXPORT(HPDF_STATUS) 1318 HPDF_Page_ClosePathFillStroke (HPDF_Page page); 1319 1320 /* b* */ 1321 HPDF_EXPORT(HPDF_STATUS) 1322 HPDF_Page_ClosePathEofillStroke (HPDF_Page page); 1323 1324 /* n */ 1325 HPDF_EXPORT(HPDF_STATUS) 1326 HPDF_Page_EndPath (HPDF_Page page); 1327 1328 1329 /*--- Clipping paths operator --------------------------------------------*/ 1330 1331 /* W */ 1332 HPDF_EXPORT(HPDF_STATUS) 1333 HPDF_Page_Clip (HPDF_Page page); 1334 1335 /* W* */ 1336 HPDF_EXPORT(HPDF_STATUS) 1337 HPDF_Page_Eoclip (HPDF_Page page); 1338 1339 1340 /*--- Text object operator -----------------------------------------------*/ 1341 1342 /* BT */ 1343 HPDF_EXPORT(HPDF_STATUS) 1344 HPDF_Page_BeginText (HPDF_Page page); 1345 1346 /* ET */ 1347 HPDF_EXPORT(HPDF_STATUS) 1348 HPDF_Page_EndText (HPDF_Page page); 1349 1350 /*--- Text state ---------------------------------------------------------*/ 1351 1352 /* Tc */ 1353 HPDF_EXPORT(HPDF_STATUS) 1354 HPDF_Page_SetCharSpace (HPDF_Page page, 1355 HPDF_REAL value); 1356 1357 /* Tw */ 1358 HPDF_EXPORT(HPDF_STATUS) 1359 HPDF_Page_SetWordSpace (HPDF_Page page, 1360 HPDF_REAL value); 1361 1362 /* Tz */ 1363 HPDF_EXPORT(HPDF_STATUS) 1364 HPDF_Page_SetHorizontalScalling (HPDF_Page page, 1365 HPDF_REAL value); 1366 1367 /* TL */ 1368 HPDF_EXPORT(HPDF_STATUS) 1369 HPDF_Page_SetTextLeading (HPDF_Page page, 1370 HPDF_REAL value); 1371 1372 /* Tf */ 1373 HPDF_EXPORT(HPDF_STATUS) 1374 HPDF_Page_SetFontAndSize (HPDF_Page page, 1375 HPDF_Font font, 1376 HPDF_REAL size); 1377 1378 /* Tr */ 1379 HPDF_EXPORT(HPDF_STATUS) 1380 HPDF_Page_SetTextRenderingMode (HPDF_Page page, 1381 HPDF_TextRenderingMode mode); 1382 1383 /* Ts */ 1384 HPDF_EXPORT(HPDF_STATUS) 1385 HPDF_Page_SetTextRise (HPDF_Page page, 1386 HPDF_REAL value); 1387 1388 /* This function is obsolete. Use HPDF_Page_SetTextRise. */ 1389 HPDF_EXPORT(HPDF_STATUS) 1390 HPDF_Page_SetTextRaise (HPDF_Page page, 1391 HPDF_REAL value); 1392 1393 /*--- Text positioning ---------------------------------------------------*/ 1394 1395 /* Td */ 1396 HPDF_EXPORT(HPDF_STATUS) 1397 HPDF_Page_MoveTextPos (HPDF_Page page, 1398 HPDF_REAL x, 1399 HPDF_REAL y); 1400 1401 /* TD */ 1402 HPDF_EXPORT(HPDF_STATUS) 1403 HPDF_Page_MoveTextPos2 (HPDF_Page page, 1404 HPDF_REAL x, 1405 HPDF_REAL y); 1406 1407 /* Tm */ 1408 HPDF_EXPORT(HPDF_STATUS) 1409 HPDF_Page_SetTextMatrix (HPDF_Page page, 1410 HPDF_REAL a, 1411 HPDF_REAL b, 1412 HPDF_REAL c, 1413 HPDF_REAL d, 1414 HPDF_REAL x, 1415 HPDF_REAL y); 1416 1417 1418 /* T* */ 1419 HPDF_EXPORT(HPDF_STATUS) 1420 HPDF_Page_MoveToNextLine (HPDF_Page page); 1421 1422 /*--- Text showing -------------------------------------------------------*/ 1423 1424 /* Tj */ 1425 HPDF_EXPORT(HPDF_STATUS) 1426 HPDF_Page_ShowText (HPDF_Page page, 1427 const char *text); 1428 1429 /* TJ */ 1430 1431 /* ' */ 1432 HPDF_EXPORT(HPDF_STATUS) 1433 HPDF_Page_ShowTextNextLine (HPDF_Page page, 1434 const char *text); 1435 1436 /* " */ 1437 HPDF_EXPORT(HPDF_STATUS) 1438 HPDF_Page_ShowTextNextLineEx (HPDF_Page page, 1439 HPDF_REAL word_space, 1440 HPDF_REAL char_space, 1441 const char *text); 1442 1443 1444 /*--- Color showing ------------------------------------------------------*/ 1445 1446 /* cs --not implemented yet */ 1447 /* CS --not implemented yet */ 1448 /* sc --not implemented yet */ 1449 /* scn --not implemented yet */ 1450 /* SC --not implemented yet */ 1451 /* SCN --not implemented yet */ 1452 1453 /* g */ 1454 HPDF_EXPORT(HPDF_STATUS) 1455 HPDF_Page_SetGrayFill (HPDF_Page page, 1456 HPDF_REAL gray); 1457 1458 /* G */ 1459 HPDF_EXPORT(HPDF_STATUS) 1460 HPDF_Page_SetGrayStroke (HPDF_Page page, 1461 HPDF_REAL gray); 1462 1463 /* rg */ 1464 HPDF_EXPORT(HPDF_STATUS) 1465 HPDF_Page_SetRGBFill (HPDF_Page page, 1466 HPDF_REAL r, 1467 HPDF_REAL g, 1468 HPDF_REAL b); 1469 1470 /* RG */ 1471 HPDF_EXPORT(HPDF_STATUS) 1472 HPDF_Page_SetRGBStroke (HPDF_Page page, 1473 HPDF_REAL r, 1474 HPDF_REAL g, 1475 HPDF_REAL b); 1476 1477 /* k */ 1478 HPDF_EXPORT(HPDF_STATUS) 1479 HPDF_Page_SetCMYKFill (HPDF_Page page, 1480 HPDF_REAL c, 1481 HPDF_REAL m, 1482 HPDF_REAL y, 1483 HPDF_REAL k); 1484 1485 /* K */ 1486 HPDF_EXPORT(HPDF_STATUS) 1487 HPDF_Page_SetCMYKStroke (HPDF_Page page, 1488 HPDF_REAL c, 1489 HPDF_REAL m, 1490 HPDF_REAL y, 1491 HPDF_REAL k); 1492 1493 /*--- Shading patterns ---------------------------------------------------*/ 1494 1495 /* Notes for docs: 1496 * - ShadingType must be HPDF_SHADING_FREE_FORM_TRIANGLE_MESH (the only 1497 * defined option...) 1498 * - colorSpace must be HPDF_CS_DEVICE_RGB for now. 1499 */ 1500 HPDF_EXPORT(HPDF_Shading) 1501 HPDF_Shading_New (HPDF_Doc pdf, 1502 HPDF_ShadingType type, 1503 HPDF_ColorSpace colorSpace, 1504 HPDF_REAL xMin, HPDF_REAL xMax, 1505 HPDF_REAL yMin, HPDF_REAL yMax); 1506 1507 HPDF_EXPORT(HPDF_STATUS) 1508 HPDF_Shading_AddVertexRGB(HPDF_Shading shading, 1509 HPDF_Shading_FreeFormTriangleMeshEdgeFlag edgeFlag, 1510 HPDF_REAL x, HPDF_REAL y, 1511 HPDF_UINT8 r, HPDF_UINT8 g, HPDF_UINT8 b); 1512 1513 /*--- In-line images -----------------------------------------------------*/ 1514 1515 /* BI --not implemented yet */ 1516 /* ID --not implemented yet */ 1517 /* EI --not implemented yet */ 1518 1519 /*--- XObjects -----------------------------------------------------------*/ 1520 1521 /* Do */ 1522 HPDF_EXPORT(HPDF_STATUS) 1523 HPDF_Page_ExecuteXObject (HPDF_Page page, 1524 HPDF_XObject obj); 1525 1526 /*--- Content streams ----------------------------------------------------*/ 1527 1528 HPDF_EXPORT(HPDF_STATUS) 1529 HPDF_Page_New_Content_Stream (HPDF_Page page, 1530 HPDF_Dict* new_stream); 1531 1532 HPDF_EXPORT(HPDF_STATUS) 1533 HPDF_Page_Insert_Shared_Content_Stream (HPDF_Page page, 1534 HPDF_Dict shared_stream); 1535 1536 1537 /*--- Marked content -----------------------------------------------------*/ 1538 1539 /* BMC --not implemented yet */ 1540 /* BDC --not implemented yet */ 1541 /* EMC --not implemented yet */ 1542 /* MP --not implemented yet */ 1543 /* DP --not implemented yet */ 1544 1545 /*--- Compatibility ------------------------------------------------------*/ 1546 1547 /* BX --not implemented yet */ 1548 /* EX --not implemented yet */ 1549 1550 HPDF_EXPORT(HPDF_STATUS) 1551 HPDF_Page_DrawImage (HPDF_Page page, 1552 HPDF_Image image, 1553 HPDF_REAL x, 1554 HPDF_REAL y, 1555 HPDF_REAL width, 1556 HPDF_REAL height); 1557 1558 1559 HPDF_EXPORT(HPDF_STATUS) 1560 HPDF_Page_Circle (HPDF_Page page, 1561 HPDF_REAL x, 1562 HPDF_REAL y, 1563 HPDF_REAL ray); 1564 1565 1566 HPDF_EXPORT(HPDF_STATUS) 1567 HPDF_Page_Ellipse (HPDF_Page page, 1568 HPDF_REAL x, 1569 HPDF_REAL y, 1570 HPDF_REAL xray, 1571 HPDF_REAL yray); 1572 1573 1574 HPDF_EXPORT(HPDF_STATUS) 1575 HPDF_Page_Arc (HPDF_Page page, 1576 HPDF_REAL x, 1577 HPDF_REAL y, 1578 HPDF_REAL ray, 1579 HPDF_REAL ang1, 1580 HPDF_REAL ang2); 1581 1582 1583 HPDF_EXPORT(HPDF_STATUS) 1584 HPDF_Page_TextOut (HPDF_Page page, 1585 HPDF_REAL xpos, 1586 HPDF_REAL ypos, 1587 const char *text); 1588 1589 1590 HPDF_EXPORT(HPDF_STATUS) 1591 HPDF_Page_TextRect (HPDF_Page page, 1592 HPDF_REAL left, 1593 HPDF_REAL top, 1594 HPDF_REAL right, 1595 HPDF_REAL bottom, 1596 const char *text, 1597 HPDF_TextAlignment align, 1598 HPDF_UINT *len); 1599 1600 1601 HPDF_EXPORT(HPDF_STATUS) 1602 HPDF_Page_SetSlideShow (HPDF_Page page, 1603 HPDF_TransitionStyle type, 1604 HPDF_REAL disp_time, 1605 HPDF_REAL trans_time); 1606 1607 1608 HPDF_EXPORT(HPDF_OutputIntent) 1609 HPDF_ICC_LoadIccFromMem (HPDF_Doc pdf, 1610 HPDF_MMgr mmgr, 1611 HPDF_Stream iccdata, 1612 HPDF_Xref xref, 1613 int numcomponent); 1614 1615 HPDF_EXPORT(HPDF_OutputIntent) 1616 HPDF_LoadIccProfileFromFile (HPDF_Doc pdf, 1617 const char* icc_file_name, 1618 int numcomponent); 1619 1620 #ifdef __cplusplus 1621 } 1622 #endif /* __cplusplus */ 1623 1624 #endif /* _HPDF_H */ 1625 1626