[bindings] Use hb_glib_blob_create() in sample hb_blob_create() is considered C-only API.
diff --git a/src/sample.py b/src/sample.py index 5a76f91..86ab8a3 100755 --- a/src/sample.py +++ b/src/sample.py
@@ -4,6 +4,7 @@ from __future__ import print_function import sys from gi.repository import HarfBuzz as hb +from gi.repository import GLib # Python 2/3 compatibility try: @@ -17,25 +18,23 @@ else: return s - -def nothing(data): - print(data) - fontdata = open (sys.argv[1], 'rb').read () - -blob = hb.blob_create (fontdata, hb.memory_mode_t.DUPLICATE, 1234, None) -buf = hb.buffer_create () -hb.buffer_add_utf8 (buf, tounicode("Hello بهداد").encode('utf-8'), 0, -1) -hb.buffer_guess_segment_properties (buf) - +blob = hb.glib_blob_create (GLib.Bytes.new (fontdata)) face = hb.face_create (blob, 0) +del blob font = hb.font_create (face) upem = hb.face_get_upem (face) +del face hb.font_set_scale (font, upem, upem) #hb.ft_font_set_funcs (font) hb.ot_font_set_funcs (font) +buf = hb.buffer_create () +hb.buffer_add_utf8 (buf, tounicode("Hello بهداد").encode('utf-8'), 0, -1) +hb.buffer_guess_segment_properties (buf) + hb.shape (font, buf, []) +del font infos = hb.buffer_get_glyph_infos (buf) positions = hb.buffer_get_glyph_positions (buf)