Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
#######
#
# E-scripts on ImageMagick.
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
# An introduction to eev can be found here:
#
#   (find-eev-quick-intro)
#   http://angg.twu.net/eev-intros/find-eev-quick-intro.html
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/e/imagemagick.e>
#           or at <http://angg.twu.net/e/imagemagick.e.html>.
#        See also <http://angg.twu.net/emacs.html>,
#                 <http://angg.twu.net/.emacs[.html]>,
#                 <http://angg.twu.net/.zshrc[.html]>,
#                 <http://angg.twu.net/escripts.html>,
#             and <http://angg.twu.net/>.
#
#######





# «.wand»			(to "wand")
# «.wand-api»			(to "wand-api")
# «.tclmagick»			(to "tclmagick")
# «.convert»			(to "convert")
# «.rotate»			(to "rotate")
# «.identify»			(to "identify")
# «.exif»			(to "exif")
# «.exif-orientation»		(to "exif-orientation")
# «.exif-thumbnail»		(to "exif-thumbnail")
# «.exif-bug-2022»		(to "exif-bug-2022")
# «.whiteboard»			(to "whiteboard")
# «.math-b-images»		(to "math-b-images")
# «.graphicsmagick»		(to "graphicsmagick")
# «.convert-jpgs-to-pdf»	(to "convert-jpgs-to-pdf")
# «.convert-pdf-to-jpgs»	(to "convert-pdf-to-jpgs")
# «.import»			(to "import")
# «.whiteboard-email»		(to "whiteboard-email")
# «.textcleaner»		(to "textcleaner")
# «.extract»			(to "extract")
# «.pdf-to-animated-gif»	(to "pdf-to-animated-gif")




# (find-esgrep "grep -niH -e imagemagick *.e")
# (find-es "x" "imagemagick")

# (find-status   "imagemagick")
# (find-vldifile "imagemagick.list")
# (find-udfile   "imagemagick/")
# (find-status   "imagemagick-doc")
# (find-vldifile "imagemagick-doc.list")
# (find-udfile   "imagemagick-doc/")
# (find-fline "/usr/share/doc/imagemagick/www/api/")
# (find-udw3m "imagemagick/www/api/resize.html")
# (find-udw3m "imagemagick/www/api/resize.html")


* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
apti imagemagick-6-doc


# (find-zsh "installeddebs | sort | grep magick")
# (find-zsh "availabledebs | sort | grep magick")





#####
#
# Wand
# 2010dec15
#
#####

# «wand»  (to ".wand")
# (find-zsh "installeddebs | sort | grep wand")
# (find-zsh "availabledebs | sort | grep wand")

# (find-status   "libmagickwand-dev")
# (find-vldifile "libmagickwand-dev.list")
# (find-udfile   "libmagickwand-dev/")
# (find-status   "libmagickwand3")
# (find-vldifile "libmagickwand3.list")
# (find-udfile   "libmagickwand3/")

# (find-fline "/usr/bin/MagickWand-config")
# (find-fline "/usr/bin/Wand-config")
# (find-fline "/usr/lib/pkgconfig/")
# (find-fline "/usr/lib/pkgconfig/MagickWand.pc")
# (find-fline "/usr/lib/pkgconfig/Wand.pc")



#####
#
# The Wand API
# 2010dec15
#
#####

# «wand-api»  (to ".wand-api")
# (find-status   "imagemagick-doc")
# (find-vldifile "imagemagick-doc.list")
# (find-udfile   "imagemagick-doc/")
# (find-udfile "imagemagick/www/")
# (find-udw3m  "imagemagick/www/api.html")
# (find-udfile "imagemagick/www/api/")
# (find-udw3m  "imagemagick/www/api/transform.html")




#####
#
# TclMagick
# 2010dec15
#
#####

