Aspose.PDF FOSS for TypeScript Funkcje

Aspose.PDF FOSS for TypeScript Funkcje

Aspose.PDF FOSS dla TypeScript Funkcje

Ta strona przegląda główne obszary możliwości Aspose.PDF FOSS dla TypeScript oraz klasy, które pełnią ich punkty wejścia, abyś mógł znaleźć odpowiednią stronę przewodnika dewelopera dla bieżącego zadania. Każdy obszar jest szczegółowo opisany na osobnej stronie.


Zarządzanie dokumentami i stronami

Document jest punktem wejścia dla każdej operacji: Document.New() rozpoczyna pusty dokument w danym PageFormat, a Document.OpenFile() / Document.Open() ładują istniejący z ścieżki pliku lub z bajtów w pamięci. doc.Pages jest tablicą obiektów Page, a Document.WriteTo() / Document.Save() zapisują wynik z powrotem.

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');

Zobacz Core API dla cyklu życia dokumentu, dzielenia, scalania i składania stron.


Konwersja formatów

Document.ToHtml(), Document.ToDocx() i Document.ToMarkdown() renderują każdą stronę dokumentu do innego formatu; te same metody istnieją w Page, aby renderować pojedynczą stronę, a dodatkowo Page.ToImage() dla wyjścia rastrowego PNG i Page.ToSvg() dla samodzielnego SVG.

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

Zobacz Conversion dla pełnego zestawu formatów eksportu i opcji.


Adnotacje

Page.AddHighlight() i jego pokrewna metoda Page.Add*() tworzą adnotacje znaczników i kształtów; każda zwraca żywy uchwyt Annotation. Annotation.Flatten() wbudowuje wygląd adnotacji bezpośrednio do strumienia zawartości strony i usuwa ją z /Annots, czyniąc ją trwałą i nieinteraktywną.

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

Zobacz Annotations dla pełnego zestawu typów adnotacji oraz wyszukiwania tekstu adnotacji.


Formularze i spłaszczanie pól

AcroForm pola są tworzone poprzez doc.Form, fasadę Form, lub bezpośrednio na Page przy użyciu Page.AddTextField() / Page.AddCheckbox(). Form.AddTextField() i Form.AddCheckbox() zwracają uchwyt pola, którego własna metoda Flatten() wbudowuje go w treść statyczną w ten sam sposób, w jaki robi to Annotation.Flatten().

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

Zobacz Forms dla pełnego zestawu typów pól.


Security

Document.OpenFile() i Document.Open() akceptują opcję password, aby otworzyć chronione dokumenty, a Document.Save() przyjmuje opcję encrypt, aby chronić dokument przy zapisie. Document.Sign() i Document.Certify() dodają podpisy cyfrowe, a Document.VerifySignatures() sprawdza każdy podpis już znajdujący się w dokumencie.

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;
}

Zobacz Security dla szyfrowania, podpisywania i weryfikacji podpisu.


Redaction

Page.AddRedact() zaznacza prostokątny obszar do redakcji bez zmiany strony; Page.ApplyRedactions() następnie destrukcyjnie przepisuje strumień zawartości, trwale usuwając zaznaczoną treść i zwracając liczbę zastosowanych redakcji.

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

Zobacz Redaction dla trybu zaznaczania vs. zastosowanych redakcji, bardziej szczegółowo.


Struktura dokumentu i dostępność

Document.AutoTag() wnioskowuje i tworzy /StructTreeRoot na podstawie układu strony — nagłówki na podstawie grupowania rozmiaru czcionki, akapity oraz (z opts.alt) rysunki — i zwraca AutoTagReport. Document.GetStructTree() odczytuje powstałe drzewo struktury, a Document.ValidatePdfUa() sprawdza dokument względem podzbioru PDF/UA-1 możliwego do sprawdzenia maszynowego.

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

Zobacz Structure dla konspektów, tagowania i nazwanych miejsc docelowych.


Wskazówki i najlepsze praktyki

  • Modyfikuj obiekty Page uzyskane przez doc.Pages bezpośrednio — adnotacja, pole lub strona przechowywana w osobnej zmiennej, która nie została pobrana z bieżącego dokumentu, nie jest odzwierciedlana, gdy wywołujesz Save() / WriteTo().
  • Flatten() jest dostępny zarówno w Annotation, jak i w obsłudze pól formularza (TextField, CheckboxField i innych typów pól) — wywołaj go, gdy interaktywna treść ma stać się trwałą, nieedytowalną treścią strony.
  • Wywołaj Page.ApplyRedactions() tylko po dodaniu wszystkich znaczników Page.AddRedact() dla tej strony; znaczniki dodane po wywołaniu pozostaną niewykonane.
  • Przechwyć InvalidPasswordError konkretnie przed szerszym przechwyceniem, wywołując Document.OpenFile() / Document.Open() na niepewnym wejściu.
  • Document.AutoTag() generuje heurystyczne drzewo struktury — zawsze sprawdzaj wyniki za pomocą Document.GetStructTree() lub ValidatePdfUa(), zamiast zakładać pełną zgodność z dostępnością.

