Сторінка Aspose.Page для Python – запитання й відповіді



З: Що таке Aspose.Page для Python і які формати файлів він підтримує?

В: Aspose.Page для Python — це бібліотека, яка дозволяє створювати, змінювати, перетворювати та відображати документи PostScript (PS), Encapsulated PostScript (EPS) і XPS. Він може виводити PDF, XPS, PNG, JPEG, BMP, GIF, TIFF, SVG і експортувати об’єкти PDF‑XObject або XPS‑Canvas.


З: Чи потрібні мені будь-які зовнішні інструменти, такі як Ghostscript або середовище виконання .NET, щоб використовувати бібліотеку?

В: Ні. Уся необхідна логіка візуалізації та перетворення міститься в самодостатньому власному двійковому файлі, який пакет aspose.page завантажує під час виконання. Для Windows, macOS або Linux не потрібні зовнішні залежності.


З: Як встановити Aspose.Page для Python?

A: Використовуйте pip:

1pip install aspose-page

Колесо автоматично витягує рідні двійкові файли в папку пакетів сайту.


З: Як застосувати ліцензію, щоб уникнути оціночних водяних знаків?

В: Розмістіть файл .lic у доступному місці та додайте наступний код перед будь-якою обробкою:

1import aspose.page as ap
2license = ap.License()
3license.set_license('Aspose.Page.Python.lic')

Шлях може бути абсолютним або відносним до сценарію.


З: Який мінімальний код для перетворення файлу PS у PDF?

В:

1import aspose.page as ap
2
3doc = ap.Document('sample.ps')
4pdf_opt = ap.save.PdfSaveOptions()
5doc.save('sample.pdf', pdf_opt)

Виклик обробляє всі сторінки за замовчуванням.


З: Як відобразити певну сторінку документа XPS у форматі PNG?

В:

1import aspose.page as ap
2
3doc = ap.Document('sample.xps')
4img_opt = ap.save.ImageSaveOptions(ap.SaveFormat.PNG)
5img_opt.page_number = 2          # 1based index
6doc.save('page2.png', img_opt)

За потреби встановіть resolution, jpeg_quality тощо в img_opt.


З: Чи можу я створити новий документ PostScript з нуля?

В: Так. Визначте розмір сторінки, отримайте полотно та намалюйте графічні об’єкти:

1import aspose.page as ap
2
3size = ap.base.SizeF(595, 842)           # A4 in points
4doc = ap.Document(size)
5canvas = doc.pages[0].canvas
6canvas.draw_line(ap.base.PointF(0, 0), ap.base.PointF(595, 842))
7canvas.draw_string('Hello Aspose!', ap.base.Font('Arial', 24),
8                   ap.base.Brushes.black, ap.base.PointF(100, 100))
9doc.save('new_doc.ps', ap.save.PSOptions())



З: Як я можу додати метадані PDF, наприклад назву та автора, під час перетворення?

В: Використовуйте об’єкт PdfSaveOptions:

1pdf_opt = ap.save.PdfSaveOptions()
2pdf_opt.title = 'My Document'
3pdf_opt.author = 'John Doe'
4doc.save('output.pdf', pdf_opt)



З: Чи можна об’єднати кілька файлів PS/EPS/XPS в один PDF?

В: Так. Послідовно завантажте кожне джерело та ввімкніть режим додавання:

1options = ap.save.PdfSaveOptions()
2options.append_mode = True
3for src in ['a.ps', 'b.eps', 'c.xps']:
4    doc = ap.Document(src)
5    doc.save('merged.pdf', options)



З: Як видалити або повернути сторінку в завантаженому документі?

В:

1doc = ap.Document('multi_page.ps')
2doc.pages.remove_at(2)          # removes the third page (0based)
3page = doc.pages[0]
4page.transform.rotate(90)       # clockwise 90°
5doc.save('updated.pdf', ap.save.PdfSaveOptions())



З: Чи можна замінити текст-заповнювач у шаблоні PS/EPS?

В: Використовуйте API replace_text:

1doc = ap.Document('template.eps')
2doc.replace_text('{{name}}', 'John Doe')
3doc.save('filled.pdf', ap.save.PdfSaveOptions())

Впливає лише на доступні для пошуку текстові потоки.


З: Які міркування щодо пам’яті для обробки великих (>500 МБ) документів?

В: Система передає дані, де це можливо, але завантажує кожну сторінку в пам’ять. Щоб зменшити використання оперативної пам’яті, обробляйте сторінки окремо, встановлюючи options.page_numbers = [n] у циклі, або використовуйте ThreadPoolExecutor, щоб обробляти сторінки паралельно, не зберігаючи весь документ.


З: Чи безпечна багатопотоковість під час конвертації багатьох файлів одночасно?

В: Так. Кожен екземпляр Document є незалежним, тому ви можете виконувати перетворення в окремих потоках або процесах. Статичний глобальний стан не є спільним, що робить паралельне виконання простим.


З: Які версії та операційні системи Python підтримуються?

В: Python 3.7–3.12 на 64-розрядних інтерпретаторах. Підтримувані ОС: Windows10/11 (x64), дистрибутиви Linux із glibc2.17+ (x64), macOS10.15+ (x64 та Apple Silicon через Rosetta2). Контейнери Docker на основі офіційних зображень Python працюють нестандартно.


З: Я отримую ImportError: No module named 'aspose'. Як це виправити?

В: Пакет не встановлено в поточному середовищі. Запустіть pip install aspose-page, використовуючи той самий інтерпретатор, яким ви збираєтеся запустити сценарій (який python перевірити). За потреби активуйте правильне віртуальне середовище.


З: Як вирішити SystemError: Unable to load native libraries на Linux?

В: Переконайтеся, що стандартне середовище виконання C++ наявне (apt-get install libstdc++6) і що ваша версія glibc відповідає мінімальним вимогам (2.17). Якщо ви використовуєте старіший дистрибутив, оновіть пакети libc або використовуйте новіший базовий образ Docker.


З: Де я можу знайти офіційну документацію, зразки коду та підтримку?

В:

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.