SCNBox中的CATextLayer以纵向模式显示

问题描述 投票:1回答:1

我正在尝试将文本写入SCNBox节点。我在框中看到了文本,但文本方向是纵向。如何制作风景?

screenshot

CALayer *layer = [CALayer new]; 
[layer setFrame:CGRectMake(0, 0, 100, 100)]; 
[layer setBackgroundColor:[UIColor redColor].CGColor];

CATextLayer *textLayer = [CATextLayer new];
[textLayer setFrame:[layer bounds]];
[textLayer setFontSize:24];
[textLayer setString:@"TEST"];
[textLayer setAlignmentMode:kCAAlignmentLeft];
[textLayer setForegroundColor:[UIColor blackColor].CGColor];
[textLayer display];
[layer addSublayer:textLayer];

SCNBox *box = [SCNBox boxWithWidth:1 height:2 length:0.005 chamferRadius:0.0];
[[[box firstMaterial] diffuse] setContents:layer];
// [[[box firstMaterial] diffuse] setContents:[UIColor redColor]]; 
[[box firstMaterial] setLightingModelName:SCNLightingModelConstant]; 
[[box firstMaterial] setDoubleSided:YES]; 
SCNNode *node = [SCNNode nodeWithGeometry:box];
ios calayer arkit catextlayer
1个回答
0
投票

您可以像这样旋转textLayer:

CGAffineTransform transform = CGAffineTransformIdentity;
transform = CGAffineTransformRotate(transform, self.angle);  // angle in radians
label.transform = transform;
© www.soinside.com 2019 - 2024. All rights reserved.