Удаление таблиц из существующего PDF
Contents
[
Hide
]
Aspose.PDF для NET предоставляет возможности вставки/создания таблицы в документе PDF во время его создания с нуля или вы также можете добавить объект таблицы в любой существующий документ PDF. Однако у вас может возникнуть потребность в Манипулировании таблицами в существующем PDF, где вы можете обновлять содержимое существующих ячеек таблицы. Также может возникнуть потребность в удалении объектов таблиц из существующего документа PDF.
Для удаления таблиц необходимо использовать класс TableAbsorber, чтобы получить доступ к таблицам в существующем PDF, а затем вызвать Remove.
Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.
Удаление таблицы из документа PDF
Мы добавили новую функцию, а именно Мы добавили новую функцию, а именно:
// Для полных примеров и файлов данных, пожалуйста, перейдите по ссылке https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к каталогу документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();
// Загрузить существующий документ PDF
Document pdfDocument = new Document(dataDir + "Table_input.pdf");
// Создать объект TableAbsorber для поиска таблиц
TableAbsorber absorber = new TableAbsorber();
// Посетить первую страницу с помощью absorber
absorber.Visit(pdfDocument.Pages[1]);
// Получить первую таблицу на странице
AbsorbedTable table = absorber.TableList[0];
// Удалить таблицу
absorber.Remove(table);
// Сохранить PDF
pdfDocument.Save(dataDir + "Table_out.pdf");
Удаление нескольких таблиц из документа PDF
Иногда в документе PDF может содержаться более одной таблицы, и у вас может возникнуть необходимость удалить несколько таблиц из него. Для удаления нескольких таблиц из документа PDF, пожалуйста, используйте следующий фрагмент кода:
// Для полных примеров и файлов данных, пожалуйста, перейдите по ссылке https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к каталогу документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();
// Загрузить существующий документ PDF
Document pdfDocument = new Document(dataDir + "Table_input2.pdf");
// Создать объект TableAbsorber для поиска таблиц
TableAbsorber absorber = new TableAbsorber();
// Посетить вторую страницу с помощью absorber
absorber.Visit(pdfDocument.Pages[1]);
// Получить копию коллекции таблиц
AbsorbedTable[] tables = new AbsorbedTable[absorber.TableList.Count];
absorber.TableList.CopyTo(tables, 0);
// Пройтись по копии коллекции и удалить таблицы
foreach (AbsorbedTable table in tables)
absorber.Remove(table);
// Сохранить документ
pdfDocument.Save(dataDir + "Table2_out.pdf");
Пожалуйста, учитывайте, что удаление или замена таблицы изменяет коллекцию TableList. Поэтому, в случае удаления/замены таблиц в цикле, копирование коллекции TableList является обязательным.