代码转图片

把源码渲染成带主题与窗口装饰的 PNG,适合发推、写文档与分享

代码转图片

全部在浏览器本地渲染,代码不会离开这台机器

代码

共 14 行 ·python ·高亮在本地完成

文件不会上传服务器,全部在你的浏览器本地处理

预览

倍率
quicksort.py
1# 快速排序:把大问题拆成小问题
2def quicksort(arr):
3 if len(arr) <= 1:
4 return arr
5 pivot = arr[len(arr) // 2]
6 left = [x for x in arr if x < pivot]
7 mid = [x for x in arr if x == pivot]
8 right = [x for x in arr if x > pivot]
9 return quicksort(left) + mid + quicksort(right)
10
11
12if __name__ == "__main__":
13 data = [38, 27, 43, 3, 9, 82, 10]
14 print(quicksort(data)) # [3, 9, 10, 27, 38, 43, 82]

导出使用 html2canvas 在本地把 DOM 画成 PNG,倍率决定清晰度(2x 适合发推,3x 适合印刷)。 超长代码请分段截图,浏览器对单张图片尺寸有上限。

功能介绍

代码转图片把一段源码渲染成适合分享的PNG图片,适合写技术分享、发社交动态、放进README或文档插图。高亮由highlight.js在浏览器本地完成,支持一百九十余种语言,涵盖JavaScript、TypeScript、Python、Java、Go、Rust、C#、C++、PHP、Ruby、Swift、Kotlin、Scala、Shell、SQL、CSS、HTML、JSON、YAML与Markdown等常见语言与格式。内置午夜蓝、Nord雪原、Dracula、Solarized浅色、GitHub白底与高对比浅底共六套主题,浅色主题会自动切换关键字配色以保证可读。外观可调项包括窗口标题栏、红黄绿三点窗口按钮、内边距、圆角、字号、行高与左侧行号;背景支持纯色、渐变、网格与透明四种,透明背景适合叠在深色封面上。导出倍率提供1x、2x与3x,发社交动态用2x足够,印刷或放到retina屏上用3x。编辑器支持直接打开本地源码文件并按扩展名自动识别语言,也可一键载入八种语言的示例代码。导出由html2canvas在本地把DOM画成PNG,代码与截图内容都不会离开本机,不存在把业务代码传上去的风险。超长代码建议分段截图,浏览器对单张图片的像素尺寸有上限,强行生成超大图会失败。

使用说明

1. 在语言下拉里选好语言,或直接点打开文件读取本地源码,工具会按扩展名自动识别;2. 粘贴或输入代码,下方预览实时更新高亮效果;3. 挑一套主题,深色代码配深色主题、浅色代码配浅色主题;4. 按需调整内边距、圆角、字号、行高,可勾选行号与窗口三点按钮;5. 背景按用途选,发社交动态用渐变,叠在深色封面上用透明,贴进浅色文档用纯色;6. 确认无误后点导出PNG,倍率先用2x看效果,需要印刷再改3x重导;7. 窗口标题会直接显示在图片顶部,建议填文件名如main.py,比留空更清楚;8. 代码超过两三百行时浏览器可能生成失败或得到空白图,请分段截图。