Skip to content
fabiantheblind edited this page Apr 11, 2013 · 1 revision
    /*
    This script creates object styles and applies them to some 
    pageItems
    
    */
    
    // create a document
      var pw = 170; // for better handling
      var ph = pw/3; // also 
      
      // make a document
      var doc = app.documents.add({
          documentPreferences:{
              pageWidth:pw,
              pageHeight:ph
              }
          });
      
      // there is already a page
      var page = doc.pages[0];
      // make a rectangle for the background
      var bg_rect = page.rectangles.add({
                geometricBounds:[0,0,ph,pw],
                fillColor: doc.swatches.item(4)
            }); 
      // some variables for calculating positions
      // of our objects
      var step = (pw/3);
      var gutter = 10;
      var y1 = gutter;
      var x1 = gutter;
      var y2 = (ph - gutter);
      var x2 = (step - gutter);
      // make a rectangle
      var rect = page.rectangles.add({geometricBounds:[y1,x1,y2,x2]});
      // move to the right
      x1 += step;
      x2 = x2 + step ;
      // make an oval
      var oval = page.ovals.add({geometricBounds:[y1,x1,y2,x2]});
      // move again
      x1 += step;
      x2 = x2 + step;
      // make a polygon
      var poly = page.polygons.add({geometricBounds:[y1,x1,y2,x2]});
      // now we throw tem in an array
      var items = [rect,oval,poly];
    
    
    //make a object style
    var objSt1  = doc.objectStyles.add();
    // add some properties
    objSt1.properties = {
            name:"my first objectstyle",
            strokeWeight: 3,
            strokeColor:doc.swatches.item(7),
            strokeTint: 23,
            bottomLeftCornerOption:CornerOptions.FANCY_CORNER,
            transparencySettings:{
                    blendingSettings:{
                        opacity:50,
                        blendMode: BlendMode.COLOR
    
                        }
                    }
            };
    
    // define a object style
    var objSt2  = doc.objectStyles.add();
    // add some properties
    objSt2.properties = {
            name:"my second objectstyle",
            strokeWeight: 5,
            fillColor: doc.swatches.item(5),
            strokeAlignment:StrokeAlignment.CENTER_ALIGNMENT,
              transparencySettings:{
                    blendingSettings:{
                        blendMode: BlendMode.COLOR
                        }
                    }
            };
    
    // now lets apply some styles
    
    
    items[0].appliedObjectStyle = objSt1; // apply the first style
    items[1].appliedObjectStyle = objSt2; // apply the second style
    
    // do it single lined
    // have a look at these Options
    // http://jongware.mit.edu/idcs6js/pc_PageItem.html
    
    items[2].transparencySettings.blendingSettings.blendMode = BlendMode.LIGHTEN;
    items[2].transparencySettings.blendingSettings.opacity = 77;
    items[2].fillColor = doc.swatches.item(3);
    items[2].strokeWeight = 3;
    // we are done
Clone this wiki locally