#!/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