Seite 1 von 1

Suche (verzwifelt) PythonMagick-Dokumentation

Verfasst: Mittwoch 4. März 2009, 21:18
von ichbinsisyphos
Kennt jemand was?

PythonMagick ist in meiner Distribution normal erhältlich, scheint also noch betreut zu werden.

Aber ich find beim besten Willen keine Doku/Tutorials/Beispiele.

Verfasst: Mittwoch 4. März 2009, 21:40
von DasIch
dir() und help() kennst du?

Verfasst: Mittwoch 4. März 2009, 22:20
von problembär
Hi,

ich schätze mal, das wird ähnlich laufen wie PerlMagick:

http://www.imagemagick.org/script/perl-magick.php

Gruß

Verfasst: Samstag 7. März 2009, 22:05
von ichbinsisyphos
DasIch hat geschrieben:dir() und help() kennst du?
ja kenn ich, hilft aber nicht wirklich weiter.
problembär hat geschrieben:Hi,

ich schätze mal, das wird ähnlich laufen wie PerlMagick:

http://www.imagemagick.org/script/perl-magick.php

Gruß
Na, ich weiß ned recht, sieht schon sehr eigen aus :-)


Seltsam, anscheinend gibts wirklich keine Doku, die beiden sites, die auf python.org gelinkt sind, sind offline. Macht eigentlich den Eindruck, als ob sich keiner mehr was um das Programm schert.

Verfasst: Samstag 7. März 2009, 22:30
von Leonidas
ichbinsisyphos hat geschrieben:Macht eigentlich den Eindruck, als ob sich keiner mehr was um das Programm schert.
In Python nutzt man ja auch eher PIL. Ich habe seinerzeit auch versucht GD zu verwenden, was scheinbar im PHP-Umfeld populär ist, aber unter Python hat das keinen interessiert und die Bindings die ich probiert hatte kompilierten nicht.

Verfasst: Samstag 7. März 2009, 22:34
von ichbinsisyphos
Leonidas hat geschrieben:
ichbinsisyphos hat geschrieben:Macht eigentlich den Eindruck, als ob sich keiner mehr was um das Programm schert.
In Python nutzt man ja auch eher PIL. Ich habe seinerzeit auch versucht GD zu verwenden, was scheinbar im PHP-Umfeld populär ist, aber unter Python hat das keinen interessiert und die Bindings die ich probiert hatte kompilierten nicht.
Hälst du die Python Image(ing?) Library für gleichwertig mit ImageMagick? Ich hab gehört, dass die zum Beispiel nur 8-bit Farben unterstützt und ähnliche schreckliche Dinge, ist aber schon Jahre her.

Verfasst: Samstag 7. März 2009, 23:03
von BlackJack
Was meinst Du mit "8-Bit-Farben"? 8 Bit pro Farbkanal, ja, aber das reicht doch für die meisten Anwendungen aus.

Verfasst: Samstag 7. März 2009, 23:20
von ichbinsisyphos
BlackJack hat geschrieben:Was meinst Du mit "8-Bit-Farben"? 8 Bit pro Farbkanal, ja, aber das reicht doch für die meisten Anwendungen aus.
nein, 8 bit insgesamt, 256 farben.
Bin mir aber eh nicht sicher, ich hatte nur im Hinterkopf, dass die PIL mies ist.

Jetzt, wo ich etwas damit experimentiert habe, scheint sie für einfache Anwendungen ok zu sein.
Meist brauch ich nicht mehr als beschneiden, Größe ändern und mehrere Bilder zu einem zusammenfügen.

PIL ist bei weitem nicht so komfortabel wie ImageMagick in der Konsole, aber immer noch besser als ImageMagick mit subprocess in Python einzubinden.

Verfasst: Sonntag 8. März 2009, 02:23
von problembär
Hi,
Na, ich weiß ned recht, sieht schon sehr eigen aus
Wenn es in Perl z.B. heißt

Code: Alles auswählen

$x = image->Crop(geometry=>'100x100+100+100');
ist es in Python etwa

Code: Alles auswählen

x = image.crop(geometry = '100x100+100+100')
Ist doch nicht so schwer.

Ich nutze auch oft

Code: Alles auswählen

