现在我可以使用下面的代码生成PDF。问题是生成的PDF不可搜索,其文本也不可复制。 (就像整个PDF是图像一样)。
有没有办法使用ios(Swift)创建PDF,其文本可以复制/搜索?
生成pdf的部分代码:
let pdfFrame:CGRect = CGRect(x: 0, y: 0, width: sourceView.contentSize.width, height: sourceView.contentSize.height);
UIGraphicsBeginPDFContextToFile(dataFilename, pdfFrame, nil);
UIGraphicsBeginPDFPageWithInfo(pdfFrame, nil);
sourceView.contentOffset = CGPoint.zero;
sourceView.frame = pdfFrame;
let pdfContext : CGContext = UIGraphicsGetCurrentContext()!;
sourceView.layer.render(in: pdfContext);
UIGraphicsEndPDFContext();
答案 0 :(得分:2)
要生成可搜索的PDF,您需要创建包含文本的PDF文件。您的PDF仅使用图像创建。您无法使用render(in:)
。无论PDF中需要什么文本都需要绘制到PDF上下文中。有关示例,请参阅How to draw text in PDF context in Swift?。