Portál AbcLinuxu, 12. května 2025 11:51
if test $# != 2; then echo "Usage: $0 FILE.pdf PAGENO" exit 0 fi # Try to find fixbb which can be in some obscure place, like this script. FIXBB=$(which fixbb 2>/dev/null) if test -z "$FIXBB"; then FIXBB=$(dirname $0)/fixbb fi if test ! -x "$FIXBB"; then echo "Cannot find fixbb!" 1>&2 exit 1 fi # Check number of pages (and thus sanity of $pageno) inputfile="$1" pageno="$2" npages=$(pdfinfo "$inputfile" | sed -n '/^Pages:/{s/[^0-9]//g;p;Q}') if test "$pageno" -gt $npages -o "$pageno" -lt 1; then echo "Invalid page number $pageno, file $inputfile has pages 1-$npages!" 1>&2 exit 1 fi # Process basename="${inputfile%.pdf}" outname="$basename-page_$pageno" tmpfile="$outname.tmp.pdf" function cleanup() { rm -f "$tmpfile"; } trap cleanup EXIT pdftops -eps -f $pageno -l $pageno "$inputfile" - \ | grep -v "Produced by xpdf/pdftops" >"$outname.eps" $FIXBB "$outname.eps" ps2pdf "$outname.eps" "$tmpfile" pdfcrop "$tmpfile" "$outname.pdf"Vložení jednotlivých extrahovaných stran přes celou stránku v je už pdfTeXu snadné -- a strany očísluje TeX.
jedine, co me napada, je preexportovani do rastrove grafiky a zpet.
tzn. vyexportovat stranky do jednotlivych obrazku a potom pomoci imagemagicku pridat cislovani + znovu exportovat do PDFka (to by skriptem taky nemel byt problem). mozna imagemagick umi nac
vyexportovani do rastru:
convert soubor.pdf vysledek.png
bude mit za nasledek soubory vysledek-0.png vysledek-1.png...
vyexportovani do PDF:
convert soubor*.png vysledek.pdf
udela soubor PDF, kde budou stranky razene tak, jak jsou sazene od bashe.
zbytek je uz jenom otazka jednoducheho shell skriptu...
nerikam, ze nejake zpracovani primo v PDF neni - jen jsem ho nikdy nehledal a tohle je prvni, co me napadlo.
Můžeš využít pdftk . Funkce burst a background, případně stamp. Rozlož dokument na jednotlivé stránky. Číslování si připrav v jiném programu, vytiskni si pdf s tím číslováním. Rozlož ho a pak to dej všechno dohromady.
Ted uz to nejak dam do hromady.Jestli to budete nakonec řešit nějakým skriptem, vložte ho pak sem, prosím. Díky
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.