Ios 什么是UIKit&x27的CoreGraphics等价物;什么是contentScaleFactor?

Ios 什么是UIKit&x27的CoreGraphics等价物;什么是contentScaleFactor?,ios,xcode,core-graphics,quartz-graphics,quartz-2d,Ios,Xcode,Core Graphics,Quartz Graphics,Quartz 2d,什么是UIKit的contentScaleFactor的CoreGraphics等价物 我正在使用UKit PDF创建函数创建PDF,该函数允许渲染到PDF上下文。但是,我需要降低生成的PDF的质量。我们已经使用UIKit的contentScaleFactor属性实现了这一点(渲染到UIView),该属性是图形空间和像素空间之间转换的因素。然而,我需要在没有UIView的情况下将这个魔法和巫毒应用于CGContextRef,但我不知道该怎么做 任何关于如何降低PDF质量的其他建议都将不胜感激 谢

什么是UIKit的contentScaleFactor的CoreGraphics等价物

我正在使用UKit PDF创建函数创建PDF,该函数允许渲染到PDF上下文。但是,我需要降低生成的PDF的质量。我们已经使用UIKit的contentScaleFactor属性实现了这一点(渲染到UIView),该属性是图形空间和像素空间之间转换的因素。然而,我需要在没有UIView的情况下将这个魔法和巫毒应用于CGContextRef,但我不知道该怎么做

任何关于如何降低PDF质量的其他建议都将不胜感激

谢谢


编辑:我的输入是一个PDF文档。我正在使用CoreGraphics从另一个PDF重新创建PDF,但过程可能会很慢,具体取决于某些PDF页面的图形强度。

创建上下文时,请指定宽度和高度,这是原始PDF的一小部分:

    CGContextRef context = CGBitmapContextCreate(NULL, 
                                    pdfSize.width / 4, 
                                    pdfSize.height/4, 
                                    8,                      
                                    0,   
                                    colorSpace, 
                                    kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
然后在这里绘制,并根据需要缩小比例。然后你可以做:

CGImageRef cgImage = CGBitmapContextCreateImage(ctx);
UIImage *reflectionImage = [UIImage imageWithCGImage:cgImage scale:4.0 orientation:up];

或者你可以在新的放大背景下绘制cgImage图像,这取决于你正在尝试做什么。

我的问题是我正在将一个PDF绘制成另一个PDF(基本上,在CoreGraphics中重新创建它)。换句话说,PDF是我的输入;不是图像。您提到了
CGContext
,所以我以为您在使用
CGContextDrawPDFPage
从pdf页面创建图像。。。一旦你有了网页的位图表示,你就可以创建一个新的PDF。。。也许你可以澄清一下你到底想做什么/如何做