Portable Document Format
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/75839.h… |
Медиафайлы на Викискладе |
Portable Document Format (PDF) — межплатформенный открытый формат электронных документов, изначально разработанный фирмой Adobe Systems в 1992 году с использованием ряда возможностей языка PostScript. В первую очередь предназначен для представления полиграфической продукции в электронном виде. Для просмотра существует множество программ, а также официальная бесплатная программа Adobe Reader. Значительное количество современного профессионального печатного оборудования имеет аппаратную поддержку формата PDF, что позволяет производить печать документов в данном формате без использования какого-либо программного обеспечения. Традиционным способом создания PDF-документов является виртуальный принтер, то есть документ как таковой готовится в своей специализированной программе — графической программе или текстовом редакторе, САПР и т. д., а затем экспортируется в формат PDF для распространения в электронном виде, передачи в типографию и т. п.
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 — Adobe Acrobat — такое ограничение имеет. Ограничения имеются и в других программах, обрабатывающих файлы PDF[4][5].
Размер страницы в документе PDF устанавливается параметром MediaBox раздела Page, а начиная с PDF 1.6 на размер страницы также влияет параметр UserUnit. (В спецификациях PDF до версии 1.6 размер базовой единицы пользовательского пространства задан в 1/72 дюйма. Начиная с версии 1.6 в стандарте появилась возможность задать её размер с помощью параметра UserUnit. )[4][5].
В Adobe Acrobat 7.0 размер стороны страницы в документе ограничен 15 миллионами дюймов, что равно 381 километру. Это ограничение является вторичным, оно основано на ограничению размера базовой единицы пользовательского пространства (англ. default user space unit) — параметра «UserUnit», максимальное значение которого составляет 75000 единиц по 1/72 дюйма[4][5].
В Acrobat Reader до версии 4.0 минимальный размер стороны страницы составляет 1 дюйм (72 единицы), а максимальный размер равен 45 дюймам (3240 единиц)[4][5].
В версиях Acrobat 5.0 и 6.× допустимые размеры сторон страницы составляют от приблизительно 0,04 дюйма (3 единицы, 1/24 дюйма) до 200 дюймов (14400 единиц)[4][5].
Acrobat Reader версии 7.0 поддерживает спецификацию PDF 1.6, эта версия программы поддерживает диапазон значений параметра UserUnit от 1 до 75000, что ограничивает стороны страницы диапазоном от 1/72 дюйма до 15 млн дюймов, максимальный размер стороны страницы при этом равен 381 километру[4][5].
Поставляемое с macOS приложение Preview вообще не обрабатывает параметр UserUnit файла PDF и воспринимает все документы PDF как будто в них единица пользовательского пространства равна 1/72 дюйма[4][5].
Редактирование PDF
Существуют специальные программы, позволяющие редактировать PDF-файлы, однако их выбор значительно меньше, чем программ для создания или просмотра PDF-документов.[]
Inkscape, начиная с версии 0.46, позволяет импортировать PDF и экспортировать в него благодаря использованию на промежуточном этапе программы Poppler[6].
В 2017 году функциональность по редактированию PDF была включена в программу ABBYY FineReader, до этого имеющей функции распознавания и конвертирования PDF в другие форматы[7].
История
В первое время существования данный формат был крайне непопулярен:
- программное обеспечение компании 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
Год | Версия документа | Новые возможности | Версия ПО |
---|---|---|---|
1993 | PDF 1.0 | Acrobat 1.0 | |
1994 | PDF 1.1 | пароли, ссылки, потоки, независимая от устройства цветопередача | Acrobat 2.0 |
1996 | PDF 1.2 | интерактивные элементы, обработка событий мыши, мультимедийные типы, Юникод, улучшенное представление цвета и графики | Acrobat 3.0 |
1999 | PDF 1.3 | цифровые подписи, цветовые пространства ICC и DeviceN, JavaScript | Acrobat 4.0 |
2001 | PDF 1.4 | JBIG2, прозрачность, текстовый слой OCR | Acrobat 5.0 |
2003 | PDF 1.5 | JPEG 2000, связанное мультимедиа, объектные потоки, перекрестные потоки, слои | Acrobat 6.0 |
2005 | PDF 1.6 | внедренное мультимедиа, 3D, XML-формы, AES-шифрование | Acrobat 7.0 |
2006 | PDF 1.7 | Acrobat 8.0 | |
2008 | PDF 1.7, AEL3 | AES-шифрование 256-битным ключом | Acrobat 9.0 |
2009 | PDF 1.7, AEL5 | XFA 3.0 | Acrobat 9.1 |
2011 | PDF 1.7, AEL8 | Acrobat X (10) |
Программы для работы с PDF
Создание
- LibreOffice Draw
- Microsoft Word 2007 SP2 и новее
- OpenOffice Writer
- PdfTeX (pdflatex) из популярного мега пакета LaTeX — макрорасширений системы компьютерной вёрстки TeX.
- Xara Designer Pro+
- Wondershare PDFelement
- Icecream PDF Editor
Чтение
- MuPDF[англ.]
- Evince
- Okular
- KPDF (разработка прекращена)
- SumatraPDF
- Mozilla Firefox
- Atril Document Viewer
- Xpdf
- Ghostview из пакета Ghostscript
- Google Chrome
- Браузеры, основанные на Chromium (Google Chrome, Microsoft Edge, Яндекс.Браузер)
- Adobe Reader (частично)
- ABBYY FineReader
- Foxit Reader
- PDF-XChange Viewer
- PDFMaster
- STDU Viewer
- Nitro Reader
Редактирование
Свободные:
- PDFmod (только Linux-системы)
- PDFsam
- OpenOffice Writer
- LibreOffice Draw
- PDFtk
- Okular
Проприетарные:
- Adobe Acrobat
- ABBYY FineReader
- Master PDF Editor
- Microsoft Word 2013 и новее
- FlexiPDF
- PDF-XChange Viewer (частично)
- Foxit PhantomPDF
- Nitro Pro
- Icecream PDF Editor
- Foxit Reader
- Master PDF Editor
- Wondershare PDFelement
- PDFChef
- WordPerfect
- PDF Candy
Библиотеки для работы с PDF
C
Свободные:
- Haru
Проприетарные:
- Adobe PDF Library SDK
C++
Свободные:
Java
Свободные:
- Apache PDFBox[англ.] — создание документов, слияние или разделение документа(ов), извлечения текста или другого контента из документа, печать, электронная подпись.
- ICEpdf — просмотр и печать документов, преобразование в изображение, извлечения контента, поиск в документе.
- IText — это библиотека классов для генерации, анализа и изменения документов в форматах PDF, а также XML, HTML и RTF.
Проприетарные:
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 файлов и извлечения таких элементов, как текст.
- mPDF — это библиотека PHP, которая создает PDF-файлы из HTML-кода UTF-8.
- PHPPdf — это библиотека, которая преобразует документ XML в документ PDF или графические файлы.
Примечания
- ↑ Формат PDF стал международным стандартом Архивная копия от 20 февраля 2008 на Wayback Machine — lenta.ru
- ↑ ISO Ballot for PDF 1.7 Passed! — blogs.adobe.com Архивная копия от 14 ноября 2017 на Wayback Machine (англ.)
- ↑ Как технология MRC уменьшает размер PDF-документов . Дата обращения: 27 октября 2011. Архивировано 3 ноября 2011 года.
- ↑ 1 2 3 4 5 6 7 Chan, A. W. Making a PDF that’s larger than Germany : [англ.] : [арх. 31 января 2024]. — 2024. — 31 January.
- ↑ 1 2 3 4 5 6 7 Чан, А. Создание PDF размером с Германию = Making a PDF that’s larger than Germany / Пер. с англ.: Дмитрий Брайт // RuVDS. — 2024. — 16 февраля.
- ↑ Bah, T. Inkscape : Guide to a Vector Drawing Program. — 4th ed. — Prentice Hall, 2011. — P. 112–113. — 473 p. — ISBN 978-0-13-276414-8.
- ↑ Крупин, А. Четыре в одном: обзор нового ABBYY FineReader 14 : [арх. 24 октября 2018] // 3DNews.
Ссылки
- 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)
- Portable Document Format в каталоге ссылок Curlie (dmoz)
- Что такое файл PDF/UA? // docs.fileformat.com. — Дата обращения: 09.06.2023.