6

I am using Inkscape to create some wireframes/click throughs. I would like a way toggle the visibility of groups/sets of layers.

For example, lets say I define the following sets:

Group 1 - Layer1 (hidden), Layer2 (visible), layer3 (hidden) Group 2 - Layer1 (visible), Layer2 (hidden), layer3 (visible)

Then, I could switch between the two groups and would not have to update the states of the layers individually.

3

As noted by Wray Bowling above, there isn't really a nice built in way to accomplish this.

I created a simple extension called Armature to do this, and shared it on GitHub. It rolls everything up into a self contained HTML file that can then be sent to clients or other team members.

INSTALLING

Download it from GitHub. To install, extract the files to a folder and copy what is inside the /inkcape folder into your Inkscape extensions folder.

USING

After installing Armature and restarting Inkscape, you will have an Armature option in the Inkscape menu.

Extensions menu after installing Armature

Using the Create/Update Layer Set option will capture the current visible or hidden state of each year. Create a layer set for each view/state you want to capture.

enter image description here

DEMO WIRE FRAMES

Use left and right arrow keys to navigate

Basic Website Example

2

While the Armature extension in the accepted answer does exactly what is needed, Inkscape does have the capability of creating layer groups--it's just not built into the UI.

If you use the XML Editor Ctrl Shift + X, you can manipulate the XML tree directly. As you can see, a "layer" in Inkscape is really just a group with a special layer attribute.

If you move these groups in the XML tree so that a layer is nested in another layer, Inkscape will treat it as a layer group. From there, you can toggle visibility on the highest groups, affecting all groups within it.

  • If I understand what you're saying, you're talking about sub layers which is available through the layers panel. Dragging the object just moves it for me, it doesn't create a reference. My use case is to have separate groups and hierarchy of layers, and toggle them as a set for instance lets assume I had three layers DialogLayer,BackgroundLayer and UserViewLayer. My use case is to create a different groupings that capture the visibility state (BackgroundLayer and UserViewLayer both visible) could be one state and BackgroundLayer,UserViewLayer and Dialog all visible could be another. – BrianV Oct 11 '16 at 17:00
  • Yes, I was talking about sublayers. I think the example in the question might have confused me because it sounded like visibility coincided with the group. Did you need something where the "groups" might overlap? (example: layer A needs to be visible in "groupings" A and B, but not C) – Scribblemacher Oct 11 '16 at 18:19
1

Inkscape does not present things in this way. You may be annoyed to know that the truth of the way Layers are handled in Inkscape is... they are groups, too! And groups in groups in layers(groups) is already a functioning part of inkscape. Perhaps if you think of your "groups" as "layers" instead and also group the objects you have on the canvas, that would be satisfying enough? I'm afraid that so long as "layers" are presented as the highest level of grouping possible, that all I can offer you is this advice to change your workflow.

  • Wray, thanks for the insights. Having done a bit more research after posting my question, you're right that it's not something Inkscape supports out of the box. It is definitely possible given Inkscape's SVG file format though. I've managed put together a crude Python extension that does what I need. I plan on cleaning it up a bit, and then I will post some links to it here. Hopefully it will save other some pain! – BrianV Nov 14 '13 at 16:46
1
  1. Create an Empty layer and name it after the group name
  2. Drag all member of the group on top of the it in the Layers Panel (Shift+Ctrl+L)

I don't know when they added this but I did it and it worked.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.