Arbeiten mit Bildern in PS-Datei | Python
Bild im PS-Dokument hinzufügen
Aspose.Page für Python über die .NET-Bibliothek bietet zwei Ansätze zum Einbinden von Bildern in ein PS-Dokument:
- für undurchsichtige Bilder;
- für transparente Bilder;
Diese Unterscheidung entsteht, weil PostScript grundsätzlich keine Transparenz unterstützt. Durchscheinende Bilder können jedoch als Kombination aus vollständig transparenten und vollständig undurchsichtigen Pixeln, sogenannten Masken, dargestellt werden. Wenn Sie einem PS-Dokument ein durchscheinendes Bild hinzufügen, müssen unbedingt Prüfungen und Vorverarbeitungen durchgeführt werden, um sicherzustellen, dass die Transparenz korrekt wiedergegeben wird. Dieser Vorgang erfordert zusätzliche Zeit. Wenn das Bild bekanntermaßen vollständig undurchsichtig ist, ist es daher effizienter, die erste Methode zu verwenden, um Ausführungszeit zu sparen.
Die zweite Methode bestimmt automatisch, ob das Bild vollständig undurchsichtig, vollständig transparent oder durchscheinend ist. Wenn das Bild vollständig undurchsichtig ist, wird es mit der ersten Methode hinzugefügt. Wenn es vollständig transparent ist, wird es vollständig aus dem Dokument ausgeschlossen. Bei durchscheinenden Bildern werden sie als PostScript-Bild-Masken hinzugefügt.
Das folgende Beispiel zeigt, wie ein vollständig undurchsichtiges Bild hinzugefügt wird. Das Hinzufügen eines transparenten Bildes wird im Artikel „Arbeiten mit Transparenz“ erläutert.
Um mithilfe der Aspose.Page für Python über die .NET-Bibliothek ein Bild zu einem neuen PsDocument hinzuzufügen, befolgen Sie die im Beispiel beschriebenen Schritte:
- Richten Sie einen Ausgabestream für die resultierende PS-Datei ein.
- Instanziieren Sie ein PsSaveOptions-Objekt mit Standardoptionen.
- Erstellen Sie mithilfe des Ausgabestreams und der Speicheroptionen ein einseitiges PsDocument.
- Erstellen Sie einen neuen Grafikstatus.
- Erstellen Sie aspose.pydrawing.Bitmap aus der Bilddatei.
- Erstellen Sie die erforderliche Transformation für das Bild.
- Fügen Sie das Bild zum PsDocument-Objekt hinzu.
- Verlassen Sie den aktuellen Grafikstatus zur oberen Ebene eins.
- Schließen Sie die Seite.
- Speichern Sie das Dokument.
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()
Das Ergebnis der Ausführung dieses Codes ist
Sie können Beispiele und Datendateien herunterladen von GitHub.