2011-05-27 111 views
2

我有一个固定宽度的div,但里面的文字(someones name)会有所不同。有没有动态调整大小/字母间距的方法,以使文本完全符合div动态调整大小/空格文本以适合div

不过,我不能使用JavaScript作为该脚本将在HTML,PDF转换器中使用,不读JavaScript作为如果文本太长股利

text-align:justify将无法​​正常工作,它不会调整它。我觉得text-align:justify仅适用于段落等

名称不能走成两行

+0

名称必须全部适合一行吗? – tjm 2011-05-27 11:26:33

+0

@tjm是的,多数民众赞成在正确的名称必须适合所有在一条线 – Curt 2011-05-27 11:27:58

+1

有'文本对齐:justify',但我相信,有多行的时候工作。除此之外,可能没有办法与简单的CSS。你可以将它们居中,这可能比将它们左对齐更好。 – alexcoco 2011-05-27 13:16:17

回答

0

您需要使用两种:

Graphics graphics = this.CreateGraphics(); 
SizeF textSize = graphics.MeasureString("How long am I?", this.Font); 

Size textSize = TextRenderer.MeasureText("How long am I?", font); 

TextRenderer是不准确的,但图形需要您使用Windows窗体 - 在您的情况下,您可以使用单个文本框将表单放入要测量的文本中,然后阅读它回来了,但TextRenderer更简单。

使用上述,你可以编写一个函数,调整字体大小,直到达到所需的长度。

然后,将发送到浏览器的文本样式设置为反映此字体大小的情况。

+0

万事皆有可能。我可以遍历每个字母,将它放在一个宽度和字体大小设置的左上角。但这可能是越野车。 – Curt 2011-05-27 11:24:32

+2

你打算如何在没有javascript的情况下循环? – BonyT 2011-05-27 11:27:34

+1

ASP.NET函数。检查我的标签:) – Curt 2011-05-27 11:29:04

相关问题