Recolor Selection

Recolor Selection

Script for Adobe Illustrator

✦ Available exclusively on Patreon for Pro supporters.

Description

Recolor Selection is an Adobe Illustrator script for finding and replacing colors throughout selected artwork from one focused, resizable dialog. It detects colors in fills, strokes, text, compound paths, grouped objects, and gradient-fill stops, then lets you map each detected source color to a new destination color while previewing the result directly on the canvas.

Features

Recolor Selection streamlines precise color remapping across simple or complex Illustrator selections while keeping every detected source color visible and independently controllable.

  • Automatic Color Detection: Finds colors throughout the selected artwork and arranges them into an easy-to-scan list sorted by hue, saturation, and lightness.
  • Individual Color Mapping: Assigns a separate destination color to every detected source color using Illustrator's native color picker or hexadecimal input.
  • Shared Color Mode: Replaces all checked source colors with one shared destination color.
  • Selective Recoloring: Enables or disables individual color rows and provides Select All, Invert Selection, and Deselect controls.
  • Property Controls: Limits recoloring to Fill, Stroke, Gradients, Text, or any combination of those properties.
  • Color List Filtering: Narrows selections containing more than ten colors to a visible working set based on a reference color and adjustable similarity threshold.
  • Live Preview: Displays color changes on the Illustrator canvas before they are confirmed.
  • Flexible Interface: Supports a resizable color list with automatic scrolling when the rows exceed the available height.
  • View Controls: Hides selection edges or fits the selected artwork in the document window for a clearer preview.
  • Safe Cancellation: Reverts previewed color changes when the dialog is cancelled.

image gallery
Before / After

Installation

1. Download the Recolor Selection.jsx script file.

2. Place the script in your Adobe Illustrator Scripts folder:

⮑ Mac: /Applications/Adobe Illustrator (Version)/Presets/(Language)/Scripts

⮑ Windows: C:\Program Files\Adobe\Adobe Illustrator (Version)\Presets\(Language)\Scripts

3. Restart Adobe Illustrator if it's already running

4. Access the script via File > Scripts > Recolor Selection

5. Alternatively, run it directly via File > Scripts > Other Script... and browse to the file location

Tip: You can also drag and drop the .jsx file directly onto the Illustrator workspace to run the script instantly – no installation needed.

Using the Script

Launch the Script

Open an Illustrator document and select the artwork whose colors you want to change. Launch Recolor Selection from the Scripts menu or run the JSX file directly:

image gallery

The script examines the selected artwork recursively, so a single selected group can include many recolorable objects.

The scan can identify RGB, CMYK, grayscale, and spot colors from:

  • Object fills
  • Object strokes
  • Individual text character fills and strokes
  • Objects inside selected groups
  • Compound-path fills and strokes
  • Individual stops in fill gradients

Only colors found in the active selection are listed or changed. Unselected artwork remains untouched.

Note: Pattern-colored artwork is not supported for source-to-destination replacement. Gradient, pattern, and no-color values cannot be selected as replacement colors.

➊ Review the Detected Colors

The Found Colors panel displays each detected source color as a separate row. Duplicate solid colors are consolidated by their native color values where possible. Gradient stops remain independently addressable, so identical-looking stops may appear in separate rows. The list is sorted by hue, saturation, and lightness to make related colors easier to compare.

Each color row contains:

  • A checkbox that determines whether the color will be replaced
  • The original source-color swatch
  • A read-only RGB hexadecimal representation of the source color
  • An arrow showing the source-to-destination relationship
  • A destination-color swatch
  • An editable destination hexadecimal value

CMYK, grayscale, and spot colors are converted to an RGB approximation for the swatch display, hexadecimal value, similarity filtering, and source-color matching. When shared-color mode is off, each destination initially matches its source appearance. This keeps the artwork unchanged until you specify a replacement.

➋ Choose Which Colors to Replace

