Mengonversi PDF ke Berbagai Format Gambar dalam C#
Overview
Artikel ini menjelaskan cara mengonversi PDF ke berbagai format gambar menggunakan C#. Ini mencakup topik berikut.
Format Gambar: TIFF
- C# PDF ke TIFF
- C# Mengonversi PDF ke TIFF
- C# Mengonversi Satu atau Halaman Tertentu dari PDF ke TIFF
Format Gambar: BMP
Format Gambar: EMF
Format Gambar: JPG
Format Gambar: PNG
Format Gambar: GIF
Format Gambar: SVG
C# Konversi PDF ke Gambar
Potongan kode berikut juga bekerja dengan pustaka Aspose.PDF.Drawing.
Aspose.PDF untuk .NET menggunakan beberapa pendekatan untuk mengkonversi PDF ke gambar. Aspose.PDF for .NET menggunakan beberapa pendekatan untuk mengonversi PDF menjadi gambar.
Ada beberapa kelas di perpustakaan yang memungkinkan Anda menggunakan perangkat virtual untuk mentransformasi gambar. DocumentDevice ditujukan untuk konversi seluruh dokumen, tetapi ImageDevice - untuk halaman tertentu.
Mengonversi PDF menggunakan kelas DocumentDevice
Aspose.PDF for .NET memungkinkan untuk mengonversi Halaman PDF menjadi gambar TIFF.
Kelas TiffDevice (berbasis DocumentDevice) memungkinkan Anda untuk mengonversi halaman PDF menjadi gambar TIFF. Kelas ini menyediakan metode yang bernama Process
yang memungkinkan Anda untuk mengonversi semua halaman dalam file PDF menjadi satu gambar TIFF.
Coba konversi PDF ke TIFF secara online
Aspose.PDF for .NET menyajikan aplikasi gratis online “PDF to TIFF”, di mana Anda dapat mencoba untuk menyelidiki fungsionalitas dan kualitas kerjanya.
Mengonversi Halaman PDF menjadi Satu Gambar TIFF
Aspose.PDF for .NET menjelaskan cara mengonversi semua halaman dalam file PDF menjadi satu gambar TIFF:
Langkah-langkah: Mengonversi PDF ke TIFF dalam C#
- Buat objek dari kelas Document.
- Buat objek TiffSettings dan TiffDevice
- Panggil metode TiffDevice.Process() untuk mengonversi dokumen PDF menjadi TIFF.
- Untuk mengatur properti file keluaran, gunakan kelas TiffSettings.
Potongan kode berikut menunjukkan cara mengonversi semua halaman PDF menjadi satu gambar TIFF.
public static void ConvertPDFtoTIFF()
{
// Buka dokumen
Document pdfDocument = new Document(_dataDir + "PageToTIFF.pdf");
// Buat objek Resolusi
Resolution resolution = new Resolution(300);
// Buat objek TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
Compression = CompressionType.None,
Depth = ColorDepth.Default,
Shape = ShapeType.Landscape,
SkipBlankPages = false
};
// Buat perangkat TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);
// Konversi halaman tertentu dan simpan gambar ke stream
tiffDevice.Process(pdfDocument, _dataDir + "AllPagesToTIFF_out.tif");
}
Konversi Satu Halaman ke Gambar TIFF
Aspose.PDF untuk .NET memungkinkan untuk mengonversi halaman tertentu dalam file PDF menjadi gambar TIFF, gunakan versi yang dimuat lebih dari metode Process(..) yang mengambil nomor halaman sebagai argumen untuk konversi. Potongan kode berikut menunjukkan cara mengonversi halaman pertama dari PDF ke format TIFF.
Langkah: Mengonversi Halaman Tunggal atau Tertentu dari PDF ke TIFF dalam C#
- Buat objek dari kelas Document.
- Buat objek TiffSettings dan TiffDevice
- Panggil metode TiffDevice.Process() yang dimuat lebih dengan parameter fromPage dan toPage untuk mengonversi halaman dokumen PDF menjadi TIFF.
public static void ConvertPDFtoTiffSinglePage()
{
// Buka dokumen
Document pdfDocument = new Document(_dataDir + "PageToTIFF.pdf");
// Buat objek Resolusi
Resolution resolution = new Resolution(300);
// Buat objek TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
Compression = CompressionType.None,
Depth = ColorDepth.Default,
Shape = ShapeType.Landscape,
};
// Buat perangkat TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);
// Konversi halaman tertentu dan simpan gambar ke stream
tiffDevice.Process(pdfDocument, 1, 1, _dataDir + "PageToTIFF_out.tif");
}
Gunakan algoritma Bradley selama konversi
Aspose.PDF untuk .NET telah mendukung fitur untuk mengonversi PDF ke TIF menggunakan kompresi LZW dan kemudian dengan menggunakan AForge, Binarisasi dapat diterapkan. Namun, salah satu pelanggan meminta bahwa untuk beberapa gambar, mereka perlu mendapatkan Ambang menggunakan Otsu, sehingga mereka juga ingin menggunakan Bradley.
public static void ConvertPDFtoTiffBradleyBinarization()
{
// Buka dokumen
Document pdfDocument = new Document(_dataDir + "PageToTIFF.pdf");
string outputImageFile = _dataDir + "resultant_out.tif";
string outputBinImageFile = _dataDir + "37116-bin_out.tif";
// Buat objek Resolusi
Resolution resolution = new Resolution(300);
// Buat objek TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
Compression = CompressionType.LZW,
Depth = Aspose.Pdf.Devices.ColorDepth.Format1bpp
};
// Buat perangkat TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);
// Konversi halaman tertentu dan simpan gambar ke stream
tiffDevice.Process(pdfDocument, outputImageFile);
using (FileStream inStream = new FileStream(outputImageFile, FileMode.Open))
{
using (FileStream outStream = new FileStream(outputBinImageFile, FileMode.Create))
{
tiffDevice.BinarizeBradley(inStream, outStream, 0.1);
}
}
}
Mengonversi PDF menggunakan kelas ImageDevice
ImageDevice
adalah leluhur untuk BmpDevice
, JpegDevice
, GifDevice
, PngDevice
dan EmfDevice
.
- Kelas BmpDevice memungkinkan Anda mengonversi halaman PDF menjadi gambar BMP.
- Kelas EmfDevice memungkinkan Anda mengonversi halaman PDF menjadi gambar EMF.
- Kelas JpegDevice memungkinkan Anda mengonversi halaman PDF menjadi gambar JPEG.
- Kelas PngDevice memungkinkan Anda mengonversi halaman PDF menjadi gambar PNG.
- Kelas GifDevice memungkinkan Anda mengonversi halaman PDF menjadi gambar GIF.
Mari kita lihat cara mengonversi halaman PDF menjadi gambar. Mari kita lihat cara mengonversi halaman PDF menjadi gambar.
Kelas BmpDevice
menyediakan metode yang bernama Process yang memungkinkan Anda untuk mengonversi halaman tertentu dari file PDF menjadi format gambar BMP. Kelas lain memiliki metode yang sama. Jadi, jika kita perlu mengonversi halaman PDF menjadi gambar, kita hanya perlu menginstansiasi kelas yang dibutuhkan.
Langkah berikut dan cuplikan kode dalam C# menunjukkan kemungkinan ini
- Konversi PDF ke BMP dalam C#
- Konversi PDF ke EMF dalam C#
- Konversi PDF ke JPG dalam C#
- Konversi PDF ke PNG dalam C#
- Konversi PDF ke GIF dalam C#
Langkah: PDF ke Gambar (BMP, EMF, JPG, PNG, GIF) dalam C#
- Buat instance dari subclass ImageDevice yaitu:
- BmpDevice (untuk mengubah PDF menjadi BMP)
- EmfDevice (untuk mengubah PDF menjadi Emf)
- JpegDevice (untuk mengubah PDF menjadi JPG)
- PngDevice (untuk mengubah PDF menjadi PNG)
- GifDevice (untuk mengubah PDF menjadi GIF)
- Panggil method ImageDevice.Process() untuk melakukan konversi PDF ke Gambar.
public static class ExampleConvertPdfToImage
{
private static readonly string _dataDir = @"C:\Samples\";
// BMP, JPEG, GIF, PNG, EMF
public static void ConvertPDFusingImageDevice()
{
// Create Resolution object
Resolution resolution = new Resolution(300);
BmpDevice bmpDevice = new BmpDevice(resolution);
JpegDevice jpegDevice = new JpegDevice(resolution);
GifDevice gifDevice = new GifDevice(resolution);
PngDevice pngDevice = new PngDevice(resolution);
EmfDevice emfDevice = new EmfDevice(resolution);
Document document = new Document(_dataDir +
"ConvertAllPagesToBmp.pdf");
ConvertPDFtoImage(bmpDevice, "bmp", document);
ConvertPDFtoImage(jpegDevice,"jpeg", document);
ConvertPDFtoImage(gifDevice, "gif", document);
ConvertPDFtoImage(pngDevice, "png", document);
ConvertPDFtoImage(emfDevice, "emf", document);
}
}
public static void ConvertPDFtoImage(ImageDevice imageDevice,
string ext, Document pdfDocument)
{
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
using (FileStream imageStream =
new FileStream($"{_dataDir}image{pageCount}_out.{ext}",
FileMode.Create))
{
// Convert a particular page and save the image to stream
imageDevice.Process(pdfDocument.Pages[pageCount], imageStream);
// Close stream
imageStream.Close();
}
}
}
Cobalah untuk mengonversi PDF ke PNG secara online
Sebagai contoh bagaimana aplikasi gratis kami bekerja, silakan periksa fitur berikut.
Aspose.PDF untuk .NET memperkenalkan aplikasi gratis online “PDF ke PNG”, di mana Anda dapat mencoba untuk meneliti fungsionalitas dan kualitas kerjanya.
Mengonversi PDF menggunakan kelas SaveOptions
Bagian artikel ini menunjukkan cara mengonversi PDF ke SVG menggunakan C# dan kelas SaveOptions.
Cobalah untuk mengonversi PDF ke SVG secara online
Aspose.PDF untuk .NET memperkenalkan aplikasi gratis online “PDF ke SVG”, di mana Anda dapat mencoba untuk meneliti fungsionalitas dan kualitas kerjanya.
Grafik Vektor Skalabel (SVG) adalah keluarga spesifikasi dari format file berbasis XML untuk grafik vektor dua dimensi, baik statis maupun dinamis (interaktif atau animasi). Spesifikasi SVG adalah standar terbuka yang telah dikembangkan oleh Konsorsium World Wide Web (W3C) sejak tahun 1999.
Gambar SVG dan perilakunya didefinisikan dalam file teks XML. Ini berarti bahwa mereka dapat dicari, diindeks, di-script, dan jika diperlukan, dikompres. Sebagai file XML, gambar SVG dapat dibuat dan diedit dengan editor teks apa pun, tetapi sering kali lebih mudah untuk membuatnya dengan program gambar seperti Inkscape.
Aspose.PDF untuk .NET mendukung fitur untuk mengonversi gambar SVG ke format PDF dan juga menawarkan kemampuan untuk mengonversi file PDF ke format SVG. Aspose.PDF untuk .NET mendukung fitur untuk mengonversi gambar SVG ke format PDF dan juga menawarkan kemampuan untuk mengonversi file PDF ke format SVG.
Potongan kode berikut menunjukkan langkah-langkah untuk mengonversi file PDF ke format SVG dengan .NET.
Langkah: Mengonversi PDF ke SVG dalam C#
- Buat objek dari kelas Document.
- Buat objek SvgSaveOptions dengan pengaturan yang diperlukan.
- Panggil metode Document.Save() dan berikan objek SvgSaveOptions untuk mengonversi dokumen PDF ke SVG.
public static void ConvertPDFtoSVG()
{
// Muat dokumen PDF
Document document = new Document(System.IO.Path.Combine(_dataDir, "input.pdf"));
// Instansiasi objek SvgSaveOptions
SvgSaveOptions saveOptions = new SvgSaveOptions
{
// Jangan kompres gambar SVG ke arsip Zip
CompressOutputToZipArchive = false,
TreatTargetFileNameAsDirectory = true
};
// Simpan output dalam file SVG
document.Save(System.IO.Path.Combine(_dataDir, "PDFToSVG_out.svg"), saveOptions);
}