Aspose.PDF FOSS for TypeScript Funktionen

Aspose.PDF FOSS for TypeScript Funktionen

Aspose.PDF FOSS für TypeScript Funktionen

Diese Seite gibt einen Überblick über die wichtigsten Funktionsbereiche von Aspose.PDF FOSS für TypeScript und die Klassen, die als Einstiegspunkte dienen, sodass Sie die passende Entwickler-Guide-Seite für die jeweilige Aufgabe finden können. Jeder Bereich wird auf einer eigenen Seite ausführlich behandelt.


Dokumenten- und Seitenverwaltung

Document ist der Einstiegspunkt für jede Operation: Document.New() startet ein leeres Dokument an einem gegebenen PageFormat, und Document.OpenFile() / Document.Open() laden ein vorhandenes Dokument von einem Dateipfad oder aus im Speicher befindlichen Bytes. doc.Pages ist ein Array von Page-Objekten, und Document.WriteTo() / Document.Save() schreiben das Ergebnis zurück.

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

Siehe Core API für den Dokumentenlebenszyklus, das Aufteilen, Zusammenführen und die Seitenerstellung.


Formatkonvertierung

Document.ToHtml(), Document.ToDocx() und Document.ToMarkdown() rendern jede Seite eines Dokuments in ein anderes Format; dieselben Methoden existieren auf Page, um eine einzelne Seite zu rendern, plus Page.ToImage() für PNG-Rasterausgabe und Page.ToSvg() für eigenständiges 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

Siehe Conversion für die vollständige Palette an Exportformaten und Optionen.


Annotationen

Page.AddHighlight() und seine verwandte Page.Add*() Methoden erzeugen Markup- und Shape-Annotationen; jede gibt einen Live-Annotation-Handle zurück. Annotation.Flatten() bäckt das Aussehen einer Annotation direkt in den Inhaltsstrom der Seite ein und entfernt sie aus /Annots, wodurch sie permanent und nicht interaktiv wird.

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

Siehe Annotations für die vollständige Palette an Annotationsarten und die Suche nach Annotationen-Text.


Formulare und Feldflachlegung

AcroForm Felder werden über doc.Form, einer Form Fassade, oder direkt auf einem Page mit Page.AddTextField() / Page.AddCheckbox() erstellt. Form.AddTextField() und Form.AddCheckbox() geben einen Feld-Handle zurück, dessen eigene Flatten()-Methode es auf dieselbe Weise in statischen Inhalt einbettet, wie Annotation.Flatten() dies tut.

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

Siehe Forms für die vollständige Menge an Feldtypen.


Security

Document.OpenFile() und Document.Open() akzeptieren eine password-Option, um geschützte Dokumente zu öffnen, und Document.Save() akzeptiert eine encrypt-Option, um beim Speichern eines Dokuments zu schützen. Document.Sign() und Document.Certify() fügen digitale Signaturen hinzu, und Document.VerifySignatures() prüft jede bereits im Dokument vorhandene Signatur.

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

Siehe Security für Verschlüsselung, Signierung und Signaturprüfung.


Redaction

Page.AddRedact() markiert ein rechteckiges Gebiet für die Redaktion, ohne die Seite bereits zu ändern; Page.ApplyRedactions() überschreibt dann destruktiv den Inhaltsstrom, entfernt den markierten Inhalt endgültig und gibt die Anzahl der angewendeten Redaktionen zurück.

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

Siehe Redaction für Mark-Modus vs. angewendete Redaktionen im Detail.


Dokumentstruktur und Barrierefreiheit

Document.AutoTag() leitet aus dem Seitenlayout ein /StructTreeRoot ab und erstellt es — Überschriften anhand von Schriftgrößen-Clustering, Absätze und (mit opts.alt) Abbildungen — und gibt ein AutoTagReport zurück. Document.GetStructTree() liest den resultierenden Strukturbaum aus, und Document.ValidatePdfUa() prüft das Dokument gegen einen maschinenprüfbaren Teilbereich von PDF/UA-1.

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

Siehe Structure für Gliederungen, Tagging und benannte Ziele.


Tipps und bewährte Verfahren

  • Ändern Sie die Page-Objekte, die über doc.Pages erreicht werden – eine Anmerkung, ein Feld oder eine Seite, die in einer separaten Variable gehalten wird und nicht aus dem Live-Dokument stammt, wird nicht berücksichtigt, wenn Sie Save() / WriteTo() aufrufen.
  • Flatten() ist sowohl auf Annotation als auch auf Formularfeld-Handles (TextField, CheckboxField und den anderen Feldtypen) verfügbar – rufen Sie es auf, sobald interaktive Inhalte zu permanentem, nicht editierbarem Seiteninhalt werden sollen.
  • Rufen Sie Page.ApplyRedactions() nur auf, nachdem jede Page.AddRedact()-Markierung für diese Seite hinzugefügt wurde; nach dem Aufruf hinzugefügte Markierungen bleiben unverwendet.
  • Fangen Sie InvalidPasswordError gezielt ab, bevor ein allgemeiner Catch-All-Mechanismus beim Aufruf von Document.OpenFile() / Document.Open() auf nicht vertrauenswürdige Eingaben greift.
  • Document.AutoTag() erzeugt einen heuristischen Strukturbaum – prüfen Sie das Ergebnis stets mit Document.GetStructTree() oder ValidatePdfUa(), anstatt die vollständige Barrierefreiheitskonformität anzunehmen.

