我想要将从CGPDFDocument中选择的CGPDFPage渲染成UIImage以在视图上显示。
在MonoTouch中,我有以下代码可以帮助我完成部分工作。
RectangleF PDFRectangle = new RectangleF(0, 0, UIScreen.MainScreen.Bounds.Width, UIScreen.MainScreen.Bounds.Height);
public override void ViewDidLoad ()
{
UIGraphics.BeginImageContext(new SizeF(PDFRectangle.Width, PDFRectangle.Height));
CGContext context = UIGraphics.GetCurrentContext();
context.SaveState();
CGPDFDocument pdfDoc = CGPDFDocument.FromFile("test.pdf");
CGPDFPage pdfPage = pdfDoc.GetPage(1);
context.DrawPDFPage(pdfPage);
UIImage testImage = UIGraphics.GetImageFromCurrentImageContext();
pdfDoc.Dispose();
context.RestoreState();
UIImageView imageView = new UIImageView(testImage);
UIGraphics.EndImageContext();
View.AddSubview(imageView);
}
一个CGPDFPage的部分被倒置且上下颠倒显示。我的问题是如何选择整个pdf页面并将其翻转以正确显示。我看到了一些使用ScaleCTM和TranslateCTM的示例,但似乎无法使它们工作。
任何ObjectiveC的示例都可以,我需要尽可能多的帮助 :)
谢谢
CGPDFPageRef page = [self getPage:page_number];
抛出了一个错误。这段代码嵌入在哪种类型的视图控制器中? - DAS