Conversion

Conversion

Ez az oldal a PDF más formátumokba való renderelését és egy dokumentum PDF/A megfelelőség felé történő átalakítását tárgyalja. Document egy To*() módszert tesz közzé kimeneti formátumonként a teljes dokumentumhoz; ugyanazok a módszerek elérhetők Page esetén egyetlen oldal rendereléséhez.


Renderelés más dokumentumformátumokba

Document.ToHtml(), Document.ToDocx() és Document.ToMarkdown() minden oldalt renderel; Page.ToSvg() és Page.ToImage() egy oldalt renderel egy önálló SVG karakterláncra vagy PNG bájtokra. Mindegyik saját opciókat fogad — mode a DocxOptions esetén (‘flow’ újrafolyamolja a tartalmat, ’textbox’ megtartja az egyes oldalak saját geometriáját) és images a MarkdownExportOptions esetén (‘inline’ beágyazza a kép adat-URI-kat, ’external’ külön fájlokba írja a imageDir könyvtárba).

const doc = Document.OpenFile('in.pdf');
const svg = doc.Pages[0].ToSvg();               // standalone <svg> string
const png = doc.Pages[0].ToImage({ scale: 2 }); // Uint8Array of PNG bytes @144 DPI
const html = doc.ToHtml();                      // standalone semantic HTML, all pages
const md = doc.ToMarkdown();                    // GFM Markdown, all pages
const docx = doc.ToDocx();                      // .docx bytes, reflowed, images in the package
const fixed = doc.ToDocx({ mode: 'textbox' });  // .docx keeping each page's own geometry

ImageOptions (Page.ToImage() esetén) továbbiakban elfogadja a format, quality, scale, egy explicit width / height párost, valamint a background (‘white’ vagy ’transparent’).


Átalakítás a PDF/A felé

Document.ConvertToPdfA() megpróbálja a dokumentumot egy PDF/A level (‘b’ vagy ‘u’) felé helyrehozni, majd újra érvényesíti, egy ConversionReport objektummal, amely tartalmazza a applied (a végrehajtott helyreállítási műveletek), a unresolved (azokat a problémákat, amelyeket nem tudott javítani), és passed. Futtassa egy másolaton — például egy Document.ExtractPages() segítségével létrehozott példányon — hogy az élő, működő dokumentum soha ne változzon meg a konverzió során.

// ExtractPages gives an independent copy; ConvertToPdfA never touches the original.
const copy = doc.ExtractPages(doc.Pages.map((_, i) => i + 1));
const conversion = copy.ConvertToPdfA('2b');

console.log(`applied ${conversion.applied.length} action(s), `
  + `${conversion.unresolved.length} unresolved, `
  + `result: ${conversion.passed ? 'passes' : 'still fails'} PDF/A-2b`);
copy.WriteTo('output-pdfa.pdf');

Egyéb exportálási formátumok

A HTML, Markdown, DOCX, SVG és PNG mellett a könyvtár TIFF-et is exportál (TiffExportOptions, encodeTiff()), és importál/exportál AcroForm mezőértékeket FDF és XFDF formátumban (exportFdfFile(), exportXfdfFile(), importFdfFile(), importXfdfFile()) — hasznos a kitöltött űrlapadatok PDF-től külön történő cseréjéhez.


Tippek és bevált gyakorlatok

  • Futtassa a Document.ConvertToPdfA() egy másolaton (például a Document.ExtractPages() alapján), soha ne az élő dokumentumon, amelyet még konvertálatlanul kell menteni.
  • Ellenőrizze a ConversionReport.unresolved még akkor is, ha a passed true egy lazább validációs szinthez — egyes helyreállítási műveletek csak szigorúbb szinten oldódnak meg teljesen.
  • Használja a mode: 'textbox' a DocxOptions esetén, amikor a DOCX kimenetnek meg kell őriznie minden oldal pontos vizuális geometriai elrendezését; használja az alapértelmezett 'flow' módot, amikor a szövegnek normál szövegszerkesztő dokumentumként kell újrafolyásra kerülnie.
  • Adjon át images: 'external' és egy imageDir a MarkdownExportOptions nagy dokumentumokhoz, ahelyett, hogy az alapértelmezett beágyazott adat-URI-kat használná, a Markdown fájl méretének kicsi tartása érdekében.

Gyakori problémák

ProblémaOkJavítás
ConvertToPdfA() még mindig jelent passed: falseNem minden ConversionReport.unresolved listán szereplő probléma javítható automatikusan (pl. hiányzó beágyazott betűkészletek vagy hiányzó /OutputIntent)A konkrét unresolved szabályokat manuálisan kezelje, majd futtassa újra a ConvertToPdfA()-t
Az élő dokumentum váratlanul módosult a PDF/A konverziós kísérlet utánConvertToPdfA() közvetlenül a munkadokumentumon lett meghívva, nem pedig egy másolatonHívd meg egy Document.ExtractPages() által készített másolaton
A Markdown export egyetlen hatalmas fájlt állít előAz alapértelmezett images: 'inline' minden képet adat-URI-ként ágyaz beAdd meg a { images: 'external', imageDir: '...' } paramétert a képek külön fájlokba írásához
A DOCX kimenet elveszíti az eredeti oldalelrendezéstAz alapértelmezett mode: 'flow' úgy tördeli a tartalmat, mint egy szövegszerkesztőAdd meg a { mode: 'textbox' } paramétert, hogy megőrizze minden oldal saját geometriáját

FAQ

Milyen formátumokra konvertálható a PDF?

HTML, Markdown, és DOCX a teljes dokumentumhoz (Document.ToHtml() / ToMarkdown() / ToDocx()); SVG és PNG oldalanként (Page.ToSvg() / Page.ToImage()); plusz TIFF és FDF/XFDF form-adat export.

A PDF/A konvertálása módosítja az eredeti dokumentumot?

Csak akkor, ha közvetlenül meghívod a ConvertToPdfA() parancsot rajta. Hívd meg egy másolaton — például doc.ExtractPages(doc.Pages.map((_, i) => i + 1)) — hogy az eredeti dokumentum konvertálatlan maradjon.

Hogyan tudhatom, hogy a PDF/A konverzió valóban sikeres volt?

Ellenőrizd a ConversionReport.passed. A applied felsorolja, mit javított a konverzió, a unresolved pedig, mit nem tudott — vizsgáld meg a unresolved még akkor is, ha a passed true.

Exportálhatom csak a kitöltött űrlapmezők értékeit, a PDF maga nélkül?

Igen — exportFdfFile() és exportXfdfFile() a jelenlegi AcroForm mezőértékeket egy külön FDF vagy XFDF fájlba írják; importFdfFile() / importXfdfFile() visszaolvassák őket egy dokumentumba.


API Reference Összefoglaló

Osztály/MódszerLeírás
Document.ToHtml() / Document.ToDocx() / Document.ToMarkdown()Minden oldalt egy másik dokumentumformátumba renderel
Page.ToSvg() / Page.ToImage()Egyetlen oldalt SVG vagy PNG formátumba renderel
DocxOptions / MarkdownExportOptions / ImageOptionsFormátumonkénti renderelési beállítások
Document.ConvertToPdfA()Javítsa a dokumentumot egy PDF/A szint felé, és ellenőrizze újra
ConversionReportA konverzió eredménye: applied, unresolved, passed
TiffExportOptions / encodeTiff()Exportálás TIFF-be
exportFdfFile() / exportXfdfFile() / importFdfFile() / importXfdfFile()Exportálja vagy importálja a AcroForm mezőértékeket FDF/XFDF formátumban

Lásd még:

 Magyar