Navigation: Platzhalter und Variablen > Platzhalter Premium-Lizenz >

Platzhalter: Bild

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

FG Bildvariablen und -Infos mit [cX.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 [cX.Bild(ID).Breite(C:\Test.jpg)], wird dieses Bild in die gegebene Bildvariable geladen und kann darin weiter verarbeitet werden. Dies kann auch durch einfaches Setzen von [cX.Bild(ID)] auf die Bildquelle stattfinden.

Jeder weitere Zugriff auf die [cX.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 [cX.Bild(ID).X] bzw. [cX.Bild(ID).X Bilddateiname] zur Verfügung:

.AbblendenSetzen auf Richtung;Farbe;Deckung blendet das Bild von einer zur anderen Seite aus, mit Schwarz bzw. der angegebenen Farbe (bzw. Hintergrundfarbe des Referenzelements) als Zielfarbe. Für Richtung kann stehen: 0=unten nach oben, 1=oben nach unten, 2=rechts nach links, 3=links nach rechts. Die Deckung gibt den Deckungsgrad des Ziels in % an (Standard=100%)

 

.DrehenSetzen auf einen der folgenden Werte rotiert bzw. spiegelt das Bild:
1, 90: 90° nach rechts
2, 180: 180°
3, 270: 90° nach links
4: Spiegeln X
5: Spiegeln Y
6: Spiegeln X und Y

 

.EinzelbildStellt das Bild aus dem als Index angegebenen Einzelbild (1 bis .Einzelbilder) dar (z.B. bei animierten GIF-Dateien)
.EinzelbilderLiefert die Anzahl der in dem Bild enthaltenen Einzelbilder (z.B. bei animierten GIF-Dateien)

 

.BreiteBildbreite ermitteln
.HöheBildhöhe ermitteln

 

.Neu(Breite;Höhe)Erstellt ein neues Bild mit der angegebenen Größe.
Optional kann auch noch die gewünschte Hintergrundfarbe als 3. Parameter angegeben werden.
.Laden(Bild)angegebenes Bild in Bildvariable (wahlweise mit ID, z.B. [cX.Bild(ID).Laden(%ICON%)]) laden.
Lesen: Ergebnis 1 bei Erfolg
.LöschenBildvariable ID löschen

 

.Farbe(X;Y)Farbwert an Position X;Y (0-basiert, also oben links ist 0;0)
Siehe auch [cX.Farbe.X]

 

.Base64 liest/schreibt die Bilddaten als JPG-Datenstrom im Base64-Format
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
- diese Daten können auch als Bildquelle %AUSJPGBASE64(xxx)% verwendet werden

 

.Speichern(X)Bild unter dem angegebenen Dateinamen speichern (Setzen auf Dateiname, z.B. C:\Temp\Test.jpg)
Optional kann als Parameter ein Dateiformat angegeben werden: bmp (Standard), emf, exif, gif, ico, jpg, png, tif, wmf oder bei einem numerischen Wert die Qualität des Ergebnisses (JPG-Format) von 0 (höchste Kompression) bis 100 (keine Kompression)

 

.Suchen(Farbe;Toleranz)
Sucht die angegebene Farbe im Bild und liefert die Pixelkoordinaten zurück.
Optional kann eine Farbtoleranz angegeben werden (0...255 oder in %), die bei der Farbsuche berücksichtigt werden soll.
Wird die Toleranz mit vorangesetztem - angegeben, wird das erste Pixel gesucht, das NICHT der Zielfarbe entspricht.
Zusätzlich kann die Startposition Zeile;Spalte (in Pixel ab 0) mit angegeben werden, an der die Suche beginnen soll.

 

.NummerBildhandle ermitteln, wenn das Bild eine geladene Bitmap ist (z.B. für DLL-Funktionen - siehe [cX.System.DLLAufruf])

 

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

 

Bildbearbeitung:

.BeschneidenSetzen auf X;Y;X2;Y2 (alle Angaben optional) schneidet das Rechteck von X/Y bis X2/Y2 aus dem Bild aus
.EffektBildeffekt auf enthaltenes Bild anwenden durch Setzen auf Effektnummer;Effektparameter
Effekte siehe auch Bildquellen:
1: Graustufen. 2: Invertiert, 3: deaktivierte Darstellung (nicht bei TrueColor-Bildern), 4: gerastert,
5: Helligkeit: 5;Helligkeit in % (+-100)  oder 5; Rot%;Grün%;Blau%; Hintergrundfarbe,
6: gespiegelt hor. und/oder vert.: 6;X (X=0/1 = hor, 2=vert, 3=beides),
7: gedreht: 7;X dreht um x Grad im Uhrzeigersinn, wahlweise weiterer Parameter mit Hintergrundfarbe
Beispiel: [cX.Bild().Effekt]=2 invertiert das Bild.
.FarbsättigungStellt die Farbsättigung des Bildes ein (0=Graustufen, größer als 0=Sättigung, kleiner als 0=Farben invertieren
.HelligkeitVerändert die Helligkeit des Bildes von -100 (schwarz) über 0 (unverändert) bis 100 (weiß)
.KontrastSetzt den Kontrast in % (unter 100=schwacher Kontrast, 100=normal,  über100=starker Kontrast)
.Mischen(Alpha)Einmischen des angegebenen Bildes in das aktuelle Bild. Als Parameter kann der Mischungsfaktor in % angegeben werden von 0 (nicht sichtbar) bis 100 (deckend)
.SkalierenSetzen auf Prozentwert (z.B. "10%") oder neue Breite skaliert das Bild (Höhe wird angepasst).

 

EXIF-Daten:

.Exif(Tag)Auslesen oder Ändern (nur Textwerte) von EXIF-Metadaten aus JPG-Dateien
Das Ergebnis ist der Exif-Tag (Kamera- und Bildinformationen bei JPG-Bildern) mit dem angegebenen Index, falls im Bild enthalten.
Beispiele: 36867=Originaldatum, 50709=Kameramodell, 37378=Blende, 33434=Belichtung in Sekunden
Die in JPG-Dateien enthaltenen EXIF-Daten variieren je nach Kameramodell.
Tag-Nr.=-1 liefert eine Liste der vorhandenen Tag-IDs.
Tag-Nr.=0 liefert die Anzahl der Einträge.
Wird der Dateiname nicht angegeben, wird die zuletzt verwendete Datei verwendet (schneller bei mehrfachen Zugriffen auf ein Bild).
Im Internet finden sich übersichtliche Tabellen mit möglichen Infos (Suche z.B. nach EXIF TAGS LISTE), etwa https://exiv2.org/tags.html.

 

Beispiel:

  Setze  in [Bildname]:  '%ICON%'

  

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

  

***  Bildvariable setzen

  Setze  in [Erfolg]:  '[cX.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]:  '[cX.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=[cX.Bild(Test).Typ], Breite=[cX.Bild(Test).Breite]'

  

  Warte  endlos...

 

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

 


 

Andere Platzhalter

Ausgabe

Zeichne

 

 


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