Buat Dokumen PDF menggunakan C#

Pembuatan dan pemrosesan dokumen PDF secara otomatis telah menjadi fitur yang menuntut dalam beberapa hari terakhir. Dalam berbagai aplikasi, dokumen PDF dibuat secara dinamis seperti invoice, kwitansi, dan berbagai jenis laporan. Sejalan dengan itu, artikel ini mencakup implementasi dasar otomatisasi PDF dalam aplikasi .NET. Terakhir, Anda akan belajar cara membuat file PDF menggunakan C#. Contoh kode akan menunjukkan cara menyisipkan teks, gambar, tabel, dan komponen lain dalam PDF menggunakan C#.

C# .NET PDF API - Unduh Gratis

Aspose.PDF for .NET adalah API manipulasi file PDF yang memungkinkan Anda membuat dan memproses file PDF dari dalam aplikasi .NET Anda. Dengan menggunakan API Anda dapat menghasilkan berbagai macam laporan dan dokumen bisnis secara dinamis. API tersedia sebagai DLL yang dapat diunduh serta dihosting di NuGet.

Install-Package Aspose.Pdf

Buat File PDF di C#

Mari kita mulai dengan membuat dokumen PDF sederhana yang berisi fragmen teks. Berikut langkah-langkah membuat file PDF menggunakan C#.

Contoh kode berikut menunjukkan cara membuat file PDF sederhana menggunakan C#.

// Inisialisasi objek dokumen
Document document = new Document();

// Tambah halaman
Page page = document.Pages.Add();

// Tambahkan teks ke halaman baru
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World!"));

// Simpan PDF 
document.Save("document.pdf");

Baca selengkapnya tentang membuat dokumen PDF yang kompleks.

Edit File PDF di C#

Memodifikasi file PDF semudah membuat yang baru. Cukup muat file menggunakan kelas Document, lakukan operasi yang Anda inginkan, dan simpan. Berikut ini adalah langkah-langkah untuk memodifikasi PDF.

  • Buat objek dari kelas Document dan berikan jalur file PDF ke konstruktornya.
  • Memanipulasi halaman atau isi dokumen.
  • Simpan dokumen menggunakan metode Document.Save().

Contoh kode berikut menunjukkan cara memodifikasi PDF menggunakan C#.

// Muat PDF
var pdfDocument = new Aspose.Pdf.Document("document.pdf");

// Lakukan beberapa manipulasi, misalnya menambahkan halaman kosong baru
pdfDocument.Pages.Add();

// Simpan PDF yang diperbarui
pdfDocument.Save(modifiedFileName);

Sisipkan Gambar dalam PDF menggunakan C#

Sekarang mari kita periksa cara memasukkan gambar ke dalam dokumen PDF. Berikut ini adalah langkah-langkah untuk melakukannya.

  • Buat objek kelas Document untuk membuka dokumen PDF.
  • Akses halaman yang ingin Anda tambahi gambar menggunakan kelas Halaman.
  • Tambahkan gambar ke koleksi [Sumber Daya] halaman 19.
  • Gunakan operator untuk menempatkan gambar di halaman:
    • GSave operator to save the current graphical state.
    • ConcatenateMatrix operator to specify where the image is to be placed.
    • Mengerjakan operator to draw the image on the page.
    • Terakhir, gunakan operator GRestore untuk menyimpan status grafis yang diperbarui.
  • Simpan file PDF.

Contoh kode berikut menunjukkan cara menambahkan gambar ke dokumen PDF menggunakan C#.

// Buka dokumen
Document pdfDocument = new Document("document.pdf");

// Tetapkan koordinat
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// Dapatkan halaman tempat gambar perlu ditambahkan
Page page = pdfDocument.Pages[1];

// Muat gambar ke aliran
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);

// Tambahkan gambar ke koleksi Gambar Sumber Daya Halaman
page.Resources.Images.Add(imageStream);

// Menggunakan operator GSave: operator ini menyimpan status grafik saat ini
page.Contents.Add(new Aspose.Pdf.Operators.GSave());

// Buat objek Rectangle dan Matrix
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

// Menggunakan operator ConcatenateMatrix (concatenate matrix): menentukan bagaimana gambar harus ditempatkan
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];

// Menggunakan operator Do: operator ini menggambar gambar
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

