Autor Tema: [RETO] script grafico para linux  (Leído 3364 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Jaru

  • The Communiter-
  • *
  • Mensajes: 13252
  • some text
[RETO] script grafico para linux
« : septiembre 05, 2008, 02:58:22 pm »
se los dejo como tarea y que vean ustedes mismos que hace el script:
no explico mas porque es obvio para que es, como corre y como funciona
Citar
#!/bin/sh

xres=1400
yres=1050

for file in $(ls queue | egrep -i "jpg|png|gif")
do
if [ -f "queue/$file" ]
then

echo $file

#Resize the picture maintaining aspect ratio
convert "queue/$file" -resize "${xres}x${yres}" "temp/sized_$file"

width=$(convert "temp/sized_$file" -format "%w" info:)
height=$(convert "temp/sized_$file" -format "%h" info:)

xmod=$((($xres/2)-($width/2)))
ymod=$((($yres/2)-($height/2)))

#Place the picture centrally on appropriately sized canvas
convert \( black -resize "${xres}x${yres}" \) "temp/sized_$file" -geometry "+${xmod}+${ymod}" -composite "temp/centred_$file"

#Grow picture to screen size
convert "queue/$file" -resize $xres -resize "${yres}<" -gravity Center -crop "${xres}x${yres}+0+0" "temp/grown_$file"

#Mask background
convert television_mask2 "temp/grown_$file" -compose multiply -composite "temp/masked_$file"

#Apply masked background to background
convert "temp/masked_$file" television_sized -compose screen -composite "temp/background_$file"

#Mask flipped background for reflection
convert television_mask3 \( "temp/masked_$file" -flip \) -compose multiply -composite "temp/maskedreflection_$file"

#Apply masked relfection to background
convert "temp/maskedreflection_$file" "temp/background_$file" -compose screen -composite "temp/background2_$file"

#Distort picture on monitor sized mask
convert television_mask1 \( "temp/centred_$file" -distort Perspective '1,1 669,78 1,1050 757,675 1400,1 1260,246 1400,1050 1344,705' \) -compose multiply -composite "temp/distorted_$file"

#Overlay monitor on background
convert "temp/distorted_$file" "temp/background2_$file" -compose screen -composite "temp/optimized_$file"

mv -b "temp/optimized_$file" optimized
mv -b "queue/$file" original
rm "temp/sized_$file"
rm "temp/centred_$file"
rm "temp/grown_$file"
rm "temp/masked_$file"
rm "temp/background_$file"
rm "temp/maskedreflection_$file"
rm "temp/background2_$file"
rm "temp/distorted_$file"

fi
done
exit 0

si lo hacen funcionar los invito a un sorbete... vaya los linuxeros que se la llevan de chivos...

oops se me olvidaron las imagenes que se ocupan para correr el script :D

television_mask1
http://img514.imageshack.us/img514/5024/televisionmask1bn9.jpg
television_mask2
http://img161.imageshack.us/img161/9153/televisionmask2nl7.jpg
television_mask3
http://img385.imageshack.us/img385/2205/televisionmask3jd1.jpg
television_sized
http://img514.imageshack.us/img514/4241/televisionsizedle1.jpg

y una imagen negra de 1400x1050 llamada "black"
« Última Modificación: septiembre 05, 2008, 03:09:54 pm por naruto »
N/A