Generare de pagină
Generare pagină
Aspose.PDF FOSS for .NET oferă un motor de aranjare bazat pe paragrafe pentru generarea conținutului PDF. Tabelele, casetele plutitoare, anteturile/subsolurile și ștampilele vă permit să construiți pagini structurate fără a construi manual operatorii fluxului de conținut.
Adăugarea paragrafelor
Page.Paragraphs este punctul de intrare pentru adăugarea elementelor de conținut.
using var doc = new Document();
var page = doc.Pages.Add();
page.Paragraphs.Add(new TextFragment("Hello, PDF!"));
doc.Save("hello.pdf");Tabele
Table acceptă rânduri, celule, lățimi de coloană, borduri și starea textului.
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);Formatare celulă
Cells.Add returnează un Cell în care poți configura borduri, spațiere și conținut imbricat.
var cell = row.Cells.Add("Styled cell");
cell.Border = new BorderInfo(BorderSide.All, 0.5f);
cell.Margin = new MarginInfo(5, 5, 5, 5);Cutii plutitoare
FloatingBox poziționează conținutul la coordonate absolute pe pagină.
var box = new FloatingBox(200, 100);
box.Left = 72;
box.Top = 700;
box.Paragraphs.Add(new TextFragment("Positioned text"));
page.Paragraphs.Add(box);Antete și subsoluri
HeaderFooter adaugă conținut repetitiv în partea de sus sau de jos a paginilor.
var header = HeaderFooter.FromText("Document Title");
header.ApplyAsHeader(page);
var footer = HeaderFooter.FromText("Page {0}");
footer.ApplyAsFooter(page);Stampile paginii
PdfPageStamp suprapune conținutul de pe o pagină PDF pe alta.
var stamp = new PdfPageStamp("watermark.pdf");
stamp.Put(page);Sfaturi și cele mai bune practici
- Utilizați
Table.ColumnWidthsca un șir de valori de puncte separate prin spațiu pentru a controla aspectul. FloatingBoxeste util pentru poziționarea absolută — combinați cuTablepentru conținut structurat.HeaderFooter.FromTextacceptă{0}ca un substituent pentru numărul paginii.- Adăugați toate paragrafele înainte de a apela
Save— motorul de aspect procesează conținutul în ordine. - Utilizați
BorderInfopentru a adăuga borduri la tabele, celule și casete plutitoare.
Probleme comune
| Issue | Cause | Fix |
|---|---|---|
| Tabelul depășește pagina | Prea multe rânduri pentru o pagină | Biblioteca paginează automat; ajustează marginile dacă este necesar |
| Antetul nu apare | ApplyAsHeader called after Save | Aplică anteturile înainte de salvare |
| FloatingBox la poziție greșită | Coordonatele sunt măsurate de la stânga sus în unități de paragraf | Verifică dacă unitățile corespund așteptărilor tale |
Întrebări frecvente
Pot crea tabele pe mai multe pagini?
Da. Când un tabel depășește înălțimea paginii disponibile, continuă automat pe pagina următoare.
Cum adaug imagini în celulele tabelului?
Creează un paragraf Image și adaugă-l în colecția Paragraphs a celulei.
Pot importa date dintr-un array într-un tabel?
Da. Folosește Table.ImportArray pentru a popula un tabel dintr-un tablou bidimensional.
Rezumatul referinței API
| Clasă / Metodă | Descriere |
|---|---|
Paragraphs | Elemente de conținut ordonate pe o pagină |
Paragraphs.Add | Adaugă un element paragraf (text, tabel, diagramă etc.) |
Table | Aspect grilă cu rânduri, celule și lățimi de coloană |
Table.ImportArray | Populează tabelul dintr-un tablou |
Rows | Colecție de rânduri într-un tabel |
Cells | Colecție de celule într-un rând de tabel |
BorderInfo | Stilizare bordură pentru tabele, celule și casete |
FloatingBox | Container de conținut poziționat absolut |
HeaderFooter | Conținut repetitiv de antet sau subsol |
HeaderFooter.FromText | Creează antet/subsol dintr-un șablon text |
PdfPageStamp | Suprapune o pagină PDF ca ștampilă |