Мой сценарий Adobe Illustrator не работает должным образом ⇐ Javascript
-
Гость
Мой сценарий Adobe Illustrator не работает должным образом
Привет всем, я новичок на этой платформе. честно говоря, я не знаю, как писать код JavaScript, и попросил чатгпт сделать это за меня он работает нормально, за исключением того факта, что когда я ввожу имя слоя, он должен скопировать и вставить его в центр круга, но он не распознает слой и продолжает выдавать мне ошибку, что этот слой не существует
ЭТО СООБЩЕНИЕ, КОТОРОЕ Я ОТПРАВИЛ В CHATGPT
здравствуйте, пожалуйста, напишите мне код на JavaScript для Adobe ilistratur. Прежде всего, когда вы нажимаете на скрипт, он должен открыть диалоговое окно, содержащее текстовый ввод, кнопку «Отправить», кнопку «Далее» и кнопку « Кнопка выхода. Уже открыто 36 кругов, и их имена меняются от «круг1» до «круг36». Когда текстовый ввод заполняется словом, пользователь должен нажать кнопку «Отправить», чтобы сценарий начал выполнять свою задачу, сценарии Задача состоит в том, что при нажатии кнопки отправки скрипт должен искать слой с тем же именем, которое пользователь ввел при вводе текста, затем скрипт должен скопировать его и вставить в центр «круга1». когда пользователь нажимает следующую кнопку, текстовый ввод должен быть очищен и дождаться следующего заказа, но на этот раз он должен поместить слой с тем же именем, которое пользователь ввел при текстовом вводе, в центре «circle2». каждый раз, когда пользователь нажимает следующую клавишу, скрипт должен вставить выбранный слой в центр следующего круга в следующем порядке: («круг1»), («круг2»), («круг3»), («круг4»), ("круг5"), ("круг6"), ("круг7"), ("круг8"), ("круг9"), ("круг10"), ("круг11"), ("круг12"), (" круг13"), ("круг14"), ("круг15"), ("круг16"), ("круг17"), ("круг18"), ("круг19"), ("круг20"), ("круг21" ),("круг22"), ("круг23"), ("круг24"), ("круг25"),("круг26"), ("круг27"), ("круг28"), ("круг29"), ("круг30"), ("круг31"), ("круг32"), ("круг33"), ("круг34"), ("круг35"), ("круг36").и кнопка выхода должна закрыть скрипт
И ЭТО КОД, КОТОРЫЙ МНЕ ДАЕТ CHATGPT
varcircleIndex = 1; функция showDialog() { вар диалог = новое окно('диалог', 'Мой скрипт'); var input = диалог.add('edittext', undefined, ''); var submitButton = диалог.add('кнопка', неопределенное, 'Отправить'); var nextButton = диалог.add('кнопка', не определено, 'Далее'); var exitButton = диалог.add('кнопка', не определено, 'Выход'); submitButton.onClick = функция() { пытаться { вар LayerName = input.text; вар документ = app.activeDocument; // Проверяем, существует ли слой for (var i = 0; i < doc.layers.length; i++) { if (doc.layers.name === LayerName) { вар слой = doc.layers; перерыв; } } если (!слой) { alert("Слой с именем " + LayerName); возвращаться; } // Проверяем, существует ли круг for (var i = 0; i < doc.layers.length; i++) { if (doc.layers.name === 'circle' + CircleIndex) { вар круг = doc.layers; перерыв; } } если (!круг) { alert("Круг с именем " не найден" + 'circle' + CircleIndex); возвращаться; } // Вычисляем центр круга вар CircleBounds = Circle.visibleBounds; var CircleCenter = [(circleBounds[0] + CircleBounds[2]) / 2, (circleBounds[1] + CircleBounds[3]) / 2]; // Дублируем слой на круг вар newLayer = Layer.duulate(круг, ElementPlacement.PLACEATBEGINNING); // Рассчитываем размеры нового слоя вар LayerBounds = newLayer.visibleBounds; вар LayerWidth = LayerBounds[2] - LayerBounds[0]; вар LayerHeight = LayerBounds[1] - LayerBounds[3]; // Размещаем новый слой в центре круга newLayer.position = [circleCenter[0] - LayerWidth / 2, CircleCenter[1] - LayerHeight / 2]; } поймать (е) { alert("Произошла ошибка: " + e.message); } }; nextButton.onClick = функция() { input.text = ''; кругИндекс++; }; exitButton.onClick = функция() { диалог.закрыть(); }; диалог.шоу(); } показатьДиалог(); ЭТО СНИМОК ЭКРАНА СКРИПТА, ВЫДАЮЩЕГО ОШИБКУ В ADOBE ILUSTRATURE снимок экрана
здравствуйте, пожалуйста, напишите мне код на JavaScript для Adobe ilistratur. Прежде всего, когда вы нажимаете на скрипт, он должен открыть диалоговое окно, содержащее текстовый ввод, кнопку «Отправить», кнопку «Далее» и кнопку « Кнопка выхода. Уже открыто 36 кругов, и их имена меняются от «круг1» до «круг36». Когда текстовый ввод заполняется словом, пользователь должен нажать кнопку «Отправить», чтобы сценарий начал выполнять свою задачу, сценарии Задача состоит в том, что при нажатии кнопки отправки скрипт должен искать слой с тем же именем, которое пользователь ввел при вводе текста, затем скрипт должен скопировать его и вставить в центр «круга1». когда пользователь нажимает следующую кнопку, текстовый ввод должен быть очищен и дождаться следующего заказа, но на этот раз он должен поместить слой с тем же именем, которое пользователь ввел при текстовом вводе, в центре «circle2». каждый раз, когда пользователь нажимает следующую клавишу, скрипт должен вставить выбранный слой в центр следующего круга в следующем порядке: («круг1»), («круг2»), («круг3»), («круг4»), ("круг5"), ("круг6"), ("круг7"), ("круг8"), ("круг9"), ("круг10"), ("круг11"), ("круг12"), (" круг13"), ("круг14"), ("круг15"), ("круг16"), ("круг17"), ("круг18"), ("круг19"), ("круг20"), ("круг21" ),("круг22"), ("круг23"), ("круг24"), ("круг25"),("круг26"), ("круг27"), ("круг28"), ("круг29"), ("круг30"), ("круг31"), ("круг32"), ("круг33"), ("круг34"), ("круг35"), ("круг36").и кнопка выхода должна закрыть скрипт
Привет всем, я новичок на этой платформе. честно говоря, я не знаю, как писать код JavaScript, и попросил чатгпт сделать это за меня он работает нормально, за исключением того факта, что когда я ввожу имя слоя, он должен скопировать и вставить его в центр круга, но он не распознает слой и продолжает выдавать мне ошибку, что этот слой не существует
ЭТО СООБЩЕНИЕ, КОТОРОЕ Я ОТПРАВИЛ В CHATGPT
здравствуйте, пожалуйста, напишите мне код на JavaScript для Adobe ilistratur. Прежде всего, когда вы нажимаете на скрипт, он должен открыть диалоговое окно, содержащее текстовый ввод, кнопку «Отправить», кнопку «Далее» и кнопку « Кнопка выхода. Уже открыто 36 кругов, и их имена меняются от «круг1» до «круг36». Когда текстовый ввод заполняется словом, пользователь должен нажать кнопку «Отправить», чтобы сценарий начал выполнять свою задачу, сценарии Задача состоит в том, что при нажатии кнопки отправки скрипт должен искать слой с тем же именем, которое пользователь ввел при вводе текста, затем скрипт должен скопировать его и вставить в центр «круга1». когда пользователь нажимает следующую кнопку, текстовый ввод должен быть очищен и дождаться следующего заказа, но на этот раз он должен поместить слой с тем же именем, которое пользователь ввел при текстовом вводе, в центре «circle2». каждый раз, когда пользователь нажимает следующую клавишу, скрипт должен вставить выбранный слой в центр следующего круга в следующем порядке: («круг1»), («круг2»), («круг3»), («круг4»), ("круг5"), ("круг6"), ("круг7"), ("круг8"), ("круг9"), ("круг10"), ("круг11"), ("круг12"), (" круг13"), ("круг14"), ("круг15"), ("круг16"), ("круг17"), ("круг18"), ("круг19"), ("круг20"), ("круг21" ),("круг22"), ("круг23"), ("круг24"), ("круг25"),("круг26"), ("круг27"), ("круг28"), ("круг29"), ("круг30"), ("круг31"), ("круг32"), ("круг33"), ("круг34"), ("круг35"), ("круг36").и кнопка выхода должна закрыть скрипт
И ЭТО КОД, КОТОРЫЙ МНЕ ДАЕТ CHATGPT
varcircleIndex = 1; функция showDialog() { вар диалог = новое окно('диалог', 'Мой скрипт'); var input = диалог.add('edittext', undefined, ''); var submitButton = диалог.add('кнопка', неопределенное, 'Отправить'); var nextButton = диалог.add('кнопка', не определено, 'Далее'); var exitButton = диалог.add('кнопка', не определено, 'Выход'); submitButton.onClick = функция() { пытаться { вар LayerName = input.text; вар документ = app.activeDocument; // Проверяем, существует ли слой for (var i = 0; i < doc.layers.length; i++) { if (doc.layers.name === LayerName) { вар слой = doc.layers; перерыв; } } если (!слой) { alert("Слой с именем " + LayerName); возвращаться; } // Проверяем, существует ли круг for (var i = 0; i < doc.layers.length; i++) { if (doc.layers.name === 'circle' + CircleIndex) { вар круг = doc.layers; перерыв; } } если (!круг) { alert("Круг с именем " не найден" + 'circle' + CircleIndex); возвращаться; } // Вычисляем центр круга вар CircleBounds = Circle.visibleBounds; var CircleCenter = [(circleBounds[0] + CircleBounds[2]) / 2, (circleBounds[1] + CircleBounds[3]) / 2]; // Дублируем слой на круг вар newLayer = Layer.duulate(круг, ElementPlacement.PLACEATBEGINNING); // Рассчитываем размеры нового слоя вар LayerBounds = newLayer.visibleBounds; вар LayerWidth = LayerBounds[2] - LayerBounds[0]; вар LayerHeight = LayerBounds[1] - LayerBounds[3]; // Размещаем новый слой в центре круга newLayer.position = [circleCenter[0] - LayerWidth / 2, CircleCenter[1] - LayerHeight / 2]; } поймать (е) { alert("Произошла ошибка: " + e.message); } }; nextButton.onClick = функция() { input.text = ''; кругИндекс++; }; exitButton.onClick = функция() { диалог.закрыть(); }; диалог.шоу(); } показатьДиалог(); ЭТО СНИМОК ЭКРАНА СКРИПТА, ВЫДАЮЩЕГО ОШИБКУ В ADOBE ILUSTRATURE снимок экрана
здравствуйте, пожалуйста, напишите мне код на JavaScript для Adobe ilistratur. Прежде всего, когда вы нажимаете на скрипт, он должен открыть диалоговое окно, содержащее текстовый ввод, кнопку «Отправить», кнопку «Далее» и кнопку « Кнопка выхода. Уже открыто 36 кругов, и их имена меняются от «круг1» до «круг36». Когда текстовый ввод заполняется словом, пользователь должен нажать кнопку «Отправить», чтобы сценарий начал выполнять свою задачу, сценарии Задача состоит в том, что при нажатии кнопки отправки скрипт должен искать слой с тем же именем, которое пользователь ввел при вводе текста, затем скрипт должен скопировать его и вставить в центр «круга1». когда пользователь нажимает следующую кнопку, текстовый ввод должен быть очищен и дождаться следующего заказа, но на этот раз он должен поместить слой с тем же именем, которое пользователь ввел при текстовом вводе, в центре «circle2». каждый раз, когда пользователь нажимает следующую клавишу, скрипт должен вставить выбранный слой в центр следующего круга в следующем порядке: («круг1»), («круг2»), («круг3»), («круг4»), ("круг5"), ("круг6"), ("круг7"), ("круг8"), ("круг9"), ("круг10"), ("круг11"), ("круг12"), (" круг13"), ("круг14"), ("круг15"), ("круг16"), ("круг17"), ("круг18"), ("круг19"), ("круг20"), ("круг21" ),("круг22"), ("круг23"), ("круг24"), ("круг25"),("круг26"), ("круг27"), ("круг28"), ("круг29"), ("круг30"), ("круг31"), ("круг32"), ("круг33"), ("круг34"), ("круг35"), ("круг36").и кнопка выхода должна закрыть скрипт
Мобильная версия