Identify Layers within an Artboard

Hello,
Illustrator Artboards and Layers are unrelated. Is there a way to find out the layers contained within an Artboard?
Thanks!

No, because as you point out -- layers & artboards are unrelated
Layers cover the entire canvas, while artboards are sections of the canvas. Nothing stops art from being on one layer but multiple (or no) artboards. So the question doesn't have a meaningful answer. Perhaps you're looking for "Is there a way to tell what art is contained within an artboard?"

Similar Messages

  • Why am I unable to select layers within the layout window - PSE13

    I am working on a project in expert mode. It has several layers. Randomly, I am now unable to select any of the layers within the layout window. I have tried to drag or click on or over an element and nothing happens, it keeps selecting the same element unless I select it from the layers utility on the right hand side. I have tried this with a mouse and a Wacom tablet, same result.

    Fixed by running updates, resetting preferences and rebooting. Phew!

  • Count layers within precomposed layer

    Hello dear scripters.
    I'm trying to count the layers within a precomposed layer.
    has somebody a solution for my problem?
    Thnx a lot.
    :F
    This is my code:
    var curComp = app.project.activeItem; // this is my acive comp
    var theSelection = curComp.selectedLayers; // i selected some comps
    var compLayer = theSelection[0]; // compLayer is also a comp
    // and here is my problem
    // this doesn't return the number of layers within my compLayer
    var theNumber = parseInt(compLayer.numLayers);
    alert(theNumber); // returns undefined but i need an integer

    Great. That works.
    Thnx again for your help Dan.
    :F
    Here is the working code.
    It takes a selection of comps in the active comp.
    Enables timeremapping.
    Adds a null as controller with some sliders.
    And adds an expression to the timeremapping
    this just works with CompItems.
    It is usefull if the layers in the comps are sequenced with one frame length
    // written by fabiantheblind
    // http://www.the-moron.net
    // with a hint by Dan E.
    // http://forums.adobe.com/message/3310628#3310628
    applyExpression ();
    function applyExpression(){
        // begin an Undo group
        app.beginUndoGroup("apply Expressions");
        // check if a comp is active
            var curComp = app.project.activeItem;
        if (!curComp || !(curComp instanceof CompItem))
            alert("Please select a Composition.");
            return;
        // get the selection
        var theSelection = curComp.selectedLayers;
        // you could use this for a null within the workarea
        //var theController = curComp.addNull(curComp.workAreaDuration);
        // add a null object to the comp for the slider controls
        var theController = curComp.layers.addNull();
        // make a unique name for the null. dont use the date its just a reminder
        theController.name =  prompt("Enter an unique name for the controller Null Object", "control_"+ Date().toString());
        // loop thru selection
        for (var layerId = 0; layerId < theSelection.length; layerId++)
            var layer = theSelection[layerId];
            // get the number of layers within the layer
            // -1 because
            // layers start at index 1 frames start at 0 Frames
            // Thnx Dan for the word ".source."
            var theNumber = parseInt(layer.source.numLayers -1);
            // add a slider control to the null obj.
            var theSliderEffect = theController("ADBE Effect Parade").addProperty("ADBE Slider Control");
            // change the name of the slider to something usefull
            theSliderEffect.name = layer.name + "_cntrl_" + layerId;
            // this is for the timeremapping to make em all hold keyframes
            var holdInt = KeyframeInterpolationType.HOLD;
            // get the timeremapping property and enable it
            var property = layer.property("ADBE Time Remapping");
                  layer.timeRemapEnabled = true;
                // set all keyframes to hold
          for (var i = 1; i <= property.numKeys; i++){
            property.setInterpolationTypeAtKey(i, holdInt, holdInt);
            // remove the last keyframe. dont need it
            property.removeKey(property.numKeys);
            // check if the property can take expressions
            // dont need it. but i need more checking
            if (!property.canSetExpression) { continue }
            // apply the expression with
            //the name of the slider
            // the name of the control null
            // and the number of layers within the comps
            property.expression = exprString(theSliderEffect.name, theController.name, theNumber);
        app.endUndoGroup();
    // this function builds the expression string
    function exprString(inEffName, inControllerName,inNum){
        // the name of the effect
        var theEffName =  inEffName;
        // the name of the control null obj
        var theCntrlName = inControllerName;
        // the number of layers within the timeremapped comps
        var theNumber = inNum;
        // the expr will be something like this: !!watch out german expression!! (replace "Schieberegler" with "Slider Control"):
        // this expression remaps the frame number within the comp to values from the slider
        // val = Math.floor(thisComp.layer("control").effect("MovementControl")("Schieberegler"))*thisComp .frameDuration;
        //if (Math.floor(thisComp.layer("control").effect("MovementControl")("Schieberegler")) < 0){val =0;
        //}if (Math.floor(thisComp.layer("control").effect("MovementControl")("Schieberegler")) > 3){val =3* thisComp.frameDuration;
        // build the string with the variables from the selection
        var theString = "val = Math.floor(thisComp.layer(\"" + theCntrlName + "\").effect(\"" + theEffName +"\")(\"Schieberegler\"))*thisComp.frameDuration;\n"+
        " if (Math.floor(thisComp.layer(\"" + theCntrlName + "\").effect(\""+ theEffName +"\")(\"Schieberegler\")) < 0){val =0;\n"+
        " }if (Math.floor(thisComp.layer(\"" + theCntrlName + "\").effect(\""+ theEffName +"\")(\"Schieberegler\")) > "+theNumber+"){val ="+theNumber+"* thisComp.frameDuration;\n }" ;
        // and return the string
        return theString;

  • Problem with hidden objects when moving layers, groups or artboards

    Hi there,
    I am using Illustrator CS5.5 on a Mac.
    Sometimes, after moving stuff around (groups, layers or artboards), I notice that hidden objects didn't move with everything else.
    Does somebody knows how this can be if no objects are locked ?
    I cannot make this happen on purpose with a simple example and it is really annoying not to be sure that everything was moved properly.
    Thanks
    R.

    Emil,
    A little misunderstanding here.
    Like you say, clicking on the target to select (targeting objects) : this is exactly what I do.
    So, SOMETIMES, when I select a group (not a layer) which contains hidden objects by clicking on its target in the layers panel, only the visible objects get selected (i.e. : only the visible objects get a full square at their right in the layers palette and the group gets a small square) AND the group is NOT targeted at all (i.e. : the target of the group is not highlighted, only the targets of the selected (visible) objects within the group are highlighted).
    Then, if I move the group, only the visible objects are moved because only those are selected.
    Problem is that I don't know why but when doing this (targeting objects), SOMETIMES this result in selecting everything within the group BUT SOMETIMES it result in selecting only the visible objects withtin the group.
    I don't know what triggers that difference in behavior.
    R.

  • Collect footage breaks links to layers within PSD

    I have a project which was built by creating a series of layered Photoshop storyboard files for approval, then importing the PSDs as comps, making the text layers live text and then animating.
    With the project complete I'm now trying to collect all of the component parts so I can archive it but I'm having a problem with the collect files function. If I look in the collected folder, the required PSD files are in place, but within the collected project file all of the individual layers references are still linked to the original files -- so if I rename the original master folder and open the collected project, it complains of a large number of missing items.
    Is this a bug? Is there some part of the process I'm missing, or is this just how the collect footage function works with layered PSDs and I have to manually relink the layers each time?
    Cheers,
    Keith

    Szalam, this is unlikely to be the same problem as the Mac OS event handler issue we are seeing with Collect Files, where not moving the mouse avoids an event collision. In that case the user should receive an error message that makes the problem very obvious. Doesn't sound to be the case here.
    TheAnorak, best thing at this point would be for you to post a project (before collecting) and at least one PSD file that we could try to repro the problem with. Screenshots of the Project panel of the before and after states, the Collect Files dialog, and the resulting collected files would also be useful.
    My suspicion is that you are encountering some unexpected condition that Collect Files doesn't account for, but we don't yet know the full condition of your project.

  • Help! Can't hide layers within groups in Muse 2014.2

    Muse 2014.2 is not letting me hide layers that are apart of a group. Is anyone else having this issue and is there a fix?

    Sam,
    Thanks for the reply.
    I do not like that I cannot hide individual objects within a group. It is difficult to find good reason in only allowing top-level containers having this functionality. For objects that I may want to hide for later use my only option now is to delete (and lose all my work and formatting of the object) or bring the opacity down to 0% (time consuming).
    It would be great to have the option to hide each object/layer just like all the other amazing Adobe softwares!

  • Comment Forms? Layers within Tables? Crazy Idea?

    Good Day Dear Folk,
    I have designed a webpage using tables. I want to be able to
    put text in the table with the ability for viewers to scroll within
    the table. Layers have the option for scrolling text, correct? So I
    would like to put a layer in the table. I like using a table to
    center the content of the page. Is there a better way? Also, my
    friend wants visitors to be able to sign up for a newsletter and
    have the ability to leave comments about the site. I know this
    involves forms but I don't know about script writing. I'm more
    concerned about the comment form. She would like the comments to
    post directly to the page. Any ideas? Please help if you can.
    Thanks.

    > i converted my tables to layers and now it's like a
    whole new world.
    This could be equivalent to leaping from the frying pan into
    the volcano. I
    never recommended that you do that. Using Layers as a layout
    method is a
    very bad practice in general.
    1. ... any ideas?
    Are these PNG files NATIVE FW PNG files? Or did you export
    from FW as 8bit
    (or 32bit) PNG files? Try using GIF/JPG images instead.
    > 2. i want to create a page where people can leave a
    comment about the
    > website. i would like the comment to post automatically.
    i'm not sure
    > how
    > involved this is but if you can direct me to what i need
    to do, i would
    > appreciate it. if there is a high learning curve, it's
    ok. i want to
    > learn.
    > am i crazy?
    Crazy? No. It's needs like this that drive you to learn. Such
    a
    capability would require server-side scripting and database
    access. You can
    try some 'canned' approaches by Googling for 'guestbook' and
    see what you
    find....
    Murray --- ICQ 71997575
    Adobe Community Expert
    (If you *MUST* email me, don't LAUGH when you do so!)
    ==================
    http://www.dreamweavermx-templates.com
    - Template Triage!
    http://www.projectseven.com/go
    - DW FAQs, Tutorials & Resources
    http://www.dwfaq.com - DW FAQs,
    Tutorials & Resources
    http://www.macromedia.com/support/search/
    - Macromedia (MM) Technotes
    ==================
    "Itiyopiya Ewart" <[email protected]> wrote
    in message
    news:[email protected]...
    > thanks ACE!
    > i converted my tables to layers and now it's like a
    whole new world.
    > thank
    > you thank you!!! i'm learning css now... i have some
    more questions that
    > i
    > hope you can help me with:
    > 1. i'm using dreamweaver 8. i'm using OSX. my browsers
    for checking my
    > pages are safari, firefox, and opera. for some reason
    certain images
    > won't
    > show in firefox and opera. i can see them in safari, but
    the other two
    > only
    > show the alt image info. this also happens in IE. the
    files are .png.
    > they
    > were all created in photoshop from the same .psd but two
    images for the
    > navigation menu don't show. any ideas?
    >
    > 2. i want to create a page where people can leave a
    comment about the
    > website. i would like the comment to post automatically.
    i'm not sure
    > how
    > involved this is but if you can direct me to what i need
    to do, i would
    > appreciate it. if there is a high learning curve, it's
    ok. i want to
    > learn.
    > am i crazy?
    >
    > thanks!
    >

  • Identifying layered files

    I have a folder with 751 TIF and PSD files. I need to identify the files that have layers from the unlayered files. I can see in the finder info window  which files have layers. An Applescript suggestion to access this property would be a big help.

    No, I meant with a simple Search set to Contents instead of Name one can search for layers of a certain name.
    Now neither is this what you asked for nor am I sure it will work correctly (thus better test it on a duplicate folder), but if you are interested you could try running the following in ExtendScript Toolkit itself (paste the text into a new window and hit the start-button).
    Anyway what this Script should do is let you select the files in the folder (command-A should make selecting them go faster), rename the files that have layers with »layered_« at the beginning and then create two txt-lists of the layered and unlayered files on the Desktop.
    // check if psd and tif contain layers;
    // use it at your own risk;
    var theFiles = File.openDialog ("please select file", checkForTIForPSD, true);
    if (theFiles) {
    var theNonLayered = [];
    var theLayered = [];
    for (var m = 0; m < theFiles.length; m++) {
    var theFile = theFiles[m];
    var check = hasLayers(theFile);
    if (check == true) {theLayered = theLayered.concat(theFile.name);
    theFile.rename("layered_"+theFile.name);
    /* theFile.copy("~/Desktop/test/borders/aaa/"+theFile.name);
    theFile.remove()*/
    else {theNonLayered = theNonLayered.concat(theFile.name)}
    createTxtFile (theLayered, "layered");
    createTxtFile (theNonLayered, "unlayered")
    ////// verify layers //////
    function hasLayers (file){
    file.open("r");
    file.encoding = 'BINARY';
    filestring = file.read();
    file.close();
    var count = filestring.search("layer", "i");
    filestring = "";
    if (count != -1) {var doesHave = true}
    else {var doesHave = false};
    return doesHave
    ////// filter-function for file-formats //////
    function checkForTIForPSD (theFile) {
    if (theFile.name.slice(-4) == ".tif" || theFile.name.slice(-4) == ".psd" || theFile.constructor.name == "Folder") {return true}
    else {return false}
    ////// function to write a preference-file storing the selected condition //////
    function createTxtFile (theText, theName) {
    var thePrefFile = new File("~/Desktop/"+theName+".txt");
    thePrefFile.open("w");
    thePrefFile.write(theText.join("\r"));
    thePrefFile.close()

  • Saving layers within a folder to separate pdf's (complete n00bie warning)

    I have designed a set of wedding invites recently and when it came time to export I was wanting to find a smarter (and hopefully faster) way to export each individual invite.
    I have the document setup so one folder is all the artwork including details text on the card, and the second folder is a large number of text layers with each invitees name on an individual layer.
    I was wanting a script that with one click would export the first folder (with all the wording and artwork) and then only one layer out of the second (invitee text layer) folder, then repeat the process but with the next invitee name. It would be preffered if the pdf was then named after that layer name (ie: the invitee's name).
    After much searching I found this excellent script:
    Creating Multi-Page PDF from a Layerd Illustrator file (script)
    but unfortunately I couldn't find a way to make it work with only layers in one folder and leaving another folder visible.
    I am on a Mac and using CS5.
    Thanks for taking a look at my question!

    If you doc was something like this where I would expect you guest names to be sat in a layer above the base art?
    Then this should be close… Well it worked for me with this example file…
    #target illustrator
    var docRef = app.activeDocument;
    with (docRef) {
         var docName = baseName(name)
         var pdfOptions = new PDFSaveOptions();
         pdfOptions.pDFPreset = '[High Quality Print]';
         // Turn all first layers text frames off
         for (var i = 0; i < layers[0].textFrames.length; i++) {          
              layers[0].textFrames[i].hidden = true;
         redraw();
         // Turn each first layers text frames off
         for (var i = 0; i < layers[0].textFrames.length; i++) {
              if (i == 0) {
                   layers[0].textFrames[i].hidden = false;
                   redraw();
                   var guestName = layers[0].textFrames[i].contents;
                   var saveAsPath = new File('~/Desktop/' + docName + '_' + guestName + '.pdf')
                   saveAs(saveAsPath, pdfOptions);
              } else {
                   layers[0].textFrames[i-1].hidden = true;
                   layers[0].textFrames[i].hidden = false;
                   redraw();
                   var guestName = layers[0].textFrames[i].contents;
                   var saveAsPath = new File('~/Desktop/' + docName + '_' + guestName + '.pdf')
                   saveAs(saveAsPath, pdfOptions);
         //close(SaveOptions.DONOTSAVECHANGES);
    function baseName(fileName) {
         var nameString = '';
         var extOffset = fileName.lastIndexOf('.');
         if (extOffset == -1) {
              nameString = fileName;
         } else {
              nameString = fileName.substr(0, extOffset);
         return nameString;

  • Method of identifying variables within a document

    I'm in the process of writing a standardised specification document.
    Invariably we refer to drawing numbers throughout the document, however these drawing numbers change with each project.
    I'd like to highlight/identify these somehow so that when a different author comes along and edits the document to suit their project they can easily identify these variables and change them. But I want to do this without the end-reader noticing.
    Does Pages provide some way of doing this?

    No, sorry, I obviously haven't explained myself well.
    I'm not after the ability to change the formatting of the text and I'm not after the ability to change all instances at once.
    What I want is to highlight bits of text in the document so it's easy for someone (another editor) to recognise which bits of text need to be changed in order to be specific to their project. But I want to highlight this text without the highlight printing out.

  • Identify DayOfWeek within date range

    Post Author: mcatd
    CA Forum: Formula
    I need to write a report counting employee absences for each day within a user-selected week. The employee-absence records I have to work with look more or less like this:
    Employee Name      Absence Type     Abs Start Date    Abs End DateSmith                                 S                   02/14/07             02/15/07Jackson                             V                    02/12/07             02/16/07Tulowitzki                           S                    02/15/07             02/16/07
    The report needs to look like this:
    DayOfWeek        Sick    VacationMonday                  0           1Tuesday                 0           1Wednesday            1           1Thursday                2           1Friday                    1           1
    I am completely stumped on how to assign a DayOfWeek value to those dates that are only implicit in the range, particularly as the size of the range varies from one record to the next.          

    Post Author: SKodidine
    CA Forum: Formula
    This is a bit messy and cumbersome but works.  Perhaps others have a better idea.
    Create all these formulae:
    processdates  (Place this formula in your details section and suppress it)
    numbervar sunsick;
    numbervar sunvac;
    numbervar monsick;
    numbervar monvac;
    numbervar tuesick;
    numbervar tuevac;
    numbervar wedsick;
    numbervar wedvac;
    numbervar thusick;
    numbervar thuvac;
    numbervar frisick;
    numbervar frivac;
    numbervar satsick;
    numbervar satvac;
    datevar startdate := date(2007,02,12);  // abs start date
    datevar enddate   := date(2007,02,16); // abs end date
    stringvar type    := 'v';                                        // type
    datevar pdate := startdate;
    while pdate <= enddate do
    select dayofweek(pdate)
    case 1:
    (if type = 's' then
    sunsick := sunsick + 1
    else if type = 'v' then
    sunvac := sunvac + 1;)
    case 2:
    (if type = 's' then
    monsick := monsick + 1
    else if type = 'v' then
    monvac := monvac + 1;)
    case 3:
    (if type = 's' then
    tuesick := tuesick + 1
    else if type = 'v' then
    tuevac := tuevac + 1;)
    case 4:
    (if type = 's' then
    wedsick := wedsick + 1
    else if type = 'v' then
    wedvac := wedvac + 1;)
    case 5:
    (if type = 's' then
    thusick := thusick + 1
    else if type = 'v' then
    thuvac := thuvac + 1;)
    case 6:
    (if type = 's' then
    frisick := frisick + 1
    else if type = 'v' then
    frivac := frivac + 1;)
    case 7:
    (if type = 's' then
    satsick := satsick + 1
    else if type = 'v' then
    satvac := satvac + 1);
    pdate := pdate + 1;
    monsick
    whileprintingrecords;
    numbervar monsick;
    totext(monsick,0);
    tuesick
    whileprintingrecords;
    numbervar tuesick;
    totext(tuesick,0);
    wedsick
    whileprintingrecords;
    numbervar wedsick;
    totext(wedsick,0);
    thusick
    whileprintingrecords;
    numbervar thusick;
    totext(thusick,0);
    frisick
    whileprintingrecords;
    numbervar frisick;
    totext(frisick,0);
    monvac
    whileprintingrecords;
    numbervar monvac;
    totext(monvac,0);
    tuevac
    whileprintingrecords;
    numbervar tuevac;
    totext(tuevac,0);
    wedvac
    whileprintingrecords;
    numbervar wedvac;
    totext(wedvac,0);
    thuvac
    whileprintingrecords;
    numbervar thuvac;
    totext(thuvac,0);
    frivac
    whileprintingrecords;
    numbervar frivac;
    totext(frivac,0);
    In your report footer, create text objects for 3 headings such as "Day of Week", "Sick", "Vacation".  Under "Day of Week", create 5 text objects containing "Monday", "Tuesday", "Wednesday", "Thursday", "Friday". Place the appropriate formulae from above next to the appropriate day.
    I tested it and it seems to work, so give it a shot.

  • Using layers within an action

    I am new to Photoshop and I am using CS. I am trying to resize about 2500 images that are in a single folder. They vary from JPEG, to TIFF, to EPS files. I need to do multiple steps in an "action" and also need to save as to another folder. I need to know if it is possible to do what I am wanting to do all in an action and then run a batch. I need to: resize the image, add a transparent logo (a different picture layered on), then I need to save for web. Can this be done in an action, and then in a batch on all at once? Help!

    What about using snapshots, and copy/paste, instead of the history brush?
    Or, you could use a path that crosses the canvas and stroke it with a very large history brush. To apply a path to an action use the action flyout menu "insert path".
    I'd probably just copy/paste and arrange layers, avoiding the history panel altogether.

  • My malware/virus protector has identified Trojans within Firefox files that it says it cannot access and therefore, presumably, delete. What di I do? - firefox.exe(5012) and (3188)

    The virus is identified as Trojan Horse agent _r.x]

    Which security program are you using which supposedly detects those files? What's it called?

  • Artboards and Layers....

    Am I to understand if I have multiple artboards, they all will share the same layers? Each artboard does not have it's own separate set of layers, am I right? This is my first time using the artboard feature... CS6.

    Hi,
    You are correct multiple artboards share the same set of layers. Layers in illustrator are specific to a document & not to a particular artboard.
    If you want to distribute your layer sets according to the artboards, you can do the following:
    1. Select the rows in the layers panel itself.
         a)To select continuous rows in layers panel, select the first row by clicking on it & shift + click on the last row to be selected.
         b)To select discontinuous rows, select the row by clicking & holding Ctrl (Cmd on MAC) key.
    2. And then, from flyout menu of layers panel, select Collect in New Layer.
    Also, you can click & drag out the items manually to different layers as required.
    Hope this helps.
    Thanks!

  • Importing .AI file (multiple artboards) into After Effects imports all layers?

    Okay, so I've been trying to figure out this issue that I am having but the problem is a bit wordy to explain.
    What I want to do: Import an Illustrator file, that is a single artboard from a multiple artboard file into After Effects and ONLY import the layers from that artboard.
    What is happening: Artboard 1 with shape 1, artboard 2 with shape 2, and artboard 3 with shape 3. When I export them (Save as --> .ai --> Save each artboard as a separate file), in .ai the layers are correct (ie only shape 1 on artboard 1), but when I import the .ai into AE, artboard 1 has shape 1, shape 2 and shape 3 (they are all separate layers).
    How does Illustrator determine what is or isn't in an artboard? I am seeing the other layers but they are only 1x1 in AE.
    I am using Illustrator CS6 and AE CS6 and I've tried it both on Mac and PC, and haven't gotten it to work. The weird thing is that it WAS working correctly before.

    I have (hypothetically), a three layer file each with a rectangle. Each rectangle is on a separate artboard. When I save each artboard as a separate .ai file (ie "Save as --> save each artboard as separate file"), in each .ai file, only the layers in each artboard are in the separate ai files:
    artboard_01.ai only has layer with rect 1,
    artboard_02.ai only has layer with rect 2,
    artboard_03.ai only has layer with rect 3,
    This is good, BUT when I import into After Effects, all three layers appear in each comp generated from the imported .ai files
    comp of artboard_01.ai has layer with rect 1, layer for rect 2 (no content), and layer for rect 3 (no content).
    comp of artboard_02.ai has layer with rect 1(no content), layer for rect 2, and layer for rect 3 (no content).
    comp of artboard_03.ai has layer with rect 1(no content), layer for rect 2 (no content), and layer for rect 3.

Maybe you are looking for