我在设置为iPhone的模拟器(Retina 4英寸)中运行此代码
-(void)drawRect:(CGRect)rect {
[[UIColor whiteColor]set];
UIRectFill(self.bounds);
UIBezierPath *vertLine = [UIBezierPath bezierPath];
[vertLine moveToPoint:CGPointMake(20.5, 10.0)];
[vertLine addLineToPoint:CGPointMake(20.5, 20.0)];
vertLine.lineWidth = 1.0;
[[UIColor blackColor]set];
[vertLine stroke];
}
我希望有一条像素的垂直线,但是两条像素宽的线条和纯黑色。 纯黑色似乎表明这不是由于像素网格上线条对齐的问题(在这种情况下它会是50%灰色)
这里发生了什么?
答案 0 :(得分:3)
对于UIKit,您不指定像素而是指定点数。然后将点自动映射到像素。您的1点宽度线似乎映射到两个视网膜像素。
中的“点数与像素数”