بنقرة واحدة
pdf2html
读取用户提供的 PDF 文件,提取结构化内容,随机选择 templates/ 目录下的一个 HTML 模板作为风格蓝本,生成专业美观的网页。所有数学公式自动使用 MathJax 渲染,支持标题、段落、表格、公式识别。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
读取用户提供的 PDF 文件,提取结构化内容,随机选择 templates/ 目录下的一个 HTML 模板作为风格蓝本,生成专业美观的网页。所有数学公式自动使用 MathJax 渲染,支持标题、段落、表格、公式识别。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | pdf2html |
| description | 读取用户提供的 PDF 文件,提取结构化内容,随机选择 templates/ 目录下的一个 HTML 模板作为风格蓝本,生成专业美观的网页。所有数学公式自动使用 MathJax 渲染,支持标题、段落、表格、公式识别。 |
| license | MIT |
| compatibility | opencode |
| metadata | {"category":"document","tags":"pdf html converter mathjax template random"} |
pdf-web/ 文件夹(可直接部署或打开)当用户说「把这个 PDF 转成网页」「用模板生成 PDF 阅读器」「把论文做成网站」「保留公式转网页」时激活。 澄清问题:「PDF 文件路径?需要突出哪些部分(摘要/公式/表格)?」
PDF 提取(优先自动):
python -c "
from pypdf import PdfReader
import sys
reader = PdfReader(sys.argv[1])
text = ''
for page in reader.pages:
text += page.extract_text() + '\n\n'
print(text)
" path/to/file.pdf
(如果 pypdf 未安装,会自动提示 pip install --user pypdf)
模板处理:
输出:
pdf-web/index.html示例1 用户输入:把 paper.pdf 转成网页
→ 随机选用 template-clean-doc.html,生成带侧边目录、MathJax 公式的学术阅读网页
示例2 用户输入:把 lecture.pdf 用现代模板转网页
→ 随机选用 template-modern-blog.html,生成英雄区 + 卡片式内容 + 公式完美渲染的教学网页
1. templates/template-clean-doc.html(干净学术文档风格,推荐论文/教材)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{title}}</title>
<script src="https://cdn.tailwindcss.com"></script>
{{mathjax_script}}
<style>body { font-family: system-ui; } .math { padding: 1rem; }</style>
</head>
<body class="bg-zinc-50 dark:bg-zinc-900 text-zinc-900 dark:text-zinc-100">
<div class="max-w-4xl mx-auto p-8">
<h1 class="text-4xl font-bold mb-8">{{title}}</h1>
<div class="prose dark:prose-invert max-w-none">
{{content}}
</div>
</div>
{{mathjax_script}} <!-- 重复确保加载 -->
<script>
MathJax = { tex: {inlineMath: [['$', '$'], ['\\(', '\\)']] } };
</script>
</body>
</html>
2. templates/template-modern-blog.html(现代博客/教学风格,带英雄区和卡片)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{title}}</title>
<script src="https://cdn.tailwindcss.com"></script>
{{mathjax_script}}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" rel="stylesheet">
</head>
<body class="bg-gradient-to-br from-slate-900 to-zinc-900 text-white">
<div class="max-w-5xl mx-auto">
<!-- Hero -->
<div class="h-64 bg-gradient-to-r from-violet-600 to-fuchsia-600 flex items-center justify-center">
<h1 class="text-5xl font-bold">{{title}}</h1>
</div>
<div class="p-8 prose prose-invert max-w-none">
{{content}}
</div>
</div>
{{mathjax_script}}
<script>
MathJax = { tex: {inlineMath: [['$', '$'], ['\\(', '\\)']] } };
</script>
</body>
</html>
(MathJax 脚本占位符会在注入时自动替换为完整 CDN 代码)