| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright © 2009 Red Hat, Inc. | 2 * Copyright © 2009 Red Hat, Inc. |
| 3 * Copyright © 2009 Keith Stribley | 3 * Copyright © 2009 Keith Stribley |
| 4 * Copyright © 2015 Google, Inc. | 4 * Copyright © 2015 Google, Inc. |
| 5 * | 5 * |
| 6 * This is part of HarfBuzz, a text shaping library. | 6 * This is part of HarfBuzz, a text shaping library. |
| 7 * | 7 * |
| 8 * Permission is hereby granted, without written agreement and without | 8 * Permission is hereby granted, without written agreement and without |
| 9 * license or royalty fees, to use, copy, modify, and distribute this | 9 * license or royalty fees, to use, copy, modify, and distribute this |
| 10 * software and its documentation for any purpose, provided that the | 10 * software and its documentation for any purpose, provided that the |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 * Red Hat Author(s): Behdad Esfahbod | 26 * Red Hat Author(s): Behdad Esfahbod |
| 27 * Google Author(s): Behdad Esfahbod | 27 * Google Author(s): Behdad Esfahbod |
| 28 */ | 28 */ |
| 29 | 29 |
| 30 #include "hb-private.hh" | 30 #include "hb-private.hh" |
| 31 | 31 |
| 32 #include "hb-ft.h" | 32 #include "hb-ft.h" |
| 33 | 33 |
| 34 #include "hb-font-private.hh" | 34 #include "hb-font-private.hh" |
| 35 | 35 |
| 36 #include "hb-cache-private.hh" // Maybe use in the future? |
| 37 |
| 36 #include FT_ADVANCES_H | 38 #include FT_ADVANCES_H |
| 37 #include FT_TRUETYPE_TABLES_H | 39 #include FT_TRUETYPE_TABLES_H |
| 38 | 40 |
| 39 | 41 |
| 40 | 42 |
| 41 #ifndef HB_DEBUG_FT | 43 #ifndef HB_DEBUG_FT |
| 42 #define HB_DEBUG_FT (HB_DEBUG+0) | 44 #define HB_DEBUG_FT (HB_DEBUG+0) |
| 43 #endif | 45 #endif |
| 44 | 46 |
| 45 | 47 |
| (...skipping 553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 599 hb_destroy_func_t destroy) | 601 hb_destroy_func_t destroy) |
| 600 { | 602 { |
| 601 hb_font_t *font; | 603 hb_font_t *font; |
| 602 hb_face_t *face; | 604 hb_face_t *face; |
| 603 | 605 |
| 604 face = hb_ft_face_create (ft_face, destroy); | 606 face = hb_ft_face_create (ft_face, destroy); |
| 605 font = hb_font_create (face); | 607 font = hb_font_create (face); |
| 606 hb_face_destroy (face); | 608 hb_face_destroy (face); |
| 607 _hb_ft_font_set_funcs (font, ft_face, false); | 609 _hb_ft_font_set_funcs (font, ft_face, false); |
| 608 hb_font_set_scale (font, | 610 hb_font_set_scale (font, |
| 609 » » (int) (((uint64_t) ft_face->size->metrics.x_scale * (uint64
_t) ft_face->units_per_EM + (1<<15)) >> 16), | 611 » » (int) (((uint64_t) ft_face->size->metrics.x_scale * (uint64
_t) ft_face->units_per_EM + (1u<<15)) >> 16), |
| 610 » » (int) (((uint64_t) ft_face->size->metrics.y_scale * (uint64
_t) ft_face->units_per_EM + (1<<15)) >> 16)); | 612 » » (int) (((uint64_t) ft_face->size->metrics.y_scale * (uint64
_t) ft_face->units_per_EM + (1u<<15)) >> 16)); |
| 611 #if 0 /* hb-ft works in no-hinting model */ | 613 #if 0 /* hb-ft works in no-hinting model */ |
| 612 hb_font_set_ppem (font, | 614 hb_font_set_ppem (font, |
| 613 ft_face->size->metrics.x_ppem, | 615 ft_face->size->metrics.x_ppem, |
| 614 ft_face->size->metrics.y_ppem); | 616 ft_face->size->metrics.y_ppem); |
| 615 #endif | 617 #endif |
| 616 | 618 |
| 617 return font; | 619 return font; |
| 618 } | 620 } |
| 619 | 621 |
| 620 /** | 622 /** |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 715 0, font->y_scale < 0 ? -1 : +1}; | 717 0, font->y_scale < 0 ? -1 : +1}; |
| 716 FT_Set_Transform (ft_face, &matrix, NULL); | 718 FT_Set_Transform (ft_face, &matrix, NULL); |
| 717 } | 719 } |
| 718 | 720 |
| 719 ft_face->generic.data = blob; | 721 ft_face->generic.data = blob; |
| 720 ft_face->generic.finalizer = (FT_Generic_Finalizer) _release_blob; | 722 ft_face->generic.finalizer = (FT_Generic_Finalizer) _release_blob; |
| 721 | 723 |
| 722 _hb_ft_font_set_funcs (font, ft_face, true); | 724 _hb_ft_font_set_funcs (font, ft_face, true); |
| 723 hb_ft_font_set_load_flags (font, FT_LOAD_DEFAULT | FT_LOAD_NO_HINTING); | 725 hb_ft_font_set_load_flags (font, FT_LOAD_DEFAULT | FT_LOAD_NO_HINTING); |
| 724 } | 726 } |
| OLD | NEW |