← dompdf.js Studio

合同 PDF 在线生成:前端解决方案

OA 系统、法务平台都需要把合同内容导出成规范的 PDF:要有页眉页脚、条款分页、最后的签字盖章区。dompdf.js 把这些全在前端搞定,不需要后端渲染服务,合同内容即时生成、即时下载。

合同 PDF 的规范要求

正式合同对排版有硬性要求:页边距、条款编号、页脚页码、签字区域。

dompdf.js 支持 @page 分页媒体属性,可精确控制页边距、页眉页脚和页码。

条款较多时自动分页,每页保持页脚页码连续,排版专业。

代码示例

const contractHTML = `
  <style>
    @page { margin: 25mm 20mm; }
    .clause { margin-bottom: 12px; }
  </style>
  <h2 style="text-align:center">软件服务合同</h2>
  <p class="clause"><b>第一条</b> 服务范围:...(条款内容)</p>
  <p class="clause"><b>第二条</b> 付款方式:...</p>
  <div style="margin-top:80px;text-align:center">
    <img src="/seal.png" width="120">
    <p>甲方签章:____  乙方签章:____</p>
  </div>`;

const pdf = new DomPDF();
pdf.addPage(contractHTML, { format: 'A4' });
pdf.save('contract.pdf');

签章处理

电子签章就是一张透明 PNG,直接放在签字区域即可。

合同模板可以预存为 HTML 字符串,动态填充条款内容。

生成的 PDF 为矢量格式,签章清晰不模糊。

⚡ 现场演示(点击生成 PDF)

下面的按钮用 dompdf.js 在浏览器端实时生成 PDF,无需后端:

Hello from dompdf.js!

这是由 dompdf.js 渲染的示例 PDF 内容。