O que é o arquivo PDF? | Base de conhecimento
Introdução
Como você já sabe no artigo sobre “PDLS”, o PDF é uma linguagem de descrição da página estática que possui uma estrutura estrita imutável.
O PDF é um dos, se não, a linguagem de descrição da página mais popular devido a uma enorme variedade de recursos que os desenvolvedores da Adobe adicionaram à sua especificação. Além disso, a Adobe também fornece às pessoas ferramentas capazes de realizar esses recursos nos documentos. Este artigo é uma breve revisão da sintaxe, estrutura e recursos do PDF.
O que é um arquivo PDF?
O objetivo inicial do desenvolvimento do formato de documento portátil PDF ou abreviado era criar um formato de documento que atendesse a vários requisitos de intercâmbio de documentos digitais em ambientes independentes de dispositivo e independentes da resolução. Esses requisitos incluem visualização interativa, navegação de alto desempenho, ocupação de baixo espaço em disco, trabalho de trabalho em documentos, suporte para diferentes conteúdos de mídia, criptografia, assinatura, criação de formulários, apresentação e assim por diante. Apesar da intenção inicial de fornecer às empresas o formato exaustivo para o intercâmbio de documentos digitais, os recursos de impressão de alta qualidade também foram adicionados à especificação, embora posteriormente.
Sintaxe do arquivo PDF
O PDF possui um modelo de imagem derivado do PostScript’s One, também usa 1-2 caracteres, operadores longos, bem como no formato AI, e também possui a sintaxe do BNF pós-fix, onde todos os operando necessários vão perante o operador.
operand1...operandm operator |
Além do comprimento do operador, existem algumas diferenças entre os operadores de PDF e PostScript. No PDF, todos os operandos necessários devem preceder os operadores enquanto em operando PostScript são obtidos na pilha PostScript. Em PDF, o operador não retorna um resultado, pois pode estar no PostScript. O operador PDF executa alguma ação para compor uma página, por exemplo, desenhar gráficos ou texto ou define alguma propriedade em um ambiente gráfico. No PostScript, os operadores fazem todo o trabalho.
Geralmente, a maioria dos arquivos PDF do conteúdo é compactada com a codificação de flate e, dessa maneira, é binária. Além dos arquivos PDF de compactação também podem ser criptografados para limitar o acesso ao conteúdo do documento. Portanto, todo o arquivo deve ser tratado como binário. Somente no caso em que um arquivo PDF não é comprimido nem criptografado e não contém conteúdo binário, como imagens, som, vídeo, etc., ele pode ser considerado textual.
Objetos de especificação em PDF
No objeto de especificação PDF, é um sinônimo de tipo, enquanto no PostScript existem tipos que podem ser primitivos e complexos e o último pode ser chamado de “objetos”. Portanto, todos os tipos de PDF, simples ou complexos, são objetos. O idioma PDF consiste em valores booleanos, números inteiros, números reais, nomes, strings, matrizes, dicionários e fluxos. As cordas podem estar em formato literal ou hexadecimal, como é mostrado abaixo.
( This is a string )<4E6F762073686D6F7A206B6120706F702E> | formato literal formato hexadecimal |
Matrizes são delimitadas com colchetes. Inclui um retângulo de subtipo - matriz com 4 elementos.
Os dicionários armazenam os dados em pares de valor-chave em que a chave é um nome ou string (para nomes dicionários) e o valor é referência de objeto ou objeto. É fechado em suportes de ângulo duplo. Os dicionários têm um campo tipo que mostra quais dados são armazenados em um determinado dicionário.
<< /Type /Example /Subtype /DictionaryExample /Version 0 . 01 /IntegerItem 12 /StringItem ( a string ) /Subdictionary << /Item1 0 . 4 /Item2 true /LastItem ( not ! ) /VeryLastItem ( OK ) >>>>endobj |
Objetos podem ser diretos e indiretos. Objetos indiretos são aqueles que podem ser referidos de outros objetos por seu ID.
Os fluxos são objetos que geralmente contêm dados binários ou codificados. Eles são livres de humanos e não têm limitações no comprimento. Geralmente, os fluxos de arquivos PDF contêm conteúdo ou imagens de página compactada ou alguma outra mídia. O objeto de fluxo consiste em um dicionário direto com um comprimento do fluxo e uma matriz de filtros usados para codificar o fluxo e codificar dados após palavra -chave fluxo .
181 0 obj << /Length 473 0 R /Subtype /Image /Width 2 /Height 19 /BitsPerComponent 8 /ColorSpace /DeviceGray /Filter [/ASCII85Decode /FlateDecode] >>streamGb"[2*s<F2i'/7_!,1%/hZ~>endstreamendobj |
Operadores em PDF
Os operadores são uma espécie de objetos diretos que tornam os gráficos da página e, como mencionamos anteriormente, são representados por palavras-chave de 1 ou 2 letras. Existem dois tipos de operadores de PDF:
* executando ações ou definindo propriedades do estado gráfico.
PDF operator x y mx y lx1 y1 x2 y2 x3 y3 chx y largura altura rea b c d e f cmSsfFWtamanho da letra TfcharSpace TcqQlargura da linha wlinhaCap Jtamanho da letra TfcharSpace Tc | Descrição iniciar um novo subpercurso movendo o ponto atual para as coordenadas (x, y)adicionar um segmento de reta do ponto atual ao ponto (x, y)adicionar uma curva de Bézier cúbica ao caminho atualfechar o subcaminho atualadicionar um retângulo ao caminho atualmodificar a matriz de transformação atual concatenando a matriz especificadatraçar o caminhoo mesmo, mas próximo caminhopreencher o caminhoo mesmo, mas próximo caminhomodificar o caminho de recorte atual interseccionando-o com o caminho atualdefinir a fonte do texto para fonte e o tamanho da fonte do texto para tamanhodefina o espaçamento entre caracteres como charSpaceguarde o estado gráfico atual na pilha de estados gráficosrestaure o estado gráfico da pilha de estados gráficosdefina a largura da linha no estado gráficodefina o estilo de bordo da linha no estado gráficodefina a fonte do texto como fonte e o tamanho da fonte do texto como tamanhodefina o espaçamento entre caracteres como charSpace |
* agrupamento
Operador PDF BT...ETBI...EIBMC...EMCBX...EX | Descrição iniciar e terminar um objeto de textoiniciar e terminar um objeto de imageminiciar e terminar uma sequência de conteúdos marcadosiniciar e terminar uma secção de compatibilidade |
Os tipos especiais de operadores de agrupamento são bx … ex . Eles incluem partes do conteúdo da página em que objetos não identificados devem ser ignorados. Assim, eles são equivalentes de Ai %_ pseudo-compostos.
Estrutura do arquivo pdf
O arquivo PDF possui quatro elementos estruturais obrigatórios.
- Cabeçalho de uma linha, onde a versão do idioma PDF é escrita
%PDF-1.5 |
Corpo que contém objetos do documento. A estrutura do corpo será descrita mais adiante neste artigo.
Tabela de referência cruzada. É usado para acesso aleatório rápido aos objetos do documento. Ele contém um deslocamento em bytes até o início dos objetos desde o início do arquivo.
xref0 60000000003 65535 f0000000017 00000 n0000000081 00000 n0000000000 00007 f0000000331 00000 n0000000409 00000 n |
- Trailer, aponta para a última tabela de referência cruzada e contém uma quantidade comum de objetos em tabelas de referência cruzada, O ID do documento e referências a:
- Tabela de referência cruzada anterior se houver vários outros no arquivo;
- Raiz de documento que representada pelo Dicionário de Catálogo;
- Dicionário de Meta Informações com Autor, Criador, Título, Palavras -chave, Campos de Data de Criação e Modificação;
- Dicionário de criptografia se o documento for criptografado.
trailer << /Size 15 /Root 2 0 R /Info 1 0 R >>startxref6224 |
Uma nova tabela de referências cruzadas e trailer são adicionados após cada atualização do documento. Será descrito mais adiante no artigo.
Estrutura de documentos
O documento PDF possui uma estrutura semelhante a uma árvore, onde a raiz é um dicionário de catálogo.
O catálogo contém referências nas páginas Descrição subárvore, subárvore de contorno e outras subárvores e nós do nível de documentos.
2 0 obj << /Type /Catalog /Pages 3 0 R /Outlines 4 0 R /PageMode /UseOutlines /ViewerPreferences 5 0 R /OpenAction [6 0 R /Fit] >>endobj |
A árvore de páginas contém pedidos de nós de página de página e nós de folhas de página. Exatamente a estrutura semelhante a uma árvore de um conjunto de páginas, juntamente com o algoritmo de pesquisa, permite navegar rápido em milhares de páginas para encontrar uma necessária.
O Dicionário de Página contém referência no fluxo de conteúdo que pode ser compactado como está na figura acima ou descompactado. No último caso, veríamos os operadores de PDF em texto legível por humanos, como na figura abaixo.
7 0 obj << /Length 8 0 R >>stream1 0 0 1 0 0 cm0 0 m595 0 l595 842 l0 842 lhWnq/Alpha1 gs0 0 0 rg0 0 0 RG0 Jq0.96593 0.25882 -0.25882 0.96593 0 0 cm1 0 0 1 0 0.25882 cm0.02 w-0.96593 0 m0 -0.25882 l0 -0.25882 0 -0.25882 0 -0.25882 c0.14294 -0.25882 0.25882 -0.14294 0.25882 0 c0.25882 0.14294 0.14294 0.25882 0 0.25882 chSQendstreamendobj |
Além de uma variedade de nós filhos (pode ser uma página de página ou nós de página), o dicionário contém referência ao dicionário de recursos, que, por sua vez, se refere a fontes, procetos, imagens (XOBJECT), etc.
9 0 obj << /ProcSet 10 0 R /XObject 11 0 R /Font 12 0 R /ExtGState 13 0 R >>endobj |
Anotação e outras subáridas serão mencionadas casualmente na seção de recursos
Características
Possibilidades gráficas de formato PDF
Não há sentido em mencionar o comum para a maioria das possibilidades de descrição da página em desenhar gráficos e texto. Apenas dizemos que a riqueza de fontes e espaços de cores suportados são os mesmos do PostScript.
Fonts - Adobe Type 0- Adobe Type 1- Compact Fonts (CFF)- Chameleon- TrueType- CID-keyed | Color spaces - DeviceGray- DeviceRGB- DeviceCMYK- DeviceN- Cores separadas- Pontual- Baseado em CIE |
Transparência
PDF suporta transparência.
Arquivos externos
Qualquer arquivo de mídia ou documento pode ser incorporado ao PDF ou referido em um documento.
Hiperlinks
Os hiperlinks são suportados em PDF.
Visão eleitoral e interativa
O PDF permite mostrar apenas partes do conteúdo e sua aparência necessária para certos usos e esconder os outros. É útil, por exemplo, ao importar gráficos do Adobe Illustrator, que têm camadas, alguns dos quais são necessários para trabalhar no Adobe Illustrator, mas não são necessários para a visualização no Adobe Acrobat Reader. Outro caso de visão eleitoral pode ser um artigo escrito em diferentes idiomas ou representado para usuários com deficiência, mas salvo em um documento. Também pode haver diferentes variantes de uso: uma visão para visualizar, projetar e imprimir.
Uma visão interativa do PDF inclui habilidades:
- para visualizar/adicionar anotações a partes de documentos;
- editar o documento com a possibilidade de visualizar todas as edições;
- Para ordenar o conteúdo do documento em diferentes tópicos de artigos coletados por determinados assuntos.
A anotação é uma espécie de caixa flutuante contendo algumas notas, som, vídeo ou algum outro conteúdo.
Navegação interativa
Navegar entre diferentes partes dos documentos pode ser realizado de várias maneiras:
- mover o documento do início para a página necessária consecutivamente paga a página;
- pular de uma parte do documento para outro com itens de contorno;
- pulando de uma página para outra clicando em imagens de miniatura;
- pular de uma parte do documento para outro com itens de thread do artigo;
- Saltando de uma parte do documento para outro usando o Viewports e movendo -se entre eles pressionando
.
A movimentação pelas viewports e a ocultação de algumas partes do documento são realizadas através dos dicionários Viewport e NavigationNode.
Atualizações incrementais
Todas as alterações feitas no documento PDF são anexadas ao documento sem apagar o conteúdo anterior. E toda vez que os documentos são alterados novos XREF (tabela de referência cruzada) e o trailer são adicionados. A nova tabela de referência cruzada contém referências em objetos adicionados ou removidos e na tabela de referências cruzadas anterior. Esse mecanismo permite montar o conteúdo final do documento e, ao mesmo tempo, armazenar estados anteriores do documento.
Desempenho
O alto desempenho de navegar pelas páginas é fornecido pela estrutura de páginas em forma de árvore e algoritmo de pesquisa eficaz. No entanto, pode ser aumentado ainda mais, combinando elementos gráficos repetitivos em um objeto, chamado formam XObject e usando um objeto em todos os locais necessários. Há também uma maneira de otimizar o documento inteiro para uma visão de alto desempenho. É linearização. A linearização foi inventada inicialmente para visualização eficaz de documentos em PDF acessados pela Web. O documento PDF linearizado é somente leitura, qualquer alteração para isso exigirá linearização repetida.
O alto desempenho de navegar entre objetos de documento é realizado por tabelas de referência cruzada que armazenam compensações de objetos desde o início do arquivo.
Compressão
A compressão dos documentos em PDF, geralmente a codificação plana, permite a criação de documentos grandes com ocupação de espaço em disco relativamente baixo. Por exemplo, o arquivo de especificação PDF que contém 758 páginas com um contorno, miniaturas, imagens e tabelas tem cerca de 9 MB de tamanho.
Segurança
Os documentos em PDF podem ser criptografados para fornecer acesso diferenciado apenas a determinados usuários e podem ser assinados. O recurso de assinatura digital permite a autenticação da identidade do usuário e do conteúdo do documento. A assinatura digital liga o estado do documento quando está assinado com as informações do usuário. A assinatura digital pode ser de qualquer forma: Da varredura puramente matemática à retina se for fornecido manipulador de assinatura correspondente .
Formas interativas
É usado para coletar informações dos usuários. Os formulários interativos, ou assim chamados acroformas, podem validar, formatar e enviar dados do usuário para um servidor.
Apresentação
Existem vários meios de apresentação em PDF:
- ações que são executadas quando o documento é aberto;
- ações que são executadas quando a página é aberta;
- duração de mostrar uma página;* Efeitos que aparecem durante a transição de página para página.
Conteúdo da mídia
Imagens, sons, clipes de filmes e gráficos 3D podem ser adicionados aos documentos PDF.
Dados de extração
O PDF permite adicionar determinada marcação que fornece aplicativos externos com a possibilidade de extrair os dados necessários. Documento com essa marcação chamada tag PDF .
Suporte de pré -pressione
A preparação para a publicação inclui marcas da impressora, separação de cores, intenções de saída e captura.
Qual é o uso de um arquivo PDF?
A principal aplicação dos documentos em PDF é o intercâmbio eletrônico de documentos e a visualização em diferentes ambientes.
Como faço um arquivo PDF?
Criação e edição de documentos em PDF são possíveis em aplicativos independentes do Adobe Acrobat.
Como faço para abrir um arquivo PDF?
Você pode abrir e visualizar arquivos PDF no aplicativo Standalone Adobe Acrobat Reader ou no navegador do Google Chrome com o plug -in PDF. Também utilitários simples, como Sumatra PDF, Foxit Reader ou PDFreader gratuito, ajudarão você. Outra maneira é visualizar o PDF online, por exemplo, no Google Drive.