我正在尝试在绘制PDF时解决间距问题。在调试中,我正在观察为我的字符串构造一个矩形的方法(见下文)。当我在调试器中观察值时,它们会在方法返回其值之前从漂亮的浮点值(即30.0)变为您在下图中看到的值。到底是怎么回事?例如,为什么x变为1.4013e-45?
CGRect renderingRect = CGRectMake(kBorderInset + kMarginInset + widthOfPrevious, kBorderInset + kMarginInset + 50.0 + heightOfPrevious,stringSize.width, stringSize.height);
return renderingRect;
请参阅renderingRect的值:
答案 0 :(得分:2)
您可以使用CGRectIntegral
如下所示将浮点值舍入为最接近的最小整数,如下所示。
CGRect renderingRect = CGRectIntegral(CGRectMake(kBorderInset + kMarginInset + widthOfPrevious, kBorderInset + kMarginInset + 50.0 + heightOfPrevious,stringSize.width, stringSize.height));