Leave a color row checked when that source color should be included. Uncheck a row to exclude it from the operation; its controls become inactive and its arrow changes to a cross.

Use the controls below the color list to manage many rows quickly:

  • Select All: checks every displayed color row.
  • Invert Selection: reverses the checked state of every displayed row.
  • Deselect: unchecks every displayed color row.

These buttons affect the rows currently displayed in the list. Row choices apply only to the current artwork selection and are not stored between script sessions.

➌ Set Individual Replacement Colors

Set a destination color independently for each checked row. You can use either Illustrator's native color picker or a hexadecimal value.

To use the color picker:

  1. Click the destination-color swatch in the required row.
  2. Choose the new color in Illustrator's color picker.
  3. Confirm the picker to update the destination swatch and hexadecimal field.

To enter a hexadecimal color:

  1. Click the destination hexadecimal field.
  2. Enter a valid hexadecimal color value.
  3. Confirm the entry to update the destination swatch and preview.

If an invalid hexadecimal value is entered, the field returns to its last valid color. The native picker accepts RGB, CMYK, grayscale, and spot colors and preserves the chosen native color type when applying the replacement. A hexadecimal entry always creates an RGB replacement. Gradient, pattern, and no-color results are not accepted by the destination color picker.

➍ Use One Color for Multiple Source Colors

Enable Use one color for checked colors when several source colors should share one destination color. The shared swatch and hexadecimal field become active, while the individual destination controls become unavailable for checked rows.

To use shared-color mode:

  1. Check Use one color for checked colors.
  2. Choose a color from the shared swatch or enter a valid hexadecimal value.
  3. Check or uncheck source-color rows to control which colors receive the shared destination.
  4. Review the combined result with Preview enabled.

Disabling shared-color mode restores the individual destination colors that were present before the mode was enabled. The shared-color setting is remembered between sessions, but the shared color value itself is not saved. On each launch, the shared color starts from the first source color in the sorted list.

➎ Choose the Artwork Properties to Recolor

Use the Apply to panel to define which kinds of color properties the script may change. Enable any combination needed for the current operation.

  • Fill: changes solid object fills, including compound-path fills.
  • Stroke: changes solid object strokes, including compound-path strokes.
  • Gradients: changes matching stops in fill gradients.
  • Text: changes both character-level text fills and text strokes. Text is controlled independently of the Fill and Stroke options.

Disabling an option protects that property from the replacement operation. Changes to these options update the artwork immediately when Preview is enabled.

➏ Filter a Large Color List

When the selection contains more than ten detected colors, filter controls appear above the color list. Filtering makes it easier to isolate colors similar to a chosen reference. Similarity is measured as RGB distance, and the filtered result becomes the current working set.

To filter the list:

  1. Click the Filter label or reference-color swatch and choose a reference color, or type a valid hexadecimal value.
  2. Adjust Threshold with the scrollbar or numeric field.
  3. Use a lower threshold to show colors closer to the reference.
  4. Use a higher threshold to include a broader range of colors.
  5. Click All to reset the threshold to 100 and show the complete color range.

Use the Up and Down arrow keys in the threshold field to change the value by one. Hold Shift while pressing an arrow key to change it by ten. Clicking the Threshold label or right-clicking the threshold scrollbar also resets the value to 100.

Set the filter before configuring replacements. Every filter change rebuilds the visible rows, restores any active preview, and resets the displayed rows to their initial checked state. In individual mode, their destinations return to the source colors; in shared-color mode, the shared destination is reapplied. Only the rows visible after filtering participate in Preview or OK.

The reference color starts at #808080 and is not saved between sessions. The numeric threshold is remembered. A threshold of 0 shows only exact RGB matches; 100 includes the entire RGB range.

➐ Preview and Inspect the Result

Keep Preview enabled to see replacement colors on the Illustrator canvas as you edit them. Turning Preview off restores the original colors until the changes are applied with OK.

