def __init__(self, document, file):
if len(document.pages) != 1:
raise ValueError("EPS file can be constructed out of a single page document only")
page = document.pages[0]
canvas = page.canvas
try:
file.write("")
except:
filename = file
if not filename.endswith(".eps"):
filename += ".eps"
try:
file = open(filename, "w")
except IOError:
raise IOError("cannot open output file")
else:
filename = "stream"
pagefile = cStringIO.StringIO()
registry = PSregistry()
acontext = context()
pagebbox = bbox.empty()
page.processPS(pagefile, self, acontext, registry, pagebbox)
file.write("%!PS-Adobe-3.0 EPSF-3.0\n")
if pagebbox:
file.write("%%%%BoundingBox: %d %d %d %d\n" % pagebbox.lowrestuple_pt())
file.write("%%%%HiResBoundingBox: %g %g %g %g\n" % pagebbox.highrestuple_pt())
file.write("%%%%Creator: PyX %s\n" % version.version)
file.write("%%%%Title: %s\n" % filename)
file.write("%%%%CreationDate: %s\n" %
time.asctime(time.localtime(time.time())))
file.write("%%EndComments\n")
file.write("%%BeginProlog\n")
registry.output(file, self)
file.write("%%EndProlog\n")
file.write(pagefile.getvalue())
pagefile.close()
file.write("showpage\n")
file.write("%%Trailer\n")
file.write("%%EOF\n")
评论列表
文章目录