# «tclmagick»  (to ".tclmagick")
# (find-es "tcl" "tclmagick")
# (find-es "tcl" "tclmagick-build")
# (find-es "tcl" "tclmagick-build2")
# (find-status   "tclmagick")
# (find-vldifile "tclmagick.list")
# (find-udfile   "tclmagick/")
# (find-udfile "tclmagick/")
# (find-udw3m  "tclmagick/index.html")
# (find-udw3m  "tclmagick/TclMagick.html")
# (find-udw3m  "tclmagick/TkMagick.html")
# file:///usr/share/doc/tclmagick/TclMagick.html
# file:///usr/share/doc/tclmagick/TkMagick.html

# (find-tclmagickfile "")
# (find-tclmagickfile "tests/")
# (find-tclmagickfile "tests/test-draw.tcl")
# (find-tclmagickfile "tests/test-pixel.tcl")
# (find-tclmagickfile "tests/test-wand.tcl")
# (find-tclmagickfile "tests/test-wand.tcl" "$draw Rectangle")
# (find-tclmagickfile "tests/test-wand.tcl" "$wand CropImage")
# (find-tclmagickfile "tests/tkmagick.tcl")
# (find-tclmagickfile "tmp/")

# (find-fline "~/SCANS/caderno4/C2_VS_2010dec13_2.jpg")





#####
#
# convert
# 2012may04
#
#####

# «convert»  (to ".convert")
# (find-esgrep "grep -nH -e convert *.e")
# (find-man "1 convert")
# (find-man "1 convert" "-despeckle")
# (find-man "1 convert" "-scale")
# (find-man "1 convert" "-resize")
# (find-man "1 convert" " -resize")
# (find-fline "~/eev-current/debian/eev.xpm")
# https://imagemagick.org/script/convert.php
# https://imagemagick.org/script/command-line-options.php#crop
# file:///usr/share/doc/imagemagick-6-common/html/www/convert.html

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)

convert ~/eev-current/debian/eev.xpm -scale 200   /tmp/eev_s200pixels.png
convert ~/eev-current/debian/eev.xpm -scale 200%  /tmp/eev_s200percent.png
convert ~/eev-current/debian/eev.xpm -resize 200  /tmp/eev_r200pixels.png
convert ~/eev-current/debian/eev.xpm -resize 200% /tmp/eev_r200percent.png
# (find-sh "for i in /tmp/eev_*; do identify $i; done")
# (find-fline "/tmp/" "eev")

# Blurred:
# (find-fline "/tmp/eev_r200percent.png")
# (find-fline "/tmp/eev_r200pixels.png")

# Sharp:
# (find-fline "/tmp/eev_s200percent.png")
# (find-fline "/tmp/eev_s200pixels.png")

convert ~/IMAGES/forthsun.png -scale 256 /tmp/forthsun_r256pixels.png
# (find-fline "/tmp/" "forthsun_r256pixels.png")
# (find-fline "/tmp/forthsun_r256pixels.png")


cd /tmp/
convert /tmp/retangulo_de_papel_big.jpg -scale 25% retangulo_de_papel.jpg





# (find-man "1 ImageMagick")
# (find-man "1 animate")
# (find-man "1 compare")
# (find-man "1 composite")
# (find-man "1 conjure")
# (find-man "1 convert")
# (find-man "1 display")
# (find-man "1 identify")
# (find-man "1 import")
# (find-man "1 mogrify")
# (find-man "1 montage")
# (find-man "1 stream")


#####
#
# rotate
# 2012aug26
#
#####

# «rotate»  (to ".rotate")
* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# (find-fline "/tmp/dejours/")
cd /tmp/dejours/
convert 0030.jpeg -rotate 180 0030_r.jpeg
convert 0030.jpeg -rotate 180 0030.jpeg




#####
#
# identify
# 2021aug19
#
#####

# «identify»  (to ".identify")
# (find-man "1 identify")
# (find-man "1 identify" "-format")
# https://imagemagick.org/script/command-line-options.php#format
# https://imagemagick.org/script/escape.php

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# (find-sh "convert -list format")

