2013-10-31 310 views
0

當我做CTLineGetBoundsWithOptions()返回的frame.origin.y值的含義是什麼?

CGRect lineBounds = CTLineGetBoundsWithOptions(lineRef, 0); 

我得到

(CGRect) lineBounds = origin=(x=0, y=-3.8560002) size=(width=181.31201, height=19.088001) 

是lineBounds.origin.y指的什麼信息?爲什麼它是負面的?

與此相反,我得到excact相同的高度和寬度 - 我沒有得到-3.85的值。

double width = CTLineGetTypographicBounds(lineRef, &ascent, &descent, &leading); 
double height = ascent + descent + leading; 

那麼它告訴我什麼?

+0

但是,什麼是你的血統... –

回答

3

可悲有上CTLineGetBoundsWithOptions功能沒有下降的文檔,但, 作爲標題文件的狀態,則此方法返回

線的範圍,由類型和選項指定,使得座標原點與行的原點重合,矩形的原點位於左下角。如果該行無效,該功能將返回CGRectNull

您應該使用CTFrameGetLineOrigins獲取線源並將相應的原點追加到獲取的邊界源。

另外,還要考慮尋找到CTLineBoundsOptions枚舉過濾不需要的元素

相關問題