图片水印(微博图片上面的个人签名)

- (void)viewDidLoad

{

[super viewDidLoad];

// 1.返回水印图片

UIImage *newImage = [UIImage waterImageWithBg:@"scene" logo:@"logo"];

// 2.显示图片

self.iconView.image = newImage;

}

- (void)testWater

{

UIImage *bgImage = [UIImage imageNamed:@"scene"];

// 上小文 : 基于位图(bitmap) ,  所有的东西需要绘制到一张新的图片上去

// 1.创建一个基于位图的上下文(开启一个基于位图的上下文)

// size : 新图片的尺寸

// opaque : YES : 不透明,  NO : 透明

// 这行代码过后.就相当于常见一张新的bitmap,也就是新的UIImage对象

UIGraphicsBeginImageContextWithOptions(bgImage.size, NO, 0.0);

// 2.画背景

[bgImage drawInRect:CGRectMake(0, 0, bgImage.size.width, bgImage.size.height)];

// 3.画右下角的水印

UIImage *waterImage = [UIImage imageNamed:@"logo"];

CGFloat scale = 0.2;

CGFloat margin = 5;

CGFloat waterW = waterImage.size.width * scale;

CGFloat waterH = waterImage.size.height * scale;

CGFloat waterX = bgImage.size.width - waterW - margin;

CGFloat waterY = bgImage.size.height - waterH - margin;

[waterImage drawInRect:CGRectMake(waterX, waterY, waterW, waterH)];

// 4.从上下文中取得制作完毕的UIImage对象

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

// 5.结束上下文

UIGraphicsEndImageContext();

// 6.显示到UIImageView

self.iconView.image = newImage;

// 7.将image对象压缩为PNG格式的二进制数据

NSData *data = UIImagePNGRepresentation(newImage);

//    UIImageJPEGRepresentation(<#UIImage *image#>, <#CGFloat compressionQuality#>)

// 8.写入文件

NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"new.png"];

[data writeToFile:path atomically:YES];

}

给image添加一类目

/**

*  打水印

*返回带有水印的图片

*  @param bg   背景图片

*  @param logo 右下角的水印图片

*/

+ (instancetype)waterImageWithBg:(NSString *)bg logo:(NSString *)logo

{

UIImage *bgImage = [UIImage imageNamed:bg];

// 1.创建一个基于位图的上下文(开启一个基于位图的上下文)

UIGraphicsBeginImageContextWithOptions(bgImage.size, NO, 0.0);

// 2.画背景

[bgImage drawInRect:CGRectMake(0, 0, bgImage.size.width, bgImage.size.height)];

// 3.画右下角的水印

UIImage *waterImage = [UIImage imageNamed:logo];

CGFloat scale = 0.2;

CGFloat margin = 5;

CGFloat waterW = waterImage.size.width * scale;

CGFloat waterH = waterImage.size.height * scale;

CGFloat waterX = bgImage.size.width - waterW - margin;

CGFloat waterY = bgImage.size.height - waterH - margin;

[waterImage drawInRect:CGRectMake(waterX, waterY, waterW, waterH)];

// 4.从上下文中取得制作完毕的UIImage对象

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

// 5.结束上下文

UIGraphicsEndImageContext();

return newImage;

}

时间: 2024-11-03 22:03:09

图片水印(微博图片上面的个人签名)的相关文章

iOS 图片水印、图片合成文字或图片实现

这个需求可能有时候会碰到,比如自己的照片加版权,打水印等 网上的方法,有不少感觉不全对,或者需求不是特全,这里我总结了3种场景下的需求: 1.本地图片合成文字 2.本地图片合成图片 3.网络图片先下载再合成图片 效果图: 这里的合成的size大小,我都是随便写的,没特意计算,大家可以按实际需求自定义. 代码部分: /** 图片合成文字 @param img <#img description#> @param logoText <#logoText description#> @r

图片水印和图片验证码

两者都需要引入命名空间:using System.Drawing; 一.图片水印 前台Photoshuiyin.aspx代码: <div> <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="Button1" runat="server" Text="上传" /><br /> &

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

Webform 文件上传、 C#加图片水印 、 图片验证码

文件上传:要使用控件 - FileUpload 1.如何判断是否选中文件? FileUpload.FileName - 选中文件的文件名,如果长度不大于0,那么说明没选中任何文件 js - f.value.length 2.如何保存到服务器上? FileUpload.SaveAs("绝对路径"); 3.如何获得绝对路径? 先编写相对路径 - "UpLoads/abc.txt" 将相对路径映射成绝对路径 - Server.MapPath("UpLoads/a

asp.net生成缩略图、文字图片水印

1 /// <summary> 2 /// 会产生graphics异常的PixelFormat 3 /// </summary> 4 private static PixelFormat[] indexedPixelFormats = { PixelFormat.Undefined, PixelFormat.DontCare, 5 PixelFormat.Format16bppArgb1555, PixelFormat.Format1bppIndexed, PixelFormat.

.NET图片操作类,包含图片格式转换、图片缩放、 文字水印、图片水印、路径转换

using System;using System.Collections.Generic;using System.Text;using System.IO;using System.Drawing.Imaging;using System.Drawing;using System.Web;namespace ZC.Utils{  public  static class ImageHelper  { #region 图片格式转换      /// <summary>      /// 图片

图片操作,图片上放个水印图片

知识点: 1.先创建一个Image,再创建一个水印图片Image,再创建画布Graphic 问题: 图片上放置一个水印图片 解决方案 1 <%@ WebHandler Language="C#" Class="ShuiYin" %> 2 3 using System; 4 using System.Web; 5 using System.Drawing; 6 7 public class ShuiYin : IHttpHandler { 8 9 publ

iOS 给github上面的readme.md 添加图片

很多github上面的代码都带有用于说明的图片或者截图,下面说一下给readme.md 添加图片的方法 这是我的githhub上面添加的图片. 首先呢 将图片放在要上传的仓库里面,最后 push 到 github 上. 然后就能获得这个图片的地址 然后在编辑readme ![image]{(https://github.com/ButBueatiful/dotvim/raw/master/screenshots/vim-screenshot.jpg)} 将大括号里面替换为你的图片地址,就可以给r

如何把图片上面的文字转换成word-OCR文字识别软件

解析如何把图片上面的文字转换成word 有没有小伙伴们为百度文库里面的资源下载需要下载券感到坑爹,特别是现下下载资源紧缺,各个网站配合网打的行动,导致很多优秀网站现在没法下载资源,尤其是新浪爱问共享资料,这么优秀的合作小伙伴就这么消失了,现在我只能依靠百度文库来下载资料了.可下载券的数目有限,现在都基本上用完了,想要的资料都必须要下载券,有些资料只能过过眼瘾,写论文的时候碰见好的资源,直接复制过来的文字格式又乱七八糟,重新整理让人很厌烦,基本上没弄几次我就放弃了.后来了解到有那种文字识别的软件可