Jak łączyć komórki, stylowanie kontorów i zawartość tabeli w .NET
Profesjonalne publikacje i projektowanie wymagają tabel, które przekraczają płaskie rzędy i kolumny. Aspose.PDF.TableGenerator Plugin dla .NET, można stworzyć wizualnie przytłaczające tabele z łączonymi komórkami, indywidualnym stylowaniem i bogatym treścią - idealnie do raportów, katalogów i publikacji cyfrowych.
Granice i kolory tła
Dostosuj wygląd komórki i rzędu:
using Aspose.Pdf.Plugins;
using System.Drawing;
var generator = new TableGenerator();
var tableOptions = new TableOptions()
.InsertPageAfter(1)
.AddTable();
// Header row with background and border styling
var header = new TableRowBuilder()
.SetBackgroundColor(Color.LightSteelBlue)
.SetBorder(Color.DarkBlue, 2);
header.AddCell(new TableCellBuilder().AddParagraph(new TextFragment("Header 1")));
header.AddCell(new TableCellBuilder().AddParagraph(new TextFragment("Header 2")));
tableOptions.AddRow(header);
// Data row with custom cell color
var row = new TableRowBuilder();
row.AddCell(new TableCellBuilder()
.SetBackgroundColor(Color.PaleGreen)
.AddParagraph(new TextFragment("Value 1")));
row.AddCell(new TableCellBuilder()
.SetBackgroundColor(Color.WhiteSmoke)
.AddParagraph(new TextFragment("Value 2")));
tableOptions.AddRow(row);
tableOptions.AddInput(new FileDataSource(@"C:\Docs\input.pdf"));
tableOptions.AddOutput(new FileDataSource(@"C:\Docs\styled_table.pdf"));
generator.Process(tableOptions);Merging kolumny (Colspan / Rowspan)
Złączyć komórki do tworzenia kolejek podsumowania, nagłówków lub specjalnych sekcji:
var mergedRow = new TableRowBuilder();
mergedRow.AddCell(
new TableCellBuilder()
.SetColSpan(2) // Merge two columns
.SetBackgroundColor(Color.LightYellow)
.AddParagraph(new TextFragment("Merged across two columns")));
tableOptions.AddRow(mergedRow);Zaawansowane treści: HTML i bogaty tekst
- Fragmenty HTML: Użyj
HtmlFragmentaby włączyć stylowy tekst, hiperłącze lub obrazy inline w dowolnej komórce. - Zdjęcia: Wprowadź logo lub grafiki za pomocą
ImageFragment. - TeX/Math: Dodaj równania z
TeXFragment.
tableOptions.AddRow(new TableRowBuilder()
.AddCell(new TableCellBuilder().AddParagraph(new HtmlFragment("<b>Bold & styled text</b>"))));Ustawienie szerokości komórek i alignment
- Używanie
SetWidth,SetMinWidth, iSetMaxWidthDla rozmiarów indywidualnych. - Kontrola dopasowania tekstu do
SetHorizontalAlignmentiSetVerticalAlignment.
Przykłady użycia
- Sprawozdania biznesowe / finansowe z podsumowującymi kolejkami i podkreśleniami
- Katalogy i tabele cenowe z stylowymi nagłówkami
- Dokumenty akademickie z równaniami, komórkami wielostronnymi i odniesieniami
Często zadawane pytania
**Q: Czy fragmenty HTML są obsługiwane w komórkach tabelowych?**A: Tak i użyj HtmlFragment dla tekstów, linków lub obrazów w dowolnej komórce.
**Q: Jak ustawić dostosowane szerokości komórek?**A: Używanie SetWidth na A TableCellBuilder absolutnego lub względnego rozmiaru.
**Q: Czy mogę łączyć komórki pionowo (rowspan)?**A: Tak – używanie SetRowSpan do łączenia komórek w kolejkach (jeśli jest obsługiwana przez wersję API wtyczki).
Pro Tip: Eksperyment z dostosowanymi kolorami, obrazami i układem dla dokumentów biznesowych i projektowania.