一键将Word、PowerPoint、Excel文档转换为PDF格式,支持微软Office和金山WPS,提供稳定可靠的转换服务。
// 简单易用的API
https://api.tzdoc.com/doc2pdf?url=文件地址
// 支持格式
Word, Excel, PowerPoint, WPS系列
// 快速响应
通常在十几秒内完成转换
我们的API提供全面的文档转换功能,满足各种业务需求
支持Word、PowerPoint、Excel等多种文档格式,同时兼容微软Office和金山WPS文档。
优化的转换引擎,大多数文档在几秒内即可完成转换,保证高效处理。
只需提供公网可访问的文档URL,直接获取转换后的PDF文件,无需上传下载过程。
所有转换在云端完成,无需在本地安装任何软件,节省您的服务器资源。
我们重视数据安全,所有转换的文件均经过加密传输,不会保留您的原始文档。
99.9%的可用性保证,企业级的基础设施,确保您的业务流程不受影响。
简单直观的API,易于集成到您的应用程序中
Doc2PDF 可通过浏览器直接访问拼接好的URL,等服务端转换完成可以直接预览或下载
URL格式
https://api.tzdoc.com/doc2pdf?url=[文件URL]&key=[API密钥]
- 文件URL: [公网可以访问的文件URL]
- key: [API密钥] (可选,不传每天限制10次)
Doc2PDF API 提供简单直接的文档转PDF服务,支持两种调用方式:通过URL和通过文件流上传。
// 通过URL调用API
https://api.tzdoc.com/doc2pdf?url=[文件URL]&key=[API密钥]
- 文件URL: [公网可以访问的文件URL]
- key: [API密钥] (可选,不传每天限制10次)
// 通过文件流上传调用API
POST https://api.tzdoc.com/doc2pdf
Form参数:
- file: [文件数据流]
- key: [API密钥] (可选,不传每天限制10次)
注意:如果不提供API密钥,每天将限制10次免费转换。
| 参数名 | 类型 | 必需 | 说明 |
|---|---|---|---|
| url | string | 否 | 公网可访问的文档文件URL(通过URL方式调用时必需) |
| file | file | 否 | 文档文件数据流(通过文件流方式调用时必需) |
| key | string | 否 | API密钥(可选,不传每天限制10次免费转换) |
返回PDF文件的二进制数据,Content-Type为application/pdf
返回JSON格式的错误信息
{
"message": "错误描述",
"status": 错误代码
}
import requests
# 文档URL
doc_url = "https://example.com/sample.docx"
# 可选:API密钥
api_key = "your_api_key"
# 构建API请求URL
api_url = f"https://api.tzdoc.com/doc2pdf?url={doc_url}&key={api_key}"
# 发送请求并获取PDF
response = requests.get(api_url)
if response.status_code == 200:
# 保存PDF文件
with open("converted.pdf", "wb") as f:
f.write(response.content)
print("PDF转换成功!")
else:
print(f"转换失败: {response.text}")
import requests
# 文件路径
file_path = "path/to/your/document.docx"
# 可选:API密钥
api_key = "your_api_key"
# 创建FormData
files = {'file': open(file_path, 'rb')}
data = {'key': api_key} # 可选,如果不提供,每天限制10次
# 发送请求并获取PDF
api_url = "https://api.tzdoc.com/doc2pdf"
response = requests.post(api_url, files=files, data=data)
if response.status_code == 200:
# 保存PDF文件
with open("converted.pdf", "wb") as f:
f.write(response.content)
print("PDF转换成功!")
else:
print(f"转换失败: {response.text}")
// 使用fetch API
const docUrl = "https://example.com/sample.docx";
const apiKey = "your_api_key"; // 可选
const apiUrl = `https://api.tzdoc.com/doc2pdf?url=${encodeURIComponent(docUrl)}&key=${apiKey}`;
fetch(apiUrl)
.then(response => {
if (!response.ok) {
throw new Error('转换失败');
}
return response.blob();
})
.then(blob => {
// 创建下载链接
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'converted.pdf';
document.body.appendChild(a);
a.click();
a.remove();
window.URL.revokeObjectURL(url);
})
.catch(error => console.error('错误:', error));
// HTML中需要一个文件选择输入框
// <input type="file" id="fileInput">
// <button id="convertButton">转换</button>
// JavaScript代码
const convertButton = document.getElementById('convertButton');
convertButton.addEventListener('click', () => {
const fileInput = document.getElementById('fileInput');
const file = fileInput.files[0];
if (!file) {
alert('请选择一个文件');
return;
}
const formData = new FormData();
formData.append('file', file);
formData.append('key', 'your_api_key'); // 可选,如果不提供,每天限制10次
fetch('https://www.tzdoc.com/doc2pdf', {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('转换失败');
}
return response.blob();
})
.then(blob => {
// 创建下载链接
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'converted.pdf';
document.body.appendChild(a);
a.click();
a.remove();
window.URL.revokeObjectURL(url);
})
.catch(error => console.error('错误:', error));
});
// 文档URL
$doc_url = "https://example.com/sample.docx";
// 可选:API密钥
$api_key = "your_api_key";
// 构建API请求URL
$api_url = "https://www.tzdoc.com/doc2pdf?url=" . urlencode($doc_url) . "&key=" . urlencode($api_key);
// 获取PDF内容
$pdf_content = file_get_contents($api_url);
if ($pdf_content) {
// 设置响应头
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="converted.pdf"');
header('Content-Length: ' . strlen($pdf_content));
// 输出PDF
echo $pdf_content;
} else {
echo "转换失败";
}
// 文件上传处理
if (isset($_FILES['file'])) {
// 创建cURL资源
$ch = curl_init();
// 设置URL和其他cURL选项
curl_setopt($ch, CURLOPT_URL, "https://www.tzdoc.com/doc2pdf");
curl_setopt($ch, CURLOPT_POST, true);
// 创建表单数据,包括文件
$post_data = array(
'file' => new CURLFile($_FILES['file']['tmp_name'], $_FILES['file']['type'], $_FILES['file']['name']),
'key' => 'your_api_key' // 可选,如果不提供,每天限制10次
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
// 执行cURL会话
$response = curl_exec($ch);
// 获取响应头大小
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
// 分离头部和内容
$headers = substr($response, 0, $header_size);
$content = substr($response, $header_size);
// 检查响应头是否包含PDF内容类型
if (strpos($headers, 'Content-Type: application/pdf') !== false) {
// 设置响应头并输出PDF
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="converted.pdf"');
header('Content-Length: ' . strlen($content));
echo $content;
} else {
// 输出错误信息
echo "转换失败: " . $content;
}
// 关闭cURL资源
curl_close($ch);
} else {
echo "请上传文件";
}
我们整理了一些用户最常提问的问题和答案,帮助您更好地了解我们的服务。
选择适合您业务需求的方案