代码转图片
写周报、做 PPT、发微博的时候,贴代码截图比贴纯文本好看得多。这里用 Prism 分词后直接画到 canvas 上,导出的是真正的位图,缩放不会糊边——代码全程在你浏览器里,不会上传。
说明
- 不是网页截图。常见做法是把高亮后的 DOM 塞进 SVG 的 foreignObject 再画到 canvas,那条路在 Safari 和 Firefox 上各有各的毛病。这里是拿 Prism 分词后逐个 token 用
fillText画上去的,所有浏览器表现一致。 - 行太长会被图片撑宽,不会自动折行——代码折行会改变阅读结构。想窄一点就自己在源码里换行。
- 「复制到剪贴板」需要 HTTPS。浏览器只在安全上下文里开放剪贴板写图片的能力,http 页面上这个按钮会失败,用下载代替。
- 相关:JS 格式化、PHP 格式化、Shell 格式化、Markdown 预览、文字生成图片。