// Menggunakan operator GRestore: operator ini memulihkan status grafis
page.Contents.Add(new Aspose.Pdf.Operators.GRestore()); 

// Simpan dokumen yang diperbarui
pdfDocument.Save("document.pdf");

Baca selengkapnya tentang sisipkan gambar dalam PDF.

Buat Tabel dalam PDF menggunakan C#

Tabel adalah komponen penting dari dokumen yang digunakan untuk mengatur data dalam bentuk baris dan kolom. Aspose.PDF for .NET memberi Anda cara yang cukup sederhana untuk membuat dan menyisipkan tabel dalam dokumen PDF. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.

  • Muat file PDF menggunakan kelas Document.
  • Inisialisasi tabel dan atur kolom dan barisnya menggunakan kelas Tabel.
  • Tetapkan pengaturan tabel (yaitu batas).
  • Isi tabel dengan membuat baris menggunakan metode Table.Rows.Add().
  • Tambahkan tabel ke halaman menggunakan metode Document.Pages1.Paragraphs.Add(Table).
  • Simpan file PDF.

Contoh kode berikut menunjukkan cara membuat dan menambahkan tabel dalam dokumen PDF di C#.

// Muat dokumen PDF sumber
Aspose.Pdf.Document doc = new Aspose.Pdf.Document("document.pdf");

// Menginisialisasi instance baru dari Tabel
Aspose.Pdf.Table table = new Aspose.Pdf.Table();

// Atur warna batas tabel sebagai LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// Atur batas untuk sel tabel
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// Buat lingkaran untuk menambahkan 10 baris
for (int row_count = 1; row_count < 10; row_count++)
{
    // Tambahkan baris ke tabel
    Aspose.Pdf.Row row = table.Rows.Add();
    // Tambahkan sel tabel
    row.Cells.Add("Column (" + row_count + ", 1)");
    row.Cells.Add("Column (" + row_count + ", 2)");
    row.Cells.Add("Column (" + row_count + ", 3)");
}

// Tambahkan objek tabel ke halaman pertama dokumen masukan
doc.Pages[1].Paragraphs.Add(table);

// Simpan dokumen yang diperbarui yang berisi objek tabel
doc.Save("document_with_table_out.pdf");

Baca selengkapnya tentang membuat tabel dalam PDF.

Buat Formulir dalam PDF di C#

Formulir dalam PDF digunakan untuk mengumpulkan data dari pembaca. Anda dapat menyisipkan kotak teks, kotak centang, tombol radio, dan kontrol lain yang didukung dalam formulir PDF. Format PDF mendukung dua jenis formulir; Formulir Acro dan formulir XFA (lihat detail). Berikut adalah langkah-langkah untuk membuat dan menambahkan formulir dalam PDF.

Contoh kode berikut menunjukkan cara menambahkan formulir ke dokumen PDF menggunakan C#.

// Buka dokumen
Document pdfDocument = new Document("document.pdf");

// Buat bidang
TextBoxField textBoxField = new TextBoxField(pdfDocument.Pages[1], new Aspose.Pdf.Rectangle(100, 200, 300, 300));
textBoxField.PartialName = "textbox1";
textBoxField.Value = "Text Box";

// TextBoxField.Border = Perbatasan baru(
Border border = new Border(textBoxField);
border.Width = 5;
border.Dash = new Dash(1, 1);
textBoxField.Border = border;

textBoxField.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);

// Tambahkan bidang ke dokumen
pdfDocument.Form.Add(textBoxField, 1);

// Simpan PDF yang dimodifikasi
pdfDocument.Save("output.pdf");

Baca selengkapnya tentang membuat formulir dalam PDF.

Kesimpulan

Dalam postingan ini, Anda telah mempelajari cara membuat file PDF dari awal menggunakan C#. Selanjutnya, Anda telah mengetahui cara memasukkan berbagai jenis komponen seperti teks, gambar, tabel, dan formulir ke dalam dokumen PDF secara terprogram. Anda dapat mempelajari lebih lanjut tentang PDF API menggunakan dokumentasi.

Lihat juga

Info: Aspose menyediakan aplikasi web online gratis yang memungkinkan Anda untuk melihat PDF secara online, aplikasi lain yang memungkinkan Anda untuk mengonversi PDF menjadi video, dan yang memungkinkan Anda untuk mengedit PDF secara online.