【发布时间】:2019-11-25 19:18:04
【问题描述】:
如果文本大小大于框的宽度或高度,我正在尝试自动缩放字体大小。 我正在这样做
// textbox padding & margins excluded
if (formattedText.WidthIncludingTrailingWhitespace > textbox.ActualWidth)
{
do
{
// reduce font size by step
fontSize -= 1.0;
// set fontsize ready for re-measure
formattedText.SetFontSize(fontSize);
} while ((formattedText.WidthIncludingTrailingWhitespace >
textbox.ActualWidth) && (fontSize > minimumFontSize));
}
myTextBox.FontSize = fontSize;
return fontSize;
但文本被剪裁或裁剪。
请参阅附上的快照here
红色标记是文本框的边框。
谁能建议我该怎么做?
我也试过
if (formattedText.Width> textbox.ActualWidth)
if (formattedText.Extent> textbox.ActualWidth)
谢谢
【问题讨论】:
-
尝试将 TextBox(或 TextBlock?)放入 Viewbox。
-
感谢您的回复是否可以通过编程方式将其放入视图框中?
-
这是为了更新 stackoverflow 社区,以下@Keithernet 提供的解决方案适用于大多数情况,但当文本为粗体时问题会重现。请查看 ScreenShot here Screenshot 字体大小为 9,但最小字体大小限制为 06。
标签: c# asp.net wpf asp.net-core