Stampa e visualizza in anteprima la cartella di lavoro

Stampa Introduzione

Microsoft Excel presuppone che si desideri stampare l’intera area del foglio di lavoro a meno che non si specifichi una selezione. Per stampare utilizzando Aspose.Cells, importare prima lo spazio dei nomi Aspose.Cells.Rendering nel programma. Ha diverse classi utili, ad esempio,FoglioRendering eWorkbook Render.

Stampa utilizzando SheetRender

IlAspose.Cells.Rendering.SheetRender class rappresenta un foglio di lavoro e ha l’estensioneAlla stampantemetodo che può stampare un foglio di lavoro. Il codice di esempio seguente mostra come stampare un foglio di lavoro.

// 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);
}

Stampa utilizzando WorkbookRender

Per stampare un’intera cartella di lavoro, scorrere i fogli e stamparli oppure utilizzare il fileWorkbook Renderclasse.

// 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);
}

Anteprima di stampa

Potrebbero esserci casi in cui i file Excel con milioni di pagine devono essere convertiti in PDF o immagini. L’elaborazione di tali file richiederà molto tempo e risorse. In questi casi, la funzione Anteprima di stampa della cartella di lavoro e del foglio di lavoro potrebbe rivelarsi utile. Prima di convertire tali file, l’utente può controllare il numero totale di pagine e quindi decidere se il file deve essere convertito o meno. Questo articolo si concentra sull’utilizzo diCartella di lavoroStampaAnteprimaeFoglioStampaAnteprimaclassi per scoprire il numero totale di pagine.

Aspose.Cells fornisce la funzione di anteprima di stampa. Per questo, lo API fornisceCartella di lavoroStampaAnteprima eFoglioStampaAnteprima classi. Per creare l’anteprima di stampa dell’intera cartella di lavoro, creare un’istanza diCartella di lavoroStampaAnteprima classe passandoCartella di lavoro eImageOrPrintOptions oggetti al costruttore. IlCartella di lavoroStampaAnteprima la classe fornisce unEvaluatedPageCount metodo che restituisce il numero di pagine nell’anteprima generata. Simile aCartella di lavoroStampaAnteprimaclasse, ilFoglioStampaAnteprimaclass viene utilizzata per generare un’anteprima di stampa per un foglio di lavoro specifico. Per creare l’anteprima di stampa di un foglio di lavoro, creare un’istanza diFoglioStampaAnteprimaclasse passandoFoglio di lavoroeImageOrPrintOptionsoggetti al costruttore. IlFoglioStampaAnteprimaclass fornisce anche unEvaluatedPageCountmetodo che restituisce il numero di pagine nell’anteprima generata.

Il seguente frammento di codice illustra l’uso di entrambiCartella di lavoroStampaAnteprimaeFoglioStampaAnteprima classi utilizzando ilfile excel di esempio.

Codice d’esempio

// 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);

Di seguito è riportato l’output generato dall’esecuzione del codice precedente.

Uscita console

Numero di pagine della cartella di lavoro: 1 Numero di pagine del foglio di lavoro: 1

Argomenti avanzati