iOS中图片水印的制作

// .获取上下文,之前的上下文都是在view的drawRect方法中获取(跟View相关联的上下文layer上下文)

// 目前我们需要绘制图片到新的图片上,因此需要用到位图上下文

// 怎么获取位图上下文,注意位图上下文的获取方式跟layer上下文不一样。位图上下文需要我们手动创建。

// 开启一个位图上下文,注意位图上下文跟view无关联,所以不需要在drawRect.

- (void)viewDidLoad {

[super viewDidLoad];

// 加载图片

UIImage *image = [UIImage imageNamed:@"小黄人"];

// size:位图上下文的尺寸(新图片的尺寸)

// opaque: 不透明度 YES:不透明 NO:透明,通常我们一般都弄透明的上下文

// scale:通常不需要缩放上下文,取值为0,表示不缩放

//0.创建位图上下文

UIGraphicsBeginImageContextWithOptions(image.size, NO, 0);

// 1.绘制原生的图片

[image drawAtPoint:CGPointZero];

// 2.给原生的图片添加文字

NSString *str = @"小码哥";

// 创建字典属性

NSMutableDictionary *dict = [NSMutableDictionary dictionary];

dict[NSForegroundColorAttributeName] = [UIColor redColor];

dict[NSFontAttributeName] = [UIFont systemFontOfSize:20];

[str drawAtPoint:CGPointMake(200, 528) withAttributes:dict];

// 3.生成一张图片给我们,从上下文中获取图片

UIImage *imageWater = UIGraphicsGetImageFromCurrentImageContext();

// 4.关闭上下文

UIGraphicsEndImageContext();

_imageView.image = imageWater;

}

时间: 2024-10-09 20:55:14

iOS中图片水印的制作的相关文章

IOS中图片加载的一些注意点

图片的加载: [UIImage imageNamed:@"home"] //加载 png图片 在ios中获取一张图片只需要写图片名即可 不需要写后缀 默认都是加载.png的图片 但是因为屏幕尺寸不同 所有我们图片在加载时 系统也会做相应的处理 那么系统会如何处理呢? 下面做了讲解: 加入我们现在有这样三张图片  分别表示在不同屏幕尺寸在现实的图片 home.png   3.5 inch 非retina屏幕 [email protected] retina屏幕 [email protec

iOS UIImage 图片水印,图片裁剪,屏幕截图,背景平铺

图片水印功能 1 #import "UIImage+ZR.h" 2 3 @implementation UIImage (ZR) 4 + (instancetype)waterImageWithBg:(NSString *)bg logo:(NSString *)logo 5 { 6 UIImage *bgImage = [UIImage imageNamed:bg]; 7 8 // 1.创建一个基于位图的上下文(开启一个基于位图的上下文) 9 UIGraphicsBeginImage

ios中图片拉伸用法

- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight; Creates and returns a new image object with the specified cap values. Deprecation StatementDeprecated. Use the resizableImageWithCapInsets: in

ios中图片选择及上传

本Demo实现三个功能:图片选择,图片处理,图片上传 一.图片选择 简单封装了一个图片选择类fcimagePickerHelper,集成ActionSheet和ImagePicker功能,把他们的代理遵循和实现都封装起来,对外提供一个代理方法,把图片传递出去即可,简化外界的使用,在需要进行图片选择的地方,做以下操作: 导入此头文件 , #import "FCImageHelper.h" 遵循代理, <FCImageHelperDelegate> 在触发图片选择的方法中进行初

iOS中静态库的制作——使用创建静态库项目的方式创建静态库

最近公司要求写SDK,我就想把它弄成静态库的方式 我的理解:所谓静态库,就是把所有的.m文件打包成一个.a文件,这样使分享代码的时候更加简洁,重要的是别人也不会看到你.m文件中的傻B代码了 环境是Xcode6.2 iOS8.2 首先,创建一个静态库项目 删掉Xcode自动创建的同名文件,然后导入你需要做成静态库的文件 在这里我导入一个简单的输出字符串的文件 然后选择运行的设备进行编译,这里我有不理解的地方:在Xcode6.2中,当我首先选择模拟器,然后编译文件的时候,.a文件依然是红色的,说明静

iOS中图片与视频一次性多选

http://www.cnblogs.com/v2m_/archive/2012/12/21/2827324.html 一.使用系统的Assets Library Framework这个是用来访问Photos程序中的图片和视频的库.其中几个类解释如下 ALAsset ->包含一个图片或视频的各种信息 ALAssetRepresentation ->得到ALAsset的各种信息 ALAssetsFilter ->用来从一个ALAssetsGroup中检索ALAssets ALAssetsG

iOS中图片动画的三种模式及基本的代码实现

-(void)play { //第一种图片动画模式 头尾方式 //头尾方式 [UIView beginAnimations:nil context:nil];//动画开始 [UIView setAnimationDuration:10];//设置动画播放时长 /*内部写图片处理*/ [UIView commitAnimations];//提交动画 //第二种方式:图片动画结束处理模式 [UIView animateWithDuration:10 animations:^{ /*图片处理操作*/

ios中图片拉伸的几种方式

1. UIImageView整体拉伸 UIImageView-contentMode typedef NS_ENUM(NSInteger, UIViewContentMode) {     UIViewContentModeScaleToFill,         // 默认 拉伸(会变形)     UIViewContentModeScaleAspectFit,      // 等比例拉伸     UIViewContentModeScaleAspectFill,     // 等比例填充  

iOS 中使用.9图

背景 .9图来源于Android.为了设计出一套图,兼容Android和iOS,使用.9图的方式来对图片进行拉伸以适应不同的屏幕.在iOS中没有.9图的概念,只能先了解Android的.9图再进行模拟Android的方法. 什么是.9图片 即图片后缀名前有.9的图片,如pic.9.png.pic1.9.jgp,诸如此类的图片就称为.9图片.且在原始图片四周添加了一个像素,在这一个像素上用黑线标识出相关的区域. .9图片的作用 .9图片的作用是在图片拉伸的时候特定的区域不会发生图片失真,特定的区域