我在2835像素的UIScrollView中有一个2835像素的PDF文件。 要显示PDF,我使用CATiledLayer。
我的问题是,当我缩小scrollView(比例低于1)时,PDF质量变得非常糟糕。有什么奇怪的,当我放大scrollView(比例大于1)时,PDF看起来很棒。 我放大的越多(比例* 10)质量越好。
如何更改代码以使低档和高档质量都很好?
// Draw the CGPDFPageRef into the layer at the correct scale.
-(void)drawLayer:(CALayer*)layer inContext:(CGContextRef)context
{
// First fill the background with white.
//CGContextSetRGBFillColor(context, 1.0,1.0,1.0,1.0);
CGContextFillRect(context,CGRectMake(0, 0, 2835,1417));
CGContextSetInterpolationQuality(context, kCGInterpolationHigh);
CGContextSaveGState(context);
// Flip the context so that the PDF page is rendered
// right side up.
CGContextTranslateCTM(context, 0.0, 1417);
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, myScale,myScale);
CGContextDrawPDFPage(context, pdfPage);
CGContextRestoreGState(context);
}
答案 0 :(得分:0)
我将levelsOfDetail和levelsOfDetailBias都设置为10.这会将所有缩放转移到upaclaing。现在我将levelsOfDetail更改为10并将levelsOfDetailBias更改为7并且一切正常。