Loading...
Loading...
Compare original and translation side by side
Official docs: https://dev.pdf4me.com/apiv2/documentation/
export PDF4ME_API_KEY="your-api-key-here"Important: When usingin a command that pipes to another command, wrap the command containing$VARin$VAR. Due to a Claude Code bug, environment variables are silently cleared when pipes are used directly.bash -c '...'bashbash -c 'curl -s "https://api.example.com" -H "Authorization: Bearer $API_KEY"'
export PDF4ME_API_KEY="your-api-key-here"重要提示: 当在包含管道的命令中使用时,请将包含$VAR的命令用$VAR包裹。由于Claude Code的一个bug,直接使用管道时环境变量会被静默清除。bash -c '...'bashbash -c 'curl -s "https://api.example.com" -H "Authorization: Bearer $API_KEY"'
undefinedundefined
Write to `/tmp/pdf4me_request.json`:
```json
{
"docContent": "${BASE64_CONTENT}",
"docName": "test.txt"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > /tmp/output.pdf
写入`/tmp/pdf4me_request.json`:
```json
{
"docContent": "${BASE64_CONTENT}",
"docName": "test.txt"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > /tmp/output.pdfHTML_CONTENT=$(echo '<html><body><h1>Hello World</h1><p>This is a test.</p></body></html>' | base64)/tmp/pdf4me_request.json{
"docContent": "${HTML_CONTENT}",
"docName": "test.html",
"layout": "Portrait",
"format": "A4"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertHtmlToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' --output /tmp/from-html.pdfHTML_CONTENT=$(echo '<html><body><h1>Hello World</h1><p>This is a test.</p></body></html>' | base64)/tmp/pdf4me_request.json{
"docContent": "${HTML_CONTENT}",
"docName": "test.html",
"layout": "Portrait",
"format": "A4"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertHtmlToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' --output /tmp/from-html.pdf/tmp/pdf4me_request.json{
"webUrl": "https://example.com"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertUrlToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' > /tmp/webpage.pdf/tmp/pdf4me_request.json{
"webUrl": "https://example.com"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ConvertUrlToPdf" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' > /tmp/webpage.pdfPDF1_BASE64=$(base64 < file1.pdf)
PDF2_BASE64=$(base64 < file2.pdf)/tmp/pdf4me_request.json{
"docContent": ["${PDF1_BASE64}", "${PDF2_BASE64}"],
"docName": "merged.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Merge" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > merged.pdfPDF1_BASE64=$(base64 < file1.pdf)
PDF2_BASE64=$(base64 < file2.pdf)/tmp/pdf4me_request.json{
"docContent": ["${PDF1_BASE64}", "${PDF2_BASE64}"],
"docName": "merged.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Merge" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > merged.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"splitAction": "splitAfterPage",
"splitAfterPage": 2
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Split" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'PDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"splitAction": "splitAfterPage",
"splitAfterPage": 2
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Split" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'PDF_BASE64=$(base64 < large.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "large.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Compress" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > compressed.pdfPDF_BASE64=$(base64 < large.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "large.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/Compress" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > compressed.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/PdfToWord" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > output.docxPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/PdfToWord" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > output.docxPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"imageFormat": "png",
"width": 800
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/CreateThumbnail" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'PDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"imageFormat": "png",
"width": 800
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/CreateThumbnail" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'PDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"stampText": "CONFIDENTIAL",
"pages": "all",
"alignX": "center",
"alignY": "middle",
"alpha": 0.3
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/TextStamp" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > stamped.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"stampText": "CONFIDENTIAL",
"pages": "all",
"alignX": "center",
"alignY": "middle",
"alpha": 0.3
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/TextStamp" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > stamped.pdfPDF_BASE64=$(base64 < scanned.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "scanned.pdf",
"ocrLanguage": "eng"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/PdfOcr" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > searchable.pdfPDF_BASE64=$(base64 < scanned.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "scanned.pdf",
"ocrLanguage": "eng"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/PdfOcr" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > searchable.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"password": "secret123"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ProtectDocument" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > protected.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"password": "secret123"
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ProtectDocument" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > protected.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"pageNrs": [1, 3, 5]
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ExtractPages" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > extracted.pdfPDF_BASE64=$(base64 < input.pdf)/tmp/pdf4me_request.json{
"docContent": "${PDF_BASE64}",
"docName": "input.pdf",
"pageNrs": [1, 3, 5]
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/ExtractPages" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json' | jq -r '.docContent' | base64 -d > extracted.pdf| Category | Endpoint | Description |
|---|---|---|
| Convert | | Word/Excel/PPT/Image → PDF |
| HTML → PDF | |
| URL → PDF | |
| Markdown → PDF | |
| PDF → Word | |
| PDF → Excel | |
| PDF → PowerPoint | |
| Merge/Split | | Merge multiple PDFs |
| Split PDF | |
| Extract specific pages | |
| Optimize | | Compress PDF |
| Optimize for web | |
| Edit | | Add text watermark |
| Add image watermark | |
| Add page numbers | |
| Rotate pages | |
| Extract | | PDF → Images |
| Extract images/fonts | |
| Extract tables | |
| OCR | | OCR scanned PDFs |
| Security | | Password protect |
| Remove password | |
| Forms | | Fill form fields |
| Extract form data | |
| Barcode | | Generate barcode |
| Add barcode to PDF | |
| Read barcode from PDF |
| 分类 | 接口地址 | 描述 |
|---|---|---|
| 格式转换 | | Word/Excel/PPT/图片 → PDF |
| HTML → PDF | |
| URL → PDF | |
| Markdown → PDF | |
| PDF → Word | |
| PDF → Excel | |
| PDF → PowerPoint | |
| 合并/拆分 | | 合并多个PDF |
| 拆分PDF | |
| 提取指定页面 | |
| 优化 | | 压缩PDF |
| 优化以适配网页 | |
| 编辑 | | 添加文本水印 |
| 添加图片水印 | |
| 添加页码 | |
| 旋转页面 | |
| 提取 | | PDF → 图片 |
| 提取图片/字体 | |
| 提取表格 | |
| OCR识别 | | 对扫描PDF进行OCR识别 |
| 安全 | | 密码保护 |
| 移除密码 | |
| 表单 | | 填充表单字段 |
| 提取表单数据 | |
| 条形码 | | 生成条形码 |
| 为PDF添加条形码 | |
| 从PDF读取条形码 |
/tmp/pdf4me_request.json{
"docContent": "base64-encoded-file",
"docName": "filename.ext",
"...other parameters": "..."
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/{endpoint}" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'/tmp/pdf4me_request.json{
"docContent": "base64-encoded-file",
"docName": "filename.ext",
"...other parameters": "..."
}bash -c 'curl -s -X POST "https://api.pdf4me.com/api/v2/{endpoint}" --header "Authorization: ${PDF4ME_API_KEY}" --header "Content-Type: application/json" -d @/tmp/pdf4me_request.json'{
"docContent": "base64-encoded-result",
"docName": "output.pdf",
"pageCount": 5
}{
"docContent": "base64-encoded-result",
"docName": "output.pdf",
"pageCount": 5
}