Cara mencetak file PDF di .NET Core
Contents
[
Hide
]
Potongan kode berikut juga dapat digunakan dengan pustaka Aspose.PDF.Drawing.
Mencetak Dokumen Pdf di .NET Core
Pustaka Aspose.PDF memungkinkan kita untuk mengonversi file PDF ke XPS. Fungsi ini dapat berguna untuk mengatur pencetakan dokumen. Mari kita lihat contoh penggunaan printer default:
class Program
{
static void Main()
{
// Buat thread sekunder dan berikan metode pencetakan untuk
// parameter delegasi ThreadStart dari konstruktor.
Thread printingThread = new Thread(() => PrintPDF(@"C:\tmp\doc-pdf.pdf"));
// Atur thread yang akan menggunakan PrintQueue.AddJob menjadi single threading.
printingThread.SetApartmentState(ApartmentState.STA);
// Mulai thread pencetakan. Metode yang diberikan ke konstruktor
// Thread akan dieksekusi.
printingThread.Start();
}//end Main
private static void PrintPDF(string pdfFileName)
{
// Buat server cetak dan antrian cetak.
PrintQueue defaultPrintQueue = LocalPrintServer.GetDefaultPrintQueue();
Aspose.Pdf.Document document = new Document(pdfFileName);
var xpsFileName = pdfFileName.Replace(".pdf", ".xps");
document.Save(xpsFileName,SaveFormat.Xps);
try
{
// Cetak file Xps sambil memberikan validasi XPS dan notifikasi kemajuan.
PrintSystemJobInfo xpsPrintJob = defaultPrintQueue.AddJob(xpsFileName, xpsFileName, false);
Console.WriteLine(xpsPrintJob.JobIdentifier);
}
catch (PrintJobException e)
{
Console.WriteLine("\n\t{0} tidak dapat ditambahkan ke antrian cetak.", pdfFileName);
if (e.InnerException != null && e.InnerException.Message == "File contains corrupted data.")
{
Console.WriteLine("\tIni bukan file XPS yang valid. Gunakan alat isXPS Conformance Tool untuk debug.");
}
Console.WriteLine("\tLanjutkan dengan file XPS berikutnya.\n");
}
}
}//end Program class
Pada contoh ini, kita mengonversi dokumen PDF ke XPS dan menambahkannya sebagai pekerjaan ke antrian printer lokal.