Summary
使用百度 OCR 高精度含位置版将代码截图转换为文本文件,保持原始缩进。使用场景包括:(1) 将代码截图识别为可编辑文本,(2) 从截图提取代码,(3) 图片转代码文字。触发条件:用户提到"截图转文字"、"OCR"、"识别代码"、"图片转文本"、"code screenshot to text"
mhliulgy/my-skills · Archived
使用百度 OCR 高精度含位置版将代码截图转换为文本文件,保持原始缩进。使用场景?
npx skills add mhliulgy/my-skills --skill code-ocr
使用百度 OCR 高精度含位置版将代码截图转换为文本文件,保持原始缩进。使用场景包括:(1) 将代码截图识别为可编辑文本,(2) 从截图提取代码,(3) 图片转代码文字。触发条件:用户提到"截图转文字"、"OCR"、"识别代码"、"图片转文本"、"code screenshot to text"
This repository is archived — consider an actively maintained alternative.
从 Word (.docx) 和 PDF (.pdf) 文档中提取图片并保存到指定文件夹。使用场景包括:(1) 从 Word 文档…
57 installsLook up any arxiv paper on alphaxiv.org to get a structured AI-generated overview. This is fast…
41 installsConvert local files or URLs with a locally deployed Docling Gradio service into Markdown, JSON,…
14 installsOrchestrates IC EDA tasks (Verilog/SystemVerilog, UVM, VCS simulation, Verdi, Design Compiler l…
3 installsOther skills from mhliulgy/my-skills.
npx skills add mhliulgy/my-skills
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
main
Files included with this skill beyond the listing page.
SKILL.md
6,016 B
SUMMARY.md
353 B
将代码截图转换为文本文件,使用百度 OCR 高精度含位置版 API,保持原始缩进。
在使用前需要配置百度 API 密钥(系统环境变量),默认用户已经配置完成:
# Windows
setx BAIDU_API_KEY "your_api_key"
setx BAIDU_SECRET_KEY "your_secret_key"
或者在当前终端设置:
# Windows (当前终端)
set BAIDU_API_KEY=your_api_key
set BAIDU_SECRET_KEY=your_secret_key
# 保存 OCR 中间结果(避免重复调用 API)
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" <图片路径> --save-json <json文件路径>
# 从 JSON 加载结果,多次调整 ratio 参数实验
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" <json文件> --load-json <json文件路径> --ratio <值>
# 仅识别图片(不推荐)
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" <图片路径> [输出目录]
| 参数 | 说明 |
|---|---|
图片路径 |
可选,截图文件的路径(支持 PNG、JPG、BMP 等格式),或 JSON 文件路径 |
输出目录 |
可选,默认保存到图片所在目录 |
--ratio / -r |
可选,平均字符宽度的缩放倍率,用于微调缩进计算。默认 0.955 |
--save-json FILE / -s FILE |
可选,OCR 成功后保存中间结果到 JSON 文件 |
--load-json FILE / -l FILE |
可选,从 JSON 文件加载 OCR 结果,跳过 OCR 步骤 |
# 1. 首次运行:OCR 识别并保存中间结果
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" screenshot.png -s screenshot.json
# 2. 后续实验:加载 JSON(使用 -l 参数),多次调整 ratio 参数
# 只需指定 -l JSON文件路径 和 --ratio 值,无需其他参数
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.96
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.955
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.95
# 3. 简写形式
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json -r 0.955
提示:首次 OCR 识别后会生成 JSON 文件,如需调整缩进效果,请使用
-l参数加载该 JSON 文件重新运行。
{原文件名}{时间戳}{ratio}.txtscreenshot20260220143052_0.955.txt重要:当 AI 工具应该主动给出基于 JSON 文件重新运行的命令,例如:
# 使用 -l 参数加载 JSON 文件,调整 ratio 参数
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.96
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.955
python "C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py" -l screenshot.json --ratio 0.95
并向用户解释不同 ratio 值的效果差异,帮助用户选择最佳的缩进参数。
当 OCR 结果输出后,AI 模型应主动使用自身的多模态能力对原图进行"视觉 OCR",并与百度 OCR 的输出结果进行交叉验证。
| 校验项 | 说明 | 示例 | |
|---|---|---|---|
| 相似字符 | O vs 0,I vs l vs 1,S vs 5 |
list 被误识别为 1ist |
|
| 符号混淆 | ' vs ''," vs "",-> vs → |
don't 被误识别为 don''t |
|
| 特殊符号 | @, #, $, %, &, `\ |
, \, /` |
@staticmethod 中的 @ |
| 缩进对齐 | 空格与制表符的混合使用 | Python 代码的缩进层级 | |
| 注释符号 | //, /, /, #, <!-- |
注释起始和结束位置 | |
| 括号匹配 | (), {}, [], <> |
嵌套括号的完整性 | |
| 符号遗漏 | 代码行末的分号、逗号等 | return x 被误识别为 return x; |
|
| 中英符号 | 英文逗号 , vs 中文逗号 , |
print("Hello, World") 被误识别为 print("Hello,World") |
灵活校验:根据代码语言和上下文,判断代码语言,并根据该语言语法规则进行更有针对性的校验。
=== 百度 OCR 原始结果 ===
[原始识别文本]
=== 交叉验证修正 ===
- 第 X 行: "原始错误" → "修正后"
- 第 Y 行: "原始错误" → "修正后"
=== 最终修正结果 ===
[校对后的最终文本]
脚本路径:C:\Users\12556\.claude\skills\code-ocr\scripts\code_ocr.py