Bild in PS-Datei einfügen

C# .NET API-Lösung zum Arbeiten mit Bildern von PS-Dateien

 

Bevor Sie mit der Arbeit mit Bildern in PostScript-Dateien beginnen, müssen Sie einige Besonderheiten kennen, die Ihnen diese Arbeit erleichtern können. Hier ein paar wichtige Punkte:

  • PostScript unterstützt keine Transparenz, daher werden dem PS-Dokument hinzugefügte durchscheinende Bilder in ein RGB-Bild mit 24 Bit pro Pixel konvertiert und undurchsichtig gerendert. Die einzige Ausnahme bilden Bildmasken mit 1 Bit pro Pixel, also Bilder, bei denen jedes Pixel entweder vollständig undurchsichtig oder vollständig transparent ist. Für solche Fälle bietet PsDocument von Aspose.Page eine separate Methode DrawTransparentImage() mit einem Transparenzschwellenwertparameter (TT). Dieser Parameter hilft dabei, ein durchscheinendes Bild in eine Bildmaske mit 1 Bit pro Pixel umzuwandeln. Wenn der Alphakanal des Pixels größer oder gleich TT ist, wird das Pixel vollständig transparent. Andernfalls ist es vollständig undurchsichtig. Wenn TT beispielsweise 255 beträgt, sind nur vollständig transparente Pixel vollständig transparent. Der Rest der Pixel wird vollständig undurchsichtig.
  • PS unterstützt verschiedene Komprimierungsmethoden für Bilder wie DCT (im JPEG-Format verwendet), Flate (in ZIP-Komprimierern verwendet), LZW (im TIFF-Format verwendet) und CCITFax-Kodierungen. Das PsDocument von Aspose.Page unterstützt jedoch nur die ersten beiden. Für kleine Bilder wird die Flate-Kodierung verwendet, da sie aufgrund des geringeren Overheads effektiver ist als die DCT-Kodierung. Der Rest der Bilder wird mit DCT-Kodierung komprimiert.

  • Beim Skalieren oder Ändern der Größe von Bildern in einer PostScript-Datei verwendet der PostScript-Interpreter möglicherweise unterschiedliche Interpolationsmethoden, um die Pixelwerte des resultierenden Bildes zu berechnen. Dies kann sich auf die Gesamtbildqualität und -glätte auswirken. Daher ist es wichtig, die gewünschte Ausgabequalität zu berücksichtigen und die geeignete Interpolationsmethode auszuwählen.

  • Dateien im PS-Format können erheblich groß werden, wenn hochauflösende Bilder oder mehrere Bilder eingebunden werden. Dies kann sich auf die Dateiübertragungs- und Verarbeitungszeiten auswirken. Optimieren Sie daher die Bilddatengröße, indem Sie bei Bedarf die Auflösung reduzieren.

Beachten Sie diese Aspekte, um eine ordnungsgemäße Bildintegration und genaue Wiedergabe in PostScript-basierten Arbeitsabläufen sicherzustellen. Aber egal was passiert, Aspose.Page bietet Ihnen die Funktionalität, Bilder einfach in PS-Dateien hinzuzufügen. Mit dieser API können Sie mithilfe von C# verschiedene Bilder hinzufügen. Weitere Informationen zum Umgang mit PS-Dateien und insbesondere zum Arbeiten mit Bildern in PS-Dateien finden Sie in der Dokumentation.

Um Bilder zu PS-Dokumenten hinzuzufügen, benötigen wir:

  • Aspose.Page für .NET API, eine funktionsreiche, leistungsstarke und benutzerfreundliche API zur Dokumentbearbeitung und -konvertierung für die C#-Plattform.

  • Öffnen Sie den NuGet-Paketmanager, suchen Sie nach Aspose.Page und installieren Sie es. Sie können auch den folgenden Befehl über die Paket-Manager-Konsole verwenden.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Schritte zum Hinzufügen von Bildern zu einer PS-Datei C#.