os.system("convert a.png a.jpg")
Ist in einfachen Fällen auch ausreichend. Dann braucht man kein Modul. Obwohl's natürlich etwas uncool ist. Aber es geht.

Gruß

Verfasst: Sonntag 8. März 2009, 10:19
von lunar
subprocess, nicht os.system, das hatte der OP schon festgestellt.

Verfasst: Sonntag 8. März 2009, 22:04
von ichbinsisyphos
problembär hat geschrieben:Hi,
Na, ich weiß ned recht, sieht schon sehr eigen aus
Wenn es in Perl z.B. heißt

Code: Alles auswählen

$x = image->Crop(geometry=>'100x100+100+100');
ist es in Python etwa

Code: Alles auswählen

x = image.crop(geometry = '100x100+100+100')
Ist doch nicht so schwer.

Ich nutze auch oft

Code: Alles auswählen

os.system("convert a.png a.jpg")
Ist in einfachen Fällen auch ausreichend. Dann braucht man kein Modul. Obwohl's natürlich etwas uncool ist. Aber es geht.

Gruß
Ja, mit subprocess hab ich bisher gearbeitet, hat aber seine Nachteile: temp-files und mühsamer syntax.

Ohne vernünftige Dokumentation für PythonMagick müsst ich zuerst PerlMagick lernen und in PythonMagick übersetzen. Dazu kommt noch, dass sich die beiden bindings nicht an der Konsolen-Variante von ImageMagick orientieren, sondern an der C++-Schnittstelle MagickWand.

Das ist mir dann doch zu aufwendig, hab ein relativ heftiges Semester vor mir, vielleicht find ich in den nächsten Weihnachtsferien Zeit :lol:

Ich nehm jetzt die PIL, ist wenigstens gut dokumentiert. +/-append fehlt mir allerdings jetzt schon.
Und ANTIALIAS sollte der Standard-Resizing-Filter sein, meiner Meinung nach.

Verfasst: Montag 9. März 2009, 01:27
von lunar
ichbinsisyphos hat geschrieben:Ja, mit subprocess hab ich bisher gearbeitet, hat aber seine Nachteile: temp-files und mühsamer syntax.
Wieso benötigt man da temporäre Dateien? ImageMagick kann sowohl von der Standardeingabe lesen als auch auf die Standardausgabe ausgeben ...

Verfasst: Dienstag 10. März 2009, 20:50
von ichbinsisyphos
lunar hat geschrieben:
ichbinsisyphos hat geschrieben:Ja, mit subprocess hab ich bisher gearbeitet, hat aber seine Nachteile: temp-files und mühsamer syntax.
Wieso benötigt man da temporäre Dateien? ImageMagick kann sowohl von der Standardeingabe lesen als auch auf die Standardausgabe ausgeben ...
Angenommen du hast 20 Diagramme und willst sie in einem 4x5-Raster anordnen. Wie machst du das ohne temp-files? :D
Du musst schonmal alle Einzelbilder speichern und danach jede Spalte oder Zeile und das Endprodukt.

Manipulationen an einzelnen Bildern kann ich mir vorstellen, obwohl ich das noch nie probiert hab.

Mit PIL kann ich jetzt im selben Skript meine Brechnungen machen, plotten, die matplotlib-plots in PIL-Bild-Objekte umwandeln, dann auf einem neuen, größeren Bild anordnen ohne irgendwelche Zwischenspeicherung.

Ich bin mir sicher, dass die unterschiedlichen ImageMagick-bindings ähnliches erlauben.

Verfasst: Dienstag 10. März 2009, 20:57
von lunar
ichbinsisyphos hat geschrieben:
lunar hat geschrieben:
ichbinsisyphos hat geschrieben:Ja, mit subprocess hab ich bisher gearbeitet, hat aber seine Nachteile: temp-files und mühsamer syntax.
Wieso benötigt man da temporäre Dateien? ImageMagick kann sowohl von der Standardeingabe lesen als auch auf die Standardausgabe ausgeben ...
Angenommen du hast 20 Diagramme und willst sie in einem 4x5-Raster anordnen. Wie machst du das ohne temp-files? :D
Point taken ... ich hab schlicht nicht daran gedacht, dass man auch mal mehrere Bilder verarbeiten möchte :)