我目前正在将字符串绘制到具有指定字体的画布上。但是,我想根据窗口大小缩放此字体。
给定目标字符串,如何找到特定字体的点大小,以便打印目标字符串为h
单位高,或w
单位宽?点大小和字体尺寸之间是否存在线性关系?
我可以想到确定相对点大小的非常有臭味的方法(选择任意大小并收缩/增长,直到维度在目标的某个epsilon范围内),但宁愿做得更干净。
如果可能的话,我想用仅字体来做这件事,而不是诉诸仿射变换。
答案 0 :(得分:3)
对于best metrics,我更喜欢TextLayout
,图示为here,但deriveFont()
,由@StanislavL在答案here中提出,令人惊讶的敏捷和一点儿都没有恶意。