From: Ian Jackson Date: Tue, 26 Oct 2021 23:48:58 +0000 (+0100) Subject: wip ppm X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=9a639b6ce6865bf0f5aaec8603475357b77c9b99;p=quacks.git wip ppm --- diff --git a/Makefile b/Makefile index bb14123..69a2f7c 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ use_rsvg=rsvg-convert -f png -o $@.tmp.png $< shell_pipe=set -o pipefail; set -e; make_pnm = pnmdepth 255 | pnmnoraw $o -pumpkin-books.ps: pumpkin-books.ps.pl bag.pgm pot.pgm +pumpkin-books.ps: pumpkin-books.ps.pl bag.pgm pot.pgm droplet.ppm ./$< $o pumpkin-books.pdf: pumpkin-books.ps @@ -34,11 +34,11 @@ pot.pgm: 146_Kaldrono.svg Makefile | pnminvert \ | $(make_pnm) -droplet.pgm: droplet.svg Makefile +droplet.ppm: droplet.svg Makefile $(use_rsvg) $(shell_pipe) \ pngtopnm <$@.tmp.png -mix -background 'white' \ - | pnmdepth 255 + | pnmdepth 255 \ | $(make_pnm) pubssh=c diff --git a/pumpkin-books.ps.pl b/pumpkin-books.ps.pl index dbeace4..9927a18 100755 --- a/pumpkin-books.ps.pl +++ b/pumpkin-books.ps.pl @@ -711,9 +711,12 @@ sub def_image ($$) { my ($ncomps, $name) = @_; my $ext = $ncomps == 1 ? 'pgm' : $ncomps == 3 ? 'ppm' : die; + my $oper = $ncomps == 1 ? 'image' : + $ncomps == 3 ? 'false 3 colorimage' : die; + my $magic = $ncomps == 1 ? 'P2' : $ncomps == 3 ? 'P3' : die; open B, "$name.$ext" or die $!; - eq "P2\n" or die; + eq "$magic\n" or die "$name.$ext expected $magic"; local $/ = undef; my @d = split ' ', ; close B; @@ -731,17 +734,18 @@ sub def_image ($$) { $w $h 8 [ -$sz 0 0 -$sz $w 2 div $h 2 div ] END - for (my $i=0; $i< $w*$h; $i++) { + for (my $i=0; $i< $w*$h*$ncomps; $i++) { printf "%02x", shift @d or die $!; } print <} image +>} $oper } def END } def_image(1, "bag"); def_image(1, "pot"); +def_image(3, "droplet"); print "gsave\n" or die $!;