I really like Krita’s animation features! I’ve already wrote some suggestions to the animation department.
There is a question:
If I want to copy a section from a keyframe and paste to an other frame, was there any simple shortcut to do that?
I mean, the standard method ( Lasso tool → select the region of the frame → Ctrl+c → select the other frame → Ctrl+v) doesn’t work, because Krita creates an other layer automatically, and it’s not good for animation
Edit: Maybe the example photos not perfect because on that case, I can simply copy paste the entire frame. But what if I just want to copy paste the eyes for example?
Animated layers seem to exist in a different space/domain to non-animated layers and the usual copy/paste functions don’t work in animated space.
What you can do is right-click on a keyframe and select Copy to Clipboard and then select any other frame and do Paste from Clipboard, for moving content between animated layers.
Something you can try is to have an empty non-animated layer on which you do paste from Clipboard, on the Timeline, then that will make the layer animated and have the pasted content in a frame. Then you can do Flatten layer in the Layers docker and you’ll have a non-animated image that you can do all the usual image manipulation activities on.
Then you can do right-click Create Duplicate Frame in the Timeline to bring that image back into animation space.
It’s convoluted but it’s to do with the basic underlying structure of how the animation is done.
Sorry for reviving this topic, but it is the first result that came on google when I was searching exactly how to copy paste from a non animated file to an animated one and vice-versa. Since it took me some time to understand how the thing work I find it usefull to let others know by replying here.
I wrote about it on tumblr here
And I’ll just copy paste the entire post bellow so that people don’t have to click the link if they don’t want to.
==============================
When I first started animating with krita (today), I realized that copying and pasting content while animating is not straightforward. This is due to the fact that, like in photoshop and gimp, krita pastes bitmap data in a new layer instead of pasting directly into the selected layer like happen with aseprite. What makes things even less straightforward is that the copy-paste behavior is different whether you copy content from an animated layer or from a non-animated layer.
So, instead of reading the manual as everyone should do, I made some testing and could understand better how things work. The paragraphs below explain how paint layers differ between an animated and a non-animated layer and how you can copy-paste content between them.
There is a difference between paint layers that never had any keyframes (the layers created whenever you create a new layer) and layers that have at least one keyframe (be it placed manually via right-click on the timeline or created automatically by merging a layer without keyframes with a layer that has at least one keyframe). I will call the first kind (the ones without keyframes) ‘flattened’ layers and the second (the ones with keyframes) 'animation’ layers.
To convert a flattened layer to an animation layer, just create a keyframe anywhere in the timeline for that layer. To revert an animation layer back to a flattened layer, right-click the layer in the layers panel and chose 'flatten layer’ (not flatten image). Beware that flattening the layer will keep only the selected frame image (the one currently being viewed in the editor), so you need to either select the frame you want or maybe do some editing before flattening. This right-click option only appears in the layers panel, no in the animation timeline.
You can differentiate between a flattened layer and an animation layer by searching for the onion skin icon (a light bulb) right beside the 'locked’ icon in the layers panel or right beside the 'alpha locked’ icon in the timeline. Only animation layers have the onion skin icon. Also, flattened layers do not have anything special in the timeline frame matrix, whereas animation layers have outlined squares for blank keyframes and colored squares for non-empty keyframes, as well as a continuous line connecting a non-empty keyframe square to the next keyframe, indicating that frame range as non-empty.
When you paint in any frame of a flattened layer, the image will be identical regardless of the selected frame when you paint or visualize, because any frame will be in fact the same frame. In an animation layer, this works differently. If you paint on a frame, that frame will automatically become a keyframe if it isn’t already. The content of a keyframe will repeat for every next non-keyframe until it reaches another keyframe.
Also, the first frame of an animation layer will always be a keyframe, no matter how many times you try to right-click and select 'remove keyframe’ on it. If you create a keyframe in a flattened layer, if that frame was not the first, both the first and the one you selected will become keyframes.
Copying and pasting will behave differently for flattened layers and for animation layers. When copying a selection from a flattened layer, while pasting, it will paste another new flattened layer. Being a flattened layer, it will have the same content from frame 0 until the last frame. If you merge this flattened layer with an animation layer, all keyframes in the animation layer will have that content merged.
To prevent the pasted flattened layer to appear in all animation frames, you can do the following:
paste the content as usual. It will create a new flattened layer with the content
in the timeline, right-click the first frame of the pasted layer and select 'keyframes > insert keyframe right’
drag and drop frame 0 of the pasted layer to the position where you wish it to appear in the animation
right-click the last frame where the pasted image should appear in the animation and select 'keyframes > insert keyframe right’
optionally, merge this layer with another if you want to.
When copying a selection from an animation layer, it will remember the keyframe interval the selection was in. For example, if you have a keyframe on frame 5 and another on frame 10, if you selected something on frame 7 while copying, when you paste it, it will paste a new layer with 3 keyframes: a blank keyframe on frame 0, a keyframe with the copied content on frame 5 and a blank keyframe on frame 10
If you want to copy a selection from an animation layer for using it with a flattened layer you can do the following:
copy and paste the content
select any frame on that layer where the content is visible
in the layers panel, right-click and chose 'flatten layer’