对于 iPhone,我正在使用 CGContextClipToMask 剪辑图像。
在 320x480 中,它看起来很漂亮。但在视网膜显示器/模拟器中,掩蔽看起来像是在 320x480 中完成的,然后放大到 640x960 - 它看起来有点简陋。
正在使用正确的 640x960 图像(我已标记它们以确保)。
我的代码如下。有谁知道它可能是什么?将非常感谢一些帮助。非常感谢。
-(id)makeMainImage:(UIImage*)initMaskImg initMainImage:(UIImage*)initMainImage{
//get images
UIImage *mainImg = initMainImage;
UIImage *maskImg = initMaskImg;
//new context, to draw image into
UIGraphicsBeginImageContext(mainImg.size);
CGContextRef context = UIGraphicsGetCurrentContext();
//position context
CGContextTranslateCTM(context, 0,480);
CGContextScaleCTM(context, 1.0, -1.0);//flip coordinates
//rect
CGRect imageRect = CGRectMake(0, 0, 320, 480);
//set mask
CGContextClipToMask(context, imageRect, maskImg.CGImage);
//main image
CGContextDrawImage(context, imageRect, mainImg.CGImage);
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}