Trabalhar com Imagens em Arquivo PS | Python

Adicionar Imagem em Documento PS

O Aspose.Page para Python via biblioteca .NET oferece duas abordagens para incorporar imagens num documento PS:

Esta distinção surge porque o PostScript não suporta inerentemente a transparência. No entanto, as imagens translúcidas podem ser representadas como uma combinação de pixéis totalmente transparentes e totalmente opacos, conhecidos como máscaras. Ao adicionar uma imagem translúcida a um documento PS, é essencial realizar verificações e pré-processamento para garantir que a transparência é refletida com precisão. Este processo requer tempo adicional. Assim, se a imagem for totalmente opaca, é mais eficiente utilizar o primeiro método para poupar tempo de execução.

O segundo método determina automaticamente se a imagem é totalmente opaca, totalmente transparente ou translúcida. Se a imagem for totalmente opaca, é adicionada através do primeiro método. Se for totalmente transparente, é completamente excluída do documento. Para imagens translúcidas, são adicionadas como máscaras de imagem PostScript.

O exemplo abaixo demonstra como adicionar uma imagem totalmente opaca. A adição de uma imagem transparente será ilustrada no artigo “Trabalhar com Transparência”.

Para adicionar uma imagem a um novo PsDocument utilizando a biblioteca Aspose.Page para Python através de .NET, siga os seguintes passos descritos no exemplo:

  1. Configure um fluxo de saída para o ficheiro PS resultante.
  2. Instância um objeto PsSaveOptions com opções padrão.
  3. Crie um PsDocument de uma página utilizando o fluxo de saída e as opções de guardar.
  4. Crie um novo estado gráfico.
  5. Crie aspose.pydrawing.Bitmap a partir do ficheiro de imagem.
  6. Crie a transformação necessária para a imagem.
  7. Adicione a imagem ao objeto PsDocument.
  8. Saia do estado gráfico atual para o nível superior.
  9. Feche a página.
  10. Guarde o 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()

Veja como trabalhar com imagens em documentos PS em .NET, Java.

O resultado da execução deste código é

Adicionar Imagem

Pode descarregar exemplos e ficheiros de dados do GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.