Portable Document Format

Portable Document Format (PDF) — межплатформенный открытый формат электронных документов, изначально разработанный фирмой Adobe Systems с использованием ряда возможностей языка PostScript. В первую очередь предназначен для представления полиграфической продукции в электронном виде. Для просмотра существует множество программ, а также официальная бесплатная программа Adobe Reader. Значительное количество современного профессионального печатного оборудования имеет аппаратную поддержку формата PDF, что позволяет производить печать документов в данном формате без использования какого-либо программного обеспечения. Традиционным способом создания PDF-документов является виртуальный принтер, то есть документ как таковой готовится в своей специализированной программе — графической программе или текстовом редакторе, САПР и т. д., а затем экспортируется в формат PDF для распространения в электронном виде, передачи в типографию и т. п.

Portable Document Format
Расширение .pdf
MIME-тип application/pdf
application/x-pdf
application/x-bzpdf
application/x-gzpdf
Сигнатура %PDF
Разработчик Adobe Systems, ISO
Опубликован 15 июня 1993
Последний выпуск 2.0
Тип формата Электронный документ
Расширен из PostScript
Развит в PDF/A, PDF/X, PDF/E, PDF/UA, PDF/VT
Стандарт(ы) ISO 32000-2
Открытый формат? Да
Сайт iso.org/standard/63534.h…
 Медиафайлы на Викискладе

PDF с 1 июля 2008 года является открытым стандартом ISO 32000[1][2].

Формат PDF позволяет внедрять необходимые шрифты (построчный текст), векторные и растровые изображения, формы и мультимедиа-вставки. Поддерживает RGB, CMYK, Grayscale, Lab, Duotone, Bitmap, несколько типов сжатия растровой информации. Имеет собственные технические форматы для полиграфии: PDF/X-1a, PDF/X-3. Включает в себя механизм электронных подписей для защиты и проверки подлинности документов. В этом формате распространяется большое количество сопутствующей документации.

Общие сведения

Чаще всего PDF-файл является комбинацией текста с растровой и векторной графикой, реже — текста с формами, сценариями на языке JavaScript, 3D-графикой и другими типами элементов.

Информационные объёмы двух одинаково выглядящих на экране PDF-документов могут значительно различаться в зависимости от:

  • внедрения или связывания шрифтов и мультимедиа;
  • разрешения растровых изображений;
  • использования встроенного механизма сжатия всего документа;
  • используемых алгоритмов сжатия растровых изображений.

Для создания документа минимального объёма необходимо использовать векторную графику и «безопасные» шрифты. Всего имеется 14 таких шрифтов:

  • Times (v3) (обычный, курсив, полужирный и полужирный курсив)
  • Courier (обычный, наклонный, полужирный и полужирный наклонный)
  • Helvetica (v3) (обычный, наклонный, полужирный и полужирный наклонный)
  • Symbol
  • Zapf Dingbats

Эти шрифты можно использовать без внедрения в документ, так как их должны правильно отображать все программы. Любые другие шрифты, которые не были внедрены в документ производителем и отсутствуют в системе у зрителя, будут заменены одним из имеющихся, что может стать причиной неправильного отображения страниц, количества символов в строке и других ошибок отображения, связанных с метрикой шрифта.

Существует технология MRC (Mixed Raster Content), которая приближает возможности PDF к возможностям формата DjVu по хранению сканированных изображений с текстом[3].

Редактирование PDF

Существуют специальные программы, позволяющие редактировать PDF-файлы, однако их выбор значительно меньше, чем программ для создания или просмотра PDF-документов. Inkscape, начиная с версии 0.46, позволяет редактировать PDF[4] благодаря использованию на промежуточном этапе программы Poppler. В 2017 году функциональность по редактированию PDF была поддержана в российской программе ABBYY FineReader, ранее специализировавшейся только на распознавании и конвертировании PDF в другие форматы[5].

История

В первое время существования данный формат был крайне непопулярен:

  • программное обеспечение компании Adobe для чтения и создания PDF было платным;
  • в PDF отсутствовала поддержка внешних ссылок, что делало его практически бесполезным во всемирной паутине;
  • PDF-документы были большего размера по сравнению с обычным текстом, что означало более длительную загрузку на медленных модемах, широко использовавшихся в те времена;
  • на слабых машинах отображение PDF-документов осуществлялось с заметными задержками;
  • существовало несколько конкурирующих форматов, таких, как Envoy, Common Ground Digital Paper, Farallon Replica; даже собственный PostScript являлся конкурентом.

