导出中文乱码需先将文档编码转为utf-8或gbk;pdf乱码需修改pdf_template.html字体;缩进丢失需添加white-space: pre;html导出需勾选行号和语法高亮;excel导出依赖本地excel软件,推荐改用csv或html中转。

导出时中文乱码怎么办
默认导出为 ANSI 编码,Windows 系统下中文会变问号或方块。不是字体问题,是编码选错了。
- 导出前先确认文档编码:右下角看状态栏,显示
UTF-8或GBK;若显示ANSI,先用菜单 编码 → 转为 UTF-8(推荐)或 转为 GBK -
NppExport导出菜单里没有编码选项,它完全继承当前文档编码 —— 所以乱码一定是导出前没改对编码 - 如果导出 PDF 仍乱码,说明 PDF 模板不支持中文字体,需手动替换:打开
%APPDATA%\Notepad++\plugins\Config\NppExport\下的pdf_template.html,把font-family改成"SimSun", "Microsoft YaHei", sans-serif
PDF 导出后代码缩进全没了
这是 NppExport 的 HTML 渲染逻辑导致的:它把 Tab 自动转空格,且默认 CSS 把 <pre class="brush:php;toolbar:false;"></pre> 的 white-space 设为 normal。
- 解决方法是改模板:编辑
pdf_template.html,找到pre { ... }块,加上white-space: pre; font-family: "Consolas", "Courier New", monospace; - 别依赖「复制到 Word 再转 PDF」—— Notepad++ 的「复制为 RTF」功能本身不保留 Tab 宽度,粘贴后缩进会塌陷
- 如果只是临时要带缩进的 PDF,更稳的路子是:用
Ctrl+A全选 →Ctrl+C复制 → 粘贴进 VS Code,再用其插件导出 PDF(比如Markdown PDF)
怎么导出带行号、语法高亮的 HTML
NppExport 默认导出的 HTML 是纯文本,没高亮也没行号,除非你主动勾选。
- 菜单栏选择 插件 → NppExport → Export to HTML,弹窗里必须勾选:
Include line number和Include current syntax highlighting - 注意:高亮样式依赖当前语言模式(如
Python、JSON),如果文件没正确识别语法(右下角显示Normal Text),先手动设为对应语言(语言 → Python) - 导出的 HTML 默认用内联样式,没法改主题;想换深色背景?只能手动编辑生成的 HTML,在
<style></style>块里加body { background: #1e1e1e; color: #d4d4d4; }并调整.lineNum颜色
导出 Excel 表格失败,报错“Access is denied”
这个错误不是权限问题,而是 NppExport 尝试调用系统 OLE 接口写 Excel 文件时,发现没装 Microsoft Excel 或兼容组件。
-
NppExport的 Excel 导出功能**只支持 Windows 上已安装 Excel 2007+**,WPS、LibreOffice 不行,也不支持无 Excel 环境的静默导出 - 替代方案:导出为 CSV(Export to CSV),再用 Excel 打开;但注意 CSV 不保留格式、颜色、行号
- 如果非要用表格形式存代码片段,建议导出 HTML 后,用浏览器打开 → 全选表格区域 → 右键「复制为表格」→ 粘贴进 Excel(兼容性最好)
最常被忽略的一点:NppExport 插件本身不会自动更新,新版 Notepad++(v8.6+)默认不带它。如果菜单里根本看不到 NppExport,得去官网单独下老版本插件包,手动丢进 plugins 目录 —— 新版用的是 Print 功能替代部分导出需求,但不支持语法高亮导出。