Use the additional view controls when inspecting detailed artwork:

  • Hide Edges: temporarily deselects the artwork to hide selection edges and bounding boxes. The script retains its original selection references so recoloring and preview continue to work.
  • Fit in Window: zooms and centers the selection for a clearer view.
  • Turning Fit in Window off restores the view that was active before fitting.

Hide Edges and Fit in Window can be used together. The script temporarily restores the selection when needed for fitting, then deselects it again.

➑ Apply or Cancel the Recoloring

Review the checked rows, destination colors, Apply to options, and canvas preview before closing the dialog.

  • Click OK to keep the specified replacements for the checked, currently displayed rows.
  • Click Cancel to revert previewed color changes and close without recoloring the artwork.
  • If Preview is disabled, clicking OK performs the replacements before closing.
  • If no destination differs from its source, the script reports that no color changes were detected.

When Preview is enabled, OK keeps the colors already displayed on the canvas. When Preview is disabled, OK applies the configured replacements and reports how many source colors and instances were updated. When Hide Edges is active, the original selection is restored as the dialog closes.

Tip: The script automatically saves its current non-color settings and loads them the next time it runs.

☻ Wrap-Up

Recolor Selection brings color discovery, controlled replacement, filtering, and live inspection into one practical workflow for selected Illustrator artwork. Use individual mappings for precise adjustments or shared-color mode for broad consolidation, then confirm the result only when the preview is ready.

Leave a comment

Recolor Selection

Version: 1.0.0

Updated:

  • 1.0.0 – Initial release.

    Tested on MacOS:

    • Adobe Illustrator 2024 (28.1)
    • Adobe Illustrator 2025 (29.8)
    • Adobe Illustrator 2026 (30.3)
  • Supported Versions:

    • Compatible with Adobe Illustrator CS6 and later, including Adobe Illustrator CC versions.

    Operating Systems:

    • Works on both macOS and Windows platforms.
  • End User License Agreement (EULA)

    Last Updated: 21.12.2024

    This End User License Agreement (“Agreement”) is a legal agreement between you (“User” or “Licensee”) and Samolevsky.com (“Licensor”) regarding the use of the Adobe Illustrator scripts (“Software”). By downloading, installing, or using the Software, you agree to be bound by the terms of this Agreement.

    1. Grant of License

    Licensor grants the User a non-exclusive, non-transferable, and revocable license to use the Software in accordance with this Agreement.

    • Free Software: If the Software is provided for free, you may use it for personal or commercial purposes without payment, subject to the restrictions outlined in this Agreement.
    • Paid Software: If the Software is provided for a fee, you may use it only after payment has been made in full.

    2. Usage Rights

    You are permitted to:

    • Install and use the Software on devices you own or control.
    • Use the Software in your personal or commercial projects, subject to compliance with this Agreement.

    3. Restrictions

    You may NOT:

    • Reverse engineer, decompile, or otherwise attempt to discover the source code, underlying ideas, or algorithms of the Software.
    • Reuse, incorporate, or integrate any portion of the Software into any other software, product, or project, except as expressly permitted by the Licensor in writing.
    • Resell, redistribute, or share the Software, whether in its original or modified form, without prior written consent from the Licensor.
    • Claim ownership of the Software or its underlying code.
    • Use the Software in any way that violates applicable laws or regulations.

    4. Ownership

    The Software and all intellectual property rights therein remain the exclusive property of the Licensor. This Agreement does not transfer ownership of the Software or any intellectual property rights to the User.

    5. Disclaimer of Warranties

    THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE LICENSOR BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

    6. Limitation of Liability

    To the maximum extent permitted by law, Licensor shall not be liable for any damages, including but not limited to direct, indirect, incidental, special, or consequential damages, arising out of or related to the use or inability to use the Software.

    7. Termination

    This Agreement is effective until terminated. Licensor may terminate this Agreement immediately if you breach any term of this Agreement. Upon termination, you must cease all use of the Software and destroy any copies in your possession.

    8. Updates and Support

    Licensor is not obligated to provide updates, support, or maintenance for the Software. However, updates may be provided at the sole discretion of the Licensor.

    9. Governing Law

    This Agreement shall be governed by and construed in accordance with the laws of the State of New York, without regard to its conflict of law principles.

    10. Entire Agreement

    This Agreement constitutes the entire agreement between you and the Licensor concerning the Software and supersedes all prior or contemporaneous understandings regarding such subject matter.

    By using the Software, you acknowledge that you have read this Agreement, understand it, and agree to be bound by its terms.

    For any questions or concerns regarding this Agreement, please contact us at hello@samolevsky.com

