美文网首页图像处理
iOS中的图片处理方案

iOS中的图片处理方案

作者: She_Jeremy | 来源:发表于2016-05-07 23:55 被阅读387次

    关于iOS开发中,遇到了图像处理的相关问题。Apple提供了相关类库来支持图片处理,Core Image, Core Graphic,以及第三方类库GPUImage;

    以下总结一下自己开发过程中遇到过的关于这三个类库相关的例子。


    第一种:

    Core Graphics是Apple基于Quartz 2D绘图引擎的绘图API。

    1.涂鸦和折线图绘制。

    在实现涂鸦和绘制折线图时,需要重写drawrect方法,其实这个时候已经接触过了Core Graphics.在-drawRect:函数中,可以直接调用UIGraphicsGetCurrentContext()来使用context (CGContextRef)。系统被设置为你可以直接在视图上绘制被渲染的图像。

    2.在给图片做圆角处理或者拉伸压缩图片时,在-drawRect:函数外,通常没有图形context可用。可以通过CGContextCreate()创建,或者你可以使用UIGraphicsBeginImageContext()和UIGraphicsGetCurrentContext()抓取创建的context。

    图片圆角处理:

    拉伸图片:

    3.给图片加水印,处理图片色调等。


    第二种:

    Core Image+Core Graphic 

    是Apple的图像处理的解决方案。它避免了所有底层的像素操作方法,转而使用高级别的滤镜替代了它们。

    Core Image最好的部分在于它对比操作原始像素或Core Graphics有着极好的性能。这个库使用CPU和GPU混合处理提供接近实时的性能。

    1.生成二维码

    2.调色加水印

    第三种:GPUImage

    GPUImage是一个活跃的iOS上基于GPU的图像处理库。其隐藏了在iOS中所有需要使用OpenGL ES的复杂的代码,并用极其简单的接口以很快的速度处理图像。GPUImage的性能甚至在很多时候击败了Core Image,但是Core Image仍然在很多函数中有优势。


    相关文章

      网友评论

        本文标题:iOS中的图片处理方案

        本文链接:https://www.haomeiwen.com/subject/audjlttx.html