Как вычислить ширину текстовой строки определенного шрифта и размера шрифта?

find . -name .svn  -type d -print0 |xargs -0 rm -rf 
63
задан 24 August 2009 в 19:52
поделиться

2 ответа

Точно это можно сделать с помощью различных методов sizeWithFont: в NSString UIKit Additions . В вашем случае будет достаточно простейшего варианта (поскольку у вас нет многострочных меток):

NSString *someString = @"Hello World";
UIFont *yourFont = // [UIFont ...]
CGSize stringBoundingBox = [someString sizeWithFont:yourFont];

Существует несколько вариантов этого метода, например. некоторые рассматривают режимы переноса строки или максимальные размеры.

66
ответ дан 24 November 2019 в 16:02
поделиться

Поскольку sizeWithFont устарел, я просто собираюсь обновить свой исходный ответ на использование Swift 4 и .size

//: Playground - noun: a place where people can play

import UIKit

if let font = UIFont(name: "Helvetica", size: 24) {
   let fontAttributes = [NSAttributedStringKey.font: font]
   let myText = "Your Text Here"
   let size = (myText as NSString).size(withAttributes: fontAttributes)
}

Размер должен быть на экране размер "Your Text Here" в пунктах.

68
ответ дан 24 November 2019 в 16:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: