Aspose.PDF FOSS for TypeScript Funktioner

Aspose.PDF FOSS for TypeScript Funktioner

Aspose.PDF FOSS för TypeScript Funktioner

Den här sidan ger en översikt över de viktigaste funktionsområdena för Aspose.PDF FOSS för TypeScript och de klasser som fungerar som deras ingångspunkter, så att du kan hitta rätt utvecklarguide-sida för den aktuella uppgiften. Varje område behandlas utförligt på en egen sida.


Dokument- och sidhantering

Document är ingångspunkten för varje operation: Document.New() startar ett tomt dokument vid en given PageFormat, och Document.OpenFile() / Document.Open() laddar ett befintligt från en filsökväg eller från minnes-byte. doc.Pages är en array av Page-objekt, och Document.WriteTo() / Document.Save() skriver tillbaka resultatet.

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

Se Kärna API för dokumentlivscykel, delning, sammanslagning och sidmontering.


Formatkonvertering

Document.ToHtml(), Document.ToDocx() och Document.ToMarkdown() renderar varje sida i ett dokument till ett annat format; samma metoder finns på Page för att rendera en enskild sida, samt Page.ToImage() för PNG-rasterutmatning och Page.ToSvg() för fristående 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

Se Conversion för hela uppsättningen av exportformat och alternativ.


Anmärkningar

Page.AddHighlight() och dess syster Page.Add*() metoder skapar markup- och shape-annotationer; varje returnerar ett levande Annotation handtag. Annotation.Flatten() bakar annotationens utseende direkt in i sidans content stream och tar bort den från /Annots, vilket gör den permanent och icke-interaktiv.

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

Se Annotations för hela uppsättningen av annoteringstyper och sökning i annoteringstext.


Formulär och fältplattning

AcroForm fält skapas via doc.Form, en Form fasad, eller direkt på en Page med Page.AddTextField() / Page.AddCheckbox(). Form.AddTextField() och Form.AddCheckbox() returnerar ett fält-handtag vars egen Flatten() metod bakar in det i statiskt innehåll på samma sätt som Annotation.Flatten() gör.

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

Se Forms för den fullständiga uppsättningen av fälttyper.


Security

Document.OpenFile() och Document.Open() accepterar ett password alternativ för att öppna skyddade dokument, och Document.Save() accepterar ett encrypt alternativ för att skydda ett vid sparning. Document.Sign() och Document.Certify() lägger till digitala signaturer, och Document.VerifySignatures() kontrollerar varje signatur som redan finns i ett dokument.

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

Se Security för kryptering, signering och verifiering av signatur.


Redaction

Page.AddRedact() markerar en rektangulär region för redigering utan att ännu ändra sidan; Page.ApplyRedactions() skriver sedan destruktivt om innehållsströmmen, tar bort det markerade innehållet permanent och returnerar antalet tillämpade redigeringar.

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

Se Redaction för markläge vs. tillämpade raderingar i mer detalj.


Dokumentstruktur och tillgänglighet

Document.AutoTag() infererar och skapar en /StructTreeRoot från sidlayout — rubriker baserade på teckenstorleksklustring, stycken och (med opts.alt) figurer — och returnerar en AutoTagReport. Document.GetStructTree() läser tillbaka den resulterande strukturtträdet, och Document.ValidatePdfUa() kontrollerar dokumentet mot en maskinläslig delmängd av PDF/UA-1.

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

Se Structure för konturer, taggning och namngivna destinationer.


Tips och bästa praxis

  • Ändra Page-objekten som nås via doc.Pages direkt — en annotation, ett fält eller en sida som hålls i en separat variabel och som inte hämtats från det levande dokumentet återspeglas inte när du anropar Save() / WriteTo().
  • Flatten() är tillgänglig både på Annotation och formulärfälthanterare (TextField, CheckboxField och de andra fälttyperna) — anropa den när interaktivt innehåll ska bli permanent, icke-redigerbart sidinnehåll.
  • Anropa Page.ApplyRedactions() endast efter att varje Page.AddRedact()-märke för den sidan har lagts till; märken som läggs till efter anropet förblir oapplyerade.
  • Fånga InvalidPasswordError specifikt innan ett bredare generellt fångst när du anropar Document.OpenFile() / Document.Open() på opålitlig indata.
  • Document.AutoTag() skapar ett heuristiskt strukturträd — kontrollera alltid resultatet med Document.GetStructTree() eller ValidatePdfUa() istället för att anta full tillgänglighetskompatibilitet.

