Annotation of tn1_0/tn, revision 1.1
1.1 ! nick 1: #!/bin/bash
! 2:
! 3: ##
! 4: ## Generate Thumbnails and an index.html in a galleryesque fashion
! 5: ## Nicholas DeClario <nick@demandred.dyndns.org>
! 6: ## February 2011
! 7: ## $Id$
! 8: ##
! 9: ## I'm not using any additional methods to pull in command line options
! 10: ## at this time so it works as follows.
! 11: ##
! 12: ## tn html_file thumb_size columns_in_page
! 13: ##
! 14: ## If you want to specify the columns you must also specify the html_file
! 15: ## and thumb_size first, for example:
! 16: ##
! 17: ## tn index.html 64 3
! 18: ##
! 19: ## The defaults, if nothing is specifed is 'index.html' for the html file,
! 20: ## 64x64 for the thumbnail size and 6 columns.
! 21: ##
! 22:
! 23: HTML=${1:-index.html}
! 24: TN_SIZE=${2:-64}
! 25: MAX_COL=${3:-6}
! 26: TN_DIR=thumbs
! 27: TITLE="`hostname`:`pwd`"
! 28: FILE_TYPES="jpg png jpeg gif"
! 29:
! 30: [ -d $TN_DIR ] || mkdir $TN_DIR
! 31:
! 32: cat <<EOF>$HTML
! 33: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 34:
! 35: <html xmlns="http://www.w3.org/1999/xhtml">
! 36: <head>
! 37: <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
! 38: <title>$TITLE</title>
! 39: </head>
! 40: <body bgcolor="#F2F2F2">
! 41: <h1>$TITLE</h1>
! 42: <table align="center" border="0">
! 43: <tr>
! 44: EOF
! 45:
! 46: CNT=0
! 47: for i in $FILE_TYPES; do
! 48: for n in `find -maxdepth 1 -type f -iname \*.$i`; do
! 49: TN=`basename $n .$i`-tn.$i;
! 50: convert -resize $TN_SIZE $n $TN_DIR/$TN
! 51: [ $CNT -ge $MAX_COL ] && \
! 52: {
! 53: echo -e "</tr>\n<tr>" >>$HTML
! 54: CNT=0
! 55: }
! 56:
! 57: cat <<EOF>>$HTML
! 58: <td align="center" valign="middle">
! 59: <a href="$n"><img src="$TN_DIR/$TN" alt="$n" border="0"></a>
! 60: </td>
! 61: EOF
! 62: CNT=$(( CNT + 1 ))
! 63: done
! 64: done
! 65:
! 66: cat <<EOF>>$HTML
! 67: </tr>
! 68: <tr>
! 69: <td colspan="$MAX_COL">
! 70: <hr/>
! 71: <center>
! 72: <font size="0">
! 73: Generated on `date` with command '$0 $*' by `whoami`
! 74: </font>
! 75: </center>
! 76: </td>
! 77: </tr>
! 78: </table>
! 79: </body>
! 80: </html>
! 81: EOF
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>