Blame Scripts/Bash/Functions/Identity/identity_renderBrands.sh

4c79b5
#!/bin/bash
4c79b5
#
ce597a
# identity_renderBrands.sh -- This function provides last-rendition
ce597a
# actions to produce CentOS brands. This function takes both The
ce597a
# CentOS Symbol and The CentOS Type images and produces variation of
ce597a
# them in different dimensions and formats using ImageMagick tool-set.
4c79b5
#
9f5f2e
# Copyright (C) 2009-2011 Alain Reguera Delgado
4c79b5
# 
7cd8e9
# This program is free software; you can redistribute it and/or
7cd8e9
# modify it under the terms of the GNU General Public License as
7cd8e9
# published by the Free Software Foundation; either version 2 of the
7cd8e9
# License, or (at your option) any later version.
4c79b5
# 
4c79b5
# This program is distributed in the hope that it will be useful, but
4c79b5
# WITHOUT ANY WARRANTY; without even the implied warranty of
4c79b5
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
4c79b5
# General Public License for more details.
4c79b5
#
4c79b5
# You should have received a copy of the GNU General Public License
4c79b5
# along with this program; if not, write to the Free Software
4c79b5
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
4c79b5
# USA.
4c79b5
# 
4c79b5
# ----------------------------------------------------------------------
418249
# $Id$
4c79b5
# ----------------------------------------------------------------------
4c79b5
ce597a
function identity_renderBrands {
4c79b5
e660d0
    local SOURCEFILE=''
e660d0
    local TARGETDIR=''
e660d0
    local TARGETFILE=''
f1cb29
    local NEWFILE=''
e660d0
e660d0
    # Define absolute path to image file.
4c79b5
    local FILE="$1"
4c79b5
f1cb29
    # Define height dimensions you want to produce brands for.
f1cb29
    local SIZES="16 20 22 24 32 36 40 48 64 96 128 148 164 196 200 512"
4c79b5
f1cb29
    # Define image formats you want to produce brands for.
f1cb29
    local FORMATS="png xpm pdf jpg tif"
4c79b5
f1cb29
    # Redefine absolute path to directory where final brand images
f1cb29
    # will be stored. Notice how both final image directory and design
f1cb29
    # model have the same name, this is intentional in order to keep
f1cb29
    # images and design models related and organized inside their own
f1cb29
    # directory structures.
f1cb29
    local DIRNAME=$(cli_getRepoName "$FILE" 'd')/$(cli_getRepoName "$FILE" 'fd')
4c79b5
f1cb29
    # Check directory where final brand images will be stored.
f1cb29
    if [[ ! -d $DIRNAME ]];then
f1cb29
        mkdir -p ${DIRNAME}
f1cb29
    fi
4c79b5
f1cb29
    for SIZE in ${SIZES};do
f1cb29
f1cb29
        # Redefine name of new file.
f1cb29
        NEWFILE=${DIRNAME}/${SIZE}
f1cb29
f1cb29
        for FORMAT in ${FORMATS};do
f1cb29
        
f1cb29
            # Output action information.
f1cb29
            cli_printMessage "${NEWFILE}.${FORMAT}" "AsCreatingLine"
f1cb29
f1cb29
            # Convert and resize to create new file.
f1cb29
            convert -resize x${SIZE} ${FILE}.png ${NEWFILE}.${FORMAT}
f1cb29
f1cb29
        done
f1cb29
f1cb29
        # Create logo copy in 2 colors.
f1cb29
        cli_printMessage "${NEWFILE}.xbm (`gettext "2 colors grayscale"`)" "AsCreatingLine"
f1cb29
        convert -resize x${SIZE} -colorspace gray -colors 2 ${FILE}.png ${NEWFILE}.xbm
f1cb29
f1cb29
        # Create logo copy in emboss effect.
f1cb29
        cli_printMessage "${NEWFILE}-emboss.png" "AsCreatingLine"
f1cb29
        convert -resize x${SIZE} -emboss 1 ${FILE}.png ${NEWFILE}-emboss.png
f1cb29
f1cb29
    done
f1cb29
f1cb29
    # Output division line.
f1cb29
    cli_printMessage '-' 'AsSeparatorLine'
4c79b5
}