Vanliga problem

ProblemOrsakÅtgärd
Document.OpenFile() / Document.Open() kastar InvalidPasswordErrorDokumentet är lösenordsskyddat och inget lösenord, eller fel lösenord, angavs.Skicka { password: '...' } till Document.OpenFile() / Document.Open()
Röjningsmarkering har ingen effektPage.ApplyRedactions() anropades aldrig, eller anropades innan markeringen lades tillAnropa Page.AddRedact() för varje markering först, sedan Page.ApplyRedactions() en gång
Plattat fält eller annotation visas fortfarande som interaktivFlatten() anropades på en kopia snarare än handtaget som returnerades av Add*() anropetAnropa Flatten() på objektet som returneras direkt av AddTextField() / AddHighlight() / osv.
ValidatePdfUa() rapporterar fortfarande saknad struktur efter AutoTag()AutoTag() är heuristisk och kanske inte märker varje figur utan ett alt callbackSkicka en opts.alt-funktion till AutoTag() för att tillhandahålla alt-text för bilder

FAQ

Beror Aspose.PDF FOSS för TypeScript på en kommersiell PDF-motor?

Nej. Den är släppt under MIT-licensen och dess renderings-, konverterings- och signeringslogik körs helt i TypeScript/JavaScript.

Kan jag konvertera en PDF direkt till HTML, Markdown eller DOCX?

Ja — Document.ToHtml(), Document.ToMarkdown() och Document.ToDocx() renderar varje sida i dokumentet; de motsvarande Page.ToHtml() / Page.ToMarkdown() / Page.ToDocx()-metoderna renderar en enskild sida.

Vad är skillnaden mellan att markera och att verkställa en redigering?

Page.AddRedact() markerar bara ett område — det underliggande innehållet är fortfarande närvarande och kan kopieras/markeras tills Page.ApplyRedactions() anropas, vilket destruktivt tar bort det.

Hur gör jag en annotation eller ett formulärfält permanent och icke-redigerbart?

Anropa Flatten() på objektet som returnerades av Add*()-anropet som skapade det — Annotation.Flatten() för annotationer, eller fälthandtagets egen Flatten() för AcroForm-fält.

Vart går jag härnäst?

Getting Started täcker installation och ett första fungerande exempel. Denna utvecklarguide fortsätter med dedikerade sidor för varje funktionsområde som länkas ovan.


API Reference Sammanfattning

Klass/MetodBeskrivning
DocumentIngångspunkt — skapa, ladda, spara och hantera en PDF
Document.New() / Document.OpenFile() / Document.Open()Starta ett tomt dokument, eller ladda ett från en filsökväg eller in-memory-bytes
Document.WriteTo() / Document.Save()Skriv dokumentet till en filsökväg eller returnera bytes
Document.ToHtml() / Document.ToDocx() / Document.ToMarkdown()Rendera varje sida till ett annat format
Page.ToImage() / Page.ToSvg()Rendera en enskild sida till PNG eller SVG
Page.AddHighlight() och andra Page.Add*() annoteringsmetoderSkapa en annotering, som returnerar ett levande handtag
Annotation.Flatten()Baka in en annoterings utseende i statiskt sidinnehåll
Form / Form.AddTextField() / Form.AddCheckbox()AcroForm fasad och fältgenerering
Document.Sign() / Document.Certify() / Document.VerifySignatures()Lägg till eller verifiera digitala signaturer
Page.AddRedact() / Page.ApplyRedactions()Markera och tillämpa innehållsröjning
Document.AutoTag() / Document.GetStructTree()Författa och läs dokumentets logiska strukturträd

Se även

 Svenska