Kdenlive needs a complete rework for modern text and title editing

Hello Kdenlive team,

I’m a new user and I’ve noticed a big limitation in how Kdenlive handles titles and text.

The current .kdenlivetitle system is too basic:
– No proper text shadow
– No gradient fills
– No reusable style templates
– No text animation presets
– No modern styling like CSS (rounded corners, transitions, outline softness, etc.)

Also, importing SVG from Inkscape does not allow dynamic text editing — it becomes a static image.

Other editors (like OpenShot or DaVinci Resolve) allow styled and editable titles via Inkscape, Fusion, or HTML/CSS.

This is a serious limitation for creators who want professional and attractive titles.

We don’t need hundreds of effects — we need just a few modern and reusable style options for clean, elegant, editable text.

Please consider a redesign or new system:
– Support shadows, outlines, transparency
– Style presets/templates
– Maybe integration with HTML/CSS, QML, or WebVfx?

For example, it would be amazing to have something like a CSS-based style system, where you can copy styles from online text generators (like CoolText or CSS gradient text generators) and apply them to titles.

The idea is not to have static images or fixed SVGs, but dynamic styled text: you can change the content, but the style (color, font, shadow, outline…) stays applied — like CSS classes.

Maybe a new rendering engine could allow that, or using Python or another system to import and convert HTML/CSS or SVG styles into reusable .kdenlivetitle formats.

Even partial support would help a lot.

Here is a real example of a styled text effect made with HTML/CSS that I wish I could apply to titles in Kdenlive (editable, not static):

:link: example text css

Right now, titles feel outdated and block creative users who are used to modern web or design tools.

Kdenlive is amazing — but this missing feature is holding it back for new users.

Thank you!

Well text in titles can have shadow: you can adjust transparency and color, distance, x-y displacement, and blur. You can also add outline color and thickness. And you can fill with gradients.

1 Like

Currently we are lacking the manpower and the funding to work on the title editor. Any support - contributing code or donations - is very welcome.

Maybe trying Glaxnimate which has a direct connection to Kdenlive. Glaxnimate has a good SVG support.

ClodH
Yes, I know Kdenlive allows shadows, outlines and gradients — but they are very limited.
There is no real soft shadow (like CSS text-shadow), and no modern style presets. Also, styles are not reusable.
We can’t apply a graphic template and then just change the text dynamically — everything has to be rebuilt each time. That slows down workflow and makes it feel outdated.

berndmj
I understand perfectly that there is a lack of developers and funds — that’s normal in open-source.
But maybe the solution is to avoid building everything from scratch.
There are already powerful and lightweight style systems (like basic CSS, or SVG with style tags) that could be reused.
Or even using Python to convert text + styles into .kdenlivetitle automatically — that way developers only create a small bridge, and users or tools do the rest.

Eugen_Mohr
Yes! Thank you — I tried Glaxnimate. It’s a great tool.
But the problem is: when I create styled text in Glaxnimate and send it to Kdenlive, it becomes static shapes (converted curves).
So I can’t change the words anymore inside Kdenlive.

What I really wish is: keep the text editable, but keep the graphic style applied (like in CSS or like OpenShot + Inkscape workflow).

:backhand_index_pointing_right: Here is an example of what I mean — a styled text effect made with CSS, but the words can still be changed dynamically:
codepen [dot] io / manuel_songokuh / pen / dPYPaMy

Even just loading an external styled text template, and letting me update the words, would be a huge improvement.

Thanks to all for the replies — I really hope this idea stays open for the future!

Mmh. That means we need to implement some kind of a bidirectional interface Kdenlive ↔ Glaxnimate that styles get back to Kdenlive.
At the moment it works only unidirectional.

As Glaxnimate is part of KDE (like Kdenlive) it makes no sense to double the functionality.

Your workflow would be:

  • Create in Kdenlive basic objects like: text, circle, square
  • Double click a basic object and make the style in Glaxnimate.
  • Back in Kdenlive you could still change the basic object and the styles from Glaxnimate get applied to the changes.

