Generazione della pagina

Generazione della pagina

Generazione di pagina

Aspose.PDF FOSS for .NET fornisce un motore di layout basato su paragrafi per generare contenuti PDF. Tabelle, riquadri flottanti, intestazioni/piè di pagina e timbri ti consentono di creare pagine strutturate senza dover costruire manualmente gli operatori del flusso di contenuto.


Aggiunta di paragrafi

Page.Paragraphs è il punto di ingresso per aggiungere elementi di contenuto.

using var doc = new Document();
var page = doc.Pages.Add();

page.Paragraphs.Add(new TextFragment("Hello, PDF!"));
doc.Save("hello.pdf");

Tabelle

Table supporta righe, celle, larghezze delle colonne, bordi e stato del testo.

var table = new Table();
table.ColumnWidths = "100 200 100";

var row = table.Rows.Add();
row.Cells.Add("Name");
row.Cells.Add("Description");
row.Cells.Add("Price");

page.Paragraphs.Add(table);

Formattazione della cella

Cells.Add restituisce un Cell dove è possibile configurare bordi, padding e contenuto nidificato.

var cell = row.Cells.Add("Styled cell");
cell.Border = new BorderInfo(BorderSide.All, 0.5f);
cell.Margin = new MarginInfo(5, 5, 5, 5);

Riquadri fluttuanti

FloatingBox posiziona il contenuto a coordinate assolute sulla pagina.

var box = new FloatingBox(200, 100);
box.Left = 72;
box.Top = 700;
box.Paragraphs.Add(new TextFragment("Positioned text"));
page.Paragraphs.Add(box);

Intestazioni e piè di pagina

HeaderFooter aggiunge contenuto ripetuto nella parte superiore o inferiore delle pagine.

var header = HeaderFooter.FromText("Document Title");
header.ApplyAsHeader(page);

var footer = HeaderFooter.FromText("Page {0}");
footer.ApplyAsFooter(page);

Marchi di pagina

PdfPageStamp sovrappone il contenuto da una pagina PDF a un’altra.

var stamp = new PdfPageStamp("watermark.pdf");
stamp.Put(page);

Suggerimenti e migliori pratiche

  • Usa Table.ColumnWidths come stringa di valori in punti separati da spazi per controllare il layout.
  • FloatingBox è utile per il posizionamento assoluto — combinalo con Table per contenuti strutturati.
  • HeaderFooter.FromText supporta {0} come segnaposto del numero di pagina.
  • Aggiungi tutti i paragrafi prima di chiamare Save — il motore di layout elabora il contenuto in ordine.
  • Usa BorderInfo per aggiungere bordi a tabelle, celle e riquadri flottanti.

Problemi comuni

ProblemaCausaCorrezione
La tabella supera i margini della paginaTroppe righe per una paginaLa libreria paginazione automaticamente; regolare i margini se necessario
Intestazione non visualizzataApplyAsHeader called after SaveApplicare le intestazioni prima del salvataggio
FloatingBox nella posizione errataCoordinate misurate dall’angolo in alto a sinistra in unità di paragrafoVerificare che le unità corrispondano alle proprie aspettative

FAQ

Posso creare tabelle su più pagine?

Sì. Quando una tabella supera l’altezza della pagina disponibile, continua automaticamente nella pagina successiva.

Come aggiungere immagini alle celle della tabella?

Crea un paragrafo Image e aggiungilo alla raccolta Paragraphs della cella.

Posso importare dati da un array in una tabella?

Sì. Usa Table.ImportArray per popolare una tabella da un array bidimensionale.


Sommario di riferimento API

Classe / MetodoDescrizione
ParagraphsElementi di contenuto ordinati su una pagina
Paragraphs.AddAggiungi un elemento paragrafo (testo, tabella, grafico, ecc.)
TableLayout a griglia con righe, celle e larghezze delle colonne
Table.ImportArrayPopola la tabella da un array
RowsRaccolta di righe in una tabella
CellsRaccolta di celle in una riga di tabella
BorderInfoStile dei bordi per tabelle, celle e riquadri
FloatingBoxContenitore di contenuto posizionato assolutamente
HeaderFooterContenuto di intestazione o piè di pagina ripetuto
HeaderFooter.FromTextCrea intestazione/piè di pagina da un modello di testo
PdfPageStampSovrapponi una pagina PDF come timbro

Vedi anche

 Italiano