bilder verkleinern

Dieses Thema im Forum "Anwendungen" wurde erstellt von janismac, 22.12.2007.

  1. #1 janismac, 22.12.2007
    Zuletzt bearbeitet: 22.12.2007
    janismac

    janismac Grünschnabel

    Dabei seit:
    30.11.2007
    Beiträge:
    7
    Zustimmungen:
    0
    hallo

    ich möchte bilder in massen verkleinern
    dazu möchte ich convert oder mogrify verwenden (beide schon installiert)

    nun möchte ich alle bilder aus einem ordner in jpg verwandeln und sie sollen alle die gleiche breite haben, die höhe soll aus der angegebenen breite errechnet werden, so dass das seitenverhältniss gleich bleibt.

    kann mir jemand den Befehl dazu schreiben?
    ich hab keine idee wie ich da anfangen sollte.
    Bitte !!:(

    janismac
    .
    .
    .
    EDIT (autom. Beitragszusammenführung) :
    .

    habs selbst hinbekommen

    Code:
    #!/bin/sh
    
    j=0
    if [ ! -d "./con/" ]
    then
    mkdir "./con/"
    fi
    
    for i in $* 
    do
    	if [ "" != "`echo $i | egrep '(.jpg|.tif)'`" ]
    	then
    		j=`expr $j + 1`
    		while [ -e "./con/out$j.jpg" ] 
    		do
    			j=`expr $j + 1`
    		done
    		echo "converting: $i..."
    		convert -resize 210x $i ./con/out$j.jpg
    	fi
    done
    
    
    janismac
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Always-Godlike, 22.12.2007
    Always-Godlike

    Always-Godlike Das Freak

    Dabei seit:
    31.12.2006
    Beiträge:
    939
    Zustimmungen:
    0
    Ort:
    Saarland
    Hier mal einen den ich mir selbst geschrieben hab. Mit dem kannste die if-Abfrage bei dir rausschmeißen und gleich in dir for-Schleife einbauen. Bei mir wird die Bildgröße aber ned automatische Berechnet. Bei mir ist se Fest.

    Der geht alle *.jpg im Ordner "gross" durch und speichert sie verkleinert im Ordner "klein". (EDIT: Der Script befindet sich in dem Ordner "gross")

    Code:
    #!/bin/bash
    
    for i in $(ls *.jpg)
    do
    	echo $i
    	convert $i -resize 800x600 ../klein/$i
    done 
     
  4. #3 tuxlover, 22.12.2007
    tuxlover

    tuxlover Der den Tux knuddelt

    Dabei seit:
    26.10.2005
    Beiträge:
    2.106
    Zustimmungen:
    0
    Ort:
    berlin
    Zu diesem Zwecke verweise ich mal freundlich auf meine Scriptsammlung --> http://unixboard.de/vb3/showthread.php?t=34617&highlight=bashtools

    dort ist das script rescale das was du suchst. ich verwende allerdings convert. Hatte zuerst mogrify benutzt aber da hat mir nicht gefallen, dass die alten bilder einfach überschrieben werden.
     
  5. #4 Jabo, 22.12.2007
    Zuletzt bearbeitet: 22.12.2007
    Jabo

    Jabo Aufgabe ohne Minister

    Dabei seit:
    12.10.2006
    Beiträge:
    1.322
    Zustimmungen:
    0
    Ort:
    Hamburg
    oder in Perl.... Ich hab mal was zur Erzeugung von Thumbnails gemacht, das liegt mir gerade nicht mehr vor, aber ein Prototyp. Ich nehme mal [noparse]
    PHP:
    [/noparse][/i][/b]-Tags wegen der schicken Syntaxdarstellung...

    Dieser "Prototyp" nimmt erst mal ein bestimmtes Bilddamit habe ich geübt damals.. Das Ding als Funktion und rekursiv [i][[color=orange]Edit[/color]][/idurch Verzeichnisse [i][/[color=orange]Edit[/color][/i]] machenBildernamen als Variable und Skalierungsfaktor anpassen... und es hat eine maximale Höhe und berechnet die Breite neudas müßte man umkehren.

    "newFromJpeg" wäre auch noch waswo man das Format vorher auslesen müßte (magic oder einfach Dateinamen-Erweiterung).

    Ist also keine fertige Lösungsondern ein Ansatz zum basteln ;)

    [
    php]
    #!/usr/bin/perl
    use GD;

    $bild "winter.jpg";

    #maximale Höhe
    $maxh 200;

    # Bild einlesen
    $original newFromJpeg GD::Image($bild);

    # Originalgröße auslesen
    ($br,$ho) = $original->getBounds();

    # jetzt die proportionen korrigieren
    if($ho $maxh){
       
    $faktor $ho/$maxh;
       
    $ho2 $maxh;
       
    $br2 $br/$faktor;
    }
    else {
       
    $ho2 $ho;
       
    $br2 $br;
    };

    # neues Bild erstellen(theoretisch)
    $neu = new GD::Image($br2,$ho2);

    # original in neues reinkopieren
    $neu->copyResized($original,0,0,0,0,$br2,$ho2,$br,$ho);

    # Die Zahl in Klammern ist der Kompressionsfaktor
    # (Bildqualität)
    $jpg_data $neu->jpeg(60);

    # Ausgabe als Thumbnail-Datei
    # Namen bauen
    ($f_name,$f_ext) = split(/\./, $bild);

    open(THUMBNAIL">$f_name-t.$f_ext");
    binmode THUMBNAIL;
    print 
    THUMBNAIL $jpg_data;
    close(THUMBNAIL);
    1;
     
  6. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

bilder verkleinern

Die Seite wird geladen...

bilder verkleinern - Ähnliche Themen

  1. Bilder in Unterordner verkleinern

    Bilder in Unterordner verkleinern: Hi, Ich suche eine möglichkeit meine in ca. 112 Unterordner sortierten Bilder von 1920x1200 auf 1280x960 pixel zu verkleinern. Das Problem...
  2. jpgbilder verkleinern

    jpgbilder verkleinern: ich habe einen ordner voll mit bildern die alle "italien[1-1000].jpg" heissen. da sie mit einer digitalkamera aufgenommen wurden sind alle sehr...
  3. WordPress 4.4 »Clifford« passt Bilder automatisch an

    WordPress 4.4 »Clifford« passt Bilder automatisch an: Die Wordpress-Entwickler haben ihre freie Blog-Software in der Version 4.4 veröffentlicht. Der Namensgeber dieser Version ist der 1956 verstorbene...
  4. Darktable 1.6 unterstützt riesige Bilder

    Darktable 1.6 unterstützt riesige Bilder: Die virtuelle Leuchttisch- und Dunkelkammer-Anwendung Darktable ist in der Version 1.6 erschienen. Die Software möchte Fotografen bei ihrer Arbeit...
  5. Canonical anonymisiert Dash-Suchbilder

    Canonical anonymisiert Dash-Suchbilder: Wie David Callé in einer kurzen Mitteilung bekannt gab, wird bereits die kommende Version von Ubuntu die über das Dash abgesetzten Suchanfragen...