manuel_songokuh yes it is limited, but soft shadow (just one) it is available by adjusting the blur of the shadow.
About templetizing titles, I come from an old version of Premiere Pro so I am used to creating titles with the style and positions I want, save them in a template project and then I duplicate these titles and just change the text. Eazy-peazy. Albeit not super straightforward.
In DaVinci Resolve titles have even more limitations than in Kdenlive.

Indeed an animation and title tool would great. But instead of asking the guys at Kdenlive to add this tool, it would be better if they expose some kind of APIs to make it interoperable with external apps.

I see the software still has some little bugs here and there. For example the title tool has a bug with the typewriting effect which causes the renderer to fail completing the process (in Windows and Kdenlive v. 25.04). So it would be way better to make it stable and reliable, and only then add more features. IMHO.

1 Like

Eugen_Mohr
Thanks! I understand the logic of connecting Glaxnimate ↔ Kdenlive in a smart way.

But realistically, Glaxnimate is a great tool for animations and design, not ideal for dynamic editable text. Once the text is styled in Glaxnimate, it becomes static (vector curves) and cannot be edited anymore in Kdenlive.

That’s why I believe another solution is better: let Kdenlive support styled dynamic text using rich CSS (or similar) — just for the appearance, while keeping the text itself editable.

I showed an example on CodePen (can’t post links here), where the style is 3D, shadows, stroke, layered — all via CSS — but the text is still editable live.

If Kdenlive could support CSS-based styles, or even load a CSS file and apply it to a title or subtitle object, it would solve everything without duplicating tools.

So Glaxnimate = excellent for animations
But for text titles = better to let Kdenlive have dynamic styled text, like with CSS templates.

Thanks again!

ClodH
Yes, your method with templates is a good workaround — I used to do the same with After Effects.

But my goal is to find something more flexible and modern: a system where I can write the text freely, and it gets automatically styled (like with CSS).

There are thousands of open-source CSS text styles on the web — 3D layers, gradients, shadows, even animations — and they are lightweight and reusable. You write the text, apply the CSS class, and done.


For example, when I activate subtitles in Kdenlive, I can click on each subtitle on the timeline, change the text, adjust its timing and position — and even apply small formatting like bold or italic.

This made me think: why not allow full CSS styles there? Like in my CodePen example (3D layered text effect), but applied inside Kdenlive on dynamic text.

CSS “style blocks” could be very useful: users could either paste CSS code or load a .css file to apply beautiful and modern styles instantly — both for subtitles and titles.

KdenliveTitle editor hasn’t evolved in many years and still lacks visual impact. It feels like a dead feature compared to how the rest of Kdenlive has grown.

So maybe the future is not trying to reinvent animation tools, but just focus on text + style = fast and clean.


Could Kdenlive internally convert styled CSS text to video/image using tools like FFmpeg filters, or ImageMagick, or WebVFX?

That would make a huge improvement for many users, especially newcomers who want beautiful results without extra tools.

Kdenlive is great at editing, but after 15+ years, we still can’t make beautiful text without hacks or external tools. Maybe it’s time to focus seriously on that. :wink:

If Kdenlive allowed loading an external style (like a CSS snippet or XML with style info), that would make it super powerful for creators without needing deep Glaxnimate editing.

Templates are good, but having a style system + editable text = much faster and easier.

Totally agree: first stability, then features! :slightly_smiling_face:

Because the strongest use case for subtitles is to ship them as an optional additional stream that the end user can enable or disable as they wish, or select from to show them in the language they want.

So we can only do what the players support, and that doesn’t include CSS.

There is “WebVTT” which has CSS support, but it’s so wildly complicated and bound to a DOM model that basically nobody but browsers which are already built on that model will ever support it, and even then …


That said, I like the way you’re thinking wrt to ordinary title clips, but I’m not sure CSS will be the practical way to get there. Even if it is much less horrible than some of the other options.

Another might be to integrate more tightly with something like this: https://friction.graphics/

