Reply to topic

"Pages" in image?

darkhog
Registered Member
Posts
49
Karma
0

"Pages" in image?

Sat Feb 07, 2015 3:01 am
How about adding "pages" to Krita's fileformat? They'd be pretty much like e.g. "sheets" in any spreadshirt program, say OpenOffice Calc. Only thing: All pages would have common size, common set of layers and channels.

Of course actual content of those layers along with whether layer is hidden/blocked would be specific to each page (things like layer opacity/layer type would be common in whole document though).

What pages could be used for? Think of resulting .kra file as of this:

Image

It could be used for various things, just like above, real-world equivalent. For example storing comic book you're making in a single .kra file without making separate one for every page that are stored inside folders for each issue.

It could be used to draw animation frame-by-frame if you're into it (in which case onion skinning would be useful feature)

Or just to make various sketches.

And there's one important advantage over regular drawing pad (aside of lack of accidental wrinkles because you were putting it to the back pack in haste): You'll never run out of pages.
User avatar boudewijn
KDE Developer
Posts
4635
Karma
19
OS

Re: "Pages" in image?  Topic is solved

Sat Feb 07, 2015 8:23 am
That actually was part of the kra file format back in 2003, 2004. We took it out because it caused a lot of complexity in the code. Then I added a flipbook file format in 2012, but that didn't work out either, but now we've got the multi-document, multi-window branch working, it's possible to give the flipbook idea another chance.
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Sat Feb 07, 2015 3:10 pm
Thanks. I think it should be integrated into .kra directly instead of separate flipbook format. Why have two formats that has minor differences between them? Of course backward compatibility should be maintained, though it could be done by just making "converter" that will convert documents using older format to new one upon opening.
User avatar TheraHedwig
KDE Developer
Posts
1713
Karma
10
OS

Re: "Pages" in image?

Sat Feb 07, 2015 3:22 pm
Because we also have a animation format that might be integrated into the main .kra.

You can start reading here: http://mail.kde.org/pipermail/kimageshop/2014-December/012498.html, and if you want to join in on the discussion you should subscribe to the mailing list. Maybe you can even help out coding :)
slangkamp
KDE Developer
Posts
607
Karma
4

Re: "Pages" in image?

Sat Feb 07, 2015 3:51 pm
I don't think we should put several files into one file.

The size of such a file will be much bigger which also means that saving takes a lot longer. If you ten images in your file and modify only one, you will still need to save all ten to disk. It also means that incremental save points would take a lot more disk space.

Managing the images becomes harder. If you have separate files you can manage that with every file manager. With a single file you would always need Krita to handle that.

The hidden layer usecase can be solved with compositions. The animation stuff is a whole different thing.

For multiple sketches we could add some functionality that lets you switch between multiple images in one folder.
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Sat Feb 07, 2015 4:58 pm
slangkamp wrote:The size of such a file will be much bigger which also means that saving takes a lot longer. If you ten images in your file and modify only one, you will still need to save all ten to disk. It also means that incremental save points would take a lot more disk space.


I'm sure people could live with it. Besides, if we could make .kra format to be just a container, so it basically is nothing but just zip archive with different extension and inside it layer data and each "page" would live as separate "file", you could just save modified page and just rezip unmodified rest. Basically what OpenOffice is doing with their file format.
slangkamp
KDE Developer
Posts
607
Karma
4

Re: "Pages" in image?

Sat Feb 07, 2015 5:22 pm
darkhog wrote:
slangkamp wrote:The size of such a file will be much bigger which also means that saving takes a lot longer. If you ten images in your file and modify only one, you will still need to save all ten to disk. It also means that incremental save points would take a lot more disk space.


I'm sure people could live with it. Besides, if we could make .kra format to be just a container, so it basically is nothing but just zip archive with different extension and inside it layer data and each "page" would live as separate "file", you could just save modified page and just rezip unmodified rest. Basically what OpenOffice is doing with their file format.


It already is. Basically the file format is an ODF container. Layer are files inside it. Just try to open it as an zip file and you can see it yourself.

Actually the the animation work did the opposite and took the layers out of the main file and saved them as separate images.

Is there any reason why the container can't be a normal folder?
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Sat Feb 07, 2015 7:43 pm
Mostly convenience. You can easily upload it e.g. into cloud instead of having to zip it up before hand.

As I've said, every "page" can be in separate .kra file, but it's inconvenient to switch between them while editing and you have much of duplicate data such as author info, document's header, etc.

It's just more convenient if it'd be in single file. Besides it's not like save time would be really long. I've actually opened one of my files in WinRar and went to the layers folder:

http://i.imgur.com/3GSOnu0.png

As per my suggestion, the only difference between pages would be content of the layers, not layer settings themselves and since judging by their size, layer image is stored in layer(number) files, I'd propose for saving pages make it so names like layer(layernumber)_page(page number) would be used.

