Skip to content

Instantly share code, notes, and snippets.

@jwrb
Forked from bryanbuchanan/GetShapeArea.jsx
Last active August 30, 2016 08:34
Show Gist options
  • Save jwrb/c5023426bbd879befd822316b88fc694 to your computer and use it in GitHub Desktop.
Save jwrb/c5023426bbd879befd822316b88fc694 to your computer and use it in GitHub Desktop.
Script to find the area of shapes in Adobe Illustrator
/* Save this file with a jsx extension and place in your
Illustrator/Presets/en_US/Scripts folder. You can then
access it from the File > Scripts menu */
if (app.documents.length > 0) {
if (app.activeDocument.selection.length < 1) {
alert('Select a path first');
} else if (app.activeDocument.selection[0].area) {
// Individual Items
var objects = app.activeDocument.selection;
} else if (app.activeDocument.selection[0].pathItems) {
// Group/Compound Shape
var objects = app.activeDocument.selection[0].pathItems;
} else {
alert('Please select a path or group.');
}
// Collect info
var totalArea = 0;
for (var i=0; i<objects.length; i++) {
if (objects[i].area) {
var totalArea = totalArea + objects[i].area;
}
}
// Conversions
var ppi = 72;
var areaInInches = Math.round((totalArea / ppi / ppi) * 100) / 100;
if (areaInInches < 0) var areaInInches = -areaInInches;
// Display
alert('Shape Area\n' + areaInInches + ' square inches \n' + i + ' shapes');
alert("Area & Length\nArea: " + ((app.activeDocument.selection[0].area/5184)*645.16).toFixed(3) + "\nLength: " + (app.activeDocument.selection[0].length/2.834645669291).toFixed(3));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment