[ID CC-CC2021] Fit spread in window с пользовательским процентом, как?

Статус
Закрыто для дальнейших ответов.

Slx1

Топикстартер
15 лет на форуме
Сообщения
944
Реакции
106
Господа, можно ли сделать Fit spread in window но со своим процентом увеличения?

Я знаю есть Zoom to 140%, но он, зараза, если что то выделено отрабатывает от выделенного

Спасибо зарарнее
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
app.activeWindow.zoom(ZoomOptions.FIT_SPREAD);
app.activeWindow.zoomPercentage = сколько надо;

по идее так.
если selection мешается, можно его в скрипте в принципе снять а потом обратно сделать после зума
 
Последнее редактирование:
  • Спасибо
Реакции: Slx1

Slx1

Топикстартер
15 лет на форуме
Сообщения
944
Реакции
106
app.activeWindow.zoom(ZoomOptions.FIT_SPREAD);
app.activeWindow.zoomPercentage = сколько надо;

по идее так.
если selection мешается, можно его в скрипте в принципе снять а потом обратно сделать после зума

Селект мешает
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Код:
var a = app.selection.slice(0);

app.selection = NothingEnum.NOTHING;

app.activeWindow.zoom(ZoomOptions.FIT_SPREAD);

app.activeWindow.zoomPercentage = 140;

app.selection = a;
 
  • Спасибо
Реакции: Slx1

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
А почему нельзя просто var a = app.selection ?
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Ну это не литерал, а массив потому что. Через = присвоится референс, и в a окажется ничто после снятия выделения.
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
но вообще и так работает '))'
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну да, и по идее так и должно быть в JS

var flash = [8,8,8];
var quicksilver = flash; //assign-by-reference
quicksilver.push(0);
console.log(flash); //[8,8,8,0]
console.log(quicksilver); //[8,8,8,0]

в случае с селекшн undefined просто присваивается референсу, а массив не теряется, так как на него есть сохраненный референс, вот в чем дело
 
Последнее редактирование:

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну у меня нет, по центру спреда зум в 2020
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
В кореловском VBA на селекшн именно референс, а у адобы копия. В противном случае не работал бы цикл по выбранным обьектам в ходе которого выделение меняется.
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
В кореловском VBA на селекшн именно референс, а у адобы копия. В противном случае не работал бы цикл по выбранным обьектам в ходе которого выделение меняется.
А откуда ему знать, селекшен там или что еще, это массив обычный ) не коллекция
 

Slx1

Топикстартер
15 лет на форуме
Сообщения
944
Реакции
106
Господа, можно ли поправить скрипт чтобы свои значения зума были не абсолютные, а относительные?
То есть сначала получаем Fit spread in window текущего документа и от них -5% например

А то сейчас для каждого документа приходить какдый раз скрипт редактировать)
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
app.activeWindow.zoomPercentage = app.activeWindow.zoomPercentage -5;

?
 
  • Спасибо
Реакции: Slx1

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
*0,95
?
 
  • Спасибо
Реакции: Slx1

Slx1

Топикстартер
15 лет на форуме
Сообщения
944
Реакции
106
Супер спасибо!
Работает!)
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Но вообще тут неоднозначно сформулировано. Если после 90 хочется получить 85%, умножение на 0.95 этого не даст
 
Статус
Закрыто для дальнейших ответов.