Lavorare con le immagini in PostScript | .NET

Aggiungi immagine in un documento PS

La libreria Aspose.Page per .NET offre due metodi per aggiungere immagini a un documento PS:

È stato creato perché PostScript non supporta la trasparenza, ma le immagini traslucide possono essere visualizzate come un insieme di pixel completamente trasparenti e completamente opachi. Tali immagini sono chiamate maschere. Se vogliamo visualizzare l’immagine traslucida nel documento PS come maschera, che rifletterà meglio la trasparenza dell’immagine, dovremmo eseguire un controllo e una pre-elaborazione di tale immagine.

Il controllo e la pre-elaborazione richiedono tempo. Pertanto, se si è certi che l’immagine sia completamente opaca, è meglio utilizzare il primo metodo, perché consente di risparmiare tempo di esecuzione.

Il secondo metodo riconosce se l’immagine è completamente opaca, completamente trasparente o traslucida. Se è completamente opaca, viene aggiunta come immagine opaca nel primo metodo, se è completamente trasparente, non viene aggiunta al documento, mentre se è un’immagine traslucida, viene aggiunta come immagine PostScript maschera.

Nell’esempio seguente mostriamo come aggiungere un’immagine completamente opaca. L’aggiunta di un’immagine trasparente verrà illustrata nell’articolo “Lavorare con la trasparenza”.

Per aggiungere un’immagine a un nuovo PsDocument con la libreria Aspose.Page per .NET, in questo esempio seguiamo i seguenti passaggi:

  1. Creare un flusso di output per il file PS risultante.
  2. Creare un oggetto PsSaveOptions con opzioni predefinite. 3. Creare un PsDocument di una pagina con un flusso di output già creato e opzioni di salvataggio.
  3. Creare un nuovo stato grafico.
  4. Creare System.Drawing.Bitmap dal file immagine.
  5. Creare la trasformazione necessaria per l’immagine.
  6. Aggiungere l’immagine all’oggetto PsDocument.
  7. Uscire dallo stato grafico corrente e tornare al livello superiore.
  8. Chiudere la pagina.
  9. Salvare il documento.
 1//Create an output stream for PostScript document
 2using (Stream outPsStream = new FileStream(dataDir + "AddImage_outPS.ps", FileMode.Create))
 3{
 4    //Create save options with A4 size
 5    PsSaveOptions options = new PsSaveOptions();
 6
 7    // Create new 1-paged PS Document
 8    PsDocument document = new PsDocument(outPsStream, options, false);
 9
10    
11    document.WriteGraphicsSave();
12    document.Translate(100, 100);
13
14    //Create a Bitmap object from image file
15    using (Bitmap image = new Bitmap(dataDir + "TestImage Format24bppRgb.jpg"))
16    {
17        //Create image transform
18        Matrix transform = new Matrix();
19        transform.Translate(35, 300);
20        transform.Scale(3, 3);
21        transform.Rotate(-45);
22
23        //Add the image to document
24        document.DrawImage(image, transform, Color.Empty);
25    }
26
27    document.WriteGraphicsRestore();
28
29    //Close current page
30    document.ClosePage();
31
32    //Save the document
33    document.Save();
34}

Per Linux, macOS e altri sistemi operativi non Windows, offriamo l’utilizzo del nostro pacchetto Nuget Aspose.Page.Drawing. Utilizza il backend Aspose.Drawing invece della libreria di sistema System.Drawing.

Quindi, importate lo spazio dei nomi Aspose.Page.Drawing invece di quello System.Drawing. Nel frammento di codice sopra riportato verrà utilizzato Aspose.Page.Drawing.Bitmap invece di System.Drawing.Bitmap, verrà utilizzato Aspose.Page.Drawing.Drawing2D.Matrix invece di System.Drawing.Drawing2D.Matrix e così via. I nostri esempi di codice su GitHub contengono tutte le sostituzioni necessarie.

Vedi come lavorare con le immagini nei documenti PS in Java.

Il risultato dell’esecuzione di questo codice viene visualizzato come

Aggiungi immagine

È possibile scaricare esempi e file di dati da GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.