Eu tenho um documento PDF que criei por meios que não sejam o Acrobat (impressão em pdf e, em seguida, mesclando um monte de pdfs), mas gostaria de alterar manualmente os números das páginas (ou seja, as primeiras várias páginas são simplesmente páginas de título, a página que está rotulado como "página 1" é realmente a sétima folha do pdf). Qual é a maneira mais simples (e idealmente, gratuita) de fazer isso?
Para ser claro, não estou tentando alterar os números nas próprias páginas, mas os números das páginas nos "metadados" que o pdf armazena (as próprias páginas já estão numeradas corretamente; eu só quero que "vá para a página 1" à página etiquetada 1, que pode ser de folha 7).
Pelo que vale, estou no Windows, embora também tenha acesso aos Macs.
Respostas:
O que você deseja é realmente chamado de rótulos de página e pode ser facilmente adicionado diretamente no código-fonte do PDF. Renomeie a extensão do arquivo de
pdf
paratxt
e abra o arquivo em um editor de texto (isso pode ser lento, dependendo do tamanho do arquivo, seja paciente). As informações sobre os rótulos das páginas são armazenadas em um nó chamado catálogo de documentos, que se parece com isso:Pode conter coisas mais confusas, mas essa é a estrutura básica. Existe apenas um catálogo, portanto, em um arquivo grande, você pode procurar o nó que contém
/Catalog
. Agora você pode fazer as alterações desejadas inserindo a/PageLabels
entrada:Existem 3 linhas começando com números, chamados índices de página . A página 1 possui o índice
0
, a página 2 o índice1
e assim por diante. Eles sempre descrevem intervalos, portanto a linha com1 <<...>>
aplica-se a todas as páginas do índice 1 a 5 e a linha com6 <<...>>
aplica-se a todas as páginas do 6 até a última página. Um rótulo para0 <<...>>
sempre deve ser definido.Você pode encontrar mais informações sobre rótulos de páginas e código-fonte PDF no padrão PDF ou em um wiki sobre padrões PDF.
fonte
/St 8
ou/St 2
, você define um ponto inicial para o rótulo exibido; mas escolha qualquer número no lugar de 8 (ou 2), que deve ser> = 1. Por exemplo,1 << /S /r /St 12 >>
numerará as páginas de (na verdade) 2-6 como (exibidas) xii-xvii - porque '12' corresponde 'xii'.Se bem entendi, aqui está como deve funcionar:
Parece -me, no entanto, que isso não funcionou de maneira confiável ou completa da última vez que tentei (cerca de 2 anos atrás).
ATUALIZAÇÃO: Minha memória não estava me falhando. Agora tentei novamente e enviei um relatório de bug para o Ghostscript ( bug 691889 ) sobre isso. Siga o link para o relatório de erros para ver os detalhes.
fonte
COMO editar números de páginas PDF usando o Qpdf
Resumo:
qpdf -qdf foo.pdf foo.qdf
editar foo.qdf
fix-qdf foo.qdf >bar.qdf
qpdf bar.qdf bar.pdf
Etapas detalhadas
Passo 1.
Converta o documento para o formato QDF facilmente editável. Execute o qpdf na linha de comando da seguinte maneira:
Passo 2.
Edite o documento QDF usando um editor de texto como o notepad ++, emacs ou gedit. Pesquise a palavra
/Catalog
e observe os << colchetes angulares >> que estão dentro. Nas proximidades, você encontrará o atual/PageLabels
( se houver ).Nós estaremos adicionando cada seção que deve ser numerada diferentemente ao
/PageLabels
. O formato éstart-page
<<style
>>. Observe que o espaço em branco não importa e que a primeira página do documento é0
. Salvo indicação em contrário, uma nova seção sempre inicia a numeração de páginas de 1.Exemplos
Aqui está um exemplo completo da aparência de PageLabels, com comentários adicionados:
Se o arquivo não tiver rótulos de página, adicione-os depois
/Type /Catalog
. Por exemplo, pode-se mudar,para dentro,
OPCIONAL: INÍCIO DE UM NÚMERO DIFERENTE COM
/St
Cada seção reinicia a numeração em 1, a menos que você indique o contrário
/St
. Observe como no exemplo acima, a quarta página começa às 15.OPCIONAL: USANDO UM ESTILO DIFERENTE COM
/S
O
/S
operador usa um argumento que permite escolher o estilo de numeração,Se alguém omitir o
/S
operador, essa seção das páginas não terá numeração. Por exemplo:OPCIONAL: ADICIONANDO UM PREFIXO PARA CADA PÁGINA COM
/P
Você pode mostrar qualquer sequência de texto antes do número da página, especificando uma palavra entre parênteses após
/P
:A especificação de um prefixo sem um estilo (
/S
) fornecerá páginas que possuem apenas a palavra sem número. Isso pode ser útil, por exemplo, se você deseja que uma página de rosto simplesmente tenha o rótulo "Capa".Etapa 3.
Corra
fix-qdf
para tornar suas edições válidas em PDF e coloque a saída em bar.qdf.Passo 4.
Abra o bar.qdf no seu programa de visualização de PDF e verifique se está numerado corretamente.
Etapa 5.
Converta o arquivo QDF novamente em um PDF normal, da seguinte maneira:
Ta da. Você está feito. Agora você tem um documento com números de página rotulados corretamente em bar.pdf.
fonte
Existe um pequeno script python que pode fazer o trabalho: https://github.com/lovasoa/pagelabels-py
No seu caso, chame algo como:
fonte
O jPdf Tweak é um utilitário gráfico de código aberto que permite editar rótulos de páginas em arquivos PDF. A página de documentação fornece instruções passo a passo.
fonte
Para remover os antigos, provavelmente a maneira mais fácil de plataforma cruzada é apenas cortar os antigos. Você poderia fazer isso, por exemplo, com o BRISS.
Adicionar os novos usando ferramentas gratuitas é mais complicado. Pessoalmente, eu provavelmente faria isso com o pdflatex, como nesta resposta do StackExchange , embora essa possa ser uma solução bastante complicada, a menos que você tenha outros usos para o pdflatex.
Eu acho que isso pode ser feito, no entanto, com o jPdfTweak .
fonte
O método fornecido por Dane H. funciona com o Acrobat Reader (ou, para ser mais preciso, a versão atual do Adobe Reader). Um pequeno ponto a ser observado: o campo na parte superior aceita apenas 8 caracteres, assim você não pode inserir algo como 'índice de assunto' se esse rótulo tiver sido usado. Mas você pode usar o item de menu Exibir> Navegação na página> Ir para ... ou o equivalente-chave.
Outra dica: a especificação do pdf sempre atribui números de página consecutivamente; portanto, no caso de um documento produzido pela digitalização de pares de páginas, os dois conjuntos de números ficam fora da etapa (a menos que você trabalhe cada página individualmente). Mas você pode, com pouco esforço, configurar seu documento para que a convenção 'vá para a página n leve você às páginas 2n e 2n + 1' se aplique.
fonte
A resposta de dinamarqueses é a melhor, os formatos mudaram um pouco agora, isso pode ser útil:
fonte
Eu achei que a edição direta do arquivo (como não compactada pelo pdftk) não funcionaria se já houvesse '/ títulos' definidos na região '/ esboços'. A técnica de edição direta descrita em um post acima é demonstrada no Youtube: https://www.youtube.com/watch?v=zoH1Z_hSpak
Mas o recurso 'update' do pdftk pode ser mais intuitivo (e mais confiável quando já existir '/ títulos' na região '/ estrutura de tópicos' do arquivo PDF), editando o arquivo 'doc_data.txt' usado aqui: https: / /www.pdflabs.com/blog/export-and-import-pdf-bookmarks/
fonte
BeCyPDFMetaEdit http://www.becyhome.de/becypdfmetaedit/description_eng.htm
Você pode adicionar / remover / alterar o esquema interno de números de páginas na guia "páginas" desta ferramenta de freeware.
E tenha cuidado, o visualizador de PDF xchange não mostra o esquema de número da página e o foxitreader tem o resultado certo. Não testei o leitor Acrobat.
fonte