Trabajar con imágenes en archivos PS | Pitón
Agregar imagen en documento PS
Aspose.Page para Python a través de la biblioteca .NET proporciona dos enfoques para incorporar imágenes en un documento PS:
- para imágenes opacas;
- para imágenes transparentes;
Esta distinción surge porque PostScript no admite inherentemente la transparencia. Sin embargo, las imágenes translúcidas se pueden representar como una combinación de píxeles totalmente transparentes y totalmente opacos, conocidos como máscaras. Al agregar una imagen translúcida a un documento PS, es esencial realizar comprobaciones y preprocesamiento para garantizar que la transparencia se refleje con precisión. Este proceso requiere tiempo adicional. Por lo tanto, si se sabe que la imagen es completamente opaca, es más eficiente utilizar el primer método para ahorrar tiempo de ejecución.
El segundo método determina automáticamente si la imagen es completamente opaca, completamente transparente o translúcida. Si la imagen es completamente opaca, se agrega usando el primer método. Si es completamente transparente, se excluye por completo del documento. Para imágenes translúcidas, se agregan como máscaras de imagen PostScript.
El siguiente ejemplo muestra cómo agregar una imagen completamente opaca. Agregar una imagen transparente se ilustrará en el artículo “Trabajar con transparencia”.
Para agregar una imagen a un nuevo PsDocument usando la biblioteca Aspose.Page para Python a través de .NET, siga estos pasos descritos en el ejemplo:
- Configure una secuencia de salida para el archivo PS resultante.
- Cree una instancia de un objeto PsSaveOptions con opciones predeterminadas.
- Cree un PsDocument de una página utilizando el flujo de salida y las opciones de guardado.
- Cree un nuevo estado de gráficos.
- Cree aspose.pydrawing.Bitmap a partir del archivo de imagen.
- Crea la transformación necesaria para la imagen.
- Agregue la imagen al objeto PsDocument.
- Salga del estado de gráficos actual al nivel uno superior.
- Cierra la página.
- Guarde el documento.
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()
El resultado de ejecutar este código es
Puede descargar ejemplos y archivos de datos desde GitHub.