@Ron
Thank you — your technical explanation about subtitles makes total sense. I understand now that subtitles need to remain compatible with external players (like VLC or YouTube), and that excludes CSS.

You’re right: WebVTT with CSS is too complex and too limited outside of browsers.

But my suggestion about CSS was mostly for regular title clips, where we don’t need stream compatibility — just something editable and visually nice inside the timeline.

CSS is just a popular styling method with millions of examples available. For many users, being able to paste a ready-made style (like from CodePen) would be much easier than opening another animation tool.

About Friction — yes, that looks very interesting! Maybe integrating something like Friction (or a similar concept) as a “style renderer” could open the way for modern, editable text graphics in Kdenlive.

But honestly, tools like Friction or even Glaxnimate take a long time to evolve, and the workflow becomes slow: I create something in Friction, go back to Kdenlive, then if I need to change just one word… I have to go back to Friction again? Same issue as with Glaxnimate.

This is not ideal. For a smooth workflow, that process becomes very long.

That’s why subtitle text in the timeline is very useful: I can type directly, adjust timing, and done. It’s fast and direct. I was thinking: what if we could apply simple style-css even there? Just for fun. I know it’s not standard — SRT/ASS/etc. don’t support CSS — but for a user-focused workflow, it’s much more practical and instant.

When it comes to titles, CSS-style would be extremely useful. But even then, the workflow is not smooth: I have to open the title, edit the text, click OK, move it on the timeline, and repeat if I want another variation. Two or three clicks every time. Compared to subtitle text — which is direct and editable inside the timeline — it feels slow.

So yes, I understand subtitles can’t officially support style-CSS, but from a usability point of view, subtitles are already faster and easier than titles. I just dream of combining that ease-of-use with nice style.

That’s why I keep thinking: if Kdenlive could allow loading a .css snippet or block for titles or subtitles (even fake ones), we could just paste or reuse styles from online (CodePen, etc.), and it would be so fast. You save the .kdenlive file with the CSS style linked, and you can reuse it in the future. Very efficient.

And if you look at some CodePen “FOLDED”, you’ll see amazing text styles — I always think: why not bring this power inside Kdenlive?
https:// codepen .io / mandymichael / pen / BWyYYP

Thank you again!

Hi, I looked at the official Kdenlive roadmap and I noticed something important:

:bullseye: Most items are about building new systems: nesting, proxies, Glaxnimate sync, subtitle rendering, etc.

But these are all new features that require developing new code from scratch.

Meanwhile… CSS already exists — it’s a stable, powerful styling language, used for decades across the entire web.
Why not use it?

Think about this comparison:

:cross_mark: Building new internal code (like nesting/titles/glax animations) = slow, expensive, error-prone
:white_check_mark: Using existing CSS (for text style only) = fast, reliable, well-known, powerful

We don’t need animations.
We just want to style editable text — apply shadows, stroke, gradients, etc., just like in HTML/CSS.
This would allow users to:

  • Paste CSS styles from online sources (e.g. CodePen)
  • Apply them to editable title text
  • Save and reuse them in projects

Right now, text styling in Kdenlive is outdated and clunky.
There’s no system for “beautiful” text — only manual editing with limited options.

:warning: This affects how new users perceive the app.
First impressions matter — and visuals are the first thing they see.

CSS is ready today.
You don’t need to invent a new language or engine.
Just allow the engine to read basic CSS style properties for title text — even partial support would be huge.

So my question is:
Why spend time inventing something new, when something better already exists and is battle-tested?
Doesn’t it make more sense to leverage what’s already working globally?

:small_orange_diamond: I don’t want to criticize or sound negative — just offering a constructive point of view.
Let’s look at the situation clearly: it’s 2025. Where is the modern approach to styled text?

Thanks for listening.

nothing news.. or ideas..?

Please, let’s distinguish RFE and bugs. It looks lime you hit a bug. Please report it as bug.

Kdenlive should have a templated title clip type.

