八 、Quartz 2D 图片水印

首先上图(共3张,原图,水印图片,原图添加完水印图片后的图片)

原图:

水印图片(背景是透明的,是一张32x32的正方形图片)

然后,就是添加完,水印图片的图片了

- (void)viewDidLoad {
    [super viewDidLoad];

    // 加载背景图片
    UIImage *imgBg = [UIImage imageNamed:@"001"];
    // 创建bitmap图形上下文
    UIGraphicsBeginImageContextWithOptions(CGSizeMake(300, 400), NO, 0);
    // 渲染
    [imgBg drawInRect:CGRectMake(0, 0, 200, 380)];

    // 加载水印图片
    UIImage *logo = [UIImage imageNamed:@"logo"];
    // 渲染
    [logo drawInRect:CGRectMake(0, 0, 50, 50)];

    // 获取bitmap图形上下文中渲染好的图片
    UIImage *img = UIGraphicsGetImageFromCurrentImageContext();

    // 将图片专为data,并写入到mac上,便于查看
    NSData *data = UIImagePNGRepresentation(img);
    [data writeToFile:@"/Users/你电脑的名字/Desktop/hhh.png" atomically:YES];

}
时间: 2024-10-29 19:09:40

八 、Quartz 2D 图片水印的相关文章

iOS 开发中利用 Quartz 2D 获得圆角图片

背景: 现在社交软件中,圆角的图片可以说是泛滥了,原来方方正正的 QQ 头像,都被世俗磨平了... 那么怎么将一张图片加工成圆角呢? 你可能会说:"找美工啊!" 对!偷懒必备口诀之 "找美工!" 但是,如果用户自己要上传自定义头像呢? 还是一要程序处理嘛! 下面我们利用强大的Quartz 2D 来自己加工图片 直接上代码: 代码: 我是给 UIImage 增加了一个分类,以后直接各种用 + (instancetype)imageWithIcon:(NSString

iOS开发——图层OC篇&Quartz 2D各种绘制实例

Quartz 2D各种绘制实例 首先说一下,本篇文章只是介绍怎么使用Quartz 2D绘制一些常用的图像效果,关于Quartz和其他相关技术请查看笔者之前写的完整版(Quartz 2D详解) 一:画线 1 // 1.获取跟当前View相关联的layer上下文(画板) 2 // 总结:目前获取的所有上下文都是以UIGraphics开头 3 // CGContextRef:上下文类型 4 // CG:CoreGraphics Ref:引用 5 CGContextRef ctx = UIGraphic

iOS开发——图形编程OC篇&(六)Quartz 2D高级使用(二)

Quartz 2D高级使用 一.绘图路径 A.简单说明 在画线的时候,方法的内部默认创建一个path.它把路径都放到了path里面去. 1.创建路径  cgmutablepathref 调用该方法相当于创建了一个路径,这个路径用来保存绘图信息. 2.把绘图信息添加到路径里边. 以前的方法是点的位置添加到ctx(图形上下文信息)中,ctx 默认会在内部创建一个path用来保存绘图信息. 在图形上下文中有一块存储空间专门用来存储绘图信息,其实这块空间就是CGMutablePathRef. 3.把路径

Quartz2D复习(一)--- 基础知识 / 绘制线段圆弧 / 图片水印 / 截图

1.Quartz 2D是一个二维绘图引擎,同时支持ios和Mac系统: Quart2D的API是纯C语言的,API来自于Core  Graphics框架: 2.Quartz 2D可以绘制图形(线段/三角形/矩形/圆和弧).绘制文字.绘制和生成图片.读取/生成pdf.截图/裁剪图片.自定义UI控件等 3.对于界面复杂且个性化的UI,普通的UI控件无法实现,而Quartz2D技术却可以通过自定义UI控件来实现.其实,ios中大部分控件的内容都是通过Quart2D画出来的 4.图形上下文(Graphi

iOS 开发 Quartz 2D+ UIBezierPath绘图大全详解

Quartz 2D 使用大全结构图 UIKIt UIBezierPath Core Graphics OpenGL ES Quartz2D的区别和联系 UIKIt:UIKit中的控件都是基于Core Graphics实现的 UIBezierPath:UIBezierPath属于UIKit,它是苹果对复杂的Core Graphics进行的封装,方便我们用OC语言进行简单的绘图 Core Graphics:是一套基于C语言的API,支持向量图形,线.形状.图案.路径.剃度.位图图像和pdf 内容的绘

Quartz 2D 的一些使用

Quartz 2D是一个绘图框架,最近看了一下它的官方文档以及提供的的demo.看着这些资料自己做了一些小结. 1.线段的绘制 (绘制一条线段) //获取图像上下文 CGContextRef context = UIGraphicsGetCurrentContext(); //设置线条颜色 CGContextSetRGBStrokeColor(context, .5, .5, .5, 1); //设置线条宽度 CGContextSetLineWidth(context, 1); //设置起点 C

Quartz 2D编程指南(7) - 阴影(Shadows)

阴影是绘制在一个图形对象下的且有一定偏移的图片,它用于模拟光源照射到图形对象上所形成的阴影效果,如果7-1所示.文本也可以有阴影.阴影可以让一幅图像看上去是立体的或者是浮动的. 阴影有三个属性: 1.x偏移值,用于指定阴影相对于图片在水平方向上的偏移值. 2.y偏移值,用于指定阴影相对于图片在竖直方向上的偏移值. 3.模糊(blur)值,用于指定图像是有一个硬边(hard edge,如图7-2左边图片所示),还是一个漫射边(diffuse edge,如图7-1右边图片所示) 本章将描述阴影是如何

iOS开发——图形编程OC篇&(三)Quartz 2D绘图

绘图 一.简单说明 图形上下文(Graphics Context):是一个CGContextRef类型的数据 图形上下文的作用:保存绘图信息.绘图状态 决定绘制的输出目标(绘制到什么地方去?)(输出目标可以是PDF文件.Bitmap或者显示器的窗口上) 相同的一套绘图序列,指定不同的Graphics Context,就可将相同的图像绘制到不同的目标上. Quartz2D提供了以下几种类型的Graphics Context: Bitmap Graphics Context PDF Graphics

iOS开发——图形编程OC篇&(一)Quartz 2D介绍

Quartz 2D介绍 一.什么是Quartz2D Quartz 2D是?个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 二.Quartz2D在iOS开发中的价值 为了便于搭建美观的UI界面,iOS提供了UIKit框架,??有各种各样的UI控件 UILabel:显?文字 UIImageView:显示图片 UIButton:同时显示图片和?字