Navigation: Platzhalter und Variablen > Platzhalter Premium-Lizenz >

Platzhalter: Bild

Diese Seite drucken
Vorherige Seite Nächste Seite
Zurück zur Kapitelübersicht

Bildvariablen und -Infos mit [Bild(ID).X]:

 

Mit diesen Platzhaltern können Bilder verwaltet und analysiert werden.

 

Wird als Parameter zu dem Platzhalter ein Bilddateiname bzw. eine Bildquelle angegeben, etwa [Bild(ID).Breite C:\Test.jpg], wird dieses Bild in die gegebene Bildvariable geladen und kann darin weiter verarbeitet werden.

Jeder weitere Zugriff auf die [Bild(ID).X]-Platzhalter ohne Bildquellen-Parameter betrifft dann das geladene Bild.

 

Die Angabe der ID ist optional, wird aber benötigt, wenn mehrere Bilder gleichzeitig verwaltet oder per Bildquelle ausgelesen werden sollen.

Zugriffe ohne ID betreffen immer das zuletzt geladene Bild, unabhängig davon, in welchem Zusammenhang es geladen worden ist.

 

Das Bild aus einer Bildvariablen mit ID kann über die Bildquelle %Bild(ID)% verwendet werden.

 

 

Folgende Platzhalter stehen als [Bild(ID).X] bzw. [Bild(ID).X Bilddateiname] zur Verfügung:

 

.Laden Bildangegebenes Bild in Bildvariable (wahlweise mit ID, z.B. [Bild(ID).Laden(%ICON%)]) laden; Ergebnis 1 bei Erfolg
.LöschenBildvariable ID löschen
.BreiteBildbreite in mm ermitteln
.BreitePixelBildbreite in Pixel ermitteln
.HöheBildhöhe in mm ermitteln
.HöhePixelBildhöhe in Pixel ermitteln
.FarbeFarbwert an Position X;Y
.FarbeP Farbwert an Pixel-Position X;Y

 

.InBase64Bild in Base64-Code serialisieren (siehe Bildquelle %AusBase64(X)%) - ermöglicht die serialisierte Übertragung von Bildern
Hinweis: Die hierbei mit Base64 codierten Binärdaten sind in einem cX-eigenen Format und entsprechen nicht z.B. dem Dateiinhalt von Bilddateien oder Internet-Bildcodierungen (siehe auch Bearbeite-Befehl)

 

.JPGBytes$liest/schreibt die Bilddaten als JPG-Datenstrom binär
Hinweis: Das Ergebnis kann Steuerzeichen enthalten und muss daher stets über $-Variablen verarbeitet werden!
.JPGBase64 liest/schreibt die Bilddaten als JPG-Datenstrom als Base64
Hinweise:
- Der bei diesen beiden Platzhaltern verwendete Datenstrom entspricht Dateiinhalt einer JPG-Datei
- dieses Verfahren kommt ohne temporäre Dateierstellung aus und ist daher recht schnell
- die Kompression kann per Bild.JPGQualität eingestellt werden
- diese Daten können auch als Bildquelle %AUSJPGBASE64(xxx)% verwendet werden
.JPGQualitätliest/schreibt den Kompressionsgrad für die JPG-Encodierung beim Speichern oder Umwandlung in einen Datenstrom (s.o.)

 

.SpeichernBild unter dem angegebenen Dateinamen speichern (Setzen auf Dateiname, z.B. C:\Temp\Test.jpg)

 

.NummerBildhandle ermitteln (z.B. für DLL-Funktionen - siehe [System.DLLAufruf])

 

.Zeilebzw.
.Spalte liefert Pixelfarben als Liste dezimal oder Hex ([Bild.ZeileH] bzw. [Bild.SpalteH])

 

.Exif  Tag-Nr.{;Bilddateiname}
Auslesen von EXIF-Metadaten aus JPG-Dateien
liefert Exif-Tag (Kamera- und Bildinformationen bei JPG-Bildern)
Tag-Nr.=0 liefert die Anzahl der Einträge, <0 liefert den lfd. Eintrag mit dem Index -n
Bild.Exif.ID, .Format, .Index, Extra liefern entsprechende weitere Infos
Wird der Dateiname nicht angegeben, wird die zuletzt verwendete Datei verwendet (schneller bei mehrfachen Zugriffen auf ein Bild)
Die in JPG-Dateien enthaltenen EXIF-Daten variieren je nach Kameramodell.
Im Internet finden sich übersichtliche Tabellen mit möglichen Infos (Suche z.B. nach EXIF TAGS LISTE)

 

 

 

Beispiel:

  Setze  in [Bildname]:  '%ICON%'

  

  Anzeigefenster  'Bilder-Test' (B=110, H=60, Aktivieren)

  

***  Bildvariable setzen

  Setze  in [Erfolg]:  '[Bild(Test).Laden([Bildname])]'

  Anzeige-Element  Bild: '%Bild(Test)%' (ID='Bild1', X=1, Y=1, B=50, H=50)

  

***  Bild in [BildText] serialisieren

  Setze  in [BildText]:  '[Bild.InBase64 %Bild1%]'

***  und wieder auslesen/anzeigen

  Anzeige-Element  Bild: '%AusBase64([BildText])%' (ID='Bild2', X=51, Y=1, B=50, H=50)

  

***  Bildinfos in Titel anzeigen

  Anzeigefenster  'Bilder-Test: Typ=[Bild(Test).Typ], BreitePixel=[Bild(Test).BreitePixel]'

  

  Warte  endlos...

 

Das Beispielskript zeigt den Einsatz einer Bildvariablen für das Zwischenspeichern eines Bildes sowie dessen Serialisierung und Informationsermittlung.

 

Beispiel als cX2Web-Code:

**cX40117C FC9412S214 1CMjIJMAkJ PUJpbGRuYW 1lCSAlSUNP TiUNCjAJMA

kNCjM5CTAJ CSBCaWxkZX ItVGVzdAlX MTEwCUg2MA lDDQowCTAJ DQoxCTAJCS

BCaWxkdmFy aWFibGUgc2 V0emVuDQoy MgkwCQk9RX Jmb2xnCSBb QmlsZChUZX

N0KS5MYWRl bihbQmlsZG 5hbWVdKV0N CjM4CTAJCS AlQmlsZChU ZXN0KSUJSU

JpbGQxCVgx CVkxCVc1MA lINTAJQg0K MAkwCQ0KMQ kwCQkgQmls ZCBpbiBbQm

lsZFRleHRd IHNlcmlhbG lzaWVyZW4N CjIyCTAJCT 1CaWxkVGV4 dAkgW0JpbG

QuSW5CYXNl NjQgJUJpbG QxJV0NCjEJ MAkJIHVuZC B3aWVkZXIg YXVzbGVzZW

4vYW56ZWln ZW4NCjM4CT AJCSAlQXVz QmFzZTY0KF tCaWxkVGV4 dF0pJQlJQm

lsZDIJWDUx CVkxCVc1MA lINTAJQg0K MAkwCQ0KMQ kwCQkgQmls ZGluZm9zIG

luIFRpdGVs IGFuemVpZ2 VuDQozOQkw CQkgQmlsZG VyLVRlc3Q6 IFR5cD1bQm

lsZChUZXN0 KS5UeXBdLC BCcmVpdGVQ aXhlbD1bQm lsZChUZXN0 KS5CcmVpdG

VQaXhlbF0N CjAJMAkNCj MxCTAJCUUN Cg===*

 

 


 

Andere Platzhalter

Ausgabe

Zeichne

 

 


cX-Webseite: http://www.clickexe.de