Получить пиксельные размеры PNG на моем Mac?

У меня есть случайное .PNG файл на моем Mac. На самом деле у меня есть приблизительно сто из них. Что самый легкий путь состоит в том, чтобы получить пиксельные размеры? (Т.е., 100 пикселей шириной и 50 высоких, или безотносительно).

20
задан 30.09.2014, 10:34

3 ответа

В Терминале можно использовать следующее:

$ 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

Для извлечения значения только используйте, например.

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

Встроить это в 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)

Результат:

enter image description here


С другой стороны, можно считать метаданные Центра внимания:

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

Получить имена и размеры всех файлов в каталоге:

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

Или альтернативно, использование find и sips:

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


Больше больше гибкости, перенеситесь в сценарии оболочки:

$ 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\"}"

Результат после chmod +x dim/sh:

$ ./dim.sh Pictures/flying_cars.png

enter image description here


Вы могли легко расширить сценарий до размеров дисплея для нескольких файлов сразу, или например, всех png файлов в определенном каталоге. Вывод как диалоговое окно Средства поиска, таким образом, можно встроить его в услуги Automator:

Откройте Automator и выбор для создания Сервиса, который получает файлы изображений, как введено в любом приложении.

Добавьте действие Сценария оболочки Выполнения, которое получает вход как аргументы, и введите следующее:

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

Сохраните как Выставочные Размеры изображения. Выберите несколько файлов изображений в Средстве поиска и выберите Средство поиска» Сервисы» Выставочные Размеры изображения или Right-click на одном из файлов и [Сервисы»] Выставочные Размеры изображения

enter image description here

enter image description here

35
ответ дан 07.12.2019, 10:09

Найдите файл в окне Finder, и также:

  • Выделите файл и нажмите ⌘ Cmd + ⌥ Опция + я, или

  • Щелчок управления файл и содержит ⌥ Опцию, таким образом, можно выбрать "Выставочного Инспектора".

Это откроет инспектора, который подобен окну Get Info, но обновляет каждый раз, когда Вы выбираете файл.

Теперь разверните раздел "More info" по инспектору. Вы сможете видеть размеры PNG и глубину цвета среди других данных. Выберите новый файл для наблюдения его размеров в инспекторе.

An inspector window showing the highlighted file in a Finder window

8
ответ дан 07.12.2019, 10:09

Самый легкий путь; откройте изображения в Safari.

Выберите все изображения. Затем используйте контекстное меню Ctrl+Click и выберите Open With> Safari.

Дополнительно можно объединить все открытые меню Safari вместе в отдельные вкладки с помощью окна меню Safari> Слияние Весь Windows.

Вершина окна Safari отображает размеры изображения: enter image description here

2
ответ дан 07.12.2019, 10:09

Теги

Похожие вопросы