必须将标签与表字体设为Microsoft YaHei等已安装中文字体并重启Navicat,导出前执行Organize Diagram且缩放调至100%,Win11高DPI用户还需为Navicat.exe启用“系统(增强)”高DPI缩放。

导出PNG前没设对字体,中文直接fallback到位图缩放
Navicat 的 ER 图导出器不走现代渲染管线,它依赖系统本地字体直接光栅化。如果你在「工具→选项→模型→字体」里还用着默认的 MS Sans Serif 或 Dialog,这些字体本身不包含中文字符集,Windows 就会强制 fallback 到位图字体(比如 FixedSys),再一放大,必然发虚、带灰边、笔画断裂。
实操建议:
- 把「标签字体」和「表字体」都手动设为已安装的等宽中文字体,如
Microsoft YaHei(Windows)或Noto Sans CJK SC(macOS/Linux) - 确认字体文件真实存在:
C:\Windows\Fonts\msyh.ttc或/System/Library/Fonts/STHeiti Light.ttc,别只看字体册里显示“已启用” - 改完必须重启 Navicat,否则新字体不会加载进 ER 渲染上下文
导出时视图缩放不是100%,导致DPI采样失真
Navicat 导出 PNG 不是截图,而是按当前画布视图的 DPI 和缩放比例生成位图。如果你用鼠标滚轮放大到 150% 后直接导出,引擎会以低分辨率缓冲区为基础做插值拉伸——文字边缘被双线性模糊处理,再高清屏幕下一眼就能看出虚边。
实操建议:
- 导出前务必点击顶部菜单
Layout → Organize Diagram,让布局重排归一 - 右键画布 →
Canvas Properties→ 取消勾选Fit to canvas on zoom - 用
Ctrl + 鼠标滚轮调至100%缩放后再执行导出
Win11高DPI下Navicat.exe未启用系统级缩放补偿
即使字体和缩放都设对了,Win11 高分屏(如 4K@150%)仍可能让导出图发虚——因为 Navicat.exe 默认没声明 PerMonitorV2DPI 感知,Windows 会在导出前对整个窗口做一次位图拉伸,连带导出缓冲区也被模糊处理。
实操建议:
- 找到真实
Navicat.exe(非快捷方式),路径类似C:\Program Files\PremiumSoft\Navicat Premium 16\Navicat.exe - 右键→属性→兼容性→更改高 DPI 设置→勾选「替代高 DPI 缩放行为」,缩放执行选
系统(增强) - 同步运行「调整ClearType文本」向导,五组样本全部选「边缘最实、无红蓝镶边、笔画不断开」那一行
选PNG而非SVG,主动放弃矢量保真能力
PNG 是位图格式,本质就是一张固定像素的快照。无论你导出时设多高分辨率(比如 600 dpi),一旦后续在文档或PPT里二次缩放,文字照样糊。而 SVG 是纯矢量,线条和文字都是路径描述,任意缩放都不失真,且支持浏览器直接打开、Inkscape 编辑、甚至 CSS 控制颜色。
实操建议:
- 优先选
File → Export ER Diagram → SVG(Navicat 16+ 原生支持) - 若必须交 PNG,导出时分辨率设 ≥
300 dpi,并确保画布上所有文字字号 ≥12 pt,避免小字号被抗锯齿吃掉 - 别用「打印为 PDF」这类间接路径,那会经过 Windows 打印子系统二次光栅化,质量进一步下降
导出清晰度最终取决于三者是否对齐:字体存在且可用、视图缩放锁定为整数倍、导出目标匹配用途。很多人卡在第一步——以为改了字体名就完事,却没验证字体文件是否真被加载,也没重启软件。这点最容易被忽略。











