Как использовать C# для печати PDF-документов и установки параметров печати

Печать PDF-документов — это распространенная задача, позволяющая получать физические копии цифровых файлов в формате, полностью повторяющем макет и форматирование оригинального документа. Формат PDF, сокращенно Portable Document Format, широко используется для обмена и сохранения электронных файлов на различных платформах и устройствах. Будь то отчет, электронная книга, презентация или любой другой тип документа, печать PDF-файлов обеспечивает удобный способ просмотра, обмена или архивирования информации. В этой статье я расскажу о том, как печатать PDF-документы и задавать настройки принтера с помощью Free Spire.PDF for .NET.
- Печать PDF с принтером по умолчанию
- Печать выбранных страниц на указанном принтере
- Печать PDF в XPS с помощью Microsoft XPS Document Writer
- Печать PDF без звука
- Печать PDF в режиме двусторонней печати
- Печать PDF в оттенках серого
Установить Free Spire.PDF for .NET
Free Spire.PDF for .NET — это бесплатная и профессиональная библиотека .NET PDF, позволяющая программистам создавать, редактировать и конвертировать PDF-документы в любом приложении .NET. Чтобы установить Free Spire.PDF for .NET через NuGet, выполните следующие действия:
- Откройте Visual Studio и создайте новый проект или откройте существующий.
- Щелкните правой кнопкой мыши на имени проекта в Solution Explorer и выберите «Manage NuGet Packages...».
- На вкладке «Browse» найдите файл «FreeSpire.PDF».
- Выберите пакет Free Spire.PDF из результатов поиска и нажмите кнопку «Установить».
Печать PDF с принтером по умолчанию
using Spire.Pdf;
namespace PrintWithDefaultPrinter
{
class Program
{
static void Main(string[] args)
{
//Create PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Print with default printer
doc.Print();
}
}
}
Печать выбранных страниц на указанном принтере
using Spire.Pdf;
namespace PrintWithSpecifiedPrinter
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Specify printer name
doc.PrintSettings.PrinterName = «HP LaserJet P1007»;
//Select a page range to print
doc.PrintSettings.SelectPageRange(1, 5);
//Select discontinuous pages to print
//doc.PrintSettings.SelectSomePages(new int[] { 1, 3, 5, 7 });
//Print document
doc.Print();
}
}
}
Печать PDF в XPS с помощью Microsoft XPS Document Writer
using Spire.Pdf;
namespace PrintPdfToXps
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF document
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Set printer name to Microsoft XPS Document Writer
doc.PrintSettings.PrinterName = «Microsoft XPS Document Writer»;
//Set the printed file path and name
doc.PrintSettings.PrintToFile("PrintToXps.xps");
//Execute printing
doc.Print();
}
}
}
Печать PDF без звука
using Spire.Pdf;
using System.Drawing.Printing;
namespace PrintPdfSilently
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Specify printer name
doc.PrintSettings.PrinterName = «HP LaserJet P1007»;
//Silent printing
doc.PrintSettings.PrintController = new StandardPrintController();
//Print document
doc.Print();
}
}
}
Печать PDF в режиме двусторонней печати
using Spire.Pdf;
using System.Drawing.Printing;
namespace PrintInDuplexMode
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Specify printer name
doc.PrintSettings.PrinterName = «HP LaserJet P1007»;
//Determine if the printer supports duplex printing
if (doc.PrintSettings.CanDuplex)
{
//Set to duplex printing mode
doc.PrintSettings.Duplex = Duplex.Default;
//Print document
doc.Print();
}
}
}
}
Печать PDF в оттенках серого
using Spire.Pdf;
namespace PrintInGrayscale
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.pdf");
//Specify printer name
doc.PrintSettings.PrinterName = «HP LaserJet P1007»;
//Print in black and white
doc.PrintSettings.Color = false;
//Print document
doc.Print();
}
}
}
Другие возможности
Free Spire.PDF — это полнофункциональная библиотека классов для работы с PDF, помимо поддержки функций печати, поддерживающая множество операций, связанных с PDF, таких как:
C#/VB.NET Преобразование PDF в Word
C#/VB.NET Добавление водяного знака в PDF