Лично мне Visual Basic подходит по следующим причинам:
1. Встроенный отладчик
2. Понятный и легкий в освоении (и чтении) синтаксис
3. Несравнимо большие возможности создания пользовательских интерфейсов.
4. Возможность создания "связок" не только с программами Adobe, но и с другими программами, например, MS Office или Corel.
5. Возможность работы с реестром.
6. Парсинг XML.
И т. д.
Кроме всего прочего, уже встречались ситуации, когда на Visual Basic можно было сделать то, что никакими доступными путями на JS сделать не удавалось.
На самом деле, у JS главное достоинство - кроссплатформенность. Но таковая (при ~5% присутствии Mac в России) не очень востребована.
Однако, как филолог скажу: лучше знать два языка, чем ни одного.
Я лично каждый раз пытаюсь сделать "параллельные" скрипты, т. е. и на VB, и на JS.
Олег, как продвигается обзор? Я свою часть закончил, меня пока в аське не найти - ремонт в кабинете, но мылом отыщусь легко Я заикнулся о проекте в рудтпешной рассылке и, как понял, интерес к нашему проекту есть. Надо будет обсудить план практической части, я пока думаю сделать это в своеобразном "диалоге" языков, то есть параллельные разборы на JS и VBS. Тут набросали адресов любителей AS, может быть, добавлю обзор и по нему. Думаю, неплохо было бы и схему иерархии объектов составить, но здороваяяяяя получится, мама не горюй. Вот такие дела.
1. Встроенный отладчик
2. Понятный и легкий в освоении (и чтении) синтаксис
3. Несравнимо большие возможности создания пользовательских интерфейсов.
4. Возможность создания "связок" не только с программами Adobe, но и с другими программами, например, MS Office или Corel.
5. Возможность работы с реестром.
6. Парсинг XML.
И т. д.
Кроме всего прочего, уже встречались ситуации, когда на Visual Basic можно было сделать то, что никакими доступными путями на JS сделать не удавалось.
На самом деле, у JS главное достоинство - кроссплатформенность. Но таковая (при ~5% присутствии Mac в России) не очень востребована.
Однако, как филолог скажу: лучше знать два языка, чем ни одного.
Я лично каждый раз пытаюсь сделать "параллельные" скрипты, т. е. и на VB, и на JS.
Олег, как продвигается обзор? Я свою часть закончил, меня пока в аське не найти - ремонт в кабинете, но мылом отыщусь легко Я заикнулся о проекте в рудтпешной рассылке и, как понял, интерес к нашему проекту есть. Надо будет обсудить план практической части, я пока думаю сделать это в своеобразном "диалоге" языков, то есть параллельные разборы на JS и VBS. Тут набросали адресов любителей AS, может быть, добавлю обзор и по нему. Думаю, неплохо было бы и схему иерархии объектов составить, но здороваяяяяя получится, мама не горюй. Вот такие дела.
Вопрос попутный, если можно!
1. Как поместить текстовый файл в уже созданный фрейм?
var myDocument = app.documents.add();
//сам файл:
var myFile = "c/project/test.txt"
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "0p0", "0p0", "18p0", "18p0"];
}
}
Попытался сделать так:
myTextFrame.contents = myTextFrame.place (myFile);
Говорит что такого файла или директории нет!
2. Как потом этот текст разбить на несколько связанных фреймов?
Заранее спасибо!
ЗЫ:
>>А вот как мы с Олегом книжку напишем о скриптинге для ID, сразу все и узнаешь
Может пару примерчиков с описанием подкините? А то скрипты знаете ли дело хорошее... ...для работы очень нужные!
1. Как поместить текстовый файл в уже созданный фрейм?
var myDocument = app.documents.add();
//сам файл:
var myFile = "c/project/test.txt"
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "0p0", "0p0", "18p0", "18p0"];
}
}
Попытался сделать так:
myTextFrame.contents = myTextFrame.place (myFile);
Говорит что такого файла или директории нет!
2. Как потом этот текст разбить на несколько связанных фреймов?
Заранее спасибо!
ЗЫ:
>>А вот как мы с Олегом книжку напишем о скриптинге для ID, сразу все и узнаешь
Может пару примерчиков с описанием подкините? А то скрипты знаете ли дело хорошее... ...для работы очень нужные!
Смутило вот что:
Portable path name:
/c/dir/?le
Windows path name:
c:\dir\?le
стр. 498 манала.
пробовал и /C/Project/test.txt и C:/Project/test.txt и C:\Project\test.txt
А файл реально существует, на VB e меня получилось:
Private Sub Command1_Click()
MyFile = "c:\project\test.txt"
Dim myInDesign As InDesign.Application
Dim myDocument As InDesign.Document
Dim myPage As InDesign.Page
Dim myStory As InDesign.Story
Dim myTextFrame As InDesign.TextFrame
Set myInDesign = CreateObject("InDesign.Application.CS")
Set myDocument = myInDesign.Documents.Add(True, myInDesign.DocumentPresets.Item("www"))
Set myPage = myDocument.Pages.Item(1)
Set MyFile = myPage.Place(MyFile, qw, autoflowing = True, ConvertingQuotes = True)
End Sub
Может задача не правильно описана?
Portable path name:
/c/dir/?le
Windows path name:
c:\dir\?le
стр. 498 манала.
пробовал и /C/Project/test.txt и C:/Project/test.txt и C:\Project\test.txt
А файл реально существует, на VB e меня получилось:
Private Sub Command1_Click()
MyFile = "c:\project\test.txt"
Dim myInDesign As InDesign.Application
Dim myDocument As InDesign.Document
Dim myPage As InDesign.Page
Dim myStory As InDesign.Story
Dim myTextFrame As InDesign.TextFrame
Set myInDesign = CreateObject("InDesign.Application.CS")
Set myDocument = myInDesign.Documents.Add(True, myInDesign.DocumentPresets.Item("www"))
Set myPage = myDocument.Pages.Item(1)
Set MyFile = myPage.Place(MyFile, qw, autoflowing = True, ConvertingQuotes = True)
End Sub
Может задача не правильно описана?
Все просто, нужно создать экземпляр объекта File
Зырим наш пример
var myDocument = app.documents.add();
//Вот так а не иначе
var myFile = new File("/c/project/test.txt");
// окончание вот така
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "0p0", "0p0", "18p0", "18p0"];
}
}
Такие дела...
А примерчики, все примерчики на сайте... Правда, там некоторая засада пока происходит, но это мы поправим
Зырим наш пример
var myDocument = app.documents.add();
//Вот так а не иначе
var myFile = new File("/c/project/test.txt");
// окончание вот така
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "0p0", "0p0", "18p0", "18p0"];
}
}
Такие дела...
А примерчики, все примерчики на сайте... Правда, там некоторая засада пока происходит, но это мы поправим
Методом множественных ЭКСКРЕМЕНТОВ получилось следующее:
var myDocument = app.documents.add(app.documentPresets.item("www"))
var myFile = new File("/c/project/test.txt");
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "10mm", "10mm", "287mm", "103mm"];
myTextFrame.place (myFile, autoflowing = true);
}
}
Т.е. создается домент с шаблоном "www" разбитый на 2 колонки, в нем создается фрейм, во фрейм помещается текстовый файл растянутый на всю высоту и ширину колонки - за это большое спасибо!
Вопрос следующий:
Как потом этот текст разбить на несколько (два) связанных фреймов?
ЗЫ: Прошу прощения за наглось, но кроме этого форума обращаться больше некуда! :-(
var myDocument = app.documents.add(app.documentPresets.item("www"))
var myFile = new File("/c/project/test.txt");
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "10mm", "10mm", "287mm", "103mm"];
myTextFrame.place (myFile, autoflowing = true);
}
}
Т.е. создается домент с шаблоном "www" разбитый на 2 колонки, в нем создается фрейм, во фрейм помещается текстовый файл растянутый на всю высоту и ширину колонки - за это большое спасибо!
Вопрос следующий:
Как потом этот текст разбить на несколько (два) связанных фреймов?
ЗЫ: Прошу прощения за наглось, но кроме этого форума обращаться больше некуда! :-(
Получилось следеющее:
var myDocument = app.documents.add(app.documentPresets.item("www"))
var myFile = new File("/c/project/test.txt");
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "10mm", "10mm", "287mm", "103mm"];
myTextFrame.place (myFile, autoflowing = true);
myNextTextFrame = myTextFrame.nextTextFrame = textFrames.add();
with (myNextTextFrame){
myNextTextFrame.geometricBounds = [ "10mm", "107mm", "287mm", "200mm"];
}
}
}
... полет нормальный!
Pavel спасибо! Еще не подскажешь где по мануалу расписана работа с фреймами!
Да и вообще где вы на Java писать научились!
Может книженция какая есть или в сети ресурсы?
var myDocument = app.documents.add(app.documentPresets.item("www"))
var myFile = new File("/c/project/test.txt");
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
var myTextFrame = textFrames.add();
myTextFrame.geometricBounds = [ "10mm", "10mm", "287mm", "103mm"];
myTextFrame.place (myFile, autoflowing = true);
myNextTextFrame = myTextFrame.nextTextFrame = textFrames.add();
with (myNextTextFrame){
myNextTextFrame.geometricBounds = [ "10mm", "107mm", "287mm", "200mm"];
}
}
}
... полет нормальный!
Pavel спасибо! Еще не подскажешь где по мануалу расписана работа с фреймами!
Да и вообще где вы на Java писать научились!
Может книженция какая есть или в сети ресурсы?
Мануал - это своего рода библия написания скриптов для ID.
Мануал для второй версии я даже распечатывал малым форматом для того, чтобы всегда был под рукой.
Там все по-буржуйски написано, но очень, очень полезно, только проверять все равно придется - ошибки в нем присутствуют. А так - учите язык вероятного противника
Кстати, результат трехдневного упорного восьмичасового труда во время массовой эпидемии гриппа, своего рода интеллекуальный пир во время чумы - краткое описание языка JavaScript - уже отправлено в набор Виталию Батушеву. Требуйте в магазинах города
Мануал для второй версии я даже распечатывал малым форматом для того, чтобы всегда был под рукой.
Там все по-буржуйски написано, но очень, очень полезно, только проверять все равно придется - ошибки в нем присутствуют. А так - учите язык вероятного противника
Кстати, результат трехдневного упорного восьмичасового труда во время массовой эпидемии гриппа, своего рода интеллекуальный пир во время чумы - краткое описание языка JavaScript - уже отправлено в набор Виталию Батушеву. Требуйте в магазинах города