2013-02-13 353 views
3

是否可以预先处理(批量)处于CMYK格式的PDF以分离出专色?将CMYK PDF转换为专色(颜色)

我有一个集合的CMYK中的PDF,但我要求他们是2专色格式。

颜色是红色和黑色。黑色(K)很好,但红色斑点需要是黄色的洋红色合并。

这可能吗?我更喜欢能够根据给定颜色分离点的东西,而不是合并颜色,因为这会变得非常有限。

我看过Adobe adobe X pro,并且似乎没有做我想做的事。我大概可以在Photoshop中手动执行它,但对于大量的PDF文件而言,这将是一个漫长的过程。

+0

我不知道我明白你的最终目标是什么。你有一个.pdf有多种颜色,你想要2种颜色。当你说分开时,你在说输出2张黑白电影吗? 我刚刚回答了关于重新定义postscript运算符的另一个后记问题。似乎可以使用类似的技术来重新定义setgray,setrgbcolor和/或setcmykcolor来重新定义颜色。 [链接] http://stackoverflow.com/questions/14856981/ghostscript-postscript-pswrite-is-encoding-text/14888816#14888816 – 2013-02-15 05:40:05

+0

我会尽量给一个简单的例子: 我有一个PDF生成这是RGB(但最终它只是PDF中的红色文本和黑色文本)。红色和黑色由PDF内的RGB元素组成。 如果我预检到CMYK它会变成K =全黑文字M + Y =红色文字 我想要的是预检它,所以PDF墨水管理器显示C =空Y =空M =空K =黑色[点红色] =红色 – TheStoneFox 2013-02-16 08:32:04

+0

我仍然不确定你想要获得什么,或者你仅限于哪些参数。 Postscript允许用特意定义的setcmyk重新定义setrgbcolor,但这种行为对于postscript来说是不自然的。如果上下文允许首先发送用户定义的头部,则很容易。如果您可以为动作定义特定的页面大小,那很容易。如果您不介意重新启动RIP,那很容易。但是如果你期望魔术发生,魔法在我们的世界中是不可能的。在过去的工作中,我有用红色设计的地图,但每个版本都需要不同的颜色来打印。这可以做到。 – 2013-02-16 15:58:38

回答

1

我猜这个问题早已解决,但仅仅为了完整性;是的,这可以完成。有许多商业工具可以非常容易地实现这一点。

1)如果我没有弄错,最新版本的Adobe Acrobat实际上比以前的版本包含更多的PDF文件更正可能性,这意味着它应该能够做到这一点。

2)有像卡拉斯pdfToolbox(警告,我附属于这家公司/产品)的工具,可以任何你想要的方式几乎预处理PDF文件。

一般来说,虽然我认为第一个问题将是为什么你要经过RGB到CMYK步骤 - 可以做这种重新映射的工具同样能够简单地从黑色和红色RGB直接转到两个指定点颜色,避免不必要的CMYK转换。顺便说一句,如果你想获得的是一个PDF,你可以很容易地切换一种颜色(比如隐藏正确的答案),有可能有更好的方法来做到这一点。例如,将所有红色文本放在一个图层上,同时将所有黑色文本放在不同的图层上(或者OCG - 可选内容组,如PDF所示)。这将使您能够随意打开或关闭彩色文本,即使在Adobe Reader中也是如此。

+0

感谢您的回应,它没有得到回应,为我提供了一个可行的(简单)解决方案。您能否在答案中提供如何在分步指南(Acrobat或Pitstop)中实现目标的步骤,以便我可以按照步骤实现目标。我需要它们在CMYK + Spot中,因为它最终会在平版印刷中进行印刷,所以RGB +点在这里不会有任何用处。非常感谢 – TheStoneFox 2013-04-15 08:27:07

+0

我在Adobe Acrobat Professional XI中无法实现我的目标,并且似乎没有看到如何执行此操作的方法。如果您能够在答案中概述如何使用Adobe Acrobat或Pitstop实现我的目标,我将不胜感激。如果我可以通过提供的答案来实现我的目标,那么我会接受答案并将其标记为已解决。 – TheStoneFox 2013-04-16 10:47:15

+0

