Aspose.PDF FOSS for TypeScript Tính năng

Aspose.PDF FOSS for TypeScript Tính năng

Aspose.PDF FOSS cho TypeScript Các tính năng

Trang này khảo sát các lĩnh vực khả năng chính của Aspose.PDF FOSS cho TypeScript và các lớp đóng vai trò là điểm vào của chúng, để bạn có thể tìm trang hướng dẫn cho nhà phát triển phù hợp với nhiệm vụ hiện tại. Mỗi lĩnh vực được trình bày chi tiết trên trang riêng của nó.


Quản lý Tài liệu và Trang

Document là điểm vào cho mọi thao tác: Document.New() khởi tạo một tài liệu trống tại PageFormat được cung cấp, và Document.OpenFile() / Document.Open() tải một tài liệu hiện có từ đường dẫn tệp hoặc từ byte trong bộ nhớ. doc.Pages là một mảng các đối tượng Page, và Document.WriteTo() / Document.Save() ghi kết quả trở lại.

import { Document, PageFormat } from '@asposefoss/pdf';

const doc = Document.New(PageFormat.A4);
doc.Pages[0].AddText('Hello from Aspose.PDF FOSS!', 72, 720, { fontSize: 14 });
doc.WriteTo('hello.pdf');

Xem Core API cho vòng đời tài liệu, tách, hợp nhất và lắp ráp trang.


Chuyển đổi Định dạng

Document.ToHtml(), Document.ToDocx(), và Document.ToMarkdown() chuyển đổi mỗi trang của tài liệu sang định dạng khác; các phương pháp tương tự tồn tại trên Page để chuyển đổi một trang duy nhất, cộng thêm Page.ToImage() để xuất raster PNG và Page.ToSvg() để xuất SVG độc lập.

const doc = Document.OpenFile('report.pdf');
const html = doc.ToHtml();                       // standalone HTML, all pages
const png = doc.Pages[0].ToImage({ scale: 2 });   // PNG bytes for page 1

Xem Conversion cho bộ đầy đủ các định dạng xuất và tùy chọn.


Chú thích

Page.AddHighlight() và phương thức đồng đẳng Page.Add*() của nó tạo ra các chú thích đánh dấu và hình dạng; mỗi phương thức trả về một tay cầm Annotation đang hoạt động. Annotation.Flatten() nhúng giao diện của chú thích trực tiếp vào luồng nội dung của trang và loại bỏ nó khỏi /Annots, làm cho nó trở thành vĩnh viễn và không tương tác.

const highlight = doc.Pages[0].AddHighlight({ quadPoints: [72, 700, 200, 700, 72, 685, 200, 685] });
highlight.Flatten();

Xem Annotations cho bộ đầy đủ các loại chú thích và tìm kiếm văn bản chú thích.


Biểu mẫu và làm phẳng trường

AcroForm fields are created through doc.Form, a Form facade, or directly on a Page with Page.AddTextField() / Page.AddCheckbox(). Form.AddTextField() và Form.AddCheckbox() trả về một tay cầm trường mà phương thức Flatten() của nó tự nó nhúng nó vào nội dung tĩnh theo cùng cách mà Annotation.Flatten() thực hiện.

const field = doc.Form.AddTextField({
  page: 0, rect: [72, 660, 300, 680], name: 'FullName', value: 'Jane Doe',
});
field.Flatten();

Xem Forms cho bộ đầy đủ các loại trường.


Security

Document.OpenFile() và Document.Open() chấp nhận tùy chọn password để mở tài liệu được bảo vệ, và Document.Save() chấp nhận tùy chọn encrypt để bảo vệ một tài liệu khi lưu. Document.Sign() và Document.Certify() thêm chữ ký số, và Document.VerifySignatures() kiểm tra mọi chữ ký đã có trong tài liệu.

import { Document, InvalidPasswordError } from '@asposefoss/pdf';

try {
  const doc = Document.OpenFile('secret.pdf', { password: 'hunter2' });
  doc.WriteTo('decrypted.pdf');
} catch (e) {
  if (e instanceof InvalidPasswordError) console.error('wrong password');
  else throw e;
}

Xem Security đối với mã hóa, ký và xác minh chữ ký.


Redaction

Page.AddRedact() đánh dấu một vùng hình chữ nhật để xóa nội dung mà chưa thay đổi trang; Page.ApplyRedactions() sau đó ghi lại luồng nội dung một cách phá hủy, loại bỏ vĩnh viễn nội dung đã đánh dấu và trả về số lượng lần xóa đã áp dụng.

page.AddRedact({ rect: [220, 550, 460, 566], fill: [0, 0, 0], overlayText: '[REDACTED]' });
const applied = page.ApplyRedactions();

Xem Redaction đối với chế độ mark-mode so với các việc xóa thông tin đã áp dụng chi tiết hơn.


Cấu trúc tài liệu và khả năng truy cập

Document.AutoTag() suy luận và tạo một /StructTreeRoot từ bố cục trang — tiêu đề dựa trên việc nhóm kích thước phông chữ, đoạn văn, và (với opts.alt) hình ảnh — và trả về một AutoTagReport. Document.GetStructTree() đọc lại cây cấu trúc kết quả, và Document.ValidatePdfUa() kiểm tra tài liệu so với một tập con có thể kiểm tra bằng máy của PDF/UA-1.

const report = doc.AutoTag({ lang: 'en-US', title: 'Quarterly Report', tables: true });
console.log(report);

Xem Structure đối với đề cương, gắn thẻ và các điểm đến có tên.


