iOS图片上加标签或者水印

直接贴代码吧

UIImage+Text.h

#import <UIKit/UIKit.h>

@interface UIImage (Text)

- (UIImage*)addText:(NSString*)text1
               XPos:(int)xpos
               YPos:(int)ypos
           fontName:(NSString*)fontName
           fontSize:(CGFloat)fontSize
          fontColor:(UIColor*)fontColor;

@end

  UIImage+Text.m

#import "UIImage+Text.h"

@implementation UIImage (Text)

- (UIImage*)addText:(NSString*)text1
               XPos:(int)xpos
               YPos:(int)ypos
           fontName:(NSString*)fontName
           fontSize:(CGFloat)fontSize
          fontColor:(UIColor*)fontColor {

    int w = self.size.width;
    int h = self.size.height;

    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);

    CGContextDrawImage(context, CGRectMake(0, 0, w, h), self.CGImage);
    CGContextSetRGBFillColor(context, 0.0, 0.0, 1.0, 1);

    char *txt = (char*)[text1 cStringUsingEncoding:NSUTF8StringEncoding];
    char *font = (char*)[fontName cStringUsingEncoding:NSUTF8StringEncoding];

    CGContextSelectFont(context, font, fontSize, kCGEncodingMacRoman);
    CGContextSetTextDrawingMode(context, kCGTextFill);
    CGContextSetFillColorWithColor(context, fontColor.CGColor);
    CGContextShowTextAtPoint(context, xpos, ypos, txt, strlen(txt));

	CGImageRef imageRef = CGBitmapContextCreateImage(context);
	CGContextSetAllowsAntialiasing(context, YES);

	UIImage *result = [UIImage imageWithCGImage:imageRef];

	CGImageRelease(imageRef);
    CGContextRelease(context);
    CGColorSpaceRelease(colorSpace);

    return result;
}

@end

 调用举例

 UIImage *img = [UIImage imageNamed:@"image.jpg"];
    image.image = [img addText:text.text
                          XPos:80
                          YPos:300
                      fontName:@"Georgia-Bold"
                      fontSize:46.0
                     fontColor:[UIColor whiteColor]];

  

时间: 2024-10-13 16:05:03

iOS图片上加标签或者水印的相关文章

用MathType在图片上加公式的方法

在文档中编写内容时,用到一些专业的公式的时候我们一般都会用MathType公式编辑器,其编辑出来的公式都是嵌入在文档中的.如果我们需要把公式放在图片上呢?这个时候很多的人都不知道怎么办呢, 其实用MathType公式编辑器也是可以做到的.下面我们就针对这个问题来给大家介绍介绍用MathType在图片上加公式的方法? 具体操作步骤如下: 1.打开MathType公式编辑器,进入到工作界面,利用MathType中的模板与符号进行相关的公式编辑. 2.编辑好公式后,将之复制粘贴到Word文档中.然后右

C#图像处理(1):在图片上加文字和改变文字的方向

C#在图片上加文字,代码如下: 1 /// <summary> 2 /// 图片上方加文字,文字将会被180度反转 3 /// </summary> 4 /// <param name="Img">待处理图片</param> 5 /// <param name="WriteString">写入的字符串</param> 6 /// <param name="UpMargin&quo

java:给图片上加水印

import java.awt.Color; import java.awt.Graphics2D; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.FileOutputStream; import javax.swing.ImageIcon; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.codec.jpeg.J

图片上传 并生成水印

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace MySystemManager.Utility 7 { 8 public class ImageTextAndPicter 9 { 10 /// <summary> 11 /// 生成缩略图 12 /// </summary> 13 /// <param name

iOS图片上传1

这几天在搞iphone上面一个应用的开发,里面有需要摄像头/相册编程和图片上传的问题,在这里总结一下. [部分知识] iphone中图像通常存储在4个地方[相册.应用程序包.沙盒.Internet],通过这4个源,我们就可以存取应用图片. 相册  iphone的相册包含摄像头胶卷+用户计算机同步的部分照片.用户可以通过UIImagePickerController类提供的交互对话框来从相册中选择图像.但是,注意:相册中的图片机器路径无法直接从应用程序访问,只能通过终端用户去选择和使用相册图片 应

IOS图片上添加水印文字(微博上图片上得水印文字)

建一个类目(不知道怎么建的可以去百度一下) UIImage的类目 类目的.h文件  文件名为UIImage+watermark #import <UIKit/UIKit.h> @interface UIImage (watermark) //定义一个方法 - (UIImage *)watermarkImage:(NSString *)text; @end .m文件的实现 #import "UIImage+watermark.h" @implementation UIImag

iOS Safari 上加载的最大的图片尺寸

做WAP端项目时发现, 写css代码显示图片, 却显示不出.或用canvas 来加载图片的某一部分的时候显示不出, 代码如下: background: url() no-repeat -1000px -2000px; width: 3000px; height: 4000px; 经过网上google 搜索( sprite sheet max size )发现如下, 所以对于一般的图片的总面积不要超过: 2048 x 2048 = 4194304 的值, 单个长或者宽可以超过 2048. iPho

ios 图片旋转放大加移动

今天这更有点迟了,让大家久等了.哈哈,今天好玩的又来了,我们来玩一玩,怎么把一张照片,旋转放大加移动.很期待吧,那么事不宜迟我们来实现它们. 说到这些功能,在ios中实现无非就是手势触摸功能,加上计算偏移,算出坐标.就ok了.非常的简单. 我们新建一个工程 #import "ViewController.h" @interface ViewController ()<UIGestureRecognizerDelegate> { UIImageView *_imageView

iOS图片上传及压缩

提到从摄像头/相册获取图片是面向终端用户的,由用户去浏览并选择图片为程序使用.在这里,我们需要过UIImagePickerController类来和用户交互. 使用UIImagePickerController和用户交互,我们需要实现2个协议<UIImagePickerControllerDelegate,UINavigationControllerDelegate>. ? 代码如下 复制代码 #pragma mark 从用户相册获取活动图片 - (void)pickImageFromAlbu