Страницы и элементы
Создавайте страницы PDF, перечисляйте редактируемые элементы и управляйте их геометрией и порядком наложения.
FPdf владеет страницами, а каждый FPdfPage предоставляет сохраняемые редактируемые наложения на этой странице.
Чтение и вставка страниц
Индексы страниц начинаются с нуля. insertPage(index?) вставляет страницу по индексу или добавляет в конец, если индекс не указан; пустой документ использует размер A4.
const pdf = univerAPI.getActivePdf()if (!pdf) { throw new Error('No active PDF')}const page = pdf.getPageByIndex(0) ?? pdf.insertPage()const pages = pdf.getPages()const samePage = pdf.getPageById(page.getId())Перечисление редактируемых элементов
getElements() возвращает редактируемые наложения в z-порядке. Нативные объекты импортированного PDF в результат не входят.
const elements = page.getElements()const [firstElement] = elementsconst sameElement = firstElement ? page.getElementById(firstElement.getId()) : nullДля специализированной обёртки используйте типизированные методы: getTextBoxes(), getParagraphs(), getLists(), getTables(), getImages(), getDividers() и getAnnotations().
Преобразование и удаление элементов
Фасад задаёт размещение в пунктах PDF. Геометрия снимка getData() использует внутренние единицы PDF, поэтому изменяйте размещение методами фасада.
const [element] = page.getElements()if (element) { element .setPosition(36, 72) .setSize(288, 144) .setRotation(5) .setVisible(true) .setLocked(false) .bringToFront()}Используйте remove() для удаления редактируемого элемента. После удаления не используйте устаревшую обёртку повторно.
Насколько полезно это руководство?