diff options
Diffstat (limited to 'scripts/newbitmaps/old_releases/mario/make_bmp_images.sh')
-rwxr-xr-x | scripts/newbitmaps/old_releases/mario/make_bmp_images.sh | 132 |
1 files changed, 0 insertions, 132 deletions
diff --git a/scripts/newbitmaps/old_releases/mario/make_bmp_images.sh b/scripts/newbitmaps/old_releases/mario/make_bmp_images.sh deleted file mode 100755 index d69c10ed..00000000 --- a/scripts/newbitmaps/old_releases/mario/make_bmp_images.sh +++ /dev/null @@ -1,132 +0,0 @@ -#!/bin/bash -e -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# This adds text to our non-labeled recovery images. -# -# The source images should be 1366x800, with the expectation they'll be cropped -# to <screen geometry>, which is 1366x768 or 1280x800, have 2 lines of text -# overlayed at the bottom, and then be resized to 800x600 if on x86, otherwise -# same as <screen geometry>. On x86, resizing to 800x600 because the BIOS can -# then display them stretched to the full screen size. -# - - -# Require three args -if [ $# -ne "3" -o \( "$3" != "x86" -a "$3" != "arm" \) ]; then - echo "Usage: $(basename $0) <HWID> <screen geometry> <x86/arm>" 1>&2 - exit 1 -fi -HWID=$1 -geom_crop=$2 -geom_final='800x600!' -flag_final= -# If arm, make the final geometry as screen size and use 8bpp rle format. -if [ $3 = "arm" ]; then - geom_final=$2 - flag_final="-colors 256 -compress rle" -fi - -nicename=${HWID// /_} - -# Default URL -URL='http://google.com/chromeos/recovery' - -# Image parameters -geom_orig='1366x800' -bluecolor='#9ccaec' -bluefont="Helvetica-Narrow" -bluepointsize=30 -whitefont="Helvetica-Narrow" -whitepointsize=48 - - -# Temporary files -tmpdir=$(mktemp -d /tmp/tmp.bmp.XXXXXX) -trap "rm -rf $tmpdir" EXIT -img_orig="${tmpdir}/img_orig.bmp" -img_crop="${tmpdir}/img_crop.bmp" -img_txt="${tmpdir}/img_txt.bmp" -label_file="${tmpdir}/label.txt" -label_img="${tmpdir}/label.bmp" - -# Output directories -thisdir=$(readlink -e $(dirname $0)) -outdir="out_${nicename}" -[ -d "$outdir" ] || mkdir -p "$outdir" - -function find_background_color { - src_img=$1 - convert "$src_img" -crop '1x1+10+10!' txt:- | \ - perl -n -e 'print "$1" if m/(#[0-9a-f]+)/i;' -} - -function process_one_file { - src_img=$1 - - # Figure out the filenames to use - txt_file=${src_img%*.gif}.txt - root=$(basename "$src_img") - root=${root%*.*} - # one more layer of heirarchy to match BIOS source tree - dst_dir="${outdir}/${root}" - [ -d "$dst_dir" ] || mkdir -p "$dst_dir" - dst_img="${dst_dir}/${root}.bmp" - echo "processing $root ..." - - # First, make sure we start with the right-size original - bg=$(find_background_color "$src_img") - convert "$src_img" -background "$bg" \ - -gravity center -extent $geom_orig "$img_orig" - - # Now crop that to the two target sizes - convert "$img_orig" -gravity Center \ - -crop "$geom_crop"+0+0 +repage "$img_crop" - - # Add the labels in - if [ -r "$txt_file" ]; then - # The only way to change font and color in multiline text is to split each - # line into a separate image and then composite them together. Ugh. - # First, split each input line into a separate file. - "${thisdir}/makelines.sh" -u "$URL" -m "$HWID" -d "$tmpdir" "$txt_file" - # Convert each line file into an image file. - for txtfile in ${tmpdir}/linetxt_*; do - case "$txtfile" in - *.txt) - convert \ - -background "$bg" -fill "$bluecolor" \ - -font "$bluefont" -pointsize "$bluepointsize" \ - -bordercolor "$bg" -border 0x1 \ - label:'@'"$txtfile" "${txtfile%.*}".bmp - ;; - *.TXT) - convert \ - -background "$bg" -fill "white" \ - -font "$whitefont" -pointsize "$whitepointsize" \ - -bordercolor "$bg" -border 0x10 \ - label:'@'"$txtfile" "${txtfile%.*}".bmp - ;; - esac - done - # Now bash them all together to make one image. - convert -background "$bg" -gravity center ${tmpdir}/linetxt_*.bmp \ - label:'\n\n\n\n' -append "$label_img" - # Finally, layer the label image on top of the original. - composite "$label_img" -gravity south "$img_crop" "$img_txt" - else - mv "$img_crop" "$img_txt" - fi - - # Now scale the result to the final size - convert "$img_txt" -scale "$geom_final" -alpha off $flag_final "$dst_img" -} - - -# Do it. -for file in ${thisdir}/originals/*.gif; do - process_one_file "$file" -done - -# Zip up the bitmaps -(cd "$outdir" && zip -qr "${geom_crop}.zip" *) |