我正在使用GhostScript.NET for C#将PDF转换为PostScript(ps2write设备),并且我想显示渲染进度(processor.StartProcessing()
),因为大文件需要很长时间
我知道mswinpr2显示了渲染进度,但是ps2write没有显示。
是否可以使用ps2write做到这一点?
答案 0 :(得分:0)
PostScript程序的长度可以是任意的,并且确实是因为它们是程序,因此完全有可能从磁盘读取整个程序,但是仍然要做大量工作才能产生输出。
所有mswinpr2开发人员的进度都表明,到目前为止已读取的程序百分比是合理的,但并非100%准确。
通常,ps2weite设备实际上根本不渲染。它解释输入,创建一系列图形基元,然后将其用于创建新的PostScript程序。
由于无法知道PostScript程序何时(或实际上是否)会进入暂停状态,因此您无法确定进度。
如果输入的是PostScript程序,那么您可以一次分批输入该程序,并以读取的数量/文件大小* 100计算进度。
如果输入的是PDF文件,则无法执行此操作,因为PDF解释器需要随机访问整个文件。
总而言之;如果输入是PostScript,则可以计算某种进度;如果输入是PDF,则没有现实的方法来确定进度。最好的办法是确定PDF文件中的页数,然后计算到目前为止已处理的页数。