Як створити та вставити таблиці в PDF-файли в .NET
Ця стаття показує, як програматично генерувати та вставляти таблиці в PDF-файли за допомогою Aspose.PDF Table Generator для .NET. Додаток на таблицю генератор ускладнює створення таблиць, що робить його простим для додавання структурованих, стильованих столів — будь то для звітів, форм або динамічної автоматизації контенту.
Реальні проблеми світу
Створення добре структурованих таблиць у PDF-файлах вручну неприємно, особливо з динамічними або масовими даними.Автоматизація цього процесу в рамках .NET-прикладів заощаджує час, забезпечує консистенцію і зменшує людські помилки.
Огляд рішення
ASPOSE.PDF Table Generator для .NET дозволяє розробникам визначати, форматувати та вставляти таблиці в будь-якому місці в PDF-документі. Флексивні АПІ дозволяють вам контролювати рядки, клітини та клітинний вміст — в тому числі текст, HTML-фрагменти, зображення та математичні (TeX) рівняння.
Передумови
- Visual Studio 2019 або вище
- .NET 6.0 або пізніше
- Aspose.PDF для .NET встановлено через NuGet
PM> Install-Package Aspose.PDF
Крок за кроком реалізація
Крок 1: Інсталювати і встановити Aspose.PDF
using Aspose.Pdf.Plugins;
using System.IO;
Крок 2: Створіть таблицю і додайте до PDF
// Create TableGenerator
var generator = new TableGenerator();
// Create TableOptions and add a demo table to the first page
var options = new TableOptions()
.InsertPageAfter(1) // Insert after first page (or .InsertPageBefore(pageNum))
.AddTable()
.AddRow()
.AddCell().AddParagraph(new HtmlFragment("<b>Header 1</b>"))
.AddCell().AddParagraph(new TextFragment("Header 2"))
.AddRow()
.AddCell().AddParagraph(new TextFragment("Row 1 Cell 1"))
.AddCell().AddParagraph(new TeXFragment("$E=mc^2$", true));
// Add input/output file sources
options.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
options.AddOutput(new FileDataSource(@"C:\Samples\output_table.pdf"));
// Process
generator.Process(options);
Використання випадків і додатків (з варіантами коду)
1. Додайте таблицю після або перед конкретною сторінкою
Введіть таблиці в точні місця у вашому документі:
var options = new TableOptions()
.InsertPageAfter(2) // or .InsertPageBefore(3)
.AddTable()
.AddRow()
.AddCell().AddParagraph(new TextFragment("After Page 2"));
2. Динамічна таблична генерація на основі даних
Перейти через колекції, щоб додати динамічні рядки і клітини:
var data = new[] { new[] { "A", "B" }, new[] { "C", "D" } };
var tableBuilder = new TableOptions().AddTable();
foreach (var row in data)
{
var rowBuilder = tableBuilder.AddRow();
foreach (var cell in row)
{
rowBuilder.AddCell().AddParagraph(new TextFragment(cell));
}
}
Додайте решту структури та процесу столу як зазвичай.
3. Підтримка для кількох типів контенту в клітинах
Клітини можуть містити текст, HTML, зображення або еквіваленти TeX:
AddParagraph(new HtmlFragment("<b>Bold HTML</b>"))
AddParagraph(new TextFragment("Simple Text"))
AddParagraph(new TeXFragment("$a^2 + b^2 = c^2$", true))
4. Додайте кілька таблиць або табличних розташувань в одному PDF
Керівництво закликає .AddTable()
Введіть кілька таблиць в один документ.
5. Batch генерує звіти з таблицями
Автоматичне введення таблиці для пакетів PDF або генерувати багатосторонні звіти шляхом перехоплення файлів і джерел даних.
Спільні виклики та рішення
**Виклик: ** Точне розміщення таблиці або перекладання контенту• Використання .InsertPageAfter(pageNum)
або .InsertPageBefore(pageNum)
для точного позиціонування. перегляд результатів для корекції.
Виклик: ** Комплексні, змінні джерела данихРішення:** Створіть таблиці динамічно в коді. Використовуйте смуги, щоб генерувати рядки / клітини за елементом даних.
Виклик: Формування клітин або непідтримлений контентРішення: Натисніть до підтримуваних типів контенту (текст, HtmlFragment, TeXFrage, Image).
Виконання та найкращі практики
- Прогноз продукції перед великою автоматизацією
- Використовуйте динамічні будівлі для таблиць змінної довжини
- Будівники ланцюгового столу / клітини / роу для стримування структури
- Завантажити PDF-файли до обробки
Повний приклад реалізації
using Aspose.Pdf.Plugins;
using System;
using System.IO;
class Program
{
static void Main()
{
var generator = new TableGenerator();
var options = new TableOptions()
.InsertPageAfter(1)
.AddTable()
.AddRow()
.AddCell().AddParagraph(new HtmlFragment("<b>Header 1</b>"))
.AddCell().AddParagraph(new TextFragment("Header 2"))
.AddRow()
.AddCell().AddParagraph(new TextFragment("Row 1 Cell 1"))
.AddCell().AddParagraph(new TeXFragment("$E=mc^2$", true));
options.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
options.AddOutput(new FileDataSource(@"C:\Samples\output_table.pdf"));
generator.Process(options);
}
}
Заключення
Aspose.PDF Table Generator для .NET дозволяє програмістам програматично створювати, стилізувати та вставляти таблиці в PDF-документи. Використовуйте гнучкий API будівлі для динамічних розташувань, складних структур і швидкої автоматизації – все від чистого, читаючого коду C#.