Skip to content

Releases: LibrePDF/OpenPDF

OpenPDF 3.0.0

17 Aug 11:14
0423bae
Compare
Choose a tag to compare

OpenPDF 3.0.0

  • OpenPDF 3.0.0 uses the new package name org.openpdf. The old com.lowagie is now removed from OpenPDF 3.0.
    This means that source code using OpenPDF must be migrated to use import statements using org.openpdf.* package.

  • PDF 2.0 support in OpenPDF – This is a breaking API change:
    All version-related methods now use String instead of char as method parameters. See PdfVersion.java and PdfWriter.java.
    The default version is now PDF 2.0.

    About PDF 2.0:
    PDF 2.0 is the latest official version of the Portable Document Format, standardized as ISO 32000-2:2020.
    It was first published by the International Organization for Standardization (ISO) in July 2017, with a revised edition in December 2020.
    PDF 2.0 introduces improved color management, tagged PDF enhancements, advanced encryption options, and clarifies many ambiguous parts of the PDF 1.x specifications.

    📄 Read the PDF 2.0 (ISO 32000-2:2020) specification

  • Added HtmlToPdfBatchUtils and PdfBatchUtils, new batch utilities built on Java 21 virtual threads.
    These APIs improve throughput for HTML→PDF rendering and common PDF tasks such as merge, split, watermark, and encrypt.

The migration to new package name org.openpdf started in OpenPDF 2.4.0, while OpenPDF 3.0 is the first version of OpenPDF which fully uses the new package name.

What's Changed

Full Changelog: 2.4.0...3.0.0

OpenPDF 2.4.0

08 Aug 06:57
d63a498
Compare
Choose a tag to compare

OpenPDF 2.4.0 Release Notes

Highlights

  • Java package name change: All classes have been moved from com.lowagie to org.openpdf in the openpdf-core-modern module.
  • Module split: The openpdf submodule has been split (duplicated) into:
    • openpdf-core-legacy – all classes here are deprecated.
    • openpdf-core-modern – actively maintained and used by all submodules.

See 2.4.0 migration guide for details.


What's Changed

Major Changes

  • Module restructuring:

  • New features:

    • Added flag in ColumnText to control whether words are chopped, or to throw an exception instead of arbitrarily chopping long words.
      #1379@csimoes1
    • Added TU and ALT fields to signature object.
      #1386@MaSchmidt1999
  • Performance improvements:

    • Register fonts only once in a static block instead of on every constructor call.
      #1373@giangianoulas
  • Code cleanup:

    • Removed commented-out code and unnecessary System.out.println calls.
      #1364@andreasrosdal

Dependency Updates

  • org.sonatype.central:central-publishing-maven-plugin 0.7.0 → 0.8.0
  • com.puppycrawl.tools:checkstyle 10.25.0 → 11.0.0 (multiple incremental updates)
  • org.jetbrains.kotlin:kotlin-stdlib 2.1.21 → 2.2.0
  • org.jetbrains.kotlin:kotlin-maven-plugin 2.1.21 → 2.2.0
  • junit.version 5.13.1 → 5.13.4
  • com.google.errorprone:error_prone_annotations 2.38.0 → 2.41.0
  • org.dom4j:dom4j 2.1.4 → 2.2.0
  • org.apache.maven.plugins:maven-gpg-plugin 3.2.7 → 3.2.8
  • org.verapdf:validation-model 1.28.1 → 1.28.2
  • commons-io:commons-io 2.19.0 → 2.20.0
  • org.htmlunit:neko-htmlunit 4.13.0 → 4.14.0

New Contributors


We will soon begin on the OpenPDF 3.0 version which uses only the org.openpdf package name.


Full Changelog: 2.2.4 → 2.4.0

OpenPDF 2.2.4

02 Jul 08:38
6a53cc7
Compare
Choose a tag to compare

What's Changed

  • Bump org.sonatype.central:central-publishing-maven-plugin from 0.7.0 to 0.8.0 by @dependabot in #1363
  • Remove commented out code and some system.out.println by @andreasrosdal in #1364
  • Bump com.puppycrawl.tools:checkstyle from 10.25.0 to 10.25.1 by @dependabot in #1371
  • Register font only once in static block instead on every constructor … by @giangianoulas in #1373
  • Bump org.jetbrains.kotlin:kotlin-stdlib from 2.1.21 to 2.2.0 by @dependabot in #1375
  • Bump org.jetbrains.kotlin:kotlin-maven-plugin from 2.1.21 to 2.2.0 by @dependabot in #1374
  • Bump junit.version from 5.13.1 to 5.13.2 by @dependabot in #1376
  • Bump com.google.errorprone:error_prone_annotations from 2.38.0 to 2.39.0 by @dependabot in #1378
  • Bump com.puppycrawl.tools:checkstyle from 10.25.1 to 10.26.0 by @dependabot in #1377
  • Add flag to ColumnText to control if words are chopped or Throw exception instead of arbitrarily chopping long words#1297 by @csimoes1 in #1379
  • Bump com.puppycrawl.tools:checkstyle from 10.26.0 to 10.26.1 by @dependabot in #1380

New Contributors

Full Changelog: 2.2.3...2.2.4

OpenPDF 2.2.3

18 Jun 09:53
1625ea0
Compare
Choose a tag to compare