Häufige Probleme

ProblemUrsacheBehebung
Document.OpenFile() / Document.Open() wirft InvalidPasswordErrorDas Dokument ist passwortgeschützt und es wurde kein Passwort oder das falsche Passwort angegeben.Übergebe { password: '...' } an Document.OpenFile() / Document.Open()
Die Redaktionsmarkierung hat keine WirkungPage.ApplyRedactions() wurde nie aufgerufen, oder wurde aufgerufen, bevor die Markierung hinzugefügt wurde.Rufe zuerst Page.AddRedact() für jede Markierung auf, dann Page.ApplyRedactions() einmal.
Abgeflachtes Feld oder Anmerkung wird immer noch als interaktiv angezeigtFlatten() wurde auf einer Kopie aufgerufen, anstatt auf dem vom Add*()-Aufruf zurückgegebenen HandleRufen Sie Flatten() auf dem Objekt auf, das direkt von AddTextField() / AddHighlight() / usw. zurückgegeben wird.
ValidatePdfUa() meldet weiterhin fehlende Struktur nach AutoTag()AutoTag() ist heuristisch und taggt möglicherweise nicht jede Abbildung ohne einen alt-CallbackÜbergeben Sie eine opts.alt-Funktion an AutoTag(), um Alt-Text für Bilder bereitzustellen

FAQ

Hängt Aspose.PDF FOSS für TypeScript von einer kommerziellen PDF-Engine ab?

Nein. Es wird unter der MIT-Lizenz veröffentlicht und seine Rendering-, Konvertierungs- und Signaturlogik läuft vollständig in TypeScript/JavaScript.

Kann ich ein PDF direkt in HTML, Markdown oder DOCX konvertieren?

Ja — Document.ToHtml(), Document.ToMarkdown() und Document.ToDocx() rendern jede Seite des Dokuments; die entsprechenden Page.ToHtml() / Page.ToMarkdown() / Page.ToDocx()-Methoden rendern eine einzelne Seite.

Was ist der Unterschied zwischen Markieren und Anwenden einer Redaktion?

Page.AddRedact() markiert nur einen Bereich — der zugrunde liegende Inhalt ist weiterhin vorhanden und kopierbar, bis Page.ApplyRedactions() aufgerufen wird, was ihn destruktiv entfernt.

Wie mache ich eine Anmerkung oder ein Formularfeld dauerhaft und nicht editierbar?

Rufe Flatten() auf dem Objekt auf, das vom Add*()-Aufruf zurückgegeben wurde, der es erstellt hat — Annotation.Flatten() für Anmerkungen oder das eigene Flatten() des Feld-Handles für AcroForm-Felder.

Wohin gehe ich als Nächstes?

Getting Started behandelt die Installation und ein erstes funktionierendes Beispiel. Dieses Entwicklerhandbuch setzt mit speziellen Seiten für jeden oben verlinkten Funktionsbereich fort.


API Reference Zusammenfassung

Klasse/MethodeBeschreibung
DocumentEinstiegspunkt — PDF erstellen, laden, speichern und verwalten
Document.New() / Document.OpenFile() / Document.Open()Ein leeres Dokument starten oder eines aus einem Dateipfad oder aus In-Memory-Bytes laden
Document.WriteTo() / Document.Save()Das Dokument in einen Dateipfad schreiben oder Bytes zurückgeben
Document.ToHtml() / Document.ToDocx() / Document.ToMarkdown()Jede Seite in ein anderes Format rendern
Page.ToImage() / Page.ToSvg()Rendern Sie eine einzelne Seite zu PNG oder SVG
Page.AddHighlight() und andere Page.Add*() AnnotationsmethodenErstellen Sie eine Annotation, die einen Live-Handle zurückgibt
Annotation.Flatten()Backen Sie das Aussehen einer Annotation in den statischen Seiteninhalt ein
Form / Form.AddTextField() / Form.AddCheckbox()AcroForm Fassade und Feld-Erstellung
Document.Sign() / Document.Certify() / Document.VerifySignatures()Digitale Signaturen hinzufügen oder überprüfen
Page.AddRedact() / Page.ApplyRedactions()Markieren und Inhaltsredaktion anwenden
Document.AutoTag() / Document.GetStructTree()Autor und lesen Sie den logischen Strukturbaum des Dokuments

Siehe auch

 Deutsch