Copy link to clipboard
Copied
Hello everyone,
Here is my problem, I want to resize multiple objects with a script by selecting the size (in mm) that I want. I already have one script but this script don't resize proportionally.
After runing the script:
As you can see it don't resize them proportionally..
Thank you,
PM
Hi,
Try following
var centerObjects = false;
function main() {
var item, center_point;
var toPixels = function (v) {
var units = {
'in': 72,
'mm': 2.8346455078125,
'px': 1,
'pt': 1,
}, re = /(\d*[.]*\d+)(mm|in|ft|cm|px|pt)/i, m, u, rep;
//derivitave
units['cm'] = units['mm'] * 10;
units['ft'] = units['in'] * 12;
while (m = v.match(re)) {
u = m[2].toLowerCase();
if (un...
Copy link to clipboard
Copied
Hi,
Try following
var centerObjects = false;
function main() {
var item, center_point;
var toPixels = function (v) {
var units = {
'in': 72,
'mm': 2.8346455078125,
'px': 1,
'pt': 1,
}, re = /(\d*[.]*\d+)(mm|in|ft|cm|px|pt)/i, m, u, rep;
//derivitave
units['cm'] = units['mm'] * 10;
units['ft'] = units['in'] * 12;
while (m = v.match(re)) {
u = m[2].toLowerCase();
if (units[u]) {
rep = (m[1] * units[u]);
v = v.replace(re, rep);
}
}
return v;
}
var trace = function (m) { alert(m) };
if (activeDocument == null) { trace("Pas de document ouvert trouvé. Veuillez s'il vous plaît ouvrir un document."); return; }
if (activeDocument.selection.length == 0) { trace("Aucune sélection... 😞", "Veuillez sélectionner un pictogramme."); return; }
var i = prompt("Quelles dimensions voulez-vous modifier ?", "width,height");
if (i === null) { return false; }
var v = prompt("Veuillez entrer les nouvelles dimensions du pictogramme", "5mm,5mm");
v = toPixels(v);
v = v.split(',');
for (var x = 0; x < activeDocument.selection.length; x++) {
item = activeDocument.selection[x];
var scaleX = v[0] / item.width;
var scaleY = v[1] / item.height;
var finalScaleFactor = scaleX > scaleY ? scaleY : scaleX;
item.resize(finalScaleFactor * 100, finalScaleFactor * 100, true);
}
}
main();
Copy link to clipboard
Copied
Copy link to clipboard
Copied
You can also try my free "ResizeToSize" script to resize objects with different settings. Units are taken from the document settings. Uniform - proportional scaling. You can choose which side to calculate. Change the size by a delta. https://github.com/creold/illustrator-scripts/blob/master/md/Item.md#resizetosize
Copy link to clipboard
Copied
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more