�️ Signature Suite Guide

Bộ công cụ tạo chữ ký chuyên nghiệp cho mọi trường hợp.

1. Basic Signature Single

Tạo một khối chữ ký đơn giản với đường kẻ.

// pdf.addSimpleSignature(name, title, x, options)
pdf.addSimpleSignature("Nguyễn Văn A", "GIÁM ĐỐC", null, {
  fontSize: 12,
  width: 150
});

2. Dual Signature Contract

Layout 2 bên cổ điển cho hợp đồng (Bên A - Bên B).

// pdf.addDualSignature(leftConfig, rightConfig)
pdf.addDualSignature(
  { 
    title: "ĐẠI DIỆN BÊN A", 
    name: "Nguyễn Văn A", 
    note: "(Ký, đóng dấu)",
    date: "Ngày 01/01/2024" 
  },
  { 
    title: "ĐẠI DIỆN BÊN B", 
    name: "Trần Thị B", 
    note: "(Ký, ghi rõ họ tên)" 
  }
);

3. Smart Signature Advanced

Tự động dùng ảnh nếu có, hoặc tạo chữ ký giả (text-based) nếu không.

// pdf.addSmartSignature(name, title, imageOpts, date, opts)
pdf.addSmartSignature("Nguyễn Văn A", "GIÁM ĐỐC", {
  imagePath: null, // Hoặc đường dẫn ảnh
  fallbackText: "Nguyen Van A", // Chữ ký Text nếu ko có ảnh
  createFallback: true
}, "Ngày 20/10/2024", {
  align: "right",
  blockWidth: 150
});

4. Secondary Signature Initials

Chữ ký nháy / ký tắt ở góc trang (xuất hiện trên TOÀN BỘ trang).

// pdf.addSecondarySignature(options)
pdf.addSecondarySignature({
  nameTag: "NVA", // Chữ hiển thị
  positions: ["top-right", "bottom-left"], // Vị trí
  color: [100, 100, 100],
  fontSize: 10
});

5. Picture Signature File

Chèn ảnh chữ ký từ đường dẫn file hoặc Base64.

// pdf.addSignatureFromFile(name, title, path, date, opts)
pdf.addSignatureFromFile(
  "Nguyễn Văn A", 
  "GIÁM ĐỐC", 
  "images/signature.png", // Path hoặc Base64
  "Ngày 20/10/2024"
);

6. Custom Text Signature Stylized

Tạo chữ ký cách điệu từ văn bản (giả lập chữ ký tay).

// pdf.createTextSignature(text) -> Base64 Image
const sigImg = pdf.createTextSignature("Nguyen Van A");

// Dùng chung với addSignatureWithImage
pdf.addSignatureWithImage(
  "Nguyễn Văn A",
  "NGƯỜI LẬP BIỂU",
  sigImg,
  "Ngày 20/10/2024"
);

7. Form Signature Forms

Tạo các dòng điền thông tin (Ngày, Chức vụ, Ký tên) tự động.

// pdf.addSignature(signers, options)
pdf.addSignature([
  { title: "Kế toán trưởng", label: "(Ký tên)" }
], {
  layout: "horizontal", 
  spacing: 30
});
⚡ Live Demo:
Tạo tài liệu mẫu chứa tất cả loại chữ ký trên.

📄 Live Preview