From 5f960531392bef6ff15053a74f01a1a43ee6822c Mon Sep 17 00:00:00 2001 From: Michael Schindler Date: Sun, 17 Apr 2011 17:03:48 +0000 Subject: [PATCH] fixed a font problem in PDF widget annotations git-svn-id: https://pyx.svn.sourceforge.net/svnroot/pyx/trunk/pyx@3049 069f4177-920e-0410-937b-c2a4a81bcd90 --- pyx/font/font.py | 34 +++++++++++++++++----------------- test/functional/test_pdfextra.py | 9 ++------- 2 files changed, 19 insertions(+), 24 deletions(-) diff --git a/pyx/font/font.py b/pyx/font/font.py index d5a6cd8b..cd4f3dee 100644 --- a/pyx/font/font.py +++ b/pyx/font/font.py @@ -212,9 +212,9 @@ class PDFfont(pdfwriter.PDFobject): class PDFstdfont(pdfwriter.PDFobject): - def __init__(self, name, basename): - pdfwriter.PDFobject.__init__(self, "font", "stdfont-%s" % name) - self.name = name + def __init__(self, basename): + pdfwriter.PDFobject.__init__(self, "font", "stdfont-%s" % basename) + self.name = basename # name is ignored by acroread self.basename = basename def write(self, file, writer, registry): @@ -225,20 +225,20 @@ class PDFstdfont(pdfwriter.PDFobject): file.write(">>\n") # the 14 standard fonts that are always available in PDF -PDFTimesRoman = PDFstdfont("Time", "Times-Roman") -PDFTimesBold = PDFstdfont("TiBo", "Times-Bold") -PDFTimesItalic = PDFstdfont("TiIt", "Times-Italic") -PDFTimesBoldItalic = PDFstdfont("TiBI", "Times-BoldItalic") -PDFHelvetica = PDFstdfont("Helv", "Helvetica") -PDFHelveticaBold = PDFstdfont("HeBo", "Helvetica-Bold") -PDFHelveticaOblique = PDFstdfont("HeOb", "Helvetica-Oblique") -PDFHelveticaBoldOblique = PDFstdfont("HeBO", "Helvetica-BoldOblique") -PDFCourier = PDFstdfont("Cour", "Courier") -PDFCourierBold = PDFstdfont("CoBo", "Courier-Bold") -PDFCourierOblique = PDFstdfont("CoOb", "Courier-Oblique") -PDFCourierBoldOblique = PDFstdfont("CoBO", "Courier-BoldOblique") -PDFSymbol = PDFstdfont("Symb", "Symbol") -PDFZapfDingbats = PDFstdfont("Zapf", "ZapfDingbats") +PDFTimesRoman = PDFstdfont("Times-Roman") +PDFTimesBold = PDFstdfont("Times-Bold") +PDFTimesItalic = PDFstdfont("Times-Italic") +PDFTimesBoldItalic = PDFstdfont("Times-BoldItalic") +PDFHelvetica = PDFstdfont("Helvetica") +PDFHelveticaBold = PDFstdfont("Helvetica-Bold") +PDFHelveticaOblique = PDFstdfont("Helvetica-Oblique") +PDFHelveticaBoldOblique = PDFstdfont("Helvetica-BoldOblique") +PDFCourier = PDFstdfont("Courier") +PDFCourierBold = PDFstdfont("Courier-Bold") +PDFCourierOblique = PDFstdfont("Courier-Oblique") +PDFCourierBoldOblique = PDFstdfont("Courier-BoldOblique") +PDFSymbol = PDFstdfont("Symbol") +PDFZapfDingbats = PDFstdfont("ZapfDingbats") class PDFfontdescriptor(pdfwriter.PDFobject): diff --git a/test/functional/test_pdfextra.py b/test/functional/test_pdfextra.py index a7306784..ba292bdb 100755 --- a/test/functional/test_pdfextra.py +++ b/test/functional/test_pdfextra.py @@ -23,9 +23,6 @@ def texttest(): c.stroke(path.rect(llx-d, lly-d, w+2*d, h+2*d)) c.insert(textfield(llx, lly, w, h, name="another")) - # XXX scaling of textsize - # XXX font does not work - return c def checkboxtest(): @@ -61,8 +58,6 @@ def choicetest(): c.insert(choicefield(llx, lly, w, h, name="choicefield", values=values, defaultvalue=values[0], font=PDFTimesBold)) - # XXX font does not work - return c # write all test into one canvas @@ -73,10 +68,10 @@ for cc in [texttest(), checkboxtest(), radiotest(), choicetest()]: else: t = [trafo.translate(0, c.bbox().bottom() - cc.bbox().top() - 1)] c.insert(cc, t) - c.stroke(cc.bbox().path(), t + [color.rgb.red, style.linestyle.dotted]) + #c.stroke(cc.bbox().path(), t + [color.rgb.red, style.linestyle.dotted]) # test the transformation behaviour: -cc = canvas.canvas([trafo.scale(0.3), trafo.rotate(90)]) +cc = canvas.canvas([trafo.scale(0.3)])#, trafo.rotate(90)]) cc.fill(c.bbox().path(), [color.gray(0.9)]) cc.insert(c) d = document.document([document.page(cc, bboxenlarge=1)]) -- 2.11.4.GIT