diff options
author | Yorhel <git@yorhel.nl> | 2020-12-23 18:12:06 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2020-12-24 13:17:16 +0100 |
commit | 232b2312a61af6e4299f9318050617530c9d5728 (patch) | |
tree | 60d9631d7d026b682b966fea48dd718e53b81568 /README.md | |
parent | 32ce9148d1e08525317edd5e2bf739a660898bee (diff) |
Convert images by running convert instead of loading Image::Magick
This has three potential advantages:
- Memory used for image processing is released immediately, thus
resulting in lower average memory usage. I've yet to test how
significant this is in practice... I'm not entirely sure how VNDB's
memory use is distributed (not that it's really a problem, but if I
see something that could be optimized I try to optimize it. First
world engineering problems)
- The 'convert' command can be better sandboxed for increased security.
- Removes a dependency on a Perl module... except spritegen.pl still
uses it, but that can be rewritten as well if necessary.
In the process I found out that the old code's attempt to sharpen the
image after resizing was buggy and the sharpening was never applied.
This new code *does* apply the sharpen filter, so newly uploaded images
will be visually different (if resized).
I also found that imagemagick's built-in ratio-preserving resize
sometimes ends up with different image dimensions than my imgsize(). I
think that's a bug in my imgsize function, but it does result in a
discrepancy that should prolly be resolved as it may result in
screenshot thumbnails being displayed incorrectly.
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -49,6 +49,8 @@ Global requirements: - PostgreSQL 10+ (including development files) - Perl 5.26+ - Elm 0.19.1 +- Graphviz +- ImageMagick **Perl modules** (core modules are not listed): @@ -61,7 +63,6 @@ General: - Image::Magick - JSON::XS - PerlIO::gzip -- graphviz (/usr/bin/dot is used by default) util/vndb.pl (the web backend): - Algorithm::Diff::XS |