The way I picture it, every Title Template has a default style, transform, and content. But a Title Template can’t be placed into the timeline directly; you’d have to instantiate a Templated Title, and optionally edit the text and tweak the styles.

You would see the Templated Title instances under a dropdown list on the Title Template in the clip list view.

The crucial thing is, if you then change your mind and think, for example, the titles need to be yellow, not red, you can change the Title Template, and it would reflect on all its instances instantly, unless of course it overrode the color individually.

We could call them Template Titles?

And create a place to share them?

@udippel
Thanks for the note! You’re absolutely right — this is not a bug, it’s a feature request (RFE).

More specifically: it’s a proposal to bring in a modern, CSS-like visual styling system for titles — something more flexible and creative than the current built-in effects.

The current title tool works technically, but visually it’s far behind what’s possible even with basic HTML/CSS. Hopefully we can open a discussion on how to modernize that part.

@HaleyHalcyon
Thank you! Your idea of a “Templated Title” system is very interesting — I really like the concept of being able to manage a centralized template and update all instances at once.

That’s a great workflow feature, and it would definitely help for consistency across a project.

However, what I was focusing on is slightly different: not just managing how text is reused, but how text looks visually — 3D effects, layered shadows, glow, stroke, animations — the kind of styling we see in modern web (CSS) examples.

So yes, I fully support your idea — but I think we still need a visual styling system that can match today’s standards in design.

@Ron
Thanks! I agree — naming them “Template Titles” and having a shared repository would be awesome for community workflows.

My suggestion goes even a bit further: imagine if a title could be styled with a simple .css file — so anyone can download a CSS style (like from CodePen), paste it, and instantly get a beautiful 3D title.

This way, the title stays editable (text), but the visual style is external, clean, and reusable — just like modern websites.

That would allow rapid customization, especially for users who are not graphic designers or coders, but just want beautiful text fast.

Also — with all respect — it seems that some replies here didn’t read the full topic carefully.

I’ve explained the goal very clearly multiple times: it’s not just about managing titles, but about having modern visual styling, like CSS 3D text effects — editable, reusable, fast.

If you read the full thread from the beginning, you’ll see it’s not just a basic feature request — it’s a real workflow improvement idea based on how modern design already works.

What is the main issue integrating CSS support?

It might be worth looking at an existing render engine like litehtml

github dot com
litehtml
litehtml

It doesn’t support animations but is lightweight and portable enough to be compiled for embedded systems.

So if it doesn’t actually solve for what the OP originally said they were missing from a text tool, we’d go to a whole lot of work to add Yet Another Way to not actually solve the problem - that we’d then need to maintain too?

I know it’s tempting to hit things with a hammer that you’re already holding - but CSS was built around solving a very different problem to overlaying text on video, and carries an enormous amount of baggage that has no sensible mapping to or application in this space.

So I’m pretty sure it would be none of: the quickest, the easiest, the best, or the most powerful, flexible, extensible, future embracing, way to either implement this or provide that functionality to creators. It’s not even a “pick any two” thing. It’s not even a case of “implement CSS” - we’d have to invent something entirely new “based on CSS” which we’d then be the only thing which supported it.

Familiar to web developers doesn’t really seem like enough to handwave past all the real and fundamental problems with actually trying to do this - as much as that might otherwise be a Good Thing.

Not really.
The OP asked for a better way to style and edit Title Clips allowing templates and proposed CSS as the most familiar way to most users.

  • You use CSS as the style language for static text
  • You use the litehtml engine to render it and overlay
  • You use the builtin effects for animation

You have to use the builtin effects for animation at the moment anyway because the Title Clip animation and typewriter is so old and broken

Or you use a tool like glaxnimate or friction (of which there are many), which works out of the box today and covers all the use cases the built-in title tool currently does not.

How is going to a lot of work to not be better than that, and not be interoperable with anything else, better than that?

There’s no question that we need something better than the current title tool - but CSS does not seem like either an easy shortcut or an optimal solution to that. Especially since it’s not even the kdenlive code that you’d need to implement that in …