如何通过目标c中的编码将pdf文件转换为图像

Posted

技术标签:

【中文标题】如何通过目标c中的编码将pdf文件转换为图像【英文标题】:How to convert a pdf file to image through coding in objective c 【发布时间】:2012-09-14 09:30:03 【问题描述】:

如何通过objective c中的编码将pdf文件转换为图像

我有一个 pdf 文件,但我想将它保存到 iPhone 的相册中,所以我想转换它。如果有其他方法,请建议我。

提前致谢。

【问题讨论】:

参考convert-a-pdf-page-to-image-on-the-iphone-and-ipad 链接。参考image-of-pdf-page-ios链接获得帮助 【参考方案1】:
    CGPDFDocumentRef PDFfile;

            CFURLRef pdfURL = CFBundleCopyResourceURL(CFBundleGetMainBundle(), CFSTR("iPhone Sample apps.pdf"), NULL, NULL);
            PDFfile = CGPDFDocumentCreateWithURL((CFURLRef)pdfURL);
            CFRelease(pdfURL);

     CGPDFPageRef page = CGPDFDocumentGetPage(PDFfile,currentpage);

        context = UIGraphicsGetCurrentContext();
        CGContextSaveGState(context);
        CGContextSetRGBFillColor(context, 1.0, 1.0, 1.0, 1.0);
        CGContextFillRect(context,self.bounds);   
        CGContextTranslateCTM(context, -1.0, [self bounds].size.height);
        CGContextScaleCTM(context, 1.0, -1.0);
        CGContextConcatCTM(context, CGPDFPageGetDrawingTransform(page,  kCGPDFArtBox, [self bounds], 0, true));
        CGContextDrawPDFPage(context, page);    
        CGContextRestoreGState(context);
CGImageRef imgref;
 imgref=CGBitmapContextCreateImage(context);      
image= [[UIImage alloc]initWithCGImage:imgref ];

【讨论】:

@thomas-kilian 请发表您自己的答案。您将 Swift 代码插入到 2012 年的答案中。现在,如果有人想对您的版本投反对票,他们实际上会反对 OP!无论如何,请不要将外国代码放入其他人的答案中。例如,一个简单的错字修复是可以的,但不是这个。谢谢。 // 对于已编辑的问题,请参见:meta.***.com/questions/311285/… @EricD 啊,对不起,但没有。答案并不局限于 obj-c、它的 CG 以及 C。这对 Swift 和 Obj-C 是开放的。并且我插入了两个代码版本,这并不罕见。 @ThomasKilian 如果您真的认为有必要和/或有用,您可以将标签添加到问题中 - 尽管我强烈反对,但我不会再阻止您。 // 但无论如何你都不能像这样劫持其他用户的答案。发表你自己的。 是我评论的重要部分。谢谢。 :) @EricD 这不是劫持。原来的答案很差。我提取了内核并添加了我自己的 Swift 解决方案作为赠品。我不会再碰这个话题了。如果有人对我的解决方案感兴趣,请单击上面的编辑文本。

以上是关于如何通过目标c中的编码将pdf文件转换为图像的主要内容,如果未能解决你的问题,请参考以下文章

如何将html文件转成pdf 在线转换

怎么将html转换为pdf

怎么用ABBYY将PDF转换为JPEG图像

数据转图像表征学习均值编码转换目标变量

如何将excel表格转成在线文档

如何将wmf文件转换为svg文件