gpt4 book ai didi

c# - 如何缩放字体以适合指定的矩形

转载 作者:太空宇宙 更新时间:2023-11-03 13:33:21 28 4
gpt4 key购买 nike

我想在指定的矩形中绘制一个字符串,但问题是具有指定字体的字符串可能在矩形的边界之外。

所以我想要一种方法来缩放字符串字体以适应指定矩形区域中的字符串。

public Font scaleFont(String text, RectangleF rect, Graphics graphics, Font pFont)
{
float fontSize = 20.0f;
Font font = pFont;
float width = graphics.MeasureString(text, pFont).Width;
float height = graphics.MeasureString(text, pFont).Height;
fontSize = ((rect.Width / width) * pFont.Size);
float heig = (rect.Height / height);
return new Font(pFont.FontFamily, fontSize);
}

上面的代码给了我缩放字体以适应矩形顶部区域的字符串,但我想适应整个区域(附加上面的算法)

Output of algo

但我想要以下输出。

enter image description here

最佳答案

您是说适合整个区域吗?

enter image description here

如果是这样,常见的方法是在位图上绘制文本并将其适合您想要的任何对象。

为避免像素化,您可以使用您的代码来检测最佳字体大小和最佳位图大小。

关于c# - 如何缩放字体以适合指定的矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19627211/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com