Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tkinter画布生成断开的postscript文件_Python_Canvas_Tkinter_Postscript - Fatal编程技术网

Python Tkinter画布生成断开的postscript文件

Python Tkinter画布生成断开的postscript文件,python,canvas,tkinter,postscript,Python,Canvas,Tkinter,Postscript,我有一个Tkinter画布,上面有几个矩形、文本和线条对象 我使用 .postscript(file='file.ps') 画布的方法 当我尝试使用ghostscript(在windows和linux上)打开该文件时,出现以下错误: error: undefinedresult in stringwidth 你有什么解决办法吗 谢谢大家! 编辑:我正在使用python2问题是.postscript方法只接受某些字体。当我将画布文本对象的字体更改为arial时,效果很好。虽然输出字体不是Ar

我有一个Tkinter画布,上面有几个矩形、文本和线条对象

我使用

.postscript(file='file.ps') 
画布的方法

当我尝试使用ghostscript(在windows和linux上)打开该文件时,出现以下错误:

error: undefinedresult in stringwidth
你有什么解决办法吗

谢谢大家!


编辑:我正在使用python2

问题是.postscript方法只接受某些字体。当我将画布文本对象的字体更改为arial时,效果很好。虽然输出字体不是Arial而是Courier。我将尝试查找Windows和Linux上默认可用的一些字体。

Odd。Courier应该在任何PostScript解释器中都可用。如何更改字体?从编辑器还是通过Python代码?我遇到了一个类似的问题,产生了相同的错误消息。Tk中似乎存在一个bug,如果没有在画布上显式设置字体大小,默认情况下会在postscript中生成“0 scalefont”。这将导致除零。在将文本放在画布上之前,可以通过调整字体大小来解决这个问题。。。例如字体创建nfont-family Arial-size 18;c创建文本120-文本“hello world”-字体nfont;