Asiakirjojen hallinta

Asiakirjojen hallinta

Dokumentinhallinta

Document on juurielementti Aspose.PDF FOSS for .NET -kirjastossa. Se edustaa
koko PDF-tiedostoa ja tarjoaa pääsyn sivuihin, metatietoihin, lomakekenttiin, ja kaikki
muut PDF-rakenteet. Avaa olemassa olevat tiedostot Document.Open ja luo uusia
Document-konstruktorilla.


Avaaminen ja asiakirjojen luominen

// 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");

Sivujen käsittely

PageCollection hallinnoi asiakirjan sivuja. Pääset sivuihin 1-pohjaisella indeksillä, lisää uusia sivuja tai poista olemassa olevia.

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;

Sivun geometria

Jokainen sivu määrittelee useita rajauslaatikoita. Käytä Page-objektin asettajametodeja niiden säätämiseen.

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

Asiakirjojen tallentaminen

Tallenna tiedostopolkuun, virtaan tai tavutaulukkoon.

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

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

Tiedostoliitteet

FileSpecification edustaa upotettuja tiedostoliitteitä PDF:ssä.

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

Kuvaleimat

ImageStamp asettaa rasterikuvan sivulle määritettyyn sijaintiin.

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

Operaattorikokoelmat

OperatorCollection jokaisella sivulla sisältää raakat sisältövirran operaattorit. Käytä sitä alhaisen tason sisällön tarkasteluun tai muokkaamiseen.

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

Vinkkejä ja parhaita käytäntöjä

  • Kääri Document using-lauseeseen vapauttaaksesi tiedostokahvat nopeasti.
  • Käytä Document.Open(byte[]) muistissa tapahtuvissa työnkuluissa välttääksesi tiedostolukitusongelmat.
  • Muokkaa sivulaatikoita (MediaBox, CropBox) ennen sisällön lisäämistä varmistaaksesi oikean koordinaatiston.
  • Kutsu Save vain kerran kaikkien muutosten jälkeen — toistuvat tallennukset ovat hitaampia mutta turvallisia.
  • Käytä PageCollection.Accept(AnnotationSelector) merkintöjen eräprosessointiin kaikilla sivuilla.

Yleiset ongelmat

IssueCauseFix
Document.Open heittää virheen kelvollisessa PDF:ssäTiedosto on salattu salasanallaAnna salasanaparametri konstruktorissa
Sivumäärä on 0 konstruktion jälkeenUusi Document() alkaa tyhjänäKutsu doc.Pages.Add() lisätäksesi tyhjän sivun
Tallennettu tiedosto on odotettua suurempiKuvat tai fontit upotettu useita kertojaKäytä optimointia (katso Conversion and Optimization guide)
Pages[0] heittää indeksi-virheenSivut ovat 1-pohjaisia, eivät 0-pohjaisiaKäytä Pages[1] ensimmäiselle sivulle

UKK

Kuinka yhdistän kaksi PDF-dokumenttia?

Käytä PdfFileEditor.Concatenate Facades API:sta, tai kopioi sivuja manuaalisesti asiakirjasta toiseen käyttäen PageCollection.

Voinko avata PDF:n URL-osoitteesta tai virrasta?

Kyllä. Lue URL‑sisältö ensin byte[]‑muuttujaan, ja sitten siirrä se Document.Open(byte[]).

Miten poistan sivun?

Kutsu doc.Pages.Delete(pageNumber), jossa pageNumber on 1-pohjainen.

Onko Document säikeiturvallinen?

Ei. Jokaisen säikeen tulisi käyttää omaa Document-instanssia.


API-viittauksen yhteenveto

Class / MethodDescription
DocumentJuuri PDF-objekti; sisältää sivut, metatiedot ja lomakekentät
Document.OpenStaattinen tehdas PDF:n avaamiseen tavutaulukosta
Document.SaveSarjoita asiakirja tiedostoon tai virtaan
PageYksittäinen PDF-sivu, jossa on sisältöä, merkintöjä ja geometriaa
Page.SetMediaBoxMääritä sivun medialaatikko
Page.SetCropBoxMääritä näkyvä leikkausalue
Page.SetRotationKierrä sivua 0, 90, 180 tai 270 astetta
PageCollectionJärjestetty kokoelma sivuja asiakirjassa
PageCollection.AddLisää tyhjä sivu
OperatorCollectionRaakat sisältövirran operaattorit sivulle
FileSpecificationUpotettu tiedostoliitteen kuvaus
ImageStampKuvan päällekkäinen leima sivuille
XFormCollectionUudelleenkäytettävät lomake‑XObjectit asiakirjassa

Katso myös

 Suomi