#!/usr/local/bin/wish #rR Copyright Raymond Ripp #rR Photorama prend toutes les images d'un repertoire et en fait une page html #rR Si l'arborescence de NikonView avec www01/images existe il l'utilise. #rR Sinon il la cree (en utilisant ImageMagick convert) #rR iii #rR www set VersionPhotorama "Photorama.tcl mise à jour 2017/01/05" global PhotoramaDir proc ImagesPourWww {{Rep ""} {LesGrandes ""} {DoAll ""} {Taille ""}} { global PhotoramaDir if {$DoAll!=1} { set DoAll [regexp -nocase "DoAll" $DoAll] } if {$Taille==""} { set Taille 400 } set RepWww "$Rep/www01" if {$DoAll} { file mkdir $RepWww file mkdir $RepWww/images set Keep 0 } if { ! $DoAll } { if { ! [file exists $RepWww] } { if { ! [OuiOuNon "$RepWww n'existe pas. Je le cree en y mettant les petites images ?"]} { return "" } file mkdir $RepWww file mkdir $RepWww/images set DoAll 1 } } if { ! $DoAll } { if { ! [file exists $RepWww/images] } { if { ! [OuiOuNon "$RepWww/images n'existe pas. Je le cree en y mettant les petites images ?"]} { return "" } file mkdir $RepWww/images set DoAll 1 } } if { ! [info exists Keep]} { set Keep [OuiOuNon "Je garde telles quelles les images dans www01/images/"] } if { ! [file exists "$RepWww/parts/mbb1.png"]} { file mkdir $RepWww/parts; file copy -force "$PhotoramaDir/mbb1.png" "$RepWww/parts/mbb1.png" } set LesPetites {} foreach Grande $LesGrandes { set Queue [file tail $Grande] set Petite "$RepWww/images/$Queue" if {$Keep && [file exists $Petite]} { continue } set W [exec identify -format "%w" $Grande] set H [exec identify -format "%H" $Grande] if {$H<$W} { exec convert $Grande -resize ${Taille}x $Petite } else { exec convert $Grande -resize x${Taille} $Petite } lappend LesPetites $Petite } return $LesPetites } proc NikonViewWithLink {{Rep ""}} { global PhotoramaDir if {$Rep==""} { set Rep [ChoixDuRepertoire] } # FaireLire $Rep set LesFichiers [glob -nocomplain "$Rep/page*.htm" "$Rep/*/page*.htm"] set Fichier [ChoixParmi [ChoixParmi $LesFichiers]] if {$Fichier==""} { return ""} set RepWww [file dirname $Fichier] set RefFullSize "" set EmmettreMessage 1 foreach Ligne [LesLignesDuFichier $Fichier] { if {$EmmettreMessage && [regexp "" $Ligne]} { set EmmettreMessage 0 regsub "" $Ligne \ "
Click on the lower right corner to see the full size picture" Ligne } if {[regexp {]+>} $Ligne Reference]} { regsub "images/" $Reference "../" RefFullSize Espionne "+++++++++++++++++++++++++++++= $Reference $RefFullSize" } if {$RefFullSize!="" && [regexp {]+>} $Ligne Coin]} { regsub ">$" $Coin "" CoinSans regsub "$CoinSans" $Ligne "$RefFullSize$CoinSans border=\"0\">" $NouveauPhotorama $TRX NouveauPhotorama regsub -all "" $NouveauPhotorama $CRX NouveauPhotorama #regsub -all "//Ici vient Photorama.js" $NouveauPhotorama $PRX NouveauPhotorama set f [open $NouveauFichier "w"] puts $f $NouveauPhotorama close $f catch { set f [open $PhotoramaLog "w"] puts $f $Rep close $f } #FaireLire "$VersionPhotorama\nJ'ai cree\n$NouveauFichier !" ImagesPourWww $Rep $LesGrandes $DoAll exit