Como criar e combinar arquivos PDF na linha de comando do Linux

Publicados: 2022-09-24
Jane Kelly/Shutterstock.com

Os arquivos PDF foram projetados para promover o compartilhamento. Todos podem abri-los — em seu navegador da Web, 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
Criando arquivos PDF no Linux
O comando qpdf
Mesclando arquivos PDF
Dividindo arquivos PDF
Rotação de páginas
Criptografando e descriptografando
qpdf é uma excelente ferramenta

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 tenham 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 seriam capazes de abrir o documento, mas pareceria errado.

Como instalar fontes do Google e da Microsoft no Linux
RELACIONADO Como instalar fontes do Google e da Microsoft no Linux

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ê usasse um software que só estava disponível no Linux, não fazia sentido enviar esse documento para alguém que só usava o Windows.

A Adobe criou um novo formato de arquivo em 1992 e o chamou de formato de documento portátil. Os documentos criados para 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. Era uma solução multiplataforma, simples e elegante.

Um arquivo PDF não se destina a ser maleável como um documento de processador de texto. Eles não se prestam prontamente à edição. Se você precisar alterar o conteúdo de um PDF, é sempre melhor voltar ao material de origem, editá-lo e gerar um novo PDF. Ao contrário de tentar 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 tem um botão na barra de ferramentas que gera um PDF do documento atual. Não poderia ser mais fácil.

O botão PDF do LibreOffice Writer

Para um controle refinado da criação de PDF, o aplicativo de editoração eletrônica Scribus é imbatível.

Se você precisa criar documentos com conteúdo científico ou matemático, talvez para submissão a periódicos acadêmicos, um aplicativo que utiliza LaTeX, como o Texmaker, será perfeito para você.

Como usar o pandoc para converter arquivos na linha de comando do Linux
RELACIONADO Como usar o pandoc para converter arquivos na linha de comando do Linux

Se você preferir um fluxo de trabalho de texto simples, talvez usando Markdown, você pode usar o pandoc para converter de e para muitos formatos de arquivo, incluindo PDF. Temos um guia dedicado ao pandoc mas um exemplo simples mostrará como é fácil de usar.

Instale o Texmaker primeiro. pandoc conta com algumas bibliotecas LaTeX para geração de PDF. Instalar o Texmaker é uma maneira conveniente de atender a essas dependências.

A opção -o (saída) é utilizada para especificar o tipo de arquivo que será criado. O arquivo “raw-notes.md” é um arquivo Markdown de texto simples.

 pandoc -o new.pdf raw-notes.md 

Usando o pandoc para criar um PDF a partir de um arquivo Markdown

Se abrirmos o arquivo “new.pdf” em um visualizador de PDF, veremos que é um PDF formado corretamente.

Abrindo o PDF criado pelo pandoc

O comando qpdf

O comando qpdf permite manipular arquivos PDF existentes, preservando seu conteúdo. As mudanças que você pode fazer são estruturais . Com o qpdf , você pode executar 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 

Instalando qpdf no Ubuntu

O comando no Fedora é:

 sudo dnf instalar qpdf 

Instalando qpdf no Fedora

No Manjaro você deve digitar:

 sudo pacman -S qpdf 

Instalando qpdf no Manjaro

Mesclando arquivos PDF

A princípio, algumas das sintaxes da linha de comando qpdf podem parecer confusas. Por exemplo, muitos dos comandos esperam um arquivo PDF de entrada.

Se um comando não exigir um, você precisará usar a opção --empty . Isso diz ao qpdf para não esperar um arquivo de entrada. A opção --pages permite que você escolha as páginas. Se você apenas fornecer os nomes dos PDFs, todas as páginas serão usadas.

Para combinar dois arquivos PDF para formar um novo arquivo PDF, use este formato de comando.

 qpdf --empty --pages first.pdf second.pdf -- Combined.pdf 

Combinando dois arquivos PDF para criar um novo arquivo PDF

Este comando é composto por:

  • qpdf : Chama o comando qpdf .
  • –empty : Diz qpdf que não há PDF de entrada. Você pode argumentar que “first.pdf” e “second.pdf” são arquivos de entrada, mas qpdf os considera parâmetros de linha de comando.
  • –pages : Diz qpdf que vamos trabalhar com páginas.
  • first.pdf second.pdf : Os dois arquivos dos quais vamos extrair 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.
  • Combined.pdf : O nome do PDF que será criado.

Se procurarmos 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 

Usando ls para listar os arquivos PDF novos e existentes

