1 2<!doctype html> 3<html lang="en" class="no-js"> 4 <head> 5 6 <meta charset="utf-8"> 7 <meta name="viewport" content="width=device-width,initial-scale=1"> 8 9 <meta name="description" content="API Reference Documentation for FreeType-2.12.1"> 10 11 12 13 <meta name="author" content="FreeType Contributors"> 14 15 16 <link rel="icon" href="images/favico.ico"> 17 <meta name="generator" content="mkdocs-1.2.1, mkdocs-material-7.1.9"> 18 19 20 21 <title>Size Management - FreeType-2.12.1 API Reference</title> 22 23 24 25 <link rel="stylesheet" href="assets/stylesheets/main.ca7ac06f.min.css"> 26 27 28 <link rel="stylesheet" href="assets/stylesheets/palette.f1a3b89f.min.css"> 29 30 31 32 <meta name="theme-color" content="#4cae4f"> 33 34 35 36 37 38 39 40 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 41 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+Serif:300,400,400i,700%7CRoboto+Mono&display=fallback"> 42 <style>:root{--md-text-font-family:"Noto Serif";--md-code-font-family:"Roboto Mono"}</style> 43 44 45 46 47 <link rel="stylesheet" href="stylesheets/extra.css"> 48 49 50 51 52 53 54 55 </head> 56 57 58 59 60 61 62 63 <body dir="ltr" data-md-color-scheme="" data-md-color-primary="green" data-md-color-accent="green"> 64 65 66 <script>function __prefix(e){return new URL(".",location).pathname+"."+e}function __get(e,t=localStorage){return JSON.parse(t.getItem(__prefix(e)))}</script> 67 68 <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off"> 69 <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off"> 70 <label class="md-overlay" for="__drawer"></label> 71 <div data-md-component="skip"> 72 73 74 <a href="#size-management" class="md-skip"> 75 Skip to content 76 </a> 77 78 </div> 79 <div data-md-component="announce"> 80 81 </div> 82 83 <header class="md-header" data-md-component="header"> 84 <nav class="md-header__inner md-grid" aria-label="Header"> 85 <a href="index.html" title="FreeType-2.12.1 API Reference" class="md-header__button md-logo" aria-label="FreeType-2.12.1 API Reference" data-md-component="logo"> 86 87 <img src="images/favico.ico" alt="logo"> 88 89 </a> 90 <label class="md-header__button md-icon" for="__drawer"> 91 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg> 92 </label> 93 <div class="md-header__title" data-md-component="header-title"> 94 <div class="md-header__ellipsis"> 95 <div class="md-header__topic"> 96 <span class="md-ellipsis"> 97 FreeType-2.12.1 API Reference 98 </span> 99 </div> 100 <div class="md-header__topic" data-md-component="header-topic"> 101 <span class="md-ellipsis"> 102 103 Size Management 104 105 </span> 106 </div> 107 </div> 108 </div> 109 110 111 112 <label class="md-header__button md-icon" for="__search"> 113 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> 114 </label> 115 116<div class="md-search" data-md-component="search" role="dialog"> 117 <label class="md-search__overlay" for="__search"></label> 118 <div class="md-search__inner" role="search"> 119 <form class="md-search__form" name="search"> 120 <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active" required> 121 <label class="md-search__icon md-icon" for="__search"> 122 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> 123 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> 124 </label> 125 <button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1"> 126 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg> 127 </button> 128 </form> 129 <div class="md-search__output"> 130 <div class="md-search__scrollwrap" data-md-scrollfix> 131 <div class="md-search-result" data-md-component="search-result"> 132 <div class="md-search-result__meta"> 133 Initializing search 134 </div> 135 <ol class="md-search-result__list"></ol> 136 </div> 137 </div> 138 </div> 139 </div> 140</div> 141 142 143 </nav> 144</header> 145 146 <div class="md-container" data-md-component="container"> 147 148 149 150 151 <main class="md-main" data-md-component="main"> 152 <div class="md-main__inner md-grid"> 153 154 155 156 <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" > 157 <div class="md-sidebar__scrollwrap"> 158 <div class="md-sidebar__inner"> 159 160 161 162<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0"> 163 <label class="md-nav__title" for="__drawer"> 164 <a href="index.html" title="FreeType-2.12.1 API Reference" class="md-nav__button md-logo" aria-label="FreeType-2.12.1 API Reference" data-md-component="logo"> 165 166 <img src="images/favico.ico" alt="logo"> 167 168 </a> 169 FreeType-2.12.1 API Reference 170 </label> 171 172 <ul class="md-nav__list" data-md-scrollfix> 173 174 175 176 177 178 179 180 181 <li class="md-nav__item"> 182 <a href="index.html" class="md-nav__link"> 183 TOC 184 </a> 185 </li> 186 187 188 189 190 191 192 193 194 195 196 <li class="md-nav__item"> 197 <a href="ft2-index.html" class="md-nav__link"> 198 Index 199 </a> 200 </li> 201 202 203 204 205 206 207 208 209 210 211 212 <li class="md-nav__item md-nav__item--nested"> 213 214 215 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3" type="checkbox" id="__nav_3" > 216 217 <label class="md-nav__link" for="__nav_3"> 218 General Remarks 219 <span class="md-nav__icon md-icon"></span> 220 </label> 221 <nav class="md-nav" aria-label="General Remarks" data-md-level="1"> 222 <label class="md-nav__title" for="__nav_3"> 223 <span class="md-nav__icon md-icon"></span> 224 General Remarks 225 </label> 226 <ul class="md-nav__list" data-md-scrollfix> 227 228 229 230 231 232 <li class="md-nav__item"> 233 <a href="ft2-preamble.html" class="md-nav__link"> 234 Preamble 235 </a> 236 </li> 237 238 239 240 241 242 243 244 <li class="md-nav__item"> 245 <a href="ft2-header_inclusion.html" class="md-nav__link"> 246 FreeType's header inclusion scheme 247 </a> 248 </li> 249 250 251 252 253 254 255 256 <li class="md-nav__item"> 257 <a href="ft2-user_allocation.html" class="md-nav__link"> 258 User allocation 259 </a> 260 </li> 261 262 263 264 </ul> 265 </nav> 266 </li> 267 268 269 270 271 272 273 274 275 276 277 278 279 280 <li class="md-nav__item md-nav__item--active md-nav__item--nested"> 281 282 283 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_4" type="checkbox" id="__nav_4" checked> 284 285 <label class="md-nav__link" for="__nav_4"> 286 Core API 287 <span class="md-nav__icon md-icon"></span> 288 </label> 289 <nav class="md-nav" aria-label="Core API" data-md-level="1"> 290 <label class="md-nav__title" for="__nav_4"> 291 <span class="md-nav__icon md-icon"></span> 292 Core API 293 </label> 294 <ul class="md-nav__list" data-md-scrollfix> 295 296 297 298 299 300 <li class="md-nav__item"> 301 <a href="ft2-version.html" class="md-nav__link"> 302 FreeType Version 303 </a> 304 </li> 305 306 307 308 309 310 311 312 <li class="md-nav__item"> 313 <a href="ft2-basic_types.html" class="md-nav__link"> 314 Basic Data Types 315 </a> 316 </li> 317 318 319 320 321 322 323 324 <li class="md-nav__item"> 325 <a href="ft2-base_interface.html" class="md-nav__link"> 326 Base Interface 327 </a> 328 </li> 329 330 331 332 333 334 335 336 <li class="md-nav__item"> 337 <a href="ft2-glyph_variants.html" class="md-nav__link"> 338 Unicode Variation Sequences 339 </a> 340 </li> 341 342 343 344 345 346 347 348 <li class="md-nav__item"> 349 <a href="ft2-color_management.html" class="md-nav__link"> 350 Glyph Color Management 351 </a> 352 </li> 353 354 355 356 357 358 359 360 <li class="md-nav__item"> 361 <a href="ft2-layer_management.html" class="md-nav__link"> 362 Glyph Layer Management 363 </a> 364 </li> 365 366 367 368 369 370 371 372 <li class="md-nav__item"> 373 <a href="ft2-glyph_management.html" class="md-nav__link"> 374 Glyph Management 375 </a> 376 </li> 377 378 379 380 381 382 383 384 <li class="md-nav__item"> 385 <a href="ft2-mac_specific.html" class="md-nav__link"> 386 Mac Specific Interface 387 </a> 388 </li> 389 390 391 392 393 394 395 396 397 398 <li class="md-nav__item md-nav__item--active"> 399 400 <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc"> 401 402 403 404 405 406 <label class="md-nav__link md-nav__link--active" for="__toc"> 407 Size Management 408 <span class="md-nav__icon md-icon"></span> 409 </label> 410 411 <a href="ft2-sizes_management.html" class="md-nav__link md-nav__link--active"> 412 Size Management 413 </a> 414 415 416<nav class="md-nav md-nav--secondary" aria-label="Table of contents"> 417 418 419 420 421 422 423 <label class="md-nav__title" for="__toc"> 424 <span class="md-nav__icon md-icon"></span> 425 Table of contents 426 </label> 427 <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix> 428 429 <li class="md-nav__item"> 430 <a href="#synopsis" class="md-nav__link"> 431 Synopsis 432 </a> 433 434</li> 435 436 <li class="md-nav__item"> 437 <a href="#ft_new_size" class="md-nav__link"> 438 FT_New_Size 439 </a> 440 441</li> 442 443 <li class="md-nav__item"> 444 <a href="#ft_done_size" class="md-nav__link"> 445 FT_Done_Size 446 </a> 447 448</li> 449 450 <li class="md-nav__item"> 451 <a href="#ft_activate_size" class="md-nav__link"> 452 FT_Activate_Size 453 </a> 454 455</li> 456 457 </ul> 458 459</nav> 460 461 </li> 462 463 464 465 466 467 468 469 <li class="md-nav__item"> 470 <a href="ft2-header_file_macros.html" class="md-nav__link"> 471 Header File Macros 472 </a> 473 </li> 474 475 476 477 </ul> 478 </nav> 479 </li> 480 481 482 483 484 485 486 487 488 489 490 491 <li class="md-nav__item md-nav__item--nested"> 492 493 494 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" > 495 496 <label class="md-nav__link" for="__nav_5"> 497 Format-Specific API 498 <span class="md-nav__icon md-icon"></span> 499 </label> 500 <nav class="md-nav" aria-label="Format-Specific API" data-md-level="1"> 501 <label class="md-nav__title" for="__nav_5"> 502 <span class="md-nav__icon md-icon"></span> 503 Format-Specific API 504 </label> 505 <ul class="md-nav__list" data-md-scrollfix> 506 507 508 509 510 511 <li class="md-nav__item"> 512 <a href="ft2-multiple_masters.html" class="md-nav__link"> 513 Multiple Masters 514 </a> 515 </li> 516 517 518 519 520 521 522 523 <li class="md-nav__item"> 524 <a href="ft2-truetype_tables.html" class="md-nav__link"> 525 TrueType Tables 526 </a> 527 </li> 528 529 530 531 532 533 534 535 <li class="md-nav__item"> 536 <a href="ft2-type1_tables.html" class="md-nav__link"> 537 Type 1 Tables 538 </a> 539 </li> 540 541 542 543 544 545 546 547 <li class="md-nav__item"> 548 <a href="ft2-sfnt_names.html" class="md-nav__link"> 549 SFNT Names 550 </a> 551 </li> 552 553 554 555 556 557 558 559 <li class="md-nav__item"> 560 <a href="ft2-bdf_fonts.html" class="md-nav__link"> 561 BDF and PCF Files 562 </a> 563 </li> 564 565 566 567 568 569 570 571 <li class="md-nav__item"> 572 <a href="ft2-cid_fonts.html" class="md-nav__link"> 573 CID Fonts 574 </a> 575 </li> 576 577 578 579 580 581 582 583 <li class="md-nav__item"> 584 <a href="ft2-pfr_fonts.html" class="md-nav__link"> 585 PFR Fonts 586 </a> 587 </li> 588 589 590 591 592 593 594 595 <li class="md-nav__item"> 596 <a href="ft2-winfnt_fonts.html" class="md-nav__link"> 597 Window FNT Files 598 </a> 599 </li> 600 601 602 603 604 605 606 607 <li class="md-nav__item"> 608 <a href="ft2-svg_fonts.html" class="md-nav__link"> 609 OpenType SVG Fonts 610 </a> 611 </li> 612 613 614 615 616 617 618 619 <li class="md-nav__item"> 620 <a href="ft2-font_formats.html" class="md-nav__link"> 621 Font Formats 622 </a> 623 </li> 624 625 626 627 628 629 630 631 <li class="md-nav__item"> 632 <a href="ft2-gasp_table.html" class="md-nav__link"> 633 Gasp Table 634 </a> 635 </li> 636 637 638 639 </ul> 640 </nav> 641 </li> 642 643 644 645 646 647 648 649 650 651 652 653 <li class="md-nav__item md-nav__item--nested"> 654 655 656 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" > 657 658 <label class="md-nav__link" for="__nav_6"> 659 Controlling FreeType Modules 660 <span class="md-nav__icon md-icon"></span> 661 </label> 662 <nav class="md-nav" aria-label="Controlling FreeType Modules" data-md-level="1"> 663 <label class="md-nav__title" for="__nav_6"> 664 <span class="md-nav__icon md-icon"></span> 665 Controlling FreeType Modules 666 </label> 667 <ul class="md-nav__list" data-md-scrollfix> 668 669 670 671 672 673 <li class="md-nav__item"> 674 <a href="ft2-auto_hinter.html" class="md-nav__link"> 675 The auto-hinter 676 </a> 677 </li> 678 679 680 681 682 683 684 685 <li class="md-nav__item"> 686 <a href="ft2-cff_driver.html" class="md-nav__link"> 687 The CFF driver 688 </a> 689 </li> 690 691 692 693 694 695 696 697 <li class="md-nav__item"> 698 <a href="ft2-t1_cid_driver.html" class="md-nav__link"> 699 The Type 1 and CID drivers 700 </a> 701 </li> 702 703 704 705 706 707 708 709 <li class="md-nav__item"> 710 <a href="ft2-tt_driver.html" class="md-nav__link"> 711 The TrueType driver 712 </a> 713 </li> 714 715 716 717 718 719 720 721 <li class="md-nav__item"> 722 <a href="ft2-pcf_driver.html" class="md-nav__link"> 723 The PCF driver 724 </a> 725 </li> 726 727 728 729 730 731 732 733 <li class="md-nav__item"> 734 <a href="ft2-ot_svg_driver.html" class="md-nav__link"> 735 The SVG driver 736 </a> 737 </li> 738 739 740 741 742 743 744 745 <li class="md-nav__item"> 746 <a href="ft2-properties.html" class="md-nav__link"> 747 Driver properties 748 </a> 749 </li> 750 751 752 753 754 755 756 757 <li class="md-nav__item"> 758 <a href="ft2-parameter_tags.html" class="md-nav__link"> 759 Parameter Tags 760 </a> 761 </li> 762 763 764 765 766 767 768 769 <li class="md-nav__item"> 770 <a href="ft2-lcd_rendering.html" class="md-nav__link"> 771 Subpixel Rendering 772 </a> 773 </li> 774 775 776 777 </ul> 778 </nav> 779 </li> 780 781 782 783 784 785 786 787 788 789 790 791 <li class="md-nav__item md-nav__item--nested"> 792 793 794 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7" type="checkbox" id="__nav_7" > 795 796 <label class="md-nav__link" for="__nav_7"> 797 Cache Sub-System 798 <span class="md-nav__icon md-icon"></span> 799 </label> 800 <nav class="md-nav" aria-label="Cache Sub-System" data-md-level="1"> 801 <label class="md-nav__title" for="__nav_7"> 802 <span class="md-nav__icon md-icon"></span> 803 Cache Sub-System 804 </label> 805 <ul class="md-nav__list" data-md-scrollfix> 806 807 808 809 810 811 <li class="md-nav__item"> 812 <a href="ft2-cache_subsystem.html" class="md-nav__link"> 813 Cache Sub-System 814 </a> 815 </li> 816 817 818 819 </ul> 820 </nav> 821 </li> 822 823 824 825 826 827 828 829 830 831 832 833 <li class="md-nav__item md-nav__item--nested"> 834 835 836 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_8" type="checkbox" id="__nav_8" > 837 838 <label class="md-nav__link" for="__nav_8"> 839 Support API 840 <span class="md-nav__icon md-icon"></span> 841 </label> 842 <nav class="md-nav" aria-label="Support API" data-md-level="1"> 843 <label class="md-nav__title" for="__nav_8"> 844 <span class="md-nav__icon md-icon"></span> 845 Support API 846 </label> 847 <ul class="md-nav__list" data-md-scrollfix> 848 849 850 851 852 853 <li class="md-nav__item"> 854 <a href="ft2-computations.html" class="md-nav__link"> 855 Computations 856 </a> 857 </li> 858 859 860 861 862 863 864 865 <li class="md-nav__item"> 866 <a href="ft2-list_processing.html" class="md-nav__link"> 867 List Processing 868 </a> 869 </li> 870 871 872 873 874 875 876 877 <li class="md-nav__item"> 878 <a href="ft2-outline_processing.html" class="md-nav__link"> 879 Outline Processing 880 </a> 881 </li> 882 883 884 885 886 887 888 889 <li class="md-nav__item"> 890 <a href="ft2-quick_advance.html" class="md-nav__link"> 891 Quick retrieval of advance values 892 </a> 893 </li> 894 895 896 897 898 899 900 901 <li class="md-nav__item"> 902 <a href="ft2-bitmap_handling.html" class="md-nav__link"> 903 Bitmap Handling 904 </a> 905 </li> 906 907 908 909 910 911 912 913 <li class="md-nav__item"> 914 <a href="ft2-raster.html" class="md-nav__link"> 915 Scanline Converter 916 </a> 917 </li> 918 919 920 921 922 923 924 925 <li class="md-nav__item"> 926 <a href="ft2-glyph_stroker.html" class="md-nav__link"> 927 Glyph Stroker 928 </a> 929 </li> 930 931 932 933 934 935 936 937 <li class="md-nav__item"> 938 <a href="ft2-system_interface.html" class="md-nav__link"> 939 System Interface 940 </a> 941 </li> 942 943 944 945 946 947 948 949 <li class="md-nav__item"> 950 <a href="ft2-module_management.html" class="md-nav__link"> 951 Module Management 952 </a> 953 </li> 954 955 956 957 958 959 960 961 <li class="md-nav__item"> 962 <a href="ft2-gzip.html" class="md-nav__link"> 963 GZIP Streams 964 </a> 965 </li> 966 967 968 969 970 971 972 973 <li class="md-nav__item"> 974 <a href="ft2-lzw.html" class="md-nav__link"> 975 LZW Streams 976 </a> 977 </li> 978 979 980 981 982 983 984 985 <li class="md-nav__item"> 986 <a href="ft2-bzip2.html" class="md-nav__link"> 987 BZIP2 Streams 988 </a> 989 </li> 990 991 992 993 994 995 996 997 <li class="md-nav__item"> 998 <a href="ft2-debugging_apis.html" class="md-nav__link"> 999 External Debugging APIs 1000 </a> 1001 </li> 1002 1003 1004 1005 </ul> 1006 </nav> 1007 </li> 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 <li class="md-nav__item md-nav__item--nested"> 1020 1021 1022 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_9" type="checkbox" id="__nav_9" > 1023 1024 <label class="md-nav__link" for="__nav_9"> 1025 Error Codes 1026 <span class="md-nav__icon md-icon"></span> 1027 </label> 1028 <nav class="md-nav" aria-label="Error Codes" data-md-level="1"> 1029 <label class="md-nav__title" for="__nav_9"> 1030 <span class="md-nav__icon md-icon"></span> 1031 Error Codes 1032 </label> 1033 <ul class="md-nav__list" data-md-scrollfix> 1034 1035 1036 1037 1038 1039 <li class="md-nav__item"> 1040 <a href="ft2-error_enumerations.html" class="md-nav__link"> 1041 Error Enumerations 1042 </a> 1043 </li> 1044 1045 1046 1047 1048 1049 1050 1051 <li class="md-nav__item"> 1052 <a href="ft2-error_code_values.html" class="md-nav__link"> 1053 Error Code Values 1054 </a> 1055 </li> 1056 1057 1058 1059 </ul> 1060 </nav> 1061 </li> 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 <li class="md-nav__item md-nav__item--nested"> 1074 1075 1076 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_10" type="checkbox" id="__nav_10" > 1077 1078 <label class="md-nav__link" for="__nav_10"> 1079 Miscellaneous 1080 <span class="md-nav__icon md-icon"></span> 1081 </label> 1082 <nav class="md-nav" aria-label="Miscellaneous" data-md-level="1"> 1083 <label class="md-nav__title" for="__nav_10"> 1084 <span class="md-nav__icon md-icon"></span> 1085 Miscellaneous 1086 </label> 1087 <ul class="md-nav__list" data-md-scrollfix> 1088 1089 1090 1091 1092 1093 <li class="md-nav__item"> 1094 <a href="ft2-gx_validation.html" class="md-nav__link"> 1095 TrueTypeGX/AAT Validation 1096 </a> 1097 </li> 1098 1099 1100 1101 1102 1103 1104 1105 <li class="md-nav__item"> 1106 <a href="ft2-incremental.html" class="md-nav__link"> 1107 Incremental Loading 1108 </a> 1109 </li> 1110 1111 1112 1113 1114 1115 1116 1117 <li class="md-nav__item"> 1118 <a href="ft2-truetype_engine.html" class="md-nav__link"> 1119 The TrueType Engine 1120 </a> 1121 </li> 1122 1123 1124 1125 1126 1127 1128 1129 <li class="md-nav__item"> 1130 <a href="ft2-ot_validation.html" class="md-nav__link"> 1131 OpenType Validation 1132 </a> 1133 </li> 1134 1135 1136 1137 </ul> 1138 </nav> 1139 </li> 1140 1141 1142 1143 </ul> 1144</nav> 1145 </div> 1146 </div> 1147 </div> 1148 1149 1150 1151 <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" > 1152 <div class="md-sidebar__scrollwrap"> 1153 <div class="md-sidebar__inner"> 1154 1155<nav class="md-nav md-nav--secondary" aria-label="Table of contents"> 1156 1157 1158 1159 1160 1161 1162 <label class="md-nav__title" for="__toc"> 1163 <span class="md-nav__icon md-icon"></span> 1164 Table of contents 1165 </label> 1166 <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix> 1167 1168 <li class="md-nav__item"> 1169 <a href="#synopsis" class="md-nav__link"> 1170 Synopsis 1171 </a> 1172 1173</li> 1174 1175 <li class="md-nav__item"> 1176 <a href="#ft_new_size" class="md-nav__link"> 1177 FT_New_Size 1178 </a> 1179 1180</li> 1181 1182 <li class="md-nav__item"> 1183 <a href="#ft_done_size" class="md-nav__link"> 1184 FT_Done_Size 1185 </a> 1186 1187</li> 1188 1189 <li class="md-nav__item"> 1190 <a href="#ft_activate_size" class="md-nav__link"> 1191 FT_Activate_Size 1192 </a> 1193 1194</li> 1195 1196 </ul> 1197 1198</nav> 1199 </div> 1200 </div> 1201 </div> 1202 1203 1204 <div class="md-content" data-md-component="content"> 1205 <article class="md-content__inner md-typeset"> 1206 1207 1208 1209 <p><a href="https://www.freetype.org">FreeType</a> » <a href="../">Docs</a> » <a href="index.html#core-api">Core API</a> » Size Management</p> 1210<hr /> 1211<h1 id="size-management">Size Management<a class="headerlink" href="#size-management" title="Permanent link">¶</a></h1> 1212<h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">¶</a></h2> 1213<p>When creating a new face object (e.g., with <code><a href="ft2-base_interface.html#ft_new_face">FT_New_Face</a></code>), an <code><a href="ft2-base_interface.html#ft_size">FT_Size</a></code> object is automatically created and used to store all pixel-size dependent information, available in the <code>face->size</code> field.</p> 1214<p>It is however possible to create more sizes for a given face, mostly in order to manage several character pixel sizes of the same font family and style. See <code><a href="ft2-sizes_management.html#ft_new_size">FT_New_Size</a></code> and <code><a href="ft2-sizes_management.html#ft_done_size">FT_Done_Size</a></code>.</p> 1215<p>Note that <code><a href="ft2-base_interface.html#ft_set_pixel_sizes">FT_Set_Pixel_Sizes</a></code> and <code><a href="ft2-base_interface.html#ft_set_char_size">FT_Set_Char_Size</a></code> only modify the contents of the current ‘active’ size; you thus need to use <code><a href="ft2-sizes_management.html#ft_activate_size">FT_Activate_Size</a></code> to change it.</p> 1216<p>99% of applications won't need the functions provided here, especially if they use the caching sub-system, so be cautious when using these.</p> 1217<h2 id="ft_new_size">FT_New_Size<a class="headerlink" href="#ft_new_size" title="Permanent link">¶</a></h2> 1218<p>Defined in FT_SIZES_H (freetype/ftsizes.h).</p> 1219<div class = "codehilite"><pre><code> FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> ) 1220 <b>FT_New_Size</b>( <a href="ft2-base_interface.html#ft_face">FT_Face</a> face, 1221 <a href="ft2-base_interface.html#ft_size">FT_Size</a>* size ); 1222</code></pre></div> 1223 1224<p>Create a new size object from a given face object.</p> 1225<h4>input</h4> 1226<table class="fields"> 1227<tr><td class="val" id="face">face</td><td class="desc"> 1228<p>A handle to a parent face object.</p> 1229</td></tr> 1230</table> 1231 1232<h4>output</h4> 1233<table class="fields"> 1234<tr><td class="val" id="asize">asize</td><td class="desc"> 1235<p>A handle to a new size object.</p> 1236</td></tr> 1237</table> 1238 1239<h4>return</h4> 1240 1241<p>FreeType error code. 0 means success.</p> 1242<h4>note</h4> 1243 1244<p>You need to call <code><a href="ft2-sizes_management.html#ft_activate_size">FT_Activate_Size</a></code> in order to select the new size for upcoming calls to <code><a href="ft2-base_interface.html#ft_set_pixel_sizes">FT_Set_Pixel_Sizes</a></code>, <code><a href="ft2-base_interface.html#ft_set_char_size">FT_Set_Char_Size</a></code>, <code><a href="ft2-base_interface.html#ft_load_glyph">FT_Load_Glyph</a></code>, <code><a href="ft2-base_interface.html#ft_load_char">FT_Load_Char</a></code>, etc.</p> 1245<hr> 1246 1247<h2 id="ft_done_size">FT_Done_Size<a class="headerlink" href="#ft_done_size" title="Permanent link">¶</a></h2> 1248<p>Defined in FT_SIZES_H (freetype/ftsizes.h).</p> 1249<div class = "codehilite"><pre><code> FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> ) 1250 <b>FT_Done_Size</b>( <a href="ft2-base_interface.html#ft_size">FT_Size</a> size ); 1251</code></pre></div> 1252 1253<p>Discard a given size object. Note that <code><a href="ft2-base_interface.html#ft_done_face">FT_Done_Face</a></code> automatically discards all size objects allocated with <code><a href="ft2-sizes_management.html#ft_new_size">FT_New_Size</a></code>.</p> 1254<h4>input</h4> 1255<table class="fields"> 1256<tr><td class="val" id="size">size</td><td class="desc"> 1257<p>A handle to a target size object.</p> 1258</td></tr> 1259</table> 1260 1261<h4>return</h4> 1262 1263<p>FreeType error code. 0 means success.</p> 1264<hr> 1265 1266<h2 id="ft_activate_size">FT_Activate_Size<a class="headerlink" href="#ft_activate_size" title="Permanent link">¶</a></h2> 1267<p>Defined in FT_SIZES_H (freetype/ftsizes.h).</p> 1268<div class = "codehilite"><pre><code> FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> ) 1269 <b>FT_Activate_Size</b>( <a href="ft2-base_interface.html#ft_size">FT_Size</a> size ); 1270</code></pre></div> 1271 1272<p>Even though it is possible to create several size objects for a given face (see <code><a href="ft2-sizes_management.html#ft_new_size">FT_New_Size</a></code> for details), functions like <code><a href="ft2-base_interface.html#ft_load_glyph">FT_Load_Glyph</a></code> or <code><a href="ft2-base_interface.html#ft_load_char">FT_Load_Char</a></code> only use the one that has been activated last to determine the ‘current character pixel size’.</p> 1273<p>This function can be used to ‘activate’ a previously created size object.</p> 1274<h4>input</h4> 1275<table class="fields"> 1276<tr><td class="val" id="size">size</td><td class="desc"> 1277<p>A handle to a target size object.</p> 1278</td></tr> 1279</table> 1280 1281<h4>return</h4> 1282 1283<p>FreeType error code. 0 means success.</p> 1284<h4>note</h4> 1285 1286<p>If <code>face</code> is the size's parent face object, this function changes the value of <code>face->size</code> to the input size handle.</p> 1287<hr> 1288 1289 1290 1291 1292 1293 1294 1295 </article> 1296 </div> 1297 </div> 1298 1299 </main> 1300 1301 1302<footer class="md-footer"> 1303 1304 <nav class="md-footer__inner md-grid" aria-label="Footer"> 1305 1306 1307 <a href="ft2-mac_specific.html" class="md-footer__link md-footer__link--prev" aria-label="Previous: Mac Specific Interface" rel="prev"> 1308 <div class="md-footer__button md-icon"> 1309 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> 1310 </div> 1311 <div class="md-footer__title"> 1312 <div class="md-ellipsis"> 1313 <span class="md-footer__direction"> 1314 Previous 1315 </span> 1316 Mac Specific Interface 1317 </div> 1318 </div> 1319 </a> 1320 1321 1322 1323 <a href="ft2-header_file_macros.html" class="md-footer__link md-footer__link--next" aria-label="Next: Header File Macros" rel="next"> 1324 <div class="md-footer__title"> 1325 <div class="md-ellipsis"> 1326 <span class="md-footer__direction"> 1327 Next 1328 </span> 1329 Header File Macros 1330 </div> 1331 </div> 1332 <div class="md-footer__button md-icon"> 1333 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg> 1334 </div> 1335 </a> 1336 1337 </nav> 1338 1339 <div class="md-footer-meta md-typeset"> 1340 <div class="md-footer-meta__inner md-grid"> 1341 <div class="md-footer-copyright"> 1342 1343 <div class="md-footer-copyright__highlight"> 1344 Copyright 2022 <a href = "https://www.freetype.org/license.html">The FreeType Project</a>. 1345 </div> 1346 1347 Made with 1348 <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener"> 1349 Material for MkDocs 1350 </a> 1351 1352 </div> 1353 1354 </div> 1355 </div> 1356</footer> 1357 1358 </div> 1359 <div class="md-dialog" data-md-component="dialog"> 1360 <div class="md-dialog__inner md-typeset"></div> 1361 </div> 1362 <script id="__config" type="application/json">{"base": ".", "features": [], "translations": {"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "search": "assets/javascripts/workers/search.477d984a.min.js", "version": null}</script> 1363 1364 1365 <script src="assets/javascripts/bundle.82b56eb2.min.js"></script> 1366 1367 <script src="javascripts/extra.js"></script> 1368 1369 1370 </body> 1371</html>