NOTA 1: La respuesta aceptada sigue siendo mayormente correcta, pero tiene algunas lagunas. Carece de que muchos archivos PDF no sean directamente editables como texto. Incluso cuando lo están, tal edición a veces puede dañar el PDF haciéndolo ilegible. Una solución, que funcionará tanto para Unix como para Microsoft Windows es qpdf, que puede traducir archivos PDF a "QDF", un formulario editable en texto que sigue siendo un archivo PDF válido. El qpdf
paquete viene con el fix-qdf
que recalcula las compensaciones después de que un archivo QDF ha sido editado para corregir cualquier daño.
NOTA 2: ¿Se siente incómodo con los editores de texto? Intente usar un editor de GUI como jpdftweak primero. A veces, los editores de PDF de la GUI funcionan, en cuyo caso, sí, ya está. Sin embargo, cuando fallan, como a menudo ha sido el caso para mí, puede probar esta alternativa más sólida. De cualquier manera, por favor no vote mi respuesta por ser menos que elegante.
CÓMO EDITAR Números de página PDF usando Qpdf
Resumen:
qpdf -qdf foo.pdf foo.qdf
editar foo.qdf
0 << >> % No label on first pages
6 << /S /D >> % Start numbering from 7th page.
fix-qdf foo.qdf >bar.qdf
- prueba bar.qdf
qpdf bar.qdf bar.pdf
Pasos detallados
Paso 1.
Convierta el documento al formato QDF fácilmente editable. Ejecute qpdf desde la línea de comando así:
qpdf -qdf foo.pdf foo.qdf
Nota: Si aún no tiene qpdf instalado, los ejecutables de Microsoft Windows se pueden descargar desde https://github.com/qpdf/qpdf/releases. Los sistemas Unix, como Ubuntu y Debian GNU / Linux, pueden instalarlo escribiendoapt install qpdf
.
Paso 2.
Edite el documento QDF usando un editor de texto como notepad ++, emacs o gedit. Busque la palabra /Catalog
y observe los << paréntesis angulares >> que está dentro. Cerca, encontrará el actual /PageLabels
( si lo hay ).
Agregaremos cada sección que debe estar numerada de manera diferente a /PageLabels
. El formato es start-page
<< style
>>. Tenga en cuenta que el espacio en blanco no importa y que la primera página del documento sí lo es 0
. A menos que se especifique lo contrario, una nueva sección siempre comienza numerando páginas desde 1.
Ejemplos
Aquí hay un ejemplo completo del aspecto de PageLabels, con comentarios agregados:
/Type /Catalog
/PageLabels <<
/Nums [
0 % From the first page of the document,
<<
/S /r % ...use the lowercase roman numeral style.
>>
6 % From seventh page onward,
<<
/S /D % ...use ordinary digits (arabic numerals)
>>
]
>>
Si el archivo no tiene PageLabels, agréguelos después /Type /Catalog
. Por ejemplo, uno podría cambiar,
1 0 obj
<<
…
/Type /Catalog
>>
endobj
dentro,
1 0 obj
<<
…
/Type /Catalog
/PageLabels
<< /Nums [
0 << >> % No label for cover
1 << /S /r >> % i, ii for index
3 << /S /D /St 15 >> % 15, 16, 17, ... for article
31 << /S /D /P (A-) >> % A-1, A-2, A-3... for appendix
]
>>
>>
endobj
OPCIONAL: A PARTIR DE UN NÚMERO DIFERENTE CON /St
Cada sección reinicia la numeración en 1 a menos que se indique lo contrario usando /St
. Observe cómo en el ejemplo anterior, la cuarta página comienza en 15.
OPCIONAL: UTILIZAR UN ESTILO DIFERENTE CON /S
El /S
operador toma un argumento que le permite elegir el estilo de numeración,
- / D dígitos (1, 2, 3 ...)
- / R romana mayúscula (I, II, III ...)
- / r romana en minúsculas (i, ii, iii ...)
- / A alfabético en mayúsculas (A, B, C, ...., X, Y, Z, AA, AB, AC, ...)
- / a alfabético en minúsculas (a, b, c, ...., x, y, z, aa, ab, ac, ...)
Si se omite el /S
operador, esa sección de páginas no tendrá numeración. Por ejemplo:
0 << >> % No label for cover
OPCIONAL: AGREGAR UN PREFIJO A CADA PÁGINA CON /P
Puede mostrar cualquier cadena de texto antes del número de página especificando una palabra entre paréntesis después de /P
:
31
<<
/S /D
/P (A-) % label appendix pages A-1, A-2, A-3
>>
Si especifica un prefijo sin estilo ( /S
), obtendrá páginas que solo tienen la palabra sin ningún número. Esto puede ser útil, por ejemplo, si desea que una portada simplemente tenga la etiqueta "Carátula".
0 << /P (Cover) >> % No number, just "Cover"
Paso 3.
Ejecute fix-qdf
para hacer que sus ediciones sean válidas en PDF y coloque la salida en bar.qdf.
fix-qdf foo.qdf > bar.qdf
Etapa 4.
Abra bar.qdf en su programa de visualización de PDF y verifique que esté numerado correctamente.
Paso 5
Convierta el archivo QDF nuevamente a un PDF normal, así:
qpdf bar.qdf bar.pdf
Ta da. Ya terminaste Ahora tiene un documento con números de página correctamente etiquetados en bar.pdf.