直接用 codesnap 插件——它复用 vscode 主题、字体和语法高亮,截图即所见,中文不乱码、连字不断裂、行号对齐精准;安装后右键无反应需确认:仅编辑器内容区生效、必须选中代码、插件已启用;中文乱码需设 codesnap.fontfamily 为链式中文字体 fallback;高 dpi 屏需设 codesnap.scale 为 2;透明背景导致 im 客户端渲染失真,应关闭 transparentbackground 并设置 backgroundcolor;截图基于选区而非视口,带文件名需用带参数的命令。

直接用 CodeSnap 插件,别折腾 Polacode 或网页工具——它复用 VSCode 当前主题、字体和语法高亮,截图即所见,中文不乱码、连字不断裂、行号对齐精准。
CodeSnap 安装后右键没反应?先确认这三件事
插件装完不等于能用,常见“点了没反应”其实是触发条件没满足:
- 右键菜单只在编辑器内容区生效,侧边栏、终端、搜索框里点不出来
- 必须先选中代码(哪怕只选一个空格),纯光标定位不会弹出
CodeSnap子菜单 - 检查扩展页里
CodeSnap是否显示“启用”;若显示“禁用”,点一下再重启 VS Code
中文乱码或字体发虚?调这三个配置项
不是系统缺字体,也不是主题问题,而是 CodeSnap 只读 codesnap.fontFamily 且只取第一个能覆盖全部 Unicode 范围的字体。顺序错了,fallback 就失效:
-
codesnap.fontFamily必须设为带中文字体 fallback 的链式写法,例如:"Sarasa Mono SC", "Fira Code", "monospace" -
codesnap.fontSize建议设为14或16(VS Code 编辑器字号editor.fontSize不影响截图) -
codesnap.scale在高 DPI 屏(如 MacBook Retina、Windows 缩放 125%+)下必须设为2,否则导出图是 1x 渲染再拉伸,文字糊成一片
截图没边框、背景发灰、微信里看起来脏?关掉透明背景
CodeSnap 默认开启透明背景,这是设计选择,不是 bug。但微信、钉钉、飞书等 IM 客户端会把透明 PNG 渲染成浅灰色,导致视觉失真:
- 把
codesnap.transparentBackground设为false - 顺手配
codesnap.backgroundColor,暗色主题填"#1e1e1e",亮色主题填"#ffffff" - 加圆角和阴影:设
codesnap.borderRadius为8,codesnap.dropShadow为true
真正容易被忽略的是:截图逻辑严格基于“当前选区”,不是你看到的视口范围。拖选时多包一行空行,比靠滚动位置猜更可靠;如果要带文件名标题栏,得用 CodeSnap: Take Snapshot with Options 并传参 showFilename=true,而不是默认命令。











