Releases: cym9196/CC
Release list
v0.4.2 - 收款二维码 (base64 嵌入)
CC v0.4.2 — 收款二维码 (base64 嵌入)
把 v0.4.1 的激励图片 (作者微信支付收款二维码) 从"jpg 嵌入 resources.py"升级为"base64 源码嵌入"。原因是 jpg 二进制进入 git 后无法审计/diff, 容易泄露作者真实姓名等个人信息。
改动
1. 新增 qrcode_b64.py (286 KB)
源码里就是收款二维码, base64 编码形式:
QRCODE_JPG_B64 = (
"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQE..."
# 共 261308 字符, 76 字符一行, 可读可 diff
)
QRCODE_WIDTH = 1409
QRCODE_HEIGHT = 1920
def get_bytes():
"""Return the raw JPG bytes of the QR code (decoded from base64)."""
import base64
return base64.b64decode(QRCODE_JPG_B64)2. 新增 _encode_qr.py 辅助脚本
python _encode_qr.py jili.jpg # 重新生成 qrcode_b64.py自动读取图片尺寸填入 QRCODE_WIDTH/HEIGHT, 把 jpg 转 base64。
3. build.py 改造
加载优先级:
- qrcode_b64.py (base64 源码) — 唯一 source of truth
- 磁盘
jili.jpg/jili.png— 开发者本地 fallback, gitignored picture/目录 — 其它图片
4. show_inspire_image 重写
- 标题:
💰 支持作者 — CC v0.4.2 - 按钮:
[💸 已支付, 感谢支持][关闭](去掉 GitHub Star 按钮, 收款场景不需要) - 4 级 fallback:
qrcode_b64.py→ 磁盘 jpg → 磁盘 png →resources.RESOURCES→ 文字兜底 - 自适应屏幕: 屏幕小时按比例缩小, 永远保持原始 1409:1920 宽高比 (QR 码不变形, 永远可扫)
- 状态栏显示加载来源 (
qrcode_b64.py (embedded base64)等)
5. 操作 tab 按钮文字
激励 (额外) → 💰 支持作者 (扫码赠送)
6. .gitignore 更新
jili.jpg
jili.png
jili.jpeg
源头 jpg 不再进 git, 只进 base64 源码。
untrack
本 release untrack 了 CC字模/jili.jpg 和 jili.png (文件保留在本地, 不再被 git 追踪)。
3b886c2 (v0.4.1) 里的 jili.jpg 仍在 git 历史中。如要彻底删除需 git filter-branch (heavy 操作, 由用户决定是否做)。
测试
verify_original.py: 112/112 通过verify_custom_size.py: 160/160 通过show_inspire_image弹窗测试: QR 码完整显示, 标题/按钮/缩放全部正常
下载
CC.exe(~80 MB, PyInstaller, Windows 64-bit)- 源码:
git clone https://github.com/cym9196/CC - 详细:
README.md+CHANGELOG.md
链接
- Release: https://github.com/cym9196/CC/releases/tag/v0.4.2
- 上一版: v0.4.1
v0.4.1 - 激励图片 (jili.jpg)
CC v0.4.1 — 激励图片
在 v0.4 的三 tab 布局基础上, 加入了 激励 (彩蛋) 按钮配套的精美图片。
新增
-
jili.jpg / jili.png (52 KB / 43 KB, 800x600):
- 暖色 (黄 -> 橙) 渐变背景
- 顶部红心 + 粉色心叠加
- 主标题: 谢谢您的支持! (72pt)
- 副标题: 您的 Star 和反馈是我最大的动力 (36pt)
- 底部: CC - 图像转字模工具 v0.4 + github.com/cym9196/CC
- 装饰: 40 个随机彩点 (黄/粉)
-
show_inspire_image 弹窗增强:
- 标题: 🎉 谢谢您的激励! — CC v0.4 (带 cym_icon.ico)
- 居中显示, 米黄底 (#fff8e7) + 12px padding
- 大图自动按比例缩放到 720x540
- 底部两按钮: [关闭] [⭐ 去 GitHub 给个 Star]
- 4 级 fallback: 磁盘 jpg -> 磁盘 png -> 内嵌 jpg -> 内嵌 png -> 自动生成纯文字图
- 状态栏显示加载来源 (disk/embedded/fallback)
-
_open_github(): webbrowser 打开 https://github.com/cym9196/CC
-
_make_text_thankyou_image(): PIL 兜底纯文字图, 完全无依赖
嵌入方式
build.py 自动扫描 jili.jpg / jili.png / picture/ 下所有图片, 全部嵌入到 resources.py (作为 RESOURCES 字典的字节字面值), PyInstaller 打成 EXE 时一并打包。运行时优先从内嵌资源读取, 不需要外部文件。
EXE 体积: 79,067,148 -> 80,170,274 (+1.5 MB, 来自 jili.jpg + jili.png)
测试
- verify_original.py: 112/112 通过
- verify_custom_size.py: 160/160 通过
- show_inspire_image 弹窗测试: 标题/居中/缩放/按钮 全部正常
下载
CC.exe(~80 MB, PyInstaller, Windows 64-bit)- 详细使用说明见
README.md和CHANGELOG.md
链接
- GitHub Release: https://github.com/cym9196/CC/releases/tag/v0.4.1
- 仓库: https://github.com/cym9196/CC
- 上一版: v0.4
v0.4 - 三 tab Notebook 布局
CC v0.4 — 三 tab Notebook 布局
把上一版两栏布局里的左侧 controls 拆成三个 tab (屏幕 / 参数 / 操作), 更紧凑, 更现代, 永远能看到右侧预览和幻灯片。
亮点
- 左侧 ttk.Notebook 三 tab:
- 屏幕 — 宽 W / 高 H + "应用到图像处理" 按钮
- 参数 — 亮度 / 对比度 / 反色 / 旋转 (0/90/180/270) / 水平 + 垂直镜像 / 扫描方向 (vertical / horizontal) / 8 种扫描顺序 / 幻灯片间隔
- 操作 — 刷新预览 / 开始转换 / 退出 + 视频抽帧 (文件 + 帧间隔 + 进度 + 暂停) + 激励 (彩蛋)
- 右侧永远可见: 图像预览 (weight=3, 浅米色背景) + 幻灯片播放 (weight=2, 近黑背景)
- sash 起始位置固定 360 px
- 占位提示: 预览 "选择一个图像文件夹后, 点【刷新预览】查看预览 或点【开始转换】生成 C 字模数据", 幻灯片 "幻灯片预览 (need images)"
- 状态栏 row 修正, 不再与 paned 重叠
- 默认窗口尺寸 1400×900
测试
verify_original.py: 112/112 通过verify_custom_size.py: 160/160 通过 (覆盖 5 个尺寸: 128x64 / 128x32 / 96x16 / 256x64 / 64x128)test_convert.py: 全部通过
下载
CC.exe(~79 MB, PyInstaller 打包, Windows 64-bit)- 源码见
CC字模/目录 - 详细使用说明见
README.md
与 v0.3 相比
| 区域 | v0.3 | v0.4 |
|---|---|---|
| 左侧布局 | scrollable frame, 4 个 LabelFrame (文件 / 屏幕 / 参数 / 控制) | ttk.Notebook, 3 个 tab (屏幕 / 参数 / 操作) |
| 预览/幻灯片 | 永远可见 | 永远可见, 背景色区分 |
| 状态栏 | 与 paned 重叠 bug | 修正, 独立 row=2 |
| 默认窗口 | 960×800 | 1400×900 |
详见 CHANGELOG.md 顶部 v0.4 章节。
v0.3 - 两栏 GUI 布局 (PanedWindow)
v0.3 - 2026-06-19
主要变化
- 两栏 GUI 布局: 用
ttk.PanedWindow水平分割 — 左栏 scrollable 控件 (文件/屏幕/参数/操作), 右栏 preview + slideshow (永远可见). sash 可拖动调整比例. 默认窗口1400x900. 解决了之前预览被挤到屏幕外的问题. - 重新打包 EXE: 79 MB (含 PanedWindow + 滚动 + 状态栏).
下载
- 下载下面的
CC.exe双击运行, 无需装 Python.
截图
左栏控件 (滚动), 右栏 preview + slideshow 永远可见, 底栏 status bar.
+----------------------------------------------------------------+
| 图像转字模工具 v2.0 |
| 屏幕、视频、扫描参数可调 · 点击【开始转换】生成 C 字模 |
+----------------------------+-----------------------------------+
| [文件设置] (滚动) | [图像预览] |
| [屏幕尺寸] | |
| [图像参数] | [幻灯片播放] |
| [操作] | |
+----------------------------+-----------------------------------+
| Ready | W=128 H=64 | v2.0 GUI redesign | ... |
+----------------------------------------------------------------+
详见 CHANGELOG.md 和 README.md.
v0.2 - v2.0 GUI + 重新打包 EXE
v0.2 - 2026-06-19
主要变化
- v2.0 GUI: 现代 ttk 主题 (vista / winnative / clam 自适应), 顶栏 "图像转字模工具 v2.0" 标题, 底栏 status bar (info/warn/error 三色), "开始转换" 用 Accent.TButton.
- 重新打包 EXE: 79 MB (PyInstaller 6.16, UPX 未装, 装上可再压 ~30%).
- 下载: 下载下面的
CC.exe双击运行, 无需装 Python.
包含的所有功能
- 图像/视频 → C 字模 (1024 字节/128x64 图)
- 任意 8 倍数 W、H (上限 16384, 16K 屏幕)
- 任意视频容器 (mp4/avi/mov/mkv/webm/flv/wmv/... 共 19 种常见 + cv2 实际能读的)
- 视频进度条 / 暂停 / 损坏帧跳过
- 8 种扫描方向 / 16 种扫描顺序
- 配置持久化 (~/.cym_cc_config.json)
- C 驱动 #define 可配 (SSD1306 / SH1106 / 自定义)
详见 CHANGELOG.md 和 README.md.