我认为这将是相当直截了当的,但似乎并非如此。
我在尝试裁剪这样的图像时注意到的事情:
#import "C4Workspace.h"
@implementation C4WorkSpace{
C4Image *image;
C4Image *copiedImage;
}
-(void)setup {
image=[C4Image imageNamed:@"C4Sky.png"];
//image.width=200;
image.origin=CGPointMake(0, 20);
C4Log(@" image width %f", image.width);
//[self.canvas addImage:image];
copiedImage=[C4Image imageWithImage:image];
[copiedImage crop:CGRectMake(50, 0, 200, 200)];
copiedImage.origin=CGPointMake(0, 220);
[self.canvas addObjects:@[image, copiedImage]];
C4Log(@"copied image width %f", copiedImage.width);
}
@end
CGRectMake 的原点(x 和 y 坐标)不是从左上角开始,而是从左下角开始,然后高度上升而不是下降。
裁剪图像的大小实际上与原始图像的大小相同。我想图像并没有真正被裁剪,而只是被蒙版?
不同的比例在上面的例子中我实际上没有指定任何比例,但是原始图像和裁剪图像没有相同的比例。为什么?
我实际上想知道这个功能是如何有用的......似乎进入原始图像数据以裁剪图像的某些部分实际上更有意义,而不是不得不猜测哪个区域已经裁剪/蒙版,以便我知道图像实际保留在哪里......
或者也许我做错了什么?(我找不到任何关于裁剪图像的示例,所以这就是我所做的......)