我正在尝试在 iPhone 应用程序中自动显示基本透明的 png 的有用部分。图片可能是 500x500,但它大部分是透明的。该图像中的某处是一个不透明的部分,我想尽可能大地向用户显示,因此我想从每一侧尽可能多地修剪(或通过在图像中拉伸(stretch)和移动使其看起来那样) UIImageView。有什么想法吗?
最佳答案
使用 Quartz 将图像转换为位图,检查 alpha channel 位以找到图像非透明部分的边界。
这是一份 Apple 技术说明:Getting the pixel data from a CGImage object .您可以通过以下方式从 UIImage 获取 CIImage:
CGImageRef imageRef = [uiImage CGImage];
关于iOS:如何将图像修剪到有用的部分(删除透明边框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7625089/