Как получить размер слоя (ширина и высота)?

47

У меня есть несколько слоев в документе Photoshop.

Я хочу узнать, что такое ширина и высота конкретного слоя. Как мне это сделать?

Я вернусь
источник
4
Боже мой, как неловко для Adobe, что люди на самом деле должны спросить эти основные вещи о Photoshop. И еще более неловко, что, как профессиональный пользователь многих других инструментов (даже от Adobe), я и 63000 других должны искать его в Интернете. Adobe, очевидно, не дружит с юзабилити.
Alph.Dev

Ответы:

61

Опция 1.

У меня есть действие, которое делает это:

Cmd+ A, Cmd+ C, Cmd+N

Когда я запускаю это действие, я остаюсь с New document window. widthИ heightв окне являются буфером обмена размеры изображения = ваши объекты / размеры слоев.

Затем вы можете нажать, Escчтобы закрыть окно.

(На окнах подумай Cmdкак Ctrl)


Вариант 2

Вы можете сделать выделение слоя, например, ctrlили cmdщелкнув миниатюру слоя, а затем, глядя на info panel F8, он покажет вам размеры выделения.

введите описание изображения здесь

В верхнем правом углу, где вы можете видеть стрелку, указывающую вниз, вы можете найти параметры, а внутри вы можете установить ruler unitпиксели или то, что вы хотите, чтобы они отображались.


Вариант 3

Используйте Free transform Ctrl+, Tи когда свободное преобразование активно, проверьте, Info panel F8как показано выше. Это работает, даже если объект находится за пределами области документа.


Вот еще один ответ, который немного связан: Как измерить расстояния в .psd

Особенно в нижней части ответа, в которой перечислены методы экспорта стилей слоя в виде CSS, который, конечно, включает ширину и высоту.

Йонас
источник
Я испробовал все ваши методы, но кажется, что все они могли выдавать только размер документа (размер холста?), А не размер определенного слоя (у меня был выбран этот конкретный слой)
Philip007
1
@ Philip007 Вы уверены, что ваш слой не такого размера, как ваш документ?
Joonas
Теперь я понимаю, что происходит: «непослушный» слой - это умный объект, прежде чем я попытался проверить его размерность. Благодаря тому, что слои не превращаются в смарт-объекты, ваши методы полностью работают
Philip007
1
@ Philip007 Ну, я не уверен, что понимаю, что происходит. Смарт-объект должен быть так же легко измерить этими методами, как растровый слой. Иногда умный объект может быть даже лучше. Например: если к слою применен стиль слоя «Тень», тень не будет включена в размеры. Однако, если вы используете смарт-объект или растеризируете стиль слоя, вы сможете измерить слой с включенной тенью.
Joonas
Благодарность за падение теневой наконечник :) Что касается размерности, предположим , что слой является смарт - объектом, cmd-Tи cmd-clickслой миниатюр покажет различную ширину и высоту в панели Info, при условии , что canvas sizeи smart object sizeв самом деле различны. Я не могу вспомнить, что показывает, что, хотя, вы можете попробовать
Philip007
8

Для тех, кто хочет захватить ширину / высоту в один клик и скопировать его, я создал скрипт (на основе этого ответа ). Вы также можете привязать скрипт к горячей клавише, как описано ниже.


Шаг 1: Сохраните скрипт

Скопируйте приведенный ниже код и сохраните его в файле с именем «getLayerSize.jsx». При использовании Блокнота сохраните файл С двойными кавычками.

function getLayerSizeToCopy(){
    var layer = activeDocument.activeLayer; //Grab the currently selected layer

    // Calculate length and width based on the rectangular bounds of the selected layer
    var length = layer.bounds[2]-layer.bounds[0]; //Grab the length
    var width = layer.bounds[3]-layer.bounds[1]; //Grab the width

    // Remove pixels from the length/width "200 px" => "200"
    length = length.toString().replace(' px', '');
    width = width.toString().replace(' px', '');

    prompt( "Layer Size: ", length + ", " + width );
}
getLayerSizeToCopy();

Шаг 2: Создать действие

Откройте меню действий, если это еще не сделано («Окно»> «Действия»). Создайте группу, если вы предпочитаете. Добавить новое действие, вы можете установить клавишу F здесь.

привязка действия «Получить размер слоя» к клавише «F6»


Шаг 3: Запишите макрос, который запускает скрипт

Нажмите «Запись», чтобы начать запись событий для макроса. Затем запустите сценарий из меню «Файл»> «Сценарии»> «Обзор». Как только вы запустите его, закройте всплывающее окно с шириной / высотой. Теперь прекрати запись.


Законченный!

Проверьте макрос, нажав назначенную горячую клавишу, или запустите макрос вручную. Надеюсь, это работает!

Размер слоя многоугольника отображается во всплывающем окне

Примечание. Photoshop может запаздывать, если вместо одного слоя выбрано большое количество слоев или большая группа. Я не знаю, как это исправить, но просто подожди несколько минут, и это должно наверстать упущенное.


Поиск неисправностей:

Если вы получили ошибку сценария, убедитесь, что выбран слой, а не группа или корректирующий слой.

Если вы не видите сценарий для шага 3, убедитесь, что тип файла ".jsx". Windows может назвать его «.jsx.txt», который будет считаться текстовым файлом, и вы его не увидите.

Рэдли Сустер
источник