Illustrator Scripting :: Applying Stroke Miter Limit With Apple Script
Feb 24, 2013
I have a bit of a problem with apple script, I'm creating a Text item and setting the stroke to 0.4pt then i want the stroke miter limit to be set to 2 but it wont work i get :-
Adobe Illustrator got an error: Can’t set properties of text frame 1 of layer 1 of document 1 to {stroke miter limit:2}. (error -10006) but im am able to apply a stroke miter limit of 2 on a path item, is there a way of converting the text frame to a path item then applying the stroke miter limit to it.
on TicketFront_(posX, posY)
tell application "Adobe Illustrator"
activate
set ticketItem to make new text frame in theDoc with properties {contents:{"Some Text"}, position:{(35.7 + posX) * 2.834645, (173.5 - posY) * 2.834645}}
set properties of the text of ticketItem to {text font:text font "Raleway-Thin", size:5.54, justification:center, fill color:{class:spot color info, tint:100.0, spot:spot "PANTONE 4535 U" of document 1}, stroke color:{class:spot color info, tint:100.0, spot:spot "PANTONE 4535 U" of document 1}, horizontal scale:126.46, stroke weight:0.4}
[code]...
ive also tryed putting convert to paths ticketItem in the script which converts the text to paths but the stroke miter limit still dont work.
I've got some letters with a black inside stroke. These are 3D letters, therefore the stroke must be in the inside otherwise it spills out the edges if I put it outside or centered.
I've tried adjusting the cap/limit and all other options on the stroke menu without luck How can I fix these corner errors? I'm on Illustrator CS5.
I'm trying to apply a stroke to a .jpg image in Illustrator 6, and even though the weight and color show in the windows, the object itself has no visible stroke.
I just applied the Adobe Illustrator patch for CS6 this morning bringing it up to version 16.0.2. Ever since then, when I apply a stroke to an object,it deforms it. When I update the stroke weight, it deforms it.
I wish to limit the user input of and edittext to only allow a positive number, float or int. I do not yet know my Regex good enough to do this. I realize that I must get better at regex but in the meantime how to do this ?
I have used this so far on the edittext:
function checkTextInput() { if (this.text.match(/[^0-9.]/g)) { this.text = this.text.replace(/[^0-9.]/g, ""); } }
Which matches 000.0001 0.45.000.1 ...1 which is not desired.
I'm trying to figure out a way to automate a simple, yet repetative process I do countless times a day. Ideally, I'd like to tie it to a keystroke to speed up my workflow.
I work on line art and colorways for footwear, so the way I'm coloring these shapes and strokes break apart the different materials and pieces of the shoe.
While coloring line art, I work with Pantone spot colors as fills for closed path objects. I then have to manually apply that same color to the stroke, set the stroke to 0.5px weight, convert that spot stroke color to CMYK, and add 15% to the K value.
I found some code in an older post for applying the actively selected object's fill color to the stroke, but I'm having but I'm having trouble with the next step of figuring out how to take that spot stroke color and convert it to a CMYK build that I can then add 15% black to. Is this something that's even possible? I've spent about an hour playing with the script and have only had luck matching the fill color or turning the stroke white.
how to apply multiple strokes to a path with JavaScript? Assigning strokes width, caps, position in stack (my particular concern)? All i can do at the moment is to apply a single stroke.
I'm trying to set the stroke style for a path item I've drawn through JavaScript, however I can't find a way to set the stroke alignment for my path item.
I've checked the Illustrator JavaScript reference but I can't seem to find that option in there.I would expect something like:
pathItem.strokeAlignment = StrokeAlignment.OUTSIDE; // This doesn't work, what is the correct way to set the stroke alignment from JavaScript?
If I change the option in the Actions Panel it comes up as 'Set Stroke/Alignment: Outside', so there must be an equivalent way of setting it from JavaScript. Is there a way of converting Actions to JavaScript so you can see which properties and attributes are being set on the object? What is the correct way to set the strok alignment from JavaScript?
So here's what I wrote to try and find and delete all pathItems within a document that lack a fill and lack a stroke.
var doc = app.activeDocument; for (i=0; doc.pathItems.length>i;i++) { alert(doc.pathItems[i].name + " " + doc.pathItems[i].fillColor.name)
[Code]....
But alas, neither seems to do the trick, the first one makes sense why it wouldnt work since it says that the color is "undefined" but it isnt a string called "undefined." So I'm not sure how to go about this at all now.
I need the finished script to create a rectangle with no fill and a 20% gray stroke to outline each artboard. I dug this up off these boards, which works perfectly except the rectangles created have no fill or stroke. certainly save me a lot of time drawing rectangles on a daily basis.
#target illustrator var docRef = app.activeDocument; var artboardRef = docRef.artboards; for(i=0;i<artboardRef.length;i++){ var top=artboardRef[i].artboardRect[1] ; var left=artboardRef[i].artboardRect[0]; var width=artboardRef[i].artboardRect[2]-artboardRef[i].artboardRect[0]; var height=artboardRef[i].artboardRect[1]-artboardRef[i].artboardRect[3]; var rect = docRef.pathItems.rectangle (top, left, width, height); rect.fillColor = rect.strokeColor = new NoColor(); }
I have created a path with multiple strokes, which differ in weight and color. I can save that as a profile but it's really tedious if I want to alter the different colors and stroke weights.
I can't seem to do record an action which will automatically alter those parameters (f.ex. raise each strokeweight by 10pt.). All I get is just an action that will recreate the altered state during recording (f.ex. stroke weights 20, 10 >--Action--> 15, 5). I cannot start the action and raise or lower my stroke weights at once based on the current parameters.
I seem to come unstuck when I apply colour using the 'Stroke Path' option. Basically I need to know if there's a way of determining the opacity of the stroke line? In some cases I don't need to have such a 'dense' colour. I want to see a little of what I've 'painted over' so as to keep some of the detail.
I recently upgraded from Photoshop Elements 9 to Lightroom 5, When I moved the catalogue over, all keywords transferred, and Albums became collections. When I used Photshop Elements, I could easily sync the Albums with my Apple Tvs to display the pictures, as well as my other Apple Devices. I can not figure out how to export the collections to the Apple devices, especially the Apple TVs. There must be a way given the power of this software.
Hopefully you can see below, I've drawn the shape on the left and closed the path - it's a closed shape. I then drew another shape on the right, with the two corners exactly placed on the other shape's corners, and I'm getting some sort of overlap/miter join of somesort. Best way I can describe it.
Now I know how to join to open path end points, with the JOIN command. That's not what I'm after here. Simply when I draw another closed shape with the corners matching the other shape, I get those rather awkward and ugly corners? Or can you use the JOIN command? Totally lose here.
Any way to stop this from happening? Surely I'm simply missing something blatantly obvious here?
I guess the question would be: how to draw another shape that joins with the original closed path, without using the pathfinder tools. I want two separate shapes so that I can colour them independently, and not have those horrible corners.
I want to create a right-angled triangle (just the three sides, no fill) where each side is a different color (say red, blue, and green). For generality, let's assume it's a scalene (rather than isosceles) right triangle. I want the weight of each line to be about 3pt. (But I guess that's not a crucial number. Let's say I'd like the sides to be 20 or 30 pts thick, for the thrill of it.) I know how to draw the three lines of specified width, make them different colors, and arrange them into a triangle. My problem is how to make the vertices (corners) look miter-joined rather than have them overlapping each other, which obviously looks terrible and like something an infant drew in Microsoft Paint. ;-) If I join the 3 paths into a single shape, they all become the same color, so I'm thinking I have to keep it as 3 separate lines (paths). The only solution I can think of is: Instead of drawing three lines of 3pt weight, draw three extremely thin rectangle shapes (about 3pt wide), one of each color, and rotate/position them so that they form the sides of a right-angled triangle. Then go in and do some visual surgery at the vertices to make the vertices look miter-joined.
Is there a way or an option I am missing to convert my regular paths to a path stroked with a brush profile,while maintining the proper stroke width?
For instance, I have a regular line with a stroke of 5 and then add a brush profile, which then converts the original stroke to whatever the brush was made at.
I have a shape with a black stroke and green fill. I have a white line segment over it. How do I get it so that the end of the line segment doesn't show over the black stroke of the object? If I try to put the line segment behind the object, then the object fill hides it completely.
I'm new to illustrator and I've tried to search for an answer but I don't know the best way to accomplish what I want to do. Seems like some combination of transparency or knockout groups and I've read a bit about this and can't figure out what I need to do.
I need an outline on a stroke that i drew but when i apply object>path>outline stroke i keep getting my initial stroke applied as well. I only need the outline, not the initial stroke. I use Illustrator CC.
I'm try to automate the importing of the Varaible and datasets into my graphs via Scripting, but the ImportVaraibles() function doesn't seem to work. Here is my Script, mostly copied from the example script provided with Illustrator (CS5). And, this works manually, using the file names in the script, via Load Variable Library
Set appRef = CreateObject(strIllistratorVersion)
'Open the file and import the datasets Set docRef = appRef.Open(strTemplate & "200-500.ai") 'docRef.Datasets.RemoveAll docRef.Variables("Yearbook").Delete
Here is the problem, after I delete the previous library, then this next line, right from the example, does nothing The script then exits with 'No Datasets in this document'
docRef.ImportVariables (strXMLFolder & "Lumber_200-500.xml") 'appRef.DoJavaScript "alert('Template:" & strTemplate & strRange & ".ai | XML file:" & strXMLFolder & "" & objFile.Name & "^')" If (appRef.Documents.Count > 0) Then Set docRef = appRef.Documents(1)
[Code]....
If I remove that delete line, the script runs, but just uses whatever Variables I had last loaded, not the XML file.
It's simply not loading. What do I need to do to get it to load?
What I would like to do is to get the stroke shape, pressure and maybe velocity after a `Brush Tool' drawing action is triggered by the user, i.e. after a simple drawing operation.
I have been using the ScriptListener plugin, but it does not record this type of operation: changing the brush parameters (e.g. size and opacity), yes, but the actual drawing action, no.
I'm trying to create a 283.28" by 85" document, but the 283.28" part keeps automatically changing to 227.54". Is there some kind of size limit? What am I missing?
When I tried to scale an object to more than 200%, I kept getting the message that this would make some objects too large. I tried making my artboard larger but still got the same message. Am I doing something wrong?
I'm having a bit of problem with my CS6 Illustrator and it started in illustrator CS5, I can create an eps file within Illustrator save it as CS6, but when i go to open it again i get an error " Can't open the illustration. The illustration exceeds an implementation limit. I get an option to click ok and when i do i get a blank artboard with nothing on it.
I can see the artwork preview in the finder window when i select the eps file, I can open it in photoshop, convert it in preivew and if i place the file back into illustrator i can see the artwork and click embed to edit it.