postscript 3 中是不是允许在同一页面上使用多个半色调网屏?
Posted
技术标签:
【中文标题】postscript 3 中是不是允许在同一页面上使用多个半色调网屏?【英文标题】:Is using multiple halftone screens on the same page allowed in postscript 3?postscript 3 中是否允许在同一页面上使用多个半色调网屏? 【发布时间】:2020-09-10 10:36:29 【问题描述】:我正在处理一个在同一页面上多次使用sethalftone
的后记文件。在我的打印机上,我得到了预期的结果,但是当使用 ghostscript 时,整个页面都在同一个屏幕上呈现。我把它简化为这个例子:
%!PS-Adobe-3.0
<< /PageSize [99 33] >> setpagedevice
/size 33 def
/rect
newpath
0 0 moveto
size 0 lineto
size size lineto
0 size lineto
closepath
fill
def
0.5 0.5 0.5 0.5 setcmykcolor
rect
<< /HalftoneType 1 /Frequency 100 /Angle 60 /SpotFunction pop >> sethalftone
size 0 translate
rect
<< /HalftoneType 1 /Frequency 100 /Angle 45 /SpotFunction pop >> sethalftone
size 0 translate
rect
showpage
gs -dNOPAUSE -dBATCH -r600 -sDEVICE=tiffsep1 -sOutputFile=test%d.tif test.ps
(9.52 版)为我提供了以下频道图像(所有频道都相同):
当在第一个rect
命令之前移动第一个sethalftone
时,我得到这些通道图像,其中包含伪影并且仍然具有相同的半色调:
显然,半色调缓冲区中存在某种内存损坏。 在开始时(在使用默认值之前)只设置一个半色调效果很好。
所以我的标题问题仍然存在:是否允许在 postscript 的同一页面上使用多个不同的半色调?
PS:将每个矩形和半色调分离到自己的页面上时,我仍然会遇到内存损坏,但半色调的应用似乎有所不同。
【问题讨论】:
【参考方案1】:您可以在 PostScript 程序的运行过程中随时更改半色调。它不必位于页面的开头或程序的开头。
【讨论】:
那么我正在处理 ghostscript 中的错误实现? 这样看来,您可以在 bugs.ghostscript.com 提出错误报告 bugs.ghostscript.com/show_bug.cgi?id=702893以上是关于postscript 3 中是不是允许在同一页面上使用多个半色调网屏?的主要内容,如果未能解决你的问题,请参考以下文章
PostScript/PCL - 获取文档页面信息:页面大小、黑白/颜色
如何使 ghostscript 将 postscript 文件中的单个特定页面输出为 png?
使用 Ghostscript 在一个 postscript 批次中打印单独的 PDF 文件
Lotus Notes Xpage - view.postScript("window.open()") 在替换包含的页面名称后不会打开新窗口(仅在特定文档中)