Update HarfBuzz-NG path on Mac

84be1bd4d3 has changed the stored data type
from QFontEngine to QFontEngine::FaceData. Update the implementation
and revert changing the y_scale sign on non-Mac
(aka fix-up 2d576f79f7).

Change-Id: I4180257bc8f610fb014fd2a2ad6f8fdceece2f13
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
This commit is contained in:
Konstantin Ritt 2014-02-12 22:41:43 +02:00 committed by The Qt Project
parent 235d5dde5c
commit 03aabe6c6e
2 changed files with 5 additions and 1 deletions

View File

@ -83,7 +83,7 @@ _hb_coretext_shaper_face_data_create (hb_face_t *face)
if (unlikely (!data))
return NULL;
QFontEngine *fe = (QFontEngine *) face->user_data;
QFontEngine *fe = (QFontEngine *) ((QFontEngine::FaceData *) face->user_data)->user_data;
if (fe->type () == QFontEngine::Mac)
{
data->cg_font = (CGFontRef) fe->userData ().value<void *> ();

View File

@ -703,7 +703,11 @@ _hb_qt_font_create(QFontEngine *fe)
const int x_ppem = (fe->fontDef.pixelSize * fe->fontDef.stretch) / 100;
hb_font_set_funcs(font, hb_qt_get_font_funcs(), (void *)fe, NULL);
#ifdef Q_OS_MAC
hb_font_set_scale(font, QFixed(x_ppem).value(), QFixed(y_ppem).value());
#else
hb_font_set_scale(font, QFixed(x_ppem).value(), -QFixed(y_ppem).value());
#endif
hb_font_set_ppem(font, x_ppem, y_ppem);
return font;