;***************************************** ;* * ;* Thumbnailerzeuger mit Explodefunktion * ;* * ;* Version: 0.1 * ;* * ;* Datum: 30.06.04 * ;* * ;***************************************** (in-package :examples) (use-package :oli) (sd-defdialog 'explodierer :dialog-title "GIF-Formations-Animationsbilder" :toolbox-button T :precondition '(if (sd-search-file "c:/Temp/Bild001.jpg") (progn (sd-display-error "Vorhandene Einzelbilder im Zielverzeichnis: 'C:\Temp' mÏssen vorher gelÎscht werden.") (sd-sys-background-job (format nil "explorer ~a" (sd-convert-filename-to-platform "C:/Temp"))) ) :ok ) :variables '( ( viewport :value-type :string :initial-value "1" :title "Viewport" :prompt-text "Bitte den Viewport angeben" ) ( von :value-type :integer :title "von" :initial-value 0 :prompt-text "Anfangsskalierung (0-2)" ) ( bis :value-type :integer :title "bis" :initial-value 1 :prompt-text "Endskalierung (0-2)" ) ( schritte :value-type :integer :initial-value 10 :title "Schritte" :prompt-text "Wieviel Schritte?" ) ( xsize :value-type :integer :initial-value 500 :title "X-Size of JPG" ) ( ysize :value-type :integer :initial-value 500 :title "Y-Size of JPG" ) ) :local-functions '( ( doit () (progn (setf scale (+ von 0 )) (loop for i from 1 to Schritte do (setf schritt (/ (- bis von) schritte)) (setf delta (+ von (/ (- von bis) schritt))) (sd_form_scale scale 10) (create_thumbnail :vp viewport :size :user :size_x xsize :size_y ysize :fit :off :filename (format nil "c:/temp/Bild~3,'0D.jpg" i)) (setf scale (+ scale schritt)) ) ; ende loop ) ; ende progn ) ; ende doit ) ; ende local :ok-action '(doit) ) ; end dialog