¿Obtener dimensiones en píxeles de un PNG en mi Mac?

20

Tengo un .PNGarchivo aleatorio en mi Mac. En realidad tengo alrededor de un centenar de ellos. ¿Cuál es la forma más fácil de obtener las dimensiones en píxeles? (Es decir, 100 píxeles de ancho y 50 de alto, o lo que sea).

William Jockusch
fuente
¿No aparece eso solo cuando ves las propiedades del archivo?
beatgammit
1
Hago clic derecho, luego hago clic en "Obtener información" y no lo veo.
William Jockusch

Respuestas:

35

En Terminal, puedes usar lo siguiente:

$ sips -g pixelWidth Pictures/238337225.png 
/Users/danielbeck/Pictures/238337225.png
  pixelWidth: 1140
$ sips -g pixelHeight Pictures/238337225.png 
/Users/danielbeck/Pictures/238337225.png
  pixelHeight: 900

Para extraer solo el valor, use eg

$ sips -g pixelHeight Pictures/238337225.png | tail -n1 | cut -d" " -f4
900

Para incrustar eso en AppleScript:

set h to do shell script "sips -g pixelHeight /Users/danielbeck/Pictures/238337225.png | tail -n1 | cut -d' ' -f4"
set w to do shell script "sips -g pixelWidth /Users/danielbeck/Pictures/238337225.png | tail -n1 | cut -d' ' -f4"
display alert "Height: " & (h as text) & "
Width: " & (w as text)

Resultado:

ingrese la descripción de la imagen aquí


Alternativamente, puede leer los metadatos de Spotlight:

mdls Pictures/238337225.png | grep kMDItemPixel
kMDItemPixelCount              = 1026000
kMDItemPixelHeight             = 900
kMDItemPixelWidth              = 1140

Para obtener los nombres y dimensiones de todos los archivos en un directorio:

