第一个问题:您有 400 像素的宽度可以继续,并且需要在该约束内尽可能大地容纳一些文本(因此,文本应使用该空间量)。
引入一个新的约束:如果文本只是“A”,那么它不应将其缩放到 100 像素高度(或某些特定字体大小)以上。
然后,最后一种情况:换行符。在例如 400 x 150 像素内以尽可能大的方式调整一些文本。
一个明显的方法是简单地从第 1 点开始,然后增加直到你不能再适应它。这将适用于所有三个问题,但会非常粗糙。可以通过使用一些固定点大小编写单行来完成边界内的单行拟合,检查文本的结果像素边界,然后简单地使用变换对其进行缩放(然后文本也正确缩放,请查看TransformUI)。
任何其他攻击方法的想法将不胜感激!