Часто задаваемые вопросы

Часто задаваемые вопросы

Какова модель лицензирования для Aspose.PDF FOSS для Python?

Aspose.PDF FOSS for Python имеет лицензию MIT. Он бесплатен для использования в коммерческих и некоммерческих продуктах, без необходимости активационного ключа, ограничений вызовов API или требуемого коммерческого соглашения.

Могу ли я использовать его в коммерческих продуктах?

Да. Лицензия MIT разрешает использование, модификацию и распространение в коммерческих продуктах без роялти или указания авторства, кроме уведомления о лицензии.

Как установить Aspose.PDF FOSS для Python?

Установите его с помощью команды ниже:

git clone https://github.com/aspose-pdf-foss/Aspose-PDF-FOSS-for-Python.git
cd Aspose-PDF-FOSS-for-Python
pip install -e .

Проверьте установку:

import aspose_pdf
print("aspose_pdf OK")

Какие версии Python поддерживаются? Есть ли какие-либо нативные зависимости?

Библиотека требует Python версии 3.11 или новее. Это чистый пакет Python — при установке и выполнении не требуются скомпилированные модульные расширения или нативные зависимости (C/C++).

Какие форматы может читать и записывать Aspose.PDF FOSS для Python?

Нативные PDF-документы являются базовым форматом: Document открывает и сохраняет PDF-файлы напрямую. Помимо PDF библиотека может экспортировать документ в HTML, Markdown или SVG, передавая значение DocFormat в Document.save(), а также может импортировать исходный контент Html, Cdr, Svg, Cgm и Ofd с помощью соответствующих классов *LoadOptions (HtmlLoadOptions, CdrLoadOptions, CgmLoadOptions, OfdLoadOptions). Отрендеренные страницы PDF также могут быть экспортированы в растровые изображения через RasterizedPage.

Могу ли я экспортировать PDF в HTML, Markdown или SVG?

Да, для экспорта в HTML и Markdown; передайте соответствующий элемент перечисления DocFormat в Document.save(), при желании сочетая его с HtmlSaveOptions или MarkdownSaveOptions для управления деталями макета, такими как split_into_pages или extract_images.

import aspose_pdf

doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.save("output.html", save_format=aspose_pdf.DocFormat.HTML)

Как создать новый PDF с нуля?

Создайте экземпляр Document, добавьте страницы с помощью doc.pages.add(), разместите содержимое с помощью Page.add_text() или Page.add_image(), затем вызовите Document.save():

import aspose_pdf

doc = aspose_pdf.Document()
page = doc.pages.add()
page.add_text("Monthly Report", x=72, y=720, font_size=18)
doc.save("report.pdf")

Как отобразить страницу PDF в виде изображения?

Вызовите Document.save_page_as_image(), передав нулевой индекс страницы и путь назначения; DPI управляет разрешением вывода:

import aspose_pdf

doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.save_page_as_image(0, "page1.png", dpi=150)

Как извлечь текст из PDF?

Используйте TextAbsorber (или TextFragmentAbsorber), посетите документ, затем прочитайте собранный текст:

import aspose_pdf

doc = aspose_pdf.Document()
doc.load_from("input.pdf")
absorber = aspose_pdf.TextAbsorber()
absorber.visit(doc)
print(absorber.text)

Как зашифровать документ PDF?

Вызовите Document.encrypt(), указав пользовательский пароль, пароль владельца и значение прав доступа:

import aspose_pdf

doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.encrypt(user_password="user-pw", owner_password="owner-pw", permissions=0)
doc.save("encrypted.pdf")

Document.decrypt(password) удаляет шифрование из уже открытого документа, а Document.change_passwords() вращает оба пароля на месте.

Как читать или заполнять значения полей AcroForm?

Получите доступ к свойству form документа и переберите Form.fields, либо добавьте новые поля с помощью Form.add_text_field(), Form.add_checkbox() и связанных методов:

import aspose_pdf

doc = aspose_pdf.Document()
doc.load_from("submitted_form.pdf")
for field in doc.form.fields:
    print(field.name, "=", field.value)

Есть ли известные ограничения в текущем выпуске?

Да. Пять методов в четырёх классах являются нереализованными заглушками в текущем выпуске: Shading._color_at, FontSource.get_font_definitions (и его подклассы FileFontSource, FolderFontSource, MemoryFontSource, SystemFontSource, которые наследуют ту же заглушку), DataSource.read_bytes and DataSource.write_bytes (и их подклассы FileDataSource, StreamDataSource, ByteArrayDataSource), и PdfPlugin.process. Вызов этих методов вызывает NotImplementedError вместо выполнения задокументированной операции. См. Troubleshooting страницу для получения деталей и обходных решений.

Где находится исходный код и система отслеживания проблем?

Исходный код и система отслеживания проблем доступны по адресу https://github.com/aspose-pdf-foss/Aspose-PDF-FOSS-for-Python.

См. также:

 Русский