gpt4 book ai didi

ios - 带有 iOS GLES 的 UIImageView

转载 作者:行者123 更新时间:2023-11-29 11:13:07 25 4
gpt4 key购买 nike

我是 OpenGL 的新手,正在寻找任何用于在屏幕上绘制简单 UIImage 的代码片段 - 与 UIImageView 完全一样。

互联网上到处都是这样的代码示例,但它们都为图片添加了一点平滑效果,当(在我的代码中)我在 上添加了 OpenGLView UIImageView,用户可以看到这一刻。 UIImage 上的文本变得更加平滑。

最佳答案

对于现有解决方案,您可以使用我的开源 GPUImage 中的 GPUImageView框架,再加上 GPUImagePicture 来拉入您的 UIImage。执行此显示的代码类似于以下内容:

UIImage *inputImage = [UIImage imageNamed:@"image.png"];
GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];
GPUImageView *imageView = (GPUImageView *)self.view;
[stillImageSource addTarget:imageView];
[stillImageSource processImage];

这个框架的重点是执行基于 OpenGL ES 的图像和视频处理,因此这是您可以使用该框架做的最基本的事情。可以在从图像到 View 的链中添加过滤器和其他类型的图像处理操作。

这个基于 OpenGL ES 的 ImageView 具有三种不同的填充模式,可以通过 fillMode 属性进行设置,但默认情况下它会拉伸(stretch)图像以填充 View 。您应该能够使用此属性来匹配 UIImageView 的填充模式。

您可以检查 GPUImageView 的代码,了解我如何获取纹理并根据这些不同的填充模式和可能的图像旋转显示它。基本上,我只是使用两个三角形建立一个矩形,然后使用直通着色器在该矩形内显示纹理,这几乎是其他人在这种情况下所做的。

您看到的平滑差异可能是由于 GPU 上纹理过滤的方式与 Core Graphics 缩小图像的方式不同,如果您将图像放置在这些 View 中,而这些 View 的大小与它们的 View 不同显示在.

关于ios - 带有 iOS GLES 的 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10606473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com