def test_main(argv=None): if 'win32' not in sys.platform: return doc = testlib.create_test_doc(argv, 'fontmatch-windows-only.pdf') doc.page_start(600, 600) canvas = doc.page().canvas() utf8 = 'P\xc5\x99\xc3\xadli\xc5\xa1 \xc5\xbelu\xc5\xa5ou\xc4\x8dk\xc3\xbd k\xc5\xaf\xc5\x88 \xc3\xbap\xc4\x9bl \xc4\x8f\xc3\xa1belsk\xc3\xa9 \xc3\xb3dy.' # utf-8 font = doc.font_load("name=Verdana; size=14; italic; enc=utf-8") canvas.text_font(font) canvas.text(20, 70, "Verdana Italic UTF-8: " + utf8) # unicode uni = utf8.decode('utf-8') canvas.text(20, 100, "Verdana Italic Unicode: " + uni) # cp 1250 text_1250 = unicode(utf8, 'utf8').encode('cp1250') font = doc.font_load("name=Verdana; size=14; italic; enc=windows-1250") canvas.text_font(font) canvas.text(20, 130, "Verdana Italic cp-1250: " + text_1250) # font mapping requires encoding; the error message should # express this testlib.must_throw_ex('requires an encoding', doc.font_load, "name=Verdana; size=14; italic") doc.page_end() doc.finalize()
def cannot_output_font(easy_font, enc=None): doc = jagpdf.create_stream(testlib.NoopStreamOut()) fnt = easy_font(doc, enc) doc.page_start(*testlib.paperA5) canvas = doc.page().canvas() canvas.text_font(fnt()) canvas.state_save() canvas.state_restore() doc.page_end() testlib.must_throw_ex("font", doc.finalize)
def test_suite_fail(doc, exc_substring): # invalid face name testlib.must_throw_ex( exc_substring[0], doc.font_load, 'name=this-font-does-not-exist;size=10;enc=windows-1252') # invalid file fspec = os.path.expandvars( 'size=10;file=${JAG_TEST_RESOURCES_DIR}/images/cc3399-icc.png') testlib.must_throw_ex(exc_substring[1], doc.font_load, fspec) # non-exisiting file testlib.must_throw_ex(exc_substring[2], doc.font_load, 'size=10;file=/this/file/does/not/exist')
def test_suite_fail(doc, exc_substring): # invalid face name testlib.must_throw_ex(exc_substring[0], doc.font_load, 'name=this-font-does-not-exist;size=10;enc=windows-1252') # invalid file fspec = os.path.expandvars( 'size=10;file=${JAG_TEST_RESOURCES_DIR}/images/cc3399-icc.png') testlib.must_throw_ex(exc_substring[1], doc.font_load, fspec) # non-exisiting file testlib.must_throw_ex(exc_substring[2], doc.font_load, 'size=10;file=/this/file/does/not/exist')