25 lines
577 B
Bash
Executable File
25 lines
577 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# generate a QR code and render it as an EPL fragment
|
|
# params: x y max_size "QR code contents" [qrencode options]
|
|
|
|
x=$1
|
|
shift
|
|
y=$1
|
|
shift
|
|
max_size=$1
|
|
shift
|
|
msg=`echo $1 | sed "s/\"/\\\\\"/g"`
|
|
shift
|
|
#echo $msg
|
|
#exit
|
|
size=$(qrencode -t PNG -s 1 -m 0 -o - $* "$msg" | pngtopnm | pnmfile | sed "s/^.*raw, //;s/ .*//")
|
|
mul=$(expr $max_size / $size)
|
|
width=$(expr \( $size \* $mul + 7 \) / 8)
|
|
#echo N
|
|
echo -n GW$x,$y,$width,$(expr $size \* $mul),
|
|
qrencode -t PNG -s $mul -m 0 -o - $* "$msg" | pngtopnm | pgmtopbm -thresh | pnminvert | tail -n +3
|
|
echo ""
|
|
#echo P
|
|
|