CGAffineTransformConcatの疑問
ViewControllerのviewDidLoadメソッドでラベル(UILabel)をビューに追加し、そのラベルに対して、アフィン変換で移動と回転を適用しました。
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
CGSize size = CGSizeMake(130, 30);
NSString* text = @"こんにちは世界1";
UILabel* label1 = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, size.width, size.height)];
label1.text = text;
[self.view addSubview:label1];
UILabel* label2 = [[UILabel alloc] initWithFrame:CGRectMake(0, 150, size.width, size.height)];
label2.text = @"こんにちは世界2";
[self.view addSubview:label2];
label2.transform = CGAffineTransformConcat(CGAffineTransformMakeRotation(90 * M_PI / 180),
CGAffineTransformMakeTranslation(30, 0));
UILabel* label3 = [[UILabel alloc] initWithFrame:CGRectMake(0, 300, size.width, size.height)];
label3.text = @"こんにちは世界3";
[self.view addSubview:label3];
label3.transform = CGAffineTransformConcat(CGAffineTransformMakeTranslation(30, 0),
CGAffineTransformMakeRotation(90 * M_PI / 180));
}
実行すると、以下のようになります。

疑問: "こんにちは世界2" と "こんにちは世界3" の x 座標が揃わずにずれているのは何故だろうか。どちらも移動量と回転量は同じなのに。