# (find-fline "~/tmp/anubis_2020.jpg")
FNAME=$HOME/tmp/anubis_2020.jpg
laf  $FNAME
file $FNAME
identify -format "%wx%h\n" $FNAME




#####
#
# exif
# 2012aug26
#
#####

# «exif»  (to ".exif")
# http://en.wikipedia.org/wiki/Exchangeable_image_file_format
# (find-zsh "availabledebs | sort | grep exif")
# (find-status   "exif")
# (find-vldifile "exif.list")
# (find-udfile   "exif/")
# (find-man "1 exif")
# (find-man "1 exif" "Orientation tag")

# (find-man "1 identify")

# (find-fline "/sda6/nikon/containers/orig/")
* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
cp -v /sda6/nikon/containers/orig/DSC_0112.JPG /tmp/

# (find-man "1 exif")
# (find-sh "exif --list-tags /tmp/DSC_0112.JPG")
# (find-sh "exif --list-tags /tmp/DSC_0112.JPG | grep '\\*'")
# (find-sh "exif             /tmp/DSC_0112.JPG")

# (find-sh "exif /sda6/nikon/containers/orig/DSC_0117.JPG     | tee /tmp/o")
# (find-sh "exif /sda6/nikon/containers/DSC_0117_r4_rampa.JPG | tee /tmp/o2")
# (find-tkdiff "/tmp/o" "/tmp/o2")

# (find-callprocess '("exif" "/tmp/DSC_0112.JPG") "Inch")




#####
#
# Exif orientation problem
# 2013sep26
#
#####

# «exif-orientation» (to ".exif-orientation")
# http://www.daveperrett.com/articles/2012/07/28/exif-orientation-handling-is-a-ghetto/
# http://www.impulseadventure.com/photo/exif-orientation.html

# 2014mar12:
# (find-angg ".emacs" "rotate")
# file:///usr/share/doc/imagemagick/www/command-line-options.html#auto-orient

# http://www.emacswiki.org/emacs/Tumme
# (find-egrep "grep -niH -e rotation *.el")
# (find-efile "image-dired.el")
# (find-efile "image-mode.el")

# (find-freenode-links "##imagemagick")
# http://angg.twu.net/2013.2-GA/20130911_GAA1.jpg
# (find-fline "~/2013.2-GA/20130911_GAA1.jpg")
# (find-exif "~/2013.2-GA/20130911_GAA1.jpg")
# (find-exif "~/2013.2-GA/20130911_GAA2.jpg")

<edrx> hi... this is an image that looks in the "right" orientation
       in browsers and upside-down in Emacs (and possibly in other
       programs too):
       http://angg.twu.net/2013.2-GA/20130911_GAA1.jpg
<edrx> when I run exif on it it says that its orientation is
       "Bottom-right"... the other images in the directory are
       "Top-left".
<edrx> I usually adjust the orientation of my photos with commands
       like this: "convert orig.jpg -rotate 270 new.jpg" - which,
       in this case and others, produces images that are rendered
       in one way in programs that respect the exif orientation
       field, and in another in those that don't.
<edrx> any suggestions? there must be some flags and options in
       imagemagick to produce images that do not confuse the
       programs that treat the exif orientation field in the wrong
       way...
(edrx) 




#####
#
# exif-thumbnail
# 2018nov19
#
#####

