shithub: rc

ref: c1a707427fbbb5129e467516fc671e976ee3e398
dir: /epub2pdf/

View raw version
#!/bin/rc
# epub2pdf - convert epub to pdf
# usage:  epub2pdf [-k] file.epub
# depend: epub2html
# bugs:   troff(1) cannot handle any and all fonts,
#         so expect to see Weinberger pinups pop up.

# set some defaults
rfork e
if(! ~ $#* 1) exit usage
keep=yes
name=`{basename $1 | sed 's/\.[Ee][Pp][Uu][Bb]//'}
if(! test -f $name.html){
    keep=no
    epub2html $* || exit $status
}
temp=/tmp/epub2pdf-$pid
mkdir $temp
ifs='
'

# convert extracted epub to pdf
for(file in `{awk -F" '/<a/ { print $2 }' $name.html})
    html2ms < $"file >> $temp/out.ms
doctype $temp/out.ms | rc | dpost -f >[2]/dev/null |\
  ps2pdf '-dCompatibilityLevel=1.4' > $name.pdf
rm -rf $temp
if(~ $keep no) rm -rf $name.html $name^_files