Jak łączyć komórki, stylowanie kontorów i zawartość tabeli w .NET

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 HtmlFragment aby 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 &amp; styled text</b>"))));

Ustawienie szerokości komórek i alignment

  • Używanie SetWidth, SetMinWidth, i SetMaxWidth Dla rozmiarów indywidualnych.
  • Kontrola dopasowania tekstu do SetHorizontalAlignment i SetVerticalAlignment.

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.

 Polski