2013-03-11 71 views
0

我阅读Plotchart文档的OTHER OUTPUT FORMATS这部分,但仍然无法弄清楚如何去做。如何保存PostScript以外的Plotchart画布而不显示它?

我想:

  1. 保存画布而不显示图像。所以我可以在批处理模式下运行它。
  2. 保存为其他格式。 (例如:jpeg,png ...)

赞赏一个简单的例子。

+0

如果文档的部分是真的很难使用,需要的图像格式深入的了解*和*的plotchart实施。我想这对于想要制作SVG导出器但不是PNG导出器的专家是有用的。 (绘图不应该变成JPG,这是一种只适用于实际照片的格式。) – 2013-03-12 22:34:56

回答

0

我发现Img库能够后记转换成各种格式,以及一个快速和肮脏的方式做不显示画布是立即运行exit

下面是一个例子:

package require Plotchart 
package require Img 

canvas .c -background white -width 400 -height 200 
pack .c -fill both 

set s [::Plotchart::createXYPlot .c {0.0 100.0 10.0} {0.0 100.0 20.0}] 

foreach {x y} {0.0 32.0 10.0 50.0 25.0 60.0 78.0 11.0 } { 
    $s plot series1 $x $y 
} 

$s title "Data series" 

set file "test.ps" 
$s saveplot $file 
set root [file rootname $file] 

set image [image create photo -file $file] 
foreach {f suffix} {JPEG jpg GIF gif PNG png} { 
    $image write $root.$suffix -format $f 
} 

exit 
+0

还有一些外部工具可以完成从postscript(真正封装的postscript)到各种图像格式的转换。 (我认为imagemagick中有这样的东西。) – 2013-03-12 22:27:41

0

我没有尝试这个解决方案,但是您链接的手册页描述了一个命令,用于将绘图存储到Postscript(或其他图像格式)文件中。

一旦你创建你的阴谋小部件,你可以这样做

.plot saveplot filename.ps -plotregion bbox 

其中-plotregion bbox说要保存所有的情节,而不仅仅是可见部分(-plotregion window,这是默认值)。

+0

我试过'saveplot'来生成postscript格式的结果,但不知道如何在不显示画布的情况下做到这一点 – Alec 2013-03-11 09:33:13