invalid command name "image"
    while executing
"image create photo"
    (in namespace eval "::request" script line 121)
    invoked from within
"namespace eval ::request $script"
    ("::try" body line 12)

OUTPUT BUFFER:

#!/usr/local/bin/wish proc TourneBoite {x1 y1 x2 y2 deltaA} { # ramene a l'origine, tourne et revient # Angle en RADIANS !! set cd [expr {cos($deltaA)}] set sd [expr {sin($deltaA)}] set xp [expr {$x2-$x1}] set yp [expr {$y2-$y1}] set x [expr {$xp*$cd-$yp*$sd}] set y [expr {$xp*$sd+$yp*$cd}] set xf [expr {$x+$x1}] set yf [expr {$y+$y1}] return [list $xf $yf] } proc RogneImage {img {bg "#ffffff"}} { #proc de test de rognage a l'arrache set data [$img data -background $bg] set w [regsub -all "#" [lindex $data 0] "" tmp] set h [llength $data] puts "\ndata ori : w $w h $h" #examine lignes completes pixels $bg # en haut set id 0 foreach l $data { set c [regsub -all $bg $l "" tmp] if {$c == $w} {incr id} {break} } # en bas set if 0 foreach l [lreverse $data] { set c [regsub -all $bg $l "" tmp] if {$c == $w} {incr if} {break} } # fait la liste de liste dans l'autre sens set x 0 for {set x 0} {$x < $w[} {incr x} { set col {} foreach l $data { lappend col [lindex $l $x] } lappend Idata $col } # a gauche set il 0 foreach l $Idata { set c [regsub -all $bg $l "" tmp] if {$c == $h} {incr il} {break} } # a droite set ir 0 foreach l [lreverse $Idata] { set c [regsub -all $bg $l "" tmp] if {$c == $h} {incr ir} {break} } puts "$id $if $il $ir" # nettoyage de l'image # en haut et bas if {$id != 0} { set data [lreplace $data 0 [expr {$id-1}]] } if {$if != 0} { set data [lreplace $data "end-[expr {$if-1}]" end] } # gauche et droite set new {} if {$il != 0} { set x [expr {8*$il}] foreach l $data { lappend new [string range $l $x end] } set data $new } set new {} if {$ir != 0} { set x [expr {8*$ir}] foreach l $data { lappend new [string range $l 0 end-$x] } set data $new } set w [regsub -all "#" [lindex $data 0] "" tmp] puts "data fin : w $w h [llength $data]" set t3 [image create photo -width $w -height [llength $data]] $t3 blank $t3 put $data return $t3 } ######################### ######################### if {$tcl_platform(platform) eq "windows"} { lappend auto_path o:/ordali/lib/ } else { lappend auto_path /home/moumou/pixane/ } package require pixane catch {destroy .t1} catch {destroy .t2} catch {destroy .t3} set Off 2 set ang 5.5 set sz 24 set f [pixfont create -builtin "sans-serif"] set t1 [image create photo] set t2 [image create photo] set i [pixane create -tkphoto $t1] set d [pixane create -tkphoto $t2] set l [pixfont measure $f $sz "Eh salut la compagnie !"] lassign $l w h1 h2 set h $sz # on n'en a pas besoin, w et h suffisent, mais bon ... pixane resize $i $w $h pixane color $i black pixane text $i \ [expr {$w/2}] [expr {$h/2}] \ -text "Eh salut la compagnie !" \ -font $f \ -size $sz \ -align center \ -valign middle set iori [pixcopy $i] # Dimensions apres rotation set zr 0 set xc [expr {$w/2}] set yc [expr {$h/2}] set xmin 99999 ; set xmax -999999 set ymin 99999 ; set ymax -999999 foreach xp {zr zr w w} yp {zr h h zr} { lassign [TourneBoite $xc $yc [set $xp] [set $yp] $ang] x y set xmin [expr {$x<$xmin?$x:$xmin}] set ymin [expr {$y<$ymin?$y:$ymin}] set xmax [expr {$x>$xmax?$x:$xmax}] set ymax [expr {$y>$ymax?$y:$ymax}] } set w2 [expr {round($xmax-$xmin+0*$Off)}] set h2 [expr {round($ymax-$ymin+0*$Off)}] puts "$xmin $xmax $ymin $ymax" puts "width $w2 height $h2" pixane resize $d $w2 $h2 pixane blank $d pixane color $d black pixane text $d \ [expr {$w2/2}] [expr {$h2/2}] \ -text "Eh salut la compagnie !" \ -font $f \ -size $sz \ -align center \ -valign middle \ -angle $ang set dori [pixcopy $d] set irog [RogneImage $dori] # on montre toplevel .t1 pack [label .t1.l1 -image $iori -bg green] toplevel .t2 pack [label .t2.l2 -image $dori -bg green] toplevel .t3 pack [label .t3.l3 -image $irog -bg green]