Warnung: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php (Zeile 156)

Warnung: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php (Zeile 156)

Warnung: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php (Zeile 156)

Warnung: Use of undefined constant VB_FRAMEWORK - assumed 'VB_FRAMEWORK' (this will throw an Error in a future version of PHP) in ..../includes/functions.php (Zeile 8101)

Warnung: Use of undefined constant archive_postsperpage - assumed 'archive_postsperpage' (this will throw an Error in a future version of PHP) in ..../archive/index.php (Zeile 456)
Viele Bilder schnell konvertieren. [Archiv] - X-Plane Schweiz

PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Viele Bilder schnell konvertieren.



sirarokh
13.09.2007, 11:38
Wie ihr vielleicht mitbekommen habt, habe ich mich in den letzten Tagen sehr viel mit Regulären Ausdrücken beschäftigt. Dabei bin ich auch endlich über eine vergleichsweise einfache Methode gestolpert, viele Bilder in einem Rutsch zu konvertieren und zu verkleinern.

Das Paket "convert" für Linux kann einzelne Dateien schnell und einfach von der Konsole aus konvertieren. Der Befehl

convert Bild1.png Bild1.jpg
konvertiert beispielswese Bild1.png zu einem jpg. Noch sinnvoller ist aber vielleicht:

convert -resize 800x600 -quality 85 Bild1.png Bild1-jpg
Was das Bild dazu noch verkleinert und die Qualität festlegt.

Die Schwierigkeit ist nun, schnell eine Liste zu erstellen, die alle Dateien eines Verzeichnisses auflistet und automatisch konvertiert. Wenn man sich in der Konsole in das entsprechende Verzeichnis begibt, lässt sich eine Liste einfach mit

ls >> liste.txt
erstellen. Jetzt kann man die soeben erstellte Datei liste.txt mit dem bekannten Editor Emacs öffnen. Als erstes sollten jetzt alle Leerzeichen " " zu "\ ", also geschützten Leerzeichen umgewandelt werden, damit die Datei später ausgeführt werden kann.

Shift-Alt-4 (in Emacs-Sprache: M-%)
aktiviert den Suchmodus. Wir suchen nach " ", also Leerzeichen. Wir geben also ein Leerzeichen ein und drücken Enter. Jetzt sollen wir das Zeichen eintragen, durch welches das Leerzeichen ersetzt werden soll: "\ ". Nach einem weiteren mal Enter werden wir gefragt, ob wir das erste Leerzeichen wirklich ersetzen wollen. Wir können jetzt entweder jedesmal mit "y" bestätigen, oder mit "!" alle Ersetzungen auf einmal erledigen.

Als nächstes muss noch der Befehl eingebaut werden. Dafür benötigen wir sogenannte Reguläre Ausdrücke. Wir gehen diesmal in den Suchmodus für reguläre Ausdrücke:

Strg-Shift-Alt-4 (in Emacs-Sprache: C-M-%)
Diesmal lautet das Suchmuster

\(.*\)png
Was nach einer beliebigen Zeile sucht, die auf "png" endet. Das Ersetzmuster ist dann:

convert -resize 800x600 -quality 85 \1png \1jpg
Was den kompletten Befehl erstellt. die "\1" fügen dabei den Inhalt der Klammern im Suchmuster ein - also dem Dateinamen und -pfad ohne Endung.
Den Befehl wieder wie bei der letzten Suche mit "!" für alle Zeilen ausführen.
Dann die Datei abspeichern und Emacs beenden. Das geht entweder über die Symbole oder mit

Strg-X Strg-S, Strg-X Strg-C (C-x-s C-x-c )

Die fertige Datei kann jetzt ausgeführt werden und wird alle png-Dateien im Verzeichnis zu jpg-Dateien mit der Auflösung 800x600 und der Qualitätsstufe 85 konvertieren ;D

Cedric Loup
13.09.2007, 21:36
Hallo Bastian

Danke für diesen tollen und lehrreichen Bericht.

Solche posting werde ich sicher auch immer ganz genau lesen, da es für mich als Linux Einsteiger sicher nützlich ist. ;)

Nun habe ich schon 2 Wochen das Windows von Micisoft nicht mehr gestartet und muss sagen.
Ich vermisse es nicht einmal und ich habe bis auf das Drucken immer eine Alternativlösung gefunden.

