修改 我一直在使用的pdf文件显然是“indesign”格式(无论这意味着什么),因此没有颜色配置文件,是否有人知道如果可能的话我如何自己添加配置文件? 编辑结束
提前感谢任何人都可以解决这个问题。
首先让我告诉你,我在为IOS开发方面有点新意,我试图在xcode上使用石英制作一个pdf阅读器,一切正常,除了图像的渲染,由于某种原因颜色空间完全搞砸了。请看一下这个例子。
这是我在IOS设备上获得的图像:
这就是它看起来的样子:
作为参考,绘制pdf页面的代码部分如下:
- (void)drawLayer:(CATiledLayer *)layer inContext:(CGContextRef)context
{
ReaderContentPage *readerContentPage = self; // Retain self
CGContextSetRGBFillColor(context, 1.0f, 1.0f, 1.0f, 1.0f); // White
CGContextFillRect(context, CGContextGetClipBoundingBox(context)); // Fill
CGContextTranslateCTM(context, 0.0f, self.bounds.size.height); CGContextScaleCTM(context, 1.0f, -1.0f);
CGContextConcatCTM(context, CGPDFPageGetDrawingTransform(_PDFPageRef, kCGPDFCropBox, self.bounds, 0, true));
//CGContextSetRenderingIntent(context, kCGRenderingIntentDefault); CGContextSetInterpolationQuality(context, kCGInterpolationDefault);
CGContextDrawPDFPage(context, _PDFPageRef); // Render the PDF page into the context
if (readerContentPage != nil) readerContentPage = nil; // Release self
}
请有人帮我解决这个问题。
大卫
答案 0 :(得分:2)
正如我的问题所指出的那个问题是由于pdf源文件缺少色彩空间造成的,在这个应用程序的android版本上我使用的是非常好的库调用MUPDF,也可用于ios但不幸的是在我的如果这个版本比使用石英框架慢。
至于此,我必须使用rbg或cmyk颜色空间导出pdf源。
如果有人知道如何在应用程序中添加色彩空间我会很高兴知道它
答案 1 :(得分:0)
我遇到了很多麻烦。我终于明白了。
Apple使用sRGB for iOS。为此,您必须在sRGB中保存pdf(转换为)。我使用Illustrator执行此操作 - >新的 - > profile =“web”,color space =“RGB” - >另存为PDF - > (在选项中)转换为sRGB。
小心!将过去的路径复制到RGB中的新画板时,Illustrator可能已更改RGB值。这花了我很多年才弄明白......即使保存为PDF部分是正确的,Illustrator也会通过默认更改值来打破它,使一切变得更暗,更暗淡。
希望这有帮助!