Перейти к содержанию

iText

Материал из Википедии — свободной энциклопедии

iText
Тип Библиотека
Разработчик iText Group NV
Написана на Java
Операционная система Кроссплатформенное программное обеспечение
Дата выпуска 2000
Аппаратная платформа Java Virtual Machine
Последняя версия
Репозиторий github.com/itext/itext7
github.com/itext/itext7-…
Лицензия AGPL
Проприетарная
Сайт itextpdf.com (англ.)

iText — библиотека классов для генерации, анализа и изменения документов в форматах Portable Document Format (PDF), а также XML, HTML и RTF.

Начиная с версии 5 библиотека имеет двойную лицензию — AGPL (вынуждающую предоставлять пользователям полный исходный текст приложения) либо коммерческую. Однако исходный текст версии 4.2 доступен под лицензией MPL/LGPL[2]

Автор библиотеки Бруно Ловаги (Bruno Lowagie) в 1999 году работал в Гентском университете. Он столкнулся с тем, что для PDF-отчётов нет подходящей библиотеки, поэтому написал собственный движок. Первая публичная версия, iText 0.30, вышла 14 февраля 2000 года как опенсорс решение[3][4].

В 2007 году создатель Java Джеймс Гослинг выразил благодарность разработчикам iText в своём блоге[5].

Коммерциализация

[править | править код]

В 2008 году появилась компания 1T3XT BVBA, первая коммерческая организация вокруг проекта. Годом позже вышла версия 5.0.0 и вместе с ней версия для .NET на C# — iTextSharp; тогда же лицензия сменилась с MPL/LGPL на AGPL[3].

В 2015 году код переехал на GitHub[3].

Дальше сменились собственники. В 2018 году контрольный пакет акций приобрёл инвестиционный фонд Crescendo Equity Partners, а в 2022 году iText вошла в группу компаний PDFTron, которая в 2023 году стала называться Apryse[3].

iText 7 и дальнейшие версии

[править | править код]

В 2016 году вышла iText 7. Это полная переработка библиотеки с модульной архитектурой, не совместимая с iText 5[6]. Версии для Java и .NET с тех пор выпускаются под общим названием iText Core[3].

Позже появились iText 8 (2023) и iText 9.0 (2024)[3].

Сначала библиотека распространялась под MPL и LGPL. С 2009 года, с пятой версии, лицензий стало две: AGPL, которая требует открывать исходный код приложения, а также коммерческая для тех, кто хочет иначе[3]. Все версии до пятой остаются доступными под MPL/LGPL.

На основе версии 4.2.0 сделан форк OpenPDF, который развивается под LGPL/MPL[7].

Возможности

[править | править код]

Библиотека создаёт и изменяет документы PDF, работает с интерактивными формами AcroForm, ставит цифровые подписи, шифрует документы и делает штрихкоды[8].

Из стандартов поддерживаются PDF 1.7 (ISO 32000-1) и PDF 2.0 (ISO 32000-2), PDF/A для длительного хранения документов[9] и PDF/UA для доступности[10].

Применение iText

[править | править код]

Библиотека используется во многих проектах. Существует порт под платформу .NET Framework[11].

Примечания

[править | править код]
  1. ↑ Release 9.4.0 — 2025.
  2. ↑ Mirror of last iText release available under LGPL/MPL. Дата обращения: 8 апреля 2011. Архивировано 7 ноября 2014 года.
  3. 1 2 3 4 5 6 7 Our history (англ.). iText. Дата обращения: 18 октября 2026.
  4. ↑ Who is Bruno Lowagie? (англ.). Дата обращения: 18 октября 2026.
  5. ↑ Если в шаблоне {{cite web}} задаётся параметр archive-url=, должен задаваться и параметр archive-date=, и наоборот. Thanks to the iText folks (англ.). Oracle Blogs. Дата обращения: 18 октября 2026.
  6. ↑ iText 7 and iText 5: roadmaps, differences, updates (англ.). iText. Дата обращения: 18 октября 2026.
  7. ↑ OpenPDF (англ.). GitHub. Дата обращения: 18 октября 2026.
  8. ↑ iText Core (англ.). GitHub. Дата обращения: 18 октября 2026.
  9. ↑ Если в шаблоне {{cite web}} задаётся параметр archive-url=, должен задаваться и параметр archive-date=, и наоборот. How to create PDF/A-3 using iText (англ.). PDF Association (2013). Дата обращения: 18 октября 2026.
  10. ↑ iText bringing PDF/UA support to Java implementations (англ.). Duff Johnson (19 февраля 2013). Дата обращения: 18 октября 2026.
  11. ↑ iTextSharp на SourceForge. Дата обращения: 8 апреля 2011. Архивировано 21 октября 2013 года.

Литература

[править | править код]