Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

color abrev?

New Here ,
Jun 24, 2009 Jun 24, 2009

We have a script (javascript for cs3 & 4) that allows a user to type in colors (among other things) and puts those colors in a new document's swatches. Those colors are chosen from a custom library of spot colors set up by our corporate office. The color names do in fact coincide with their numerical counterparts

:example: myScarlet200 = PANTONE 200 C. currently the user types in PANTONE 200 C and it has to be exact or the script will fail. We would like the user to simply be able to type in "200" and have the correct color assigned. I'm hoping someone has already taken insane time to do the solid coated library in such a way (so we could pillage the code), or be able to advise on the most expedient way to associate colors with their pantone equivalent numbers for the purpose of dialog entry in cs3 or cs4.

Thanks in advance

(The script creates a custom template for art design and the color entries eliminate the need to load colors manually. The script saves all of the art departments time division wide, however a main complaint is that the script fails when a typo is made entering colors. We are trying to fix that part of the script.)

TOPICS
Scripting
1.5K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 24, 2009 Jun 24, 2009

So .. something like

a = 200;

app.activeDocument.importAdobeSwatchbookProcessColor ("Pantone "+a+" C");

or

app.activeDocument.importAdobeSwatchbookSpotColor ("Pantone "+a+" C");

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 24, 2009 Jun 24, 2009

for each color in the library?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 24, 2009 Jun 24, 2009

Errr... No? Only for those that are needed?

As you said, the end user has to type in the entire string "Pantone 200 C". If you let them enter just the number ("200" in this case), you can stick "Pantone " in front and " C" at the end, and use that to copy the color string out of the library into the currenty active swatches.

If you need something else, like, the entire Pantone library added to the swatches: personally I'd script even that, but you could add them one by one by hand (...*) but then you can save the swatches into a swatch book file, and that can be loaded into any other document when needed. Save and Load are options in the Swatch panel menu.

  • Oh okay, here is a how-to for that. Get a list from the Pantone color names you need (I know at least one website that provides it, against Pantone(R)'s rules). With a good plain text editor (not the ESTK) you can easily convert it into array form:
  • allColorsInTheWorld = new Array (

    "Pantone 100 C",

    "Pantone 101 C",

    "Pantone 102 C",

    .. several thousand lines omitted for brevity ..

    "Pantone 9999 C" );

    for (i=0; i<allColorsInTheWorld.length; i++)

      app.activeDocument.importAdobeSwatchbookProcessColor (allColorsInTheWorld);

    -- well, something like that.

    Translate
    Report
    Community guidelines
    Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
    community guidelines
    New Here ,
    Jun 25, 2009 Jun 25, 2009

    I think my question has been misunderstood. I'll use this example:

    We're doing a book cover for a customer and that customer has decided on a particular vector illustration and logo on the front (cover style template).

    They can choose any colors to represent the 3 colors allowed for this package.

    on to the script...

    1.

    The dialog will ask the artist doing the cover a series of questions that builds the template based on those entries (all that is already done).

    One of those categories is colors. The customer may choose between 0 and 4 colors in this option set.

    2.

    The script loads document colors from an .indd document in a static location that contains all of the colors and we will remove unused colors at the     end via script leaving behind only the ones from the dialog entry in the swatches panel (that is because we don't know how to pull entries from a    library that isn't available to the active or new document)

    Currently the dialog entry requires the full name (PANTONE 200 C) case sensitive and spelled exactly as the library.

    3.

    I would like to be able to just enter "200" in the dialog instead of the full color name in the library.

    my question: How can I associate 200 with PANTONE 200 C (along with every other color in the solid coated library) using 200 as the common thread?

    Do I have to say: "200 = PANTONE 200 C" for every color so when I call 200 it gives me PANTONE 200 C?

    You may have understood the question and I just don't get it (the answer). please don't flame me for my ignorance.

    Thanks,

    ps: notice in the color picker in the InDesign you can just type 200. In a nutshell that's what I want to accomplish through script in a dialog.

    Translate
    Report
    Community guidelines
    Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
    community guidelines
    Community Expert ,
    Jun 25, 2009 Jun 25, 2009

    (While waiting for the image to pop up:) The colors that are entered into the dialog are added to the active document's swatches, correct? The user types in "Pantone 200 C" (amongst other things) into the dialog, presses "OK" and these swatches are added?

    Can you show part of this script that adds the entered colors to the document? It should look something like

    app.activeDocument.importAdobeSwatchbookSpotColor (dialogValueHere);

    where dialogValueHere is a variable containing what the user entered -- a full color name. It's at this point that you can stick "Pantone " in front of the entered value and " C" at the end:

    app.activeDocument.importAdobeSwatchbookSpotColor ("Pantone "+dialogValueHere+" C");

    will work if the value entered is plain "200".

    It is possible that the way of adding the color is done differently, because

    that is because we don't know how to pull entries from a    library that isn't available to the active or new document

    -- using "importAdobeSwatchbookSpotColor" or "importAdobeSwatchbookProcessColor" is the recommended way. Perhaps the script is quite old.

    Translate
    Report
    Community guidelines
    Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
    community guidelines
    New Here ,
    Jun 29, 2009 Jun 29, 2009
    LATEST

    Actually we add in all of the colors in the library, apply the colors to objects, and then "delete unused colors" from the swatches.

    I will try it the way that you have written and get back to you. Thanks

    Translate
    Report
    Community guidelines
    Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
    community guidelines