Browse More Scripts

  1. Explore Recolor Selection
    Recolor Selection

    Recolor Selection

    Recolor Selection is an Adobe Illustrator script for finding and replacing colors throughout selected artwork from one focused, resizable dialog.

    Explore
  2. Explore Drop Shadow Effect
    Drop Shadow Effect

    Drop Shadow Effect

    Drop Shadow Effect is a powerful and intuitive ScriptUI tool for Adobe Illustrator that allows you to apply a live Drop Shadow effect to your selected artwork.

    Explore
  3. Explore Metaball Circles Connector
    Metaball Circles Connector

    Metaball Circles Connector

    Metaball Circles Connector is an Adobe Illustrator script that creates smooth, organic connections between circle shapes using metaball effects.

    Explore

Introducing ScriptBox

Your Complete Adobe Illustrator Productivity Hub

Required Software

Adobe Illustrator

Adobe Illustrator is a professional vector graphics software developed by Adobe Inc. It is widely used by designers, illustrators, and artists for creating a variety of digital artwork, including logos, icons, illustrations, typography, and complex design layouts. Illustrator is known for its precision and scalability, allowing users to create high-quality graphics that can be resized without losing clarity. Its features include powerful drawing tools, customizable brushes, advanced typography options, and seamless integration with other Adobe Creative Cloud applications. Illustrator is a go-to tool for creative professionals working on projects for print, web, and multimedia platforms.

  • 🅰 Locating the Scripts Folder

    To install a Recolor Selection.jsx script in Adobe Illustrator, you need to place it in the correct directory where Illustrator
can recognize it. Follow these steps to locate the Scripts folder:

    1. MacOS:
      Open Finder and navigate to:
      Applications/Adobe Illustrator <Version>/Presets/<Language>/Scripts
    2. Windows:
      Open File Explorer and navigate to:
      C:\Program Files\Adobe\Adobe Illustrator <Version>\Presets\<Language>\Scripts
    3. Replace <Version> with your Adobe Illustrator version (e.g., 2025).
    4. Replace <Language> with your language folder (e.g., "de_DE" for German, "en_US" for English).

    🅱 Installing the Script

    1. Copy the Script File: Copy the Recolor Selection.jsx file to the Scripts folder located in the path above.
    2. On some systems, you may need administrator permissions to modify the Scripts folder.
    3. Restart Adobe IllustratorTo refresh the scripts menu, close and reopen Adobe Illustrator.

    Explore our complete guide to mastering Adobe Illustrator scripts.

    1. Open Adobe Illustrator and ensure a document is active.
    2. Go to the top menu bar and select File > Scripts.
    3. If the script is installed in the Scripts folder, it will appear in the dropdown list.
    4. Click the Recolor Selection script to run it.
    5. The Recolor Selection script will execute, and any dialog boxes or results will appear based on the script’s functionality.

    ☻ Before running any scripts, it’s strongly advised to save your work — especially when working with complex or large documents.

Got questions?

Need help or have an idea to share? We’d love to hear from you! Whether you have questions, found a bug, have a feature request, or just want to share your feedback, reach out to us—we’re here for you!