Скриптинг в Acrobat. Что и куда сувать?

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

barabanozver

Топикстартер
10 лет на форуме
Сообщения
63
Реакции
1
Доброго.
Есть книга pdf, страницы расположены разворотами 1-2,3-4,4-5 и т.д.
Нужно сделать из нее книгу с отдельными страницами (переспуск?).
Итак, где-то наткнулся на скрипт splitpages.js, который делает такую штуку, но скажите мне, пожалуйста, добрые люди - что и куда надо засовывать, что бы он это делал?
(я его, зато, добросовестно поместил в \Program Files\Adobe\Acrobat 10.0\Acrobat\Javascripts\)
 

imma

15 лет на форуме
Сообщения
3 089
Реакции
2 185
Ответ: Скриптинг в Acrobat. Что и куда сувать?

1) В настройках Акробата, в закладке JavaScript включить Enable Acrobat JavaScript, перезапустить.
2) Tools->Action Wizard->Create new...->More Tools->Execute JavaScript->вставить код.

добросовестно поместил в \Program Files\Adobe\Acrobat 10.0\Acrobat\Javascripts
Если это тот же скрипт, что имеется у меня, то его писали под 9-ю версию и в конце кода есть строка:

PHP:
cParent: "Document",              // this is the parent menu. The file menu would use "File"

Поскольку меню Document в 10-й версии отсутствует, его нужно заменить на File. После перезагрузки Акробата в меню File появится команда Split Pages.
 
  • Спасибо
Реакции: LeonidB

Vlad_Z

Участник
Сообщения
51
Реакции
21
Ответ: Скриптинг в Acrobat. Что и куда сувать?

Немного не по теме, но Quite Imposing Plus 3, прекрасно справляется с поставленной задачей - "tile pages"
 

suntory

Administrator
15 лет на форуме
Сообщения
23 425
Реакции
12 469
Ответ: Скриптинг в Acrobat. Что и куда сувать?

Quite Imposing Plus стоит 799 евро без налогов.
 

barabanozver

Топикстартер
10 лет на форуме
Сообщения
63
Реакции
1
Ответ: Скриптинг в Acrobat. Что и куда сувать?

Немного не по теме, но Quite Imposing Plus 3, прекрасно справляется с поставленной задачей - "tile pages"

Ага, я поставил эту штуку. Как делать в ней спуск - понятно, ибо есть классная статья С.Горбачева. Но с переспуском там ничего мне не понятно.
 

barabanozver

Топикстартер
10 лет на форуме
Сообщения
63
Реакции
1
Ответ: Скриптинг в Acrobat. Что и куда сувать?

...Поскольку меню Document в 10-й версии отсутствует, его нужно заменить на File. После перезагрузки Акробата в меню File появится команда Split Pages.

imma, огромнейшее спасибо, все заработало!!!
 

Vlad_Z

Участник
Сообщения
51
Реакции
21
Ответ: Скриптинг в Acrobat. Что и куда сувать?

Ага, я поставил эту штуку. Как делать в ней спуск - понятно, ибо есть классная статья С.Горбачева. Но с переспуском там ничего мне не понятно.

Жми "tile pages", а дальше все понятно
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Ответ: Скриптинг в Acrobat. Что и куда сувать?

Поскольку меню Document в 10-й версии отсутствует, его нужно заменить на File. После перезагрузки Акробата в меню File появится команда Split Pages.
Я чувствую, 1998 пропал с концами, придется брать на себя его функции. ;)
Правильно будет так:
Код:
ProcessDocument = app.trustedFunction(function()
{
    // create a new document
    app.beginPriv();
    var newDoc = app.newDoc();
    
    // get the filename of our current file

    var i = 0;
    while (i < this.numPages)
    {
        newDoc.insertPages( {
            nPage: newDoc.numPages-1,
            cPath: this.path,
            nStart: i
        });
        newDoc.insertPages( {
            nPage: newDoc.numPages-1,
            cPath: this.path,
            nStart: i
        });
        // we did this twice so that we can then split each copy of the page into a left
        // and right half. 
        i++;
    }

    if (newDoc.numPages > 1)
    {
        newDoc.deletePages(0);	// this gets rid of the page that was created with the newDoc call.
    }

    // at this point we have a documnent with every page from the source document
    // copied twice


    for (i=0; i<newDoc.numPages; i++)
    {
        // determine the crop box of the page
        var cropRect = newDoc.getPageBox("Crop", i);
        var halfWidth = (cropRect[2]-cropRect[0])/2;

        var cropLeft = new Array();
        cropLeft[0] = cropRect[0];
        cropLeft[1] = cropRect[1];
        cropLeft[2] = cropRect[0] + halfWidth;
        cropLeft[3] = cropRect[3];

        var cropRight = new Array();
        cropRight[0] = cropRect[2] - halfWidth;
        cropRight[1] = cropRect[1];
        cropRight[2] = cropRect[2];
        cropRight[3] = cropRect[3];

        if (i%2 == 0)
        {
	   newDoc.setPageBoxes( {
	       cBox: "Crop",
	       nStart: i,
	       rBox: cropLeft
	       });
        }
        else
        {
	   newDoc.setPageBoxes( {
	       cBox: "Crop",
	       nStart: i,
	       rBox: cropRight
	       });
        }
    }
   app.endPriv();
}
)




// add the menu item
if (app.viewerVersion < 10) { parent="Document"; } else { parent="File"; } 
app.addMenuItem({
     cName: "splitPagesJS",     // this is the internal name used for this menu item
     cUser: "Split Pages",       // this is the label that is used to display the menu item
     cParent: parent,              // this is the parent menu. The file menu would use "File"
     cExec: "ProcessDocument()",  // this is the JavaScript code to execute when this menu item is selected
     cEnable: "event.rc = (event.target != null);",       // when should this menu item be active?
     nPos: 0
});
 
  • Спасибо
Реакции: LeonidB

barabanozver

Топикстартер
10 лет на форуме
Сообщения
63
Реакции
1
Ответ: Скриптинг в Acrobat. Что и куда сувать?

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