[bindings] Make sample Python 2/3 compatible
This commit is contained in:
parent
b632e7997d
commit
81a31f3eff
|
@ -5,6 +5,19 @@ from __future__ import print_function
|
|||
import sys
|
||||
from gi.repository import HarfBuzz as hb
|
||||
|
||||
# Python 2/3 compatibility
|
||||
try:
|
||||
unicode
|
||||
except NameError:
|
||||
unicode = str
|
||||
|
||||
def tounicode(s, encoding='utf-8'):
|
||||
if not isinstance(s, unicode):
|
||||
return s.decode(encoding)
|
||||
else:
|
||||
return s
|
||||
|
||||
|
||||
def nothing(data):
|
||||
print(data)
|
||||
|
||||
|
@ -12,7 +25,7 @@ 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, "Hello بهداد", 0, -1)
|
||||
hb.buffer_add_utf8 (buf, tounicode("Hello بهداد").encode('utf-8'), 0, -1)
|
||||
hb.buffer_guess_segment_properties (buf)
|
||||
|
||||
face = hb.face_create (blob, 0)
|
||||
|
|
Loading…
Reference in New Issue