Mẹo và Thực hành Tốt nhất

  • Sửa đổi các đối tượng Page được truy cập qua doc.Pages trực tiếp — một chú thích, trường, hoặc trang được giữ trong một biến riêng mà không được lấy từ tài liệu trực tiếp sẽ không được phản ánh khi bạn gọi Save() / WriteTo().
  • Flatten() có sẵn trên cả Annotation và các trình xử lý trường biểu mẫu (TextField, CheckboxField và các loại trường khác) — gọi nó một khi nội dung tương tác nên trở thành nội dung trang cố định, không thể chỉnh sửa.
  • Gọi Page.ApplyRedactions() chỉ sau khi mọi dấu Page.AddRedact() cho trang đó đã được thêm; các dấu được thêm sau lời gọi sẽ không được áp dụng.
  • Bắt InvalidPasswordError một cách cụ thể trước khi sử dụng phương thức bắt chung rộng hơn khi gọi Document.OpenFile() / Document.Open() trên đầu vào không tin cậy.
  • Document.AutoTag() tạo ra một cây cấu trúc heuristic — luôn kiểm tra nhanh kết quả bằng Document.GetStructTree() hoặc ValidatePdfUa() thay vì giả định tuân thủ đầy đủ tiêu chuẩn truy cập.

Các vấn đề thường gặp

Vấn đềNguyên nhânSửa
Document.OpenFile() / Document.Open() ném InvalidPasswordErrorTài liệu được bảo vệ bằng mật khẩu và không có mật khẩu nào được cung cấp, hoặc mật khẩu được cung cấp không đúngChuyển { password: '...' } tới Document.OpenFile() / Document.Open()
Dấu che không có hiệu lựcPage.ApplyRedactions() chưa bao giờ được gọi, hoặc đã được gọi trước khi dấu được thêmGọi Page.AddRedact() cho mỗi dấu trước, sau đó gọi Page.ApplyRedactions() một lần
Trường đã làm phẳng hoặc chú thích vẫn hiển thị dưới dạng tương tácFlatten() đã được gọi trên một bản sao thay vì tay cầm được trả về bởi lời gọi Add*()Gọi Flatten() trên đối tượng được trả về trực tiếp bởi AddTextField() / AddHighlight() / v.v.
ValidatePdfUa() vẫn báo thiếu cấu trúc sau khi AutoTag()AutoTag() là heuristic và có thể không gắn thẻ mọi hình ảnh nếu không có callback altChuyển một hàm opts.alt cho AutoTag() để cung cấp văn bản thay thế cho hình ảnh

FAQ

Liệu Aspose.PDF FOSS cho TypeScript có phụ thuộc vào một công cụ PDF thương mại không?

Không. Nó được phát hành dưới giấy phép MIT và logic render, chuyển đổi và ký của nó chạy hoàn toàn trong TypeScript/JavaScript.

Tôi có thể chuyển đổi trực tiếp một PDF sang HTML, Markdown hoặc DOCX không?

Có — Document.ToHtml(), Document.ToMarkdown() và Document.ToDocx() render mọi trang của tài liệu; các phương pháp Page.ToHtml() / Page.ToMarkdown() / Page.ToDocx() tương đương chỉ render một trang.

Sự khác nhau giữa việc đánh dấu và áp dụng một việc xóa nhạy cảm là gì?

Page.AddRedact() chỉ đánh dấu một vùng — nội dung nền vẫn còn hiện hữu và có thể sao chép cho đến khi Page.ApplyRedactions() được gọi, thao tác này sẽ xóa nó một cách phá hủy.

Làm thế nào để tôi làm cho một chú thích hoặc trường biểu mẫu trở nên cố định và không thể chỉnh sửa?

Gọi Flatten() trên đối tượng được trả về bởi lời gọi Add*() đã tạo ra nó — Annotation.Flatten() cho các chú thích, hoặc Flatten() riêng của bộ xử lý trường cho các trường AcroForm.

Tôi nên đi đâu tiếp theo?

Getting Started bao gồm cài đặt và một ví dụ hoạt động đầu tiên. Hướng dẫn dành cho nhà phát triển này tiếp tục với các trang riêng cho từng khu vực khả năng được liên kết ở trên.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
DocumentĐiểm vào — tạo, tải, lưu và quản lý một PDF
Document.New() / Document.OpenFile() / Document.Open()Bắt đầu một tài liệu trống, hoặc tải một tài liệu từ đường dẫn tệp hoặc từ byte trong bộ nhớ
Document.WriteTo() / Document.Save()Ghi tài liệu vào đường dẫn tệp hoặc trả về byte
Document.ToHtml() / Document.ToDocx() / Document.ToMarkdown()Kết xuất mỗi trang sang định dạng khác
Page.ToImage() / Page.ToSvg()Kết xuất một trang duy nhất sang PNG hoặc SVG
Page.AddHighlight() và các phương pháp chú thích Page.Add*() khácTạo một chú thích, trả về một handle đang hoạt động
Annotation.Flatten()Bake giao diện của chú thích vào nội dung trang tĩnh
Form / Form.AddTextField() / Form.AddCheckbox()AcroForm facade và tạo trường
Document.Sign() / Document.Certify() / Document.VerifySignatures()Thêm hoặc xác minh chữ ký số
Page.AddRedact() / Page.ApplyRedactions()Đánh dấu và thực hiện việc che nội dung
Document.AutoTag() / Document.GetStructTree()Soạn và đọc cây cấu trúc logic của tài liệu

Xem thêm

 Tiếng Việt