Scripting CS5- CS3

I'm not sure what posessed me to read the latest thread about people complaining about the inability to downsave from CS5 to CS3 (over in the general forum), but then I had a goofy thought:
What if someone wrote a script to iterate over a document and dump the whole thing in JSON (JavaScript Object Notation), or whatever, and then import it into CS3?
(Originally I was thinking, I wonder why no one who is concerned about this doesn't sit down and write the horrible bear of an XSLT translation from IDML to INX? It certainly wouldn't be pleasant, and it would be a pain to get all the corner cases right, but it should be do-able...) I wondered if there wasn't a format other than IDML or INX that descrbed reasonably well the format of an InDesign document, and then I realized that the Scripting DOM is basically such a model. And even better, since you can ask InDesign to use an older version of the scripting DOM, you can ensure that you don't give CS3 anything that it shouldn't be able to evaluate.
Now...I'm not going to write this tool, but it doesn't seem like it should be more than a few days of work for someone who is eager and interested (maybe none of those people have CS5? I suppose that's not an impediment though! No need for CS5 to write the code...). You just loop over all the properties of the document recursively ("for (i in app.activeDocument)...").
There are probably a whole bunch of corner-cases that need special handling, And some decisions would have to be made about text...maybe the easiest answer with text would be to export it as InDesign Tagged Text and throw that representation in the file, rather than having to loop over individual characters and determine where overrides stopped and started.
And you'd have to be very careful not to get caught in loops in the DOM. Anyhow, does anyone want to do this?
Remember, only forty-two thousand nine-hundred-and-sixty non-unique page views:
p.s.: (Please don't post about this crazy idea in the General forum...I wouldn't want anyone to get the wrong idea...)

For:
1. If people complain it misses features (such as GREP styles), they can be invited to write a workaround themselves!
2. JS is version independent. Well, largely, at least. If some properties in CS6 or '7 change names (again!), it should be relatively easy to update.
3. JSON is a general format (isn't it? I'd have to look into it) so, finally, the writers of Scribus have something to look into.
Against:
1. You need the same ID version as the document, because otherwise you cannot open it.
2. It Won't Ever Work, because (if you read that thread) people who "need" the downsave are expecting way too much.
Neutral:
1. Does this mean I can stop working on my experimental CSx binary-image-to-INX conversion?

Similar Messages

  • Scripting CS5 64-bit

    I've looked and used the cs5 vbscript reference to automate CS5 from .NET.  I've [succesfully] used CS3 this way in the past, but now with the upgrade to CS5, I'm having all sorts of problems.  First, I had to remove the COM reference in my code, since there was no Adobe Photoshop Type Library registered.  Using the late binding examples (CreateObject("Photoshop.Application"), appears to start working, but I'm getting several unexplained errors, and watching the UI as the automation is running, I'm finding extra documents being opened and documents being closed when I don't expect it.  Is scripting CS5 64bit something that should work, or is this unsupported?

    Scripting works just fine in Photoshop CS5 - in fact there is an entire forum dedicated to Photoshop Scripting.
    (in other words: that's not part of the SDK and doesn't belong in this forum)

  • Need Booklet script for CS3

    My computer bombed -- have CS3 installed on another, now I need the booklet script for CS3. A google didn't bring it up for me. . .
    Thanks
    Lamar

    Both scripts have always worked flawlessly for me. BuildBooklet merely shuffles the pages, so it doesn't change the page size at all (you need to check the spreads box when you export or print), but it does not handle objects that cross the spine. Neither one handles the second script does cross-spine objects, but does not do bleed.
    Perhaps you'll find what you want at Steve Sterling legacy ID imposition scripts

  • Can PP CS5 & CS3 be installed on the same computer?

    Can PP CS5 & CS3 be installed on the same computer? Will they both function?
    I know I have to updates to windows 7. I have a 3gig quad core pros with 4 gigs ram.

    Yes they can be installed on the same pc, but i think you are a bit low on ram.

  • Convert Illustrator script from cs3 to CS5

    Hi Everyone,
    I'm new to illustrator scripting I did some simple InDesign script before but this the first time I am ask to create script for Illustrator.
    We have an old script that will create a report for the properties (e.i.: fonts, linkedImages, strokeWeights, dashes, strokeColors, etc.) of illustrator file. The script is working in CS2 and CS3 but since most of production people are now using CS5 and CS6 they ask if we could migrate this script to CS5. The script is using hashtable.jsx to get those properties. Does the CS5 script still need hashstable file or I have to create the script from scratch with out using the hashtable script?
    Any suggestion or information on how I could convert the script to higher version is mostly appreciated.
    Thanks and regards,
    --elmer

    I can't see #include in the script the only thing hashtable is called by this function. According to what I've read about the hashtable.jsx since it is in the startup script folder illustrator will autoload this script upon launching of the application.
    function TechArtProperties(parent) {
      this.width = 0;
      this.height = 0;
      this.colorMode = DocumentColorSpace;
      this.fonts = new Hashtable();
      this.embeddedImages = new Hashtable();
      this.linkedImages = new Hashtable();
      this.lockedObjects = 0;
      this.hiddenObjects = 0;
      this.strokeWeights = new Hashtable();
      this.dashes = new Hashtable();
      this.strokeColors = new Hashtable();
      this.fillColors = new Hashtable();
      this.effects = new Hashtable();
      this.brushes = new Hashtable();
      this.transparencies = new Hashtable();
      this.gradients = new Hashtable();
      this.layers = new Hashtable();
      this.parent = parent;
      this.total =0;
      this.artName = "";

  • How to convert scripts from CS3 to CS5 ?

    I made several scripts while using CS3. Now that I have got the CS5 version, how can I convert those previous scripts ? Thanks for your help.

    Which OS are you using.
    Windows XP/Vista/7 32 bit "C:\Program Files\Adobe\Adobe Photoshop CS3\Presets\Scripts" and "C:\Program Files\Adobe\Adobe Photoshop CS5\Presets\Scripts"
    Windows 64bit "C:\Program Files\Adobe\Adobe Photoshop CS5\Presets\Scripts" , "C:\Program Files (x86)\Adobe\Adobe Photoshop CS5\Presets\Scripts"
    Mac OS version ??

  • Bridge Scripting Capabilities (CS3 Javascript)

    Hi -- We have many users at our company who need to edit metadata in images (primarily jpegs, but some tifs). These users do not have access to Photoshop but do have access to Bridge.
    I have written a script in Bridge that opens a dialog window for them to edit certain metadata. It is accessed through the tools menu.
    The problem is I need to further automate the process but am unsure what the capabilities of Bridge are.
    What I would like to try to do:
    Currently the user would need to open Bridge, select the item (or drag the item onto the Bridge shorcut) and choose the script from the tools menu. Would there be any way to automate this further, maybe through some sort of folder action, or a trigger when the user drags a file onto the shortcut. Or is there anyway to assign shortcut keys in Bridge to Scripts?
    Also, is there anyway to script Bridge so that the files will be copied (and renamed) to a specific folder (again, without photoshop)?
    Any ideas would be appreciated. I have not used Bridge that much, so if I am going the wrong direction with this, please speak up. If anyone wants to point me in another direction, that would fine.
    thanks

    Hello,
      I'm a Bridge Quality Engineer.
      If you want to write the scripts to auto your cases, please firstly download Bridge SDK and read the DOM API of Bridge. I believe these documents will help you a lot. Please download the SDK from http://www.adobe.com/devnet/bridge/, and read the doc in folder 'docs'. The API provided are described in Bridge CS3 JavaScript Reference.pdf.
      After read it, you will find you can call the API to auto the process instead of 'through some sort of folder action, or a trigger when the user drags a file onto the shortcut'.
      And you can also get help by launching Adobe ExtendScript Tooolkit, which is installed automatically when Bridge is installed. By select menu Help-> Object Model Viewer, you can get info of Bridge DOM API, and also Core JavaScript Classes and Script UI Classes.
      Please check the API of File and Folder(in Core JavaScript Classes), and you can find File has copy() API, by using which you can copy files to a specific folder.
      If you have further question, please send it out.
      Thanks for support!
    BR,
    Chun Xia

  • JS: Using CS2 Scripts with CS3

    We're getting ready to (finally) upgrade from InDesign CS2 to CS3. We use several scripts (Javascript) regularly. I know quite a bit changed with the object model in CS3. I've seen a couple of threads here where Olav mentions "script versioning" that allows you to reference the old object model, but I haven't been able to find HOW to do that.
    I want to upgrade all of our scripts to the CS3 model, but that will take some time, as I am no expert. Is there a way to use our CS2 scripts just as they are for now (until I'm able to get them all updated)?
    Thanks,
    Lisa

    That script won't see any styles that are in style groups in CS3 -- is that the problem?
    Or it could be that the effect of simply reasserting the style in CS3 is different from CS/CS2. I don't remember.
    Dave

  • Help needed to update CS2-script to CS3

    Folks,
    I am no good at scripting myself (its on my to-do-list), but a friend of mine has a problem with this script, that wont work in CS3. I know that the syntax is wrong, but am unable to do solve this. Who can help?
    var thecount = app.documents.length;
    app.changeTextPreferences = NothingEnum.nothing;
    app.findTextPreferences = NothingEnum.nothing;
    var myDocument = app.activeDocument;
    var mysearchitems = ["", "Double Paragraph", "Double Tab", "Double Space", "Para Tab", "Para Space", "? space", "Fullstop Double Space"]
    var mychangeitems = ["", "Single Paragraph", "Single Tab", "Single Space", "Para Tab", " Tab", "Fullstop Single Space"]
    var theClass = myDocument.selection
    if (theClass == ""){
    var searchOptions = ["Document"];
    else {
    var searchOptions = ["Document", "Selection", "Story"];
    //now to create the dialog
    var myDialog = app.dialogs.add({name:"Masterfoods B - zoek en vervang (© Hans de Bijl)", canCancel:true});
    with (myDialog){
    with (dialogColumns.add()){
    with (borderPanels.add()){
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var myvijffindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var myvijfchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var myzesfindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var myzeschangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var myeighthfindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var myeighthchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var myninthfindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var myninthchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var mytienfindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var mytienchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var myelffindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var myelfchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var mytwaalffindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogColumns.add()){
    var mytwaalfchangefield = textEditboxes.add({minWidth:180});
    with (borderPanels.add()){
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Zoek:"});
    with (dialogColumns.add()){
    var mydertienfindfield = textEditboxes.add({minWidth:180});
    with (dialogColumns.add()){
    staticTexts.add({staticLabel:"Vervang:"});
    with (dialogC

    Hi Bert,
    Find and change in InDesign CS3 changed quite a bit from CS2, and scripting changed as well. Tell your friend to look at the examples of find and change in the Text chapter of the Adobe InDesign CS3 Scripting Guide: JavaScript--you can find the PDF and the associated scripts at:
    http://www.adobe.com/products/indesign/scripting/index.html
    ...and click the Scripting Resources tab.
    In brief: the search method was removed, and find and change methods corresponding to the find/change type were added (findText, changeText, findGrep/changeGrep, findGlyph/changeGlyph). The find/change preferences objects were also removed, and preferences objects corresponding to the new find/change types were added (findTextPreferences, changeTextPreferences, findGrepPreferences, changeGrepPreferences, findGlyphPreferences, changeGlyphPreferences).
    Thanks,
    Ole

  • Flash cs5 cs3 compatibility

    hello.
    i am at school that requires student to purchase the Current adobe CS suite when they enter as freshman.
    we now have CS5 in our labs. Students cannot figure a way to get there CS5 files into CS3.
    is this possible?
    thanks,
    harvey

    Check to see what each program has an optioon for in the save as dialgue box.
    E.I. Flash CS4 can save as CS3 and CS3 can Save as CS2 and as well Illustrator can do the same same but in a borader spectrum even sa low as AI 9.
    My suggestion would be to make native files of each in CS5 app and test then go back to CS 5 and try all of the save as opitons using the legacy options. I can probably say Phtooshop, and Illustrator will not be so hard but Flash, Encore, Premier, After Effects, etc., will be shoot and miss especially since you are going from CS5 all the way down to CS3.
    I ebleiev Phtooshop is the only one that can do it if you sue the most campatable opitons check bix when saving a .PSD file.
    Remmebr as a strudent even though you get a great deal when you buy a student version of the suite you can never upgrade those licenses. SO you arn't really getting a deal you will eventallu pay for a full suite amdprobab;y more if you keep buyion student versions.
    Buy full versions and never look back. Upgrade costs for full licenses are just as much as buying a new student version every new release. I tell students all teh time by a full version and be ready once you graduate.

  • Script for CS3 won't work in CS2

    Hello all,
    I am new to scripting and trying to get a script written for CS3 to work in CS2. The script was given to me a participant in the InDesign forum. At any rate, here is the script:
    for (n=0; n<app.selection.length; n++) {
    app.selection[n].move([23.44, 100.05]);
    I get an error messsage that says
    error #19
    error string "bad argument move"
    Line: 2
    Source: "app.selection[n].move([23.44, 100.0});"
    Offending text: "100.0"
    As i said I am new to scripting and have been perusing the scripting manual but cannot gather what my error was, and I am trying to meet a deadline.
    Cheers in advance!

    Ok, me again.
    I got it working - well, it moves the text boxes I select - but for some reason the Y variable isn't coming out correctly.
    For example, if I use the coordinates 32.385, 16.231 in a script, it moves it to the correct spot on the X axis, but the coordinate for the Y will be off. Further, depending on what text box I select to move, it will vary (by 1-5 mm) along the Y axis. Different text boxes go to different areas along the Y axis, but never far from the script coordinate.
    So I guess there does need to be some alteration made? I'll post this in the script forum too, not really sure where it belongs with this particular problem.
    Bleah.

  • CS5 - CS3

    How can I open a CS-5 (InDesign) document in CS-3? I have both versions installed.

    open the document in the cs5 and export the file in "IDML"
    Open this "IDML" file in cs4 nad export it again in "INX"
    this INX file will be compatible and will open up in CS3 ..............You need to have CS4 for this.
    For details:- http://help.adobe.com/en_US/indesign/cs/using/WSa285fff53dea4f8617383751001ea8cb3f-6d4da.h tml

  • CS5/CS3 nightmare.

    I am running Illustrator CS5 while the rest of my studio is running CS3.
    Ridiculous I know but I'm not the boss.
    Anyway, saving my files in CS5 causes problems when someone else opens them in CS3.
    I know that it's possible to save as a Legacy Format but it's annoying having to 'Save As' all the time.
    Is there anyway to automate Illustrator so it always saves down to a CS3 version, even when I just press Apple-S?
    Cheers

    If you open a file from an old version and then just Save, the file will stay in that old version. Illustrator shows a warning message.
    But that is the only way to do so.

  • Cs5 cs3 compatibility

    hello.
    i am at school that requires student to purchase the Current adobe CS suite when they enter as freshman.
    we now have CS5 in our labs. Students cannot figure a way to get there CS5 files into CS3.
    is this possible?
    thaks,
    harvey

    InDesign files are not backwards compatible. In CS4 there was an option to save files in a interchange format that 3 could open, but I don't see that option in CS5. You might try saving in the IDML from the export menu, but the chances of CS 3 opening it are not good.
    Dreamweaver should work as it's just html/css etc...
    Photoshop should work backwards
    Finally can't speak to flash as I don't use it.
    Hope this helps some.

  • Script Indesign CS3 - Split multicolumn TextFrame to separated TextFrames (For PC)

    any one know what script can make it ???
    ike this...
    http://img402.imageshack.us/img402/905/20080517085017hb3.jpg

    Loic, great job, that's a very useful script!
    I found myself using it a lot, so I created an enhanced version, borrowing a few lines from yours, I hope that's ok with you. My script fixes most of the problems, and it installs itself in InDesign's menu system, so it is virtually indistinguishable from a built-in command. Once you run it, you can reach it via "Object > Break Into Columns". If you set the script to load when InDesign starts, you don't even have to use the scripts panel at all.
    Fixes/Enhancements over Loic's version/previous versions (hope I get that formatting right):
    * The code no longer uses script labels. Existing script labels are no longer lost and the command can be run more than once per document without manually clearing out all script labels first.
    * The script now installs itself into InDesign's "Object" menu. The menu item is disabled automatically if the command cannot be run (for example if no text frame is selected).
    * Frames with only one column are handled correctly
    * Z order is preserved
    * Text Frame attributes such as Fill, Stroke etc. are preserved
    * Locked frames are handled correctly (i.e. the command is grayed out)
    * Text threads are preserved
    * Assigned InCopy frames are dealt with correctly. They used to lose the link to the original story file and end up as "Unassigned InCopy Content"
    * Assigned InCopy frames no longer need to be checked out for the script to work
    * The new frames end up on the same layer as the original one
    * The new frames end up on the same page/spread as the original one, rather than being placed on the first page of the document
    Know Issues:
    * Choosing "Edit > Undo" will undo the script in steps. I don't know if there is a way for scripts to act as transactions in the scripting interface, but using the C++ API just for that is probably not worth it.
    * Transforms such as rotated frames are not handled correctly
    * Only InDesign 5.0 (CS3) and above is supported
    Here is the download link:
    http://www.sendspace.com/file/s9fcae
    Hope this is useful.
    Peter

Maybe you are looking for

  • Caller id not working after upgrade to IOS 8.

    I have an iPhone 5 which I upgraded to IOS 8.  After the upgrade the caller id does not shows the person's name (which I have on my Contacts) on the screen.  Now I installed IOS 8.1.1 but the problem persists.  This happens also on an iPhone 5S from

  • Two id on macbook Pro

    Hello. I registered my macbook pro with an ID and I startarted it, after I changed to another ID who was in my iPhone and I started working on my macbook pro with thi ID. No when I try to updete something I have to change the ID to do it for some sof

  • After downloading iTunes all media players have choppy playback

    I got a new computer and my CD and DVD playback was great until I downloaded iTunes. Now all my CDs and DVDs play back choppy/stuttering/etc. on any media players that came with my computer and iTunes. I know it is a software issue, but I don't know

  • I cannot play cd or dvd on my disc drive

    It is Macbook pro 13-inch with 4GB 1333MHz DDR3, OS X 10.9.4 (13E28), bought in late 2011. Today I have some DVD and CD of my coursebook and want to play it on my Macbook pro, but I could not even insert it into the drive first. Then I go to System P

  • Can i transfer youtube music i have downloaded on my iphone  to my ipod? or computer?

    Can i transer youtube music from my iphone to my ipod or my computer ? And how do i do it Thank You