我以编程方式为 xcode 中的滚动视图截取了屏幕截图。但我面临的问题是,我需要截取屏幕截图以及其中的当前日期。请帮我。
问问题
203 次
3 回答
0
这是您可以将文本添加到图像的方法。用日期作为字符串试试这个。截取屏幕截图后,将其传递给以下方法并使用输出图像。为方便起见,修改以下方法。
//Add text to UIImage
-(UIImage *)addText:(UIImage *)img text:(NSString *)text1{
int w = img.size.width;
int h = img.size.height;
//lon = h - lon;
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);
CGContextDrawImage(context, CGRectMake(0, 0, w, h), img.CGImage);
CGContextSetRGBFillColor(context, 0.0, 0.0, 1.0, 1);
char* text = (char *)[text1 cStringUsingEncoding:NSASCIIStringEncoding];// "05/05/09";
CGContextSelectFont(context, "Arial", 18, kCGEncodingMacRoman);
CGContextSetTextDrawingMode(context, kCGTextFill);
CGContextSetRGBFillColor(context, 255, 255, 255, 1);
//rotate text
CGContextSetTextMatrix(context, CGAffineTransformMakeRotation( -M_PI/4 ));
CGContextShowTextAtPoint(context, 4, 52, text, strlen(text));
CGImageRef imageMasked = CGBitmapContextCreateImage(context);
CGContextRelease(context);
CGColorSpaceRelease(colorSpace);
return [UIImage imageWithCGImage:imageMasked];
}
于 2012-10-11T06:54:19.127 回答
0
截屏前放一个当前日期标签,截屏后去掉。
于 2012-10-11T06:52:07.303 回答
0
或者您可以使用 EXIF 元数据来记录日期(它可能已经存在)。不过,我想图像中的嵌入日期更难伪造。
于 2012-10-11T08:00:34.630 回答