- 12 7月, 2016 1 次提交
-
-
由 Birunthan Mohanathas 提交于
Prior to this change the function `FT_Error FT_Done_Face(FT_Face *)` was called through a pointer with the signature `void (void *)` resulting in undefined behaviour.
-
- 24 2月, 2016 1 次提交
-
-
由 Behdad Esfahbod 提交于
New API: - hb_font_get_nominal_glyph_func_t - hb_font_get_variation_glyph_func_t - hb_font_funcs_set_nominal_glyph_func() - hb_font_funcs_set_variation_glyph_func() - hb_font_get_nominal_glyph() - hb_font_get_variation_glyph() Deprecated API: - hb_font_get_glyph_func_t - hb_font_funcs_set_glyph_func() Clients that implement their own font-funcs are encouraged to replace their get_glyph() implementation with a get_nominal_glyph() and get_variation_glyph() pair. The variation version can assume that variation_selector argument is not zero.
-
- 10 12月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 28 11月, 2015 1 次提交
-
-
由 Simon Cozens 提交于
-
- 06 11月, 2015 1 次提交
-
-
- 05 11月, 2015 2 次提交
-
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
- 16 10月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
The default FreeType load flags where changed from FT_LOAD_NO_HINTING to FT_LOAD_DEFAULT in 2a9627c5. This is crashing HarfBuzz-enabled FreeType as I suppose it causes infinite recursion between HB and FT autohinter... Revert the behavior change. Fixes https://github.com/behdad/harfbuzz/issues/143
-
- 09 10月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 08 10月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
This changes the default load_flags of fonts created using hb_ft_font_create() from NO_HINTING to DEFAULT. Hope that doesn't break too much client code. Code calling hb_ft_font_set_funcs() is unaffected.
-
- 03 9月, 2015 1 次提交
-
-
- 01 6月, 2015 1 次提交
-
-
由 Sascha Brawer 提交于
Based on data from http://upstream-tracker.org/versions/harfbuzz.html Resolves #103
-
- 19 5月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 29 1月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 24 1月, 2015 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 05 1月, 2015 1 次提交
-
-
由 Chris Peterson 提交于
-
- 29 12月, 2014 4 次提交
-
-
由 Behdad Esfahbod 提交于
For discussion see: http://lists.freedesktop.org/archives/harfbuzz/2012-April/001905.html Over time we have had added NO_HINTING all over the place in hb-ft. Finish it off. Not setting ppem on hb-font disables get_contour_point() calls which is good anyway. See comments in the commit.
-
由 Behdad Esfahbod 提交于
When I originally wrote hb-ft, FreeType objects did not support reference counting. As such, hb_ft_face_create() and hb_ft_font_create() had a "destroy" callback and client was responsible for making sure FT_Face is kept around as long as the hb-font/face are alive. However, since this was not clearly documented, some clienets didn't correctly did that. In particular, some clients assumed that it's safe to destroy FT_Face and then hb_face_t. This, indeed, used to work, until 45fd9424, which make face destroy access font tables. Now, I fixed that issue in 395b3590 since the access was not needed, but the problem remains that not all clients handle this correctly. See: https://bugs.freedesktop.org/show_bug.cgi?id=86300 Fortunately, FT_Reference_Face() was added to FreeType in 2010, and so we can use it now. Originally I wanted to change hb_ft_face_create() and hb_ft_font_create() to reference the face if destroy==NULL was passed in. That would improve pretty much all clients, with little undesired effects. Except that FreeType itself, when compiled with HarfBuzz support, calls hb_ft_font_create() with destroy==NULL and saves the resulting hb-font on the ft-face (why does it not free it immediately?). Making hb-face reference ft-face causes a cycling reference there. At least, that's my current understanding. At any rate, a cleaner approach, even if it means all clients will need a change, is to introduce brand new API. Which this commit does. Some comments added to hb-ft.h, hoping to make future clients make better choices. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=75299
-
由 Behdad Esfahbod 提交于
We require FreeType >= 2.8.3. This symbol was introduced earlier than that.
-
由 Behdad Esfahbod 提交于
HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE is deprecated and fairly useless now.
-
- 03 10月, 2014 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 07 8月, 2014 1 次提交
-
-
由 Behdad Esfahbod 提交于
Apparently they are not (advertised as?) safe on BSD systems. We ignore the case of static libraries. Whitelisted on glibc, Android, and MSVC / mingw. https://bugs.freedesktop.org/show_bug.cgi?id=82246
-
- 07 11月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
Patch from Scott Fleischman. Warnings were: harfbuzz/src/hb-font-private.hh:121:42: Implicit conversion loses integer precision: 'long long' to 'hb_position_t' (aka 'int') harfbuzz/src/hb-font-private.hh:126:42: Implicit conversion loses integer precision: 'long long' to 'hb_position_t' (aka 'int') harfbuzz/src/hb-font-private.hh:400:85: Implicit conversion loses integer precision: 'long long' to 'hb_position_t' (aka 'int') harfbuzz/src/hb-ot-layout-common-private.hh:1115:37: Implicit conversion loses integer precision: 'long long' to 'int' harfbuzz/src/hb-ft.cc:421:97: Implicit conversion loses integer precision: 'unsigned long long' to 'int' harfbuzz/src/hb-ft.cc:422:97: Implicit conversion loses integer precision: 'unsigned long long' to 'int'
-
- 18 10月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
Lohit-Punjabi has a upem of 769! We were losing one unit in our code, and FreeType is losing another one... Test with U+0A06. Has an advance of 854 in the font. We were producing 852. Now we do 853, which is what FreeType is telling us.
-
- 14 9月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 12 7月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
Based on patch from Jonathan Kew, as reported on the mailing list.
-
- 14 6月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
This changes the semantics of get_glyph() callback and expect that callbacks return false if the requested variant is not available, and then we will call them back with variation_selector=0 and will retain the glyph for the selector in the glyph stream. Apparently most Mongolian fonts implement the Mongolian Variation Selectors using GSUB, not cmap. https://bugs.freedesktop.org/show_bug.cgi?id=65258 Note that this doesn't fix the Mongolian shaping yet, because the way that's implemented is that the, say, 'init' feature ligates the letter and the variation-selector. However, since currently the variation selector doesn't have the 'init' mask on, it will not be matched...
-
- 10 3月, 2013 2 次提交
-
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
That flag is redundant, deprecated, and ignored since April 2011. From FreeType git log: commit 8c82ec5b17d0cfc9b0876a2d848acc207a62a25a Author: Behdad Esfahbod <behdad@behdad.org> Date: Thu Apr 21 08:21:37 2011 +0200 Always ignore global advance. This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant, deprecated, and ignored. The new behavior is what every major user of FreeType has been requesting. Global advance is broken in many CJK fonts. Just ignoring it by default makes most sense. * src/truetype/ttdriver.c (tt_get_advances), src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics, tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph), src/truetype/ttgload.h: Implement it. * docs/CHANGES: Updated.
-
- 07 3月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
The fallback happens in higher level already. No need to do here.
-
- 30 1月, 2013 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 13 11月, 2012 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 08 8月, 2012 1 次提交
-
-
由 Behdad Esfahbod 提交于
Implemented for Arabic, Hebrew, and generic marks. Activated if no GPOS table present.
-
- 13 7月, 2012 1 次提交
-
-
由 Behdad Esfahbod 提交于
-
- 12 7月, 2012 2 次提交
-
-
由 Behdad Esfahbod 提交于
The calculations were wrong. FreeType makes it really hard to set size and ppem independently. For now, disable it. Need to come up with a fix later.
-
由 Behdad Esfahbod 提交于
-
- 06 6月, 2012 4 次提交
-
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
We're free! Lazy or immediate...
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-