在更新我的 iPad 应用程序的过程中,我一直在尝试将现有 PDF 文档中的页面绘制到 Core Graphics 上下文中,然后将其保存为新的 PDF,但是我很难让文本正确显示。新创建的 PDF 中的图像看起来很棒,但文本很少正确显示:更常见的是它看起来不是白色/不可见或乱码。当文本不可见时,我仍然可以选择它应该在哪里并正确复制/粘贴到文本编辑器中。这是与 iPad 上可用的字体数量有限有关的问题吗?
我的代码如下:
CGPDFDocumentRef document = CGPDFDocumentCreateWithProvider(dataProvider);
CGPDFPageRef page = CGPDFDocumentGetPage(document, pageNumberToRetrieve);
CGRect pageRect = CGPDFPageGetBoxRect(page, kCGPDFMediaBox);
UIGraphicsBeginPDFContextToFile(pathToFile, pageRect, nil);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextBeginPage(context, NULL);
// I don't think this line is necessary, but I have tried both with and without it.
CGContextSetTextDrawingMode (context, kCGTextFill);
CGContextDrawPDFPage(context, page);
CGContextEndPage(context);
UIGraphicsEndPDFContext();
CGDataProviderRelease(dataProvider);
CGPDFDocumentRelease(document);
如果有人有任何建议,我将不胜感激。
谢谢你的时间。
抢