问题描述
我想知道是否有一种方法可以捕获 UIImage
,因为它在 UIImageView
中显示为 as-is,基于其 <代码>内容模式代码>.例如,如果我将 3:4
纵横比传递给正方形 UIImageView
,并使用Aspect Fit"作为 contentMode
,那么我'希望在图像的左右部分看到白色信箱以填充正方形.那么是否可以将出现的任何内容直接保存为带有信箱的新 UIImage
?
谢谢!
您可以通过调用 CALayer 的 renderInContext:
方法捕获 UIImageView 实际显示方式的屏幕截图".
https://developer.apple.com/library/ios/documentation/graphicsimaging/reference/CALayer_class/Introduction/Introduction.html#//apple_ref/occ/instm/CALayer/renderInContext::p>
I was wondering if there is a way to capture an UIImage
as it appears as-is viewed in an UIImageView
based on its contentMode
. For example, if I pass a 3:4
aspect ratio to a square UIImageView
, and use "Aspect Fit" as the contentMode
, then I'd expect to see white letterboxes in the left and right parts the image to fill out the square. Would it then be possible to take whatever appears and save it directly as an new UIImage
with the letter boxing?
Thanks!
You can capture a "screen shot" of the way a UIImageView is actually displayed by calling CALayer's renderInContext:
method.
https://developer.apple.com/library/ios/documentation/graphicsimaging/reference/CALayer_class/Introduction/Introduction.html#//apple_ref/occ/instm/CALayer/renderInContext:
这篇关于能否根据 UIimageView 的内容模式按原样捕获 UIImage?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!