Если есть вопросы по скриптам

  • Автор темы Автор темы Oleg Butrin
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Строка на JS. Все что в круглых скобках должно работать и на VB. Возвращает String.
Ок. Спасибо. Бум рыть.
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Строка на JS. Все что в круглых скобках должно работать и на VB. Возвращает String.

Глубокое бурение с тщательным просеиванием отвалов позволяет утверждать, что время потрачено зря.

Фазаны, говоришь... Петя. За мной!
 
Ответ: Если есть вопросы по скриптам

Enko сказал(а):
Глубокое бурение с тщательным просеиванием отвалов позволяет утверждать, что время потрачено зря.

Ну не стесняйтесь, ставьте задачу. Что нужно сделать? Как получить абзац в котором стоит курсор я вам показал. Что не получается?
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Как получить абзац в котором стоит курсор я вам показал. Что не получается?

Вы дали идею, но не ее воплощение. :)
А идея не работает. По крайней мере, на данный момент.

Сейчас остался только один вопрос из поставленных ранее: по месту курсора вычислить номер параграфа во фрейме. Без перебора всех параграфов, естественно.
И, само собой, как и прежде, на великом и могучем... VB. :)
 
Ответ: Если есть вопросы по скриптам

Enko, вы ужасный человек. 'rtfm' 'vottebe2'
Вот:
app.selection[0].paragraphs[0].index
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Enko, вы ужасный человек. 'rtfm' 'vottebe2'
Вот:
app.selection[0].paragraphs[0].index

Как много информации хлынуло! :) Просто селевый поток какой-то!

1. Без комментария. (Бороться с последствиями резкоконтинентального климата бесполезно.) :)
2. Узкий специалист подобен флюсу. (Кажись, Козьма Батькович...). :) Ну не растут у нас бананы! Тут Вам не Ямайка! (из конституции VB).
3. (Удалено. Внутренний цензор). :)

Резюме:
Вопрос снят.
 
Ответ: Если есть вопросы по скриптам

Ниче не понял, у вас получилось определить номер абзаца или нет?
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Вот:
app.selection[0].paragraphs[0].index
вообще-то, этот код (в CS2) вернет не номер абзаца, а кол-во charaсters с начала ParentStory до этого абзаца. Или в CS3 возвращает именно реальный индекс?

одно из решений тут

2 Enko перевести JS в VB не проблема (кроме "itembyrange", everyitem, "arrays" и прочее). Если же это вызывает затруднения, то бросайте это дело и займитесь чем-нибудь другим.
 
Ответ: Если есть вопросы по скриптам

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

В этом случае действительно можно использовать itembyrange.
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Действительно, возвращает количество символов. Прошу прощения, не проверил, не ожидал от адобы таких глупых багов.

В этом случае действительно можно использовать itembyrange.

1. Это не баг.
2. Невозможно получить информацию об объекте, запрашивая ее у иерархии, в которую этот объект не входит.
 
Ответ: Если есть вопросы по скриптам

Enko сказал(а):
2. Невозможно получить информацию об объекте, запрашивая ее у иерархии, в которую этот объект не входит.
Можно это пояснить? что подразумевается под объектом и т.д. Или это просто абстрактная фраза не имеющая отношения к вопросу "Текстовый инструмент (Т) вставлен между символами где-то в абзаце."?

Кстати, информацию об объекте всё равно можно получить, просто вернет Nothing/Null или ошибку :)
 
Ответ: Если есть вопросы по скриптам

Steve сказал(а):
Кстати, информацию об объекте всё равно можно получить, просто вернет Nothing/Null или ошибку :)

nil :D
 
Ответ: Если есть вопросы по скриптам

Steve сказал(а):
Можно это пояснить? что подразумевается под объектом и т.д.

После этого:

Steve сказал(а):
Если же это вызывает затруднения, то бросайте это дело и займитесь чем-нибудь другим.

— маловероятно.
:)
 
Ответ: Если есть вопросы по скриптам

2 Enko так можно услышать о каком объекте идет речь?

2 Specialist
мелкий JS-тест, закрыть все доки
app.documents.length вернет 0

что возвращает app.documents.item("prodtp")?

app.documents.item("prodtp")==null
true

а VB(S) вернет ошибку
The requested member of the collection does not exist.

причем тут nil?
 
Ответ: Если есть вопросы по скриптам

Steve сказал(а):
что возвращает app.documents.item("prodtp")?

Насколко я помню должно быть app.documents.item("prodtp.indd")
И если этот документ открыт вернет на него ссылку

Steve сказал(а):
app.documents.item("prodtp")==null
true

а VB(S) вернет ошибку
The requested member of the collection does not exist.

причем тут nil?
А что скрипт вам должен вернуть если пусто ':]
 
Ответ: Если есть вопросы по скриптам

toa1 сказал(а):
app.documents.item("prodtp.indd")
да, чуток неудачный пример (item(label) не всегда одинаково работает).
app.documents[0].rectangles.item("zaza1")

скрипт мне ничего не должен. я хотел узнать про какой nil говорит Specialist.

мда... скукотищща
 
Ответ: Если есть вопросы по скриптам

Steve сказал(а):
я хотел узнать про какой nil говорит Specialist.

мда... скукотищща

Про nil это была шутка. :) Помните был такой анекдот про хохлов?
- Знаешь как они наш null называют?
- ?
- nil!
- Поубивал бы!

Короче говоря, константа олицетворяющая пустой указатель на С называется null а на Дельфи - nil.
 
Ответ: Если есть вопросы по скриптам

Specialist сказал(а):
Короче говоря, константа олицетворяющая пустой указатель на С называется null а на Дельфи - nil.
Ага, а в InDesign SDK как раз используется nil. Где-то они его там задефайнили.
 
Ответ: Если есть вопросы по скриптам

Strizh сказал(а):
Ага, а в InDesign SDK как раз используется nil. Где-то они его там задефайнили.

Фигасе... А зачем? '8|'
 
Ответ: Если есть вопросы по скриптам

при взятии свойств текста во фрейме в CS3 выдается ошибка на строку:
PHP:
	findPreferences.fillColor = activeDocument.swatches.item("Red");
ошибка такая:
PHP:
Error number: 30621
Error string: Request failed because object is from a different document or workspace
цвет присутствует, публикация тоже, документ один, слой изменяемый, фрейм на полосе. Интерпретатор скрипта CS2.
в чем проблема, подскажите?
 
Статус
Закрыто для дальнейших ответов.