Gruss Cedric

sirarokh
14.09.2007, 15:42
Ich habe eine legale Lizenz für TurboPrint gekauft, die ich nicht mehr brauche, da es inzwischen eine OpenSource-Alternative für meinen Drucker gibt (Canon PIXMA IP 5200).

Turboprint stellt für einen ziemlich geringen Betrag für Linux Druckertreiber zur Verfügung. Wenn du mit meiner Lizenz etwas anfangen kannst, dann kannst du sie gerne haben - sie ist meines Wissens nicht an ein bestimmtes Druckermodell gebunden. Eine Beschreibung von TurboPribt gibt es bei www.turboprint.de.

Ich dachte am Anfang auch, dass ich wahrscheinlich hin und wieder mal bei Microsoft vorbeischauen würde. Es stellte sich aber heraus, dass ich im Endeffekt Windows nur für den MSFS startete. Und seit ich X-Plane benutze, brauche ich es nicht einmal mehr dafür.
Und inzwischen habe ich das Gefühl, dass mit Linux die meisten Dinge einfacher und schneller regeln lassen (sobald es einmal läuft).
Gerade das Screenshot-Konvertieren war seit je her ein Problem. Es gibt zwar auch Programme wie IrfanView, die das beherrschen, aber es geht niemals so schnell oder effizient wie mit dem oben beschriebenen Script. (insbesondere da IrfanView meines Wissens die Auflösung nicht ändern kann)

Fazit: Ich mag mein Linux - aber das war ja schon vorher klar.

Gruß aus dem Schwarzwald!

Schloch
14.09.2007, 15:53
Hallo zusammen,

ja ich sehe die Schwarzwälder waren schon immer erfinderische Typen.
Schliesslich haben sie die *Kuckucksuhr erfunden !!
Hallo Bastian, nimm es ja nicht persöhnlich, ich liebe Euch Schwarzwälder, schon nur wegen, dass ihr alle so ruhige Typen sind, aber wie schon meine Feststellung weiter oben sagt:
Wer schon die Kuckucksuhr erfinden kann, der muss die Ruhe zwischen zwei Sekunden Takten kennen!

Tic, Tac, Tic, Tac, Tic, Tac..........


PS Jetzt muss nur noch ein Ami die Seestrasse von Titisee runterlaufen und schon tönt es aus allen Clockshops " Kuckuck, Kuckuck"
Schliesslich müssen die da oben auch wieder ihre Brötchen verdienen und ich darf, wenn ich wieder oben bin, meine Ruhe im Titisee nahen Falkau geniessen und kann da runterschauen, wie die Amis sich mit Blackforest Clocks eindecken und es den Leuten da unten gut geht.

sirarokh
14.09.2007, 19:52
...schade nur, dass die Kuckucksuhren im Harz erfunden wurden ;D

Ich bin noch Jung! Da darf ich noch hektisch sein!

Schloch
14.09.2007, 20:35
Hallo Bastian,
na da wollte doch einer testen, der eigentlich wissen wollte, was ein Bräggele ist.

sirarokh
15.09.2007, 12:01
In der Gegend um Titisee sind diese Kuckucksuhren aber auch wirklich eine Seuche. "House of 1000 Clocks / Haus der 1000 Uhren" etc. entsprechen nicht so ganz meinem Bild vom Schwarzwald.
Im Übrigen bin ich eigentlich kein gebürtiger Schwarzwälder sondern ursprünglich Münchner. Den wichtigen Teil meiner Kindheit und Jugend durfte ich aber im Schwarzwald verbringen. Mein eigentliches Bild vom Schwarzwald ist eher eine Collage aus Mountainbike-Touren in der Umgebung von Villingen, Schitagen am Feldberg und gelegentlichen Ausflügen zwischen Donaueschingen und St. Georgen.

Meine Südbadischen Sprachkenntnisse sind aber relativ beschränkt, da meine Eltern aus dem Nordbadischen und der Pfalz stammen. Bräggele sind aber in der Hochsprache Erbsen -- und kommen meines Wissens nur in der Mehrzahl vor.

In diesem Sinne noch ein schönes Wochenende!