Документы Office
Источник office преобразует документы .docx, .xlsx и .pptx в PDF. Внутри работает LibreOffice. Доступен на тарифах Premium и Business.
Отправка#
Файл передаётся в теле запроса в base64 вместе с именем, по расширению выбирается конвертер. Библиотеки читают файл и кодируют его самостоятельно.
curl -X POST https://pdfapi.ru/api/v1/convert \
-H "Authorization: Bearer $PDFAPI_KEY" \
-H "Content-Type: application/json" \
-d "{\"source\":\"office\",\"filename\":\"report.docx\",\"fileBase64\":\"$(base64 < report.docx | tr -d '\n')\"}" \
-o report.pdfОграничения#
- Форматы — только
.docx,.xlsxи.pptx. Старые.doc,.xlsи.pptтребуется пересохранить в новом формате. - Размер — до 3,7 МБ. После base64 файл вырастает на треть, а тело запроса ограничено 5 МБ. Большие картинки внутри документа стоит сжать.
- Проверка — файл должен быть ZIP-архивом, как любой настоящий docx, xlsx и pptx. PDF или картинка, переименованные в
.docx, вернут400. Библиотеки SDK ловят этот момент до отправки данных. - Параметры — функционирует только
landscape. Размер листа и поля берутся из самого документа.
Шрифты#
Если в документе шрифт, которого нет на сервере, LibreOffice подставит схожий, в этом случае строки могут перенестись по-другому. Для документов, где важна точная верстка, используйте популярные шрифты или встраивайте их в документ при сохранении.
Таблицы Excel#
Печатается то, что Excel напечатал бы сам: области печати, масштаб и ориентация из настроек листа. Широкую таблицу удобнее отправить с landscape: true или заранее задать в файле параметр «вписать в одну страницу по ширине».