From: Hans Hagen via ntg-context <ntg-context@ntg.nl>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Cc: Hans Hagen <j.hagen@xs4all.nl>
Subject: Re: Use MetaPost to distort images?
Date: Sun, 5 Sep 2021 10:10:03 +0200 [thread overview]
Message-ID: <9f550389-d53e-6787-22b8-6d4cacc6d33c@xs4all.nl> (raw)
In-Reply-To: <FCD06229-1EF8-4781-86C5-0DEA54CD0AF3@fiee.net>
On 9/5/2021 9:40 AM, Henning Hraban Ramm via ntg-context wrote:
>
>
>> Am 04.09.2021 um 19:06 schrieb Hans Hagen <j.hagen@xs4all.nl>:
>>
>> On 9/4/2021 2:18 PM, Henning Hraban Ramm via ntg-context wrote:
>>
>>> I guess it’s on me to write a wiki page about GM.
>>
>> you can then also add some comparison with im (i.e. what does it offer more than gm)
>
> Oh no...
>
> IM and GM have a history, and I don’t want to get involved.
>
> GM accuses IM of security issues, feature and dependency bloat, bad code quality, inefficiency, frequent API changes, license changes and whatnot.
ah, i think i remember ... i switched to gm just because im didn't run
well at that time on windows
personally i think that "accuses of .." show that down side of the open
source community (which includes the tex community btw) ... it gets even
worse when something sells itself for big money and then after a few
years spins off again attacking those who paid them ... i suppose that
unconstrianed social media also play a role in this (one reason why i'm
not really interested in discussions around this in public)
like: what is bad code quality ... i bet one can find examples of bad,
inefficient, etc in gm too (it would be quite a claim to say one can't),
and the more people touch the code ... also, what about the code quality
of libs then ... one bug in those could affect lots of programs using
them ... most is about trust .. and even more in 'working with people
you like working with'
btw, 'bug' and 'many bugs' and 'big bug' are popular in subject titles
and mail bodies, even it's small bugs or side effects or something that
has to be tested but it might make people feel good
'security fix' is another one, which often just means: programming error
e.g. array out of bounds; nowadays for me the way an email is written
determines the reading order, but there is no good filter for that yet;
same for (tech) websites: bluffing and barking agianst a tree (like your
mentioned 'accuses' makes me go away immediately and discard whatever
would follow)
(what to think of: https://www.youtube.com/watch?v=BhTQyeEdnzs)
> OTOH IM offers much more features (e.g. the geometric transformations I inquired about), and you can find lots of interesting examples (including the scripts Bruce mentioned). I couldn’t find another CLI tool that can do most of these things, at least not with much more programming.
ok, i'll have a look later, maybe it can be compiled lean-and-mean
> Dependencies according to MacPorts:
>
> Full Name: GraphicsMagick @1.3.36_1+q8
> Library Dependencies: libxml2, bzip2, xz, zlib, libpng, tiff, freetype, libiconv, libtool, lcms2, jasper, libjpeg-turbo, webp
makes me wonder if there is some simple image manipulation lib that just
deals with the pixels .. we don't need xml, freetype, libiconv, ...
> Full Name: ImageMagick @6.9.11-60_1+x11
> Library Dependencies: bzip2, djvulibre, xz, jbigkit, libjpeg-turbo, lcms2, libpng, libraw, tiff, webp, zlib, fftw-3, freetype, fontconfig, ghostscript, libiconv, libtool, openjpeg, openexr, expat, libxml2, libheif, pkgconfig, xorg-libX11, xorg-libXext, xorg-libXt
> Runtime Dependencies: urw-fonts
hm, that looks bad ... maybe not have a look after all ... i get the
impression that many originally small programs get bloated by pulling in
one lib that then pulls in more, even if nothing of that is used or
useful to the task (we sort of had that when luatex used xpdf from which
we only need the reading part but we could not really complain about
that because it has been so from the start but it triggered quite a bit
of updating)
keep in mind that we can just call them as programs using os.execute (or
the filter module or ...) ... no need to waste time in integration
(apart from a fun aspect)
> It’s probably not wise to run IM in a web server process for security and efficiency reasons, but if I run it only on my own computer there shouldn’t be a problem.
hm, why not? all it does in the end is "bits in - bits out"
>
> BTW, here’s my script:
>
>
> #!/bin/bash
> #INPUT=$1
>
> OUTPUT=${INPUT/.JPG/.png}
> OUTPUT=${OUTPUT/.jpg/.png}
> OUTPUT=${OUTPUT/in\//out\/}
>
> # random rotation ±1.5˚
> ROTATION=`jot -r 1 -1.5 1.5`
> echo $OUTPUT ${ROTATION}˚
>
> # downscale, add a white border and a shadow, rotate, move down, add a piece of tape (tesa1.png), grayscale
> convert "$INPUT" \
> -auto-orient \
> -resize 800x800 \
> -bordercolor white -border 10 \
> \( +clone -background black -shadow 80x3+2+2 \) +swap \
> -background transparent \
> -layers merge \
> -rotate ${ROTATION} \
> +repage \
> -gravity north \
> -splice 0x10 \
> \( tesa1.png -resize 200x50! \) -compose Multiply -composite \
> -colorspace Gray \
> "$OUTPUT"
>
>
> Here are some results:
> https://sedna.fiee.net/d/2c3218730f8341aab1fa/
Did you try that with the filter module? It would make it more portable
Hans
ps. It is still on my todo list to see of we can add some of metafont's
bit stuff.
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________
next prev parent reply other threads:[~2021-09-05 8:10 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-03 10:28 Henning Hraban Ramm via ntg-context
2021-09-03 16:24 ` Hans Hagen via ntg-context
2021-09-04 12:18 ` Henning Hraban Ramm via ntg-context
2021-09-04 17:06 ` Hans Hagen via ntg-context
2021-09-05 7:40 ` Henning Hraban Ramm via ntg-context
2021-09-05 8:10 ` Hans Hagen via ntg-context [this message]
2021-09-05 9:34 ` Henning Hraban Ramm via ntg-context
2021-09-06 2:13 ` Aditya Mahajan via ntg-context
2021-09-06 8:42 ` Henning Hraban Ramm via ntg-context
2021-09-05 8:46 ` Hans Hagen via ntg-context
2021-09-03 22:16 ` Bruce Horrocks via ntg-context
2021-09-04 11:59 ` Henning Hraban Ramm via ntg-context
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9f550389-d53e-6787-22b8-6d4cacc6d33c@xs4all.nl \
--to=ntg-context@ntg.nl \
--cc=j.hagen@xs4all.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).