zoukankan      html  css  js  c++  java
  • 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]];
    

      

  • 相关阅读:
    好久不见(致win7)
    mysql update
    两个日期相差的天数
    java 文件指针复位
    shell编程: 获得目录下(包括子目录)所有文件名,路径和文件大小
    爬虫(2)
    爬虫
    eclipse 创建dynamic web project不能运行
    JSP Servlet之间交换数据
    html5视频播放插件
  • 原文地址:https://www.cnblogs.com/wxm5558/p/6160946.html
Copyright © 2011-2022 走看看