Estou cortando e rasterizando alguns PDFs usando o ImageMagick. Para remover algum texto que não seja necessário, quero cortar em uma caixa menor do que a necessária e, em seguida, reajustar o tamanho da página adicionando algum espaço em branco.
Para rasterizar e cortar, procedo da seguinte forma:
for filename in *.eps; do
convert -density 150 -crop "$bbwpx"x"$bbhpx"+"$xoffpx"+"$yoffpx" \
+repage "$filename" "${filename%.*}.png"
convert "${filename%.*}.png" "${filename%.*}.pdf"
done
Seguindo esta resposta , quero aumentar a altura da página. Por isso, adicionei mais uma linha ao código mostrado acima para obter:
for filename in *.eps; do
convert -density 150 -crop "$bbwpx"x"$bbhpx"+"$xoffpx"+"$yoffpx" \
+repage "$filename" "${filename%.*}.png"
convert "${filename%.*}.png" "${filename%.*}.pdf"
gs -q -sDEVICE=pdfwrite -dBATCH -dNOPAUSE -sOutputFile="${filename%.*}-crop.pdf"\
-dDEVICEWIDTHPOINTS="$bbw" -dDEVICEHEIGHTPOINTS="$bbhnew" -dFIXEDMEDIA -c \
"<< /CurrPageNum 1 def /Install {0 $bbcorr translate} bind >> \
setpagedevice" -f "${filename%.*}.pdf"
done
No entanto, depois de executar isso, a altura sempre permanece a mesma de antes (como mostrado por pdfinfo
), o conteúdo do pdf é, no entanto, traduzido corretamente.
A execução do código em PDFs não rasterizados funciona, no entanto.