Я хочу нарисовать строку в указанном прямоугольнике, но проблема в том, что строка с указанным шрифтом может находиться за пределами прямоугольника.Как масштабировать шрифт в соответствии с указанным прямоугольником
Так что я хочу способ масштабирования строкового шрифта, чтобы он соответствовал строке в указанной области прямоугольника.
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);
}
Приведенный выше код дает мне масштабируемую шрифт, чтобы соответствовать строке в верхней области прямоугольника, но я хочу, чтобы поместиться в целой области (Прикрепление из положить над алгоритмом)
Но Мне нужен следующий вывод.
Другими словами, вы хотите, чтобы слова были обернуты коробкой. Я правильно понял? –
@ АндрейАтапин, я уточнил вопрос. – user2528012
Почему вы делаете 'Font font = pFont', а затем никогда не используете его? –