1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

скрипты

Тема в разделе "Adobe Illustrator", создана пользователем -, 9 фев 2004.

  1. Guest

    Я вижу тут все резко начали "скриптить" ;)
    Посмотрел реализацию "скриптизма" ;) в AI - (ну так - троечка с минусом, но жить можно)

    Вспомнил что я тоже когда-то шарил в программировании, накрапал тут скрипток побырому (усовершенствовать его меня ломануло, мож если общими усилиями)

    --------------------------------------------------
    //$.level=1;
    //$.bp();

    Year = 2005;

    CellHeight = 20;
    CellWidth = 30;

    //MC = Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
    if ((Year-2000)/4 == 0) {Feb = 29} else {Feb = 28}
    MN = Array(31,Feb,31,30,31,30,31,31,30,31,30,31);

    FirstDay = Math.floor((Year-2001)*5/4%7);
    FD = FirstDay;

    var docRef = app.documents.add();
    var DocTop = 700;

    for(m=0; m<12; m++){
    for(d=0; d<MN[m]; d++){
    Top = DocTop - ((Math.floor((FD+d)/7)*CellHeight) + m*6*CellHeight);
    Left = (FD+d)%7*CellWidth;
    textRef = docRef.textFrames.add();
    textRef.contents = d+1;
    textRef.top = Top;
    textRef.left = Left;
    //redraw(); // cool
    }
    FD = (FD+d)%7;
    }

    redraw();
     
  2. Guest

    а версия AI?

    на маке в 10-ке сообщение:
    -----------
    app is undefined
    Line: 16
    -> var docRe = app.document.add();
    -----------
     
  3. Guest

    Однако я дурагон!
    С високосными годами нахимичил...


    Вот так "правельнее" будет:

    -------------------------------------
    //$.level=1;
    //$.bp();

    Year = 2005;

    CellHeight = 20;
    CellWidth = 30;

    //MC = Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");

    MN = Array(31,((Year-2000)%4==0)?29:28,31,30,31,30,31,31,30,31,30,31);

    FirstDay = Math.floor((Year-2001)*5/4%7);
    FD = FirstDay;

    var docRef = app.documents.add();
    var DocTop = 700;

    for(m=0; m<12; m++){
    for(d=0; d<MN[m]; d++){
    Top = DocTop - ((Math.floor((FD+d)/7)*CellHeight) + m*6*CellHeight);
    Left = (FD+d)%7*CellWidth;
    textRef = docRef.textFrames.add();
    textRef.contents = d+1;
    textRef.top = Top;
    textRef.left = Left;
    //redraw(); // cool
    }
    FD = (FD+d)%7;
    }

    redraw();
     
  4. Guest

    Версия AI CS
    платформа PC
    ОС Win2000 или XP

    на маках не проверял ;(
     
  5. Guest

    есть подозра, что если поменять эту строчку на

    var docRef = documents.add();

    то должно заработать
    (я вчера вечером только первый раз открыл AIJsReference, фишек еще не знаю)
     
  6. Guest

    Влад D wrote:
    >
    > Версия AI CS

    ясно

    > платформа PC
    > ОС Win2000 или XP

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

    кстати, после указанного исправления <app.documents.add(); на documents.add();> эта строка прошла, но выскочила другая (textFrames is not an Object, Line 23). но можешь не принимать в расчет, у меня илл 10-ка.
     
  7. Guest

    там различия как раз с тестовыми объектами существенные...

    тут может Muchacho подскажет он все таки опытнее.
     
  8. Guest

    обнова...

    http://ill-files.narod.ru/CalendarPremaker.zip

    если кому понравится, присылайте свои предложения


    также готов обмениваться опытом по скриптостроению для адоба ;)
     
  9. Guest

    а как он работает?
     
  10. Guest

    что имеется ввиду под словом "как" ?
     

Поделиться этой страницей