Image Embedding in Druckjobs

Wie Sie wiederverwendbare Druckjobs erstellen können, haben wir bereits im Artikel Wiederverwendung von Druckjobs vorgestellt. In diesem Beitrag lernen Sie ein weiteres nützliches Feature kennen.


Für die Druckaufbereitung von textuellen Informationen bietet CONZEPT 16 das PrtText und das PrtRtf-Objekt. Diese dienen dazu Texte und RTF-Inhalte in den Druckjob zu integrieren.
Für die Druckaufbereitung von Grafiken stellt CONZEPT 16 die Objekte PrtPicture und PrtMetaPicture bereit. Das erste Objekt ist in der Lage Rastergrafiken in unterschiedlichen Formaten anzuzeigen. Gängige Formate sind beispielsweise TIFF-, JPEG- und PNG.
Mit dem PrtMetaPicture integrieren Sie Vektor-Grafiken. Diese können ohne Qualitätsverlust skaliert werden. CONZEPT 16 unterstützt das EMF- sowie das ältere WMF-Format.
Wenn Sie einen Druckjob mit dem Befehl PrtJobOpen() erstellen, werden Texte und RTF-Inhalte eingebettet. Die generierte Job-Datei ist dadurch unabhängig von der Quelle des ursprünglichen Textes. Die Quelle wird für die Anzeige bzw. das Drucken der Druckjob-Datei nicht mehr benötigt.
Bei Bildern ist dies anders. Hier speichert CONZEPT 16 lediglich eine Referenz auf die Quelle. Fehlt diese, dann fehlt das Bild bei der Anzeige bzw. beim Druck.
Ab der Version 5.5.01 können auch Grafiken eingebettet werden. Der folgende Code zeigt wie:

@A+
@C+
main
  local
  {
    tJob   : handle;
  }
{
  tJob # PrtJobOpen('PrtPictureDoc','c:\test.job',
                    _PrtJobOpenWrite | _PrtJobOpenEmbedImages);
   ...
}

Entscheidend ist die Option _PrtJobOpenEmbedImages. Diese kann nur in Verbindung mit _PrtJobOpenWrite angegeben werden und führt dazu, dass auch Grafiken im Druckjob gespeichert werden und nicht bloß die Referenz auf die Quelle.

Die Druckjob-Datei wird natürlich größer, wenn die Option _PrtJobOpenEmbedImages angegeben ist. Mehrfach vorkommende Grafiken aus derselben Quelle werden jedoch nur ein einziges Mal gespeichert.
PDF-Dateien, die über das PrtPdf-Objekt angezeigt werden, sind ebenfalls von der Option betroffen.

3 Antworten

  1. danke für die Infos. Kann ich einen solchen Druckjob auch direkt als binäres Objekt in der Datenbank speichern (zum Archivieren) oder geht das nur über den Umweg, die externe Datei zu importieren.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Leave the field below empty!

Get your Trial Version now!

Test yeet free of charge

Deine Trial Version - jetzt anfordern!

Teste yeet - unverbindlich und kostenfrei

IHRE EVALUIERUNGSLIZENZ - JETZT ANFORDERN!

TESTEN SIE DIE CONZEPT 16 VOLLVERSION - UNVERBINDLICH und KOSTENFREI

Melden Sie sich bei unserem Newsletter an

Anrede*
     
Zustimmung zur Datenverarbeitung gem. DSGVO*



WordPress Cookie-Hinweis von Real Cookie Banner