Tengo un archivo PDF para el que quiero cambiar el tamaño de sus páginas; llamémoslo file.pdf
. Y obtuve otro archivo PDF que servirá como modelo para file.pdf
; llamémoslo model.pdf
.
Para aclarar:quiero file.pdf
Las páginas de ser de la misma medida que model.pdf
páginas de.
Usando pdfinfo
en model.pdf
Obtengo la siguiente información relevante:
Tagged: no
Form: none
Pages: 22
Encrypted: no
Page size: 612 x 783 pts
Page rot: 0
MediaBox: 0.00 0.00 720.00 891.00
CropBox: 54.00 54.00 666.00 837.00
BleedBox: 54.00 54.00 666.00 837.00
TrimBox: 54.00 54.00 666.00 837.00
ArtBox: 54.00 54.00 666.00 837.00
File size: 3324788 bytes
Optimized: no
PDF version: 1.7
Realmente no entiendo qué significan las dos primeras columnas del *Box
significan los campos, pero buscando en Google llegué a la conclusión de que mi objetivo son las dos últimas columnas del MediaBox
campo. Entonces, quiero file.pdf
ser 720x891
, y creo que las unidades son pts
.
Así que encontré esta herramienta llamada pdfposter
que se supone que puede cambiar el tamaño de las páginas de un PDF, e hice esto (tenga en cuenta que ya hice la conversión de puntos a pulgadas):
pdfposter -m10x12.375inch file.pdf new_file.pdf
Todo va bien, pero cuando reviso new_file.pdf
con pdfinfo
obtengo:
Tagged: no
Form: none
Pages: 32
Encrypted: no
Page size: 630.22 x 891 pts
Page rot: 0
MediaBox: 54.33 32.60 774.33 923.60
CropBox: 54.33 32.60 684.55 923.60
BleedBox: 54.33 32.60 684.55 923.60
TrimBox: 54.33 32.60 630.22 891.00
ArtBox: 54.33 32.60 630.22 891.00
File size: 3005203 bytes
Optimized: no
PDF version: 1.3
Claramente algo salió mal ya que el tamaño de las páginas del nuevo PDF es 774.33x923.60
y no 720x891
; además, las dos primeras columnas del MediaBox
cambiado de 0.00 0.00
a 54.33 32.60
y no tengo idea de por qué o qué significa.
También intenté usar pdfjam
pero solo agrega más espacio en blanco a los bordes, mientras deja intacto el contenido del PDF.
Entonces mi pregunta es:¿cómo puedo cambiar el tamaño de mi file.pdf
? las páginas de model.pdf
.
Respuesta aceptada:
Puede usar pdfjam con --papersize
argumento para establecer el tamaño del papel de salida. Es posible que también deba usar --scale
y --offset
si desea hacer algo más que cambiar el tamaño de la página y su contenido juntos.
pdfjam --papersize="$(LC_ALL=C pdfinfo model.pdf | awk '/^Page size:/ {printf "{%fbp,%fbp}", $3, $5}')" file.pdf new_file.pdf