Я приложил фрагмент кода, который я использую для отображения PDF.Следующий код отображает PDF, но кажется, что он либо сжат, либо не использует полный размер дисплея iPad, что приводит к слишком маленькой странице.
Как отобразить PDF, который подходитграница дисплея iPad или в увеличенном состоянии?Я попытался использовать другой подход (подход-2), но он создает проблему с PDF, повернутым под углом 90 градусов.
Подход-1:
CGContextSaveGState(ctx);
CGContextTranslateCTM(ctx, 0.0, [self.view bounds].size.height);
CGContextScaleCTM(ctx, 1.0, -1.0);
CGContextConcatCTM(ctx,
CGPDFPageGetDrawingTransform(page, kCGPDFCropBox,
[self.view bounds], 0, true));
CGContextDrawPDFPage(ctx, page);
CGContextRestoreGState(ctx);
Подход-2:
CGPDFPageRef page = CGPDFDocumentGetPage(pdfdocument, PageNo+1);
if(page){
CFRetain(page);
}
CGRect pageRect =CGPDFPageGetBoxRect(page, kCGPDFMediaBox);
int angle= CGPDFPageGetRotationAngle(page);
float pdfScale = self.bounds.size.width/pageRect.size.width;
CGContextSetRGBFillColor(context, 1.0,1.0,1.0,1.0);
CGContextFillRect(context,self.bounds);
CGContextSaveGState(context);
// Flip the context so that the PDF page is rendered
// right side up.
CGContextTranslateCTM(context, 0.0, self.bounds.size.height);
CGContextScaleCTM(context, 1.0, -1.0);
// Scale the context so that the PDF page is rendered
// at the correct size for the zoom level.
CGContextScaleCTM(context, pdfScale,pdfScale);
CGContextDrawPDFPage(context, page);
CGContextRestoreGState(context);
Может кто-нибудь предложить мне решение, которое позволяет любому PDF-документу любого размера и любого угла отображаться на полноэкранном режиме на iPad в обеих ориентациях?Было бы здорово, если бы вы могли предоставить мне фрагмент кода или псевдокод.Спасибо