Skip to content

Commit cc7a9ae

Browse files
committed
Updated ColorCorrector, MultiEditText
1 parent 27e7325 commit cc7a9ae

30 files changed

+324
-221
lines changed

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ Click the category name to learn more about the scripts in the selected category
118118
* [AverageColors](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#averagecolors) `v0.1 — 27.03.2022`
119119
* [BeautifySwatchNames](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#beautifyswatchnames) `v0.1 — new, 31.10.2024`
120120
* [ColorBlindSimulator](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#colorblindsimulator) `v0.1 — 18.04.2022`
121-
* [ColorCorrector](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#colorcorrector) `v0.1 — new, 21.06.2024`
121+
* [ColorCorrector](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#colorcorrector) `v0.1.2upd, 14.02.2025`
122122
* [ColorGroupReplacer](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#colorgroupreplacer) `v0.1 — 08.10.2023`
123123
* [ContrastChecker](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#contrastchecker) `v0.1.1 — upd,23.07.2024`
124124
* [ConvertToGradient](https://github.com/creold/illustrator-scripts/blob/master/md/Color.md#converttogradient) `v0.1.4 — upd, 09.02.2024`
@@ -166,7 +166,7 @@ Click the category name to learn more about the scripts in the selected category
166166
* [ResizeOnLargerSide](https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#resizeonlargerside) `v0.2.2 — upd, 22.12.2022`
167167
* [ResizeToSize](https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#resizetosize) `v0.9.1 — upd, 09.02.2024`
168168
* [RoundCoordinates](https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#roundcoordinates) `v0.4.2 — upd, 22.12.2022`
169-
* [ShowObjectNames](https://github.com/creold/illustrator-scripts/blob/master/md/Item.ru.md#showobjectnames) `v0.3 — upd, 09.02.2025`
169+
* [ShowObjectNames](https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#showobjectnames) `v0.3 — upd, 09.02.2025`
170170
* [SwapObjects](https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#swapobjects) `v0.2 — upd, 24.03.2024`
171171

172172
### [Layer](md/Layer.md)
@@ -211,7 +211,7 @@ Click the category name to learn more about the scripts in the selected category
211211

212212
* [AlignTextBaseline](https://github.com/creold/illustrator-scripts/blob/master/md/Text.md#aligntextbaseline) `v0.1.1 — upd, 09.02.2024`
213213
* [MakeNumbersSequence](https://github.com/creold/illustrator-scripts/blob/master/md/Text.md#makenumberssequence) `v0.5 — upd, 26.03.2024`
214-
* [MultiEditText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.md#multiedittext) `v0.2.2 — upd, 12.04.2024`
214+
* [MultiEditText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.md#multiedittext) `v0.3 — upd, 14.02.2025`
215215
* [ReplaceFormattedText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.md#replaceformattedtext) `v0.1 — 29.12.2022`
216216

217217
### [Utility](md/Utility.md)

README.ru.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@
120120
* [AverageColors](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#averagecolors) `v0.1 — 27.03.2022`
121121
* [BeautifySwatchNames](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#beautifyswatchnames) `v0.1 — new, 31.10.2024`
122122
* [ColorBlindSimulator](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#colorblindsimulator) `v0.1 — 18.04.2022`
123-
* [ColorCorrector](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#colorcorrector) `v0.1 — new, 21.06.2024`
123+
* [ColorCorrector](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#colorcorrector) `v0.1.2upd, 14.02.2025`
124124
* [ColorGroupReplacer](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#colorgroupreplacer) `v0.1 — 08.10.2023`
125125
* [ContrastChecker](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#contrastchecker) `v0.1.1 — upd, 23.07.2024`
126126
* [ConvertToGradient](https://github.com/creold/illustrator-scripts/blob/master/md/Color.ru.md#converttogradient) `v0.1.4 — upd, 09.02.2024`
@@ -222,7 +222,7 @@
222222

223223
* [AlignTextBaseline](https://github.com/creold/illustrator-scripts/blob/master/md/Text.ru.md#aligntextbaseline) `v0.1.1 — upd, 09.02.2024`
224224
* [MakeNumbersSequence](https://github.com/creold/illustrator-scripts/blob/master/md/Text.ru.md#makenumberssequence) `v0.5 — upd, 26.03.2024`
225-
* [MultiEditText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.ru.md#multiedittext) `v0.2.2 — upd, 12.04.2024`
225+
* [MultiEditText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.ru.md#multiedittext) `v0.3 — upd, 14.02.2025`
226226
* [ReplaceFormattedText](https://github.com/creold/illustrator-scripts/blob/master/md/Text.ru.md#replaceformattedtext) `v0.1 — 29.12.2022`
227227

228228
### [Utility](md/Utility.ru.md)

jsx/ColorCorrector.jsx

+30-4
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22
ColorCorrector.jsx for Adobe Illustrator
33
Description: Adjust color channels for selected objects by setting exact values or calculating relative changes
44
Date: June, 2024
5+
Modification Date: February, 2025
56
Author: Sergey Osokin, email: [email protected]
67
78
Installation: https://github.com/creold/illustrator-scripts#how-to-run-scripts
89
910
Release notes:
11+
0.1.2 Fixed adjustment of gradient duplicates in selection
12+
0.1.1 Fixed typo for correct work with gradients
1013
0.1 Initial version
1114
1215
Donate (optional):
@@ -33,7 +36,7 @@ app.preferences.setBooleanPreference('ShowExternalJSXWarning', false); // Fix dr
3336
function main() {
3437
var SCRIPT = {
3538
name: 'Color Corrector',
36-
version: 'v0.1'
39+
version: 'v0.1.2'
3740
};
3841

3942
var CFG = {
@@ -201,10 +204,16 @@ function main() {
201204
win.close();
202205
}
203206

207+
/**
208+
* Starts the color adjustment process for selected items
209+
* It applies color modifications based on user-defined values,
210+
* skipping duplicate gradient names
211+
*/
204212
function start() {
205213
// Fix preview
206214
tmpPaths.push( selection[0].layer.pathItems.add() );
207215

216+
// Set default text values based on color mode
208217
if (isRgb) {
209218
setDefaultText(r, 'R');
210219
setDefaultText(g, 'G');
@@ -217,11 +226,28 @@ function main() {
217226
}
218227

219228
var values = isRgb ? [r.text, g.text, b.text] : [c.text, m.text, y.text, k.text];
229+
var props = ['fillColor', 'strokeColor'];
230+
var appear = [isFill, isStroke]; // Appearance checkboxes
231+
var uniqueGradients = {}; // Store gradients to avoid duplicate adjustments
220232

221233
for (var i = 0, len = items.length; i < len; i++) {
234+
// If the item is Text Frame, use its textRange, otherwise use the item itself
222235
var item = /text/i.test(items[i].typename) ? items[i].textRange : items[i];
223-
if (isFill.value) adjustColors(item, 'fillColor', values, channels, isEditGlobal.value, isRgb);
224-
if (isStroke.value) adjustColors(item, 'strokeColor', values, channels, isEditGlobal.value, isRgb);
236+
237+
for (var j = 0; j < 2; j++) {
238+
// Skip processing if the corresponding checkbox is not enabled
239+
if (!appear[j].value) continue;
240+
241+
var color = item[props[j]];
242+
243+
if (/gradient/i.test(color)) {
244+
var gradName = color.gradient.name.replace(/\s/g, '_');
245+
if (uniqueGradients[gradName]) continue; // Skip if already handled
246+
uniqueGradients[gradName] = true; // Mark as processed
247+
}
248+
249+
adjustColors(item, props[j], values, channels, isEditGlobal.value, isRgb);
250+
}
225251
}
226252
}
227253

@@ -383,7 +409,7 @@ function adjustColors(item, type, values, channels, isGlobal, isRgb) {
383409
if (/gradient/i.test(item[type])) {
384410
for (var i = 0; i < item[type].gradient.gradientStops.length; i++) {
385411
var gradStop = item[type].gradient.gradientStops[i];
386-
adjustColors(gradStop, 'color', values, channels, isRgb);
412+
adjustColors(gradStop, 'color', values, channels, isGlobal, isRgb);
387413
}
388414
} else {
389415
for (var j = 0; j < channels.length; j++) {

0 commit comments

Comments
 (0)