Печать и предварительный просмотр книги
Введение в печать
Microsoft Excel предполагает, что вы хотите напечатать всю область рабочего листа, если не указано иное. Для печати с помощью Aspose.Cells сначала импортируйте пространство имен Aspose.Cells.Rendering в программу. В нем есть несколько полезных классов, например, SheetRender и WorkbookRender.
Печать с использованием SheetRender
Класс Aspose.Cells.Rendering.SheetRender представляет собой рабочий лист и имеет метод ToPrinter, который может напечатать рабочий лист. В следующем примере кода показано, как напечатать рабочий лист.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Instantiate a workbook with Excel file. | |
Workbook workbook = new Workbook(dataDir + "SampleBook.xlsx"); | |
string printerName = ""; | |
while (string.IsNullOrEmpty(printerName) && string.IsNullOrWhiteSpace(printerName)) | |
{ | |
Console.WriteLine("Please Enter Your Printer Name:"); | |
printerName = Console.ReadLine(); | |
} | |
// Define a worksheet. | |
Worksheet worksheet; | |
// Get the second sheet. | |
worksheet = workbook.Worksheets[1]; | |
// Apply different Image/Print options. | |
Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
options.PrintingPage = PrintingPageType.Default; | |
SheetRender sr = new SheetRender(worksheet, options); | |
Console.WriteLine("Printing SampleBook.xlsx"); | |
// Print the sheet. | |
try | |
{ | |
sr.ToPrinter(printerName); | |
Console.WriteLine("Pinting finished."); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
Печать с использованием WorkbookRender
Для печати всего рабочего книги переберите листы и напечатайте их или используйте класс WorkbookRender.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
// Instantiate a workbook with an Excel file. | |
Workbook workbook = new Workbook(sourceDir + "samplePrintingUsingWorkbookRender.xlsx"); | |
string printerName = "doPDF 8"; | |
// Apply different Image/Print options. | |
Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
options.ImageType = Drawing.ImageType.Tiff; | |
options.PrintingPage = PrintingPageType.Default; | |
// To print a whole workbook, iterate through the sheets and print them, or use the WorkbookRender class. | |
WorkbookRender wr = new WorkbookRender(workbook, options); | |
try | |
{ | |
// Print the workbook. | |
wr.ToPrinter(printerName); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
Предварительный просмотр печати
Могут возникнуть случаи, когда файлы Excel с миллионами страниц нужно преобразовать в PDF или изображения. Обработка таких файлов потребует много времени и ресурсов. В таких случаях функция предварительного просмотра печати рабочей книги и рабочего листа может оказаться полезной. Перед преобразованием таких файлов пользователь может проверить общее количество страниц и затем решить, нужно ли преобразовать файл или нет. Эта статья фокусируется на использовании классов WorkbookPrintingPreview и SheetPrintingPreview для определения общего числа страниц.
Aspose.Cells предоставляет функцию предварительного просмотра печати. Для этого API предоставляет классы WorkbookPrintingPreview и SheetPrintingPreview. Чтобы создать предварительный просмотр печати всей рабочей книги, создайте экземпляр класса WorkbookPrintingPreview, передавая объекты Workbook и ImageOrPrintOptions конструктору. Класс WorkbookPrintingPreview предоставляет метод EvaluatedPageCount, который возвращает количество страниц в сгенерированном предварительном просмотре. Аналогично классу WorkbookPrintingPreview, класс SheetPrintingPreview используется для создания предварительного просмотра печати для конкретного рабочего листа. Чтобы создать предварительный просмотр печати рабочего листа, создайте экземпляр класса SheetPrintingPreview, передавая объекты Worksheet и ImageOrPrintOptions конструктору. Класс SheetPrintingPreview также предоставляет метод EvaluatedPageCount, возвращающий количество страниц в сгенерированном предварительном просмотре.
Следующий фрагмент кода демонстрирует использование обоих классов WorkbookPrintingPreview и SheetPrintingPreview с использованием образцового файла Excel.
Образец кода
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
Workbook workbook = new Workbook(sourceDir + "Book1.xlsx"); | |
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions(); | |
WorkbookPrintingPreview preview = new WorkbookPrintingPreview(workbook, imgOptions); | |
Console.WriteLine("Workbook page count: " + preview.EvaluatedPageCount); | |
SheetPrintingPreview preview2 = new SheetPrintingPreview(workbook.Worksheets[0], imgOptions); | |
Console.WriteLine("Worksheet page count: " + preview2.EvaluatedPageCount); |
Следующим выводом является результат выполнения вышеприведенного кода.
Вывод в консоль
Workbook page count: 1
Worksheet page count: 1
Продвинутые темы
- Настройка шрифтов для отображения электронных таблиц
- Преобразование рабочего листа в изображение - Удаление пустого места вокруг данных
- Преобразование Рабочего листа в изображение и Рабочего листа в изображение по странице
- Преобразование рабочего листа в изображение с использованием параметров ImageOrPrint
- Экспорт диапазона ячеек листа в изображение
- Экспорт листа или диаграммы в изображение с заданными шириной и высотой
- Извлечение изображений из листов с использованием параметров ImageOrPrintOptions
- Генерация миниатюры листа
- Вывод пустой страницы, когда нечего печатать
- Настройки страницы и опции печати
- Печать диапазона страниц с использованием SheetRender и WorkbookRender
- Отобразить последовательность страниц с использованием свойств PageIndex и PageCount класса ImageOrPrintOptions
- Отобразить Рабочий лист на графический контекст
- Указание индивидуального или частного набора шрифтов для рендеринга книги
- Укажите название задания или документа при печати с помощью Aspose.Cells