繁体   English   中英

如何计算CGRect的大小以适合文本(IOS,swift)

[英]howto calculate the size of a CGRect to fit with a text ( IOS , swift )

我在自己的视图中绘制了一个文本,这很好用。

现在如何计算绘制的文字宽度?

我的代码:在我的代码中,我定义了“ iBoxLength”,它是假定的文本大小,并且比例合理(太大)。

           let fieldColor: UIColor = UIColor.darkGrayColor()
            let fieldFont = UIFont(name: "Helvetica Neue", size: fTextSize)
            var paraStyle = NSMutableParagraphStyle()
            //var textalign = NSTextAlignment.Center;

            paraStyle.lineSpacing = 6.0
            paraStyle.alignment = NSTextAlignment.Center;
            var skew = 0.1

            let attributes = [
                NSForegroundColorAttributeName: fieldColor,
                NSParagraphStyleAttributeName: paraStyle,
                NSObliquenessAttributeName: skew,
                //NSTextAlignment: textalign,
                NSFontAttributeName: fieldFont!
            ]

            s.drawInRect(CGRectMake(CGFloat(Float(iTextPositionX)-Float(iBoxLength/2)), CGFloat(iTextPositionY), CGFloat(iBoxLength), CGFloat(10)), withAttributes: attributes)

var Textwidth:Float = getWidth(s); // <------------------------------

NSString具有sizeWithAttributes()方法:

let text = NSString("myText")
let textSize = text.sizeWithAttributes(attributes)

请参阅: NSString UIKit添加参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM