不知道大家是否遇到过这样的问题,一个多行文字只有一行,但炸开成单行文字后却被分成了两个或多个单行文字,如下图所示。
为什么会这样呢?其实原因很简单,就是因为多行文字的字符没有用统一的格式,比如说不同的字符使用了不同的字体、颜色、字高等等,CAD软件认为这些设置是你有意为之,为了保证炸开后单行文字显示的效果与炸开前保持一致,就将这些文字分开了。
但有人说我的多行文字并没有单独选中其中的某些字符后修改过字体、字高、颜色等特性,为什么也会出现这种问题呢?
出现这种情况的根源还在于我们并没有正确地设置文字样式,比如文字样式并不支持中文,但在多行文字中输入了中文,软件为了正确显示中文,自动替换成了宋体,也就是等于单独设置了字体,所以炸开的时候会分成两段。
其实之前介绍文字样式和多行文字的文章里都说过类似的问题。
虽然原因很简单,但文字样式使用不同字体,使用CAD不同版本,处理后的结果都不完全相同。
如果文字样式使用的是CAD字体(*.shx),也就是只使用了小字体,在写多行文字时中文会替换成宋体,如下图所示。
在AUTOCAD不同版本炸开这样的多行文字的效果是不同的,在2007、2014版中英文会分被分开,但中文仍保留了之前的文字样式设置,此时中文会显示成问号,如下图所示。
而在更高的版本,比如说AUTOCAD 2018版的处理却不同了,炸开后仍能显示为宋体。之所以仍能显示为宋体,是因为在炸开的时候CAD自动生成了一种新的文字样式,文字样式名称叫MtXpl_,应该是Mtext Explode的简写吧,如下图所示。
如果文字样式设置的操作系统的字体,但不是中文专用字体,例如Arial字体,文字被炸开后,各版本都可以正常显示中文,但明显用的是宋体。也就是说如果使用的是TTF字体,即使不是中文字体,在单行文字中也可以输入中文,但会显示为宋体。
但这种情况下中英文混排的多行文字炸开时仍会分解成多个单行文字,只是显示效果跟分解前一致。但在高版本跟低版本的处理还是不同,在AUTOCAD 2018等高版本中仍会生成新的文字样式,如下图所示。
CAD之所以这么处理,是认为大家都会合理和正确地设置文字样式,在多行文字中单独设置字符的字体、颜色等其他格式都是有目的的,所以再炸开多行文字的时候尽可能保留之前的效果。
所以说要避免出现类似问题,在书写多行文字前需要正确设置文字样式并设置正确的当前文字样式。