Dokumentumkezelés

Dokumentumkezelés

Dokumentumkezelés

Document a gyökérobjektum az Aspose.PDF FOSS for .NET-ben. Egy teljes PDF-fájlt képvisel, és hozzáférést biztosít az oldalakhoz, metaadatokhoz, űrlapmezőkhöz, valamint minden egyéb PDF-szerkezethez. Létező fájlok megnyitásához használja a Document.Open-t, újak létrehozásához a Document konstruktorát.


Dokumentumok megnyitása és létrehozása

// Open from a byte array
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));

// Open from a file path
using var doc2 = new Document("input.pdf");

// Create a new empty document
using var newDoc = new Document();
newDoc.Pages.Add();
newDoc.Save("new.pdf");

Oldalakkal való munka

PageCollection kezeli a dokumentum oldalait. Az oldalakat 1‑alapú index szerint érheti el, új oldalakat adhat hozzá, vagy eltávolíthat meglévőket.

using var doc = Document.Open(pdfBytes);

// Access first page
var page = doc.Pages[1];

// Add a blank page
var newPage = doc.Pages.Add();

// Get page count
int count = doc.Pages.Count;

Oldal geometria

Minden oldal több határoló keretet definiál. Használja a Page beállító metódusait a módosításhoz.

var page = doc.Pages[1];
page.SetMediaBox(new Rectangle(0, 0, 612, 792));
page.SetCropBox(new Rectangle(36, 36, 576, 756));
page.SetRotation(90);

Dokumentumok mentése

Mentse egy fájl útvonalra, egy adatfolyamra vagy egy bájt tömbbe.

// Save to file
doc.Save("output.pdf");

// Save to stream
using var ms = new MemoryStream();
doc.Save(ms);

Fájl mellékletek

FileSpecification beágyazott fájlcsatolmányokat jelenti egy PDF-ben.

var spec = new FileSpecification("data.csv", "Embedded data file");
doc.EmbeddedFiles.Add(spec);

Képmások

ImageStamp egy raszteres képet helyez el egy oldalon a megadott pozícióban.

var stamp = new ImageStamp("logo.png");
stamp.Put(doc.Pages[1]);
doc.Save("stamped.pdf");

Operátor gyűjtemények

OperatorCollection minden oldalon a nyers tartalomfolyam‑operátorokat tartalmazza. Használja alacsony szintű tartalomellenőrzésre vagy manipulációra.

var ops = doc.Pages[1].Contents;
foreach (var op in ops)
{
    // Inspect each operator
}

Tippek és bevált gyakorlatok

  • Csomagolja Document egy using utasításba, hogy a fájlkezelőket gyorsan felszabadítsa.
  • Használja a Document.Open(byte[])‑t memória‑alapú munkafolyamatokhoz, hogy elkerülje a fájlzárolási problémákat.
  • Módosítsa az oldaldobozokat (MediaBox, CropBox) a tartalom hozzáadása előtt, hogy a megfelelő koordináta‑teret biztosítsa.
  • Hívja meg a Save‑t csak egyszer az összes módosítás után — az ismételt mentések lassabbak, de biztonságosak.
  • Használja a PageCollection.Accept(AnnotationSelector)‑t az annotációk kötegelt feldolgozásához az összes oldalon.

Gyakori problémák

IssueCauseFix
Document.Open hibát dob érvényes PDF eseténA fájl jelszóval van titkosítvaAdja meg a jelszó paramétert a konstruktorban
Az oldalszám 0 a konstrukció utánAz új Document() üresen indulHívja meg a doc.Pages.Add()‑t egy üres oldal hozzáadásához
A mentett fájl nagyobb a vártnálKépek vagy betűkészletek többször beágyazvaHasználjon optimalizálást (lásd a Konverzió és optimalizálás útmutatót)
Pages[0] index hibát dobAz oldalak 1‑es alapúak, nem 0‑ás alapúakHasználja a Pages[1]‑t az első oldalhoz

GYIK

Hogyan egyesíthetek két PDF dokumentumot?

Használja a Facades API PdfFileEditor.Concatenate‑t, vagy manuálisan másolja az oldalakat egy dokumentumból a másikba a PageCollection segítségével.

Megnyithatok PDF-et URL‑ről vagy adatfolyamból?

Igen. Olvassa be a URL tartalmát először egy byte[]-ba, majd adja át a Document.Open(byte[])-nek.

Hogyan törölhetek egy oldalt?

Hívja doc.Pages.Delete(pageNumber), ahol pageNumber 1‑alapú.

A Document szálbiztos?

Nem. Minden szálnak a saját Document példányával kell dolgoznia.


API referencia összefoglaló

Class / MethodDescription
DocumentGyökér PDF objektum; tartalmaz oldalakat, metaadatokat és űrlapmezőket
Document.OpenStatikus gyár a PDF megnyitásához bájttömbből
Document.SaveA dokumentum sorosítása fájlba vagy adatfolyamba
PageEgyetlen PDF oldal tartalommal, megjegyzésekkel és geometriával
Page.SetMediaBoxA lap média dobozának meghatározása
Page.SetCropBoxA látható vágási terület meghatározása
Page.SetRotationAz oldal forgatása 0, 90, 180 vagy 270 fokkal
PageCollectionRendezett oldalgyűjtemény egy dokumentumban
PageCollection.AddÜres oldal hozzáfűzése
OperatorCollectionNyers tartalomfolyam operátorok egy oldalhoz
FileSpecificationBeágyazott fájlcsatolás leírója
ImageStampKépréteg pecsét az oldalakhoz
XFormCollectionÚjrahasználható űrlap XObject-ek a dokumentumban

Lásd még

 Magyar