Можно ли изменить размер текстового фрейма в фотошопе так же, как в Indesign?

В Indesign вы можете дважды щелкнуть углы текстового фрейма, и ваше текстовое поле будет обрезано, чтобы фрейм был того же размера, что и текст. Кто-нибудь из вас знает, есть ли у вас подобная функция в Photoshop?

Если я вас неправильно понимаю, текстовый фрейм в Photoshop всегда имеет размер ограничивающей рамки текста. Изменение размера окна изменяет размер текста, а не только рамки.
@Tetsujin OP относится к фрейму текстового поля с текстом внутри, а не к обычному «щелкни и набери текстовый фрейм».
@ Энн, есть скрипт , который делает это, но он платный, может быть, кто-то здесь его знает.
Между прочим, InDesign может сделать больше: вы можете установить для текстовых полей значение «Автоматическая высота», чтобы они всегда соответствовали содержимому, какие бы изменения ни вносились. Возможности набора текста в Photoshop нельзя сравнить с возможностями InDesign.

Ответы (2)

Вы можете сделать это, преобразовав текст абзаца в точечный текст, а затем обратно в текст абзаца. Type > Convert to point textи Type > Convert to paragraph text. Этот метод не очень точен. Он оставляет часть пустого пространства в текстовом фрейме.


Вы можете получить что-то более полезное со сценариями. Я сделал этот скрипт только для собственного использования, поэтому он немного грубоват:

  • Эта часть: active.textItem.height = 10000;(строка 9) по сути просто делает текстовый фрейм смехотворно высоким, прежде чем завершить изменение размера текстового фрейма, чтобы скрытый текст был включен в изменение размера. Если его удалить, сценарий просто изменит размер до видимого, оставив скрытый текст в покое.

  • Поток текста может иногда немного смещаться. Это происходит в GIF во время 4-го запуска, прежде чем я перемещаю панель. Из-за этого размер текстового поля не изменяется идеально, но повторный запуск скрипта в этой ситуации решает эту проблему.

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


// Fit Text Frame To Content.jsx

var rulerUnits = app.preferences.rulerUnits;
app.preferences.rulerUnits = Units.POINTS;

var doc = app.activeDocument;
var active = doc.activeLayer;

active.textItem.height = 10000;

var bounds = active.boundsNoEffects;
var top = bounds[1].value;
var right = bounds[2].value;
var bottom = bounds[3].value;
var left = bounds[0].value;

var width = right - left;
var height = bottom - top;

active.textItem.width = width;
active.textItem.height = height;

app.preferences.rulerUnits = rulerUnits;

Вы можете запускать скрипты с помощью ярлыка, поместив их в Photoshop 2021/scripts/папку, перезапустив PS, а затем дав ему ярлык из Edit > Keyboard shortcuts...и в этом окне Shortcuts for: Application menus (dropdown) > (below) File > Scripts (you have to scroll down quite a bit). Тогда просто дайте ему ярлык. Когда вы помещаете сценарии в папку сценариев, вы также можете запускать их из пути меню File > Scripts > ..., где вы также можете увидеть ярлык, который вы ему даете, если вы это сделаете.

Еще один способ запуска скриптов — запись действия, при котором вы просто запускаете скрипт (так, как я это сделал на гифке): Начните записывать новое действие, затем либо запускайте его из списка, либо запускайте из любого места на File > Scripts > ...жестком диске File > Scripts > Browse .

У меня также был включен режим кнопок на панели «Действия». Просто откройте угловое меню на панели «Действия» и выберите Button mode. Это может быть удобно, но, к вашему сведению, вы также можете запускать действия в обычном режиме, дважды щелкнув действие, если вы нажмете Ctrl (в Windows) или CMD (в Mac).

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