3 ms·
> I don't think my comment was really aggressive to justify assuming bad faith in such a way. Oh it definitely wasn't aggressive at all, and I'm not assuming b
by jbverschoor 4y ago
> I don't think my comment was really aggressive to justify assuming bad faith in such a way.
Oh it definitely wasn't aggressive at all, and I'm not assuming bad faith. It's just that so many people in tech state things are simple, when in fact they are complex. The classic example on HN is the initial Dropbox post.
I've done quite some work with ImageMagick, GhostScript and poppler/xpdf, and most issues I came across were color management issues, and issues with CMYK jpegs. I don't remember exactly which issues, but one thing for example is that you can get a faded output when doing conversions without a profile, or with the wrong profile. Easily fixed, but with sips you don't have those issues, as it has some sane defaults.
With just ImageMagick + GhostScript it's nearly impossible to get a proper rendering of a PDF (let alone a complex PDF) without your machine blowing up in terms of resources. My solution was to use libpoppler/xpdf to convert to a bitmap image, and then process in IM.
Resizing larger files or vector formats require unnecessary planning about resource usage, and to improve quality they recommend you to first render at a higher resolution and then rescale it. This is partly because IM uses raw pixel information in memory, and if I recall correctly, each channel is 16-bit, unless you download the 8-bit version. And party because of the different methods of rendering a file to that buffer (sometimes it lacks antialiasing etc).
IM is a godsend because of all the features and support, but is also a big pain in the head and the butt at the same time in terms of usability, resources, security, and sometimes you stumble on bugs with some file parsers, but at least it's open source :) IM is just a huge toolkit which tries (and does) do it all. The CLI is def a pain to use, but some libraries make it easier to chain commands into an argument (and thereby keeping IM out of process).
Note that my experience with serious magick dates until around 2015, so I'm not sure what it is right now.