我有一堆PDF,我正在使用作为矢量艺术在我正在写一个应用程序。我正在使用CG上下文命令CGContextDrawPDFPage来绘制PDF,并且目前效果很好。我遇到的一个问题是,我希望能够在运行时修改矢量图的颜色。目前所有的PDF文件都是纯黑色的,正如它们的设计一样。石英2D绘制不同颜色的PDF页面
是否可以绘制PDF,但以某种方式改变它绘制的颜色?也许修改调色板,使黑色映射到其他东西,或实际上在运行时更改PDF本身?我意识到PDF文件中已经包含颜色信息,因此也许可以告诉Quartz忽略这些颜色并使用其他颜色?
更多信息: 我正在绘制的PDF文件是程序需要绘制的各种图标/形状。它们有些黑色,背景透明。我需要能够绘制PDF,但使用不同的颜色,或者像Bill Wilson所提到的那样使用混合模式叠加不同的颜色。我尝试了kCGBlendModeLighten,但问题是,如果我在pdf中填充矩形,外部透明区域变为红色,所以只有一个红色框,而不是红色形状。
所以我需要一种方法将黑色映射到X色,但保持透明。
这里是一个PDF,我需要用不同的颜色来绘制的例子:http://davidevansgames.com/res/FON179.pdf
有趣的建议!我试过这个,但不幸的是,它只是围绕PDF生成了一个红色框。我正在寻找不同的混合模式来找到一种只会使PDF变色的方法,但还没有找到一种可以使用的方法。 – phosphoer 2012-07-10 04:31:12
嗯......这听起来很奇怪,但用白色填充上下文,然后绘制b&w PDF,然后执行上述步骤。你有可以分享的样本PDF吗?哎呀。看到你用PDF更新了你的Q.我会在上午尝试。 – 2012-07-10 06:16:40
我刚刚意识到的观点的背景实际上是透明的,这是一个要求。所以我需要将黑色映射到X颜色,但保持透明。 – phosphoer 2012-07-10 06:51:43