Dokumentu pārvaldība

Dokumentu pārvaldība

Dokumentu pārvaldība

Document ir saknes objekts Aspose.PDF FOSS for .NET. Tas pārstāv
visu PDF failu un nodrošina piekļuvi lapām, metadatiem, veidlapas laukiem un visām
citiem PDF struktūrām. Atveriet esošos failus, izmantojot Document.Open, un izveidojiet jaunus
ar Document konstruktoru.


Dokumentu atvēršana un izveide

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

Darbs ar lapām

PageCollection pārvalda dokumenta lapas. Piekļūst lapām, izmantojot 1‑balstītu indeksu, pievieno jaunas lapas vai noņem esošās.

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;

Lapas ģeometrija

Katrs lappuse definē vairākas robežkastes. Izmantojiet setter metodes uz Page, lai tās pielāgotu.

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

Dokumentu saglabāšana

Saglabājiet faila ceļā, plūsmā vai baitu masīvā.

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

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

Failu pielikumi

FileSpecification pārstāv iegultus failu pielikumus PDF dokumentā.

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

Attēlu zīmogi

ImageStamp pārklāj rastra attēlu lapā noteiktā pozīcijā.

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

Operatoru kolekcijas

OperatorCollection katrā lapā satur neapstrādātus satura plūsmas operatorus. Izmantojiet to zemā līmeņa satura pārbaudei vai manipulācijai.

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

Padomi un labākās prakses

  • Ietiniet Document using izteiksmē, lai nekavējoties atbrīvotu faila rokturus.
  • Izmantojiet Document.Open(byte[]) atmiņas darbplūsmām, lai izvairītos no faila bloķēšanas problēmām.
  • Modificējiet lapas kastes (MediaBox, CropBox) pirms satura pievienošanas, lai nodrošinātu pareizu koordinātu telpu.
  • Izsauciet Save tikai vienreiz pēc visām izmaiņām — atkārtoti saglabājumi ir lēnāki, bet droši.
  • Izmantojiet PageCollection.Accept(AnnotationSelector), lai grupveidā apstrādātu anotācijas visās lapās.

Bieži sastopamās problēmas

IssueCauseFix
Document.Open izsauc kļūdu uz derīga PDFFails ir šifrēts ar paroliNorādiet paroles parametru konstruktorā
Lapu skaits ir 0 pēc izveidesJauns Document() sāk tukšuIzsauciet doc.Pages.Add(), lai pievienotu tukšu lapu
Saglabātais fails ir lielāks nekā gaidītsAttēli vai fonti ir iekļauti vairākas reizesIzmantojiet optimizāciju (skatiet Pārveidošanas un optimizācijas rokasgrāmatu)
Pages[0] izsauc indeksa kļūduLapas ir 1‑balstītas, nevis 0‑balstītasIzmantojiet Pages[1] pirmajai lapai

BUJ

Kā es varu apvienot divus PDF dokumentus?

Izmantojiet PdfFileEditor.Concatenate no Facades API, vai manuāli kopējiet lapas no viena dokumenta uz citu, izmantojot PageCollection.

Vai es varu atvērt PDF no URL vai straumes?

Jā. Vispirms nolasiet URL saturu uz byte[], pēc tam nododiet to Document.Open(byte[]).

Kā es varu izdzēst lapu?

Izsauciet doc.Pages.Delete(pageNumber), kur pageNumber ir 1‑balstīts.

Vai Document ir pavediena drošs?

Nē. Katram pavedienam jāstrādā ar savu Document instanci.


API Atsauču kopsavilkums

Class / MethodDescription
DocumentSaknes PDF objekts; satur lapas, metadatus un form laukus
Document.OpenStatiskā ražotne, lai atvērtu PDF no baitu masīva
Document.SaveSerializēt dokumentu uz failu vai straumi
PageViena PDF lapa ar saturu, anotācijām un ģeometriju
Page.SetMediaBoxDefinēt lapas media box
Page.SetCropBoxDefinēt redzamo crop area
Page.SetRotationPagriezt lapu par 0, 90, 180 vai 270 grādiem
PageCollectionKārtota lapu kolekcija dokumentā
PageCollection.AddPievienot tukšu lapu
OperatorCollectionNeapstrādāti content‑stream operatori lapai
FileSpecificationIegultais file attachment aprakstītājs
ImageStampAttēla overlay zīmogs lapām
XFormCollectionAtkārtoti lietojami form XObjects dokumentā

Skatīt arī

 Latviešu