gpt4 book ai didi

objective-c - 使用 CGContextDrawPDFPage : cannot find CropBox 渲染 PDF

转载 作者:行者123 更新时间:2023-12-03 07:45:15 27 4
gpt4 key购买 nike

我需要显示从 Web 服务接收的 PDF 文件的内容。

我的问题是所有 PDF 框返回相同的值。您知道我正在使用的文件可能有什么问题吗?

CGPDFPageRef drawPDFPageRef = CGPDFPageRetain( CGPDFDocumentGetPage(pdf, 1) );
CGRect cropBoxRect = CGPDFPageGetBoxRect(drawPDFPageRef, kCGPDFCropBox);
CGRect mediaBoxRect = CGPDFPageGetBoxRect(drawPDFPageRef, kCGPDFMediaBox);

裁剪框矩形 = (0,0,595,842)媒体框矩形 = (0,0,595,842)

当我在 UIWebView 中显示 PDF 时,内容正常

这是由 UIWebView 渲染的 PDF

enter image description here

这是由CGContextDrawPDFPage渲染的PDF

enter image description here

感谢您的帮助,文森特

最佳答案

这看起来不像元数据,而是像使用媒体框而不是裁剪框来裁剪 PDF。在你的代码中你可能有这样的东西:

  CGContextSetInterpolationQuality(ctx, kCGInterpolationHigh); 
CGContextSetRenderingIntent(ctx, kCGRenderingIntentDefault);
CGContextSetRGBFillColor( ctx, 1.0, 1.0, 1.0, 1.0 );
CGContextFillRect( ctx, CGContextGetClipBoundingBox( ctx ));

CGContextTranslateCTM( ctx, 0.0, self.bounds.size.height );
CGContextScaleCTM( ctx, 1.0, -1.0 );
CGAffineTransform pdfXfm = CGPDFPageGetDrawingTransform( pdfPage, kCGPDFMediaBox, self.bounds, 0, true );
CGContextConcatCTM( ctx, pdfXfm );
CGContextDrawPDFPage( ctx, pdfPage );

尝试在CGPDFGetPageDrawingTransform中使用kCGPDFCropBox,这可能会有所帮助

关于objective-c - 使用 CGContextDrawPDFPage : cannot find CropBox 渲染 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7939551/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com