When opening the file Krita would unzip it to temp directory, then when saving it'll only change files responsible for page and update zip archive by replacing in it only changed files, not writing it from scratch. That would take care of save times.
slangkamp
KDE Developer
Posts
607
Karma
4

Re: "Pages" in image?

Sat Feb 07, 2015 10:18 pm
darkhog wrote:Mostly convenience. You can easily upload it e.g. into cloud instead of having to zip it up before hand.

As I've said, every "page" can be in separate .kra file, but it's inconvenient to switch between them while editing and you have much of duplicate data such as author info, document's header, etc.

It's just more convenient if it'd be in single file. Besides it's not like save time would be really long. I've actually opened one of my files in WinRar and went to the layers folder:

http://i.imgur.com/3GSOnu0.png

As per my suggestion, the only difference between pages would be content of the layers, not layer settings themselves and since judging by their size, layer image is stored in layer(number) files, I'd propose for saving pages make it so names like layer(layernumber)_page(page number) would be used.

When opening the file Krita would unzip it to temp directory, then when saving it'll only change files responsible for page and update zip archive by replacing in it only changed files, not writing it from scratch. That would take care of save times.


I think the usecase isn't that big to make such a big change to the fileformat. I generally would prefer to have a seperate fileformat that essentially just stores links to the separate image files. I would suggest to either solve that over a flipbook/project docker or some scripts rather than messing with the file itself. That could even have an option to export/import as zipped. There is a reason why e.g. software projects are a collection of separate files and not one single file.
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Sun Feb 08, 2015 1:19 am
slangkamp wrote:There is a reason why e.g. software projects are a collection of separate files and not one single file.


And that reason is that software projects, aside of regular sources, can contain various "weird" data specific to that project, e.g. level data in case of games. Plus, whole separate files deal makes dealing with version control systems such as Git, SVN, Mercurial or even CVS (by the way, who uses it anyway nowadays?) much easier. I would know, I've been programming since I was 10, which means for the last 14 years.

But .kra files aren't software projects. There is no risk that user will want or need to embed, say, sound file or some weird binary blob in here. Besides, that change wouldn't change so much either anyways, if implemented correctly.
slangkamp
KDE Developer
Posts
607
Karma
4

Re: "Pages" in image?

Sun Feb 08, 2015 12:21 pm
darkhog wrote:
slangkamp wrote:There is a reason why e.g. software projects are a collection of separate files and not one single file.


And that reason is that software projects, aside of regular sources, can contain various "weird" data specific to that project, e.g. level data in case of games. Plus, whole separate files deal makes dealing with version control systems such as Git, SVN, Mercurial or even CVS (by the way, who uses it anyway nowadays?) much easier. I would know, I've been programming since I was 10, which means for the last 14 years.

But .kra files aren't software projects. There is no risk that user will want or need to embed, say, sound file or some weird binary blob in here. Besides, that change wouldn't change so much either anyways, if implemented correctly.


That's the point. With separate files it easier to deal with any kind of version control or other management systems (like FLIX etc). For example you could have a project of 10 .ora files or 10 Photoshop files. Third party programs would still be able to access the data.

If you have a text based project file you can work collaborative with other artists and are still able to merge the project files. From my day job I can tell you that unmergeable project files are a huge problem. With several files one artists could edit image 5 while another artist could edit 42 without a merge conflict. It's also much easier to add files or remove them as you could edit the the file manually if needed.

Cloud storage shouldn't be a problem, I think. Most could storage systems there days can simply sync the whole folder.

Putting a lot of stuff into the same file can also have problems. I would rather have 50 files with 100 MB each than one with 5 GB.
User avatar boudewijn
KDE Developer
Posts
4635
Karma
19
OS

Re: "Pages" in image?

Sun Feb 08, 2015 12:33 pm
Right... With my maintainer hat on, speaking ex cathedra: we should not revive the multi-image support in .kra files. It's much more efficient and flexible to work on a sketchbook/flipbook support that can tie together different images.
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Mon Feb 09, 2015 12:43 am
You know, Microsoft Binder was discontinued for a reason. It's better to concentrate efforts on one format to rule them all, rather than trying to maintain gajillion* separate ones.

The only other formats than kra supported by Krita should be third party ones.

*not actual number
User avatar boudewijn
KDE Developer
Posts
4635
Karma
19
OS

Re: "Pages" in image?

Mon Feb 09, 2015 4:32 am
You know, we discontinued having multiple images in a .kra file in 2005 for a reason.And I was there, and I remember the reason. And that's the last I'm going to say on the subject.
darkhog
Registered Member
Posts
49
Karma
0

Re: "Pages" in image?

Mon Feb 09, 2015 5:31 pm
And that reason was?

 
Reply to topic

Bookmarks



Who is online

Registered users: Baidu [Spider], Bing [Bot], cya, davide445, Google [Bot], janpla, jeffgila, jmacleod, Majestic-12 [Bot], Mamarok, TechnoJunky, TheBeheader, wind_rose_2