charmbracelet/freeze:3.9k Star开源神器,一键生成精美代码和终端输出图像

告别繁琐截图,轻松打造专业文档和分享素材
项目地址: https://github.com/charmbracelet/freeze
还在为制作代码示例和终端教程的截图而烦恼吗?charmbracelet/freeze 让你告别低效的截图方式,只需一行命令,就能将代码和终端输出转化为高质量的图片,支持 PNG、SVG 和 WebP 格式,让你的文档和分享更具专业性!
freeze 是一款由 Go 语言编写的命令行工具,它能够将代码片段和终端输出生成为图像。它具有以下特点:
- 多种格式支持: 生成 PNG、SVG 和 WebP 格式的图像,满足不同场景的需求。
- 代码高亮: 支持多种编程语言的代码高亮,让你的代码示例更易读。
- 可定制性强: 提供丰富的选项,可以自定义背景、边框、阴影、字体、行号等样式,打造个性化的图像风格。
- 交互式 TUI 界面: 提供交互式的终端用户界面,方便你实时调整参数,预览效果。
freeze 可以做什么?
- 自定义图像样式: freeze 提供了丰富的选项,让你能够完全掌控图像的风格。
交互模式: 使用交互模式可以更方便的进行自定义设置
freeze --interactive

阴影: 添加阴影效果:
freeze artichoke.hs --shadow.blur 20 --shadow.x 0 --shadow.y 10

窗口: 添加 macOS 风格的窗口控制按钮:
freeze artichoke.hs --window

边框: 添加圆角边框:
freeze artichoke.hs --border.radius 8

主题: 选择不同的代码高亮主题,例如 dracula:
freeze artichoke.hs --theme dracula

生成终端输出图像: 捕捉终端命令的 ANSI 输出,并将其转换为图像,适用于教程、演示等场景。
例如,你可以使用以下命令将 eza -lah
命令的输出生成为 SVG 图像:
freeze --execute "eza -lah"
效果如下:

生成代码图像: 将代码片段转换为精美的图像,适用于博客文章、技术文档、演示文稿等。
例如,你可以使用以下命令将 Haskell 代码生成为 PNG 图像:
freeze artichoke.hs -o artichoke.png
效果如下:


支持平台
freeze 可以在以下平台使用:
- macOS
- Linux
- Windows
怎么样,看完这个项目是不是觉得很棒? 这个项目对于需要经常制作代码示例和终端教程的开发者和技术文档编写者来说非常有用! 快来转发给你的朋友们一起学习使用吧!