很多人在 CAD 里画完图,最头疼的不是画线,而是文字大小对不齐。图纸上既有说明文字,又有从别人文件复制过来的注释,有的字高是 3.5,有的是 5,有的是 2,一眼看过去像排版事故。以前我遇到这种问题,要么用 MA 特性匹配一个一个点,要么选中后在特性面板里改高度,遇到几十处文字能改到手酸。后来我才发现,CAD 里其实有一个文本缩放命令,专门解决文字大小不统一的问题。选完对象、定一个基点、输入统一高度,所有文字一次到位,比特性匹配快得多,也比手动改高度可控得多。这篇就把它从命令参数、批量场景、常见报错到边界条件完整拆一遍,适合正在画施工图、装配图、电气图,以及经常要整理别人图纸的 CAD 用户看。
1. 文本缩放命令到底解决了什么问题
1.1 为什么图纸文字会大小不统一
图纸文字大小不统一,基本逃不过三个来源。
第一,图纸是多人协作的,不同人习惯不同。有人用 3.5 字高写说明,有人用 5,还有人直接复制网上的图例,自带的文字高度可能跟着源文件走。第二,不同文字样式在创建时设置了不同高度,比如某个软件自带的样式和 CAD 自带 Standard 样式,一个固定高度是 4,另一个是 0,写单行文字时每次还要手动输入高度,时间一长必然混乱。第三,从外部图纸复制过来的文字和表格,会把源对象的图层、颜色、样式、字高一起带过来。原图设了 8,当前图只用 2,那就非常突兀。
文本缩放解决的正是这个阶段的问题:不需要改样式定义,不需要重画,直接把选中文字的高度改成同一个目标值。它更像一个“清洗动作”,适合在图纸已经画得差不多、需要收尾统一格式的时候使用。
1.2 文本缩放和几种常见做法的差异
很多人会问:我平时用 MA 特性匹配或者特性面板也能改,为什么非要学文本缩放?
看一组对比就清楚了。
| 做法 | 适用对象 | 一次能选多少 | 位置影响 | 主要风险 |
|---|---|---|---|---|
| SCALETEXT 文本缩放 | 单行文字、部分情况下的多行文字和标注文字 | 可以框选或按条件选一批 | 取决于基点选项 | 对正方式不同时文字可能位移 |
| MA 特性匹配 | 单个或少量对象 | 需要逐个点选目标对象 | 只匹配源对象参数,不影响位置 | 数量多时效率低,容易漏点 |
| 特性面板批量改高度 | 选中多个文字对象 | 可以批量修改 | 不改变插入点 | 大小统一但相对比例关系消失 |
| 文字样式批量改 | 未固定高度或采用样式高度的对象 | 影响整个样式 | 可能引起全部对象变化 | 已有对象的固定高度不会自动变化 |
对比后很明显,文本缩放的核心价值是效率。它一次可以处理一批对象,而且能把位置控制因素单独拿出来。如果你只是想尽快把数字变成统一大小,它比特性面板直观,比特性匹配省大量点击。
我实际操作时,一般把文本缩放和特性面板结合用:先缩放到目标高度,再用特性面板检查个别对象高度。这样不会因为全选导致把不需要改的标题字也改掉。
2. 先用一条命令把文字大小统一:SCALETEXT 操作流程
2.1 命令入口和开始前的确认
文本缩放命令的英文名称是 SCALETEXT。菜单入口在“修改”菜单下,一级是“对象”,二级是“文字”,三级是“比例”。命令行直接输入 SCALETEXT 也可以。不同版本中文提示略有差异,但命令流程基本一致。
开始之前先确认三件事:当前处在模型空间还是布局空间;要处理的文字是否都在解锁图层;有没有属性块和嵌套文本。如果文字所在图层被锁定,命令执行时会无法修改;如果文字所在图层被关闭,默认情况下也选不中。建议先把图层状态打开,再操作。
2.2 通过命令示例跑通最小样例
第一次使用,不要直接对整张图操作。先在空白区域放三个不同高度的单行文字,比如高度分别是 2、4、6。然后执行以下流程:
SCALETEXT 选择对象: 框选三个文字 输入缩放的基点选项 [现有(E)/左(L)/居中(C)/右(R)/左上(TL)/中上(TC)/右上(TR)/左下(BL)/中下(BC)/右下(BR)] <现有>: E 输入新高度或 [基点(B)/比例因子(S)/匹配对象(M)] <2.50>: 5输入 E,代表以每个文字原有的对正点为缩放基点。输入 5,代表把这三个文字的新模型高度全部改成 5。回车后,三个文字的高度都会变成 5。
如果不想输入数字,可以输入 M 后选择图中某一个已经符合要求的文字,就可以以它为准。这是匹配对象的作用,能避免手输错数字。比如现场需要和某个图框里的字高一致,用 M 直接拾取,比再去查属性快很多。
2.3 目标高度和比例因子怎么选
SCALETEXT 给出的默认选项是输入新模型高度。对于目标高度统一的场景,输入绝对值最直接。但也有两个容易混淆的情况。
如果选中的文字高度不一样,输入 5 之后它们都会变成 5,相对大小关系会消失。如果只是想整体放大 1.2 倍,则要输入 S 或者选择比例因子选项,输入 1.2 后,每个文字会按自身当前高度等比例放大,最后字高仍然彼此不同。
所以使用前先问自己:是要“统一成多少”,还是要“等比放大多少”。大多数出图场景要的是前者,直接输高度;而文字已经比较整齐、只是想整体变大一点,就用比例因子。
假如不知道当前字高是多少,可以用 LIST 选中文字查看几何信息,或者打开特性面板看“高度”。这里不要凭感觉输入,尤其是多行文字,高度单位、显示单位如果写错,很容易把字改得过大。
2.4 最小样例验证
跑完最小样例后,验证两个点。
一是文字高度是否为 5,可以在特性面板里选中所有文字,看高度属性。二是位置有没有漂。如果漂了,说明基点选项或文字对正方式不匹配。比如左边文字是左对齐,右边文字是居中对齐,选“现有”后会以各自原有对齐点固定,位置通常不漂;但如果原本对齐点本身不在一条参考线上,视觉上还是会有点别扭。
此时有两个处理顺序:先统一对正方式,再缩放;或者缩放完后用文字对正命令调整。不要在第一遍就反复改宽度因子,那样会导致文字宽高比不一致。合理顺序是:先对正,再高度,最后位置微调。
3. 批量文字统一大小的标准套路:快速选择加文本缩放
3.1 不要全选图纸,先过滤文字
很多人第一次用 SCALETEXT 会选“全选”,结果把尺寸标注、标题栏文字、块内文字也一起选中,统一成 5 后整个图纸都乱了。正确做法是先过滤,只选中需要改的那一批文字。CAD 的 QSELECT 是一个很稳的过滤入口。
在命令行输入 QSELECT,弹出的窗口里可以设置对象类型、特性、运算符和值。例如想选所有图层为 TEXT 的单行文字,对象类型选“文字”,特性选“图层”,运算符选“=”,值选 TEXT,然后确定。想选所有高度大于 3 的文字,就把特性选为“高度”,运算符选“>”,值填 3。
如果对图层命名不放心,也可以直接用图层过滤器:在图层面板里把其他图层关掉,只留下目标图层,然后框选可见文字。这个方法更直观,适合图层规范的项目。过滤完之后再看命令行提示,确认选中数量是否合理。
3.2 单行文字和多行文字分开处理
QSELECT 里,单行文字和多行文字是两类对象。自动筛选时不要指望一次把 TEXT 和 MTEXT 都选完。我的做法是分两次:第一次对象类型选“文字”,处理单行;第二次对象类型选“多行文字”,处理段落文字。
SCALETEXT 对单行文字最直接。多行文字内部如果有不同字号、不同字体,甚至夹带不同格式,输入统一高度后往往会让整段文字重新换行,结果高度对了,段落形状却变了。所以多行文字我更建议先看特性面板里的“高度”属性,直接改整体高度;如果一定要用 SCALETEXT,先在小范围试一次,确认换行效果可以接受。
3.3 批量处理后的验证方式
批量处理完别急着保存。按 Ctrl+Z 可以撤销,但我更习惯保存前先复查。
复查要点:筛选后的所有文字,高度是不是都变成目标值;有没有漏掉藏在块里、引线里、属性定义里的文字;有没有文字因为基点选择不对而被挤到图框外面;多行文字有没有因为字高变化重新换行导致重叠。
一个快速工具是 QSELECT 再次按高度筛选:对象类型选“文字”,特性选“高度”,值填目标字高,如果选出来的不是全部目标对象,说明还有遗漏。然后再按图层和颜色检查被错误修改的对象,不符合预期就立刻撤销并重新处理。
注意:如果 QSELECT 过滤出来的结果为空,先检查当前空间。模型空间选不中布局里的文字,反过来也一样。还要检查该图层是否关闭或冻结,关闭图层上的对象即使符合条件也无法选中。
4. 文字缩放里的细节参数:基点、对正、注释性
4.1 基点决定缩放时哪一点不动
文本缩放的基点选项,本质是告诉你:缩放之后,以哪个点作为固定点。
选“左”,就是让每个文字的左对齐点在缩放前后保持在同一位置。选“居中”,就是让中心点不动。选“现有”,就是保留每个文字原本的对正点。不同对正方式的文字混在一起时,选“现有”通常最稳,因为每个文字都按自己的原生锚点缩放。
但如果要更整齐的左侧对齐效果,可以先看文字原始对正方式。若个别文字是居中,统一改为左对齐后再缩放,整体位置更可控。这里可以配合 JUSTIFYTEXT 命令:它只改文字对正点,不移动文字,适合在缩放之前把对正方式梳理清楚。
4.2 绝对高度和比例因子的取舍
判断标准可以用下面这张表:
| 输入方式 | 效果 | 适用场景 |
|---|---|---|
| 新高度: 5 | 最终所有选中文字高度均为 5 | 统一说明文字、注释字高 |
| 比例因子: 1.2 | 每个文字在原有基础上放大 20% | 整体字偏小,想等比例增大 |
| 匹配对象: M | 以指定文字的高度为准 | 不知道该输多少,直接参考已有标准 |
这个判断特别重要。很多人输入 1.2,以为是把字高改成 1.2,结果所有文字变成 1.2 高,远看根本看不清。先确认输入的是目标高度还是比例,再回车。
另外,如果选中的文字里有几行已经被手动改过高度,而它们的字体又不同,输入绝对高度后整个宽高比可能还不太一致。这时要去检查字体本身的字形宽高比,而不是继续调命令。
4.3 布局、注释性对象和图纸高度的处理
如果是在布局空间里操作,SCALETEXT 会提示输入新图纸高度还是新模型高度。概念上,模型空间里的 5 经过视口比例后,在布局里可能是 1 或 10,不能直接把模型空间字高和布局里的视觉字高混着算。所以要分清:你是在调整模型空间里的实际高度,还是在调整布局里打印纸上的高度。
更需要注意的是注释性对象。如果文字启用了注释性比例,缩放时最好通过注释性比例来统一,而不是手动改模型高度。手动改高度后,视口比例一变,又可能出问题。
处理这类图纸,我一般先看视口比例,再决定文字目标高度。例如在 1:100 视口里,要打印出来是 3.5,模型空间字高应该设 350,但这不能靠一条命令覆盖。先用文本缩放把模型空间文字统一成一个值,再通过注释性比例控制出图尺寸,顺序不能反。
5. 缩放后文字显示异常、字体缺失、乱码怎么排查
5.1 文字大小变了,但位置偏移
最常见的情况:一行说明文字缩放后,跑到旁边图框外面去了。很多人以为是命令不稳定,其实是基点和对正方式的问题。
如果原来的文字有的左对齐、有的居中,缩放前没有统一对正点,那么缩放后它们会围绕各自不同的锚点缩放,视觉上就会漂。解决方法是撤销本次缩放,先 JUSTIFYTEXT 把所有要处理的文字统一成一个对正方式,再重新 SCALETEXT。
还有一种可能:对象捕捉影响了选择,把附近块引线也选上了,导致批量范围比预期大。遇到位置偏移,先用 UNDO 回退,再检查当前选择集和编号数量。
5.2 字体缺失导致问号和乱码,不是缩放能解决的
有时候文字缩放后大小正常,但屏幕上仍然是问号或乱码。问题不在缩放,而在字体。
CAD 显示文字需要对应字体库。如果字体文件缺失,或当前文字样式指定了本机不存在的 CAD 字体,文字就不会正常渲染。此时用 STYLE 打开文字样式,把缺失的字体改成普通宋体、黑体或常用的 CAD 字体。修改后,问号一般会恢复。如果还是乱码,说明文字编码本身损坏,不是换单个字体能解决的。
字体文件通常放到 CAD 支持的 Fonts 目录里。如果从别的机器复制字体文件过来,要注意版本和字符支持范围,不要只复制文件名相同的空壳文件。把文本缩放当成修复乱码的工具没有意义,它只改高度,不改变字形和编码。
5.3 版本差异和国产 CAD 的兼容性
AutoCAD、中望 CAD、浩辰 CAD 都提供文字缩放的类似功能,但命令提示、菜单名称会有差异。比如有些国产 CAD 把文本缩放放到“扩展工具”里,可能不叫 SCALETEXT,而是叫“文字高度”之类的菜单。遇到命令行输入 SCALETEXT 无效,先检查版本是否支持,再去“修改”菜单里找“文字”子菜单。
跨版本打开图纸时,高版本的文字对象在低版本里可能变成不支持的特效对象,文字能够显示但无法直接缩放。遇到这种情况,先看对象类型。如果是代理对象,需要高版本转存或炸开;如果是普通文字,只是字体换了,不影响缩放。
6. 为什么有人用了文本缩放还是失败
6.1 选不中文字:属性块、普通块、动态块的处理
文本缩放命令选择的对象,本质是文字对象。如果文字是画在普通块里的,用 SCALETEXT 框选块时往往无法选中块内部的文字;即便选中了块,命令也不会逐层编辑块内文字。这样执行后,图上的文字仍然没变。这不算命令失效,而是对象类型不支持。
要处理块内文字,普通块用块编辑器进入块空间,选中文字再缩放到合适高度;如果块使用属性定义,可以在属性面板或使用增强属性编辑器逐个修改属性文字高度。动态块的处理逻辑类似,但还要注意可见性和拉伸参数,改完字高可能影响块的可变状态。
6.2 只改了文字没改图框,字变大后溢出
统一字高后,经常出现的第二个问题是溢出。原来 2 高的文字在表格里刚好放下,统一成 6 后,文字直接超出表格范围。特别是多行文字和带背景遮罩的表格,改完高度后要重新调整文字包围盒或表格列宽。
处理顺序建议:先确认图框和表格的可容纳高度,再确定目标字高。不要在已经画完的图里把 2 改成 6,然后期望文字自动适应表格。若确实需要大号字,就把表格同步拉长。
6.3 批量操作前先备份和分层处理
最保险的习惯:批量操作前先另存一份,或者把要处理的文字复制到单独的临时图层。
由于 CAD 的 UNDO 在保存文件后可能被清空,一旦批量执行了几步再存盘,回退就困难了。所以重点图纸务必先备份。此外,图层锁定时命令会默默跳过,不会提示。如果你发现某些文字没变,先去查看该文字所在图层是否被锁定、冻结或关闭。这是排错的第一步,不要马上怀疑命令有问题。
7. 比文本缩放更省事的工作习惯
7.1 用文字样式统一初始高度
文本缩放是事后补救,真正效率更高的是事前规则。
比如定义一个名为“说明文字”的文字样式,固定高度设成 5;再定义一个“标题文字”样式,固定高度设成 7。画图时用对应样式输入文字,初始高度就统一了。这样新图纸不会再乱。
已有图纸的问题可以用 SCALETEXT 批量补一次。后期再碰到图纸,先检查样式,再检查字高,不要每次都依赖最后的缩放命令。原始字高如果一直乱,说明绘图规范没有落地。
7.2 图幅、比例和字高要一起规划
字高的选择不是孤立的。A4 和 A3 打印出来的视觉效果不同,相同字高在不同比例视口里呈现大小不同。所以确定统一字高时,要结合图幅、标注样式的全局比例和打印比例。
有些项目会要求说明文字 3.5,标题文字 7,标注文字 2.5。把标准定好,再画图,后面的文本缩放次数会少很多。如果项目本身没有