a-dead-trousers hat geschrieben: ↑19.01.2022 20:37
Empfehlung: Mach das nicht in SapScript sondern in AdobeForms.
1) Viel bessere Bildqualität (256 Farben vs. volle 32-bit Farben)
2) Unterstützt alle gängigen Bildformate (anstatt nur Bitmap und TIFF)
3) Viel performanter
Wenn du trotzdem nicht auf mich hören willst:
1) Die Bilder müssen (z.B. mittels Imagemagick auf der Kommandozeile oder shell) in Bitmaps mit einer 256-Farben Palette (32-bit, aber eben nur die 256 häufigsten Farben) umgewandelt werden. SAP kann zwar auch Bitmaps direkt verarbeiten nur wird hier das Bild in die Standard 8-bit Farben umgewandelt was grottig aussieht.
2) Das Coding für den eigentlichen Upload und das Anlegen der STXBITMAPS Einträge kann man aus der SE78 extrahieren (ist ein Funktionsbaustein mit Upload einer lokalen Datei) und muss man dann halt so umbauen, dass man die Daten auch aus einer anderen Quelle einlesen kann. Alternativ geht es auch mit dem Report RSTXLDMC aber auch hier ist eine lokale Datei von Nöten.
3) Ach ja, Performance: Der Baustein SAPSCRIPT_CONVERT_BITMAP_BDS der intern für die Umwandlung von Bitmap in BDS verwendet wird, geht sehr gemählich zu Werke. Je nach Bildgröße kann das schon mal 5 bis 10 Sekunden dauen. Vorallem jetzt wo die (Handy-)Kameras ja immer besser werden. Also mit on-the-fly mal schnell umwandeln und ausdrucken ist da nichts. Man sollte die Bilder schon vor dem Ausdruck irgendwie vorbereitet haben, sonst dauert das Ganze ewig.