I love #Inkscape, and I love giving talks!
-
So… I'm interested in two things: Have you seen a tool/plugin that would feel similar to use?
And second: Are there any #Inkscape lovers out there who would have the need for such a tool? I'd be curious about your wishes/requirements! :)
When editing the file, turning the layers on/off a lot would be a bit inconvenient. Maybe a dedicated plugin could help with that.
And then, there are some possibilities for making the "renderer" happen:
It could be an external tool that you point at the SVG, and it outputs the PDF, as fast as possible.
It could be an Inkscape plugin; but all I've used felt a bit iffy, I dunno…
It could be a script that does as little as possible, and calls Inkscape on the command line for rendering?
-
This is clearly inspired by #JessyInk, an #Inkscape plugin that does a similar thing! I've used it to give talks in the past. It's pretty neat, and even though it hasn't been updated since ~2010, it still works!
But it doesn't support nested layers/step-by-step animations, and the only way to view the result is to open a JavaScript-instrumented SVG in the browser…
@blinry heh, I've also used that for a talk once, it's super janky and I love it
-
@blinry ah, yeah. I guess you have to create a page at the end, hope your pages are 1 dimensional, do a multi-select, and move all after your desired page, snapping or something ... yes a "insert page" would be nicer 😄
for animations, I would imagine, e.g., "slide 3" takes "page 3", filters all objects that are not inside the page bbox, and (as you said) if they're on separate layers, determine if and what to animate from those layer orders
@alifeee Maybe another problem of spreading the content over multiple pages:
Your master background slide would not really be visible behind all of them during editing. – Hm, except you make a clone of it, and put it on all pages? 🤔
-
When editing the file, turning the layers on/off a lot would be a bit inconvenient. Maybe a dedicated plugin could help with that.
And then, there are some possibilities for making the "renderer" happen:
It could be an external tool that you point at the SVG, and it outputs the PDF, as fast as possible.
It could be an Inkscape plugin; but all I've used felt a bit iffy, I dunno…
It could be a script that does as little as possible, and calls Inkscape on the command line for rendering?
You want the layers to be optional content groups in the output PDF?
Try the 1.5 development branch, the capypdf work I did last year outputs OCGs from layers.
Not animated though. But capypdf has some functionality I'm not using to do some of those kinds of things.
-
You want the layers to be optional content groups in the output PDF?
Try the 1.5 development branch, the capypdf work I did last year outputs OCGs from layers.
Not animated though. But capypdf has some functionality I'm not using to do some of those kinds of things.
@doctormo I think I'd like the layers to become pages in the PDF…
But what you're describing sounds interesting! Can you link me to the right place where I would find it?
-
@alifeee Maybe another problem of spreading the content over multiple pages:
Your master background slide would not really be visible behind all of them during editing. – Hm, except you make a clone of it, and put it on all pages? 🤔
@blinry ah, I hadn't thought about master slide. the "workaround" would seem to be yes, creating a tiled clone
-
You want the layers to be optional content groups in the output PDF?
Try the 1.5 development branch, the capypdf work I did last year outputs OCGs from layers.
Not animated though. But capypdf has some functionality I'm not using to do some of those kinds of things.
-
-
I love #Inkscape, and I love giving talks! So why not make slides using Inkscape?
My idea is to write a tool that looks at the layers of an SVG document, and creates one PDF page per layer, in top-to-bottom order. On the page, only that layer, plus all parent layers, would be visible.
That way, you could have an always-visible "master slide" in the background, and create simple step-by-step animations. In this example, "2" would be shown first, then "2a", then "2ab". After that, only "3".
@blinry
I think there was a tool/script doing that in html5 I remember 🤔 -
undefined oblomov@sociale.network shared this topic on
-
I love #Inkscape, and I love giving talks! So why not make slides using Inkscape?
My idea is to write a tool that looks at the layers of an SVG document, and creates one PDF page per layer, in top-to-bottom order. On the page, only that layer, plus all parent layers, would be visible.
That way, you could have an always-visible "master slide" in the background, and create simple step-by-step animations. In this example, "2" would be shown first, then "2a", then "2ab". After that, only "3".
@blinry inkscape can do multiple canvases and cloned objects. You could add the ever-same background as a clone to each canvas and then export to pdf would be working right away.
The a/b/c thing, though, would still need extra work.
-
So… I'm interested in two things: Have you seen a tool/plugin that would feel similar to use?
And second: Are there any #Inkscape lovers out there who would have the need for such a tool? I'd be curious about your wishes/requirements! :)
@blinry you are the only one i know who „loves“ inkscape. 😅
-
I love #Inkscape, and I love giving talks! So why not make slides using Inkscape?
My idea is to write a tool that looks at the layers of an SVG document, and creates one PDF page per layer, in top-to-bottom order. On the page, only that layer, plus all parent layers, would be visible.
That way, you could have an always-visible "master slide" in the background, and create simple step-by-step animations. In this example, "2" would be shown first, then "2a", then "2ab". After that, only "3".
@blinry I think, I have used a python script called `inkslides.py` in the past, but compatibility broke with newer versions of Inkscape. It supported nested layers to have the same backround and elements for more than one slide.
-
I love #Inkscape, and I love giving talks! So why not make slides using Inkscape?
My idea is to write a tool that looks at the layers of an SVG document, and creates one PDF page per layer, in top-to-bottom order. On the page, only that layer, plus all parent layers, would be visible.
That way, you could have an always-visible "master slide" in the background, and create simple step-by-step animations. In this example, "2" would be shown first, then "2a", then "2ab". After that, only "3".
@blinry Alternatively, you could use Inkscape's native page support. It's a bit wonky, and you need to do master pages by hand by putting a clone of the master page on every other page, but it should get the job done.
-
When editing the file, turning the layers on/off a lot would be a bit inconvenient. Maybe a dedicated plugin could help with that.
And then, there are some possibilities for making the "renderer" happen:
It could be an external tool that you point at the SVG, and it outputs the PDF, as fast as possible.
It could be an Inkscape plugin; but all I've used felt a bit iffy, I dunno…
It could be a script that does as little as possible, and calls Inkscape on the command line for rendering?
So I made a little prototype of my #Inkscape to slide generator! You can find the Rust code here: https://codeberg.org/blinry/inkslide
It will create one PDF page per layer, which shows that layer plus all parents. It's pretty fast, because all pages can be processed in parallel (thanks to the rayon library)!
I noticed that as an exception, the topmost layer should not be rendered to its own slide (I use it as a "master slide").
-
So I made a little prototype of my #Inkscape to slide generator! You can find the Rust code here: https://codeberg.org/blinry/inkslide
It will create one PDF page per layer, which shows that layer plus all parents. It's pretty fast, because all pages can be processed in parallel (thanks to the rayon library)!
I noticed that as an exception, the topmost layer should not be rendered to its own slide (I use it as a "master slide").
When making that A, B, C slide, I noticed that there's quite some overhead involved in putting all bullet points into their own layer…
So I'm thinking that maybe there could be a rule that certain groups will show their children step by step? Maybe there shouldn't even be nested layers, and all animation within a slide is done via groups?
One could give "animated groups" a special name, even though a solution without that would be much nicer…
-
So I made a little prototype of my #Inkscape to slide generator! You can find the Rust code here: https://codeberg.org/blinry/inkslide
It will create one PDF page per layer, which shows that layer plus all parents. It's pretty fast, because all pages can be processed in parallel (thanks to the rayon library)!
I noticed that as an exception, the topmost layer should not be rendered to its own slide (I use it as a "master slide").
I have an unfinished bit of work that allowed you to only show the selected layer (and it's parents), would this functionality have helped your inkslide workflows here?
-
I have an unfinished bit of work that allowed you to only show the selected layer (and it's parents), would this functionality have helped your inkslide workflows here?
@doctormo Definitely a bit! I found the "Hide/Show Other Layers", which was also already quite useful for "switching slides". But I think the biggest hassle was that for n bullet points, one needs to create n layers, and assign them to these layers. I think some group-related logic might also solve that! :)