После того как Adobe выпустила бесплатную версию Acrobat Reader (позднее переименованную в Adobe Reader) для чтения PDF-документов, популярность этого формата стала возрастать. Формат PDF-файлов несколько раз изменялся и продолжает эволюционировать. Существует несколько спецификаций формата, последовательно расширяющих друг друга. Для каждой новой спецификации создаются новые версии программного обеспечения из пакета Adobe Acrobat. Ниже показана таблица соответствий версий документов и версий программ, в которых впервые была введена поддержка этих документов. Версию любого PDF-документа можно узнать по первым восьми байтам, открыв этот документ в текстовом режиме, например в блокноте.

Версии Adobe PDF

годверсия документановые возможностиверсия ПО
1993PDF 1.0Acrobat 1.0
1994PDF 1.1пароли, ссылки, потоки, независимая от устройства цветопередачаAcrobat 2.0
1996PDF 1.2интерактивные элементы, обработка событий мыши, мультимедийные типы, Юникод, улучшенное представление цвета и графикиAcrobat 3.0
1999PDF 1.3цифровые подписи, цветовые пространства ICC и DeviceN, JavaScriptAcrobat 4.0
2001PDF 1.4JBIG2, прозрачность, текстовый слой OCRAcrobat 5.0
2003PDF 1.5JPEG 2000, связанное мультимедиа, объектные потоки, перекрестные потоки, слоиAcrobat 6.0
2005PDF 1.6внедренное мультимедиа, 3D, XML-формы, AES-шифрованиеAcrobat 7.0
2006PDF 1.7Acrobat 8.0
2008PDF 1.7, AEL3AES-шифрование 256-битным ключомAcrobat 9.0
2009PDF 1.7, AEL5XFA 3.0Acrobat 9.1
2011PDF 1.7, AEL8Acrobat X (10)

Программы для работы с PDF

Создание

Чтение

Свободные:

Проприетарные:

Редактирование

Свободные:

Проприетарные:

Библиотеки для работы с PDF

C++

Свободные:

Java

Свободные:

  • Apache PDFBox — создание документов, слияние или разделение документа(ов), извлечения текста или другого контента из документа, печать, электронная подпись.
  • ICEpdf — просмотр и печать документов, преобразование в изображение, извлечения контента, поиск в документе.
  • IText — это библиотека классов для генерации, анализа и изменения документов в форматах Portable Document Format (PDF), а также XML, HTML и RTF.

Проприетарные:

  • jPedal — просмотр и обработка документов, извлечения контента.

Perl

Свободные модули:

  • PDF::API2 — этот модуль может создавать, модифицировать и просматривайте файлы PDF.
  • PDF::Create — этот модуль позволяет создавать PDF-документы с использованием ряда примитивов. Результатом является PDF-файл или поток.
  • CAM::PDF — этот модуль читает и записывает любой документ, соответствующий спецификации PDF, предоставленной Adobe.
  • Text::PDF — этот модуль позволяет напрямую взаимодействовать с существующими файлами PDF.
  • PDF::Tiny — этот модуль очень легкий (ограниченный) анализатор PDF.
  • PDF — библиотека для доступа к PDF и управления им в Perl.
  • и многие другие CPAN search PDF.

PHP

Свободные:

  • pdfparser — библиотека PHP для синтаксического анализа PDF файлов и извлечения таких элементов, как текст.

Примечания

  1. Формат PDF стал международным стандартом — lenta.ru
  2. ISO Ballot for PDF 1.7 Passed! — blogs.adobe.com Архивная копия от 14 ноября 2017 на Wayback Machine (англ.)
  3. Как технология MRC уменьшает размер PDF-документов
  4. Bah, T. Inkscape: Guide to a Vector Drawing Program. — Prentice Hall, 2011. — ISBN 9780132764148.
  5. Четыре в одном: обзор нового ABBYY FineReader 14 (рус.), 3DNews - Daily Digital Digest. Дата обращения 24 октября 2018.

Ссылки

  • PDF Specifications, including the PDF Reference for PDF 1.7, PDF 1.6 (ISBN 0-321-30474-8), PDF 1.5, PDF 1.4 (ISBN 0-201-75839-3), PDF 1.3 (ISBN 0-201-61588-6)
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.