$ mdls Pictures/* | grep "\(kMDItemDisplayName\|mMDItemPixel\)"
[...]
kMDItemDisplayName             = "url.png"
kMDItemPixelCount              = 16384
kMDItemPixelHeight             = 128
kMDItemPixelWidth              = 128
[...]

O alternativamente, usando findy sips:

find /Users/danielbeck/Pictures -type f -name "*.png" -exec sips -g pixelWidth {} \; -exec sips -g pixelHeight {} \;


Más flexibilidad, envolver en un script de shell:

$ cat dim.sh 
#!/usr/bin/env bash

filename=$1

if [ ! -f "$filename" ] ; then
    echo "$filename not found!";
    exit 1
fi

h=$( mdls "$filename" | grep kMDItemPixelHeight | tail -n1 | cut -d= -f2 )
w=$( mdls "$filename" | grep kMDItemPixelWidth | tail -n1 | cut -d= -f2 )

osascript -e "tell application \"Finder\" to {activate, display alert \"$filename\\nWidth:$w\\nHeight:$h\"}"

Resultado después de chmod +x dim/sh:

$ ./dim.sh Pictures/flying_cars.png

ingrese la descripción de la imagen aquí


Puede extender fácilmente el script para mostrar las dimensiones de varios archivos a la vez o, por ejemplo, todos los archivos png en un determinado directorio. La salida es como el cuadro de diálogo Finder, por lo que puede incrustarlo en un servicio de Automator:

Abra Automator y seleccione crear un Servicio que reciba archivos de imagen como entrada en cualquier aplicación .

Agregue una acción Ejecutar script de shell que recibe información como argumentos e ingrese lo siguiente:

dlg=
for f in "$@"
do
    h=$( mdls "$f" | grep kMDItemPixelHeight | tail -n1 | cut -d= -f2 )
    w=$( mdls "$f" | grep kMDItemPixelWidth | tail -n1 | cut -d= -f2 )
    dlg="$dlg$f\nW:$w H:$h\n"
done
osascript -e "tell application \"Finder\" to {activate, display alert \"$dlg\"}"
exit 0

Guardar como Mostrar dimensiones de imagen . Seleccione algunos archivos de imagen en Finder y seleccione Finder »Servicios» Mostrar dimensiones de imagen o Right-clicken uno de los archivos y [Servicios »] Mostrar dimensiones de imagen

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Daniel Beck
fuente
Oldie, pero sigue siendo un regalo!
Manngo
8

Busque el archivo en una ventana del Finder y:

  • Resalte el archivo y presione ⌘ Cmd+ ⌥ Option+ I, o

  • Mantenga presionada la tecla Control y haga clic en el archivo y manténgalo presionado ⌥ Optionpara que pueda seleccionar "Mostrar inspector".

Esto abrirá un inspector que es similar a la ventana Obtener información, pero se actualiza cada vez que selecciona un archivo.

Ahora expanda la sección "Más información" en el inspector. Podrá ver las dimensiones de PNG y la profundidad de color, entre otros datos. Seleccione un nuevo archivo para ver sus dimensiones en el inspector.

Una ventana de inspección que muestra el archivo resaltado en una ventana del Finder

Stephen Jennings
fuente
2
Lo extraño es que cuando abro esa ventana, lo que veo debajo de "más información" es Título, Título y Última apertura. . . pero sin dimensiones, espacio de color, perfil de color o canal alfa. Mi sistema operativo es 10.6.7 y mi Finder es la versión 10.6.8; ¿Podría ser el problema?
William Jockusch
2
Esta función depende de Spotlight para indexar la ubicación de la imagen. ¿La imagen está en una ubicación no indexada?
Stephen Jennings el
4

Esta es una vieja pregunta, pero para los lectores actuales, ahora hay una solución fácilmente disponible. En Yosemite, puede activar la "Mostrar columna de vista previa" en Finder. Finder> Ver> Mostrar opciones de vista

Aquí hay una captura de pantalla.

captura de pantalla.

Sergi
fuente
Lamentablemente, la pregunta se publicó en 2011 y Yosemite se lanzó en 2014
Francisco Tapia
1
Sí, fue el resultado de búsqueda número 1 cuando busqué la respuesta a este problema en Google, así que pensé que otros se beneficiarían de mi respuesta
Sergi
2

La forma más fácil; abre las imágenes en Safari.

Selecciona todas las imágenes. Luego use el Ctrlmenú contextual + Clic y elija Abrir con> Safari .

Opcionalmente, puede fusionar todos los menús de Safari abiertos en pestañas separadas utilizando la ventana del menú de Safari > Fusionar todas las ventanas .

La parte superior de la ventana de Safari muestra las dimensiones de la imagen: ingrese la descripción de la imagen aquí

David Kennedy de Zenopolis
fuente
Me parece realmente extraño que esta sea la única opción que funcionó para mí. ¿Por qué tengo que abrir un navegador para ver las dimensiones de la imagen? Esto es ridículo. Sin embargo
Michael,
0

Aquí se explica cómo usar el Finder para agregar una columna separada de 'Dimensiones' y 'Resolución' a la vista de lista de una carpeta.

  • Abre tu carpeta Imágenes. / Usuarios / ~ / Imágenes
  • Cree una nueva carpeta dentro de la carpeta Imágenes abierta. No arrastre uno desde otro lugar.
  • En esta nueva carpeta, en la vista de lista, haga clic con el botón derecho / opción y haga clic en la fila del encabezado de la columna.
  • Marque las dos opciones disponibles en la parte inferior del menú contextual, 'Dimensiones' y 'Resolución'.

Ahora la buena parte.

  • Arrastre esta nueva carpeta al escritorio (o donde sea) y ábrala.
  • Tenga en cuenta que la fila de encabezado modificada conserva los encabezados 'Dimensiones' y 'Resolución'.
  • Agregue archivos de imágenes a la carpeta y, en la vista de lista, lea la información de dimensiones y resoluciones para todos los archivos de imágenes a la vez y no una a la vez con los diversos métodos del panel de información.

A veces, la Resolución no se calcula o no está disponible y aparecerá un guión en la columna. Ver archivo adjunto.

Esto todavía funciona a partir de macOS Sierra 10.12.6 No sé si esta configuración de carpeta se queda cuando la carpeta se mueve a otra cuenta de usuario, carpeta de red, etc.

Captura de pantalla: Carpeta en vista de lista con columnas Dimensión y Resolución.

Peter Kleine
fuente
-1

Abra la imagen en la vista previa y luego vaya a herramientas> Mostrar inspector (⌘S). Aparecerá una ventana que muestra las dimensiones de la imagen con píxeles como unidad.

marca
fuente