• CGImageRef 与 UIImage


    简单的说,CGImageRef是与位图打交道的

    先来看一段e文


    翻译一下:

        1)NSImage 是一个抽象类,它能代表各种图像类型,同时也能定义各种图像。通常,大家如果对图像的类型不在意的话,NSImage是很好用的。同时,他也是Appkit唯一能接受的图像类,至少到目前为止是这样。(Appkit , UIKit 是iphone里界面,UI的库)

        2)CGImage只能代表bitmaps。如果你像直接和bitmap 数据打交道,CGImage是很好的选择。对CGImage的操作都在Core graphics中,诸如混合(blend)和遮罩(masking)需要CGImageRef。 CGImageRef 能用来创建NSBitmapImageRep, 它能添加到NSImage。

        3)我认为官方文档对于CIImage的定义最为准确:

        尽管 CIImage 对象中包含了与它相关的图像数据,它并不是一个图像。你可以把 CIImage 对象看作一个图像“处方”。一个 CIImage 对象中包含了生成一个图像的所需要的所有信息,不过核心绘图系统在没有得到明确指令的情况下是不会绘制这个图像的。“懒惰评估”机制 (请参考“过滤器客户和过滤器创建者”) 允许核心绘图系统尽可能高效的运行

        基于Mac OS X的GPU优化图像滤镜各种算法,要求使用CIImages。但是,诸如 CGImageRefs,他们能转换为 NSBitmapImageReps

    两者只见互相转换得方法

    1. CGImageRef转换成UIImage 

    CGImageRef iOffscreen = CGBitmapContextCreateImage(context);

    UIImage* image = [UIImage imageWithCGImage: iOffscreen]; 

    2.UIImage转换成CGImageRef 

    UIImage *loadImage=[UIImage imageNamed:@"comicsplash.png"];

    CGImageRef cgimage=loadImage.CGImage;

    大部分转载于http://blog.csdn.net/linzhiji/article/details/6738462,略有修改

  • 相关阅读:
    matplotlib 入门之Sample plots in Matplotlib
    matplotlib 入门之Pyplot tutorial
    Django Admin Cookbook-本书中使用的模型
    Django Admin Cookbook-简介
    Django Admin Cookbook 中文版
    Selenium向iframe富文本框输入内容
    Pytest权威教程-更改标准(Python)测试发现
    Pytest权威教程25-配置
    Pytest权威教程24-Pytest导入机制及系统路径
    Flask一种通用视图,增删改查RESTful API的设计
  • 原文地址:https://www.cnblogs.com/xiaochaozi/p/3681252.html
Copyright © 2020-2023  润新知