Há duas páginas em “first.pdf” e uma página em “second.pdf”. O novo arquivo PDF tem três páginas.

O novo arquivo PDF tem todas as páginas dos dois arquivos PDF originais

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 

Usando curingas na linha de comando qpdf

Podemos usar intervalos de páginas adicionando os números de página ou intervalos atrás dos nomes dos arquivos dos quais as páginas devem ser 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 first.pdf 1-2 second.pdf 1 -- combinado.pdf 

Usando intervalos de páginas para selecionar as páginas a serem adicionadas ao novo arquivo

Os intervalos de páginas podem ser tão detalhados quanto você desejar. Aqui, estamos solicitando um conjunto muito específico de páginas de um arquivo PDF grande e estamos criando um arquivo PDF de resumo.

 qpdf --empty --pages large.pdf 1-3,7,11,18-21,55 -- summary.pdf 

Usando um conjunto complicado de intervalos de páginas

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 há 10 páginas em “summary.pdf”

A página 10 do novo PDF é a página 55 do arquivo de origem

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 é fornecido como “page.pdf”. Isso é usado como o nome base. Cada novo arquivo tem um número adicionado ao nome base. A opção --split-pages informa qpdf que tipo de ação estamos realizando.

 qpdf resumo.pdf page.pdf --split-pages 

Dividindo um arquivo PDF em vários arquivos PDF de uma página cada

A saída é uma série de arquivos PDF numerados sequencialmente.

 ls página*.pdf 

usando ls para listar os arquivos PDF numerados

Se você não quiser dividir todas as páginas, use intervalos de páginas para selecionar as páginas desejadas.

Se emitirmos este próximo comando, dividiremos uma coleção de arquivos PDF de página única. Os intervalos de páginas são usados ​​para especificar as páginas ou intervalos que queremos, mas cada página ainda é armazenada em um único PDF.

 qpdf large.pdf section.pdf --pages large.pdf 1-5,11-14,60,70-100 -- --split-pages 

Dividindo um PDF com intervalos de páginas

As páginas extraídas têm nomes baseados em “section.pdf” com um número sequencial adicionado a elas.

 ls seção*.pdf 

usando ls para listar os arquivos PDF numerados

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 opção --split-pages . Efetivamente, o que estamos fazendo aqui é uma mesclagem de PDF, mas estamos apenas “unindo” páginas de um arquivo de origem.

 qpdf --empty --pages large.pdf 8-13 -- capítulo2.pdf 

Extraindo várias páginas de um arquivo PDF e armazenando-as em um novo arquivo PDF

Isso cria um único PDF de várias páginas chamado “capítulo2.pdf”.

Rotação de páginas

Para girar uma página, criamos um novo PDF que é igual ao PDF de entrada com a página especificada girada.

Usamos a opção --rotate para fazer isso. O +90 significa girar a página 90 graus no sentido horário. Você pode girar uma página em 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 fazê-lo. Uma rotação de -90 é o mesmo que 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. Pode 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 sumário.pdf girado1.pdf 

Girando a primeira página de um PDF

A primeira página foi girada para nós.

Um arquivo PDF com a primeira página girada 90 graus no sentido horário

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 a segurança e outras configurações de permissão de um PDF. É chamado de senha do proprietário .

Para criptografar um PDF, precisamos usar a opção --encrypt e fornecer as duas 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 cair da criptografia de 256 bits para 128 bits se quiser oferecer suporte a visualizadores de arquivos PDF muito antigos. Sugerimos que você mantenha a 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 

Criando um PDF criptografado

Quando tentamos abrir o PDF, o visualizador de PDF solicita uma senha. A inserção da senha do usuário autoriza o visualizador a abrir o arquivo.

Um visualizador de PDF solicitando a senha para abrir um arquivo PDF criptografado

Lembre-se que qpdf não altera o PDF existente. Ele cria um novo com as alterações que pedimos para fazer. Portanto, se você criar um PDF criptografado, ainda terá a versão original não criptografada. Dependendo de suas circunstâncias, você pode querer excluir o PDF original ou armazená-lo com segurança.

Para descriptografar um arquivo, use a opção --decrypt . Obviamente, você deve saber a senha do proprietário para que isso funcione. Precisamos usar a opção --password para identificar a senha.

 qpdf --decrypt --password=goose.goat.gibbon secret.pdf desbloqueado.pdf 

Criando um PDF descriptografado a partir de um PDF criptografado

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 sua documentação bem escrita e detalhada para ver o quanto mais ele pode fazer.