Manajemen Dokumen

Manajemen Dokumen

Manajemen Dokumen

Document adalah objek akar dalam Aspose.PDF FOSS untuk .NET. Ini mewakili sebuah seluruh file PDF dan menyediakan akses ke halaman, metadata, bidang formulir, dan semua Buka file yang ada dengan Document.Open dan menciptakan yang baru, yang dengan Document Konstruksi.


Membuka dan membuat dokumen

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

Bekerja dengan halaman

PageCollection Mengelola halaman dokumen. Akses halaman dengan indeks berbasis 1, menambahkan halaman baru, atau menghapus yang sudah ada.

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;

Geometri halaman

Setiap halaman mendefinisikan beberapa kotak pembatas. Gunakan metode setter pada Page ke atur mereka.

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

Menyimpan dokumen

Simpan ke jalur file, stream, atau array byte.

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

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

File lampiran

FileSpecification mewakili lampiran file yang tertanam dalam PDF.

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

Stempel gambar

ImageStamp overlay gambar raster pada halaman di posisi yang ditentukan.

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

Koleksi operator

OperatorCollection pada setiap halaman berisi operator aliran konten mentah. Gunakan untuk pemeriksaan atau manipulasi konten tingkat rendah.

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

Tips dan Praktik Terbaik

  • Wrap Document dalam a using Pernyataan untuk melepaskan file handle dengan segera.
  • Penggunaan Document.Open(byte[]) untuk alur kerja dalam memori untuk menghindari masalah kunci file.
  • Mengubah kotak halaman (MediaBox, CropBox) sebelum menambahkan konten untuk memastikan ruang koordinat yang benar.
  • Call Save hanya sekali setelah semua modifikasi pengaman berulang lebih lambat tetapi aman.
  • Penggunaan PageCollection.Accept(AnnotationSelector) untuk mengolah secara batch-process annotations di semua halaman.

Masalah Umum

IssueCausePerbaiki
Document.Open Memposting PDF yang validFile dienkripsi dengan kata sandiMasukkan parameter kata sandi di konstruktor
Jumlah halaman adalah 0 setelah konstruksiBaru Document() dimulai kosongCall doc.Pages.Add() untuk menambahkan halaman kosong
File yang disimpan lebih besar dari yang diharapkanGambar atau font yang tertanam beberapa kaliGunakan optimasi (lihat Conversion and Optimization guide)
Pages[0] Membuat kesalahan indeksHalaman berbasis 1, bukan berbasis 0Penggunaan Pages[1] untuk halaman pertama

FAQ

Bagaimana saya menggabungkan dua dokumen PDF?

Penggunaan PdfFileEditor.Concatenate dari API Facades, atau menyalin halaman secara manual dari satu dokumen ke yang lain menggunakan PageCollection.

Bisakah saya membuka PDF dari URL atau stream?

Ya. Baca isi URL ke dalam sebuah file yang tidak dapat dibaca oleh pengguna lain. byte[] pertama, lalu berikan ke Document.Open(byte[]).

Bagaimana saya menghapus halaman?

Call doc.Pages.Delete(pageNumber) di mana: pageNumber adalah 1 berbasis.

Apakah dokumen ini aman?

Tidak, setiap benang harus bekerja dengan sendiri. Document contoh.


Ringkasan Referensi API

Kelas / MetodeDescription
DocumentObyek PDF akar; berisi halaman, metadata, dan bidang formulir
Document.OpenStatic factory untuk membuka PDF dari array byte
Document.SaveSerialkan dokumen ke file atau stream
PageHalaman PDF tunggal dengan konten, catatan dan geometri
Page.SetMediaBoxTentukan kotak media halaman
Page.SetCropBoxTentukan area tanaman yang terlihat.
Page.SetRotationPutar halaman 0, 90, 180 atau 270 derajat
PageCollectionPengumpulan halaman dalam dokumen yang terurutkan
PageCollection.AddMenambahkan halaman kosong
OperatorCollectionOperator aliran konten mentah untuk halaman
FileSpecificationDeskriptor lampiran file tertanam
ImageStampStempel penutup gambar untuk halaman
XFormCollectionFormulir XObjek yang dapat digunakan kembali dalam dokumen

See Also

 Bahasa Indonesia