| OLD | NEW |
| 1 /***************************************************************************/ | 1 /***************************************************************************/ |
| 2 /* */ | 2 /* */ |
| 3 /* ftmodapi.h */ | 3 /* ftmodapi.h */ |
| 4 /* */ | 4 /* */ |
| 5 /* FreeType modules public interface (specification). */ | 5 /* FreeType modules public interface (specification). */ |
| 6 /* */ | 6 /* */ |
| 7 /* Copyright 1996-2003, 2006, 2008-2010, 2012, 2013 by */ | 7 /* Copyright 1996-2003, 2006, 2008-2010, 2012, 2013 by */ |
| 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
| 9 /* */ | 9 /* */ |
| 10 /* This file is part of the FreeType project, and may only be used, */ | 10 /* This file is part of the FreeType project, and may only be used, */ |
| 11 /* modified, and distributed under the terms of the FreeType project */ | 11 /* modified, and distributed under the terms of the FreeType project */ |
| 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
| 13 /* this file you indicate that you have read the license and */ | 13 /* this file you indicate that you have read the license and */ |
| 14 /* understand and accept it fully. */ | 14 /* understand and accept it fully. */ |
| 15 /* */ | 15 /* */ |
| 16 /***************************************************************************/ | 16 /***************************************************************************/ |
| 17 | 17 |
| 18 | 18 |
| 19 #ifndef __FTMODAPI_H__ | 19 #ifndef __FTMODAPI_H__ |
| 20 #define __FTMODAPI_H__ | 20 #define __FTMODAPI_H__ |
| 21 | 21 |
| 22 | 22 |
| 23 #include "../ft2build.h" | 23 #include <ft2build.h> |
| 24 #include "freetype.h" | 24 #include FT_FREETYPE_H |
| 25 | 25 |
| 26 #ifdef FREETYPE_H | 26 #ifdef FREETYPE_H |
| 27 #error "freetype.h of FreeType 1 has been loaded!" | 27 #error "freetype.h of FreeType 1 has been loaded!" |
| 28 #error "Please fix the directory search order for header files" | 28 #error "Please fix the directory search order for header files" |
| 29 #error "so that freetype.h of FreeType 2 is found first." | 29 #error "so that freetype.h of FreeType 2 is found first." |
| 30 #endif | 30 #endif |
| 31 | 31 |
| 32 | 32 |
| 33 FT_BEGIN_HEADER | 33 FT_BEGIN_HEADER |
| 34 | 34 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 /* smooth, smooth-lcd, smooth-lcdv */ | 68 /* smooth, smooth-lcd, smooth-lcdv */ |
| 69 /* truetype */ | 69 /* truetype */ |
| 70 /* type1 */ | 70 /* type1 */ |
| 71 /* type42 */ | 71 /* type42 */ |
| 72 /* t1cid */ | 72 /* t1cid */ |
| 73 /* winfonts */ | 73 /* winfonts */ |
| 74 /* } */ | 74 /* } */ |
| 75 /* */ | 75 /* */ |
| 76 /* Note that the FreeType Cache sub-system is not a FreeType module. */ | 76 /* Note that the FreeType Cache sub-system is not a FreeType module. */ |
| 77 /* */ | 77 /* */ |
| 78 /* <Order> */ |
| 79 /* FT_Module */ |
| 80 /* FT_Module_Constructor */ |
| 81 /* FT_Module_Destructor */ |
| 82 /* FT_Module_Requester */ |
| 83 /* FT_Module_Class */ |
| 84 /* */ |
| 85 /* FT_Add_Module */ |
| 86 /* FT_Get_Module */ |
| 87 /* FT_Remove_Module */ |
| 88 /* FT_Add_Default_Modules */ |
| 89 /* */ |
| 90 /* FT_Property_Set */ |
| 91 /* FT_Property_Get */ |
| 92 /* */ |
| 93 /* FT_New_Library */ |
| 94 /* FT_Done_Library */ |
| 95 /* FT_Reference_Library */ |
| 96 /* */ |
| 97 /* FT_Renderer */ |
| 98 /* FT_Renderer_Class */ |
| 99 /* */ |
| 100 /* FT_Get_Renderer */ |
| 101 /* FT_Set_Renderer */ |
| 102 /* */ |
| 103 /* FT_Set_Debug_Hook */ |
| 104 /* */ |
| 78 /*************************************************************************/ | 105 /*************************************************************************/ |
| 79 | 106 |
| 80 | 107 |
| 81 /* module bit flags */ | 108 /* module bit flags */ |
| 82 #define FT_MODULE_FONT_DRIVER 1 /* this module is a font driver */ | 109 #define FT_MODULE_FONT_DRIVER 1 /* this module is a font driver */ |
| 83 #define FT_MODULE_RENDERER 2 /* this module is a renderer */ | 110 #define FT_MODULE_RENDERER 2 /* this module is a renderer */ |
| 84 #define FT_MODULE_HINTER 4 /* this module is a glyph hinter */ | 111 #define FT_MODULE_HINTER 4 /* this module is a glyph hinter */ |
| 85 #define FT_MODULE_STYLER 8 /* this module is a styler */ | 112 #define FT_MODULE_STYLER 8 /* this module is a styler */ |
| 86 | 113 |
| 87 #define FT_MODULE_DRIVER_SCALABLE 0x100 /* the driver supports */ | 114 #define FT_MODULE_DRIVER_SCALABLE 0x100 /* the driver supports */ |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 * module_name :: | 318 * module_name :: |
| 292 * The module name. | 319 * The module name. |
| 293 * | 320 * |
| 294 * property_name :: | 321 * property_name :: |
| 295 * The property name. Properties are described in the `Synopsis' | 322 * The property name. Properties are described in the `Synopsis' |
| 296 * subsection of the module's documentation. | 323 * subsection of the module's documentation. |
| 297 * | 324 * |
| 298 * Note that only a few modules have properties. | 325 * Note that only a few modules have properties. |
| 299 * | 326 * |
| 300 * value :: | 327 * value :: |
| 301 * A generic pointer to a variable or structure which gives the new | 328 * A generic pointer to a variable or structure that gives the new |
| 302 * value of the property. The exact definition of `value' is | 329 * value of the property. The exact definition of `value' is |
| 303 * dependent on the property; see the `Synopsis' subsection of the | 330 * dependent on the property; see the `Synopsis' subsection of the |
| 304 * module's documentation. | 331 * module's documentation. |
| 305 * | 332 * |
| 306 * @return: | 333 * @return: |
| 307 * FreeType error code. 0~means success. | 334 * FreeType error code. 0~means success. |
| 308 * | 335 * |
| 309 * @note: | 336 * @note: |
| 310 * If `module_name' isn't a valid module name, or `property_name' | 337 * If `module_name' isn't a valid module name, or `property_name' |
| 311 * doesn't specify a valid property, or if `value' doesn't represent a | 338 * doesn't specify a valid property, or if `value' doesn't represent a |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 * | 384 * |
| 358 * module_name :: | 385 * module_name :: |
| 359 * The module name. | 386 * The module name. |
| 360 * | 387 * |
| 361 * property_name :: | 388 * property_name :: |
| 362 * The property name. Properties are described in the `Synopsis' | 389 * The property name. Properties are described in the `Synopsis' |
| 363 * subsection of the module's documentation. | 390 * subsection of the module's documentation. |
| 364 * | 391 * |
| 365 * @inout: | 392 * @inout: |
| 366 * value :: | 393 * value :: |
| 367 * A generic pointer to a variable or structure which gives the | 394 * A generic pointer to a variable or structure that gives the |
| 368 * value of the property. The exact definition of `value' is | 395 * value of the property. The exact definition of `value' is |
| 369 * dependent on the property; see the `Synopsis' subsection of the | 396 * dependent on the property; see the `Synopsis' subsection of the |
| 370 * module's documentation. | 397 * module's documentation. |
| 371 * | 398 * |
| 372 * @return: | 399 * @return: |
| 373 * FreeType error code. 0~means success. | 400 * FreeType error code. 0~means success. |
| 374 * | 401 * |
| 375 * @note: | 402 * @note: |
| 376 * If `module_name' isn't a valid module name, or `property_name' | 403 * If `module_name' isn't a valid module name, or `property_name' |
| 377 * doesn't specify a valid property, or if `value' doesn't represent a | 404 * doesn't specify a valid property, or if `value' doesn't represent a |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 411 /* */ | 438 /* */ |
| 412 /* <Function> */ | 439 /* <Function> */ |
| 413 /* FT_Reference_Library */ | 440 /* FT_Reference_Library */ |
| 414 /* */ | 441 /* */ |
| 415 /* <Description> */ | 442 /* <Description> */ |
| 416 /* A counter gets initialized to~1 at the time an @FT_Library */ | 443 /* A counter gets initialized to~1 at the time an @FT_Library */ |
| 417 /* structure is created. This function increments the counter. */ | 444 /* structure is created. This function increments the counter. */ |
| 418 /* @FT_Done_Library then only destroys a library if the counter is~1, */ | 445 /* @FT_Done_Library then only destroys a library if the counter is~1, */ |
| 419 /* otherwise it simply decrements the counter. */ | 446 /* otherwise it simply decrements the counter. */ |
| 420 /* */ | 447 /* */ |
| 421 /* This function helps in managing life-cycles of structures which */ | 448 /* This function helps in managing life-cycles of structures that */ |
| 422 /* reference @FT_Library objects. */ | 449 /* reference @FT_Library objects. */ |
| 423 /* */ | 450 /* */ |
| 424 /* <Input> */ | 451 /* <Input> */ |
| 425 /* library :: A handle to a target library object. */ | 452 /* library :: A handle to a target library object. */ |
| 426 /* */ | 453 /* */ |
| 427 /* <Return> */ | 454 /* <Return> */ |
| 428 /* FreeType error code. 0~means success. */ | 455 /* FreeType error code. 0~means success. */ |
| 429 /* */ | 456 /* */ |
| 430 /* <Since> */ | 457 /* <Since> */ |
| 431 /* 2.4.2 */ | 458 /* 2.4.2 */ |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 484 /* <Return> */ | 511 /* <Return> */ |
| 485 /* FreeType error code. 0~means success. */ | 512 /* FreeType error code. 0~means success. */ |
| 486 /* */ | 513 /* */ |
| 487 /* <Note> */ | 514 /* <Note> */ |
| 488 /* See the discussion of reference counters in the description of */ | 515 /* See the discussion of reference counters in the description of */ |
| 489 /* @FT_Reference_Library. */ | 516 /* @FT_Reference_Library. */ |
| 490 /* */ | 517 /* */ |
| 491 FT_EXPORT( FT_Error ) | 518 FT_EXPORT( FT_Error ) |
| 492 FT_Done_Library( FT_Library library ); | 519 FT_Done_Library( FT_Library library ); |
| 493 | 520 |
| 494 /* */ | 521 /* */ |
| 495 | 522 |
| 496 typedef void | 523 typedef void |
| 497 (*FT_DebugHook_Func)( void* arg ); | 524 (*FT_DebugHook_Func)( void* arg ); |
| 498 | 525 |
| 499 | 526 |
| 500 /*************************************************************************/ | 527 /*************************************************************************/ |
| 501 /* */ | 528 /* */ |
| 502 /* <Function> */ | 529 /* <Function> */ |
| 503 /* FT_Set_Debug_Hook */ | 530 /* FT_Set_Debug_Hook */ |
| 504 /* */ | 531 /* */ |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 577 * by the @FT_Get_TrueType_Engine_Type function. | 604 * by the @FT_Get_TrueType_Engine_Type function. |
| 578 * | 605 * |
| 579 * @values: | 606 * @values: |
| 580 * FT_TRUETYPE_ENGINE_TYPE_NONE :: | 607 * FT_TRUETYPE_ENGINE_TYPE_NONE :: |
| 581 * The library doesn't implement any kind of bytecode interpreter. | 608 * The library doesn't implement any kind of bytecode interpreter. |
| 582 * | 609 * |
| 583 * FT_TRUETYPE_ENGINE_TYPE_UNPATENTED :: | 610 * FT_TRUETYPE_ENGINE_TYPE_UNPATENTED :: |
| 584 * The library implements a bytecode interpreter that doesn't | 611 * The library implements a bytecode interpreter that doesn't |
| 585 * support the patented operations of the TrueType virtual machine. | 612 * support the patented operations of the TrueType virtual machine. |
| 586 * | 613 * |
| 587 * Its main use is to load certain Asian fonts which position and | 614 * Its main use is to load certain Asian fonts that position and |
| 588 * scale glyph components with bytecode instructions. It produces | 615 * scale glyph components with bytecode instructions. It produces |
| 589 * bad output for most other fonts. | 616 * bad output for most other fonts. |
| 590 * | 617 * |
| 591 * FT_TRUETYPE_ENGINE_TYPE_PATENTED :: | 618 * FT_TRUETYPE_ENGINE_TYPE_PATENTED :: |
| 592 * The library implements a bytecode interpreter that covers | 619 * The library implements a bytecode interpreter that covers |
| 593 * the full instruction set of the TrueType virtual machine (this | 620 * the full instruction set of the TrueType virtual machine (this |
| 594 * was governed by patents until May 2010, hence the name). | 621 * was governed by patents until May 2010, hence the name). |
| 595 * | 622 * |
| 596 * @since: | 623 * @since: |
| 597 * 2.2 | 624 * 2.2 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 622 * @return: | 649 * @return: |
| 623 * A value indicating which level is supported. | 650 * A value indicating which level is supported. |
| 624 * | 651 * |
| 625 * @since: | 652 * @since: |
| 626 * 2.2 | 653 * 2.2 |
| 627 * | 654 * |
| 628 */ | 655 */ |
| 629 FT_EXPORT( FT_TrueTypeEngineType ) | 656 FT_EXPORT( FT_TrueTypeEngineType ) |
| 630 FT_Get_TrueType_Engine_Type( FT_Library library ); | 657 FT_Get_TrueType_Engine_Type( FT_Library library ); |
| 631 | 658 |
| 632 | |
| 633 /* */ | 659 /* */ |
| 634 | 660 |
| 635 | 661 |
| 636 FT_END_HEADER | 662 FT_END_HEADER |
| 637 | 663 |
| 638 #endif /* __FTMODAPI_H__ */ | 664 #endif /* __FTMODAPI_H__ */ |
| 639 | 665 |
| 640 | 666 |
| 641 /* END */ | 667 /* END */ |
| OLD | NEW |