Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IOS UIImage图像颠倒_Ios_Uiimage_Jpeg_Draw - Fatal编程技术网

IOS UIImage图像颠倒

IOS UIImage图像颠倒,ios,uiimage,jpeg,draw,Ios,Uiimage,Jpeg,Draw,如果我画了我的图像,我用CGaffinTransform解决了这个问题 CGAffineTransform myTr = CGAffineTransformMake(1, 0, 0, -1, 0, backImage.size.height); CGContextConcatCTM(context, myTr); [backImage drawInRect:CGRectMake(cbx, -cby, backImage.size.width, backImage.size.height)]; m

如果我画了我的图像,我用CGaffinTransform解决了这个问题

CGAffineTransform myTr = CGAffineTransformMake(1, 0, 0, -1, 0, backImage.size.height);
CGContextConcatCTM(context, myTr);
[backImage drawInRect:CGRectMake(cbx, -cby, backImage.size.width, backImage.size.height)];
myTr = CGAffineTransformMake(1, 0, 0, -1, 0, backImage.size.height);
CGContextConcatCTM(context, myTr);
当我想写文件的时候 我用这个

 NSData *imageData = UIImageJPEGRepresentation(backImage, 0);  
然后图像颠倒过来
如何保存?

如果要保存UIImage,请使用:

UIGraphicsBeginImageContextWithOptions(size, isOpaque, 0);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextDrawImage(context, (CGRect){ {0,0}, origSize }, [origImage CGImage]);
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
然后做:

 NSData *imageData = UIImageJPEGRepresentation(backImage, 0);

首先制作单位矩阵

1, 0, 0
0, 1, 0
0, 0, 1

CGAffineTransform matrix = CGAffineTransformMake(1, 0, 0, 1, 0, 0);
移动绘图位置

matrix = CGAffineTransformTranslate(matrix, x, y);
水平翻转矩阵

matrix = CGAffineTransformScale(matrix, -1, 1);
垂直翻转矩阵

matrix = CGAffineTransformScale(matrix, 1, -1);
旋转矩阵

matrix = CGAffineTransformRotate(matrix, angle);
将缩放UIImage适配到UIView

matrix = CGAffineTransformScale(matrix, imageWidth/viewWidth, imageheight/viewHeight);
在上下文中启动矩阵

CGContextConcatCTM(context, matrix);
画图像

[backImage drawAtPoint:CGPointMake(0, 0)];

:)

你从哪里获得背景图像?你不能用一次转换来翻转上下文吗?我画它,就像CGContextBeginPath。。。。CGContextMove….(0,0)CGContextAddLines….CGContextFillPath…..苹果在WWDC上一再告诉我们在渲染图像时使用上述方法。