Pages 5 exporting issues

I go to export files to Word in .doc or .docx. After doing this I will try to open the document in microsoft word on a different computer. When I do this, the fle opens with no problem but inside the file or the text of the file is very messed up. Paragraphs will be out of place, spacing, bold font, it will all be different or added in when never there in pages. Is there a fix to this?

What version of Pages?
Any difference with .doc or .docx.
Pages is not a Word clone so don't expect perfect results, on the other hand it should not be a total mess either.
Peter

Similar Messages

  • Pages export in Word format problem

    A Pages-5 file exported as a Word file opens in MS Word as one would expect but crashes or fails to open in Open Office 4 which opens all other .doc/.docx files perfectly.  The new version of Pages must be doing something strange to the Word format as this never happened with earlier versions. 
    Any ideas ???

    Exported a .docx from IOS Pages v2.0.1 (new format) to OS X Mavericks and Lion.
    The above file crashed LibreOffice 4.1.3.2 (latest) on both operating systems. It opened fine in Preview, TextEdit, Quick Look, and Bean (3.2.5) on both operating systems. On Lion, it opened fine in Office for Mac 2011 (4.3.9). Do not have the latter installed on Mavericks.
    On Mavericks, opened this .docx in Pages ’09 v4.3 successfully with import warnings about removing all borders, and a large white-space area between text on the first page.
    On Mavericks, I opened this .docx in TextEdit. Added two words to it, and updated it in place. I then dragged and dropped it on the LibreOffice icon in the Dock. LibreOffice opened it without issue.
    Clearly, the IOS Pages export to Word (.docx) has some compatibility issues with OpenOffice and LibreOffice, as apparently does Pages v5 on OS X.

  • Crystal JRC PDF Export Issue

    We are experiencing a PDF export issue with Crystal JRC version 12.2.202.  The PDF report shows 1 of 3 pages but ONLY the first page is generated.  When this occurs, ALL other users that are exporting to PDF experience the same issue with any multiple page report.  I can't find any errors in the log that would indicate what the problem is.  To resolve the issue, I have to recycle the WebLogic application server that hosts  the JRC, which would indicate something gets "locked" in memory and gets cleared when the app server is bounced.
    Any ideas on how to resolve this ?

    Hi Ted,
    Thanks for the response!
    Though, the mentioned Sun JVM Bug explains the root-cause, the Bug status also state that it is not fixed yet.
    Also, we are reluctant to change the JVM Option to -Xint due to unknown impacts on JVM optimizations.
    Is there a patch released for CrystalReports to deal with this behavior? We are using CRJ runtime 11.5.7.620 and seeking for a patch on this version.
    Thanks.

  • Workspace ID and single page exports

    Hi,
    We have DEV and UAT workspace id's that are the same however PROD has a different Id. This seems to stop page by page export / imports from UAT to PROD. Can I replace DEV and UAT with PROD (no issues with concurrent development or testing at the moment) ??? If so , how ??
    Many thanks for any assistance,
    Brandon

    Hi Scott,
    Thanks for the advice. Yes they are 3 separate databases. I exported the wokspace from PROD using the admin pages and when I import into DEV it fails with :-
    User was not created for the following reason: ORA-02291: integrity constraint (FLOWS_010600.WWV_FLOW_FND_USER_FK) violated - parent key not found
    Error installing workspace.
    Return to application.
    ORA-20001: GET_BLOCK Error. ORA-20001: Execution of the statement was unsuccessful. ORA-02291: integrity constraint (FLOWS_010600.WWV_FLOW_DEV_FK) violated - parent key not found <pre>begin wwv_flow_fnd_user_api.create_fnd_user ( p_user_id =&gt; '3811707941321479', p_user_name =&gt; 'AUD', p_first_name =&gt; 'aud', p_last_name =&gt; 'aud', p_description =&gt; '', p_email_address=&gt; '[email protected]', p_web_password =&gt; 'A
    Any ideas ???
    Thanks again.

  • Page Exporter Utility (PEU) 5 Script

    I love this script, It really has potential to shave valuable time off of our production (exporting Hundreds of pages manually to single files is tedious and time consuming). The problem I'm having is I'm hesitant to us it because it dosn't show warnings when there is a missing link or font. There's also no warning when it overwrites a file. My question is dose anyone know how to unsuppress the warnings? I've looked over the script and don't see anything that is actively suppressing them.
    Thanks
    Dan
    // PageExporterUtility5.0.js
    // An InDesign CS JavaScript
    // 08 NOV 2007
    // Copyright (C) 2007  Scott Zanelli. Lonelytree Software. (www.lonelytreesw.com)
    // Coming to you from Quincy, MA, USA
    // This program is free software; you can redistribute it and/or
    // modify it under the terms of the GNU General Public License
    // as published by the Free Software Foundation; either version 2
    // of the License, or (at your option) any later version.
    // This program is distributed in the hope that it will be useful,
    // but WITHOUT ANY WARRANTY; without even the implied warranty of
    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    // GNU General Public License for more details.
    // You should have received a copy of the GNU General Public License
    // along with this program; if not, write to the Free Software
    // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
    var peuINFO = new Array();
    peuINFO["csVersion"] = parseInt(app.version);
    // Save the old interaction level
    if(peuINFO.csVersion == 3) { //CS1
        peuINFO["oldInteractionPref"] = app.userInteractionLevel;
        app.userInteractionLevel = UserInteractionLevels.interactWithAll;
    else { //CS2+
        peuINFO["oldInteractionPref"] = app.scriptPreferences.userInteractionLevel;
        app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
    // See if a document is open. If not, exit
    if((peuINFO["numDocsToExport"] = app.documents.length) == 0){
        byeBye("Please open a document and try again.",true);
    // Global Variable Initializations
    var VERSION_NAME = "Page Exporter Utility 5.0"
    var pseudoSingleton = 0;
    var progCurrentPage = 0;// Used for progress bar
    var progTotalPages = 0; // Used for progress bar
    var commonBatchINFO = getNewTempENTRY(); // Used if "Set For All Batch Jobs" is selected
    commonBatchINFO["infoLoaded"] = false;
    peuInit(); // Initialize commonly needed info
    // Store information needed for batch processing (valid for single also)
    var printINFO = new Array();
    // Get all needed info by looping for each document being exported
    for(currentDoc = 0; currentDoc < peuINFO.numDocsToExport; currentDoc++) {
        // Get name of document and set it as the base name
        // minus the extention if it exists
        var tempENTRY = getNewTempENTRY(); // "Struct" for current document info
        tempENTRY.theDoc = app.documents[currentDoc]
        tempENTRY.singlePage = (tempENTRY.theDoc.documentPreferences.pagesPerDocument==1)?true:false;
        tempENTRY.getOut = true;
        var baseName = (tempENTRY.theDoc.name.split(".ind"))[0];
        // Display the dialog box and loop for correct info
        if((!commonBatchINFO.infoLoaded && peuINFO.batchSameForAll) || (!peuINFO.batchSameForAll) ){// get all info
            do{
                tempENTRY.getOut = true; // For handling input errors
                var mainDialog = createMainDialog(tempENTRY.theDoc.name, currentDoc+1, peuINFO.numDocsToExport);
                // Exit if cancel button chosen
                if(!mainDialog.show() ){
                    mainDialog.destroy();
                    byeBye("Exporting has canceled by user.",peuINFO.sayCancel);
                if(formatTypeRB.selectedButton == 4 - peuINFO.adjustForNoPS){
                    changePrefs();
                    tempENTRY.getOut = false;
                    continue;
                // Read info from dialog items and keep as defaults and place in tempENTRY
                peuINFO.defaultDir = outputDirs.selectedIndex;
                // The index of the selected directory is the same as the
                // index in the array of directories.
                tempENTRY.outDir = peuINFO.dirListArray[peuINFO.defaultDir];
                // Type of renaming to do
                tempENTRY.nameConvType = namingConvention.selectedButton
                // The base name to add page info to
                tempENTRY.baseName = removeColons(removeSpaces(newBaseName.editContents) );
                // The start [and end] page numbers
                var startEndPgs = startEndPgs.editContents;
                // Wether to do spreads or not
                peuINFO.doSpreadsON = (doSpreads.checkedState)?1:0;
                tempENTRY.doSpreadsON = peuINFO.doSpreadsON;
                // Wether to send entire file as one document
                peuINFO.doOneFile = (oneFile.checkedState)?1:0;
                tempENTRY.doOneFile = peuINFO.doOneFile;
                // Export format type
                tempENTRY.formatType = formatTypeRB.selectedButton + peuINFO.adjustForNoPS;
                // Set persistence during warnings
                peuINFO.editStartEndPgs = startEndPgs;
                baseName = tempENTRY.baseName;
                peuINFO.exportDefaultType = tempENTRY.formatType;
                // Determine if page replacement token exists when the page token option is used
                if(peuINFO.pageNamePlacement == 2){
                    var temp = tempENTRY.baseName.indexOf("<#>");
                    if(temp == -1){//Token isn't there
                        alert("There is no page item token (<#>) in the base name. Please add one or change the page naming placement preference.");
                        tempENlert.getOut = false;
                        pseudoSingleton--; // Allow prefs to be accessed again, but just once
                        continue;
                    else
                        pseudoSingleton++;
                else // Try to remove any <#>s as a precaution
                    tempENTRY.baseName = tempENTRY.baseName.replace(/<#>/g,"");   
                // Layer Versioning & Batch options
                if(currentDoc < 1){
                    peuINFO.layersON = (doLayers.checkedState)?1:0;
                    if(peuINFO.numDocsToExport > 1){
                        peuINFO.batchSameForAll = (commonBatch.checkedState)?1:0;
                        peuINFO.batchON = (doBatch.checkedState)?1:0;
                        if(!peuINFO.batchON)
                            peuINFO.numDocsToExport = 1;
                //Check if spreads chosen with 'Add ".L"' option as this isn't supported.
                if(peuINFO.doSpreadsON && tempENTRY.nameConvType == 1){
                    alert ("Spreads cannot be used with the 'Add \".L\"' option.\nThis combination is not supported. (1.1)");
                    tempENTRY.nameConvType = 0;
                    tempENTRY.getOut = false;
                    continue;
                else if(peuINFO.doSpreadsON && tempENTRY.nameConvType == 4){
                    alert ("Spreads cannot be used with the 'Numeric Override' option.\nThis combination is not supported. (1.2)");
                    tempENTRY.nameConvType = 0;
                    tempENTRY.getOut = false;
                    continue;
                // Check if "Send Entire File At Once" is selected with JPG or EPS
                if(peuINFO.doOneFile && tempENTRY.formatType > 1 ){
                    alert ("The 'Send Entire File At Once' option can only be used with PostScript or PDF formats. (1.3)");
                    tempENTRY.getOut = false;
                    continue;
                // Check if: batch printing and using the "Same for all jobs options" and a page range other than "All" was used
                if(peuINFO.doBatch && peuINFO.batchSameForAll && startEndPgs != "All"){
                    alert ("The 'Set For All Batch Jobs' option can only be used with a Page Range of 'All'. Page Range has been reset to 'All'. (1.4)");
                    startEndPgs = "All";
                // Create page info, skip if doing entire file as one
                var tempPageCount = 0;
                if(tempENTRY.doOneFile)
                    tempPageCount = 1;
                else{
                    // Get names of all the pages. Needed when pages are named using sectioning
                    tempENTRY = recordPgNames(tempENTRY);
                    // Check Page Validity and get Page counts of entered section(s)
                    var temp = checkPages(tempENTRY, startEndPgs);
                    tempENTRY = temp[0];
                    tempPageCount = temp[1];
                    temp = null; // Free it up
            } while(!tempENTRY.getOut);
            // Remove dialog from memory
            mainDialog.destroy();
            // Determine if tag will fit correctly
            tempENTRY.useTag = usePgInfoTag(tempENTRY.theDoc.viewPreferences.horizontalMeasurementUnits,tempENTRY.theDoc.documentPreferences.pageWidth);
                // Get the format info for this document
            switch(tempENTRY.formatType){
                case 0://PS
                tempENTRY.psINFO = getPSoptions(tempENTRY.theDoc.name.split(".ind")[0]);
                break;
                case 1://PDF
                tempENTRY.pdfPRESET = getPDFoptions(tempENTRY);
                break;
                case 2: // EPS Formatting
                tempENTRY.epsINFO = getEPSoptions(tempENTRY.theDoc.name.split(".ind")[0]);
                peuINFO.origSpread = app.epsExportPreferences.epsSpreads;// Used to reset to original state when done
                app.epsExportPreferences.epsSpreads = peuINFO.doSpreadsON;
                break;
                case 3: // JPEG Formatting
                tempENTRY.jpegINFO = getJPEGoptions(tempENTRY.theDoc.name.split(".ind")[0]);
                break;
            // If Specific Directory was chosen for the output directory, get it now
            if(peuINFO.defaultDir == 0){
                tempENTRY.outDir = getDirectory("Please select the output directory:",peuINFO.startingDirectory);
                if(tempENTRY.outDir != null)
                    tempENTRY.outDir += "/";
                else
                    byeBye("Exporting has been canceled by user.", peuINFO.sayCancel);
            // Set the common elements for all batch jobs if it was selected
            if(!commonBatchINFO.infoLoaded && peuINFO.batchSameForAll){
                commonBatchINFO.infoLoaded = true;
                commonBatchINFO.pageNamePlacement = tempENTRY.pageNamePlacement;
                commonBatchINFO.outDir = tempENTRY.outDir;
                commonBatchINFO.nameConvType = tempENTRY.nameConvType
                commonBatchINFO.doSpreadsON = tempENTRY.doSpreadsON;
                commonBatchINFO.doOneFile = tempENTRY.doOneFile;
                commonBatchINFO.formatType = tempENTRY.formatType;
                commonBatchINFO.psINFO = tempENTRY.psINFO;
                commonBatchINFO.pdfPRESET = tempENTRY.pdfPRESET
                commonBatchINFO.epsINFO = tempENTRY.epsINFO
                commonBatchINFO.jpegINFO = tempENTRY.jpegINFO;
        } // End each/first of batch
        else{ // Get the base name for other batch jobs
            do{
                tempENTRY.getOut = true;
                var nameDialog = app.dialogs.add({name:(VERSION_NAME + ": Base Name for \"" + tempENTRY.theDoc.name + "\"" + ((peuINFO.numDocsToExport==1)?"":" (" + (currentDoc+1) + " of " + peuINFO.numDocsToExport + " documents)") ), canCancel:true} );
                with (nameDialog){
                    with (dialogColumns.add() ){
                        with(dialogRows.add() ){
                        staticTexts.add({staticLabel:"Enter the Base Name for \"" + tempENTRY.theDoc.name + "\""} );
                        var newBaseName = textEditboxes.add({editContents:baseName, minWidth:135} );
                        with(dialogRows.add() )
                            staticTexts.add({staticLabel:"", minWidth:400} );
                if(!nameDialog.show() ){
                    nameDialog.destroy();
                    byeBye("User canceled export.",peuINFO.sayCancel);
                else{
                    tempENTRY.baseName = removeColons(removeSpaces(newBaseName.editContents) );
                    nameDialog.destroy();
                    // Determine if page replacement token exists when the page token option is used
                    if(peuINFO.pageNamePlacement == 2){
                        var temp = tempENTRY.baseName.indexOf("<#>");
                        if(temp == -1){//Token isn't there
                            alert("There is no page item token (<#>) in the base name. Please add one or click cancel in the next dialog box.");
                            tempENTRY.getOut = false;
                    else // Try to remove any <#>s as a precaution
                        tempENTRY.baseName = tempENTRY.baseName.replace(/<#>/g,"");   
            }while(!tempENTRY.getOut);
            // Get names of all the pages. Needed when pages are named using sectioning
            tempENTRY = recordPgNames(tempENTRY);
            // Set pgStart and pgEnd, forcing "All" pages to output
            tempENTRY = (checkPages(tempENTRY, "All"))[0];
            // The page count is all pages due to common batching
            tempPageCount = tempENTRY.theDoc.pages.length;
            // This info is common, get it from commonBatchINFO:
            tempENTRY.pageNamePlacement = commonBatchINFO.pageNamePlacement;
            tempENTRY.outDir = commonBatchINFO.outDir;
            tempENTRY.nameConvType = commonBatchINFO.nameConvType
            tempENTRY.doSpreadsON = commonBatchINFO.doSpreadsON;
            tempENTRY.doOneFile = commonBatchINFO.doOneFile;
            tempENTRY.formatType = commonBatchINFO.formatType;
            tempENTRY.psINFO = commonBatchINFO.psINFO;
            tempENTRY.pdfPRESET = commonBatchINFO.pdfPRESET
            tempENTRY.epsINFO = commonBatchINFO.epsINFO
            tempENTRY.jpegINFO = commonBatchINFO.jpegINFO;
        // Get any layering info
        if(peuINFO.layersON){
            tempENTRY.layerINFO = layerManager(tempENTRY.theDoc);
            if (tempENTRY.layerINFO == null) // Only one layer, turn it off for this doc
                tempENTRY.layersON = false;
            else
                tempENTRY.layersON = true;
        // Sum up pages for the grand total for use in progress bar
        var temp = 1;
        if(peuINFO.doProgressBar && tempENTRY.layersON){
            // Figure tally for progress bar to include versions
            for(i=0;i < tempENTRY.layerINFO.verControls.length; i++)
                if (tempENTRY.layerINFO.verControls[i] == 1)
                    temp++;
            if(!peuINFO.baseLaersAsVersion)
                temp--;
        progTotalPages += (tempPageCount*temp);
        // All info for this doc is finally gathered, add it to the main printINFO array
        printINFO.push(tempENTRY);
        // Only one chance to change prefs: trigger singleton
        pseudoSingleton++;
    }// end of main for loop
    savePrefs(); // Record any changes
    // Initiallize progress bar if available
    if(peuINFO.doProgressBar)
        app.createProgressBar("Exporting Pages...", 0, progTotalPages, true);
    // Export by looping through all open documents if using batch option, otherwise just the front document is exported
    for(currentDoc = 0; currentDoc < printINFO.length; currentDoc++){
        var currentINFO = printINFO[currentDoc];
        // Set message in progress bar if available
        if(peuINFO.doProgressBar){
                var progCancel = app.setProgress(currentINFO.theDoc.name);
                if(progCancel)
                    byeBye("User canceled export.",peuINFO.sayCancel);
        // Set format options here so it's done just once per document
        setExportOption(currentINFO);
        // "Do one file" or PS/PDF with one page:
        if (currentINFO.doOneFile || currentINFO.singlePage){
            // Remove page token if it was entered and this name positioning option is set
            currentINFO.baseName = currentINFO.baseName.replace(/<#>/g,"");
            if(currentINFO.layersON){
                var theLayers = currentINFO.theDoc.layers;
                var baseControls = currentINFO.layerINFO.baseControls;
                var versionControls = currentINFO.layerINFO.verControls;
                var lastVersion = -1;
                // Loop for versioning
                 for(v = 0; v < versionControls.length; v++){
                    if(!versionControls[v])
                        continue;
                    if(lastVersion != -1)// Turn the last layer back off
                        theLayers[lastVersion].visible = false;
                    lastVersion = v;
                    theLayers[v].visible = true;
                    currentINFO.outfileName = addPartToName(currentINFO.baseName, theLayers[v].name, peuINFO.layerBeforeON)
                    // Export this version
                    exportPage(currentINFO, PageRange.allPages);
                    // Advance progress bar if available
                    if(peuINFO.doProgressBar)
                        advanceBar();
                // If Base layer/s is/are to be output as a version, do it now
                if(peuINFO.baseLaersAsVersion){
                    lastVersion = -1;
                    // Turn off all versioning layers
                    for(v = 0; v < currentINFO.layerINFO.baseControls.length; v++){
                        if(currentINFO.layerINFO.baseControls[v])// its a base layer, keep track of last base version layer number
                            lastVersion = v;
                        else
                            theLayers[v].visible = false;
                    if (!lastVersion == -1){// Only export if there was a base version
                        currentINFO.outfileName = addPartToName(currentINFO.baseName, theLayers[lastVersion].name, peuINFO.layerBeforeON);
                        // Export the base layer(s)
                        exportPage(currentINFO, PageRange.allPages);
                        // Advance progress bar if available
                        if(peuINFO.doProgressBar)
                            advanceBar();
            else{ // No layer versioning, just export
                currentINFO.outfileName = currentINFO.baseName;
                // Export the base layer(s)
                exportPage(currentINFO, PageRange.allPages);
                // Advance progress bar if available
                if(peuINFO.doProgressBar)
                    advanceBar();
            if(!peuINFO.batchON)
                byeBye("Done exporting as a single file.",true);
        else{ // Do single pages/spreads
            if (!currentINFO.hasNonContig)
                // Pages are contiguous, can just export
                outputPages(currentINFO.pgStart, currentINFO.pgEnd, currentINFO);
            else{ // Export non-contiguous
                // Loop through array of page sections
                for (ii = 0; ii < currentINFO.nonContigPgs.length; ii++){
                    temp = currentINFO.nonContigPgs[ii];
                    // Here we handle the start/end pages for any non-contig that has "-"
                    if (temp.indexOf("-") != -1){
                        temp2 = temp.split("-");
                        outputPages(temp2[0],temp2[1], currentINFO);
                    else // The non-contiguous page is a single page
                        outputPages(temp, temp, currentINFO);
        // Set the spread settings back to what it was originally
        try{
            switch (currentINFO.formatType){
                case 0: // PostScript Formatting
                    theDoc.printPreferences.printSpreads = peuINFO.origSpread;
                    break;
                case 1: // PDF Formatting
                    currentINFO.pdfPRESET.exportReaderSpreads = peuINFO.origSpread;
                    break;
                case 2: // EPS Formatting
                    app.epsExportPreferences.epsSpreads = peuINFO.origSpread;
                    break;
                case 3: // JPEG Formatting
                    app.jpegExportPreferences.exportingSpread = peuINFO.origSpread;
                    break;
        catch(e){/*Just ignore it*/}
    byeBye("The requested pages are done being exported.",true); // Last line of script execution
    /*         Operational Functions           */
    * Handle exporting
    function outputPages(pgStart, pgEnd, currentINFO){
        var pgRange;
        var layerName = "";
        var numVersions;
        var currentPage;
        var lastVersion = -1;
        var numericallyLastPage;
        if (currentINFO.layersON){
            var theLayers = currentINFO.theDoc.layers;
            var baseControls = currentINFO.layerINFO.baseControls;
            var versionControls = currentINFO.layerINFO.verControls;
            numVersions = versionControls.length;
            // Compensate for base layers as a version
            if(peuINFO.baseLaersAsVersion)
                numVersions++;
        else
            numVersions = 1;
        for (v = 0; v < numVersions; v++){
            if(currentINFO.layersON){
                if(v == (numVersions - 1) && peuINFO.baseLaersAsVersion){
                    var currentLayer = -1;
                    // Base layer(s) are to be output as a version
                    // Turn off all versioning layers
                    for(slbm = 0; slbm < baseControls.length; slbm++){
                        if(baseControls[slbm])// its a base layer, use its name for page name
                            currentLayer = slbm;
                        else
                            theLayers[slbm].visible = false;
                    // Check if there was no base layer at all
                    if (currentLayer == -1)
                        layerName = "**NO_BASE**"
                    else
                        layerName = theLayers[currentLayer].name;
                else{
                    if(!versionControls[v])
                        continue;
                    if(lastVersion != -1)// Turn the last layer back off
                        theLayers[lastVersion].visible = false;
                    lastVersion = v;
                    theLayers[v].visible = true;
                    layerName = theLayers[v].name;
            if (currentINFO.nameConvType == 4){
                currentPage = pgStart;
                numericallyLastPage = pgEnd;
            else if (currentINFO.doSpreadsON){
                currentPage = pgStart - 1;
                numericallyLastPage = pgEnd;
            else {
                currentPage = getPageOffset(pgStart, currentINFO.pageNameArray , currentINFO.pageRangeArray);
                numericallyLastPage = getPageOffset(pgEnd, currentINFO.pageNameArray, currentINFO.pageRangeArray);
            if(layerName != "**NO_BASE**"){
                do{
                    currentINFO.outfileName = getPageName(currentPage, layerName, currentINFO);
                    if (currentINFO.doSpreadsON){
                        pgRange = currentINFO.pageRangeArray[getPageOffset(currentINFO.theDoc.spreads[currentPage].pages[0].name, currentINFO.pageNameArray, currentINFO.pageRangeArray)];
                    else if (currentINFO.nameConvType == 4)
                        pgRange = currentINFO.pageRangeArray[currentPage-1];
                    else
                        pgRange = currentINFO.pageRangeArray[currentPage];
                    // Do the actual export:
                    exportPage(currentINFO, pgRange);
                    // Update progress bar if available
                    if(peuINFO.doProgressBar)
                        advanceBar();
                    currentPage++;
                } while(currentPage <= numericallyLastPage);
    * Export the page
    function exportPage(currentINFO, pgRange){
        var outFile = currentINFO.outDir + currentINFO.outfileName;
        switch (currentINFO.formatType){
            case 0: // PostScript Formatting
                with(currentINFO.theDoc.printPreferences){
                    printFile = new File(outFile + ((currentINFO.psINFO.ext)?".ps":""));
                    pageRange = pgRange;
                // Needed to get around blank pages using separations
                try{
                    currentINFO.theDoc.print(false);
                catch(e){/*Just skip it*/}
                break;
            case 1: // PDF Formatting
                app.pdfExportPreferences.pageRange = pgRange;
                currentINFO.theDoc.exportFile(ExportFormat.pdfType, (new File(outFile + ".pdf")), false, currentINFO.pdfPRESET);
                break;
            case 2: // EPS Formatting
                app.epsExportPreferences.pageRange = pgRange;
                currentINFO.theDoc.exportFile(ExportFormat.epsType, (new File(outFile + ".eps")), false);
                break;
            case 3: // JPEG Formatting
                if(pgRange == PageRange.allPages){
                    app.jpegExportPreferences.jpegExportRange = ExportRangeOrAllPages.exportAll;
                else{
                    app.jpegExportPreferences.jpegExportRange = ExportRangeOrAllPages.exportRange;
                    app.jpegExportPreferences.pageString = pgRange;
                currentINFO.theDoc.exportFile(ExportFormat.jpg, (new File(outFile + ".jpg")), false);
                break;
    * Create a name for the page being exported
    function getPageName(currentPage, layerName, currentINFO){
        var pgRename = "";
        if (currentINFO.doSpreadsON)
            currentINFO["currentSpread"] = currentINFO.theDoc.spreads[currentPage].pages;
        switch (currentINFO.nameConvType){
            case 3: // Odd/Even pages/spreads = .LA.F/LA.B, LB.F/LB.B ...
                pgRename = makeLotName(currentPage+1, peuINFO.subType);
                break;
            case 2: // Odd/Even pages/spreads = .F/.B
                pgRename = ((currentPage+1)%2 == 0) ? "B" : "F";
                break;
            case 1: // Add ".L" to the page name
                pgRename = "L" + currentINFO.pageNameArray[currentPage];
                break;
            case 0: case 4:// As is or Numeric Override
                            // Optionally add "P" and any zeros if options chosen and is numerically named
                            // otherwise, just the "seperatorChar" is added to page name
                if (currentINFO.doSpreadsON){
                    // Loops through number of pages per spread
                    // and adds each page name to the final name (P08.P01)
                    for (j = 0; j < currentINFO.currentSpread.length; j++){
                        if(currentINFO.currentSpread[j].appliedSection.includeSectionPrefix)
                            var tempPage = currentINFO.pageRangeArray[getPageOffset(currentINFO.currentSpread[j].name, currentINFO.pageNameArray, currentINFO.pageRangeArray)];
                        else
                            var tempPage = currentINFO.pageNameArray[getPageOffset(currentINFO.currentSpread[j].name, currentINFO.pageNameArray, currentINFO.pageRangeArray)];
                        var tempPageNum = parseInt(tempPage,10);
                        /* If section name starts with a number, need to compare length of orig vs parsed
                         * to see if the page name is solely a number or a combo num + letter, etc.
                        if (! isNaN(tempPageNum) && ((""+tempPage).length == (""+tempPageNum).length )){
                            if (peuINFO.addZeroON)
                                tempPage = addLeadingZero(tempPageNum, currentINFO.theDoc.pages.length);
                            if (peuINFO.addPon)
                                tempPage = "P" + tempPage;
                        pgRename = (j==0) ? tempPage : pgRename + peuINFO.charList[peuINFO.seperatorChar] + tempPage;
                else {
                    // Create a new name for an individual page
                    if (currentINFO.nameConvType == 4)
                        pgRename = currentPage;
                    else
                        pgRename = currentINFO.pageNameArray[currentPage];
                    if (! isNaN(parseInt(pgRename,10)) && (""+pgRename).length == (""+parseInt(pgRename,10)).length) {
                        if (peuINFO.addZeroON)
                            pgRename = addLeadingZero(pgRename, currentINFO.theDoc.pages.length);
                        if (peuINFO.addPon)
                            pgRename = "P" + pgRename;
                break;
        if(currentINFO.layersON)
            pgRename = addPartToName(pgRename, layerName, peuINFO.layerBeforeON);
        // Add page name to base name based on option selected
        if(peuINFO.pageNamePlacement == 2)
            pgRename = removeColons(currentINFO.baseName.replace(/<#>/g,pgRename) );
        else
            pgRename = addPartToName(currentINFO.baseName, pgRename,peuINFO.pageNamePlacement);
        return pgRename;
    * Add a name part before or after a given base string
    function addPartToName(theBase, addThis, addBefore){
        //Remove any colons
        theBase = removeColons(theBase);
        addThis = removeColons(addThis);
        return (addBefore) ? (addThis + peuINFO.charList[peuINFO.seperatorChar] + theBase ):(theBase + peuINFO.charList[peuINFO.seperatorChar] + addThis);
    * Find the offset page number for a page by its name
    function getPageOffset(pgToFind, pageNameArray, pageRangeArray){
        var offset;
        for(offset = 0; offset<pageRangeArray.length;offset++){
            if((""+ pgToFind).toLowerCase() == (("" + pageNameArray[offset]).toLowerCase() ) || (""+ pgToFind).toLowerCase() == (("" + pageRangeArray[offset]).toLowerCase() ) )
                return offset;
        return -1;
    * Replace any colons with specialReplaceChar
    function removeColons(tempName){
        return tempName.replace(/:/g,peuINFO.charList[peuINFO.specialReplaceChar]);
    * Remove spaces from front and end of name
    function removeSpaces(theName){
        // Trim any leading or trailing spaces in base name
        var i,j;
        for(i = theName.length-1;i>0 && theName.charAt(i) == " ";i--);// Ignore any spaces on end of name
        for(j = 0; j<theName.length && theName.charAt(j) == " ";j++);// Ignore any spaces at front of name
        theName = theName.substring(j,i+1);
        return theName
    * Add leading zero(s)
    function addLeadingZero(tempPageNum, pageCount){
        if(peuINFO.zeroPadding == 0){
            // Normal padding
            if((tempPageNum < 10 && pageCount < 100) || (tempPageNum > 9 && pageCount > 99 && tempPageNum < 100))
                return addSingleZero(tempPageNum);
            else if(tempPageNum < 10 && pageCount > 99)
                return addDoubleZero(tempPageNum);
            else
                return ("" + tempPageNum);
        }else if(peuINFO.zeroPadding == 1){
            // Pad to 2 digits
            if(tempPageNum < 10)
                return addSingleZero(tempPageNum);
            else
                return ("" + tempPageNum);
        }else{
            // Pad to 3 digits
            if(tempPageNum < 10)
                return addDoubleZero(tempPageNum);
            else if(tempPageNum < 100)
                return addSingleZero(tempPageNum);
            else
                return ("" + tempPageNum);
    * Add leading zero helper for single
    function addSingleZero(pgNum){
        return ("0" + pgNum);
    * Add leading zero helper for double
    function addDoubleZero(pgNum){
        return ("00" + pgNum);
    * Create lot name from page number
    function makeLotName(thePage, subType){
        var iii = thePage;
        var curr = 0;
        var alphaBet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        var lotName = "L";
        if(subType == 0){
            while(iii>52){
                curr = Math.floor((iii-1)/52)-1;
                lotName += alphaBet[curr];
                if(curr >= 0)
                    iii -= 52*(1+curr);
                else
                    iii -= 52;
            lotName += alphaBet[Math.floor((iii-1)/2)%26];
        else
            for(iii=thePage; iii>0; iii-=52)
                lotName += alphaBet[Math.floor((iii-1)/2)%26];
        return lotName += (thePage & 0x1)?".F":".B";
    * Advance progress bar one unit
    function advanceBar(){
        var progCancel = app.setProgress(++progCurrentPage);
        if(progCancel)
            byeBye("User canceled export.",peuINFO.sayCancel);
    * Create an Empty tempENTRY "struct"
    function getNewTempENTRY(){
        var newTempENTRY = new Array();
        newTempENTRY["theDoc"] = null;
        newTempENTRY["singlePage"] = null;
        newTempENTRY["getOut"] = null;
        newTempENTRY["outDir"] = null;
        newTempENTRY["outfileName"] = "";
        newTempENTRY["nameConvType"] = null;
        newTempENTRY["baseName"] = null;
        newTempENTRY["doSpreadsON"] = null;
        newTempENTRY["doOneFile"] = null;
        newTempENTRY["formatType"] = null;
        newTempENTRY["layersON"] = null;
        newTempENTRY["hasNonContig"] = false;
        newTempENTRY["nonContigPgs"] = null;
        newTempENTRY["pageNameArray"] = new Array();
        newTempENTRY["pageRangeArray"] = new Array();
        newTempENTRY["psINFO"] = null;
        newTempENTRY["pdfPRESET"] = null;
        newTempENTRY["epsINFO"] = null;
        newTempENTRY["jpegINFO"] = null;
        newTempENTRY["layerINFO"] = null;
        newTempENTRY["useTag"] = null;
        newTempENTRY["pgStart"] = null;
        newTempENTRY["pgEnd"] = null;
        return newTempENTRY;
    * Record all the page/spread names
    function recordPgNames(tempENTRY){
            // Get names of all the pages. Needed when pages are named using sectioning
        for (i = 0; i < tempENTRY.theDoc.documentPreferences.pagesPerDocument; i++){
            var aPage = tempENTRY.theDoc.pages.item(i);
            tempENTRY.pageNameArray[i] = aPage.name;
            tempENTRY.pageRangeArray[i] = (aPage.appliedSection.includeSectionPrefix)? aPage.name : (aPage.appliedSection.name + aPage.name);
        return tempENTRY;
    * Set the export options
    function setExportOption(currentINFO){
            // Set any options here instead of with each page
        switch (currentINFO.formatType){
            case 0: // PostScript Formatting
                setPSoptions(currentINFO);
                break;
            case 1: // PDF Formatting
                // Nothing to do
                break;
            case 2: // EPS Formatting
                setEPSoptions(currentINFO.epsINFO);
                break;
            case 3: // JPEG Formatting
                setJPEGoptions(currentINFO.jpegINFO);
                break;
    * Get PostScript format options
    function getPSoptions(docName){
        var psOptions = new Array();
        psOptions["ignore"] = true;
        var tempGetOut, PSdlog, pgHeight, pgWidth;
        var changeAddPSextention, tempBaseName;
        var printPreset;
        do{
            tempGetOut = true;
            PSdlog = app.dialogs.add({name:"PostScript Options for \"" + docName + "\"", canCancel:true} );
            with (PSdlog)
                with (dialogColumns.add() ){
                    with (dialogRows.add() )
                        staticTexts.add({staticLabel:"Print Presets:"} );
                    printPreset = dropdowns.add({stringList:peuINFO.psPrinterNames , minWidth:236, selectedIndex:peuINFO.defaultPrintPreset} );
                    with (dialogRows.add() )
                        staticTexts.add({staticLabel:"Override PS Page Size (" + peuINFO.measureLableArray[peuINFO.measurementUnits] + ")"} );
                    with (borderPanels.add() )
                        with (dialogColumns.add() )
                            with (dialogRows.add() ){
                                staticTexts.add({staticLabel:"Width:", minWidth:45} );
                                pgWidth = textEditboxes.add({editContents:"0", minWidth:53} );
                                staticTexts.add({staticLabel:"Height:", minWidth:45} );
                                pgHeight = textEditboxes.add({editContents:"0", minWidth:54} );
                    with (dialogRows.add() ){
                        staticTexts.add({staticLabel:"Add \".ps\" to end of file name"} );
                        changeAddPSextention = dropdowns.add({stringList:["No","Yes"], selectedIndex:peuINFO.addPSextention} )
            if((PSdlog.show()) ){
                // Get the page height + width
                pgHeight = parseFloat(pgHeight.editContents);
                pgWidth = parseFloat(pgWidth.editContents);
                // Check entered H & W for error
                if(isNaN(pgHeight) || isNaN(pgWidth) || pgHeight < 0 || pgWidth < 0 ){
                    alert ("Both page height and width must be numeric and greater than zero (3.1).");
                    pgHeight = "0";
                    pgWidth  = "0";
                    tempGetOut = false;
                    continue;
                if(pgHeight > 0 && pgWidth > 0) // User changed size, use the new size
                    psOptions.ignore = false;
                psOptions["height"] = pgHeight + peuINFO.measureUnitArray[peuINFO.measurementUnits];
                psOptions["width"] = pgWidth + peuINFO.measureUnitArray[peuINFO.measurementUnits];
                psOptions["ext"] = changeAddPSextention.selectedIndex;
                peuINFO.addPSextention = psOptions["ext"];
                psOptions["preset"] = printPreset.selectedIndex
                peuINFO.defaultPrintPreset = psOptions.preset;
                savePrefs();
                PSdlog.destroy();
            else{
                PSdlog.destroy();
                byeBye("Exporting has been canceled by user.",peuINFO.sayCancel);
        } while(!tempGetOut);
        return psOptions;
    * Set Postscript options
    function setPSoptions(theINFO){
        with(currentINFO.theDoc.printPreferences){
            activePrinterPreset = peuINFO.csPSprinters[theINFO.psINFO.preset];
            peuINFO.origSpread = printSpreads; // Used to reset to original state when done
            printSpreads = theINFO.doSpreadsON;
            if(colorOutput != ColorOutputModes.separations && colorOutput != ColorOutputModes.inripSeparations)
                printBlankPages = true;
            if (theINFO.useTag)
                pageInformationMarks = true;
            else
                pageInformationMarks = false;
            if(!theINFO.psINFO.ignore){
                try{
                    paperSize = PaperSizes.custom;
                    paperHeight = theINFO.psINFO.height;
                    paperWidth = theINFO.psINFO.width;
                catch(Exception){
                    alert ("The current PPD doesn't support custom page sizes. The page size from the Print Preset will be used (3.2).");
    * Get PDF options
    function getPDFoptions(theINFO){
        var PDFdlog = app.dialogs.add({name:"PDF Options for \"" + theINFO.theDoc.name.split(".ind")[0] + "\"", canCancel:true} );
        var temp = new Array();
        for(i=0;i<app.pdfExportPresets.length;i++)
            temp.push(app.pdfExportPresets[i].name);
        // Test if default PDFpreset is greater # than actual list.
        // This occurs if one was deleted and the last preset in the list was the default
        if(peuINFO.defaultPDFpreset > temp.length-1)
            peuINFO.defaultPDFpreset = 0;
        with (PDFdlog)
            with (dialogColumns.add() ){
                with (dialogRows.add() )
                    staticTexts.add({staticLabel:"PDF Export Preset:"} );
                pdfPresets = dropdowns.add({stringList: temp, minWidth:50, selectedIndex:peuINFO.defaultPDFpreset} );
        if(PDFdlog.show() ){
            temp = app.pdfExportPresets[pdfPresets.selectedIndex];
            peuINFO.defaultPDFpreset = pdfPresets.selectedIndex;
            peuINFO.origSpread = temp.exportReaderSpreads;
            try{
                temp.exportReaderSpreads = theINFO.doSpreadsON;
                temp.pageInformationMarks = (theINFO.useTag && temp.cropMarks)?true:false;
            }catch(e){/*ignore it*/}
            PDFdlog.destroy();
            return temp;
        else{
            PDFdlog.destroy();
            byeBye("PDF exporting has been canceled by user.", peuINFO.sayCancel);
    * Get JPEG options
    function getJPEGoptions(docName){
        var temp = new Array();
        var JPEGdlog = app.dialogs.add({name:"JPEG Options for \"" + docName + "\"", canCancel:true} );
        with (JPEGdlog)
            with (dialogColumns.add() ){
                with (dialogRows.add() )
                    staticTexts.add({staticLabel:"Quality:"} );
                JPEGquality = dropdowns.add({stringList:(new Array("Low","Medium","High","Maximum")) , minWidth:50, selectedIndex:peuINFO.defaultJPEGquality} );
                with (dialogRows.add() )
                    staticTexts.add({staticLabel:"Encoding Type:"} );
                    JPEGrender = dropdowns.add({stringList:["Baseline","Progressive"] , minWidth:50, selectedIndex:peuINFO.defaultJPEGrender } );
        if(JPEGdlog.show() ){
            peuINFO.defaultJPEGquality = JPEGquality.selectedIndex;
            temp["qualityType"] = peuINFO.defaultJPEGquality;
            peuINFO.defaultJPEGrender = JPEGrender.selectedIndex;
            temp["renderType"] = peuINFO.defaultJPEGrender;
        else{
            JPEGdlog.destroy();
            byeBye("JPEG exporting has been canceled by user.",peuINFO.sayCancel);
        JPEGdlog.destroy();
        return temp;
    * Set JPEG options
    function setJPEGoptions(theINFO){
        with(app.jpegExportPreferences){
            peuINFO.origSpread = exportingSpread; // Used to reset to original state when done
            exportingSpread = currentINFO.doSpreadsON;
            exportingSelection = false; // Export the entire page
            if(peuINFO.csVersion > 3)
                jpegExportRange = ExportRangeOrAllPages.exportRange;
            switch (theINFO.qualityType){
                case 0:
                    jpegQuality = JPEGOptionsQuality.low;
                    break;
                case 1:
                    jpegQuality = JPEGOptionsQuality.medium;
                    break;
                case 2:
                    jpegQuality = JPEGOptionsQuality.high;
                    break;
                case 3:
                    jpegQuality = JPEGOptionsQuality.maximum;
                    break;
            jpegRenderingStyle = (theINFO.renderType)? JPEGOptionsFormat.baselineEncoding : JPEGOptionsFormat.progressiveEncoding;
    * Get EPS options
    function getEPSoptions(docName){
        var epsOptions = new Array();
        var epsDialog = app.dialogs.add({name:"EPS Options for \"" + docName + "\"", canCancel:true} );
        var oldBleed = peuINFO.bleed;
        with (epsDialog){
            // Left Column
            with (dialogColumns.add() ){
                with (dialogRows.add() )
                with (borderPanels.add() )
                    with (dialogColumns.add() ){
                        with (dialogRows.add() )
                            staticTexts.add({staticLabel:"Flattener Presets:"} );
                        changeFlattenerPreset = dropdowns.add({stringList:peuINFO.flattenerNames , minWidth:180, selectedIndex:peuINFO.defaultFlattenerPreset} );
                        with (dialogRows.add() )
                            changeIgnoreOverride = checkboxControls.add({staticLabel:"Ignore Overrides", checkedState:peuINFO.ignoreON} );
                        with (dialogRows.add() )
                            staticTexts.add({staticLabel:"Preview Type:"} );
                        changePreviewPreset = dropdowns.add({stringList:peuINFO.previewTypes , minWidth:180, selectedIndex:peuINFO.defaultPreview} );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Bleed:"} );
                            changeBleedVal = realEditboxes.add({editValue:peuINFO.bleed, minWidth:60} );
                            staticTexts.add({staticLabel:peuINFO.measureLableArray[peuINFO.measurementUnits]} );
                        with (dialogRows.add() )
                            staticTexts.add({staticLabel:"OPI Options:"} );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Omit:"} );
                            changeOpiEPS = checkboxControls.add({staticLabel:"EPS", checkedState:peuINFO.epsON} );
                            changeOpiPDF = checkboxControls.add({staticLabel:"PDF", checkedState:peuINFO.pdfON} );
                            changeOpiBitmap = checkboxControls.add({staticLabel:"Bitmapped", checkedState:peuINFO.bitmapON} );
            // Right column
            with (dialogColumns.add() ){
                with(borderPanels.add() ){
                    with(dialogColumns.add() ){
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"PostScript level:"} );
                            var changePSlevel = dropdowns.add({stringList:["2","3"] , minWidth:75, selectedIndex:peuINFO.psLevel} );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Color mode:"} );
                            if(peuINFO.csVersion == 3)
                                var changeColorMode = dropdowns.add({stringList:["Unchanged","Grayscale", "RGB", "CMYK"] , minWidth:100, selectedIndex:peuINFO.colorType } );
                            else
                                var changeColorMode = dropdowns.add({stringList:["Unchanged","Grayscale", "RGB", "CMYK","PostScript Color Management"] , minWidth:100, selectedIndex:peuINFO.colorType } );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Font embedding:"} );
                            var changeFontEmbedding = dropdowns.add({stringList:["None","Complete", "Subset"] , minWidth:100, selectedIndex:peuINFO.fontEmbed } );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Type of data to send:"} );
                            var changeDataToSend = dropdowns.add({stringList:["All","Proxy"] , minWidth:50, selectedIndex:peuINFO.dataSent } );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Data type:"} );
                            var changeDataType = dropdowns.add({stringList:["Binary","ASCII"] , minWidth:50, selectedIndex:peuINFO.dataType } );
                        with (dialogRows.add() ){
                            staticTexts.add({staticLabel:"Perform OPI replacement:"} );
                            var changeOPIreplace = dropdowns.add({stringList:["No","Yes"] , minWidth:50, selectedIndex:peuINFO.opiReplacement} );
        do{
            var getOut = true;
            if((epsDialog.show()) ){
                // Use these to update the prefs file
                peuINFO.defaultFlattenerPreset = changeFlattenerPreset.selectedIndex;
                peuINFO.ignoreON = (changeIgnoreOverride.checkedState)?1:0;
                peuINFO.defaultPreview = changePreviewPreset.selectedIndex;
                peuINFO.bleed = changeBleedVal.editContents;
                peuINFO.epsON = (changeOpiEPS.checkedState)?1:0;
                peuINFO.pdfON = (changeOpiPDF.checkedState)?1:0;
                peuINFO.bitmapON = (changeOpiBitmap.checkedState)?1:0;
                peuINFO.psLevel = changePSlevel.selectedIndex;
                peuINFO.colorType = changeColorMode.selectedIndex;
                peuINFO.fontEmbed = changeFontEmbedding.selectedIndex;
                peuINFO.dataSent = changeDataToSend.selectedIndex;
                peuINFO.dataType = changeDataType.selectedIndex;
                peuINFO.opiReplacement = changeOPIreplace.selectedIndex;
                // Check if bleed value is OK
                peuINFO.bleed = parseFloat(peuINFO.bleed)
                if (isNaN(peuINFO.bleed)){
                    alert("Bleed value must be a number (1.1).");
                    getOut = false;
                    peuINFO.bleed = oldBleed;
                else if (peuINFO.bleed < 0){
                    alert("Bleed value must be greater or equal to zero (1.2).");
                    getOut = false;
                    peuINFO.bleed = oldBleed;
                else {
                    // Check if bleed is too big
                    try {
                        app.epsExportPreferences.bleedBottom = "" + peuINFO.bleed + peuINFO.measureUnitArray[peuINFO.measurementUnits];
                    catch (Exception){
                        alert("The bleed value must be less than one of the following: 6 in | 152.4 mm | 432 pt | 33c9.384");
                        getOut = false;
                        peuINFO.bleed = oldBleed;
            else{
                epsDialog.destroy();
                byeBye("EPS Export canceled by user.", peuINFO.sayCancel);
        }while(!getOut);
            // These are used for exporting
            epsOptions["defaultFlattenerPreset"] = changeFlattenerPreset.selectedIndex;
            epsOptions["ignoreON"] = peuINFO.ignoreON;
            epsOptions["defaultPreview"] = changePreviewPreset.selectedIndex;
            epsOptions["bleed"] = peuINFO.bleed;
            epsOptions["epsON"] = peuINFO.epsON;
            epsOptions["pdfON"] = peuINFO.pdfON;
            epsOptions["bitmapON"] = peuINFO.bitmapON;
            epsOptions["psLevel"] = changePSlevel.selectedIndex;
            epsOptions["colorType"] = changeColorMode.selectedIndex;
            epsOptions["fontEmbed"] = changeFontEmbedding.selectedIndex;
            epsOptions["dataSent"] = changeDataToSend.selectedIndex;
            epsOptions["dataType"] = changeDataType.selectedIndex;
            epsOptions["opiReplacement"] = changeOPIreplace.selectedIndex;
            epsDialog.destroy();
            return epsOptions;
    *     Apply chosen settings to the EPS export prefs
    function setEPSoptions(theINFO){
        with(app.epsExportPreferences){
            appliedFlattererPreset = peuINFO.flattenerNames[theINFO.defaultFlattenerPreset];
            bleedBottom = "" + theINFO.bleed + peuINFO.measureUnitArray[peuINFO.measurementUnits];
            bleedInside = bleedBottom;
            bleedOutside = bleedBottom;
            bleedTop = bleedBottom;
            epsSpreads = currentINFO.doSpreadsON;
            ignoreSpreadOverrides = theINFO.ignoreON;
            switch (theINFO.dataType){
                case 0:
                    dataFormat = DataFormat.binary;
                    break;
                case 1:
                    dataFormat = DataFormat.ascii;
                    break;
            switch (theINFO.colorType){
                case 0:
                    epsColor = EPSColorSpace.unchangedColorSpace;
                    break;
                case 1:
                    epsColor = EPSColorSpace.gray;
                    break;
                case 2:
                    epsColor = EPSColorSpace.rgb;
                    break;
                case 3:
                    epsColor = EPSColorSpace.cmyk;
                    break;
                case 4:
                    epsColor = EPSColorSpace.postscriptColorManagement;
                    break;
            switch (theINFO.fontEmbed){
                case 0:
                    fontEmbedding = FontEmbedding.none;
                    break;
                case 1:
                    fontEmbedding = FontEmbedding.complete;
                    break;
                case 2:
                    fontEmbedding = FontEmbedding.subset;
                    break;
            switch (theINFO.dataSent){
                case 0:
                    imageData = EPSImageData.allImageData;
                    break;
                case 1:
                    imageData = EPSImageData.proxyImageData;
                    break;
            switch (theINFO.defaultPreview){
                case 0:
                    preview = PreviewTypes.none;
                    break;
                case 1:
                    preview = PreviewTypes.tiffPreview;
                    break;
                case 2:
                    preview = PreviewTypes.pictPreview;
                    break;
            switch (theINFO.psLevel){
                case 0:
                    postScriptLevel = PostScriptLevels.level2;
                    break;
                case 1:
                    postScriptLevel = PostScriptLevels.level3;
                    break;
            // Setting these three to false prevents a conflict error when trying to set the opiImageReplacement value
            omitBitmaps = false;
            omitEPS = false;
            omitPDF = false;
            if (theINFO.opiReplacement){
                opiImageReplacement = true;
            else {
                opiImageReplacement = false;
                omitBitmaps = theINFO.bitmapON;
                omitEPS = theINFO.epsON;
                omitPDF = theINFO.pdfON;
    * Build the main dialog box
    function createMainDialog (docName, thisNum, endNum){
        var theDialog = app.dialogs.add({name:(VERSION_NAME + ": Enter the options for \"" + docName + "\"" + ((endNum==1)?"":" (" + thisNum + " of " + endNum + " documents)") )
    , canCancel:true} );
        with (theDialog){
            // Left Column
            with (dialogColumns.add() ){
                with (dialogRows.add() )
                    staticTexts.add({staticLabel:"Page Naming Options"} );
                with(borderPanels.add() ){
                    with(dialogColumns.add() ){
                        // Radio butons for renaming convention
                        namingConvention = radiobuttonGroups.add();
                        with(namingConvention){
                            radiobuttonControls.add({staticLabel:"As Is", checkedState:(peuINFO.nameConvType == 0)} );
                            radiobuttonControls.add({staticLabel:"Add \".L\"", checkedState:(peuINFO.nameConvType == 1)} );
                            radiobuttonControls.add({staticLabel:"Odd/Even = \".F/.B\"", checkedState:(peuINFO.nameConvType == 2)} );
                            radiobuttonControls.add({staticLabel:"Odd/Even = \"LA.F/LA.B\"" , checkedState:(peuINFO.nameConvType == 3)});
                            radiobuttonControls.add({staticLabel:"Numeric Override" , checkedState:(peuINFO.nameConvType == 4)});
                    with (dialogRows.add() )
                        staticTexts.add({staticLabel:""} );
                        with(dialogRows.add() ){
                        staticTexts.add({staticLabel:"Base Name"} );
                        newBaseName = textEditboxes.add({editContents:baseName, minWidth:100} );
            // Middle Column
            with (dialogColumns.add() ){
                with (dialogRows.add() )
       

    RichardM0701, are you the same person as scottbentley?
    I fear your response doesn't make a lot of sense. The easiest way is to put your files into a book, which will not harm them. The easiest script is often no script at all.
    I don't understand your comment about separate text boxes, files contain text boxes and definitionally multiple files means multiple separate text boxes.
    I do not know what you are referring to with respect to the toc update, perhaps you could reference a particular command or script, or provide a screenshot.
    It sounds like now you are interested in updating multiple tables of contents in a single fell swoop -- this would appear to have nothing to do with the original question. If that's the case, please start a new thread.

  • RoboHELP to PDF Page numbering issue

    HI,
    I am experiencing a problem related to page numbers in the pdf generated through the RoboHELP source files. Hereby I am giving some images of the initial pages of the PDF, in which I have clearly explained the issue. I have removed the content and images related to our project. Please let me know, how I can overcome this issue.
    NOTE: The page numbering issue was not there earlier.  I have imported two frame maker files. Then I was not able to generate a PDF. That particular FM file had a table. Read in the Adobe forum that some type of tables may affect the generation of PDF. Hence, I have deleted the FM files. Since then I am facing the page numbering issue.
    Here are the images with my explanation of the issue:
    The following is an image of the pdf. This is actually the fourth page of the pdf, but it is numbered as xiv.
    The next pae is numbered as xv. Again the numbering reverted back to xiv as shown in the following iamge.
    Immeditely after the TOC, the 1st page is numbered as 115.
    Again every 1st page of a chapter is starting as page number 115
    The 2nd page of every chapter is numbered as 126.
    The 3rd page of every chapter is numbered as 125.
    The fourth page again numbered as 126 followed by 125, which is continuing till end of the chapter.
    Please let me know how this issue can be solved.

    I am not sure what is causing this but can suggest a workaround. Instead of publishing direct to PDF, create a Word document only. That may have page numbering issues but there you should be able to correct them. Then publish your PDF from Word.
    See www.grainge.org for RoboHelp and Authoring tips
    @petergrainge

  • Page Export / Import in between two workspaces in the same instance

    Hi All,
    I am trying to import a page from one application to another application in a different work space in the same instance.
    In the export file i have changed the target application id and workspace id. I am facing below error while importing the specific page.
    ORA-20001: GET_BLOCK Error. ORA-20001: Execution of the statement was unsuccessful. ORA-00001: unique constraint (FLOWS_030100.WWV_FLOW_PAGE_PLUGS_PK) violated &lt;pre&gt;declare s varchar2(32767) := null; l_clob clob; l_length number := 1; begin s := null; wwv_flow_api.create_page_plug ( p_id=&amp;gt; 190100618443233983 + wwv_flow_api.g_id_offset, p_flow_id=&amp;gt; wwv_flow.g_flow_id, p_page_id=&amp;gt; 31, p_plug_name=&amp;gt; 'Upload Scripts', p_region_name=&amp;gt;'', p_plug_templa
    Error installing page.
    Return to application.
    Any help for this.

    I got the solution for the page export/import in between 2 workspaces.
    Only thing is we need to do some template related changes in the page, item, region attributes .
    Ref: http://www.dba-oracle.com/htmldb/t_exporting_copyin_pages_screens_workspaces.

  • Citrix Netscaler AppXpert with Sharepoint 2010 Page Edit Issue

    Posting this as a questions and discussion point.
    The issue is in using Citrix Netscaler with AppXpert with SharePoint 2010. I've seen this issue for two customers.
    Configurations:
    - Citrix Netscaler as the load Balancer
    - Netscaler AppXpert for SharePoint deployed on Netscaler (using either AppXpert version 1.1 or 2.0)
    - SharePoint 2010 Standard or Enterprise editions
    Issue:
    A SharePoint user with appropriate rights go to a SharePoint page. They choose Edit page, make changes and want to save changes. At this point all SharePoint ribbon options on the top are greyed out. End result, users are not able to make changes to their
    site pages. Issue happens for everyone including Farm Admins.
    Cases:
    a. The users are able to edit and save SharePoint wiki pages if I point user's PC to the SharePoint web server WFE by changing their local host file.
    b. On Citrix Netscaler, if I use the traditional load balancing i.e. without Citrix AppXpert, then the users are able to edit and save the pages. That is an option if the customer is using SharePoint 2010 Standard. That is not an option if a customer is
    using InfoPath forms. InfoPath is a feature of SharePoint 2010 Enterprise edition. Citrix AppXpert for SharePoint is needed to make the InfoPath work. Else the users get session errors when they use InfoPath Web forms.
    c. The issue happens on almost all combination of OS and browser. XP, vista, Win 7, Win8, Win8.1, IE8, 9, 10, 11 and other browsers like chrome etc as well.
    Please share your ideas and suggestions.

    Hi Faisal,
    As I understand, the issue will be solved when end users directly connect to SharePoint WFE servers. Since the issue is related to third party products, I'd recommend you contact their support engineer for sufficient resource and assistance. For your convenience:
    http://discussions.citrix.com/forum/150-support-forums/
    Should you need more assistance, let me know. Thanks for the understanding.
    Regards,
    Rebecca Tu
    TechNet Community Support

  • Bizzare export issue

    Here is a very weird export issue. Windows XP.
    Project is set at h264 1920x1080 mono audio 29.97 fps
    I have 30 shots that make up the sequence. Each shot is exactly 90 frames. I exported each sequence at h264 1920x1080 with one channel of audio. The first shot exports just fine and is 5 MB. The second shot exports at 10 MB. The third is 15 MB, the tenth shot is 50MB. But the picture is still 90 frames for each shot. BUT, when I export without audio each exported file is just 5 MB. If I look at the properties of each clip the duration of the video and audio is just 90 frames. If I open one of these clips in QuickTime Pro and re-export it as source then the files size goes back to 5 MB; same video, same audio yet with the correct file size.
    Anyone seen this before?
    Is there a setting that could be incorrect?
    -cablet

    Weird, man. Not sure what might cause that.

  • Which m/s word version does Pages export to?

    I prepare text copy for a magazine article in Pages (09);  Am wanting to export the file to WORD (M/S) and end up with a .docx converted
    file.  Am I able to specify a specific file type, e.g. doc, docx?
    CabrioJim
    LA LA Land

    Hi,
    Pages exports to Word as .doc
    If you want to convert to .docx, you will need to open it in Word then export as .docx.
    There is a version of Word for Mac or you could use Libre Office.
    Regards,
    Ian.

  • Anyone know "what version" of Word that Pages exports to?

    I have a business need to know what version of Word Pages exports as? It doesn't state anywhere and I am assuming if it is not a .docx it must be an older version. Any clue or ideas?

    Pages 4.1 (latest version) exports Word documents with a .doc file extension.
    The Finder's Get Info window reports the Word document to be a "Microsoft Word 97 - 2004 document".
    When I open the exported Wod document with Word 2011 it also says it's a "type" of "Microsoft Word 97 - 2004 document". Running Word's Compatibility Check says it's compatible with Word 97-2011 (though this document is very simple)
    NB Earlier versions of Pages might export to a different Word format.

  • PP CS5.5 FLV To MP4 Export Issues / Problems

    I just upgraded from Production Premium CS5 to CS5.5. I do a fair amount of converting/exporting of imported FLV files (downloaded from internet news sites) to H.264/AAC w/ MP4 wrappers using Premiere Pro (PP) and Adobe Media Encoder (AME). My equipment is a 1+ yr. old HP Win 7 Pro w/ an Intel i970 Quadcore, 12 Gb RAM and MSI nVidia GTX 470 GPU. I have never experienced any queue or export issues w/ CS5 (at least that I noticed), but I am experiencing noticeably degraded queue export and direct export problems with these files in CS5.5.
    Description: (1) The queue export times for the exact same imported FLV clip(s) using the exact same sequence settings and H.264/MP4 export settings are noticeably slower in CS5.5 (sometimes 2x, depending on the export settings, e.g. using maximum render quality) than in CS5; (2) My MSI Afterburner GPU monitoring software indicates 5-10% GPU usage during queue/export in CS5, while indicating 0% GPU usage (flatline) in CS5.5; and (3) When I attempt to direct export these files using CS5.5 I get the following error message: "The source and output audio channels are not compatible or a conversion does not exist."
    I suspect that it may have something to do with "conforming" anomalies when the FLV file is imported into PP, but I would put that squarely in the category of rank speculation on my part.
    Has anyone experienced the same or similar problems or have any insight into what may be the problem(s)? Of course, thanks for any help/insight you can provide.
    Jim

    What do you mean by a better routine?
    A better compression routine than H.264.
    Is the quality better than H.264?
    Yes.
    Does this use an MOV wrapper?
    Yes.
    Also, would it import correctly into PPro?
    Yes.
    we would import files into PPro exported out of FCP and would get a red pixelated glitch during preview and export. Does this codec solve this problem as well if it is an MOV wrapper?
    I don't know anything about FCP.
    Sorry for all the questions, just want to get things right before diving into a new codec.
    It's harmless, and free.
    Download it and run some tests.

  • Simple flash export issue

    hello
    I'm trying to export a flash video using Adobe media encoder from Premier Pro, but when I do I get this error " there are no clips to build".
    I have another file that I am able to export and it does not have this problem.
    They are Windows Media files and play in Premier fine. I am using Premier Pro CS3.
    Lastly, I'm not a video expert but I really need to get these up on the web for work, there is a lot of pressure and I need to get it done.
    Regards,
    Tom

    fixed the exporting issue.

  • Exporting ISSUES! Help

    I am a relatively new user to lightroom.  I haven't had any exporting issues until today.  I am attempting to export a photo/photos to a specific folder with a custom name.  When I do this it exports the WHOLE library and NOT the edited photo.  What am I doing wrong??

    Lightroom usually exports all images that are highlighted. If you only want to export one image then make sure it is the only image that is highlighted.

  • Page Export/Import problems

    I have been trying to migrate my portal 3.0.7 development to another portal 3.0.8 development database and have been having problems with the page export and import routines. I have been following the Oracle Export / Import document and first come across the problem when importing the content area as it tries to import its content area page.
    I have then tried to export / import pages separately and consistently get the following error.
    pageimp.csh s portal30 p portal30 m reuse d pobpage.dmp c Kenny.ogg security
    Start Portal Page Import
    Please Wait...
    declare
    ERROR at line 1:
    ORA-06510: PL/SQL: unhandled user-defined exception
    ORA-06512: at "PORTAL30.WWUTL_POB_TRANSPORT", line 1879
    ORA-01403: no data found
    ORA-06512: at line 6
    Disconnected from Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
    With the Partitioning option
    JServer Release 8.1.7.0.0 - Production
    Import of Portal Page Complete
    The Export command used was as follows:
    pageexp.csh s portal30 p portal30 n PAGE0 d pobpage.dmp c tools.ogg security
    As I am migrating from 3.0.7 to 3.0.8 I use the 3.0.7 export script and the 3.0.8 import script. For completeness I have also tried using the 3.0.7 and 3.0.8 import and export scripts, and get the same error.
    The version of Portal I am using is the Solaris version.
    When I look at the new site and click on the pages Tab no new pages are loaded as expected. Does anyone have a similar problem or am I overlooking something?
    Any suggestions?
    Thanks
    Garry
    null

    Portal 3.0.8 is now available in both NT and UNIX. So you need to upgrade both your platforms and then use export/import between the same versions. That's easier said than done as I have yet to get the export/import scripts to correctly and fully work on exporting from NT to UNIX Tru64. Originally I ran the scripts on NT and connected to the UNIX DB; however, somewhere I saw that it is more relaible to run the scripts on UNIX. So I am trying that now.
    Good luck!
    (By the way I notice that Larry declared war on complexity. The laughable irony of this is revealed by a look at these discussion boards!)
    null

  • Exporting issues after 4.2 upgrade

    Has anyone else experienced exporting issues after installing the 4.2 upgrade? It used to be a breeze but now I keep getting the message that a destination folder has not been specified even though I've done that. Any feedback would be greatly appreciated! Thank you.

    Are you using an Export preset, or setting the Export up manually each time? 

Maybe you are looking for