我已经下载了桌面版本的PDFToolbox,并且在Fixups菜单中有一个选项可以替换CMYK颜色(通过提供CMYK故障值和模糊匹配容差),然后选择一种颜色将其交换出来我的情况是一个具有回退CMYK值的已命名的颜色斑点红色)。因此,您可以在PDFToolbox中执行此操作,但在Acrobat Professional XI中无法执行(据我所知)。我将其标记为答案 – TheStoneFox 2013-04-23 09:31:06

0

这是一个简单的实现,它将打印纯黑或任何非黑色的东西。根据您的需求,它可能需要变得更加复杂。不知道更多,我采取了使用exitserver的蛮力方法。 exitserver允许重新定义RIP的默认操作。要将RIP恢复到正常操作状态,您需要重新启动RIP,或者编写另一个退出服务器例程来取消定义服务器修改。

例程通过发送exitserver postscript代码安装在rip中。对于PC来说,这可以通过DOS拷贝命令来完成。还有一些sendps程序可以在网上找到将文件发送到设备。

copy redef1.ps \\127.0.0.1\psprinter 

这exitserver例程定义了一个UserDict中/ setcmykcolor功能,这将优先于在系统中的字典setcmykcolor。在堆栈中将会有4个数字,其中最后一个将是黑色。后面的值被复制并且与零比较。如果黑色不为零,则将执行黑色块,否则不执行黑色。 0 setgray = black和1 setgray = white,因此下面的块存在时,黑色将打印为黑色,其他所有内容都将打印为白色。

%! 
serverdict begin 0 exitserver 
userdict begin /setcmykcolor 
{ 
    dup 0 ne 
    { 
     %black 
     0 setgray 
     pop pop pop pop 
    } 
    { 
     %not black 
     1 setgray 
     pop pop pop pop 
    }ifelse 
} def end 

通过颠倒setgray的值,黑色将不会打印,其他所有“不黑色”都会打印出来。

%! 
serverdict begin 0 exitserver 
userdict begin /setcmykcolor 
{ 
    dup 0 ne 
    { 
     %black 
     1 setgray 
     pop pop pop pop 
    } 
    { 
     %not black 
     0 setgray 
     pop pop pop pop 
    }ifelse 
} def end 

它打印的程序并不重要。无论上次加载哪个版本的exitserver,都将是输出结果的打印方式。

举个简单的例子.PS

%!PS-Adobe-3.0 
%%Title: mwe.ps 
%%Pages: 001 
%%BoundingBox: 0 0 595 842 
%%EndComments 
%%Page: 1 1 
%%PageBoundingBox: 0 0 595 842 
/Times-Roman findfont 72 scalefont setfont 
0 0 0 1 setcmykcolor 
0 20 moveto (black) show 
0 1 0 0 setcmykcolor 
0 40 moveto (not black) show 
0 0 0 1 setcmykcolor 
0 60 moveto (black) show 
1 0 0 0 setcmykcolor 
0 80 moveto (not black) show 
0 0 0 1 setcmykcolor 
0 100 moveto (black) show 
0 1 1 0 setcmykcolor 
0 120 moveto (not black) show 

showpage 

输出将只显示“黑”或“不黑”,但文字套印,所以你会看到哪个颜色的重影不打印。

这是恢复RIP使用普通setcmykcolor

%! 
serverdict begin 0 exitserver 
userdict /setcmykcolor undef 

正如开头所说使用exitserver,这是一个简单的实现,如黑与不黑也有可能存在差异,允许色调的颜色,少量的黑色与颜色混合可能会欺骗简单的例程,深红色的0.87 .75 .1 setcmykcolor将被定义为黑色,在那里它可能应该不是黑色。

+0

这是一个硬核的答案!我一直希望有一些事情......你在ghostscript中这样做:) – TheStoneFox 2013-02-19 07:21:58

+0

我从来没有见过任何人用ghostscript输出板。 :P答案表示postscript分离颜色的通用方式,其中标准方法用修改的方法重新定义。对于ghostscript,15行将被复制到文件中,并删除exitserver行,并将2个文件发送到ghostscript“onlyblack.ps youfile.pdf”和“notblack.ps yourfile.pdf”。这将产生黑白输出。如果你想从ghostscript中取出一个RGB文件,你需要一个不同的头文件。答案不是硬核,它是后记! – 2013-02-19 15:53:05

+0

虽然这是一个很好的答案,但对我来说这有点过于技术性,所以我选择了PDFToolbox解决方案。 – TheStoneFox 2013-04-23 09:32:13