[linux-support] Bilder-Reduzier-Script: Wuensche fuer Verbesserungen

Theo Schmidt sus2006 at bluewin.ch
Sat Dec 12 15:37:58 CET 2009


Hallo zusammen,

Hat jemand Lust, das untenstehende Script zu verbessern? Es ist dazu da, einen
Ordner voller JPEG-Bilder so zu reduzieren, dass sie alle horizontal 1024 Pixel
messen; Zweck ist ganz schnell Bilder zu reduzieren, um sie problemlos jemanden
zu mailen. (Das Attribut "heigth" scheint wirkungslos; das ursprüngliche
Seitenverhältnis wird beibehalten.) Es ist ganz nützlich, funktioniert in KDE
3.5 sogar per Drag und Drop. Was ich aber noch gerne hätte, wäre folgende Mankos
zu verbessern bzw. neue Features einzubauen:

1) Es funktioniert nicht mit Leerzeichen in den Ordnernamen oder Dateinamen.

2) In /usr/local/bin platziert, funktioniert es zwar mit eigenen Bildern, nicht
aber mit solchen, wo man nur Gruppenschreibrechte hat.

3) Wäre es möglich, die Drag und Drop Fähigkeit auch auf einzelne Bilder statt
Ordner auszudehnen, damit man nicht zuerst einen Ordner machen muss um darin das
Bild zu verschieben?

4) Geht nur für JPG, nicht für PNG. Nützlich wäre ohnehin, allfällige PNGs
gleich in JPG zu konvertieren, da diese meistens kleiner sind.

5) Es werden wohl pixel-grosse Bilder reduziert, aber offenbar mit der
ursprünglichen JPG-Kompressionsstufe bearbeitet, so dass manche (zu) gross
bleiben. Nützlich wäre es, diese gleichzeitig auf z.B. 50% (Qualität) einzustellen.

6) Ich habe tatsächlich mehrere Versionen dieses Scripts für verschiedene
Grössen. Nützlich wäre eine Version, welche die gewünschten Werte z.B. per
xdialog abfragt.

7) Die Drag and Drop Usability von KDE 3.5 ist schlecht, da kein Feedback
entsteht, wenn man den Ordner an der richtigen Stelle hat (ausser eine
"Verbotsafel", wenn man ganz falsch liegt und gleichzeitig lange wartet).
Insbesondere geht es nicht, wenn man zufällig das "Loch" in dem generischen
Zahnrad-Icon von KDE erwischt hat. Besonders Leute, welche nicht allzu
zuverlässig mit der Maus arbeiten können, wären um ein "Mausover-Success-Popup"
froh. Ginge so etwas ohne in den Innereien von KDE herumzuwerken?

Obige Wunschliste reicht von "RTFM" bis "unlösbar". Trotzdem wäre ich froh um
Teil-Lösungen, auf Wunsch auch gegen Bezahlung, und nicht um Diskussionen,
weshalb man z.B. KDE 3.5 nicht benutzen sollte. Übrigens gibt es teure
proprietäre Tools, sogar für Linux, die genau das Gewünschte machen, aber mit
riesigem Aufwand: z.B. Installation nur via Flash oder AIR und Funktion nur mit
MONO oder einer 3D-Grafik Umgebung. Ich suche also etwas zwischen einem solchen
Overkill und der Schlichtheit des existierenden Scripts. Und natürlich FOSS,
wozu ich denke dieses Script mit der eingebauten BSDL fast gehört.

Viele Grüsse, Theo


---------------------


#!/bin/bash -norc
#$Id: mkthumbs,v 1.1 2004/11/30 15:14:35 RogerSeguin Exp $
########################################################################
# Copyright (c) 2004 Roger Seguin <roger_seguin at msn.com>
#				http://rmlx.dyndns.org

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:

# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.

# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
########################################################################

# Description:
#	Create thumbnails for all .jpg of the indicated directory
#	using the ImageMagick's convert utility

# Location of original pictures
[ $# -eq 1 ] || {
cat << EndUsage:
	Usage:	`basename $0` <Pic.Directory>
EndUsage:
	exit 1
}
picdir="$1"

# Subdirectory where thumbnails will be created (relative to $picdir)
subdir="Bilder1024x768"

# Thumbnail size
width=1024
heigth=768

########################################################################

# Go to picture directory
cd $picdir || exit $?
picdir=`pwd`

# Remove previous leftover
thumbdir=$picdir/$subdir
[ -d $thumbdir ] && rm -fr $thumbdir
mkdir $thumbdir

# Make thumbnails
geometry=${width}x${size}
for pic in *.jpg *.JPG; do
	[ -f $pic ] || continue
	thumb=$thumbdir/$pic
	printf "Creating $thumb..."
	convert -size $geometry $pic -resize $geometry +profile "*" $thumb
	printf "\n"
done

exit 0


#$Log: mkthumbs,v $
#Revision 1.1  2004/11/30 15:14:35  RogerSeguin
#Initial revision
#




More information about the Linux-support mailing list