Das ist vielleicht eine blöde Frage, aber wie findet man die Bildbreite und -höhe in Pixeln?RMagick - wie finde ich die Pixel-Dimension eines Bildes
image.x_resolution
und image.y_resolution
beide zurück 0 aus irgendeinem Grund.
Das ist vielleicht eine blöde Frage, aber wie findet man die Bildbreite und -höhe in Pixeln?RMagick - wie finde ich die Pixel-Dimension eines Bildes
image.x_resolution
und image.y_resolution
beide zurück 0 aus irgendeinem Grund.
require 'rmagick'
img = Magick::Image.ping('demo.png').first
width = img.columns
height = img.rows
Hinweis .ping
Methode Kommentare importiert würden. Wenn Sie das Bild lesen müssen, um es zu verarbeiten, dann verwenden Sie Magick::Image.read('demo.png').first
- die Verwendung von ping
funktioniert in diesem Standalone-Code und beschleunigt die Verarbeitung für einige Bildtypen, in denen IM nur einen Headerblock lesen kann. Dies ist nützlich in Fällen, in denen Sie das Bild nicht selbst laden müssen, um daran arbeiten zu können.
Danke, mein Herr, das beantwortet meine Frage. – fiiv
Wenn Sie nur an den Bildmetadaten interessiert sind, sich aber nicht für die Pixeldaten interessieren, sollten Sie 'ping' anstelle von' read' verwenden. Siehe [die Doc-Seite] (http://www.imagemagick.org/RMagick/doc/ilist.html#ping) – Kelvin
Etwas sauberer imo: 'img = Magick :: Image.read ('demo.png') [0 ]; width, height = image.columns, image.rows' – mahemoff
Sie können die Bildabmessungen von img.inspect erhalten - Anweisungen enthalten bei http://www.imagemagick.org/RMagick/doc/image2.html
Ein Beispiel
f.inspect » "images/Flower_Hat.jpg JPEG 200x250 DirectClass 8-bit 9kb"
'x_resolution' und' y_resolution' sind Eigenschaften, die mit Ausgabegeräten zu tun haben - z.B. Pixel pro Zoll. –