Работа с изображениями в PS-файле | Питон

Добавить изображение в документ PS

Aspose.Page для Python через библиотеку .NET предоставляет два подхода для включения изображений в документ PS:

Это различие возникает потому, что PostScript по своей сути не поддерживает прозрачность. Однако полупрозрачные изображения можно представить как комбинацию полностью прозрачных и полностью непрозрачных пикселей, известных как маски. При добавлении полупрозрачного изображения в документ PS важно выполнить проверки и предварительную обработку, чтобы обеспечить точное отражение прозрачности. Этот процесс требует дополнительного времени. Следовательно, если известно, что изображение полностью непрозрачно, более эффективно использовать первый метод, чтобы сэкономить время выполнения.

Второй метод автоматически определяет, является ли изображение полностью непрозрачным, полностью прозрачным или полупрозрачным. Если изображение полностью непрозрачное, оно добавляется первым способом. Если он полностью прозрачен, он вообще исключается из документа. Для полупрозрачных изображений они добавляются как маски изображений PostScript.

В примере ниже показано, как добавить полностью непрозрачное изображение. Добавление прозрачного изображения будет показано в статье «Работа с прозрачностью».

Чтобы добавить изображение в новый PsDocument с помощью библиотеки Aspose.Page для Python через .NET, выполните следующие действия, описанные в примере:

  1. Настройте выходной поток для полученного PS-файла.
  2. Создайте экземпляр объекта PsSaveOptions с параметрами по умолчанию.
  3. Создайте одностраничный PsDocument, используя выходной поток и параметры сохранения.
  4. Создайте новое графическое состояние.
  5. Создайте aspose.pydrawing.Bitmap из файла изображения.
  6. Создайте необходимое преобразование изображения.
  7. Добавьте изображение в объект PsDocument.
  8. Выход из текущего состояния графики на верхний уровень.
  9. Закройте страницу.
  10. Сохраните документ.
 1# The path to the documents directory.
 2data_dir = Util.get_data_dir_working_with_images()
 3
 4# Create an output stream for the PostScript document
 5with open(data_dir + "AddImage_outPS.ps", "wb") as out_ps_stream:
 6    # Create the save options with A4 size
 7    options = PsSaveOptions()
 8    
 9    # Create a new 1-paged PS Document
10    document = PsDocument(out_ps_stream, options, False)
11    
12    
13    document.write_graphics_save()
14    document.translate(100, 100)
15    
16    # Create a Bitmap object from the image file
17    with aspose.pydrawing.Bitmap(data_dir + "TestImage Format24bppRgb.jpg") as image:
18        # Create an image transform
19        transform = aspose.pydrawing.drawing2d.Matrix()
20        transform.translate(float(35), float(300))
21        transform.scale(float(3), float(3))
22        transform.rotate(float(-45))
23        
24        # Add the image to the document
25        document.draw_image(image, transform, aspose.pydrawing.Color())
26    
27    document.write_graphics_restore()
28    
29    # Close the current page
30    document.close_page()
31    
32    # Save the document
33    document.save()

См. работу с изображениями в документах PS в .NET, Java.

Результат запуска этого кода:

Добавить изображение

Вы можете загрузить примеры и файлы данных с сайта GitHub.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.