ImageMagick: Unterschied zwischen den Versionen
Robi (Diskussion | Beiträge) (montage) |
Robi (Diskussion | Beiträge) (composite) |
||
Zeile 148: | Zeile 148: | ||
Einige [[ImageMagick nützliche Beispiele |einfache Beispiele]] für die Benutzung dieses Programmes | Einige [[ImageMagick nützliche Beispiele |einfache Beispiele]] für die Benutzung dieses Programmes | ||
− | === composite === | + | |
+ | |||
+ | === composite === | ||
+ | |||
+ | [http://man.cx/composite composite] ist ein sehr spezielles Kommando, dessen Funktionen sich auch aus den anderen Programmen von ImageMagick aufrufen lassen. Es ermöglicht die verschiedensten Methoden des mischens und überlagerns von 2 und mehreren Bildern. Die Funktionen gehen zT. hier weit über das Maß hinaus, dass man von einem normalem Grafikbearbeitungsprogramm erwarten würde. Die Anwendung dieses Befehles oder seiner Funktionen setzt ein grundlegendes Wissen über Farbräume, Farben und Techniken voraus, und/oder kostest sehr viel Zeit beim ausprobieren und testen. Mit diesem Befehl beginnt wohl die Zauberei in der Grafikbearbeitung. | ||
+ | |||
+ | An dieser Stelle kann hier für Möglichkeiten und weiterreichende Informationen nur auf [http://www.imagemagick.org/Usage/compose/ Beispielseiten] verwiesen werden, auch wenn hier und da in den [[ImageMagick nützliche Beispiele |Befehlsbeispielen hier im Wiki]] die eine oder andere Funktion dieses Befehles genutzt wird. | ||
+ | |||
=== animate === | === animate === | ||
=== import === | === import === |
Version vom 24. April 2007, 23:08 Uhr
Achtung dieser Artikel ist noch in Arbeit und dient vorläufig nur als Vorlage. Dieser Beitrag zu Linux oder der Abschnitt ist in Bearbeitung. Weitere Informationen findest du hier. Der Ersteller arbeitet an dem Beitrag oder Abschnitt und entsorgt den Wartungsbaustein spätestens 3 Tage nach der letzten Bearbeitung. Änderungen außer Rechtschreibkorrekturen ohne Absprache mit dem Urspungsautor sind möglichst zu vermeiden, solange dieser Baustein noch innerhalb der genannten Frist aktiviert ist. |
Robi 15:32, 22. Apr 2007 (CEST)
ImageMagick http://www.imagemagick.org/image/logo.jpg | |
---|---|
{{{Screenshot}}} {{{Beschreibung}}} | |
Basisdaten | |
Entwickler: | ImageMagick Studio LLC |
Aktuelle Version: | 6.3.3-9 |
letzte Veröffentlichung: | 20.04.2007 |
Betriebssystem: | Linux, Windows, Solaris, MacOS, FreeBSD |
Kategorie: | Grafik |
Lizenz: | GLP kompatibel |
Deutschsprachig: | Nein |
Webseite: | http://www.imagemagick.org |
Inhaltsverzeichnis
Was ist was kann ImageMagick
ImageMagick® ist eine Softwarepaket, zum Erstellung und Bearbeitung von Rastergrafiken. Es kann Bilder in eine Vielzahl gebräuchlicher Formate (derzeit ungefähr 100) einschließlich DPX, GIF, JPEG, JPEG-2000, pdf, PhotoCD, png, Postskriptum, SVG und tiff lesen, umwandeln und schreiben. Mit ImageMagick können zum Beispiel Bilder kombiniert, in andere Formate umgewandelt, gedreht, gespiegelt, zugeschnitten oder in der Größe verändert werden. Es lassen sich aber auch umfangreiche Manipulationen an den Bildfarben und verschiedene spezielle Effekte und Filter anwenden, oder Text, Linien, Polygone, Ellipsen und Bézier Kurven mit ImageMagick zeichnen. Die Funktionalität von ImageMagick wird gewöhnlich von der Kommandozeile oder aus Scripten heraus verwendet. Darüber hinaus bietet ImageMagick aber auch die Möglichkeit und Schnittstellen, um die Funktionen aus anderen Programmen und Programmiersprachen heraus, aufzurufen. Es lassen sich Bilder auch dynamisch erzeugen oder ändern, was es unter anderem für Webanwendungen sehr interessant macht.
ImageMagick ist eine freie Software, die sowohl als fertige Programmpakete für eine ganze Reihe Betriebssysteme, sowie auch als Quellenprogrammpaket zur Verfügung steht, und die frei verwendet, kopiert, geändert und verteilt werden kann. Seine Lizenz ist mit GPL kompatibel. ImageMagick läuft auf alle Hauptbetriebssysteme.
Hier sind einige Beispiele aufgeführt, was man mit ImageMagick tun kann:
- Formatumwandlung: ein Bild von einem Format in andere umwandeln (z.B. png zu JPEG)
- Transformation: die Größe neu bestimmen, drehen, beschneiden, flippen oder trimmen
- Bildtransparents: Teile eines Bildes unsichtbar machen
- Zeichnen: Formen oder Text einem Bild hinzufügen
- Dekorieren: einen Rand oder einen Rahmen einem Bild hinzufügen
- Spezielle Effekte: Unschärfe, schärfen, Schwellewerte anwenden oder abtönen eines Bildes
- Mathematische Berechnungen: einen mathematischen Ausdruck auf ein Bild oder einzelne Bildkanäle anwenden
- Text u. Anmerkungen: Schrift oder künstlerische Textverzierungen auf einem Bild einsetzen
- Identifikation: das Format und die Attribute eines Bildes beschreiben oder auslesen
- Animation: eine GIF Animation von einer Gruppe Bildern erstellen
- Bildmontage: Uberdeckung von Bildern oder mischen der einzelnen Bildkanäle
- Kombinationen: ein Set von Vorschaubilder als Bild erstellen
- Unterstützung für große Bilder: Mega- und Gigapixel Bildgrößen lesen, verarbeiten oder schreiben
Installation
Bemerkungen zu den Versionen
An ImageMagick wird zur Zeit sehr viel und erfolgreich gearbeitet, das umfasst sowohl neue Funktionen und Methoden wie auch die Beseitigung von Bugs. Es ist also nicht verwunderlich, wenn fast wöchentlich eine neue Sub-Version auf den Download-Servern zu finden ist. (Changelog) Das hat aber nicht nur Vorteile. Nicht alles was man unter Beispiele findet, wird man auf seinem Rechner zum laufen bekommen, da dort oftmals in den Beispielen die neusten Methoden vorgestellt und dokumentiert werden. Und hat man mit Hilfe der oben genannten Beispiele endlich sein Script so, dass es genau das macht was man will, läuft das Script aber nicht zwangläufig auf dem nächten Rechner auch, wenn dort eine ältere Version darauf ist. Einen sehr großen Sprung hat es zwischen der Hauptversion 5 und 6 gegeben. (Die Version 5 wurde zB noch unter Suse 9.1 ausgeliefert) Hier kann man davon ausgehen, dass einige Befehle und Optionen und somit ganze Scripte zwischen beiden Hauptversionen überhaupt nicht kompatibel ist. Man sollte sich also überlegen, mit welcher Version man komplizierte Scripte und Konzepte mit ImageMagick entwickeln will, die dann auch auf anderen (eventuell älteren Versionen) Rechnern laufen sollen. Im Zweifelsfall sollte man daran denken, bei der Weitergabe komplizierter Scripte eine Verweis auf die eigene verwendete Version von ImageMagick zu hinterlegen. Als Anhaltspunkte hier die ausgelieferten Versionen von SuSE. (Es werden bei den default Onlineaktualisierungen von SuSE auch keine neuen Versionen installiert sondern lediglich Erneuerungen bei Sicherheitsproblemen oder schwerwiegenden Fehlern durchgeführt.)
Unter Suse sind folgende Versionen von ImageMagick ausgeliefert worden.
- SuSE 10.0: 6.2.3
- SuSE 10.1: 6.2.5
- SuSe 10.2: 6.3.0
- aktuell Version (22.04.2007) 6.3.3
ImageMagick selbst kompilieren
ImageMagick selbst zu kompilieren geht nach dem berühmten 3-Satz wie hier beschrieben. das configure-Script ohne besondere Optionen wird sich auf dem Rechner nach jeder Menge Library und Header-Dateien umschauen, und dementsprechend ImageMagick konfigurieren. Sobald configure fehlerfrei beendet wurde, sollte man sich dessen Ausgabe insbesondere folgenden Abschnitt etwas genauer anschauen.
ImageMagick is configured as follows. Please verify that this configuration matches your expectations. Host system type : i686-pc-linux-gnu Option Value ------------------------------------------------------------------------------- Shared libraries --enable-shared=yes yes Static libraries --enable-static=yes yes Module support --with-modules=yes yes GNU ld --with-gnu-ld=yes yes Quantum depth --with-quantum-depth=16 16 Delegate Configuration: BZLIB --with-bzlib=yes yes DJVU --with-djvu=yes yes DPS --with-dps=yes no FlashPIX --with-fpx=no no FontConfig --with-fontconfig=yes yes FreeType --with-freetype=yes yes GhostPCL None pcl6 (unknown) Ghostscript None gs (8.15.3) Ghostscript fonts --with-gs-font-dir=default /usr/share/ghostscript/fonts/ Ghostscript lib --with-gslib=yes no (failed tests) Graphviz --with-gvc=yes no JBIG --with-jbig=yes no JPEG v1 --with-jpeg=yes yes JPEG-2000 --with-jp2=yes yes LCMS --with-lcms=yes no Magick++ --with-magick-plus-plus=yes yes PERL --with-perl=yes /usr/bin/perl PNG --with-png=yes yes RSVG --with-rsvg=yes yes TIFF --with-tiff=yes yes Windows fonts --with-windows-font-dir= none WMF --with-wmf=yes yes X11 --with-x= yes XML --with-xml=yes yes ZLIB --with-zlib=yes yes
hier hat das Script entsprechend der Tools und Dateien die es auf dem Rechner gefunden hat, die Konfiguration der optional Features und optionalen Pakete zusammengefasst. Ist hier bei einer gewünschen Option ein no oder none eingetragen, sollten man mit dem Paketmanager die entsprechenden Devel-Pakete oder gar die entsprechenden Libray- oder Programmpakete nachinstallieren und configure noch einmal laufen lassen.
Schnittstellen zu anderen Programmen oder Programmiersprachen
Zur Zeit sind folgende Interface für ImageMagick bekannt.
- G2F (Ada)
- MagickCore (C)
- MagickWand (C)
- ChMagick (Ch)
- ImageMagickObject (COM+)
- Magick++ (C++)
- JMagick (Java)
- CL-Magick (Lisp)
- nMagick (Neko/haXe)
- MagickNet (.NET)
- PascalMagick (Pascal)
- PerlMagick (Perl)
- MagickWand for PHP (PHP)
- PythonMagick (Python)
- RMagick (Ruby)
- TclMagick (Tcl/TK)
Die Befehle von ImageMagick
convert
convert ist wohl das wichtigste Kommando innerhalb ImageMagick. Die meisten Operationen können mit diesem Kommando gemacht werden.
Convert kennt eine Unmenge an Operatoren und Settings und Kombinationen die auf ein oder mehrere Eingangsbilder einzeln oder in Kombination Anwendung finden, um dann daraus ein oder mehrere Ausgangsbilder zu erstellen. Und damit noch lange nicht genug kann convert auch in einer Befehlszeile ganze Sequenzen von Bilder bearbeiten, oder intern in fast beliebiger Schachtelungstiefe Bilder in den Stack schieben, um sie von dort aus in eine der nächsten Teilschritte weiterzuverarbeiten. Eine Einführung in die Kommandostruktur und deren Möglichkeiten kann hier nachgelesen werden.
Mit convert können unter anderem Kopien von Bilddateien in andere Bildformate hergestellt werden, es können die Größe der Bilder verändert, Bilder drehen spiegeln oder verzerren. Bildteile herausgeschnitten, oder weggeblendet werden, Rahmen um Hintergrund gestaltet werden, es können Bilder beschriftet oder mit eigenen Zeichnungen versehen werden. Es konnen mehrere Bilder zu einen Bild montiert werden und dabei die Farbattribute der einzelnen Bilder auf die unterschiedlichste Art beeinflußt werden. Es können aus Einzelbildern Gif-Animationen erstellt werden, es können Fotos bearbeitet werden mit so ziemlich allen Funktionen die grafilsche Bildbearbeitungsprogramme auch haben, und und und. Das wichtigste, die Ursprungsbilder werden mit convert nie überschrieben und bleiben erhalten wie sie sind, und es werden immer neu Bilddateien erzeugt.
Die Möglichkeiten und Kombinationsmöglichkeiten dieses Kommandos sind schier unüberschaubar. Leider ist die Verständlichkeit und Übersichtlichkeit der einzelnen Kommandos dann manchmal auch nicht mehr überschaubar. Wer sich damit näher damit befassen möchte dem sei die Beispielseite von Anthony Thyssen empfohlen. Für alle anderen eine kleine Seite mit nützlichen Beispielaufrufen und Kommentaren zu den Befehlen.
mogrify
mogrify ist in vielerlei Hinsicht gleich dem Kommando convert. Die Optionen sind auch analog dem vom convert. Mogrify arbeitet immer ein Bild nach dem anderen ab, und nicht alle Funktionen von convert sind damit machbar. Der Hauptunterschied besteht jedoch darin, dass mogrify, wenn wir es ihm nicht explizid anweisen die Ursprungsdatei überschreibt. Die Änderungen werden also unter dem Namen der Ursprungsdatei abgespeichert. Aus diesem Grunde sollte man mit mogrify sehr bedacht umgehen, und von den Dateien Kopienen vor der Bearbeitung erstellt haben. Der Befehl eignet sich also immer dort, wo Dateien an Ort und Stelle bearbeitet werden sollen,ohne dabei extra neue Dateien anzulegen.
Achtung: |
der Umgang mit dem Befehl mogify ist gefährlich, da in der Vielzahl der Fälle das Ergebnisbild unter den selben Namen wie das Ursprungsbild abgelegt wird. Man sollte unbedingt vorher Sicherheitskopien der Bilder anfertigen |
Einige einfache Beispiele für die Benutzung dieses Programmes
montage
Montage ist ein weiteres Kommando zur Bildbearbeitung, das unter anderm auch eine Vielzahl Optionen von convert verarbeiten kann. Es wurde jedoch speziell für die Erzeugung von Thumbnails von Bildern und deren Gruppierung und Ansicht entwickelt. Darüber hinaus wird montage vor allem dort verwendet, wo mehrere Bilder aneinandergereiht und so zu einem einzigem Bild zusammengesetzt werden sollen. Für einige Spezialanwendungen wie Textgenerierung aus verschiedenen Fonts und ähnlichem, ist es sehr gut geeignet.
Hinweis: |
die Optionen und Möglichkeiten dieses Befehles sind in den Hauptversionen 5 und 6 sehr unterschiedlich. |
Einige einfache Beispiele für die Benutzung dieses Programmes
composite
composite ist ein sehr spezielles Kommando, dessen Funktionen sich auch aus den anderen Programmen von ImageMagick aufrufen lassen. Es ermöglicht die verschiedensten Methoden des mischens und überlagerns von 2 und mehreren Bildern. Die Funktionen gehen zT. hier weit über das Maß hinaus, dass man von einem normalem Grafikbearbeitungsprogramm erwarten würde. Die Anwendung dieses Befehles oder seiner Funktionen setzt ein grundlegendes Wissen über Farbräume, Farben und Techniken voraus, und/oder kostest sehr viel Zeit beim ausprobieren und testen. Mit diesem Befehl beginnt wohl die Zauberei in der Grafikbearbeitung.
An dieser Stelle kann hier für Möglichkeiten und weiterreichende Informationen nur auf Beispielseiten verwiesen werden, auch wenn hier und da in den Befehlsbeispielen hier im Wiki die eine oder andere Funktion dieses Befehles genutzt wird.