Blame Scripts/Functions/Render/render_svg_convertPngToBrands.sh

4c79b5
#!/bin/bash
4c79b5
#
188613
# render_svg_convertPngToBrands.sh -- This function provides
188613
# last-rendition actions to produce CentOS brands. This function takes
188613
# both The CentOS Symbol and The CentOS Type images and produces
188613
# variation of them in different dimensions and formats using
188613
# ImageMagick tool-set.
4c79b5
#
2d3646
# Copyright (C) 2009, 2010, 2011 The CentOS Project
fa95b1
#
fa95b1
# This program is free software; you can redistribute it and/or modify
fa95b1
# it under the terms of the GNU General Public License as published by
dcd347
# the Free Software Foundation; either version 2 of the License, or (at
dcd347
# your option) any later version.
fa95b1
#
74a058
# This program is distributed in the hope that it will be useful, but
74a058
# 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
dcd347
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
7ac5a5
#
4c79b5
# ----------------------------------------------------------------------
418249
# $Id$
4c79b5
# ----------------------------------------------------------------------
4c79b5
188613
function render_svg_convertPngToBrands {
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.
73abb3
    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.
0ff158
            cli_printMessage "${NEWFILE}.${FORMAT}" --as-creating-line
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.
0ff158
        cli_printMessage "${NEWFILE}.xbm (`gettext "2 colors grayscale"`)" --as-creating-line
f1cb29
        convert -resize x${SIZE} -colorspace gray -colors 2 ${FILE}.png ${NEWFILE}.xbm
f1cb29
f1cb29
        # Create logo copy in emboss effect.
0ff158
        cli_printMessage "${NEWFILE}-emboss.png" --as-creating-line
f1cb29
        convert -resize x${SIZE} -emboss 1 ${FILE}.png ${NEWFILE}-emboss.png
f1cb29
f1cb29
    done
f1cb29
f1cb29
    # Output division line.
0ff158
    cli_printMessage '-' --as-separator-line
4c79b5
}