如何创建和使用大于屏幕分辨率的图像?
Posted
技术标签:
【中文标题】如何创建和使用大于屏幕分辨率的图像?【英文标题】:How can I create and use an image larger than the screen resolution? 【发布时间】:2011-12-03 08:03:16 【问题描述】:我正在尝试渲染位图以保存到用户的相册中,该位图的分辨率必须高于 320x480 iPhone 屏幕(但仍在 ios 内存限制范围内)。 但是,使用此代码创建上下文:
UIGraphicsBeginImageContext(CGSizeMake(finalImgWidth, finalImgHeight));
CGContextRef ctx = UIGraphicsGetCurrentContext();
或 CG 模拟:
CGContextRef ctx = CGBitmapContextCreate(rawData, finalImgWidth, finalImgHeight, bitsPerComponent, bytesPerRow, colorSpace, kCGImageAlphaPremultipliedLast);
如果宽度或高度大于 320x480,则返回 nil 上下文。
还有其他方法可以创建高分辨率图像吗?
注意:我已经知道如何正常绘制上下文并截取屏幕截图。我需要一个可以缩放到典型照片分辨率的解决方案。
【问题讨论】:
检查这个问题:***.com/questions/9119889/… 【参考方案1】:你试过[UIImage initWithCGImage:scale:orientation:]
吗?
首先,用图像初始化一个UIImage
对象,以获取图像的几何形状。
然后计算比例因子。
【讨论】:
我正在尝试将滚动视图的内容绘制到一个图像中,所以我不确定如何从 CGImage 开始。澄清一下,我有多个 UIImageViews,它们组合起来比屏幕空间大。我正在尝试将它们渲染成一个最终的 UIImage。【参考方案2】:嗯,我想它会帮助你。在以下 Apple 示例代码中,它们展示了如何在屏幕上显示大图像。
Scrolling Apple Sample Code
【讨论】:
谢谢,但我非常熟悉如何在滚动视图中布局视图。这个问题是关于如何将布局转换为 jpg/png 文件以便在照片应用中查看。以上是关于如何创建和使用大于屏幕分辨率的图像?的主要内容,如果未能解决你的问题,请参考以下文章
如何编码我的网站,以便我的100%宽度图像根据屏幕分辨率变化调整大小?