HaikuArchives / ArtPaint

ArtPaint is a painting and image processing program.
https://haikuarchives.github.io/ArtPaint/
29 stars 18 forks source link

file compression should have a user setting to disable #541

Closed dsizzle closed 1 year ago

dsizzle commented 1 year ago

With latest code, all files will be zlib-compressed. It should at least be a user setting for compatibility reasons (not that there's a huge community sharing ArtPaint files, but still).

humdingerb commented 1 year ago

You think it's really needed? As there's no reason for Haiku users to run an outdated ArtPaint, that'd leave people running the original ArtPaint on BeOS or Zeta. I don't think there are significant number of users that run BeOS/Zeta seriously and trade artpaint project files with Haiku users...

Maybe, if you're interested in exploring the direction, it could be part of a DataTranslator. It might be nice to have an ArtPaint -> Bitmap translator so ArtPaint project files can be directly viewed in ShowImage or loaded by other apps. That trannslator could also do ArtPaint <-> ArtPaint(without compression).

dsizzle commented 1 year ago

After thinking about this, I don't think this option makes sense. The only reasons I can come up with are the aforementioned backwards-compatibility, and a scenario where the compression is broken, and neither seem worth it to support.

The code seems to indicate the original authors expected to have different types of compression available but even that seems like overkill - I doubt a user would need/want to try different compressions per-layer to get the optimal file size.

Regarding a DataTranslator, it might be nice but I think that would essentially need all the rendering code from ArtPaint to properly composite the layers, unless a feature of the next file format is to store a composited version that could be easily extracted via translator?

For the spirit of this ticket (disabling compression) I am closing this as Not Planned