Typowe problemy

ProblemPrzyczynaNaprawa
Document.OpenFile() / Document.Open() rzuca InvalidPasswordErrorDokument jest zabezpieczony hasłem i nie podano hasła lub podano niewłaściwe hasłoPrzekaż { password: '...' } do Document.OpenFile() / Document.Open()
Znacznik redakcji nie ma efektuPage.ApplyRedactions() nigdy nie został wywołany, lub został wywołany przed dodaniem znacznikaWywołaj Page.AddRedact() najpierw dla każdego znacznika, a następnie Page.ApplyRedactions() raz
Spłaszczone pole lub adnotacja nadal wyświetlane są jako interaktywneFlatten() został wywołany na kopii, a nie na uchwycie zwróconym przez wywołanie Add*()Wywołaj Flatten() na obiekcie zwróconym bezpośrednio przez AddTextField() / AddHighlight() / itp.
ValidatePdfUa() nadal zgłasza brakującą strukturę po AutoTag()AutoTag() jest heurystyczny i może nie oznaczyć każdej figury bez wywołania zwrotnego altPrzekaż funkcję opts.alt do AutoTag(), aby dostarczyć tekst alternatywny dla obrazów

FAQ

Czy Aspose.PDF FOSS dla TypeScript zależy od komercyjnego silnika PDF?

Nie. Jest udostępniony na licencji MIT, a jego logika renderowania, konwersji i podpisywania działa w pełni w TypeScript/JavaScript.

Czy mogę przekonwertować PDF bezpośrednio na HTML, Markdown lub DOCX?

Tak — Document.ToHtml(), Document.ToMarkdown() i Document.ToDocx() renderują każdą stronę dokumentu; równoważne metody Page.ToHtml() / Page.ToMarkdown() / Page.ToDocx() renderują pojedynczą stronę.

Jaka jest różnica między oznaczeniem a zastosowaniem redakcji?

Page.AddRedact() tylko oznacza obszar — ukryta treść nadal istnieje i można ją kopiować, dopóki nie zostanie wywołane Page.ApplyRedactions(), które destrukcyjnie ją usuwa.

Jak uczynić adnotację lub pole formularza stałymi i nieedytowalnymi?

Wywołaj Flatten() na obiekcie zwróconym przez wywołanie Add*(), które go utworzyło — Annotation.Flatten() dla adnotacji lub własne Flatten() uchwytu pola dla pól AcroForm.

Dokąd mam iść dalej?

Rozpoczęcie obejmuje instalację i pierwszy działający przykład. Ten przewodnik dla deweloperów kontynuuje z dedykowanymi stronami dla każdego obszaru funkcjonalnego, wymienionego powyżej.


API Reference Podsumowanie

Klasa/MetodaOpis
DocumentPunkt wejścia — tworzenie, ładowanie, zapisywanie i zarządzanie plikiem PDF
Document.New() / Document.OpenFile() / Document.Open()Rozpocznij od pustego dokumentu lub załaduj go z ścieżki pliku lub z pamięci w postaci bajtów
Document.WriteTo() / Document.Save()Zapisz dokument do ścieżki pliku lub zwróć bajty
Document.ToHtml() / Document.ToDocx() / Document.ToMarkdown()Renderuj każdą stronę do innego formatu
Page.ToImage() / Page.ToSvg()Renderuj pojedynczą stronę do formatu PNG lub SVG
Page.AddHighlight() i inne metody adnotacji Page.Add*()Utwórz adnotację, zwracając aktywny uchwyt
Annotation.Flatten()Zapisz wygląd adnotacji w statycznej treści strony
Form / Form.AddTextField() / Form.AddCheckbox()AcroForm fasada i tworzenie pól
Document.Sign() / Document.Certify() / Document.VerifySignatures()Dodaj lub zweryfikuj podpisy cyfrowe
Page.AddRedact() / Page.ApplyRedactions()Oznacz i zastosuj redakcję treści
Document.AutoTag() / Document.GetStructTree()Autor i odczytaj drzewo logicznej struktury dokumentu

Zobacz także

 Polski