Impostazione Intestazioni e piè di pagina

Impostazione di intestazioni e piè di pagina

Aspose.Cells consente di aggiungere intestazioni e piè di pagina ai fogli di lavoro in fase di esecuzione, ma consigliamo di impostare manualmente le intestazioni e i piè di pagina in un file pre-progettato per la stampa. È possibile utilizzare Microsoft Excel come strumento GUI per impostare le intestazioni e i piè di pagina per risparmiare sforzi e tempo di sviluppo. Aspose.Cells può importare il file e salvare le impostazioni.

Per aggiungere intestazioni e piè di pagina in fase di esecuzione, Aspose.Cells fornisce chiamate API speciali e comandi di script per formattare intestazioni e piè di pagina.

Comandi di script

I comandi di script sono comandi speciali che consentono di impostare la formattazione di intestazioni e piè di pagina.

Comandi di script Descrizione
&P Numero di pagina corrente
&G Un’immagine
&N Il numero totale di pagine
&D La data corrente
&T L’orario corrente
&A Il nome del foglio di lavoro
&F Il nome del file senza percorso
&"<FontName>" Rappresenta un nome di carattere. Ad esempio: &“Arial”
&"<FontName>, <FontStyle>" Rappresenta il nome del carattere con lo stile. Ad esempio: &“Arial,Grassetto”
&<FontSize> Rappresenta la dimensione del carattere. Ad esempio: “&14abc”. Ma, se questo comando è seguito da un numero normale da stampare nell’intestazione, questo dovrebbe essere separato da un carattere spazio dalla dimensione del carattere. Ad esempio: “&14 123”.

Imposta Intestazioni e Piè di Pagina

La classe PageSetup fornisce due metodi, SetHeader e SetFooter, utilizzati per aggiungere un’intestazione e un piè di pagina a un foglio di lavoro. Questi metodi richiedono solo due parametri:

  • Sezione – la sezione in cui dovrebbe essere posizionata l’intestazione o il piè di pagina. Ci sono tre sezioni: sinistra, centro e destra, rappresentate rispettivamente da 0, 1 e 2.
  • Script – lo script da utilizzare per l’intestazione o il piè di pagina. Questo script contiene comandi di script per formattare l’intestazione o il piè di pagina.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Instantiating a Workbook object
Workbook excel = new Workbook();
// Obtaining the reference of the PageSetup of the worksheet
PageSetup pageSetup = excel.Worksheets[0].PageSetup;
// Setting worksheet name at the left section of the header
pageSetup.SetHeader(0, "&A");
// Setting current date and current time at the centeral section of the header
// and changing the font of the header
pageSetup.SetHeader(1, "&\"Times New Roman,Bold\"&D-&T");
// Setting current file name at the right section of the header and changing the
// font of the header
pageSetup.SetHeader(2, "&\"Times New Roman,Bold\"&12&F");
// Setting a string at the left section of the footer and changing the font
// of a part of this string ("123")
pageSetup.SetFooter(0, "Hello World! &\"Courier New\"&14 123");
// Setting the current page number at the central section of the footer
pageSetup.SetFooter(1, "&P");
// Setting page count at the right section of footer
pageSetup.SetFooter(2, "&N");
// Save the Workbook.
excel.Save("SetHeadersAndFooters_out.xls");

Inserire un’immagine nell’intestazione o nel piè di pagina

La classe PageSetup ha due metodi aggiuntivi, SetHeaderPicture e SetFooterPicture, utilizzati per aggiungere immagini all’intestazione e al piè di pagina. Questi metodi accettano i parametri:

  • Sezione – la sezione dell’intestazione o del piè di pagina in cui verrà posizionata l’immagine. Ci sono tre sezioni, sinistra, centro e destra, rappresentate dai valori 0, 1 e 2 rispettivamente.
  • Array di byte – i dati grafici (i dati binari devono essere scritti nel buffer di un array di byte).

Dopo aver eseguito il codice sottostante e aperto il file, controlla l’intestazione del foglio di lavoro:

  1. Nel menu File, seleziona Imposta pagina. Verrà visualizzata una finestra di dialogo.
  2. Seleziona la scheda Intestazione/Piè di pagina.
// 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);
// Creating a Workbook object
Workbook workbook = new Workbook();
// Creating a string variable to store the url of the logo/picture
string logo_url = dataDir + "aspose-logo.jpg";
// Declaring a FileStream object
FileStream inFile;
// Declaring a byte array
byte[] binaryData;
// Creating the instance of the FileStream object to open the logo/picture in the stream
inFile = new System.IO.FileStream(logo_url, System.IO.FileMode.Open, System.IO.FileAccess.Read);
// Instantiating the byte array of FileStream object's size
binaryData = new Byte[inFile.Length];
// Reads a block of bytes from the stream and writes data in a given buffer of byte array.
long bytesRead = inFile.Read(binaryData, 0, (int)inFile.Length);
// Creating a PageSetup object to get the page settings of the first worksheet of the workbook
PageSetup pageSetup = workbook.Worksheets[0].PageSetup;
// Setting the logo/picture in the central section of the page header
pageSetup.SetHeaderPicture(1, binaryData);
// Setting the script for the logo/picture
pageSetup.SetHeader(1, "&G");
// Setting the Sheet's name in the right section of the page header with the script
pageSetup.SetHeader(2, "&A");
// Saving the workbook
workbook.Save(dataDir + "InsertImageInHeaderFooter_out.xls");
//Closing the FileStream object
inFile.Close();