# «exif-thumbnail» (to ".exif-thumbnail")
# (find-man "1 exif" "-e, --extract-thumbnail")
# (find-man "1 exif" "-o, --output=FILE")
# (find-fline "~/pergola/")
# (find-fline "/tmp/pergola/")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
rm -Rv /tmp/pergola/
mkdir  /tmp/pergola/
cp -iv ~/pergola/*vista*.jpg /tmp/pergola/
cd     /tmp/pergola/
exif -o 01_vista_do_203B_thumb.jpg -e 01_vista_do_203B.jpg
file    01_vista_do_203B_thumb.jpg

# (find-fline "~/pergola/")
cd ~/pergola/
for i in *B.jpg; do
  exif -o $(basename $i .jpg)_thumb.jpg -e $i
done
# (find-fline "~/pergola/")
# (find-fline "/tmp/pergola/")




#####
#
# exif-bug-2022
# 2022nov03
#
#####

# «exif-bug-2022»  (to ".exif-bug-2022")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
cd ~/tmp
for i in *.jpg; do exif $i; done

# Corrupt data
# The data provided does not follow the specification.
# ExifLoader: The data supplied does not seem to contain EXIF data.




#####
#
# Whiteboard
# 2014jun07
#
#####

# «whiteboard» (to ".whiteboard")
# (find-es "gimp" "whiteboard")
# (find-angg "bin/whiteboard")





#####
#
# Preparing images for math-b.html
# 2019jan16
#
#####

# «math-b-images» (to ".math-b-images")
# (find-fline "~/LATEX/" "2019logicday-PURO.jpg")
# (find-THfile "math-b.blogme" "RIGHTFIG")
# (find-THgrep "grep --color -nH -e RIGHTFIG math-b.blogme")
# (find-fline     "~/IMAGES/" "2017cwm.png")
# (find-sh0 "identify ~/IMAGES/2017cwm.png")
# (find-TH "math-b" "wld-2019")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
cp -v ~/LATEX/2019logicday-PURO.jpg /tmp/input.jpg
cd /tmp/
identify input.jpg 
# (/ 1 12.0)
convert input.jpg -scale 8% output.jpg
convert input.jpg -scale 8.3% output.jpg
convert input.jpg -scale 9% output.jpg
identify output.jpg
cp -v /tmp/output.jpg ~/IMAGES/entrada-PURO.jpg
makeR

# file:///home/edrx/TH/R/math-b.html#wld-2019
# (find-fline "/tmp/output.jpg")


# (find-blogme3file "anggmake.lua" "IMAGES/vichy-video-pentominos.png")
# (find-blogme3file "anggmake.lua" "IMAGES/entrada-PURO.jpg")




#####
#
# graphicsmagick
# 2019sep29
#
#####

# «graphicsmagick» (to ".graphicsmagick")
# http://www.graphicsmagick.org/




#####
#
# convert-jpgs-to-pdf
# 2020dec01
#
#####

# «convert-jpgs-to-pdf»  (to ".convert-jpgs-to-pdf")
# https://unix.stackexchange.com/questions/29869/converting-multiple-image-files-from-jpeg-to-pdf-format
# https://askubuntu.com/questions/1081895/trouble-with-batch-conversion-of-png-to-pdf-using-convert/1081907
# (find-telegachat "-1002074960141#1061" "operation not allowed by the security policy `PDF'")
# (find-fline        "/etc/ImageMagick-6/")
# (find-fline        "/etc/ImageMagick-6/policy.xml")
# (find-fline "$ASROOT/etc/ImageMagick-6/" "policy.xml")
# (find-fline "$ASROOT/etc/ImageMagick-6/policy.xml")

# (find-tkdiff "/etc/ImageMagick-6/policy.xml" "/etc/ImageMagick-6/policy.xml~")
# (find-fline "/etc/ImageMagick-6/policy.xml" "disable ghostscript")

As pointed out in some comments, you need to edit the policies of
ImageMagick in /etc/ImageMagick-7/policy.xml. More particularly, in
ArchLinux at the time of writing (05/01/2019) the following line is
uncommented:

<policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />
Just wrap it between <!-- and --> to comment it, and pdf conversion should work again.



#####
#
# convert-pdf-to-jpgs
# 2021may07
#
#####

# «convert-pdf-to-jpgs»  (to ".convert-pdf-to-jpgs")
# https://stackoverflow.com/questions/43085889/how-to-convert-a-pdf-into-jpg-with-command-line-in-linux/61700520#61700520
# (find-angg ".emacs.templates" "find-classroom-trab-links")

# (find-man "1 pdftoppm")
# (find-man "1 pdftoppm" "-jpeg ")
# (find-man "1 pdftoppm" "-jpegopt jpeg-options")
# (find-man "1 pdftoppm" "\nJPEG OPTIONS")
# (find-man "1 pdftoppm" "\nJPEG OPTIONS" "quality")

# (find-fline "~/2020.2-C3/P2/" "Beatriz Da Silva Rangel.pdf")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# (find-fline "/tmp/beatriz/")
rm -Rv /tmp/beatriz/
mkdir  /tmp/beatriz/
cd     /tmp/beatriz/
cp -v "$HOME/2020.2-C3/P2/Beatriz Da Silva Rangel.pdf" b.pdf
pdftoppm -jpeg -jpegopt quality=80 -r 300 \
  b.pdf bout


cp -v "$HOME/2020.2-C3/P2/Beatriz Da Silva Rangel.pdf" /tmp/a.pdf

rm -Rv /tmp/pdf-jpg-pdf/
mkdir  /tmp/pdf-jpg-pdf/
cd     /tmp/pdf-jpg-pdf/
pdftoppm -jpeg -jpegopt quality=80 -r 150 /tmp/a.pdf b
convert b*.jpg /tmp/b.pdf
# (find-fline "/tmp/pdf-jpg-pdf/")
# (find-fline "/tmp/" "a.pdf")
# (find-fline "/tmp/" "b.pdf")




pdftoppm




#####
#
# import
# 2020dec19
#
#####

# «import»  (to ".import")
# (find-man "1 import")
# (find-es "emacs" "imgbb")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
import png:/tmp/foo.png

# (find-fline "/tmp/foo.png")





#####
#
# whiteboard-email
# 2021aug06
#
#####

# «whiteboard-email»  (to ".whiteboard-email")
# (find-angg "bin/whiteboard")

https://mail.google.com/mail/ca/u/0/#sent/KtbxLwgsvTVnjDPQLWpZQQvWnRfWQrLRPg
fmw@alink.net
whiteboard: parameters for big black dots?
Hi Fred,

I use your "whiteboard" script a lot, and since the pandemic started
my way of using it changed - before the quarantine I used it mostly to
process the photos of everything that I wrote on (real) whiteboards in
the classes that I taught, and recently I started to use it to process
photos of figures that I draw on paper, to include them in my
slides...

...and there is something that I don't know how to adjust - I _think_
that I have tried changing all the parameters one by one, but I've
probably missed something. I often have to process figures like this
one,

  http://angg.twu.net/2021.1-C2/20210716_exercicio_7.jpg

but in which some of big dots are solid, meaning "this point belongs
to our set", and some are hollow, meaning "this point does not belongs
to our set". The problem is that when the solid dots are bigger than
some threshold size then whiteboard makes them hollow, and at this
moment the only way that I know to change that is by using "-m"... is
there a better way?

Here is a test (for the sake of completeness). It runs whiteboard with
"-m 1.0", "-m 0.5", and "-m 0.25", and uses xzgv to display the result
after each attempt. For this specific image "-m 1.0" makes all dots
very hollow, "-m 0.25" doesn't make them hollow at all, and "-m 0.5"
creates small hollows inside some of the dots.

  rm -Rv /tmp/wb-test/
  mkdir  /tmp/wb-test/
  cd     /tmp/wb-test/
  wget -O exercicio7.jpg http://angg.twu.net/2021.1-C2/20210716_exercicio_7.jpg
  
  whiteboard -m 1.0 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png
  
  whiteboard -m 0.5 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png
  
  whiteboard -m 0.25 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png

Thanks in advance, thanks a lot for whiteboard, and if there's a
mailing list for discussing these things please tell me...

  Cheers,
    Eduardo Ochs
    http://angg.twu.net/


Answer:

Hello Eduardo,
Use a -f value that is larger than the size of the dots.


Test:

# (find-angg "bin/whiteboard")

  rm -Rv /tmp/wb-test/
  mkdir  /tmp/wb-test/
  cd     /tmp/wb-test/
  wget -O exercicio7.jpg http://angg.twu.net/2021.1-C2/20210716_exercicio_7.jpg
  
  whiteboard -m 1.0 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png
  
  whiteboard -m 1.0 -f 15 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png
  
  whiteboard -m 1.0 -f 30 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png
  
  whiteboard -m 1.0 -f 45 exercicio7.jpg exercicio7.png
  xzgv exercicio7.png




#####
#
# textcleaner
# 2021aug06
#
#####

# «textcleaner»  (to ".textcleaner")
# http://www.fmwconcepts.com/imagemagick/textcleaner/index.php
# http://www.fmwconcepts.com/imagemagick/textcleaner/images/abbott2.jpg
# http://www.fmwconcepts.com/imagemagick/textcleaner/images/abbott3_g_stretch_f25_o20_t30_s1_u_T_p20.jpg
# (find-angg "bin/textcleaner")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# (find-fline "/tmp/tc/")
rm -Rv /tmp/tc/
mkdir  /tmp/tc/
cd     /tmp/tc/
wget http://www.fmwconcepts.com/imagemagick/textcleaner/images/abbott2.jpg
textcleaner -g -e stretch -f 25 -o 20 -t 30 -u -s 1 -T -p 20 \
  abbott2.jpg abbottn.jpg

# (find-fline "/tmp/tc/")
# (find-fline "/tmp/tc/abbott2.jpg")
# (find-fline "/tmp/tc/abbottn.jpg")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
rm -Rv /tmp/tc/
mkdir  /tmp/tc/
cd     /tmp/tc/
cp -iv ~/tmp/bortolossi_p296.jpg .
textcleaner -f 50 -o 10 bortolossi_p296.jpg x.png
textcleaner -f 50 -o 10 bortolossi_p296.jpg y.jpg
djvuize x.pdf
djvuize y.pdf

# (find-fline "~/tmp/" "bortolossi_p296.jpg")
# (find-fline "/tmp/tc/")





#####
#
# extract
# 2021aug19
#
#####

# «extract»  (to ".extract")
# https://gigi.nullneuron.net/gigilabs/extracting-a-region-of-an-image-with-imagemagick/
# (find-man "1 convert")
# https://imagemagick.org/script/command-line-options.php#extract

magick -size 16000x16000 -depth 8 -extract 640x480+1280+960 \
  image.rgb image.png",

# (find-fline "~/shelisp/shelisp.el")

* (eepitch-bash)
* (eepitch-kill)
* (eepitch-bash)
* (ee-kill-image-buffers)

# (find-fline "~/tmp/" "bortolossi_p296.jpg")
# (find-fline "/tmp/extract/")
rm -Rv /tmp/extract/
mkdir  /tmp/extract/
cd     /tmp/extract/
cp -iv ~/tmp/bortolossi_p296.jpg a.jpg

function extr0 () { convert -extract $1 a.jpg b_$1.jpg; }
function extr1 () { if [[ ! -e b_$1.jpg ]]; then extr0 $1; fi; }
function extr2 () { extr1 $1; find_fline_here b_$1.jpg; }

# find_fline_here a.jpg
extr0 100x200+300+400
extr1 100x200+300+400
extr1 100x200+300+400
extr1 400x500+300+400
extr1 400x500+200+400
extr1 400x500+100+400
extr1 400x500+110+400
extr1 400x500+120+400
extr1 400x500+130+400
extr1 400x500+140+400
extr1 400x500+140+410
extr1 400x500+140+420
extr1 400x500+140+430
extr1 400x500+140+440

# (find-fline "/tmp/extract/")

if [[ ! -e a.jpg ]]; then echo not found; fi
if [[ ! -e b.jpg ]]; then echo not found; fi

function find_fline_here { emacsit "(progn (eek \"M-o\") (find-fline \"$PWD/$1\"))"; }

echo emacsit "(find-fline \"$PWD/a.jpg\")"
emacsit "(find-fline \"$PWD/a.jpg\")"




#####
#
# pdf-to-animated-gif
# 2023dec31
#
#####

# «pdf-to-animated-gif»  (to ".pdf-to-animated-gif")
# (find-TH "2023-eev-git")
# (find-LATEXfile "2023loeliger.tex" "drafturl")
# file:///home/edrx/IMAGES/2023loeliger.gif

# https://www.imagemagick.org/discourse-server/viewtopic.php?t=25640
# https://apple.stackexchange.com/questions/86177/imagemagick-convert-multipage-pdf-to-animated-gif
# https://phyletica.org/imagemagick/

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
convert -alpha deactivate -verbose -delay 50 -loop 0 -density 200 \
  ~/LATEX/2023loeliger.pdf /tmp/2023loeliger.gif

convert -alpha deactivate -verbose -delay 50 -loop 0 -density 100 \
  ~/LATEX/2023loeliger.pdf /tmp/2023loeliger.gif

convert -alpha deactivate -verbose -delay 50 -loop 0 -density 50 \
  ~/LATEX/2023loeliger.pdf /tmp/2023loeliger.gif

convert -alpha deactivate -verbose -delay 50 -loop 0 -density 75 \
  ~/LATEX/2023loeliger.pdf /tmp/2023loeliger.gif

# file:///tmp/2023loeliger.gif
# file:///home/edrx/IMAGES/2023loeliger.gif

cp -v /tmp/2023loeliger.gif ~/IMAGES/
makeL
makeR

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# Upload pdf
cd ~/LATEX/
scp    2023loeliger.pdf $LINP/LATEX/2023loeliger.pdf
scp    2023loeliger.pdf $LINS/LATEX/2023loeliger.pdf


* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
PDF=/home/edrx/LATEX/2024type-inference.pdf
TMPGIF=/tmp/2024type-inference.gif
IMGGIF=/home/edrx/IMAGES/2024type-inference.gif

f () { convert -alpha deactivate -verbose -delay $1 -loop 0 -density $2 \
         ~/LATEX/2024type-inference.pdf /tmp/2024type-inference.gif }

f 50 75

# file:///tmp/2024type-inference.gif
# file:///home/edrx/IMAGES/2024type-inference.gif

# Upload pdf and gif
cd ~/LATEX/
scp    2024type-inference.pdf $LINP/LATEX/2024type-inference.pdf
scp    2024type-inference.pdf $LINS/LATEX/2024type-inference.pdf
cd /tmp/
scp    2024type-inference.gif $LINP/IMAGES/2024type-inference.gif
scp    2024type-inference.gif $LINS/IMAGES/2024type-inference.gif

# http://anggtwu.net/LATEX/2024type-inference.pdf
# http://anggtwu.net/IMAGES/2024type-inference.gif







;; (find-esetkey-links (kbd "<f7>") 'bury-buffer)
(define-key eev-mode-map (kbd "<f7>") 'bury-buffer)







# (find-sh "grep-aptavail -P imagemagick")
https://answers.launchpad.net/ubuntu/+source/tclmagick/+question/125936
http://www.imagemagick.org/script/api.php
http://tclmagick.sourceforge.net/


# (find-es "tcl" "tclmagick-using")
# (find-es "tcl" "tclmagick-using" "resize")


# (find-zsh "availabledebs | sort | grep libmagick")



# (find-udw3m "imagemagick/www/command-line-options.html#despeckle")
# (find-udw3m "imagemagick/www/command-line-options.html#median")
# http://en.wikipedia.org/wiki/Median_filter
# http://en.wikipedia.org/wiki/Speckle_noise
# http://en.wikipedia.org/wiki/Salt_and_pepper_noise
# http://en.wikipedia.org/wiki/Gaussian_blur

https://mazzo.li/posts/lanczos.html

https://computergraphics.stackexchange.com/questions/14143/search-for-special-image-difference-metric




#  Local Variables:
#  coding:               utf-8-unix
#  End: