Os arquivos PDF foram projetados para promover o compartilhamento. Todos podem abri-los – em seus navegadores, se não tiverem mais nada. O Linux permite manipular, mesclar e dividir arquivos PDF na linha de comando.
Índice
O formato de documento portátil
O Portable Document Format ( PDF ) resolveu um problema. Quando você criava um documento em um computador e queria compartilhá-lo com outra pessoa, enviar o documento nem sempre funcionava.
Mesmo que eles tivessem o mesmo pacote de software que você usou para criar seu documento, eles podem não ter as mesmas fontes instaladas no computador que você tinha no seu. Eles poderiam abrir o documento, mas pareceria errado.
Se eles não tivessem uma cópia do software que você usou para criar o pacote, eles não conseguiriam abri-lo. Se você usou um software que só estava disponível no Linux, não fazia sentido enviar aquele documento para alguém que só usava Windows.
A Adobe criou um novo formato de arquivo em 1992 e o chamou de formato de documento portátil. Documentos criados de acordo com esse padrão — ISO 32000 — contêm as imagens e fontes necessárias para renderizar corretamente o conteúdo do arquivo. Os arquivos PDF podem ser abertos por visualizadores de PDF em qualquer plataforma. Foi uma solução multiplataforma, simples e elegante.
Um arquivo PDF não foi projetado para ser maleável como um documento de processador de texto. Eles não se prestam facilmente à edição. Se precisar alterar o conteúdo de um PDF, é sempre melhor voltar ao material de origem, editá-lo e gerar um novo PDF. Em contraste com a tentativa de alterar o conteúdo, as manipulações estruturais podem ser realizadas em arquivos PDF com relativa facilidade.
Aqui estão algumas maneiras de criar arquivos PDF no Linux e como realizar algumas das transformações que podem ser aplicadas a eles.
Criando arquivos PDF no Linux
Muitos dos aplicativos disponíveis no Linux podem gerar arquivos PDF diretamente. O LibreOffice possui um botão na barra de ferramentas que gera um PDF do documento atual. Não poderia ser mais fácil.
Para um controle refinado da criação de PDF, o aplicativo de editoração eletrônica Scribus é difícil de superar.
Se você precisa criar documentos com conteúdo científico ou matemático, talvez para submissão a revistas acadêmicas, um aplicativo que utilize LaTeX , como o Texmaker , será perfeito para você.
Se preferir um fluxo de trabalho de texto simples, talvez usando Markdown , você pode usar
pandoc
para converter de e para vários formatos de arquivo, incluindo PDF. Temos um guia dedicado a
pandoc
mas um exemplo simples mostrará como é fácil de usar.
Instale o Texmaker primeiro.
pandoc
depende de algumas bibliotecas LaTeX para geração de PDF. Instalar o Texmaker é uma maneira conveniente de atender a essas dependências.
O
-o
A opção (saída) é usada para especificar o tipo de arquivo que será criado. O arquivo “raw-notes.md” é um arquivo Markdown de texto simples.
pandoc -o novo.pdf raw-notes.md
Se abrirmos o arquivo “new.pdf” em um visualizador de PDF, veremos que é um PDF formado corretamente.
O comando qpdf
O qpdf
comando permite manipular arquivos PDF existentes , preservando seu conteúdo. As mudanças que você pode fazer são estruturais. Com qpdf
você pode realizar tarefas como mesclar arquivos PDF, extrair páginas, girar páginas e definir e remover criptografia.
Para instalar qpdf
no Ubuntu use este comando:
sudo apt instalar qpdf
O comando no Fedora é:
sudo dnf instalar qpdf
No Manjaro você deve digitar:
sudo pacman -S qpdf
Mesclando arquivos PDF
A princípio, parte da qpdf
sintaxe da linha de comando pode parecer confusa. Por exemplo, muitos dos comandos esperam um arquivo PDF de entrada.
Se um comando não exigir um, você precisará usar a --empty
opção. Isso indica qpdf
para não esperar um arquivo de entrada. A --pages
opção permite escolher páginas. Se você fornecer apenas os nomes do PDF, todas as páginas serão usadas.
Para combinar dois arquivos PDF para formar um novo arquivo PDF, use este comando format.
qpdf --empty --pages primeiro.pdf segundo.pdf -- combinado.pdf
Este comando é composto por:
- qpdf : Chama o
qpdf
comando. - –empty : Informa
qpdf
que não há PDF de entrada. Você poderia argumentar que “first.pdf” e “second.pdf” são arquivos de entrada, masqpdf
os considera parâmetros de linha de comando. - –pages : informa que
qpdf
trabalharemos com páginas. - first.pdf second.pdf : Os dois arquivos dos quais extrairemos as páginas. Não usamos intervalos de páginas, portanto todas as páginas serão usadas.
- — : Indica o fim das opções de comando.
- combinado.pdf : O nome do PDF que será criado.
Se procurarmos por arquivos PDF com ls
, veremos nossos dois arquivos originais – intocados – e o novo PDF chamado “combined.pdf”.
ls -hl primeiro.pdf segundo.pdf combinado.pdf
Existem duas páginas em “first.pdf” e uma página em “second.pdf”. O novo arquivo PDF tem três páginas.
Você pode usar curingas em vez de listar muitos arquivos de origem. Este comando cria um novo arquivo chamado “all.pdf” que contém todos os arquivos PDF no diretório atual.
qpdf --empty --pages *.pdf -- all.pdf
Podemos usar intervalos de páginas adicionando os números ou intervalos de páginas atrás dos nomes dos arquivos dos quais as páginas serão extraídas.
Isso extrairá as páginas um e dois de “first.pdf” e a página dois de “second.pdf”. Observe que se “combined.pdf” já existir, ele não será substituído. Ele tem as páginas selecionadas adicionadas a ele.
qpdf --empty --pages primeiro.pdf 1-2 segundo.pdf 1 -- combinado.pdf
Os intervalos de páginas podem ser tão detalhados quanto você desejar. Aqui, solicitamos um conjunto muito específico de páginas de um arquivo PDF grande e criamos um arquivo PDF de resumo.
qpdf --empty --pages large.pdf 1-3,7,11,18-21,55 -- resumo.pdf
O arquivo de saída, “summary.pdf” contém as páginas 1 a 3, 7, 11, 18 a 21 e 55 do arquivo PDF de entrada. Isso significa que existem 10 páginas em “summary.pdf”
Podemos ver que a página 10 é a página 55 do PDF de origem.
Dividindo arquivos PDF
O oposto de mesclar arquivos PDF é dividir arquivos PDF. Para dividir um PDF em arquivos PDF separados, cada um contendo uma única página, a sintaxe é simples.
O arquivo que estamos dividindo é “summary.pdf” e o arquivo de saída é “page.pdf”. Isso é usado como o nome base. Cada novo arquivo possui um número adicionado ao nome base. A --split-pages
opção informa qpdf
que tipo de ação estamos realizando.
resumo qpdf.pdf página.pdf --páginas divididas
A saída é uma série de arquivos PDF numerados sequencialmente.
ls página*.pdf
Se não quiser dividir todas as páginas, use intervalos de páginas para selecionar as páginas desejadas.
Se emitirmos o próximo comando, dividiremos uma coleção de arquivos PDF de uma única página. Os intervalos de páginas são usados para especificar as páginas ou intervalos que desejamos, mas cada página ainda é armazenada em um único PDF.
qpdf grande.pdf seção.pdf --páginas grandes.pdf 1-5,11-14,60,70-100 ---páginas divididas
As páginas extraídas possuem nomes baseados em “section.pdf” com um número sequencial adicionado a elas.
seção ls*.pdf
Se você deseja extrair um intervalo de páginas e armazená-lo em um único PDF, use um comando deste formulário. Observe que não incluímos a --split-pages
opção. Efetivamente, o que estamos fazendo aqui é uma mesclagem de PDF, mas estamos apenas “mesclando” páginas de um arquivo de origem.
qpdf --empty --pages large.pdf 8-13 -- capítulo2.pdf
Isso cria um PDF único de várias páginas chamado “chapter2.pdf”.
Rotação de páginas
Para girar uma página, criamos um novo PDF igual ao PDF de entrada com a página especificada girada.
Usamos a --rotate
opção para fazer isso. Os +90
meios giram a página 90 graus no sentido horário. Você pode girar uma página 90, 180 ou 270 graus. Você também pode especificar a rotação em graus no sentido anti-horário, usando um número negativo, mas há pouca necessidade de fazer isso. Uma rotação de -90 é igual a uma rotação de +270.
O número separado da rotação por dois pontos ” :
” é o número da página que você deseja girar. Esta poderia ser uma lista de números de páginas e intervalos de páginas, mas estamos apenas girando a primeira página. Para girar todas as páginas, use um intervalo de páginas de 1-z
.
qpdf --rotate=+90:1 resumo.pdf girado1.pdf
A primeira página foi girada para nós.
Criptografando e Descriptografando
Os documentos PDF podem ser criptografados para que exijam uma senha para abri-los. Essa senha é chamada de senha do usuário. Há outra senha necessária para alterar as configurações de segurança e outras configurações de permissão de um PDF. É chamada de senha do proprietário.
Para criptografar um PDF precisamos usar a --encrypt
opção e fornecer ambas as senhas. A senha do usuário vem primeiro na linha de comando.
Também especificamos a força da criptografia a ser usada. Você só precisa passar da criptografia de 256 bits para 128 bits se quiser oferecer suporte a visualizadores de arquivos PDF muito antigos. Sugerimos que você opte pela criptografia de 256 bits .
Vamos criar uma versão criptografada do “summary.pdf” chamada “secret.pdf”.
qpdf --encrypt hen.rat.squid goose.goat.gibbon 256 -- summary.pdf secret.pdf
Quando tentamos abrir o PDF, o visualizador de PDF solicita uma senha. Inserir a senha do usuário autoriza o visualizador a abrir o arquivo.
Lembre-se de que isso qpdf
não altera o PDF existente. Ele cria um novo com as alterações que solicitamos. Portanto, se você criar um PDF criptografado, ainda terá a versão original não criptografada. Dependendo das circunstâncias, você pode excluir o PDF original ou armazená-lo com segurança.
Para descriptografar um arquivo, use a --decrypt
opção. Obviamente, você deve saber a senha do proprietário para que isso funcione. Precisamos usar a --password
opção de identificar a senha.
qpdf --decrypt --password=goose.goat.gibbon secret.pdf desbloqueado.pdf
O “unlocked.pdf” pode ser aberto sem senha.
qpdf é uma excelente ferramenta
Estamos profundamente impressionados com qpdf
. Ele fornece um conjunto de ferramentas flexível e rico em recursos para trabalhar com arquivos PDF. E é muito rápido também.
Confira a documentação bem escrita e detalhada para ver o quanto mais ela pode fazer.