polacode 插件无响应需检查三件事:1. 当前必须打开已保存的代码文件且光标在编辑器内;2. 打开开发者工具查看是否有资源加载失败或权限错误;3. 为 vscode 手动授予系统屏幕录制权限。

Polacode 插件装了但点按钮没反应?检查这三件事
Polacode 不是装上就自动生效的截图工具,它依赖 VSCode 的活动编辑器状态和权限控制。常见现象是点击 Polacode: Take Screenshot 后毫无反馈,或弹出空窗口。
- 确保当前有打开的、已保存的文件(
.js、.py等),且光标在编辑器内——Polacode 不支持纯空白标签页或未保存的临时文件 - 检查 VSCode 是否启用了「开发者工具」报错:按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(Mac),输入Developer: Toggle Developer Tools,切换到 Console 标签页,再点截图,看是否有Failed to load resource或Permission denied - 某些安全策略(如 Windows 组策略、Mac 的全盘访问限制)会拦截 Polacode 调用系统截图能力,需手动给 VSCode 授予屏幕录制权限(macOS 在「系统设置 → 隐私与安全性 → 屏幕录制」中勾选;Windows 10/11 在「设置 → 隐私 → 屏幕录制」里确认开启)
导出带阴影/圆角/语言标识的截图,关键靠配置项 polacode.theme 和 polacode.languageLabel
默认截图是白底无边框的,要实现“公众号风格”的代码图,必须手动改 VSCode 设置(settings.json),不是靠界面开关。
-
"polacode.theme": "dark"或"polacode.theme": "nord"可切换配色主题,但注意:它只影响代码高亮样式,不控制背景色——背景色由polacode.backgroundColor单独控制 - 阴影和圆角由
"polacode.dropShadow": true和"polacode.borderRadius": 12控制,数值单位是像素,设为0就是直角 - 语言标识(如右上角的
JavaScript字样)由"polacode.languageLabel": true开启,但仅当当前文件有正确 language ID(比如javascript,不是plaintext)时才显示
截图内容不全、截到滚动条或漏掉注释?调整 polacode.height 和 polacode.includeLineNumbers
Polacode 默认只截当前可视区域(viewport),不是整个文件;而且行号是否包含会影响宽度计算和换行位置。
- 想截更多行:设
"polacode.height": 800(单位 px),但别超过 2000,否则生成 PNG 失败(Node.js 内存溢出) - 行号默认开启,但若你关了
editor.lineNumbers,Polacode 仍会强行加一列空行号,导致代码左偏——此时应同步关闭"polacode.includeLineNumbers": false - 注释被截断常见于使用了自定义字体(如
Fira Code)且字号 >14px,建议统一用"editor.fontSize": 13配合"polacode.fontSize": 13避免换行错位
导出的 PNG 模糊、颜色发灰?优先检查 polacode.scale 和 VSCode 缩放级别
Polacode 渲染基于 VSCode 当前 UI 缩放比例,如果 VSCode 设了 zoomLevel: 1.2,而 polacode.scale 还是默认 1,就会模糊。
- 把
"polacode.scale": 2设为2(而非1.5或3),能兼容多数 1080p–4K 屏,且避免抗锯齿失真 - VSCode 主设置里的
window.zoomLevel必须是整数(0、1、-1),否则 Polacode 渲染层会采样错误,导致语法高亮色块边缘泛灰 - Mac 用户若用 Retina 屏但截图发虚,确认是否开了
"polacode.useHardwareAcceleration": false(默认为true,但在某些 macOS 版本下反而导致渲染异常)
真正麻烦的是多显示器混用场景:主屏是 2x 缩放,副屏是 1x,VSCode 拖到哪边,Polacode 就按哪边 DPI 渲染——没提示、不报错,只默默产出糊图。这时候得固定 VSCode 在主屏启动,再截图。











