Back

If your email is not recognized and you believe it should be, please contact us.

Forum Replies Created

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • in reply to: package for output – single pages, from a multi page document #89984
    Mark Welsh
    Member

    Hi Ari,

    Yes I downloaded the file not copy/paste. It was called AutoPackage.jsx.txt, once I placed it in my User folder I deleted the .txt but when I double click on the script I get the error message and it only creates a separate InDesign file of the the first page, not all the pages.

    When I open the .jsx file in TextEdit it shows:

    //created by Ari S. — designerjoe@outlook.com
    // Package entire document individually by the amount of pages at a time that you want

    app.scriptPreferences.enableRedraw = false;
    var srcDoc = app.activeDocument;
    var srcTitle = srcDoc.name;
    var srcPages = srcDoc.pages;
    var pgLength = srcPages.length;
    var srcW = srcDoc.documentPreferences.pageWidth;
    var srcH = srcDoc.documentPreferences.pageHeight;
    var srcPgLength = srcPages.length;
    var start = 0;
    var range, end, newDocName, isEnd, fileName;

    // ——- HERE YOU CAN CHANGE ANY PACKAGING SETTING THAT YOU WANT. TRUE means ‘ON’, and FALSE means ‘OFF’: ———

    var copyingFonts = true;
    var copyingLinkedGraphics = true;
    var copyingProfiles = true;
    var updatingGraphics = true;
    var includingHiddenLayers = true;
    var ignorePreflightErrors = true;
    var creatingReport = true;
    var includeIDML = true;
    var includePDF = false;
    var pdfStyle = “”;
    var forceSave = true;

    var myDialog = app.dialogs.add({name:”Package Export Range”, canCancel:true});
    with (myDialog) {
    with(dialogColumns.add()) {
    with(dialogRows.add()) {
    staticTexts.add ({staticLabel:”Enter the amount of pages you want to package at a time”});
    with(dialogRows.add()) {
    var myRangeBox = integerEditboxes.add({editValue:1});
    }
    }
    }
    }

    if (myDialog.show() == true) {
    range = myRangeBox.editValue;
    if (range == 0) {
    alert(“0 is not a range!…”);
    myDialog.destroy();
    exit();
    }
    else if (range > pgLength) {
    alert(“Range can’t be more than the amount of pages”);
    myDialog.destroy();
    exit();
    }
    run();
    }
    else {
    myDialog.destroy();
    exit();
    }

    function run() {
    while (!isEnd) {
    var newDoc = app.documents.add({pageWidth: srcW, pageHeight: srcH});
    newDoc.masterSpreads[0].baseName = “garbage_master”;
    end = start + range;
    if (end >= srcPages.length) {
    end = srcPages.length;
    isEnd = true;
    }
    var firstPage = srcPages[start];
    var lastPage = srcPages[end – 1];
    for (var j = start; j < end; j++) {
    var srcPage = srcPages[j];
    var newPage;
    if (j == start) {
    newPage = srcPage.duplicate(LocationOptions.BEFORE, newDoc.pages[0]);
    for (var k = newDoc.pages.length – 1; k > 0; k–) {
    newDoc.pages[k].remove();
    }
    }
    else {
    newPage = srcPage.duplicate(LocationOptions.AFTER, newDoc.pages[-1])
    }
    srcMaster = srcPage.appliedMaster;
    var newMaster;
    try {
    newMaster = newDoc.masterSpreads.item(srcMaster.name);
    newMaster.name;
    }
    catch (myError) {
    newMaster = srcMaster.duplicate(undefined, newDoc);
    }
    newPage.appliedMaster = newMaster;
    }
    newDoc.masterSpreads[0].remove();
    if (firstPage.side === PageSideOptions.LEFT_HAND) {
    newDoc.documentPreferences.startPageNumber = 2
    }
    if (newDoc.pages.length == 1) {
    fileName = “Page ” + firstPage.name;
    }
    else {
    fileName = “Pages ” + firstPage.name + ” – ” + lastPage.name;
    }
    createPackage(newDoc);
    start += range;
    if (start == srcPages.length) {
    isEnd = true;
    }
    }
    }

    function createPackage(myNewDoc) {
    var targetFolder = new File(“~/Desktop/” + srcTitle +”/” + fileName + “/”);
    var flag = Folder(targetFolder).create();
    var versionComments = srcTitle + ” ” + fileName;
    if ( flag === true){
    var garbageFolder = new File(“~/Desktop/” + srcTitle +”/Delete This Folder/”);
    Folder(garbageFolder).create();
    myNewDoc.save(new File(“~/Desktop/” + srcTitle + “/Delete This Folder/” + fileName + “.indd”))
    myNewDoc.packageForPrint (
    targetFolder,
    copyingFonts,
    copyingLinkedGraphics,
    copyingProfiles,
    updatingGraphics,
    includingHiddenLayers,
    ignorePreflightErrors,
    creatingReport,
    includeIDML,
    includePDF,
    pdfStyle,
    versionComments,
    forceSave);
    myNewDoc.close(SaveOptions.no);
    var myTempFiles = Folder(garbageFolder).getFiles();
    for (l = myTempFiles.length – 1; l >= 0; l–) {
    myTempFiles[l].remove();
    Folder(garbageFolder).remove();
    }
    }
    }

    Mark Welsh
    Member

    Hi Ari,

    I have just downloaded and installed your script into InDesign CS6. When I double click on the script to run it I get the following JavaScript Error message:

    Error Number: 30477
    Error String: Invalid value parameter
    ‘versionComments’ of method ‘packageForPrint’.
    Expected String, but received TRUE.

    Engine: main
    File: /Users/markw/Library/Preferences/Adobe InDesign/Version 8.0/en_GB/Scripts Panel/AutoPackage.jsx
    Line: 122
    Source: myNewDoc.packageForPrint (

    Please can you tell me if I’m doing something wrong, my document consists of 59 pages.

    Kind regards
    Mark

Viewing 2 posts - 1 through 2 (of 2 total)