Illustrator Scripting :: Select All Text / Layers Including Locked Or Not Visible Using VBScript?
Feb 1, 2013I'm looking for the most elegant syntax to loop through a document and select all the text frames.
View 1 RepliesI'm looking for the most elegant syntax to loop through a document and select all the text frames.
View 1 RepliesI want to select all text frames on all visible layers. The script below will select all text frames even in groups but when a layer with text on it is invisible the script will error.(target layer cannot be modified)
if (app.documents.length > 0 ) {
var doc = app.activeDocument;
var numTextFrames = 0;
for ( i = 0; i < doc.textFrames.length; i++ ) {
textArtRange = doc.textFrames[i];
textArtRange.selected = true;
}
}
So I made this script to select text frames on only the visible layers but it now misses text that is in a group.
var layerCount = activeDocument.layers.length;
var docSelected = activeDocument.selection;
for (i = 0; i < layerCount; i++)
[Code] .....
Why it does not selected textframes in a group when done this way and is there a way to get all textframes selected on all visible layers?
i want to select all the object , but i locked certain object it show error while submiting below code
myDoc = app.activeDocument;
myPageItems = myDoc.pageItems;
for (i=0;i<myPageItems.length;i++)
{
myPageItems[i].selected = true;
}
modify above code to select all objects except locked object or i want to select objects outside active artboard
My script creates an artboard in my pdf file. i need to print this artboard only.
if i go to file/print manually there is an option 'Bereich' (pls see screenshot, my illustrator is in german language), so only the 2nd page is printed. (exactly what i want)
up to now i could not find this option (or something similiar) within vbscript.
code:
...
appRef.ActiveDocument.Artboards.Add(Array(Rminx,Rmaxy,Rmaxx,Rminy)) ' vars are correctly set before
Set jobOptionsRef = CreateObject("Illustrator.PrintJobOptions")
Set printOpts = CreateObject("Illustrator.printOptions")
printOpts.JobOptions = jobOptionsRef
jobOptionsRef.Designation = 2 'aiAllLayers
jobOptionsRef.PrintArea=2
appRef.ActiveDocument.PrintOut printOpts
....
these lines prints 2 pages: 1) main document 2) artboard
if i set
jobOptionsRef.Designation = 1
only the main document is printed - but not the artboard. i need exactly the other way round, only the artboard but no main image.
I have a VBA script that opens a .DXF file in Illustrator, and want to save it as an AI file. How do I do this?
View 14 Replies View RelatedI have some +900 legacy pdf's that need to have a title and date change. The pdf's where generated in ArcMAP 10 so the text appears as individual letters. So I wrote a script that creates a knockout and adds the required text. I can get this to work for an individual file but I can't figure out is how to have the script perform it for all the pdf's in a folder.
Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Open("C:WorkCity_Wide_Zoning�_Spring_2013TestA001.pdf")
' *************************
'Knockout
[Code]....
in an open PDF File i press 'Ctrl+A' to select all Items in the document, then i choose Edit/Transform/rotate ... 90 degree.now i'd like to do the same with an vbscript.
the best thing i could find is:
rotate(90)
Sub rotate (degree)
Dim appRef, argument, element
Dim changePositions, changeFillPatterns, changeFillGradients, changeStrokePattern, rotateAbout
Set appRef = CreateObject("Illustrator.Application")
[code]....
not all, but all elements i am interested in are rotated - it would be better if really all elements would be rotated the elements are rotated around 'aiTransformDocumentOrigin' ... i would prefer if they are rotated around 'middle of document'.
When running my script to unlock all layers, so I can select all textFrames and copy them to a new layer, I run into a problem with text that has been locked individually. The script unlocks layers that are lock but it does not unlock items that have been locked individually on those layers. Is there a way to unlock these items?
var layerCount = activeDocument.layers;
for ( j = layerCount.length - 1; j >= 0; j-- )
{
lockedLayers = activeDocument.layers[j];
if (lockedLayers.locked == true && lockedLayers.visible == true)
{
lockedLayers.locked = false;
}
}
I was wondering if there was a way to extract data from Excel to be used in Illustrator. I know there is an option of variables and xml, and I don't want that. I've seen and tried out how to read illustrator and write to excel, and I get that. What I would like to do is pretty much the opposite:
1.Pre-fill in an Excel file(.xls,.csv, doesn't matter) with data such as a filename in column 1 and (Replacement Text) in column 2 and close manually.
2. Run script(VBSCRIPT,Javascript, doesn't matter)
3.For each column in Excel file where cell in first column is not empty, open Illustrator Template with placeholder of "DWG" textframe and replace the frame titled "DWG" with Replacement text from Excel in Column2.
4, Save each to a PDF file and name file with text from Excel Column1(Filename)
In a nutshell, there will be a single illustrator template with a premade textFrame with a name of "DWG". Excel will contain two columns, one for the filename to be named and one for the relative text to replace with the placeholder in AI.
I'm using Illustrator CS 6 / ExtendScript Toolkit CS 6.
Is there any way to add arrowheads to a path with script (JavaScript or VBScript)? I don't want to make triangle or V-shaped path but add one of the built-in start and end arrowheads, scale them and set arrowhead alignment, all with script. There is no information about this topic in the Illustrator scripting references.
I was on a tight deadline. I got a massively layered, -- nested folders everything -- .psd. I'm using Photoshop CS 5.5
I only needed the visible layers. So, I go to "Delete Hidden Layers" right? Ooops it was grayed out, I could not use it -- that was because of the locked layers...
Then I realized -- in the complicated layer structure I had to go through every single folder, open it, look for a locked layer and unlock it (nested folders inside of nested folders etc.). If the layer was not visible and it was locked, I had to first turn it to visible, then unlock it, and then turn it off again.
I was on a deadline, and I just didn't have time -- but I had to do it anyway. This was a painful experience... I'm telling designers from now on NEVER SEND ME A PSD WITH LOCKED LAYERS AGAIN
It would have been so much easier if I could just search for "locked layers", and "unlock all."
script that is able to do the same as this photoshop one [URL] ...., I would use that one in photoshop but its not working in CS6.
find a script that will seperate the text into layers ready for export to After Effects to be used in Kinetic Typography pieces.
I've got an Illustrator CS6 document that has 500+ layers with individual words on them (a word cloud). I'm needing to animate this in AE. When I "Release to Layers (Sequence)", all of the layers become Layer 1, Layer 2, etc. Is there a script that will rename all of those layers to be the text inside them?
i.e. Layer 1 has the word "Pencil" as a sub-layer, editable text.. I need to rename the Top-Layer Layer 1 to "Pencil". I'm hoping there is a script that can do this so I don't have to manually rename all of the layers.I have found this script:
var idoc = app.activeDocument;
var ilayer = idoc.activeLayer;
for (i=0; i<ilayer.layers.length; i++) {
var isublayer = ilayer.layers[i];
isublayer.name = isublayer.pageItems[0].name;
}
But is doesn't seem to do what I need.
How to select a locked layer when you have too many layers overlapping?
I know I can select all the layers, lock them and unlock them. But I can't lock/unlock all layers when some layers are hidden. I'll have to dig in to unhide those layers. But then I don't want to unhide all layers, because it will make changes to my design that I wouldn't know.
Is there a smart way to find/select the lock layer?
I have an Illustrator document with one layer (named Layer 1).In that layer are lines, rectangles and text.Is it possible (in script) to: make 3 additional layers named NL, EN and GEselect and cut all the text in Layer 1paste that text in the same place in the layers NL, EN and GE
(Step 2: select all text items and Ctrl-X)
(Step 3: select proper layer and Paste in Place in that layer)
I know this can be done with an action (I did that allready) but the reason I want to script this is because I have to combine this with another script which takes care of colorizing stuff.
I have a PSD with about 100 layers. When I use the select tool and press while holding CTRL (to activate "auto select layer") I sometimes select invisible layers.
View 9 Replies View Relatedi can't be the only one who thinks it's nuts that when 'auto-select > layers' is selected and i drag to select a bunch of layers, i also select layers that are turned off and/or locked, can i?i just confirmed that this IS not the case with CS6 -- locked or hidden layers are not selected upon dragging to select exposed layers.
is this a bug, or a bit of new functionality that i am failing to grasp? i did notice that in CC, on right-click there is the new option to "isolate layers", but this seems to just isolate & unclutter layers within the layers panel.
improve Photoshop CC, but this bug beaks my workflow to the point I can't use it.
Other than this critical bug, the software engineers behind Photoshop CC are doing a great job.
How to make a layer visible by using the name of the layer, with javascript?
View 2 Replies View Relatedhow to get/determine the visible bounds (top+left coords and width+height or Rect structure) of a group having a clipping mask or several masks? When a script asks for Visible Bounds, Illustrator provides the coords/size of the group like it does not have any clipping mask. So, you see a circle of 10px diameter (and these are the actual visible bounds of this group), but Illustrator says that the visible bounds are 50 px wide and 70 px in height.
And what to do if the group contains multiple clipping masks of different shapes/sizes?
To get the top, left and width of an groupitem without Clipping mask. Actually the group has Clipping mask. But i need only the width of the selection (without Clipping mask). I got these properties in scripting but including the clipping mask. The GUI itself shows different (i.e. Info -->: X:0 mm, Y:0 mm, W:full width [including clipping mask]. Transform palette -->: X:43.00, Y:22.0, W:64 [excluding clipping mask])
How to get the properties without clipping mask?
In prior versions of illustrator we used a script that basically saved the visible bounds of a masked object as an EPS file. With the upgrade to CS4 and Multiple Artboards this save function (EPSSaveOptions) no longer does the same visible bounds. I have read several post of similar issues, but what I am asking is:
In there a way to make the visible bounds of the eps file equal the artboard on the active artboard only? The artboard seems to be driving the crop box. When I manually save the file as EPS the visible bounds are correct. When I save from the script it is not? As with other posts I do not want to go backwards within compatibility...I would like to keep the file at the CS4 level. What command am I missing? We have tried making the crop box = visibleBounds to no avail.
the Script of creating mirror text and stroke text in Adobe illustrator scripting.
View 4 Replies View RelatedI have been working on a script to place a psd file onto only one visible layer (document has multiple hidden layers). This java code has worked so far:
var doc = app.activeDocument;
var onFile = File("C:/Users/Desktop/Desktop/ExportedArtboard-01.psd");
var mydoc = doc.placedItems.add();
mydoc.file = onFile;
mydoc.embed();
however this works with only the top layer visible (eye turned on in Ai). if top most layer isn't visible i get "target layer cannot be modified" error.
For instance say i have 1,2,3 layers. layer 1 (top most) and 3 (bottom most) would be hidden, layer 2 (middle layer) would be visible and then running the script would place the psd file on to layer 2.
I can't believe this is still an issue in CS6. When you have multiple text layers stacked near or in between each other, its impossible to lock the layer so that it can no longer be selected. Even if the layer is locked, the TYPE tool is still able to select it. This makes its a super pain in the tail to edit text near each other. Is there a way to make the text layers lock and NOT be selectable?
Instead of locking a layer and not being able to select it with the type tool, a pop-up telling us that its locked come up?
I would like to make a document which he can open in illustrator and only can edit the layers with text.The layers with my illustrations must be locked and not be editable.Who knows how i can save this document?And is it possible to do this with a PDF-document?
View 12 Replies View RelatedWhen I open Illustrator and create a new artboard, I cannot edit or interact with the artboard. No matter what tool I select, the cursor indicates that the artboard/layer is not editable but the layer is definitely not locked.
Illustrator CS6
Windows 7
I am working on a project and when I try to copy and paste unlocked layers to paste them in to another image it doesn't paste. The only thing it pastes is the text unformatted. I tried resetting the settings by removing the setting file to see if I can set Illustrator back to square one and it isn't working. See Picture for before (copy) and After (paste)
[URL]
I am also using windows 8 on a pc. I would say it was the OS but it was working fine untill yesterday.
I only have one layer in the document - it is not locked. I have already tried locking it, unlocking it, creating new layers, locking/unlocking those.I am not able to access Object>Unlock All.
I have done Hide All Layers/Show All Layers - so there is nothing hidden..I have even opened a previous project, and it has the same symbol on it and none of these methods of correcting it works either. It printed fine on Friday.
When I create an entirely new document, the icon is still there.
I need to create an action. A simple one. The idea: One path is selected, a user runs the action, it makes a copy of that path, moves the copy, select both the path and its copy and makes a blend.
I tried to record that action, but Illustrator does not record the paths selection/selecting.
Even a simplier task: How, in general, having one path selected, select an item/path above or below it? And how to select them both?
I can make a script for that, but the requirement is to keep it as simple as possible: have an Action only without any scripts, if possible.
I want to select the objects outside artboard using javascript. Their are many objects outside activeartboard i want to select all those object using script.
View 1 Replies View Related