Gimp

Aus OrgaMon Wiki
Version vom 20. Juli 2021, 15:08 Uhr von Root (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

OrgaMon Gimp

Idee

Für die OrgaMon-Kasse benutzt OrgaMon Touch-Folien. So eine Folie könnte so aussehen:

Aber: Ein mal zeichnen und fertig ist nicht. Da Position und Farbe und Texte der "buttons" sind ändern. Die Idee ist die, die Anwendung Gimp zu benutzen um Touch-Folien auszubelichten. Also das Ergebnis soll eine fertige Folie sein, ohne dass ein Benutzer Gimp überhaupt starten muss. Dazu erzeugt OrgaMon aus dem Artikel-Stamm ein grosses Skript (Bei Gimp heisst das "Script Fu"), pro Folie ein Skript, das nun durch GIMP ausgeführt wird:

gimp-console -b kasse-001.scm


Wie man manuell einen Button macht, wird hier http://www.youtube.com/watch?v=QqSR2mgye8Y beschrieben. Diese manuellen Schritte gilt es nun in ein "Script Fu" zu verwandeln, wenn wir diese Technik einmalig haben kann der OrgaMon das mulitplizieren. Hm, ich will natürlich auf die angegebene Fläche sehr viele Buttons zaubern! Wo die Knöpfe hinkommen, das weiss der OrgaMon natürlich ...

erstes Skript "Hallo Welt"

;
; "Hallo Welt" als "script fu"
;

(define (fils-hallo-welt)

 (let*
  (
     (das-bild 0)
     (text-layer 0)
     (ergebnis-layer 0)
  )
;  Ein Bilder erstellen
  (set! das-bild (car (gimp-image-new 1366 768 RGB)))

; Einen Text auf einen neuen Layer schreiben
  (set! text-layer (car(gimp-layer-new das-bild 1366 768 RGB-IMAGE "Text" 100 NORMAL)))
  (gimp-image-add-layer das-bild text-layer 0)
  (gimp-context-set-background '(255 255 255) )
  (gimp-context-set-foreground '(0 0 0))
  (gimp-drawable-fill text-layer BACKGROUND-FILL)
  (gimp-text-fontname das-bild text-layer 15 15 "Hallo Gimp!" 0 TRUE 250 PIXELS "Sans")

; Alle Layer in das Bild schreiben
  (set! ergebnis-layer (car(gimp-image-merge-visible-layers das-bild CLIP-TO-BOTTOM-LAYER)))

; Das Bild speichern
  (file-bmp-save RUN-NONINTERACTIVE das-bild ergebnis-layer "1.bmp" "")
  
 )
)

Skript

; /usr/share/gimp/2.0/scripts/kasse.scm
; test
(define (kasse) 

 (gimp-image-new 1366 768 RGB)
 (file-bmp-save 1 1 1 "1.bmp" "")
 (gimp-quit 0)
)


; kasse.scm
; Erstelle neues Bild 1366 768 RGB
(gimp-image-new 1366 768 RGB)

 Fülle das Bild mit einem angenehmen Gradienten
  Zeiche Button 1 mit Text 1 an Position 0,0
  Zeiche Button 2 mit Text 2 an Position 0,1
  Zeiche Button 3 mit Text 3 an Position 0,2
  Zeiche Button 4 mit Text 4 an Position 0,3
  Zeiche Button 5 mit Text 5 an Position 1,0
  Zeiche Button 6 mit Text 6 an Position 1,1
  ...
  ...
 Speichere das Bild nun als 24 Bit BMP ab

(file-bmp-save 1 1 1 "C:\\1.bmp" "1.bmp")


gimp-console --batch="(kasse)"


also das "echte" Skript wird später aus den Artikeldaten des OrgaMon erstellt. OrgaMonKasse.scm soll nur die Technologie entwickeln.