ワンクリックで
proslide-export
ProSlide 导出子skill。当主skill `proslide` 需要将HTML预览导出为PPTX时使用。 触发条件:用户已确认HTML预览,要求生成PPTX文件。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
ProSlide 导出子skill。当主skill `proslide` 需要将HTML预览导出为PPTX时使用。 触发条件:用户已确认HTML预览,要求生成PPTX文件。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
ProSlide - 智能幻灯片生成器(HTML预览→四层防打回质检→截图→PPTX)。当用户提到"PPT"、"幻灯片"、"汇报"、"presentation"、"HTML预览"、"生成页面"、"优化PPT"、"做成PPT"时必须使用本技能,即使用户没有显式说出 ProSlide。核心流程是多轮确认:参数确认 → 诊断/延伸确认 → HTML预览 → 四层防打回质检 → 用户确认(含讲稿确认)→ 高清截图导出PPTX。
ProSlide 图表设计子 skill。当主 skill `proslide` 涉及 ECharts 图表生成或图表审查时使用。 触发条件:页面需要插入柱状图、折线图、饼图、堆积图、散点图、雷达图等数据可视化图表。
ProSlide 内容延伸子skill。当主skill `proslide` 确认用户需要延伸内容时使用。 触发条件:用户素材过少,无法支撑完整页面结构,需要基于已有信息逻辑推导补充内容。
ProSlide 内容审查子skill。当主skill `proslide` 需要进行内容诊断时使用。 触发条件:用户素材需要内容审查、缺口识别、错别字检查。
ProSlide 讲稿生成子 skill。当主 skill `proslide` 在 HTML 预览确认阶段用户选择"需要生成讲稿"时触发。 基于 PPT 页面结构、汇报对象、汇报目的等信息,生成适配现场口述的汇报讲稿。
| name | proslide-export |
| description | ProSlide 导出子skill。当主skill `proslide` 需要将HTML预览导出为PPTX时使用。 触发条件:用户已确认HTML预览,要求生成PPTX文件。 |
HTML → 高清截图 → PPTX。技术规范,禁止变通。
wait_for_timeout(1000)).slide 元素,元素级截图.pptxscreenshot_config = {
"device_scale_factor": 2, # 强制2倍,禁止降低
"target_selector": ".slide", # 强制元素截图,禁止body
"full_page": False, # 强制False
"type": "png", # 强制PNG
"scale": "device",
}
from playwright.sync_api import sync_playwright
from pptx import Presentation
from pptx.util import Inches
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page(
viewport={"width": 1280, "height": 720},
device_scale_factor=2, # 强制2倍,禁止降低
)
page.goto(f"file://{html_path}")
page.wait_for_timeout(1000)
slide = page.query_selector(".slide")
screenshot_path = "slide.png"
slide.screenshot(path=screenshot_path, type="png", scale="device")
browser.close()
prs = Presentation()
prs.slide_width = Inches(13.333)
prs.slide_height = Inches(7.5)
blank_layout = prs.slide_layouts[6]
s = prs.slides.add_slide(blank_layout)
s.shapes.add_picture(screenshot_path, Inches(0), Inches(0), width=Inches(13.333))
prs.save(output_path)
page.screenshot() 直接截整页device_scale_factor < 2.page-footer 导致页码出现在截图中