What's Changed

  • Fix for minor biug in openpdf-html #1361

Full Changelog: 2.2.2...2.2.3

OpenPDF 2.2.2

16 Jun 10:47
Compare
Choose a tag to compare

What's Changed

  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.11.2 by @dependabot in #1358
  • Rename openpdf-html config file til openpdf.conf and some minor fixes by @andreasrosdal in #1360
  • Remove GenShinGothic-Normal.ttf in order to reduce overall full zip file size from 21MB to 15MB.

Full Changelog: 2.2.1...2.2.2

2.2.1

15 Jun 18:31
Compare
Choose a tag to compare

News in OpenPDF 2.2.1

2.2.0

14 Jun 20:54
Compare
Choose a tag to compare

OpenPDF 2.2.0 Released!

We’re excited to announce the release of OpenPDF 2.2.0, a new milestone in our ongoing mission to build a modern, fully open-source PDF library for Java.

What's New

openpdf-renderer Module Added (#1357)

We’ve added a brand new module: openpdf-renderer.

This module integrates the openpdf-renderer engine into OpenPDF, enabling:

  • High-quality PDF rendering to images
  • Fast page previews and thumbnails
  • Support for converting PDF pages to BufferedImage for use in Java applications

It’s perfect for developers who need visual previews of PDFs in desktop or server-side applications.


Maven Coordinates:

<dependency>
  <groupId>com.github.librepdf</groupId>
  <artifactId>openpdf</artifactId>
  <version>2.2.0</version>
</dependency>

2.1.0

14 Jun 12:29
Compare
Choose a tag to compare

OpenPDF 2.1.0 - Modernization and New Features

We are excited to announce the release of OpenPDF 2.1.0, which marks a major step forward for the project.

  • Java 21 required: OpenPDF 2.1.0 now targets Java 21 LTS and benefits from its modern features and performance improvements. Java 21 was released in 2023.

  • New Kotlin module openpdf-kotlin Build PDFs more easily using idiomatic Kotlin APIs and a DSL-inspired builder interface.

  • Added openpdf-html module: A maintained fork of Flying Saucer for converting HTML to PDF, now part of the OpenPDF project. The goal is to improve HTML5 and modern CSS support.

  • Deprecated HtmlParser We encourage migrating to openpdf-html for improved HTML rendering.

  • Updated dependencies.

Full Changelog: 2.0.5...2.1.0

OpenPDF 2.0.5

26 May 21:04
6698dc8
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 2.0.4...2.0.5

2.0.4

20 May 10:14
c9ce074
Compare
Choose a tag to compare

What's Changed

🛠️ Major Fixes and Features

✅ Improvements & Minor Fixes

📦 Dependency Updates

  • Bump maven-surefire-plugin.version from 3.3.0 → 3.3.1 #1200
  • Bump org.hamcrest:hamcrest from 2.2 → 3.0 #1201
  • Bump org.assertj:assertj-core from 3.26.0 → 3.26.3 #1202
  • Bump junit.version from 5.10.2 → 5.10.3 #1204
  • Bump maven-javadoc-plugin from 3.7.0 → 3.11.1 #1231
  • Bump junit.version from 5.10.3 → 5.11.3 #1236
  • Bump commons-io:commons-io from 2.16.1 → 2.18.0 #1237
  • Bump icu4j from 75.1 → 76.1 #1238
  • Bump fop from 2.9 → 2.10 #1239
  • Bump checkstyle from 10.17.0 → 10.20.1 #1240
  • Bump maven-jxr-plugin from 3.4.0 → 3.6.0 #1242
  • Bump maven-site-plugin from 3.12.1 → 3.21.0 #1243
  • Bump maven-gpg-plugin from 3.2.4 → 3.2.7 #1244
  • Bump maven-surefire-plugin.version from 3.3.1 → 3.5.2 #1245
  • Bump bouncycastle.version from 1.78.1 → 1.79 #1246
  • Bump commons-io:commons-io from 2.18.0 → 2.19.0 #1305
  • Bump fop from 2.10 → 2.11 #1303
  • Bump maven-bundle-plugin from 5.1.9 → 6.0.0 #1302
  • Bump maven-compiler-plugin from 3.13.0 → 3.14.0 #1301
  • Bump maven-javadoc-plugin from 3.11.1 → 3.11.2 #1304
  • Bump maven-surefire-plugin.version from 3.5.2 → 3.5.3 #1309
  • Bump maven-clean-plugin from 3.4.0 → 3.4.1 #1312
  • Bump validation-model from 1.26.1 → 1.28.1 #1311
  • Bump icu4j from 76.1 → 77.1 #1313
  • Bump maven-checkstyle-plugin from 3.4.0 → 3.6.0 #1310
  • Bump checkstyle from 10.20.1 → 10.23.1 #1314
  • Bump bouncycastle.version from 1.79 → 1.80 #1316
  • Bump pitest-junit5-plugin from 1.2.1 → 1.2.2 #1315
  • Bump junit.version from 5.11.3 → 5.12.2 #1318
  • Bump assertj-core from 3.26.3 → 3.27.3 #1317
  • Bump jacoco-maven-plugin from 0.8.12 → 0.8.13 #1320

🧑‍💻 New Contributors


Full Changelog: 2.0.3...2.0.4