Vor kurzem hatte ich das Bedürfnis Bilder automatisiert, mit Hilfe eines Ruby-Scripts, zu verkleinern. Dieses Script sollte zudem ohne Änderungen sowohl auf Linux als auch auf Windows lauffähig sein.
Fuer diese Aufgabe ist Imagemagick natürlich ein super Werkzeug, da man es auch als Bibliothek von Ruby aus nutzen kann und auch für Windows verfuegbar ist. Unter Windows ist hierfür eine Installation von Ruby, sowie die Installation von Imagemagick und dem passenden RMagick Ruby-Gem notwendig. Unter Linux reicht es Imagamagick und Ruby mit dem Paketmanager seiner Wahl zu installieren und mittels "gem install rmagick" das Gem zu installieren.
Der eigentliche Code gestaltet sich relativ simpel. Prinzipiell lässt sich ein Bild mit wenigen Anweisungen verkleinern:
#!/usr/bin/env ruby
require 'rubygems'
require 'RMagick'
@debug = true
def resize_image(file)
puts "let's resize #{file} ..." if @debug
img = Magick::Image::read(file).first
img.resize_to_fit(1024, 1024)
img.write(file)
puts "resizing of #{file} successful" if @debug
end
Die Methode resize_to_fit() sorgt hier für das Verkleinern auf bestimmte Maximalwerte in Länge und Breite. Weiteres erfährt man aus der Doku.
"Unter Windows reicht es Imagamagick und Ruby mit dem Paketmanager seiner Wahl..."
Seit wann hat Windows einen Paketmanager? ![]()
Grüße