Der folgende Code erstellt ein PS-Dokument, fügt ein Bild hinzu, wendet eine Transformation auf das Bild an und speichert das Dokument mit den angegebenen Einstellungen. Weitere Beispiele finden Sie unter Aspose.Page-for-.NET GitHub-Projekt .

  1. Erstellen Sie einen Ausgabestream für die resultierende PS-Datei.
  2. Erstellen Sie ein PsSaveOptions -Objekt mit Standardoptionen. Ändern Sie bei Bedarf die Hintergrundfarbe.
  3. Erstellen Sie eine neue Instanz von PsDocument mit dem Ausgabestream, den Optionen und „false“ als Parametern. Dadurch wird ein neues PostScript-Dokument mit den angegebenen Optionen initialisiert.
  4. Erstellen Sie einen neuen Grafikstatus.
  5. Erstellen Sie System.Drawing.Bitmap aus der Bilddatei.
  6. Erstellen Sie die erforderliche Transformation für das Bild.
  7. Fügen Sie das Bild als vollständig undurchsichtiges Bild zu PsDocument hinzu (mit der AddImage()-Methode), wenn wir sicher sind, dass das Bild undurchsichtig ist, oder fügen Sie eines als transparentes Bild hinzu (mit der AddTransparentImage()-Methode), wenn wir nicht sicher sind, dass das Bild undurchsichtig ist undurchsichtig.
  8. Verlassen Sie den aktuellen Grafikstatus zur oberen Ebene eins.
  9. Rufen Sie ClosePage() auf, um anzugeben, dass die aktuelle Seite abgeschlossen ist.
  10. Speichern Sie die Änderungen mit der Methode Save().

C#-Code zum Einfügen eines Bildes in eine PS-Datei

    using Aspose.Page.EPS;
    using Aspose.Page.EPS.Device;
    using System.Drawing;
    using System.Drawing.Drawing2D;
    using System.IO;
//Create an output stream for PostScript document
using (Stream outPsStream = new FileStream(dataDir + "AddTransparentImage_outPS.ps", FileMode.Create))
    {
        //Create save options with A4 size
        PsSaveOptions options = new PsSaveOptions();
        //Set page's background color to see a white image on it's own transparent background
        options.BackgroundColor = Color.FromArgb(211, 8, 48);

        // Create a new 1-paged PS Document
        PsDocument document = new PsDocument(outPsStream, options, false);


        document.WriteGraphicsSave();
        document.Translate(20, 100);

        //Create a bitmap from the translucent image file
        using (Bitmap image = new Bitmap(dataDir + "mask1.png"))
        {
            //Add this image to the document as usual opaque RGB image
            document.DrawImage(image, new System.Drawing.Drawing2D.Matrix(1, 0, 0, 1, 100, 0), Color.Empty);
        }

        //Again create a bitmap from the same image file
        using (Bitmap image = new Bitmap(dataDir + "mask1.png"))
        {
            //Add this image to the document as transparent image
            document.DrawTransparentImage(image, new System.Drawing.Drawing2D.Matrix(1, 0, 0, 1, 350, 0), 255);
        }

        document.WriteGraphicsRestore();

        //Close the current page
        document.ClosePage();

        //Save the document
        document.Save();
    }



FAQ

1. Kann ich Bilder zu PostScript-Dateien (PS) hinzufügen?

Ja, Sie können Bilder zu PostScript-Dateien hinzufügen. PostScript ist eine Seitenbeschreibungssprache, die hauptsächlich für Druck- und Veröffentlichungsworkflows verwendet wird. Während es sich hauptsächlich um Text- und Grafikbefehle handelt, unterstützt es auch die Einbindung von Bildern. Bilder in PostScript-Dateien werden je nach den spezifischen Anforderungen des Dokuments normalerweise als Bitmap-Daten oder Vektorgrafiken dargestellt.

2. Wie füge ich Bilder zu einer PostScript-Datei (PS) hinzu?

Um Bilder zu einer PostScript-Datei hinzuzufügen, müssen Sie normalerweise die entsprechenden Bildbefehle in die PS-Datei einfügen. Diese Befehle geben den Speicherort, die Größe und andere Eigenschaften des einzubindenden Bildes an. Möglicherweise müssen Sie Ihre Bilder auch in ein mit PostScript kompatibles Format konvertieren, z. B. EPS (Encapsulated PostScript), bevor Sie sie in Ihre PS-Datei einfügen.

3. Welche Bilddateiformate sind mit PostScript-Dateien (PS) kompatibel?

PostScript-Dateien können Bilder in verschiedenen Formaten enthalten, darunter EPS, TIFF, JPEG, PNG, BMP, GIF usw. Diese Formate können mithilfe geeigneter Befehle und Spezifikationen in PostScript-Dateien eingebunden werden, um Kompatibilität und ordnungsgemäße Wiedergabe beim Drucken oder Drucken der PS-Datei sicherzustellen angesehen.

PS Was ist PS Dateiformat

Das PS-Format ist eines der Formate der Seitenbeschreibungssprache (PDL). Es kann sowohl grafische als auch Textinformationen auf der Seite enthalten. Deshalb wurde das Format von den meisten Programmen zur Bildbearbeitung unterstützt. Die Postscript-Datei selbst ist eine Art Anleitung für Drucker. Es enthält Informationen darüber, was und wie von seiner Seite aus gedruckt werden kann.