- moved image converting to builder-utils.h

- added logging functionality - setup inside opsi-builder.cfg by "DEBUG_LEVEL"
This commit is contained in:
Daniel Schwager 2012-01-29 16:58:12 +01:00
parent 441fdd95aa
commit 976d2a3ec9
3 changed files with 60 additions and 37 deletions

View File

@ -9,6 +9,10 @@
#################################
TMP_DIR=/tmp
# Setup debug level, be more verbose
# Valid values: debug, <empty>
DEBUG_LEVEL=
# STATUS - defines the stabability of the build
# Valid values:
# integration: this is used by a continuous integration server.

View File

@ -148,44 +148,8 @@ builder_create() {
# converting icon file
local iconfile_src=${DIST_FILE[$ICON_FILE_INDEX]}
ICONFILE=$OUTPUT_DIR/$PN.png
HIGHT=`identify -format "%h" $iconfile_src`
WIGHT=`identify -format "%w" $iconfile_src`
identify -format "%wx%h" $iconfile_src
if [ $WIGHT -lt $HIGHT ] ; then
# Its higher so force x160 and let imagemagic decide the right wight
# then add transparency to the rest of the image to fit 160x160
echo "Icon Wight: $WIGHT < Hight: $HIGHT"
convert $iconfile_src -transparent white -background transparent -resize x160 \
-size 160x160 xc:transparent +swap -gravity center -composite $ICONFILE
builder_check_error "converting image"
elif [ $WIGHT -gt $HIGHT ] ; then
# Its wider so force 160x and let imagemagic decide the right hight
# then add transparency to the rest of the image to fit 160x160
echo "Icon Wight: $WIGHT > Hight: $HIGHT"
convert $iconfile_src -transparent white -background transparent -resize 160x \
-size 160x160 xc:transparent +swap -gravity center -composite $ICONFILE
builder_check_error "converting image"
elif [ $WIGHT -eq $HIGHT ] ; then
# Its scare so force 160x160
echo "Icon Wight: $WIGHT = Hight: $HIGHT"
convert $iconfile_src -transparent white -background transparent -resize 160x160 \
-size 160x160 xc:transparent +swap -gravity center -composite $ICONFILE
builder_check_error "converting image"
else
# Imagemagic is unable to detect the aspect ratio so just force 160x160
# this could result in streched images
#echo "Icon Wight: $WIGHT Hight: $HIGHT"
convert $iconfile_src -transparent white -background transparent -resize 160x160 \
xc:transparent +swap -gravity center -composite $ICONFILE
builder_check_error "converting image"
fi
identify -format "%wx%h" $ICONFILE
HIGHT=`identify -format "%h" $ICONFILE`
WIGHT=`identify -format "%w" $ICONFILE`
echo "Opsi Icon Wight: $WIGHT Hight: $HIGHT"
convert_image $iconfile_src $ICONFILE
cp -a $ICONFILE $INST_DIR/CLIENT_DATA
# copy binaries
for (( i = 0 ; i < ${#SOURCE[@]} ; i++ )) ; do

View File

@ -77,3 +77,58 @@ builder_check_error() {
fi
}
log_debug() {
local str=$1
if [ "$DEBUG_LEVEL" = "debug" ] || [ "$DEBUG_LEVEL" = "info" ] ; then
echo $str
fi
}
###################
# Convert image
###################
convert_image() {
local src=$1
local dst=$2
local hight=`identify -format "%h" $src`
local wight=`identify -format "%w" $src`
identify -format "%wx%h" $src
if [ $wight -lt $hight ] ; then
# Its higher so force x160 and let imagemagic decide the right wight
# then add transparency to the rest of the image to fit 160x160
log_debug "Icon Wight: $wight < Hight: $hight"
convert $src -transparent white -background transparent -resize x160 \
-size 160x160 xc:transparent +swap -gravity center -composite $dst
builder_check_error "converting image"
elif [ $wight -gt $hight ] ; then
# Its wider so force 160x and let imagemagic decide the right hight
# then add transparency to the rest of the image to fit 160x160
log_debug "Icon Wight: $wight > Hight: $hight"
convert $src -transparent white -background transparent -resize 160x \
-size 160x160 xc:transparent +swap -gravity center -composite $dst
builder_check_error "converting image"
elif [ $wight -eq $hight ] ; then
# Its scare so force 160x160
log_debug "Icon Wight: $wight = Hight: $hight"
convert $src -transparent white -background transparent -resize 160x160 \
-size 160x160 xc:transparent +swap -gravity center -composite $dst
builder_check_error "converting image"
else
# Imagemagic is unable to detect the aspect ratio so just force 160x160
# this could result in streched images
log_debug "Icon Wight: $wight Hight: $hight"
convert $src -transparent white -background transparent -resize 160x160 \
xc:transparent +swap -gravity center -composite $dst
builder_check_error "converting image"
fi
# New size
# identify -format "%wx%h" $dst
hight=`identify -format "%h" $dst`
wight=`identify -format "%w" $dst`
log_debug "Opsi Icon Wight: $wight Hight: $hight"
}