Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计提醒

paper-bilingual纸质双语

Agent Skill

paper-bilingual 用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰的文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

3,255

周安装

137

GitHub Stars

公开资料未说明

下载量

1,140
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:paper-bilingual(纸质双语)
来源仓库:https://github.com/caottt/paper-bilingual
安装命令:
openclaw skills install paper-bilingual
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install paper-bilingual

简介

将PDF论文转换为双语Markdown。对用户提供PDF URL或本地PDF文件,提取文本转为Markdown,保留图片,逐段插入中文翻译。用于学术论文研读、翻译对比。

SKILL.md

name
paper-bilingual
description
将PDF论文转换为双语Markdown。对用户提供PDF URL或本地PDF文件,提取文本转为Markdown,保留图片,逐段插入中文翻译。用于学术论文研读、翻译对比。

Paper Bilingual

将PDF论文转换为中英双语Markdown,保留原文格式和图片,逐段提供中文翻译。

触发条件

用户要求以下操作时使用此skill:

  • "翻译这篇论文"
  • "把PDF转成双语MD"
  • "论文中英对照"
  • "下载论文转Markdown带翻译"
  • 提供PDF URL并要求翻译

输入

支持两种输入方式:

  1. URL输入:PDF的下载链接(http/https开头)
  2. 本地路径:本地PDF文件的绝对或相对路径

处理流程

步骤1:下载PDF

  • 如果是URL,使用PowerShell下载:
Invoke-WebRequest -Uri "URL" -OutFile "$env:TEMP\paper.pdf"
  • 如果是本地路径,直接使用

步骤2:PDF转Markdown

使用Python + PyMuPDF将PDF转为Markdown并提取图片:

import fitz
import os
from PIL import Image

pdf_path = "paper.pdf"
images_dir = "images"
figures_dir = "figures"
os.makedirs(images_dir, exist_ok=True)
os.makedirs(figures_dir, exist_ok=True)

doc = fitz.open(pdf_path)
pages = []

for page_num, page in enumerate(doc):
    # 提取文本
    text = page.get_text("text")
    
    # 提取图片
    images = []
    for img_index, img in enumerate(page.get_images()):
        xref = img[0]
        pix = fitz.Pixmap(doc, xref)
        if pix.n - pix.alpha > 0:  # 跳过透明图片
            img_name = f"page{page_num + 1}_img{img_index}.png"
            pix.save(os.path.join(images_dir, img_name))
            images.append(img_name)
        pix = None
    
    pages.append({'text': text, 'images': images})

步骤3:提取完整图表(推荐方法)

使用整页渲染+坐标裁剪提取完整图表:

import fitz
from PIL import Image

pdf_path = "paper.pdf"
OUTPUT_DIR = "figures"
os.makedirs(OUTPUT_DIR, exist_ok=True)

doc = fitz.open(pdf_path)
fig_count = 0

for page_num in range(len(doc)):
    page = doc[page_num]
    # 2x缩放渲染页面为高清图片
    pix = page.get_pixmap(matrix=fitz.Matrix(2, 2))
    img = Image.frombytes('RGB', [pix.width, pix.height], pix.samples)
    
    # 获取页面上的图片对象和位置
    images = page.get_images()
    
    for img_index, img_info in enumerate(images):
        xref = img_info[0]
        rects = page.get_image_rects(xref)
        for rect in rects:
            # 缩放坐标 (2x)
            x0 = max(0, int(rect.x0 * 2) - 20)
            y0 = max(0, int(rect.y0 * 2) - 20)
            x1 = min(pix.width, int(rect.x1 * 2) + 20)
            y1 = min(pix.height, int(rect.y1 * 2) + 20)
            
            # 过滤太小的图片碎片
            if x1 - x0 < 80 or y1 - y0 < 80:
                continue
            
            # 裁剪完整图表
            cropped = img.crop((x0, y0, x1, y1))
            fig_name = f'fig_p{page_num+1}_{img_index+1}.png'
            cropped.save(os.path.join(OUTPUT_DIR, fig_name))
            fig_count += 1

print(f"Extracted {fig_count} figures")

关键点

  • PDF里的图表可能被拆成多个小图片块(tiles)压缩
  • 直接提取会得到碎片,需要用坐标裁剪方法
  • 先渲染整页,再按图片坐标裁剪,确保图表完整

步骤4:翻译并生成双语MD

输出目录结构

memory/paper-bilingual/
└── YYYY-MM-DD-paper-name/
    ├── index.md          # 双语Markdown
    ├── images/           # 整页截图(可选)
    └── figures/          # 裁剪后的图表

输出格式

# 主标题
中文主标题

## Section 1
中文标题

原文段落...
中文翻译段落...

![Figure 1](figures/fig_p3_1.png)

原文段落...
中文翻译段落...

规则

  1. 主标题(#):英文后换行加中文
  2. 二级标题(##):英文后换行加中文
  3. 普通段落:原文后直接加翻译
  4. 图片:使用裁剪后的图表 figures/

步骤5:翻译实现

使用当前会话的LLM翻译,逐段调用:

将以下英文翻译成中文,保持自然段落格式:
[段落内容]

步骤6:保存输出

  • 根据PDF文件名或URL生成输出目录名
  • 保存到:memory/paper-bilingual/YYYY-MM-DD-[论文名]/
  • 清理临时文件

核心原则

  1. 每篇论文一个文件夹:避免不同论文文件冲突
  2. 原文完全保留:图片、代码、公式、表格等与源文件完全一致
  3. 逐段翻译:每段正文后插入该段的中文翻译
  4. 标题翻译:所有级别的标题都需要翻译
  5. 格式一致:翻译采用与原文相同的格式
  6. 完整图表:使用坐标裁剪方法提取完整图表,避免碎片

依赖

  • Python 3.8+
  • PyMuPDF (pip install pymupdf)
  • Pillow (pip install pillow)
  • LLM翻译(当前会话)

错误处理

  • URL无效:提示用户检查链接
  • PDF加密:提示需要解密
  • 翻译失败:跳过该段,保留原文

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

87.84%
按下载量换算1,001

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills