通过为PPTX文件中的文本应用透明度补丁来修复PDF导出时的字体嵌入问题。当用户遇到PPTX文件导出的PDF显示错误或默认字体,而非预期的已下载或自定义字体(即使已启用字体嵌入)时使用。该方法通过对完全不透明的文本段应用极小(1%)的透明度...
通过为PPTX文件中的文本应用透明度补丁来修复PDF导出时的字体嵌入问题。当用户遇到PPTX文件导出的PDF显示错误或默认字体,而非预期的已下载或自定义字体(即使已启用字体嵌入)时使用。该方法通过对完全不透明的文本段应用极小(1%)的透明度,强制PowerPoint在导出PDF时正确嵌入字体。
Patches PPTX text transparency to force correct font embedding in PDF exports when fonts appear wrong despite embedding being enabled
Fix PowerPoint font embedding issues in PDF export by patching text transparency in PPTX files. Use when a user has a PPTX file where exported PDFs show wrong/default fonts instead of the intended downloaded/custom fonts, even with font embedding enabled. Works by applying minimal (1%) transparency to fully-opaque text runs, which forces PowerPoint to properly embed fonts during PDF export.
直接复制以下提示词,发送给你的 AI 助手即可完成安装。
---
name: pptx-pdf-font-fix
description: Fix PowerPoint font embedding issues in PDF export by patching text transparency in PPTX files. Use when a user has a PPTX file where exported PDFs show wrong/default fonts instead of the intended downloaded/custom fonts, even with font embedding enabled. Works by applying minimal (1%) transparency to fully-opaque text runs, which forces PowerPoint to properly embed fonts during PDF export.
---
# PPT Font Fix
## Problem
PowerPoint's "Export to PDF" can fail to embed downloaded/custom fonts, substituting built-in defaults, even when:
- Fonts are properly installed and embeddable
- "Embed fonts in the file" is checked in PowerPoint options
## Workaround
Applying a tiny transparency (1%) to text with 0% transparency forces PowerPoint to correctly embed fonts in PDF output. This is visually imperceptible but changes how PowerPoint processes the font during export.
## Usage
```bash
python3 scripts/fix_font_transparency.py input.pptx [output.pptx] [--transparency 1]
```
### Options
- `output` -- Output PPTX path (default: `input_fixed.pptx`)
- `--transparency, -t` -- Transparency % to apply (default: 1)
## Behavior
- Only patches text runs that are fully opaque (0% transparency)
- Leaves text that already has any transparency untouched
- Safe to run multiple times
- Only modifies slide XML (`ppt/slides/slideN.xml`), not layouts/masters
## Workflow
1. Receive PPTX file from user
2. Run the fix script: `python3 scripts/fix_font_transparency.py input.pptx`
3. Return the patched PPTX to the user
4. User opens patched file in PowerPoint and exports to PDF -- fonts now embed correctly
## Note
PDF export must be done from PowerPoint desktop. Server-side converters (LibreOffice, Graph API) do not reproduce the same font embedding behavior.
文件内容直接读取自技能仓库,仅供安装前审阅;以实际下载的压缩包为准。