visa-doc-translate

将签证申请文件(图片)翻译成英文,并创建包含原文和译文的双语PDF

351 stars

Best use case

visa-doc-translate is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. 将签证申请文件(图片)翻译成英文,并创建包含原文和译文的双语PDF

将签证申请文件(图片)翻译成英文,并创建包含原文和译文的双语PDF

Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.

Practical example

Example input

Use the "visa-doc-translate" skill to help with this workflow task. Context: 将签证申请文件(图片)翻译成英文,并创建包含原文和译文的双语PDF

Example output

A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.

When to use this skill

  • Use this skill when you want a reusable workflow rather than writing the same prompt again and again.

When not to use this skill

  • Do not use this when you only need a one-off answer and do not need a reusable workflow.
  • Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/visa-doc-translate/SKILL.md --create-dirs "https://raw.githubusercontent.com/xu-xiang/everything-claude-code-zh/main/docs/zh-CN/skills/visa-doc-translate/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/visa-doc-translate/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How visa-doc-translate Compares

Feature / Agentvisa-doc-translateStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

将签证申请文件(图片)翻译成英文,并创建包含原文和译文的双语PDF

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

您正在协助翻译用于签证申请的签证申请文件。

## 说明

当用户提供图像文件路径时,**自动**执行以下步骤,**无需**请求确认:

1. **图像转换**:如果文件是 HEIC 格式,使用 `sips -s format png <input> --out <output>` 将其转换为 PNG

2. **图像旋转**:
   * 检查 EXIF 方向数据
   * 根据 EXIF 数据自动旋转图像
   * 如果 EXIF 方向是 6,则逆时针旋转 90 度
   * 根据需要应用额外旋转(如果文档看起来上下颠倒,则测试 180 度)

3. **OCR 文本提取**:
   * 自动尝试多种 OCR 方法:
     * macOS Vision 框架(macOS 首选)
     * EasyOCR(跨平台,无需 tesseract)
     * Tesseract OCR(如果可用)
   * 从文档中提取所有文本信息
   * 识别文档类型(存款证明、在职证明、退休证明等)

4. **翻译**:
   * 专业地将所有文本内容翻译成英文
   * 保持原始文档的结构和格式
   * 使用适合签证申请的专业术语
   * 保留专有名词的原始语言,并在括号内附上英文
   * 对于中文姓名,使用拼音格式(例如,WU Zhengye)
   * 准确保留所有数字、日期和金额

5. **PDF 生成**:
   * 使用 PIL 和 reportlab 库创建 Python 脚本
   * 第 1 页:显示旋转后的原始图像,居中并缩放到适合 A4 页面
   * 第 2 页:以适当格式显示英文翻译:
     * 标题居中并加粗
     * 内容左对齐,间距适当
     * 适合官方文件的专业布局
   * 在底部添加注释:"This is a certified English translation of the original document"
   * 执行脚本以生成 PDF

6. **输出**:在同一目录中创建名为 `<original_filename>_Translated.pdf` 的 PDF 文件

## 支持的文档

* 银行存款证明 (存款证明)
* 收入证明 (收入证明)
* 在职证明 (在职证明)
* 退休证明 (退休证明)
* 房产证明 (房产证明)
* 营业执照 (营业执照)
* 身份证和护照
* 其他官方文件

## 技术实现

### OCR 方法(按顺序尝试)

1. **macOS Vision 框架**(仅限 macOS):
   ```python
   import Vision
   from Foundation import NSURL
   ```

2. **EasyOCR**(跨平台):
   ```bash
   pip install easyocr
   ```

3. **Tesseract OCR**(如果可用):
   ```bash
   brew install tesseract tesseract-lang
   pip install pytesseract
   ```

### 必需的 Python 库

```bash
pip install pillow reportlab
```

对于 macOS Vision 框架:

```bash
pip install pyobjc-framework-Vision pyobjc-framework-Quartz
```

## 重要指南

* **请勿**在每个步骤都要求用户确认
* 自动确定最佳旋转角度
* 如果一种 OCR 方法失败,请尝试多种方法
* 确保所有数字、日期和金额都准确翻译
* 使用简洁、专业的格式
* 完成整个流程并报告最终 PDF 的位置

## 使用示例

```bash
/visa-doc-translate RetirementCertificate.PNG
/visa-doc-translate BankStatement.HEIC
/visa-doc-translate EmploymentLetter.jpg
```

## 输出示例

该技能将:

1. 使用可用的 OCR 方法提取文本
2. 翻译成专业英文
3. 生成 `<filename>_Translated.pdf`,其中包含:
   * 第 1 页:原始文档图像
   * 第 2 页:专业的英文翻译

非常适合需要翻译文件的澳大利亚、美国、加拿大、英国及其他国家的签证申请。

Related Skills

plankton-code-quality

351
from xu-xiang/everything-claude-code-zh

使用 Plankton 实现编写时代码质量强制执行 —— 通过钩子在每次文件编辑时进行自动格式化、代码检查,并由 Claude 驱动自动修复。

autonomous-loops

351
from xu-xiang/everything-claude-code-zh

自主运行 Claude Code 循环的模式与架构 —— 从简单的顺序流水线到 RFC 驱动的多智能体 DAG 系统。

swiftui-patterns

351
from xu-xiang/everything-claude-code-zh

SwiftUI 架构模式,使用 @Observable 进行状态管理,视图组合,导航,性能优化,以及现代 iOS/macOS UI 最佳实践。

swift-protocol-di-testing

351
from xu-xiang/everything-claude-code-zh

基于协议的依赖注入,用于可测试的Swift代码——使用聚焦协议和Swift Testing模拟文件系统、网络和外部API。

swift-concurrency-6-2

351
from xu-xiang/everything-claude-code-zh

Swift 6.2 可接近的并发性 — 默认单线程,@concurrent 用于显式后台卸载,隔离一致性用于主 actor 类型。

swift-actor-persistence

351
from xu-xiang/everything-claude-code-zh

在 Swift 中使用 actor 实现线程安全的数据持久化——基于内存缓存与文件支持的存储,通过设计消除数据竞争。

skill-stocktake

351
from xu-xiang/everything-claude-code-zh

用于审计Claude技能和命令的质量。支持快速扫描(仅变更技能)和全面盘点模式,采用顺序子代理批量评估。

search-first

351
from xu-xiang/everything-claude-code-zh

研究优先于编码的工作流程。在编写自定义代码之前,搜索现有的工具、库和模式。调用研究员代理。

regex-vs-llm-structured-text

351
from xu-xiang/everything-claude-code-zh

选择在解析结构化文本时使用正则表达式还是大型语言模型的决策框架——从正则表达式开始,仅在低置信度的边缘情况下添加大型语言模型。

liquid-glass-design

351
from xu-xiang/everything-claude-code-zh

iOS 26 液态玻璃设计系统 — 适用于 SwiftUI、UIKit 和 WidgetKit 的动态玻璃材质,具有模糊、反射和交互式变形效果。

foundation-models-on-device

351
from xu-xiang/everything-claude-code-zh

苹果FoundationModels框架用于设备上的LLM——文本生成、使用@Generable进行引导生成、工具调用,以及在iOS 26+中的快照流。

docker-patterns

351
from xu-xiang/everything-claude-code-zh

用于本地开发的Docker和Docker Compose模式,包括容器安全、网络、卷策略和多服务编排。