getFields() {
return new LinkedHashMap<>(fields);
}
+ /**
+ * Gets particular json object field.
+ *
+ * @param fieldName {@link String} name of the field
+ *
+ * @return field as {@link JsonValue}
+ */
+ public JsonValue getField(String fieldName) {
+ return fields.get(fieldName);
+ }
+
/**
* Adds a new field into json object.
*
diff --git a/commons/src/main/java/com/itextpdf/commons/json/JsonString.java b/commons/src/main/java/com/itextpdf/commons/json/JsonString.java
index 30e1669019..c936be72a2 100644
--- a/commons/src/main/java/com/itextpdf/commons/json/JsonString.java
+++ b/commons/src/main/java/com/itextpdf/commons/json/JsonString.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/json/JsonValue.java b/commons/src/main/java/com/itextpdf/commons/json/JsonValue.java
index 095daae5fd..69d11ed4e1 100644
--- a/commons/src/main/java/com/itextpdf/commons/json/JsonValue.java
+++ b/commons/src/main/java/com/itextpdf/commons/json/JsonValue.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/json/JsonValueConverter.java b/commons/src/main/java/com/itextpdf/commons/json/JsonValueConverter.java
index 4828314506..17dfdc2589 100644
--- a/commons/src/main/java/com/itextpdf/commons/json/JsonValueConverter.java
+++ b/commons/src/main/java/com/itextpdf/commons/json/JsonValueConverter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/json/JsonValueDeserializer.java b/commons/src/main/java/com/itextpdf/commons/json/JsonValueDeserializer.java
index cb0a058aeb..157fb04bc6 100644
--- a/commons/src/main/java/com/itextpdf/commons/json/JsonValueDeserializer.java
+++ b/commons/src/main/java/com/itextpdf/commons/json/JsonValueDeserializer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/json/JsonValueSerializer.java b/commons/src/main/java/com/itextpdf/commons/json/JsonValueSerializer.java
index dd73e24ec2..4e962c5588 100644
--- a/commons/src/main/java/com/itextpdf/commons/json/JsonValueSerializer.java
+++ b/commons/src/main/java/com/itextpdf/commons/json/JsonValueSerializer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/logs/CommonsLogMessageConstant.java b/commons/src/main/java/com/itextpdf/commons/logs/CommonsLogMessageConstant.java
index b9580561d2..36e5fd09dd 100644
--- a/commons/src/main/java/com/itextpdf/commons/logs/CommonsLogMessageConstant.java
+++ b/commons/src/main/java/com/itextpdf/commons/logs/CommonsLogMessageConstant.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/Action.java b/commons/src/main/java/com/itextpdf/commons/utils/Action.java
index f3728bbfe5..2f76b69678 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/Action.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/Action.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/DIContainer.java b/commons/src/main/java/com/itextpdf/commons/utils/DIContainer.java
index c8492602fa..87b51fac48 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/DIContainer.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/DIContainer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/DIContainerConfigurations.java b/commons/src/main/java/com/itextpdf/commons/utils/DIContainerConfigurations.java
index 8237a57b99..511f112226 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/DIContainerConfigurations.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/DIContainerConfigurations.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/DateTimeUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/DateTimeUtil.java
index 31386c9785..2a8da6c0f7 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/DateTimeUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/DateTimeUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -28,6 +28,7 @@ This file is part of the iText (R) project.
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
+import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
@@ -58,6 +59,17 @@ public static double getUtcMillisFromEpoch(Calendar calendar) {
return calendar.getTimeInMillis();
}
+ /**
+ * Gets the {@link LocalDateTime} from UTC seconds from the epoch.
+ *
+ * @param epochSecond the UTC milliseconds from the epoch
+ *
+ * @return local time from UTC seconds
+ */
+ public static LocalDateTime ofEpochSecondUTC(long epochSecond) {
+ return LocalDateTime.ofInstant(Instant.ofEpochSecond(epochSecond), ZoneOffset.UTC);
+ }
+
/**
* Gets the date as {@link Calendar}.
*
@@ -94,6 +106,16 @@ public static Date getCurrentTimeDate() {
return new Date();
}
+
+ /**
+ * Gets local current time consistently.
+ *
+ * @return {@link LocalDateTime} at which it was allocated, measured to the nearest millisecond
+ */
+ public static LocalDateTime getLocalDateTime() {
+ return LocalDateTime.now();
+ }
+
/**
* Adds the specified amount of days to the given calendar field.
*
@@ -202,6 +224,30 @@ public static Date parse(String date, String format) {
}
}
+ /**
+ * Parses date with specified format into {@link LocalDateTime}.
+ *
+ * @param date {@link String} date to parse
+ * @param format {@link String} parsing format
+ *
+ * @return {@link LocalDateTime} parsed date
+ */
+ public static LocalDateTime parseToLocalDateTime(String date, String format) {
+ return DateTimeFormatter.ofPattern(format).parse(date, LocalDateTime::from);
+ }
+
+ /**
+ * Parses {@link LocalDateTime} local date time according to specified format.
+ *
+ * @param dateTime {@link LocalDateTime} to parse
+ * @param format {@link String} parsing format
+ *
+ * @return parse date time as {@link String}
+ */
+ public static String parseLocalDateTime(LocalDateTime dateTime, String format) {
+ return dateTime.format(DateTimeFormatter.ofPattern(format));
+ }
+
/**
* Format passing date with default yyyy-MM-dd pattern.
*
@@ -278,6 +324,18 @@ public static Date createUtcDateTime(int year, int month, int day, int hour, int
return calendar.getTime();
}
+ /**
+ * Serialize time using format YYYY-MM-DDTHH-MM-SS
+ *
+ * @param dateTime local time to be converted
+ *
+ * @return serialized time
+ */
+ public static String serializeDateToISO8601(LocalDateTime dateTime) {
+ return String.format("%04d-%02d-%02dT%02d:%02d:%02d", dateTime.getYear(), dateTime.getMonthValue(),
+ dateTime.getDayOfMonth(), dateTime.getHour(), dateTime.getMinute(), dateTime.getSecond());
+ }
+
private static DateFormat initParserSDF(String pattern) {
final SimpleDateFormat parserSDF = new SimpleDateFormat(pattern);
parserSDF.setCalendar(new GregorianCalendar());
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/EncodingUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/EncodingUtil.java
index ef5cfbdb09..0bb600ac9f 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/EncodingUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/EncodingUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/FileUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/FileUtil.java
index be01b47789..815c737a02 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/FileUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/FileUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/IOThrowingAction.java b/commons/src/main/java/com/itextpdf/commons/utils/IOThrowingAction.java
index 6ab5466d70..8ce513afbd 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/IOThrowingAction.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/IOThrowingAction.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/JsonUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/JsonUtil.java
index 19ba460b4c..84b91b63f0 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/JsonUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/JsonUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/MapUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/MapUtil.java
index 857a223a20..f57557ca54 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/MapUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/MapUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/MessageFormatUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/MessageFormatUtil.java
index a9f0562524..317254c25b 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/MessageFormatUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/MessageFormatUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -40,6 +40,8 @@ private MessageFormatUtil() {
* Indexed arguments can be referred with {index},
* to escape curly braces you have to double them.
*
+ * Warning!: Do not use this method in a performance sensitive context.
+ *
*
* Only basic escaping is allowed, single quotes in a set of curly braces are not supported and
* multiple escaped braces in a row are also not supported
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/MultiThreadingUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/MultiThreadingUtil.java
index 8fa8af495d..f5a9f56718 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/MultiThreadingUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/MultiThreadingUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/Pair.java b/commons/src/main/java/com/itextpdf/commons/utils/Pair.java
index 59ead35d91..63bf4474b9 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/Pair.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/Pair.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/PlaceHolderTextUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/PlaceHolderTextUtil.java
index e65391ba09..b0afd7aa36 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/PlaceHolderTextUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/PlaceHolderTextUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/ProcessInfo.java b/commons/src/main/java/com/itextpdf/commons/utils/ProcessInfo.java
index d182de9b96..e2fb982358 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/ProcessInfo.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/ProcessInfo.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/RuntimeUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/RuntimeUtil.java
index b88cedae67..f41fbacce7 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/RuntimeUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/RuntimeUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/StringNormalizer.java b/commons/src/main/java/com/itextpdf/commons/utils/StringNormalizer.java
index 19f5b0a680..0321525008 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/StringNormalizer.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/StringNormalizer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/StringSplitUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/StringSplitUtil.java
index 2c27f2b1b6..77ee6c290c 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/StringSplitUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/StringSplitUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/SystemUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/SystemUtil.java
index cedee2e53e..4fe7c91785 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/SystemUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/SystemUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/ThrowingAction.java b/commons/src/main/java/com/itextpdf/commons/utils/ThrowingAction.java
index 49553abd1b..2b4bf5f470 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/ThrowingAction.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/ThrowingAction.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/ThrowingSupplier.java b/commons/src/main/java/com/itextpdf/commons/utils/ThrowingSupplier.java
index 459c2f6bfd..125e9e782e 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/ThrowingSupplier.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/ThrowingSupplier.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/TimerUtil.java b/commons/src/main/java/com/itextpdf/commons/utils/TimerUtil.java
index a2287e619d..12f79aab89 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/TimerUtil.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/TimerUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/ZipFileReader.java b/commons/src/main/java/com/itextpdf/commons/utils/ZipFileReader.java
index c7fd112f32..89ecc0c7b4 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/ZipFileReader.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/ZipFileReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/main/java/com/itextpdf/commons/utils/ZipFileWriter.java b/commons/src/main/java/com/itextpdf/commons/utils/ZipFileWriter.java
index ada7e3e623..6a3fe931ad 100644
--- a/commons/src/main/java/com/itextpdf/commons/utils/ZipFileWriter.java
+++ b/commons/src/main/java/com/itextpdf/commons/utils/ZipFileWriter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/sharpenconfig/java/com/itextpdf/commons/BCWrappersConfigurationUtils.java b/commons/src/sharpenconfig/java/com/itextpdf/commons/BCWrappersConfigurationUtils.java
index 2e26d3a51a..922b32c319 100644
--- a/commons/src/sharpenconfig/java/com/itextpdf/commons/BCWrappersConfigurationUtils.java
+++ b/commons/src/sharpenconfig/java/com/itextpdf/commons/BCWrappersConfigurationUtils.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/sharpenconfig/java/com/itextpdf/commons/SharpenConfigMapping.java b/commons/src/sharpenconfig/java/com/itextpdf/commons/SharpenConfigMapping.java
index f1de4b68b1..8548efddcd 100644
--- a/commons/src/sharpenconfig/java/com/itextpdf/commons/SharpenConfigMapping.java
+++ b/commons/src/sharpenconfig/java/com/itextpdf/commons/SharpenConfigMapping.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -150,6 +150,7 @@ public void applyMappingConfiguration(MappingConfigurator configurator) {
configurator.mapMethod("com.itextpdf.commons.utils.DateTimeUtil.addDaysToDate", "AddDays");
configurator.mapMethod("com.itextpdf.commons.utils.DateTimeUtil.addYearsToDate", "AddYears");
configurator.mapMethod("com.itextpdf.commons.utils.DateTimeUtil.getCurrentTimeDate", "GetCurrentUtcTime");
+ configurator.mapMethod("com.itextpdf.commons.utils.DateTimeUtil.getLocalDateTime", "GetCurrentTime");
configurator.mapMethod("java.time.LocalDateTime.of", "iText.Commons.Utils.DateTimeUtil.CreateDateTime");
configurator.mapMethod("java.nio.file.Files.newInputStream", "iText.Commons.Utils.FileUtil.GetInputStreamForFile");
diff --git a/commons/src/sharpenconfig/java/com/itextpdf/commons/UseBCWrappersModuleOption.java b/commons/src/sharpenconfig/java/com/itextpdf/commons/UseBCWrappersModuleOption.java
index 0e3a7348b6..487618da38 100644
--- a/commons/src/sharpenconfig/java/com/itextpdf/commons/UseBCWrappersModuleOption.java
+++ b/commons/src/sharpenconfig/java/com/itextpdf/commons/UseBCWrappersModuleOption.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedEventHandlerTest.java b/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedEventHandlerTest.java
index 0f253e1ce5..40b13ceb1e 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedEventHandlerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedEventHandlerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedITextEventTest.java b/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedITextEventTest.java
index d978887335..4d84aad462 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedITextEventTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/AbstractContextBasedITextEventTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/AbstractITextConfigurationEventTest.java b/commons/src/test/java/com/itextpdf/commons/actions/AbstractITextConfigurationEventTest.java
index 24fcb02235..a77594f7f9 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/AbstractITextConfigurationEventTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/AbstractITextConfigurationEventTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/AbstractProductITextEventTest.java b/commons/src/test/java/com/itextpdf/commons/actions/AbstractProductITextEventTest.java
index 7bcec5396d..89d6d7c83d 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/AbstractProductITextEventTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/AbstractProductITextEventTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/AbstractStatisticsEventTest.java b/commons/src/test/java/com/itextpdf/commons/actions/AbstractStatisticsEventTest.java
index 72d256be9c..ce226dc8e0 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/AbstractStatisticsEventTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/AbstractStatisticsEventTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/EventManagerTest.java b/commons/src/test/java/com/itextpdf/commons/actions/EventManagerTest.java
index 2bcb5027cd..098c206892 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/EventManagerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/EventManagerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerIntegrationTest.java b/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerIntegrationTest.java
index 4a995844bf..f8d75e9f7b 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerIntegrationTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerTest.java b/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerTest.java
index c0ced4bb3c..5e0d18c4e4 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/ProductEventHandlerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/ProductProcessorFactoryKeeperTest.java b/commons/src/test/java/com/itextpdf/commons/actions/ProductProcessorFactoryKeeperTest.java
index c086e1110c..c7efdaa320 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/ProductProcessorFactoryKeeperTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/ProductProcessorFactoryKeeperTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/confirmations/ConfirmEventTest.java b/commons/src/test/java/com/itextpdf/commons/actions/confirmations/ConfirmEventTest.java
index 0c639454b8..a87438a72d 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/confirmations/ConfirmEventTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/confirmations/ConfirmEventTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/contexts/ContextManagerTest.java b/commons/src/test/java/com/itextpdf/commons/actions/contexts/ContextManagerTest.java
index 5920ceea5d..c8c80924da 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/contexts/ContextManagerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/contexts/ContextManagerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/data/CommonsProductDataTest.java b/commons/src/test/java/com/itextpdf/commons/actions/data/CommonsProductDataTest.java
index e046db4d9d..17afcb3ef3 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/data/CommonsProductDataTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/data/CommonsProductDataTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/data/ProductDataTest.java b/commons/src/test/java/com/itextpdf/commons/actions/data/ProductDataTest.java
index ca84f68228..4dcf68df66 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/data/ProductDataTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/data/ProductDataTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultITextProductEventProcessorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultITextProductEventProcessorTest.java
index 2358797041..ba6b9df441 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultITextProductEventProcessorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultITextProductEventProcessorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultProductProcessorFactoryTest.java b/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultProductProcessorFactoryTest.java
index 78784c0795..f4fce85201 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultProductProcessorFactoryTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/processors/DefaultProductProcessorFactoryTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplITextProductEventProcessorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplITextProductEventProcessorTest.java
index 327a7375e1..8a22ed24cb 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplITextProductEventProcessorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplITextProductEventProcessorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplProductProcessorFactoryTest.java b/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplProductProcessorFactoryTest.java
index 1c8524d43f..efc5b5382f 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplProductProcessorFactoryTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/processors/UnderAgplProductProcessorFactoryTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightSincePlaceholderPopulatorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightSincePlaceholderPopulatorTest.java
index 1251c9a25b..7ebde533dc 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightSincePlaceholderPopulatorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightSincePlaceholderPopulatorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightToPlaceholderPopulatorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightToPlaceholderPopulatorTest.java
index 0257ee666d..3bd70b6f4e 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightToPlaceholderPopulatorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/producer/CopyrightToPlaceholderPopulatorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/producer/CurrentDatePlaceholderPopulatorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/producer/CurrentDatePlaceholderPopulatorTest.java
index 489cfa683b..214e506a7d 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/producer/CurrentDatePlaceholderPopulatorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/producer/CurrentDatePlaceholderPopulatorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/producer/ProducerBuilderTest.java b/commons/src/test/java/com/itextpdf/commons/actions/producer/ProducerBuilderTest.java
index f7834ea644..7797ea8c7b 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/producer/ProducerBuilderTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/producer/ProducerBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/producer/UsedProductsPlaceholderPopulatorTest.java b/commons/src/test/java/com/itextpdf/commons/actions/producer/UsedProductsPlaceholderPopulatorTest.java
index 8cd8c5d783..444db16dd5 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/producer/UsedProductsPlaceholderPopulatorTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/producer/UsedProductsPlaceholderPopulatorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdManagerTest.java b/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdManagerTest.java
index 475edcf035..e0afc01992 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdManagerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdManagerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdTest.java b/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdTest.java
index 5a5087760f..ee625c491c 100644
--- a/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/actions/sequence/SequenceIdTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/BiMapTest.java b/commons/src/test/java/com/itextpdf/commons/datastructures/BiMapTest.java
index 772c643a1c..1e35e2d421 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/BiMapTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/BiMapTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentHashSetTest.java b/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentHashSetTest.java
index a56fd4e036..0901dfc5e3 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentHashSetTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentHashSetTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -152,4 +152,16 @@ public void hashCodeTest() {
anotherSet.add("2");
Assertions.assertNotEquals(set.hashCode(), anotherSet.hashCode());
}
-}
\ No newline at end of file
+
+ @Test
+ public void toArrayTest() {
+ ConcurrentHashSet set = new ConcurrentHashSet<>();
+ set.add("1");
+ set.add("2");
+
+ Object[] arr = set.toArray();
+ Assertions.assertEquals(2, arr.length);
+ Assertions.assertTrue(arr[0].equals("1") || arr[0].equals("2"));
+ Assertions.assertTrue(arr[1].equals("1") || arr[1].equals("2"));
+ }
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentWeakMapTest.java b/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentWeakMapTest.java
index 2108ea1444..c74ca6dcaa 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentWeakMapTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/ConcurrentWeakMapTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/Tuple2Test.java b/commons/src/test/java/com/itextpdf/commons/datastructures/Tuple2Test.java
index e2f6257ceb..ac0742e3dc 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/Tuple2Test.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/Tuple2Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/portable/NullUnlimitedListTest.java b/commons/src/test/java/com/itextpdf/commons/datastructures/portable/NullUnlimitedListTest.java
index 108323dfbc..df37a0164c 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/portable/NullUnlimitedListTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/portable/NullUnlimitedListTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -236,4 +236,4 @@ public void executeActions(List>> actionList) {
}
-}
\ No newline at end of file
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/datastructures/portable/SimpleArrayListTest.java b/commons/src/test/java/com/itextpdf/commons/datastructures/portable/SimpleArrayListTest.java
index c2fd3602a6..47961486ee 100644
--- a/commons/src/test/java/com/itextpdf/commons/datastructures/portable/SimpleArrayListTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/datastructures/portable/SimpleArrayListTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -113,4 +113,4 @@ public void isEmpty() {
list.add(1);
assertFalse(list.isEmpty());
}
-}
\ No newline at end of file
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/ecosystem/ITextTestEvent.java b/commons/src/test/java/com/itextpdf/commons/ecosystem/ITextTestEvent.java
index 2c2571ca0b..421c61b8a3 100644
--- a/commons/src/test/java/com/itextpdf/commons/ecosystem/ITextTestEvent.java
+++ b/commons/src/test/java/com/itextpdf/commons/ecosystem/ITextTestEvent.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/ecosystem/TestConfigurationEvent.java b/commons/src/test/java/com/itextpdf/commons/ecosystem/TestConfigurationEvent.java
index a0e9b7a272..5eeb32184d 100644
--- a/commons/src/test/java/com/itextpdf/commons/ecosystem/TestConfigurationEvent.java
+++ b/commons/src/test/java/com/itextpdf/commons/ecosystem/TestConfigurationEvent.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/ecosystem/TestMetaInfo.java b/commons/src/test/java/com/itextpdf/commons/ecosystem/TestMetaInfo.java
index 987422ab02..42d3637742 100644
--- a/commons/src/test/java/com/itextpdf/commons/ecosystem/TestMetaInfo.java
+++ b/commons/src/test/java/com/itextpdf/commons/ecosystem/TestMetaInfo.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/exceptions/AggregatedExceptionTest.java b/commons/src/test/java/com/itextpdf/commons/exceptions/AggregatedExceptionTest.java
index 9cab431631..e03ccb5dd0 100644
--- a/commons/src/test/java/com/itextpdf/commons/exceptions/AggregatedExceptionTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/exceptions/AggregatedExceptionTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/exceptions/ITextExceptionTest.java b/commons/src/test/java/com/itextpdf/commons/exceptions/ITextExceptionTest.java
index 8f71c97a90..8e6cd353c0 100644
--- a/commons/src/test/java/com/itextpdf/commons/exceptions/ITextExceptionTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/exceptions/ITextExceptionTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/json/JsonTest.java b/commons/src/test/java/com/itextpdf/commons/json/JsonTest.java
index 0a4b7e8b3f..a0f9b5bb6c 100644
--- a/commons/src/test/java/com/itextpdf/commons/json/JsonTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/json/JsonTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/Base64Test.java b/commons/src/test/java/com/itextpdf/commons/utils/Base64Test.java
index 93ce56e56b..4e39a3ad4c 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/Base64Test.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/Base64Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/DIContainerTest.java b/commons/src/test/java/com/itextpdf/commons/utils/DIContainerTest.java
index b049c1ab1b..94002d4e21 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/DIContainerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/DIContainerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/DateTimeUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/DateTimeUtilTest.java
index 3a4deba0c4..560408a88c 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/DateTimeUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/DateTimeUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -24,6 +24,7 @@ This file is part of the iText (R) project.
import com.itextpdf.test.ExtendedITextTest;
+import java.time.LocalDateTime;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
@@ -122,4 +123,35 @@ public void addYearNegativeValueTest () {
Assertions.assertEquals(1997, newDate.getYear());
}
+
+ @Test
+ public void serializeDateToISO8601Test () {
+ LocalDateTime localDateTime = LocalDateTime.of(2000, 1, 11, 12, 13, 14);
+ String actualString = DateTimeUtil.serializeDateToISO8601(localDateTime);
+ Assertions.assertEquals("2000-01-11T12:13:14", actualString);
+ }
+
+ @Test
+ public void ofEpochSecondUTCTest () {
+ //actual time 2001-09-09T01:46:40
+ long timeInSeconds = 1000000000;
+ LocalDateTime actualTime = DateTimeUtil.ofEpochSecondUTC(timeInSeconds);
+ Assertions.assertEquals(2001, actualTime.getYear());
+ Assertions.assertEquals(9, actualTime.getMonthValue());
+ Assertions.assertEquals(9, actualTime.getDayOfMonth());
+ Assertions.assertEquals(1, actualTime.getHour());
+ Assertions.assertEquals(46, actualTime.getMinute());
+ Assertions.assertEquals(40, actualTime.getSecond());
+ }
+
+ @Test
+ public void getLocalDateTimeTest () throws InterruptedException {
+ LocalDateTime expectedTime = LocalDateTime.now();
+ Thread.sleep(10);
+ LocalDateTime actualTime = DateTimeUtil.getLocalDateTime();
+ Assertions.assertEquals(expectedTime.getYear(), actualTime.getYear());
+ Assertions.assertEquals(expectedTime.getMonth(), actualTime.getMonth());
+ Assertions.assertEquals(expectedTime.getDayOfMonth(), actualTime.getDayOfMonth());
+ Assertions.assertTrue(expectedTime.isBefore(actualTime));
+ }
}
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/FileUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/FileUtilTest.java
index 74b8a2af28..4701a45144 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/FileUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/FileUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -72,4 +72,4 @@ public void getFileOutputStreamTest() throws IOException {
byte[] resultBytes = Files.readAllBytes(Paths.get(filePath));
Assertions.assertEquals(text, new String(resultBytes, StandardCharsets.UTF_8));
}
-}
\ No newline at end of file
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/JsonUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/JsonUtilTest.java
index b61c554567..b7231898ac 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/JsonUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/JsonUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/MapUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/MapUtilTest.java
index 6b6e93ea8f..fcc2c87a6b 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/MapUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/MapUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/MessageFormatUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/MessageFormatUtilTest.java
index 65d3bcd0f1..71d57a1e1a 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/MessageFormatUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/MessageFormatUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/MultiThreadingUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/MultiThreadingUtilTest.java
index fa193e1da5..31f2557b4e 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/MultiThreadingUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/MultiThreadingUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -44,4 +44,4 @@ public void simpleTest() {
assertNotNull(result);
assertNotNull(result.get(0));
}
-}
\ No newline at end of file
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/PlaceHolderTextUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/PlaceHolderTextUtilTest.java
index e8d225d5d3..246168c790 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/PlaceHolderTextUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/PlaceHolderTextUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/ProcessInfoTest.java b/commons/src/test/java/com/itextpdf/commons/utils/ProcessInfoTest.java
index 598ac2d1b4..d91755b0e1 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/ProcessInfoTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/ProcessInfoTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/RuntimeUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/RuntimeUtilTest.java
index dccae48068..9770041432 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/RuntimeUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/RuntimeUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -46,4 +46,4 @@ void isClassNotLoaded() {
"The NonExistentClass should not be loaded"
);
}
-}
\ No newline at end of file
+}
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/StringNormalizerTest.java b/commons/src/test/java/com/itextpdf/commons/utils/StringNormalizerTest.java
index 56fea18f5a..2c8416c148 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/StringNormalizerTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/StringNormalizerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/StringUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/StringUtilTest.java
index 1efa13b487..ca6eda51ce 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/StringUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/StringUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/SystemUtilTest.java b/commons/src/test/java/com/itextpdf/commons/utils/SystemUtilTest.java
index 79b707be4f..53f9cca5bd 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/SystemUtilTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/SystemUtilTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/ZipFileReaderTest.java b/commons/src/test/java/com/itextpdf/commons/utils/ZipFileReaderTest.java
index dbbb48d6d5..5d4dea173f 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/ZipFileReaderTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/ZipFileReaderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/commons/src/test/java/com/itextpdf/commons/utils/ZipFileWriterTest.java b/commons/src/test/java/com/itextpdf/commons/utils/ZipFileWriterTest.java
index 533f2f3656..b26dee2dec 100644
--- a/commons/src/test/java/com/itextpdf/commons/utils/ZipFileWriterTest.java
+++ b/commons/src/test/java/com/itextpdf/commons/utils/ZipFileWriterTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/font-asian/pom.xml b/font-asian/pom.xml
index c8703c770f..69b6c251ac 100644
--- a/font-asian/pom.xml
+++ b/font-asian/pom.xml
@@ -5,7 +5,7 @@
com.itextpdf
root
- 9.5.0
+ 9.6.0-SNAPSHOT
font-asian
diff --git a/forms/pom.xml b/forms/pom.xml
index e0c786d40c..1be8f97f2f 100644
--- a/forms/pom.xml
+++ b/forms/pom.xml
@@ -5,7 +5,7 @@
com.itextpdf
root
- 9.5.0
+ 9.6.0-SNAPSHOT
forms
diff --git a/forms/src/main/java/com/itextpdf/forms/FormDefaultAccessibilityProperties.java b/forms/src/main/java/com/itextpdf/forms/FormDefaultAccessibilityProperties.java
index 6a43a86695..99a9d2da64 100644
--- a/forms/src/main/java/com/itextpdf/forms/FormDefaultAccessibilityProperties.java
+++ b/forms/src/main/java/com/itextpdf/forms/FormDefaultAccessibilityProperties.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/PdfAcroForm.java b/forms/src/main/java/com/itextpdf/forms/PdfAcroForm.java
index 52b84a27ab..1430e5ca86 100644
--- a/forms/src/main/java/com/itextpdf/forms/PdfAcroForm.java
+++ b/forms/src/main/java/com/itextpdf/forms/PdfAcroForm.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/PdfPageFormCopier.java b/forms/src/main/java/com/itextpdf/forms/PdfPageFormCopier.java
index 272ec5a589..fa1aa547cd 100644
--- a/forms/src/main/java/com/itextpdf/forms/PdfPageFormCopier.java
+++ b/forms/src/main/java/com/itextpdf/forms/PdfPageFormCopier.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/PdfSigFieldLock.java b/forms/src/main/java/com/itextpdf/forms/PdfSigFieldLock.java
index 8fae74674c..ff89256615 100644
--- a/forms/src/main/java/com/itextpdf/forms/PdfSigFieldLock.java
+++ b/forms/src/main/java/com/itextpdf/forms/PdfSigFieldLock.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/exceptions/AttributeNotFoundException.java b/forms/src/main/java/com/itextpdf/forms/exceptions/AttributeNotFoundException.java
index b41e28f65c..1011fe537b 100644
--- a/forms/src/main/java/com/itextpdf/forms/exceptions/AttributeNotFoundException.java
+++ b/forms/src/main/java/com/itextpdf/forms/exceptions/AttributeNotFoundException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/exceptions/FormsExceptionMessageConstant.java b/forms/src/main/java/com/itextpdf/forms/exceptions/FormsExceptionMessageConstant.java
index 54e411b0d3..1431d7e09e 100644
--- a/forms/src/main/java/com/itextpdf/forms/exceptions/FormsExceptionMessageConstant.java
+++ b/forms/src/main/java/com/itextpdf/forms/exceptions/FormsExceptionMessageConstant.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/exceptions/XfdfException.java b/forms/src/main/java/com/itextpdf/forms/exceptions/XfdfException.java
index 32cf46694c..87c90c8a8f 100644
--- a/forms/src/main/java/com/itextpdf/forms/exceptions/XfdfException.java
+++ b/forms/src/main/java/com/itextpdf/forms/exceptions/XfdfException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/AbstractPdfFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/AbstractPdfFormField.java
index d4aeb8f506..777563364a 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/AbstractPdfFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/AbstractPdfFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilder.java
index b3114be018..04528841ca 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilder.java
index 38eb3f6a41..78c5838c84 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/FormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/FormFieldBuilder.java
index 57a38f0e62..8e6152e684 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/FormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/FormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainer.java b/forms/src/main/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainer.java
index 26ba04c997..cf36b16504 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainer.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilder.java
index f7f9eea024..ec81b13ff3 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfButtonFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfButtonFormField.java
index d6d5fc2034..06148ddcc9 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfButtonFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfButtonFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfChoiceFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfChoiceFormField.java
index 410684d5df..55b081b87c 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfChoiceFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfChoiceFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotation.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotation.java
index 4e049cc168..2ecb2a8d8f 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotation.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotation.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotationUtil.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotationUtil.java
index 1f0c252eee..2e1940452b 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotationUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormAnnotationUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormCreator.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormCreator.java
index 2a0034ceb8..8694df6fc2 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormCreator.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormCreator.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFactory.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFactory.java
index 35406777a2..39768822ef 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFactory.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormField.java
index be4cac9404..0ffc5a4c56 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -96,17 +96,17 @@ public class PdfFormField extends AbstractPdfFormField {
public static final int FF_PASSWORD = makeFieldFlag(14);
/**
- * The ReadOnly flag, which specifies whether or not the field can be changed.
+ * The ReadOnly flag, which specifies whether the field can be changed.
*/
public static final int FF_READ_ONLY = makeFieldFlag(1);
/**
- * The Required flag, which specifies whether or not the field must be filled in.
+ * The Required flag, which specifies whether the field must be filled in.
*/
public static final int FF_REQUIRED = makeFieldFlag(2);
/**
- * The NoExport flag, which specifies whether or not exporting is forbidden.
+ * The NoExport flag, which specifies whether exporting is forbidden.
*/
public static final int FF_NO_EXPORT = makeFieldFlag(3);
@@ -115,7 +115,6 @@ public class PdfFormField extends AbstractPdfFormField {
*/
private static final Set FORM_FIELD_KEYS = new HashSet<>();
-
private static final Logger LOGGER = LoggerFactory.getLogger(PdfFormField.class);
protected String text;
@@ -157,7 +156,7 @@ public class PdfFormField extends AbstractPdfFormField {
* Creates a form field as a wrapper object around a {@link PdfDictionary}.
* This {@link PdfDictionary} must be an indirect object.
*
- * @param pdfObject the dictionary to be wrapped, must have an indirect reference.
+ * @param pdfObject the dictionary to be wrapped, must have an indirect reference
*/
public PdfFormField(PdfDictionary pdfObject) {
super(pdfObject);
@@ -196,7 +195,7 @@ private void createKids(PdfDictionary pdfObject) {
/**
* Creates a minimal {@link PdfFormField}.
*
- * @param pdfDocument The {@link PdfDocument} instance.
+ * @param pdfDocument The {@link PdfDocument} instance
*/
protected PdfFormField(PdfDocument pdfDocument) {
this((PdfDictionary) new PdfDictionary().makeIndirect(pdfDocument));
@@ -209,8 +208,8 @@ protected PdfFormField(PdfDocument pdfDocument) {
/**
* Creates a form field as a parent of a {@link PdfWidgetAnnotation}.
*
- * @param widget The widget which will be a kid of the {@link PdfFormField}.
- * @param pdfDocument The {@link PdfDocument} instance.
+ * @param widget The widget which will be a kid of the {@link PdfFormField}
+ * @param pdfDocument The {@link PdfDocument} instance
*/
protected PdfFormField(PdfWidgetAnnotation widget, PdfDocument pdfDocument) {
this((PdfDictionary) new PdfDictionary().makeIndirect(pdfDocument));
@@ -225,11 +224,11 @@ protected PdfFormField(PdfWidgetAnnotation widget, PdfDocument pdfDocument) {
* Creates a (subtype of) {@link PdfFormField} object. The type of the object
* depends on the FT entry in the pdfObject parameter.
*
- * @param pdfObject assumed to be either a {@link PdfDictionary}, or a
- * {@link PdfIndirectReference} to a {@link PdfDictionary}.
- * @param document the {@link PdfDocument} to create the field in.
- * @return a new {@link PdfFormField}, or null if
- * pdfObject is not a form field.
+ * @param pdfObject assumed to be either a {@link PdfDictionary},
+ * or a {@link PdfIndirectReference} to a {@link PdfDictionary}
+ * @param document the {@link PdfDocument} to create the field in
+ *
+ * @return a new {@link PdfFormField}, or null if pdfObject is not a form field
*/
public static PdfFormField makeFormField(PdfObject pdfObject, PdfDocument document) {
if (!pdfObject.isDictionary()) {
@@ -268,11 +267,12 @@ public static PdfFormField makeFormField(PdfObject pdfObject, PdfDocument docume
* Creates a (subtype of) {@link PdfFormField} or {@link PdfFormAnnotation} object depending on
* pdfObject.
*
- * @param pdfObject assumed to be either a {@link PdfDictionary}, or a
- * {@link PdfIndirectReference} to a {@link PdfDictionary}.
- * @param document the {@link PdfDocument} to create the field in.
+ * @param pdfObject assumed to be either a {@link PdfDictionary},
+ * or a {@link PdfIndirectReference} to a {@link PdfDictionary}
+ * @param document the {@link PdfDocument} to create the field in
+ *
* @return a new {@link AbstractPdfFormField}, or null if
- * pdfObject is not a form field and is not a widget annotation.
+ * pdfObject is not a form field and is not a widget annotation
*/
public static AbstractPdfFormField makeFormFieldOrAnnotation(PdfObject pdfObject, PdfDocument document) {
AbstractPdfFormField formField = PdfFormField.makeFormField(pdfObject, document);
@@ -282,12 +282,14 @@ public static AbstractPdfFormField makeFormFieldOrAnnotation(PdfObject pdfObject
return formField;
}
+
/**
* Makes a field flag by bit position. Bit positions are numbered 1 to 32.
* But position 0 corresponds to flag 1, position 3 corresponds to flag 4 etc.
*
- * @param bitPosition bit position of a flag in range 1 to 32 from the pdf specification.
- * @return corresponding field flag.
+ * @param bitPosition a bit position of a flag in range 1 to 32 from the pdf specification
+ *
+ * @return corresponding field flag
*/
public static int makeFieldFlag(int bitPosition) {
return (1 << (bitPosition - 1));
@@ -296,9 +298,9 @@ public static int makeFieldFlag(int bitPosition) {
/**
* Checks if dictionary contains any of the form field keys.
*
- * @param dict field dictionary to check.
+ * @param dict field dictionary to check
*
- * @return true if it is a form field dictionary, false otherwise.
+ * @return true if it is a form field dictionary, false otherwise
*/
public static boolean isFormField(PdfDictionary dict) {
for (final PdfName formFieldKey : getFormFieldKeys()) {
@@ -313,7 +315,7 @@ public static boolean isFormField(PdfDictionary dict) {
/**
* Gets a set of all possible form field keys except {@code PdfName.Parent}.
*
- * @return a set of form field keys.
+ * @return a set of form field keys
*/
public static Collection getFormFieldKeys() {
return Collections.unmodifiableCollection(FORM_FIELD_KEYS);
@@ -323,9 +325,9 @@ public static Collection getFormFieldKeys() {
* Returns the type of the form field dictionary, or of the parent
* <PdfDictionary> object.
*
- * @param fieldDict field dictionary to get its type.
+ * @param fieldDict field dictionary to get its type
*
- * @return the form type, as a {@link PdfName}.
+ * @return the form type, as a {@link PdfName}
*/
public static PdfName getFormType(PdfDictionary fieldDict) {
PdfName formType = fieldDict.getAsName(PdfName.FT);
@@ -359,9 +361,9 @@ public static String getStringValue(PdfObject value) {
/**
* Applies {@link AccessibilityProperties} for provided form field and its annotation children.
*
- * @param formField {@link PdfFormField} the form field to which the accessibility properties should be applied
+ * @param formField {@link PdfFormField} the form field to which the accessibility properties should be applied
* @param modelElement {@link IAccessibleElement} the form field layout element with accessibility properties
- * @param pdfDocument {@link PdfDocument} the document to which the form field belongs
+ * @param pdfDocument {@link PdfDocument} the document to which the form field belongs
*/
public static void applyAccessibilityProperties(PdfFormField formField, IAccessibleElement modelElement,
PdfDocument pdfDocument) {
@@ -381,10 +383,9 @@ public static void applyAccessibilityProperties(PdfFormField formField, IAccessi
}
/**
- * Returns the type of the parent form field, or of the wrapped
- * <PdfDictionary> object.
+ * Returns the type of the parent form field, or of the wrapped <PdfDictionary> object.
*
- * @return the form type, as a {@link PdfName}.
+ * @return the form type, as a {@link PdfName}
*/
public PdfName getFormType() {
return getFormType(getPdfObject());
@@ -393,8 +394,9 @@ public PdfName getFormType() {
/**
* Sets a value to the field and generating field appearance if needed.
*
- * @param value of the field.
- * @return the field.
+ * @param value of the field
+ *
+ * @return the field
*/
public PdfFormField setValue(String value) {
PdfName formType = getFormType();
@@ -405,9 +407,10 @@ public PdfFormField setValue(String value) {
/**
* Sets a value to the field (and fields with the same names) and generates field appearance if needed.
*
- * @param value of the field.
- * @param generateAppearance if false, appearance won't be regenerated.
- * @return the field.
+ * @param value of the field
+ * @param generateAppearance if false, appearance won't be regenerated
+ *
+ * @return the field
*/
public PdfFormField setValue(String value, boolean generateAppearance) {
if (parent == null) {
@@ -428,10 +431,11 @@ public PdfFormField setValue(String value, boolean generateAppearance) {
/**
* Set text field value with given font and size.
*
- * @param value text value.
- * @param font a {@link PdfFont}.
- * @param fontSize the size of the font.
- * @return the edited field.
+ * @param value text value
+ * @param font a {@link PdfFont}
+ * @param fontSize the size of the font
+ *
+ * @return the edited field
*/
public PdfFormField setValue(String value, PdfFont font, float fontSize) {
updateFontAndFontSize(font, fontSize);
@@ -442,10 +446,11 @@ public PdfFormField setValue(String value, PdfFont font, float fontSize) {
* Sets the field value and the display string. The display string
* is used to build the appearance.
*
- * @param value the field value.
+ * @param value the field value
* @param displayValue the string that is used for the appearance. If null
- * the value parameter will be used.
- * @return the edited field.
+ * the value parameter will be used
+ *
+ * @return the edited field
*/
public PdfFormField setValue(String value, String displayValue) {
if (value == null) {
@@ -469,7 +474,7 @@ public PdfFormField setValue(String value, String displayValue) {
/**
* Removes the childField object of this field.
*
- * @param fieldName a {@link PdfFormField}, that needs to be removed from form field children.
+ * @param fieldName a {@link PdfFormField}, that needs to be removed from form field children
*/
public void removeChild(AbstractPdfFormField fieldName) {
childFields.remove(fieldName);
@@ -493,7 +498,7 @@ public void removeChildren() {
/**
* Gets the kids of this object.
*
- * @return contents of the dictionary's Kids property, as a {@link PdfArray}.
+ * @return contents of the dictionary's Kids property, as a {@link PdfArray}
*/
public PdfArray getKids() {
return getPdfObject().getAsArray(PdfName.Kids);
@@ -502,7 +507,7 @@ public PdfArray getKids() {
/**
* Gets the childFields of this object.
*
- * @return the children of the current field.
+ * @return the children of the current field
*/
public List getChildFields() {
return Collections.unmodifiableList(childFields);
@@ -511,13 +516,13 @@ public List getChildFields() {
/**
* Gets all child form fields of this form field. Annotations are not returned.
*
- * @return a list of {@link PdfFormField}.
+ * @return a list of {@link PdfFormField}
*/
public List getChildFormFields() {
List fields = new ArrayList<>();
for (AbstractPdfFormField child : childFields) {
if (child instanceof PdfFormField) {
- fields.add((PdfFormField)child);
+ fields.add((PdfFormField) child);
}
}
@@ -529,7 +534,7 @@ public List getChildFormFields() {
* Gets all childFields of this object, including the children of the children
* but not annotations.
*
- * @return the children of the current field and their children.
+ * @return the children of the current field and their children
*/
public List getAllChildFormFields() {
List allKids = new ArrayList<>();
@@ -544,14 +549,14 @@ public List getAllChildFormFields() {
/**
* Gets all childFields of this object, including the children of the children.
*
- * @return the children of the current field and their children.
+ * @return the children of the current field and their children
*/
public List getAllChildFields() {
List kids = this.getChildFields();
List allKids = new ArrayList<>(kids);
for (AbstractPdfFormField field : kids) {
if (field instanceof PdfFormField) {
- allKids.addAll(((PdfFormField)field).getAllChildFields());
+ allKids.addAll(((PdfFormField) field).getAllChildFields());
}
}
return allKids;
@@ -560,8 +565,9 @@ public List getAllChildFields() {
/**
* Gets the child field of form field. If there is no child field with such name, {@code null} is returned.
*
- * @param fieldName a {@link String}, name of the received field.
- * @return the child of the current field as a {@link PdfFormField}.
+ * @param fieldName a {@link String}, name of the received field
+ *
+ * @return the child of the current field as a {@link PdfFormField}
*/
public PdfFormField getChildField(String fieldName) {
for (PdfFormField formField : this.getChildFormFields()) {
@@ -577,9 +583,9 @@ public PdfFormField getChildField(String fieldName) {
* Adds a new kid to the Kids array property from a
* {@link AbstractPdfFormField}. Also sets the kid's Parent property to this object.
*
- * @param kid a new {@link AbstractPdfFormField} entry for the field's Kids array property.
+ * @param kid a new {@link AbstractPdfFormField} entry for the field's Kids array property
*
- * @return the edited {@link PdfFormField}.
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField addKid(AbstractPdfFormField kid) {
return addKid(kid, true);
@@ -589,11 +595,11 @@ public PdfFormField addKid(AbstractPdfFormField kid) {
* Adds a new kid to the Kids array property from a
* {@link AbstractPdfFormField}. Also sets the kid's Parent property to this object.
*
- * @param kid a new {@link AbstractPdfFormField} entry for the field's Kids array property.
+ * @param kid a new {@link AbstractPdfFormField} entry for the field's Kids array property
* @param throwExceptionOnError define whether exception (true) or log (false) is expected in case kid with
- * the same name exists and merge of two kids failed.
+ * the same name exists and merge of two kids failed
*
- * @return the edited {@link PdfFormField}.
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField addKid(AbstractPdfFormField kid, boolean throwExceptionOnError) {
PdfFormAnnotationUtil.separateWidgetAndField(this);
@@ -616,8 +622,9 @@ public PdfFormField addKid(AbstractPdfFormField kid, boolean throwExceptionOnErr
* Adds a new kid to the Kids array property from a
* {@link PdfWidgetAnnotation}. Also sets the kid's Parent property to this object.
*
- * @param kid a new {@link PdfWidgetAnnotation} entry for the field's Kids array property.
- * @return the edited {@link PdfFormField}.
+ * @param kid a new {@link PdfWidgetAnnotation} entry for the field's Kids array property
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField addKid(PdfWidgetAnnotation kid) {
kid.setParent(getPdfObject());
@@ -630,8 +637,9 @@ public PdfFormField addKid(PdfWidgetAnnotation kid) {
/**
* Changes the name of the field to the specified value.
*
- * @param name the new field name, as a String.
- * @return the edited {@link PdfFormField}.
+ * @param name the new field name, as a String
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setFieldName(String name) {
put(PdfName.T, new PdfString(name));
@@ -646,7 +654,7 @@ public PdfFormField setFieldName(String name) {
* Gets the current field partial name.
*
* @return the current field partial name, as a {@link PdfString}. If the field has no partial name,
- * an empty {@link PdfString} is returned.
+ * an empty {@link PdfString} is returned
*/
public PdfString getPartialFieldName() {
PdfString partialName = getPdfObject().getAsString(PdfName.T);
@@ -657,8 +665,9 @@ public PdfString getPartialFieldName() {
* Changes the alternate name of the field to the specified value. The
* alternate is a descriptive name to be used by status messages etc.
*
- * @param name the new alternate name, as a String.
- * @return the edited {@link PdfFormField}.
+ * @param name the new alternate name, as a String
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setAlternativeName(String name) {
put(PdfName.TU, new PdfString(name));
@@ -669,7 +678,7 @@ public PdfFormField setAlternativeName(String name) {
* Gets the current alternate name. The alternate is a descriptive name to
* be used by status messages etc.
*
- * @return the current alternate name, as a {@link PdfString}.
+ * @return the current alternate name, as a {@link PdfString}
*/
public PdfString getAlternativeName() {
return getPdfObject().getAsString(PdfName.TU);
@@ -679,8 +688,9 @@ public PdfString getAlternativeName() {
* Changes the mapping name of the field to the specified value. The
* mapping name can be used when exporting the form data in the document.
*
- * @param name the new alternate name, as a String.
- * @return the edited field.
+ * @param name the new alternate name, as a String
+ *
+ * @return the edited field
*/
public PdfFormField setMappingName(String name) {
put(PdfName.TM, new PdfString(name));
@@ -691,7 +701,7 @@ public PdfFormField setMappingName(String name) {
* Gets the current mapping name. The mapping name can be used when
* exporting the form data in the document.
*
- * @return the current mapping name, as a {@link PdfString}.
+ * @return the current mapping name, as a {@link PdfString}
*/
public PdfString getMappingName() {
return getPdfObject().getAsString(PdfName.TM);
@@ -701,9 +711,10 @@ public PdfString getMappingName() {
* Checks whether a certain flag, or any of a combination of flags, is set
* for this form field.
*
- * @param flag an int interpreted as a series of a binary flags.
+ * @param flag an int interpreted as a series of a binary flags
+ *
* @return true if any of the flags specified in the parameter is also set
- * in the form field.
+ * in the form field
*/
public boolean getFieldFlag(int flag) {
return (getFieldFlags() & flag) != 0;
@@ -715,8 +726,9 @@ public boolean getFieldFlag(int flag) {
* enforced. To replace the current value, use
* {@link #setFieldFlags(int)}.
*
- * @param flag an int interpreted as a series of a binary flags.
- * @return the edited {@link PdfFormField}.
+ * @param flag an int interpreted as a series of a binary flags
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setFieldFlag(int flag) {
return setFieldFlag(flag, true);
@@ -728,10 +740,11 @@ public PdfFormField setFieldFlag(int flag) {
* technically enforced. To replace the current value, use
* {@link #setFieldFlags(int)}.
*
- * @param flag an int interpreted as a series of a binary flags.
+ * @param flag an int interpreted as a series of a binary flags
* @param value if true, adds the flag(s). if false,
- * removes the flag(s).
- * @return the edited {@link PdfFormField}.
+ * removes the flag(s)
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setFieldFlag(int flag, boolean value) {
int flags = getFieldFlags();
@@ -748,7 +761,7 @@ public PdfFormField setFieldFlag(int flag, boolean value) {
/**
* If true, the field can contain multiple lines of text; if false, the field's text is restricted to a single line.
*
- * @return whether the field can span over multiple lines.
+ * @return whether the field can span over multiple lines
*/
public boolean isMultiline() {
return getFieldFlag(FF_MULTILINE);
@@ -759,7 +772,7 @@ public boolean isMultiline() {
* Characters typed from the keyboard should instead be echoed in some unreadable form, such as asterisks
* or bullet characters.
*
- * @return whether or not the contents of the field must be obfuscated.
+ * @return whether the contents of the field must be obfuscated
*/
public boolean isPassword() {
return getFieldFlag(FF_PASSWORD);
@@ -770,8 +783,9 @@ public boolean isPassword() {
* replaces the previous value. Compare with {@link #setFieldFlag(int)}
* which adds a flag to the existing flags.
*
- * @param flags an int interpreted as a series of a binary flags.
- * @return the edited {@link PdfFormField}.
+ * @param flags an int interpreted as a series of a binary flags
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setFieldFlags(int flags) {
int oldFlags = getFieldFlags();
@@ -786,7 +800,7 @@ public PdfFormField setFieldFlags(int flags) {
/**
* Gets the current list of PDF form field flags.
*
- * @return the current list of flags, encoded as an int.
+ * @return the current list of flags, encoded as an int
*/
public int getFieldFlags() {
PdfNumber f = getPdfObject().getAsNumber(PdfName.Ff);
@@ -805,7 +819,7 @@ public int getFieldFlags() {
/**
* Gets the current value contained in the form field.
*
- * @return the current value, as a {@link PdfObject}.
+ * @return the current value, as a {@link PdfObject}
*/
public PdfObject getValue() {
PdfObject value = getPdfObject().get(PdfName.V);
@@ -819,7 +833,7 @@ public PdfObject getValue() {
/**
* Gets the current value contained in the form field.
*
- * @return the current value, as a {@link String}.
+ * @return the current value, as a {@link String}
*/
public String getValueAsString() {
PdfObject value = getValue();
@@ -830,7 +844,7 @@ public String getValueAsString() {
* Gets the current display value of the form field.
*
* @return the current display value, as a {@link String}, if it exists.
- * If not, returns the value as a {@link String}.
+ * If not, returns the value as a {@link String}
*/
public String getDisplayValue() {
if (displayValue != null) {
@@ -845,8 +859,9 @@ public String getDisplayValue() {
/**
* Sets the default fallback value for the form field.
*
- * @param value the default value.
- * @return the edited {@link PdfFormField}.
+ * @param value the default value
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setDefaultValue(PdfObject value) {
put(PdfName.DV, value);
@@ -856,7 +871,7 @@ public PdfFormField setDefaultValue(PdfObject value) {
/**
* Gets the default fallback value for the form field.
*
- * @return the default value.
+ * @return the default value
*/
public PdfObject getDefaultValue() {
return getPdfObject().get(PdfName.DV);
@@ -865,9 +880,10 @@ public PdfObject getDefaultValue() {
/**
* Sets an additional action for the form field.
*
- * @param key the dictionary key to use for storing the action.
- * @param action the action.
- * @return the edited {@link PdfFormField}.
+ * @param key the dictionary key to use for storing the action
+ * @param action the action
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setAdditionalAction(PdfName key, PdfAction action) {
PdfAction.setAdditionalAction(this, key, action);
@@ -877,7 +893,7 @@ public PdfFormField setAdditionalAction(PdfName key, PdfAction action) {
/**
* Gets the currently additional action dictionary for the form field.
*
- * @return the additional action dictionary.
+ * @return the additional action dictionary
*/
public PdfDictionary getAdditionalAction() {
return getPdfObject().getAsDictionary(PdfName.AA);
@@ -887,8 +903,9 @@ public PdfDictionary getAdditionalAction() {
* Sets options for the form field. Only to be used for checkboxes and radio buttons.
*
* @param options an array of {@link PdfString} objects that each represent
- * the 'on' state of one of the choices.
- * @return the edited {@link PdfFormField}.
+ * the 'on' state of one of the choices
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setOptions(PdfArray options) {
put(PdfName.Opt, options);
@@ -899,7 +916,7 @@ public PdfFormField setOptions(PdfArray options) {
* Gets options for the form field. Should only return usable values for
* checkboxes and radio buttons.
*
- * @return the options, as an {@link PdfArray} of {@link PdfString} objects.
+ * @return the options, as an {@link PdfArray} of {@link PdfString} objects
*/
public PdfArray getOptions() {
return getPdfObject().getAsArray(PdfName.Opt);
@@ -908,7 +925,7 @@ public PdfArray getOptions() {
/**
* Gets all {@link PdfWidgetAnnotation} that its children refer to.
*
- * @return a list of {@link PdfWidgetAnnotation}.
+ * @return a list of {@link PdfWidgetAnnotation}
*/
public List getWidgets() {
List widgets = new ArrayList<>();
@@ -926,13 +943,13 @@ public List getWidgets() {
/**
* Gets all child form field's annotations {@link PdfFormAnnotation} of this form field.
*
- * @return a list of {@link PdfFormAnnotation}.
+ * @return a list of {@link PdfFormAnnotation}
*/
public List getChildFormAnnotations() {
List annots = new ArrayList<>();
for (AbstractPdfFormField child : childFields) {
if (child instanceof PdfFormAnnotation) {
- annots.add((PdfFormAnnotation)child);
+ annots.add((PdfFormAnnotation) child);
}
}
@@ -942,12 +959,12 @@ public List getChildFormAnnotations() {
/**
* Gets a single child form field's annotation {@link PdfFormAnnotation}.
*
- * @return {@link PdfFormAnnotation} or null if there are no child annotations.
+ * @return {@link PdfFormAnnotation} or null if there are no child annotations
*/
public PdfFormAnnotation getFirstFormAnnotation() {
for (AbstractPdfFormField child : childFields) {
if (child instanceof PdfFormAnnotation) {
- return (PdfFormAnnotation)child;
+ return (PdfFormAnnotation) child;
}
}
@@ -1011,7 +1028,7 @@ public void updateDefaultAppearance() {
put(PdfName.DA, generateDefaultAppearance(fontName, getFontSize(), color));
// Font from DR may not be added to document through PdfResource.
getDocument().addFont(getFont());
- } else {
+ } else if (!PdfName.Sig.equals(getFormType())) {
getPdfObject().remove(PdfName.DA);
setModified();
}
@@ -1023,7 +1040,7 @@ public void updateDefaultAppearance() {
* 1 Centered
* 2 Right-justified
*
- * @return the current justification attribute.
+ * @return the current justification attribute
*/
public TextAlignment getJustification() {
Integer justification = getPdfObject().getAsInt(PdfName.Q);
@@ -1039,8 +1056,9 @@ public TextAlignment getJustification() {
* 1 Centered
* 2 Right-justified
*
- * @param justification the value to set the justification attribute to.
- * @return the edited {@link PdfFormField}.
+ * @param justification the value to set the justification attribute to
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setJustification(TextAlignment justification) {
if (justification != null) {
@@ -1053,7 +1071,7 @@ public PdfFormField setJustification(TextAlignment justification) {
/**
* Gets a default style string, as described in "Rich Text Strings" section of Pdf spec.
*
- * @return the default style, as a {@link PdfString}.
+ * @return the default style, as a {@link PdfString}
*/
public PdfString getDefaultStyle() {
return getPdfObject().getAsString(PdfName.DS);
@@ -1062,8 +1080,9 @@ public PdfString getDefaultStyle() {
/**
* Sets a default style string, as described in "Rich Text Strings" section of Pdf spec.
*
- * @param defaultStyleString a new default style for the form field.
- * @return the edited {@link PdfFormField}.
+ * @param defaultStyleString a new default style for the form field
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setDefaultStyle(PdfString defaultStyleString) {
put(PdfName.DS, defaultStyleString);
@@ -1072,9 +1091,9 @@ public PdfFormField setDefaultStyle(PdfString defaultStyleString) {
/**
* Gets a rich text string, as described in "Rich Text Strings" section of Pdf spec.
- * May be either {@link PdfStream} or {@link PdfString}.
+ * It may be either {@link PdfStream} or {@link PdfString}.
*
- * @return the current rich text value.
+ * @return the current rich text value
*/
public PdfObject getRichText() {
return getPdfObject().get(PdfName.RV);
@@ -1098,8 +1117,9 @@ public PdfFormField setRichText(PdfObject richText) {
* Notice that in order to complete the change one should call
* {@link #regenerateField() regenerateField} method.
*
- * @param checkType the new checkbox marker.
- * @return the edited {@link PdfFormField}.
+ * @param checkType the new checkbox marker
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setCheckType(CheckBoxType checkType) {
if (checkType == null) {
@@ -1142,28 +1162,30 @@ public boolean regenerateField() {
}
/**
- * Sets the ReadOnly flag, specifying whether or not the field can be changed.
+ * Sets the ReadOnly flag, specifying whether the field can be changed.
*
- * @param readOnly if true, then the field cannot be changed.
- * @return the edited {@link PdfFormField}.
+ * @param readOnly if true, then the field cannot be changed
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setReadOnly(boolean readOnly) {
return setFieldFlag(FF_READ_ONLY, readOnly);
}
/**
- * Gets the ReadOnly flag, specifying whether or not the field can be changed.
+ * Gets the ReadOnly flag, specifying whether the field can be changed.
*
- * @return true if the field cannot be changed.
+ * @return true if the field cannot be changed
*/
public boolean isReadOnly() {
return getFieldFlag(FF_READ_ONLY);
}
/**
- * Sets the Required flag, specifying whether or not the field must be filled in.
+ * Sets the Required flag, specifying whether the field must be filled in.
+ *
+ * @param required if true, then the field must be filled in
*
- * @param required if true, then the field must be filled in.
* @return the edited {@link PdfFormField}.
*/
public PdfFormField setRequired(boolean required) {
@@ -1171,19 +1193,20 @@ public PdfFormField setRequired(boolean required) {
}
/**
- * Gets the Required flag, specifying whether or not the field must be filled in.
+ * Gets the Required flag, specifying whether the field must be filled in.
*
- * @return true if the field must be filled in.
+ * @return true if the field must be filled in
*/
public boolean isRequired() {
return getFieldFlag(FF_REQUIRED);
}
/**
- * Sets the NoExport flag, specifying whether or not exporting is forbidden.
+ * Sets the NoExport flag, specifying whether exporting is forbidden.
*
* @param noExport if true, then exporting is forbidden
- * @return the edited {@link PdfFormField}.
+ *
+ * @return the edited {@link PdfFormField}
*/
public PdfFormField setNoExport(boolean noExport) {
return setFieldFlag(FF_NO_EXPORT, noExport);
@@ -1192,7 +1215,7 @@ public PdfFormField setNoExport(boolean noExport) {
/**
* Gets the NoExport attribute.
*
- * @return whether exporting the value following a form action is forbidden.
+ * @return whether exporting the value following a form action is forbidden
*/
public boolean isNoExport() {
return getFieldFlag(FF_NO_EXPORT);
@@ -1201,7 +1224,7 @@ public boolean isNoExport() {
/**
* Checks if the document that contains the field is created in reading mode.
*
- * @return true if reading mode is used, false otherwise.
+ * @return true if reading mode is used, false otherwise
*/
public boolean isInReadingMode() {
return getDocument().getWriter() == null;
@@ -1262,6 +1285,7 @@ public void release() {
* {@inheritDoc}
*
* @param color {@inheritDoc}
+ *
* @return {@inheritDoc}
*/
@Override
@@ -1283,33 +1307,12 @@ void updateFontAndFontSize(PdfFont font, float fontSize) {
}
}
- static String optionsArrayToString(PdfArray options) {
- if (options == null || options.isEmpty()) {
- return "";
- }
- StringBuilder sb = new StringBuilder();
- for (PdfObject obj : options) {
- if (obj.isString()) {
- sb.append(((PdfString) obj).toUnicodeString()).append('\n');
- } else if (obj.isArray()) {
- PdfObject element = ((PdfArray) obj).size() > 1 ? ((PdfArray) obj).get(1) : null;
- if (element != null && element.isString()) {
- sb.append(((PdfString) element).toUnicodeString()).append('\n');
- }
- } else {
- sb.append('\n');
- }
- }
- // last '\n'
- sb.deleteCharAt(sb.length() - 1);
- return sb.toString();
- }
-
/**
* Adds a field to the children of the current field.
*
- * @param kid the field, which should become a child.
- * @return the kid itself.
+ * @param kid the field, which should become a child
+ *
+ * @return the kid itself
*/
AbstractPdfFormField setChildField(AbstractPdfFormField kid) {
kid.setParent(this);
@@ -1321,7 +1324,7 @@ AbstractPdfFormField setChildField(AbstractPdfFormField kid) {
* Replaces /Kids value with passed kids dictionaries, and keeps old flashed fields there.
* Also updates childFields array for {@link PdfFormField}.
*
- * @param kids collection of new kids.
+ * @param kids collection of new kids
*/
void replaceKids(Collection kids) {
PdfArray kidsValues = new PdfArray();
@@ -1454,10 +1457,10 @@ private PdfFormField setFieldValue(String value, boolean generateAppearance) {
} else {
if (PdfName.Ch.equals(formType)) {
if (this instanceof PdfChoiceFormField) {
- ((PdfChoiceFormField) this).setListSelected(new String[] {value}, false);
+ ((PdfChoiceFormField) this).setListSelected(new String[]{value}, false);
} else {
PdfChoiceFormField choice = PdfFormCreator.createChoiceFormField(this.getPdfObject());
- choice.setListSelected(new String[] {value}, false);
+ choice.setListSelected(new String[]{value}, false);
}
} else {
put(PdfName.V, new PdfString(value, PdfEncodings.UNICODE_BIG));
@@ -1477,7 +1480,9 @@ private PdfFormField setFieldValue(String value, boolean generateAppearance) {
* not all equal, then consider that this checkbox is mutually exclusive and do nothing, otherwise regenerate
* normal appearance with value as on appearance state for all the widgets.
*
- * @param value not empty value different from "Off".
+ * @param value not empty value different from "Off"
+ *
+ * @return boolean value indicating whether checkbox appearance was generated
*/
private boolean tryGenerateCheckboxAppearance(String value) {
if (value == null || value.isEmpty() || PdfFormAnnotation.OFF_STATE_VALUE.equals(value)) {
@@ -1523,9 +1528,8 @@ private boolean mergeKidsIfKidWithSuchNameExists(AbstractPdfFormField newKid, bo
private boolean hasDefaultAppearance() {
PdfName type = getFormType();
- return type == PdfName.Tx
- || type == PdfName.Ch
- || (type == PdfName.Btn && (getFieldFlags() & PdfButtonFormField.FF_PUSH_BUTTON) != 0);
+ return PdfName.Tx.equals(type) || PdfName.Ch.equals(type) ||
+ (PdfName.Btn.equals(type) && (getFieldFlags() & PdfButtonFormField.FF_PUSH_BUTTON) != 0);
}
private PdfName getUniqueFontNameForDR(PdfDictionary fontResources) {
@@ -1551,12 +1555,13 @@ private PdfName getFontNameFromDR(PdfDictionary fontResources, PdfObject font) {
* Puts object directly to AcroForm dictionary.
* It works much faster than consequent invocation of {@link PdfAcroForm#getAcroForm(PdfDocument, boolean)}
* and {@link PdfAcroForm#getPdfObject()}.
+ *
*
* Note, this method assume that Catalog already has AcroForm object.
* {@link #addAcroFormToCatalog()} should be called explicitly.
*
- * @param acroFormKey the key of the object.
- * @param acroFormObject the object to add.
+ * @param acroFormKey the key of the object
+ * @param acroFormObject the object to add
*/
private void putAcroFormObject(PdfName acroFormKey, PdfObject acroFormObject) {
getDocument().getCatalog().getPdfObject().getAsDictionary(PdfName.AcroForm).put(acroFormKey, acroFormObject);
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFieldMergeUtil.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFieldMergeUtil.java
index b301be795a..3bc8f9ee4a 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFieldMergeUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfFormFieldMergeUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfSignatureFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfSignatureFormField.java
index 37d666601b..5b9723a08a 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfSignatureFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfSignatureFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PdfTextFormField.java b/forms/src/main/java/com/itextpdf/forms/fields/PdfTextFormField.java
index bfeab06027..387de32f86 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PdfTextFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PdfTextFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilder.java
index 72bf563ba1..202b7f255f 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/RadioFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/RadioFormFieldBuilder.java
index 71d113ffb4..faae654852 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/RadioFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/RadioFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/SignatureFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/SignatureFormFieldBuilder.java
index 79d081d912..1e45470043 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/SignatureFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/SignatureFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/TerminalFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/TerminalFormFieldBuilder.java
index 57b4110a16..e2600b3b55 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/TerminalFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/TerminalFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/TextFormFieldBuilder.java b/forms/src/main/java/com/itextpdf/forms/fields/TextFormFieldBuilder.java
index 9d90518b4e..b32a74360f 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/TextFormFieldBuilder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/TextFormFieldBuilder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/borders/AbstractFormBorder.java b/forms/src/main/java/com/itextpdf/forms/fields/borders/AbstractFormBorder.java
index e8d26739d5..8acfb16e83 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/borders/AbstractFormBorder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/borders/AbstractFormBorder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/borders/BeveledBorder.java b/forms/src/main/java/com/itextpdf/forms/fields/borders/BeveledBorder.java
index 398e8b72d9..f1b776428a 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/borders/BeveledBorder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/borders/BeveledBorder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/borders/FormBorderFactory.java b/forms/src/main/java/com/itextpdf/forms/fields/borders/FormBorderFactory.java
index 910574634e..ba3fa3d2fb 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/borders/FormBorderFactory.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/borders/FormBorderFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/borders/InsetBorder.java b/forms/src/main/java/com/itextpdf/forms/fields/borders/InsetBorder.java
index 009588ba66..211e3d775f 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/borders/InsetBorder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/borders/InsetBorder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/borders/UnderlineBorder.java b/forms/src/main/java/com/itextpdf/forms/fields/borders/UnderlineBorder.java
index b636714e60..4792cda02a 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/borders/UnderlineBorder.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/borders/UnderlineBorder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/merging/AddIndexStrategy.java b/forms/src/main/java/com/itextpdf/forms/fields/merging/AddIndexStrategy.java
index 0df546323a..76fa225a8f 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/merging/AddIndexStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/merging/AddIndexStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/merging/AlwaysThrowExceptionStrategy.java b/forms/src/main/java/com/itextpdf/forms/fields/merging/AlwaysThrowExceptionStrategy.java
index e568eaaae8..f3ba18eb1d 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/merging/AlwaysThrowExceptionStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/merging/AlwaysThrowExceptionStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/merging/MergeFieldsStrategy.java b/forms/src/main/java/com/itextpdf/forms/fields/merging/MergeFieldsStrategy.java
index e07af4b77c..c87ac3befd 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/merging/MergeFieldsStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/merging/MergeFieldsStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategy.java b/forms/src/main/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategy.java
index 4f801c8989..c221162119 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/properties/CheckBoxType.java b/forms/src/main/java/com/itextpdf/forms/fields/properties/CheckBoxType.java
index b9d17cf160..4319b25808 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/properties/CheckBoxType.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/properties/CheckBoxType.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/fields/properties/SignedAppearanceText.java b/forms/src/main/java/com/itextpdf/forms/fields/properties/SignedAppearanceText.java
index f6f50df54b..b9e3f3192c 100644
--- a/forms/src/main/java/com/itextpdf/forms/fields/properties/SignedAppearanceText.java
+++ b/forms/src/main/java/com/itextpdf/forms/fields/properties/SignedAppearanceText.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/FormProperty.java b/forms/src/main/java/com/itextpdf/forms/form/FormProperty.java
index 8ef618ffcd..caf9ecb8b0 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/FormProperty.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/FormProperty.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/AbstractSelectField.java b/forms/src/main/java/com/itextpdf/forms/form/element/AbstractSelectField.java
index 026c934eaa..a1cb076e30 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/AbstractSelectField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/AbstractSelectField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/Button.java b/forms/src/main/java/com/itextpdf/forms/form/element/Button.java
index ec58dfb447..561d89b7f7 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/Button.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/Button.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/CheckBox.java b/forms/src/main/java/com/itextpdf/forms/form/element/CheckBox.java
index 51552c2075..0cf5f967a9 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/CheckBox.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/CheckBox.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/ComboBoxField.java b/forms/src/main/java/com/itextpdf/forms/form/element/ComboBoxField.java
index 03bfd9c73b..a33ec3618d 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/ComboBoxField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/ComboBoxField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/FormField.java b/forms/src/main/java/com/itextpdf/forms/form/element/FormField.java
index 8211f7b6da..eed3c1d980 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/FormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/FormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/IFormField.java b/forms/src/main/java/com/itextpdf/forms/form/element/IFormField.java
index 90c6b93b45..2ec703e6bc 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/IFormField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/IFormField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/IPlaceholderable.java b/forms/src/main/java/com/itextpdf/forms/form/element/IPlaceholderable.java
index 018af5bcb1..996a5fb213 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/IPlaceholderable.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/IPlaceholderable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/InputField.java b/forms/src/main/java/com/itextpdf/forms/form/element/InputField.java
index 9939e40fdd..79cb294c9c 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/InputField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/InputField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/ListBoxField.java b/forms/src/main/java/com/itextpdf/forms/form/element/ListBoxField.java
index 80266ee73b..06a95a2123 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/ListBoxField.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/ListBoxField.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/Radio.java b/forms/src/main/java/com/itextpdf/forms/form/element/Radio.java
index 5facbc619f..78e1aeb822 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/Radio.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/Radio.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/SelectFieldItem.java b/forms/src/main/java/com/itextpdf/forms/form/element/SelectFieldItem.java
index c5ea01100c..7a68ea2204 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/SelectFieldItem.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/SelectFieldItem.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/SignatureFieldAppearance.java b/forms/src/main/java/com/itextpdf/forms/form/element/SignatureFieldAppearance.java
index 20322e3b2c..9a3014cdb1 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/SignatureFieldAppearance.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/SignatureFieldAppearance.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/element/TextArea.java b/forms/src/main/java/com/itextpdf/forms/form/element/TextArea.java
index b408618858..478a51f6ef 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/element/TextArea.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/element/TextArea.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractFormFieldRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractFormFieldRenderer.java
index 41918331b9..c8a6637bd0 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractFormFieldRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractFormFieldRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractOneLineTextFieldRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractOneLineTextFieldRenderer.java
index 21f4c50014..9d3f1e817d 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractOneLineTextFieldRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractOneLineTextFieldRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractSelectFieldRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractSelectFieldRenderer.java
index 4aef016058..f7d1e30215 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractSelectFieldRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractSelectFieldRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractTextFieldRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractTextFieldRenderer.java
index 922d2e62df..0e9d497cd4 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractTextFieldRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/AbstractTextFieldRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/ButtonRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/ButtonRenderer.java
index 9bfd51ed8e..d609147230 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/ButtonRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/ButtonRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/CheckBoxRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/CheckBoxRenderer.java
index e1017ed33d..152aabff04 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/CheckBoxRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/CheckBoxRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/FormFieldValueNonTrimmingTextRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/FormFieldValueNonTrimmingTextRenderer.java
index 84a39ce9b7..81d3ec91bf 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/FormFieldValueNonTrimmingTextRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/FormFieldValueNonTrimmingTextRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/InputFieldRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/InputFieldRenderer.java
index eb4121e3fb..913b82ecdd 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/InputFieldRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/InputFieldRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/RadioRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/RadioRenderer.java
index 925713ed63..d9518dc7ac 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/RadioRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/RadioRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldComboBoxRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldComboBoxRenderer.java
index 571179f7ff..2485fa4ee5 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldComboBoxRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldComboBoxRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRenderer.java
index 4e3495d720..98badc5a00 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/SignatureAppearanceRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/SignatureAppearanceRenderer.java
index 6d8e8724f8..84aadb49b7 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/SignatureAppearanceRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/SignatureAppearanceRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/TextAreaRenderer.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/TextAreaRenderer.java
index 741df22986..a946d73d62 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/TextAreaRenderer.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/TextAreaRenderer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/HtmlCheckBoxRenderingStrategy.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/HtmlCheckBoxRenderingStrategy.java
index f84ed988cc..9302e15f48 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/HtmlCheckBoxRenderingStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/HtmlCheckBoxRenderingStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/ICheckBoxRenderingStrategy.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/ICheckBoxRenderingStrategy.java
index ed0fbb77f4..850de49d85 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/ICheckBoxRenderingStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/ICheckBoxRenderingStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfACheckBoxRenderingStrategy.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfACheckBoxRenderingStrategy.java
index 9cb451d477..43bca7e664 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfACheckBoxRenderingStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfACheckBoxRenderingStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfCheckBoxRenderingStrategy.java b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfCheckBoxRenderingStrategy.java
index d9b4f2d284..1d787e6529 100644
--- a/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfCheckBoxRenderingStrategy.java
+++ b/forms/src/main/java/com/itextpdf/forms/form/renderer/checkboximpl/PdfCheckBoxRenderingStrategy.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/logs/FormsLogMessageConstants.java b/forms/src/main/java/com/itextpdf/forms/logs/FormsLogMessageConstants.java
index 1e57e8a420..0ba0ed3688 100644
--- a/forms/src/main/java/com/itextpdf/forms/logs/FormsLogMessageConstants.java
+++ b/forms/src/main/java/com/itextpdf/forms/logs/FormsLogMessageConstants.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/util/BorderStyleUtil.java b/forms/src/main/java/com/itextpdf/forms/util/BorderStyleUtil.java
index 7ee5a21f99..76987bd267 100644
--- a/forms/src/main/java/com/itextpdf/forms/util/BorderStyleUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/util/BorderStyleUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/util/DrawingUtil.java b/forms/src/main/java/com/itextpdf/forms/util/DrawingUtil.java
index 64e0384b6e..ec7e135493 100644
--- a/forms/src/main/java/com/itextpdf/forms/util/DrawingUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/util/DrawingUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/util/FontSizeUtil.java b/forms/src/main/java/com/itextpdf/forms/util/FontSizeUtil.java
index fa84f7b845..2edb2786c5 100644
--- a/forms/src/main/java/com/itextpdf/forms/util/FontSizeUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/util/FontSizeUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/util/FormFieldRendererUtil.java b/forms/src/main/java/com/itextpdf/forms/util/FormFieldRendererUtil.java
index 4729051f73..e11c158f19 100644
--- a/forms/src/main/java/com/itextpdf/forms/util/FormFieldRendererUtil.java
+++ b/forms/src/main/java/com/itextpdf/forms/util/FormFieldRendererUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/util/RegisterDefaultDiContainer.java b/forms/src/main/java/com/itextpdf/forms/util/RegisterDefaultDiContainer.java
index 12d3dd1334..799c13cf74 100644
--- a/forms/src/main/java/com/itextpdf/forms/util/RegisterDefaultDiContainer.java
+++ b/forms/src/main/java/com/itextpdf/forms/util/RegisterDefaultDiContainer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfa/AcroFieldsSearch.java b/forms/src/main/java/com/itextpdf/forms/xfa/AcroFieldsSearch.java
index d7d7a89ff6..e78ee576f5 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfa/AcroFieldsSearch.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfa/AcroFieldsSearch.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfa/InverseStore.java b/forms/src/main/java/com/itextpdf/forms/xfa/InverseStore.java
index fa9798af57..c84226f5ba 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfa/InverseStore.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfa/InverseStore.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfa/XfaForm.java b/forms/src/main/java/com/itextpdf/forms/xfa/XfaForm.java
index 39ef66b81b..091b15dfa5 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfa/XfaForm.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfa/XfaForm.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfa/Xml2Som.java b/forms/src/main/java/com/itextpdf/forms/xfa/Xml2Som.java
index e9ddfd9239..f7d8b61d48 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfa/Xml2Som.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfa/Xml2Som.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfa/Xml2SomDatasets.java b/forms/src/main/java/com/itextpdf/forms/xfa/Xml2SomDatasets.java
index 145cea32c7..486f32aa80 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfa/Xml2SomDatasets.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfa/Xml2SomDatasets.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/ActionObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/ActionObject.java
index 7f435614e9..2ebf45d1d8 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/ActionObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/ActionObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotObject.java
index 9a2842509b..e7345b12b4 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotsObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotsObject.java
index 6291b0a030..875495f559 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotsObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/AnnotsObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/AttributeObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/AttributeObject.java
index ed9823b8fa..34f16d80d7 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/AttributeObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/AttributeObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/BorderStyleAltObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/BorderStyleAltObject.java
index e6927c2a12..bd71fd6adc 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/BorderStyleAltObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/BorderStyleAltObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/DestObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/DestObject.java
index a540964f5a..c32b6aa244 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/DestObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/DestObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/ElementContentEncodingFormat.java b/forms/src/main/java/com/itextpdf/forms/xfdf/ElementContentEncodingFormat.java
index 92f0ed362e..1328efc331 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/ElementContentEncodingFormat.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/ElementContentEncodingFormat.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/FObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/FObject.java
index c573302c3f..f3ce7ce48b 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/FObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/FObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/FieldObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/FieldObject.java
index da8edd381c..96bfc2cb9c 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/FieldObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/FieldObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/FieldsObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/FieldsObject.java
index 58b4961c68..b5798dbe71 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/FieldsObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/FieldsObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/FitObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/FitObject.java
index 0f564c4830..34bf0a50c3 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/FitObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/FitObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/IdsObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/IdsObject.java
index 342d185ccd..809e3afc6d 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/IdsObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/IdsObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/Mode.java b/forms/src/main/java/com/itextpdf/forms/xfdf/Mode.java
index 1d32c26f32..82c0c0a18b 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/Mode.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/Mode.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfConstants.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfConstants.java
index d9581f4646..49da059912 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfConstants.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfConstants.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfFileUtils.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfFileUtils.java
index 59cbcc3100..1334edc3d6 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfFileUtils.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfFileUtils.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObject.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObject.java
index 7c40aa9f39..549886f347 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObject.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectFactory.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectFactory.java
index 688377ab9c..35df7232c4 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectFactory.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -495,7 +495,7 @@ private static void addAnnotations(PdfDocument pdfDoc, XfdfObject resultXfdf) {
PdfPage page = pdfDoc.getPage(i);
List pdfAnnots = page.getAnnotations();
for (PdfAnnotation pdfAnnot : pdfAnnots) {
- if (pdfAnnot.getSubtype() == PdfName.Popup) {
+ if (PdfName.Popup.equals(pdfAnnot.getSubtype())) {
addPopup(pdfAnnot, annots, i);
} else {
addAnnotation(pdfAnnot, annots, i);
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectUtils.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectUtils.java
index 42372fc863..5dd203fa01 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectUtils.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfObjectUtils.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfReader.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfReader.java
index 4020cb6e22..128c038917 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfReader.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfWriter.java b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfWriter.java
index 30e88cd4ef..d4ff0a50af 100644
--- a/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfWriter.java
+++ b/forms/src/main/java/com/itextpdf/forms/xfdf/XfdfWriter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/sharpenconfig/java/com/itextpdf/forms/SharpenConfigMapping.java b/forms/src/sharpenconfig/java/com/itextpdf/forms/SharpenConfigMapping.java
index 8a2beb1185..d13bb0cbbf 100644
--- a/forms/src/sharpenconfig/java/com/itextpdf/forms/SharpenConfigMapping.java
+++ b/forms/src/sharpenconfig/java/com/itextpdf/forms/SharpenConfigMapping.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FlatteningRotatedTest.java b/forms/src/test/java/com/itextpdf/forms/FlatteningRotatedTest.java
index c0885ab231..3de7aea417 100644
--- a/forms/src/test/java/com/itextpdf/forms/FlatteningRotatedTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FlatteningRotatedTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FlatteningTest.java b/forms/src/test/java/com/itextpdf/forms/FlatteningTest.java
index f3ff119716..6ce965fe48 100644
--- a/forms/src/test/java/com/itextpdf/forms/FlatteningTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FlatteningTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FlatteningWithNullKidElementTest.java b/forms/src/test/java/com/itextpdf/forms/FlatteningWithNullKidElementTest.java
index 55d2f8fffe..5c96aa68d9 100644
--- a/forms/src/test/java/com/itextpdf/forms/FlatteningWithNullKidElementTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FlatteningWithNullKidElementTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FormFieldAppendTest.java b/forms/src/test/java/com/itextpdf/forms/FormFieldAppendTest.java
index f61d05033c..7c13a09bd4 100644
--- a/forms/src/test/java/com/itextpdf/forms/FormFieldAppendTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FormFieldAppendTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FormFieldFlatteningTest.java b/forms/src/test/java/com/itextpdf/forms/FormFieldFlatteningTest.java
index 5a385cba5d..2be8c96900 100644
--- a/forms/src/test/java/com/itextpdf/forms/FormFieldFlatteningTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FormFieldFlatteningTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/FormFieldsTaggingTest.java b/forms/src/test/java/com/itextpdf/forms/FormFieldsTaggingTest.java
index e06a22645f..67d6f80db4 100644
--- a/forms/src/test/java/com/itextpdf/forms/FormFieldsTaggingTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/FormFieldsTaggingTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormInAppendModeTest.java b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormInAppendModeTest.java
index 5b8d779654..2119705a46 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormInAppendModeTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormInAppendModeTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormIntegrationTest.java b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormIntegrationTest.java
index 6465d82dc9..9c06ccf905 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormIntegrationTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormTest.java b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormTest.java
index 248f3a0df6..d003e88bfa 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfAcroFormTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfAcroFormTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfCheckBoxFieldTest.java b/forms/src/test/java/com/itextpdf/forms/PdfCheckBoxFieldTest.java
index dc1564f1ec..c5be30279a 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfCheckBoxFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfCheckBoxFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfChoiceFieldTest.java b/forms/src/test/java/com/itextpdf/forms/PdfChoiceFieldTest.java
index a7937a4fd2..fc32b234ab 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfChoiceFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfChoiceFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -54,9 +54,9 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class PdfChoiceFieldTest extends ExtendedITextTest {
-
- public static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfChoiceFieldTest/";
- public static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfChoiceFieldTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
+ private static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfChoiceFieldTest/";
+ private static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfChoiceFieldTest/";
@BeforeAll
public static void beforeClass() {
@@ -69,7 +69,7 @@ public void choiceFieldsWithUnicodeTest() throws IOException, InterruptedExcepti
String cmpPdf = sourceFolder + "cmp_choiceFieldsWithUnicodeTest.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(outPdf));
- PdfFont font = PdfFontFactory.createFont(sourceFolder + "NotoSansCJKjp-Bold.otf", "Identity-H");
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSansCJKjp-Bold.otf", "Identity-H");
font.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, true);
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfEncryptionTest.java b/forms/src/test/java/com/itextpdf/forms/PdfEncryptionTest.java
index 586dc4108d..570f20b86d 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfEncryptionTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfEncryptionTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormCopyTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormCopyTest.java
index 463e537a70..1b1fb68115 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormCopyTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormCopyTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormCopyWithGotoTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormCopyWithGotoTest.java
index 563ed22342..a6e4a93e51 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormCopyWithGotoTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormCopyWithGotoTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldMultilineTextTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldMultilineTextTest.java
index bc198fa4e0..d60969f648 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldMultilineTextTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldMultilineTextTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -50,9 +50,9 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class PdfFormFieldMultilineTextTest extends ExtendedITextTest {
-
- public static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldMultilineTextTest/";
- public static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldMultilineTextTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
+ private static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldMultilineTextTest/";
+ private static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldMultilineTextTest/";
@BeforeAll
public static void beforeClass() {
@@ -238,7 +238,7 @@ public void formFieldFilledWithStringTest() throws IOException, InterruptedExcep
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(destinationFolder + "formFieldWithStringTest.pdf"));
PdfFont font = PdfFontFactory.createFont(
- sourceFolder + "NotoSansCJKtc-Light.otf", PdfEncodings.IDENTITY_H);
+ FONT_FOLDER + "NotoSansCJKtc-Light.otf", PdfEncodings.IDENTITY_H);
PdfAcroForm acroForm = PdfFormCreator.getAcroForm(pdfDoc, true);
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTest.java
index eab8aa6691..5737045de3 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -80,9 +80,9 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class PdfFormFieldTest extends ExtendedITextTest {
-
- public static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldTest/";
- public static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
+ private static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldTest/";
+ private static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldTest/";
@BeforeAll
public static void beforeClass() {
@@ -802,10 +802,10 @@ public void fillFieldWithHebrewCase1() throws IOException, InterruptedException
PdfDocument pdfDoc = new PdfDocument(writer);
Document document = new Document(pdfDoc);
- PdfFont hebrew = PdfFontFactory.createFont(sourceFolder + "OpenSansHebrew-Regular.ttf",
+ PdfFont hebrew = PdfFontFactory.createFont(FONT_FOLDER + "OpenSansHebrew-Regular.ttf",
PdfEncodings.IDENTITY_H);
hebrew.setSubset(false);
- PdfFont sileot = PdfFontFactory.createFont(sourceFolder + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont sileot = PdfFontFactory.createFont(FONT_FOLDER + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
sileot.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, true);
@@ -836,10 +836,10 @@ public void fillFieldWithHebrewCase2() throws IOException, InterruptedException
PdfDocument pdfDoc = new PdfDocument(writer);
Document document = new Document(pdfDoc);
- PdfFont hebrew = PdfFontFactory.createFont(sourceFolder + "OpenSansHebrew-Regular.ttf",
+ PdfFont hebrew = PdfFontFactory.createFont(FONT_FOLDER + "OpenSansHebrew-Regular.ttf",
PdfEncodings.IDENTITY_H);
hebrew.setSubset(false);
- PdfFont sileot = PdfFontFactory.createFont(sourceFolder + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont sileot = PdfFontFactory.createFont(FONT_FOLDER + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
sileot.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, true);
@@ -872,10 +872,10 @@ public void fillFieldWithHebrewCase3() throws IOException, InterruptedException
PdfWriter writer = new PdfWriter(outPdf);
PdfDocument pdfDoc = new PdfDocument(writer);
- PdfFont hebrew = PdfFontFactory.createFont(sourceFolder + "OpenSansHebrew-Regular.ttf",
+ PdfFont hebrew = PdfFontFactory.createFont(FONT_FOLDER + "OpenSansHebrew-Regular.ttf",
PdfEncodings.IDENTITY_H);
hebrew.setSubset(false);
- PdfFont sileot = PdfFontFactory.createFont(sourceFolder + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont sileot = PdfFontFactory.createFont(FONT_FOLDER + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
sileot.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, true);
@@ -902,10 +902,10 @@ public void fillFieldWithHebrewCase4() throws IOException, InterruptedException
PdfWriter writer = new PdfWriter(baos);
PdfDocument pdfDoc = new PdfDocument(writer);
- PdfFont hebrew = PdfFontFactory.createFont(sourceFolder + "OpenSansHebrew-Regular.ttf",
+ PdfFont hebrew = PdfFontFactory.createFont(FONT_FOLDER + "OpenSansHebrew-Regular.ttf",
PdfEncodings.IDENTITY_H);
hebrew.setSubset(false);
- PdfFont sileot = PdfFontFactory.createFont(sourceFolder + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont sileot = PdfFontFactory.createFont(FONT_FOLDER + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
sileot.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, true);
@@ -1272,7 +1272,7 @@ public void textFieldWithWideUnicodeRange() throws IOException, InterruptedExcep
new Rectangle(36, 400, 100, 40))
.createText().setValue("Helvetica"));
- PdfFont noto = PdfFontFactory.createFont(sourceFolder + "NotoSans-Regular.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont noto = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf", PdfEncodings.IDENTITY_H);
noto.setSubset(false);
String value = "aAáÁàÀăĂắẮằẰẵẴẳẲâÂấẤầẦẫẪǎǍåÅǻǺäÄǟǞãÃą" +
"ĄāĀảẢạẠặẶẬæÆǽǼbBḃḂcCćĆčČċĊçÇdDd̂D̂ďĎḋḊḑḐđĐðÐeE" +
@@ -1401,7 +1401,7 @@ public void setFont2Ways() throws IOException, InterruptedException {
PdfDocument pdfDocument = new PdfDocument(new PdfWriter(filename));
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDocument, true);
- PdfFont font = PdfFontFactory.createFont(sourceFolder + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "SILEOT.ttf", PdfEncodings.IDENTITY_H);
Rectangle rect1 = new Rectangle(10, 700, 200, 25);
Rectangle rect2 = new Rectangle(30, 600, 200, 25);
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTextTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTextTest.java
index 8f511d9ecb..1261e85bd9 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTextTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldTextTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -50,9 +50,9 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class PdfFormFieldTextTest extends ExtendedITextTest {
-
- public static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldTextTest/";
- public static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldTextTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
+ private static final String destinationFolder = TestUtil.getOutputPath() + "/forms/PdfFormFieldTextTest/";
+ private static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/PdfFormFieldTextTest/";
private static final String TEXT = "Some text in Russian \u0442\u0435\u043A\u0441\u0442 (text)";
@BeforeAll
@@ -98,7 +98,7 @@ public void fontsResourcesHelvFontTest() throws IOException {
String filename = "fontsResourcesHelvFontTest.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfReader(sourceFolder + "drWithHelv.pdf"),
new PdfWriter(destinationFolder + filename));
- PdfFont font = PdfFontFactory.createFont(sourceFolder + "NotoSans-Regular.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
PdfEncodings.IDENTITY_H);
font.setSubset(false);
PdfAcroForm form = PdfFormCreator.getAcroForm(pdfDoc, false);
@@ -134,7 +134,7 @@ public void fontsResourcesHelvCourierNotoFontTest() throws IOException {
String filename = "fontsResourcesHelvCourierNotoFontTest.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfReader(sourceFolder + "drWithHelvAndCourier.pdf"),
new PdfWriter(destinationFolder + filename));
- PdfFont font = PdfFontFactory.createFont(sourceFolder + "NotoSans-Regular.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
PdfEncodings.IDENTITY_H);
font.setSubset(false);
PdfFormField formField = PdfFormCreator.getAcroForm(pdfDoc, false)
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldsHierarchyTest.java b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldsHierarchyTest.java
index 040c0294f4..aca69b8427 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfFormFieldsHierarchyTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfFormFieldsHierarchyTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfPushButtonTest.java b/forms/src/test/java/com/itextpdf/forms/PdfPushButtonTest.java
index 611eb5e6da..b7c38b7370 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfPushButtonTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfPushButtonTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/PdfUA2FormTest.java b/forms/src/test/java/com/itextpdf/forms/PdfUA2FormTest.java
index 6136358b56..94f43140f4 100644
--- a/forms/src/test/java/com/itextpdf/forms/PdfUA2FormTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/PdfUA2FormTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -70,6 +70,7 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class PdfUA2FormTest extends ExtendedITextTest {
public static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/forms/PdfUA2FormTest/";
+ public static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
public static final String DESTINATION_FOLDER = TestUtil.getOutputPath() + "/forms//PdfUA2FormTest/";
@BeforeAll
@@ -85,7 +86,7 @@ public void checkFormFieldTest() throws IOException, XMPException, InterruptedEx
try (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outFile, new WriterProperties().setPdfVersion(
PdfVersion.PDF_2_0)))){
Document document = new Document(pdfDocument);
- PdfFont font = PdfFontFactory.createFont(SOURCE_FOLDER + "FreeSans.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
"WinAnsi", EmbeddingStrategy.FORCE_EMBEDDED);
document.setFont(font);
createSimplePdfUA2Document(pdfDocument);
@@ -110,7 +111,7 @@ public void checkTextAreaWithLabelTest() throws IOException, XMPException, Inter
try (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outFile, new WriterProperties().setPdfVersion(
PdfVersion.PDF_2_0)))){
Document document = new Document(pdfDocument);
- PdfFont font = PdfFontFactory.createFont(SOURCE_FOLDER + "FreeSans.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
"WinAnsi", EmbeddingStrategy.FORCE_EMBEDDED);
document.setFont(font);
createSimplePdfUA2Document(pdfDocument);
@@ -140,7 +141,7 @@ public void checkInputFieldTest() throws IOException, XMPException, InterruptedE
try (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outFile, new WriterProperties().setPdfVersion(
PdfVersion.PDF_2_0)))){
Document document = new Document(pdfDocument);
- PdfFont font = PdfFontFactory.createFont(SOURCE_FOLDER + "FreeSans.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
"WinAnsi", EmbeddingStrategy.FORCE_EMBEDDED);
document.setFont(font);
createSimplePdfUA2Document(pdfDocument);
@@ -164,7 +165,7 @@ public void checkSignatureFormTest() throws IOException, XMPException, Interrupt
try (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outFile, new WriterProperties().setPdfVersion(
PdfVersion.PDF_2_0)))){
Document document = new Document(pdfDocument);
- PdfFont font = PdfFontFactory.createFont(SOURCE_FOLDER + "FreeSans.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
"WinAnsi", EmbeddingStrategy.FORCE_EMBEDDED);
document.setFont(font);
createSimplePdfUA2Document(pdfDocument);
@@ -192,7 +193,7 @@ public void setAlternativeDescriptionTest() throws IOException, XMPException, In
try (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outFile, new WriterProperties().setPdfVersion(
PdfVersion.PDF_2_0)))){
Document document = new Document(pdfDocument);
- PdfFont font = PdfFontFactory.createFont(SOURCE_FOLDER + "FreeSans.ttf",
+ PdfFont font = PdfFontFactory.createFont(FONT_FOLDER + "NotoSans-Regular.ttf",
"WinAnsi", EmbeddingStrategy.FORCE_EMBEDDED);
document.setFont(font);
createSimplePdfUA2Document(pdfDocument);
diff --git a/forms/src/test/java/com/itextpdf/forms/RectangleIntegrationTest.java b/forms/src/test/java/com/itextpdf/forms/RectangleIntegrationTest.java
index 1c0929ed09..86b892036c 100644
--- a/forms/src/test/java/com/itextpdf/forms/RectangleIntegrationTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/RectangleIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/Utf8FormsTest.java b/forms/src/test/java/com/itextpdf/forms/Utf8FormsTest.java
index fb4a3263e3..31da524e1d 100644
--- a/forms/src/test/java/com/itextpdf/forms/Utf8FormsTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/Utf8FormsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -46,10 +46,10 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class Utf8FormsTest extends ExtendedITextTest {
-
- public static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/Utf8FormsTest/";
- public static final String destinationFolder = TestUtil.getOutputPath() + "/forms/Utf8FormsTest/";
- public static final String FONT = "./src/test/resources/com/itextpdf/forms/Utf8FormsTest/NotoSansCJKsc-Regular.otf";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/forms/fonts/";
+ private static final String sourceFolder = "./src/test/resources/com/itextpdf/forms/Utf8FormsTest/";
+ private static final String destinationFolder = TestUtil.getOutputPath() + "/forms/Utf8FormsTest/";
+ private static final String FONT = FONT_FOLDER + "NotoSansCJKsc-Regular.otf";
@BeforeEach
public void before() {
diff --git a/forms/src/test/java/com/itextpdf/forms/XfdfReaderTest.java b/forms/src/test/java/com/itextpdf/forms/XfdfReaderTest.java
index 84d3f1fbaf..684dc74efe 100644
--- a/forms/src/test/java/com/itextpdf/forms/XfdfReaderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/XfdfReaderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/XfdfUnitTest.java b/forms/src/test/java/com/itextpdf/forms/XfdfUnitTest.java
index c5b75a9956..4b793d4ffe 100644
--- a/forms/src/test/java/com/itextpdf/forms/XfdfUnitTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/XfdfUnitTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/XfdfWriterTest.java b/forms/src/test/java/com/itextpdf/forms/XfdfWriterTest.java
index 6ac91fd181..ddadf4660a 100644
--- a/forms/src/test/java/com/itextpdf/forms/XfdfWriterTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/XfdfWriterTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilderTest.java
index 7ef4ca5a4c..a6058e46d3 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/CheckBoxFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilderTest.java
index 16a5d6b7b5..da1cc6b42b 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/ChoiceFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/FieldsRotationTest.java b/forms/src/test/java/com/itextpdf/forms/fields/FieldsRotationTest.java
index c3386d46aa..a591226f7b 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/FieldsRotationTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/FieldsRotationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/FormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/FormFieldBuilderTest.java
index 1944d2091e..5a81bbe845 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/FormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/FormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainerTest.java b/forms/src/test/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainerTest.java
index 04fa59e114..6e05bfd045 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainerTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/FormsMetaInfoStaticContainerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilderTest.java
index 6b4be80661..31fccac36f 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/NonTerminalFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormCreatorTest.java b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormCreatorTest.java
index f23551a2a1..cedde909d3 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormCreatorTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormCreatorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldIntegrationTest.java b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldIntegrationTest.java
index ab0e038564..77f43342c8 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldIntegrationTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldNameTest.java b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldNameTest.java
index 6e634802a1..ecdd9e96d6 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldNameTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldNameTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldUnitTest.java b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldUnitTest.java
index 855a499780..6ad238f3f5 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldUnitTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/PdfFormFieldUnitTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilderTest.java
index de7d3b4b96..3e16cde668 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/PushButtonFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/RadioFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/RadioFormFieldBuilderTest.java
index ea6ce1acb8..4635bf0deb 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/RadioFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/RadioFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/SignatureFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/SignatureFormFieldBuilderTest.java
index dd874ce607..15eefac55e 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/SignatureFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/SignatureFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/TerminalFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/TerminalFormFieldBuilderTest.java
index 09d49a46ed..c6a2bfe690 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/TerminalFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/TerminalFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/TextFormFieldBuilderTest.java b/forms/src/test/java/com/itextpdf/forms/fields/TextFormFieldBuilderTest.java
index 05f40c1821..b8a18c7738 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/TextFormFieldBuilderTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/TextFormFieldBuilderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategyTest.java b/forms/src/test/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategyTest.java
index 749543bbd8..6f7f163923 100644
--- a/forms/src/test/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategyTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/fields/merging/OnDuplicateFormFieldNameStrategyTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/AccessibleElementTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/AccessibleElementTest.java
index 0ab1b68203..19fcccdc22 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/AccessibleElementTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/AccessibleElementTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/ButtonColorTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/ButtonColorTest.java
index 8c95c9669e..95f2a9112a 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/ButtonColorTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/ButtonColorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/ButtonTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/ButtonTest.java
index 6b7c03f4ce..6443d86d43 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/ButtonTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/ButtonTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/CheckBoxTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/CheckBoxTest.java
index b98bef354c..8815372afc 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/CheckBoxTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/CheckBoxTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/ComboBoxFieldTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/ComboBoxFieldTest.java
index 746ee3b8f6..31c5a49b69 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/ComboBoxFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/ComboBoxFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/FixedPositionTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/FixedPositionTest.java
index 2e6d8ac8a2..0a2a7f6e09 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/FixedPositionTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/FixedPositionTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/InputButtonTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/InputButtonTest.java
index 2e23d65883..c65fdafc4e 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/InputButtonTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/InputButtonTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/InputFieldTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/InputFieldTest.java
index aee54bcb39..e5bf673fa2 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/InputFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/InputFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/ListBoxFieldTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/ListBoxFieldTest.java
index 5b7999af27..1510f09cd1 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/ListBoxFieldTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/ListBoxFieldTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/RadioTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/RadioTest.java
index 8ae30660ad..753d84986a 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/RadioTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/RadioTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/SelectFieldItemTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/SelectFieldItemTest.java
index 19452a025c..fff730bce8 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/SelectFieldItemTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/SelectFieldItemTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/SignatureFieldAppearanceTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/SignatureFieldAppearanceTest.java
index cf9c27ede8..0ccda9ea53 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/SignatureFieldAppearanceTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/SignatureFieldAppearanceTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/element/TextAreaTest.java b/forms/src/test/java/com/itextpdf/forms/form/element/TextAreaTest.java
index b10edc6a97..5e99c57f91 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/element/TextAreaTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/element/TextAreaTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/renderer/InputFieldRendererTest.java b/forms/src/test/java/com/itextpdf/forms/form/renderer/InputFieldRendererTest.java
index b2ffa35bbb..56c8d63952 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/renderer/InputFieldRendererTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/renderer/InputFieldRendererTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRendererTest.java b/forms/src/test/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRendererTest.java
index 3fa5fc2911..4486d47bcb 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRendererTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/renderer/SelectFieldListBoxRendererTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/form/renderer/TextAreaRendererTest.java b/forms/src/test/java/com/itextpdf/forms/form/renderer/TextAreaRendererTest.java
index 5f4eaa0616..5f6f944cf7 100644
--- a/forms/src/test/java/com/itextpdf/forms/form/renderer/TextAreaRendererTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/form/renderer/TextAreaRendererTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/tagging/ProhibitedTagRelationsResolverTest.java b/forms/src/test/java/com/itextpdf/forms/tagging/ProhibitedTagRelationsResolverTest.java
index 8b9cd614d5..51a81826ac 100644
--- a/forms/src/test/java/com/itextpdf/forms/tagging/ProhibitedTagRelationsResolverTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/tagging/ProhibitedTagRelationsResolverTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/util/RegisterDefaultDiContainerTest.java b/forms/src/test/java/com/itextpdf/forms/util/RegisterDefaultDiContainerTest.java
index 0fd6c5f3ab..e772b5e3c0 100644
--- a/forms/src/test/java/com/itextpdf/forms/util/RegisterDefaultDiContainerTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/util/RegisterDefaultDiContainerTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/widget/AppearanceCharacteristicsTest.java b/forms/src/test/java/com/itextpdf/forms/widget/AppearanceCharacteristicsTest.java
index 7cb30e2780..a4e4f1a2ba 100644
--- a/forms/src/test/java/com/itextpdf/forms/widget/AppearanceCharacteristicsTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/widget/AppearanceCharacteristicsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfa/SecurityTestXmlParserFactory.java b/forms/src/test/java/com/itextpdf/forms/xfa/SecurityTestXmlParserFactory.java
index 2d3d939b07..b983a9fba3 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfa/SecurityTestXmlParserFactory.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfa/SecurityTestXmlParserFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfa/XFAFormTest.java b/forms/src/test/java/com/itextpdf/forms/xfa/XFAFormTest.java
index cff1719b25..7c23a77ae4 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfa/XFAFormTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfa/XFAFormTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfa/XfaSecurityTest.java b/forms/src/test/java/com/itextpdf/forms/xfa/XfaSecurityTest.java
index 620cb1fab5..2664d0d918 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfa/XfaSecurityTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfa/XfaSecurityTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfdf/ExceptionTestXmlParserFactory.java b/forms/src/test/java/com/itextpdf/forms/xfdf/ExceptionTestXmlParserFactory.java
index 2900da9cfd..639662938c 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfdf/ExceptionTestXmlParserFactory.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfdf/ExceptionTestXmlParserFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfdf/SecurityTestXmlParserFactory.java b/forms/src/test/java/com/itextpdf/forms/xfdf/SecurityTestXmlParserFactory.java
index e66cb27d54..dba4cd5d8b 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfdf/SecurityTestXmlParserFactory.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfdf/SecurityTestXmlParserFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfReaderUnitTest.java b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfReaderUnitTest.java
index ca2094406e..ecce167f79 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfReaderUnitTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfReaderUnitTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfSecurityTest.java b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfSecurityTest.java
index ea6c15b191..c567ee61ee 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfSecurityTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfSecurityTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfWriterUnitTest.java b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfWriterUnitTest.java
index 987c40e0c8..4ff9637a8c 100644
--- a/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfWriterUnitTest.java
+++ b/forms/src/test/java/com/itextpdf/forms/xfdf/XfdfWriterUnitTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldMultilineTextTest/NotoSansCJKtc-Light.otf b/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldMultilineTextTest/NotoSansCJKtc-Light.otf
deleted file mode 100644
index 47012365b4..0000000000
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldMultilineTextTest/NotoSansCJKtc-Light.otf and /dev/null differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/NotoSans-Regular.ttf b/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/NotoSans-Regular.ttf
deleted file mode 100644
index a1b8994ede..0000000000
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/NotoSans-Regular.ttf and /dev/null differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/cmp_textFieldWithWideUnicodeRange.pdf b/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/cmp_textFieldWithWideUnicodeRange.pdf
index 80966ec712..8f61d8b8e9 100644
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/cmp_textFieldWithWideUnicodeRange.pdf and b/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/cmp_textFieldWithWideUnicodeRange.pdf differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTextTest/NotoSans-Regular.ttf b/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTextTest/NotoSans-Regular.ttf
deleted file mode 100644
index 04a2f52ed2..0000000000
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTextTest/NotoSans-Regular.ttf and /dev/null differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/FreeSans.ttf b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/FreeSans.ttf
deleted file mode 100644
index 4b06bd7822..0000000000
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/FreeSans.ttf and /dev/null differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_formFieldTest.pdf b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_formFieldTest.pdf
index ffed2a8c6a..f83a36ec8a 100644
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_formFieldTest.pdf and b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_formFieldTest.pdf differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_inputFieldTest.pdf b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_inputFieldTest.pdf
index 70af0e1414..f1cc0dd621 100644
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_inputFieldTest.pdf and b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_inputFieldTest.pdf differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_signatureFormTest.pdf b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_signatureFormTest.pdf
index 9a6d8f26f6..148a78c5b5 100644
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_signatureFormTest.pdf and b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_signatureFormTest.pdf differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_textAreaTest.pdf b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_textAreaTest.pdf
index 4cbac91845..82eae19b08 100644
Binary files a/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_textAreaTest.pdf and b/forms/src/test/resources/com/itextpdf/forms/PdfUA2FormTest/cmp_textAreaTest.pdf differ
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/LICENSE_OFL.txt b/forms/src/test/resources/com/itextpdf/forms/fonts/LICENSE_OFL-1.1.txt
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/LICENSE_OFL.txt
rename to forms/src/test/resources/com/itextpdf/forms/fonts/LICENSE_OFL-1.1.txt
diff --git a/forms/src/test/resources/com/itextpdf/forms/fonts/NOTICE.txt b/forms/src/test/resources/com/itextpdf/forms/fonts/NOTICE.txt
new file mode 100644
index 0000000000..0436e56b21
--- /dev/null
+++ b/forms/src/test/resources/com/itextpdf/forms/fonts/NOTICE.txt
@@ -0,0 +1,7 @@
+This software uses the following test resources under the following licenses:
+NotoSans-Regular.ttf | OFL-1.1 | LICENSE_OFL-1.1.txt | Based on commit a970ecbe0bf1e6ae5cb22d6abdea672448655f0c (03.03.2022) from "https://github.com/google/fonts"
+NotoSansCJKjp-Bold.otf | OFL-1.1 | LICENSE_OFL-1.1.txt | Based on commit f36eda03dfa5582a6d49abbfb5c83d0209584158 (01.07.2015) from repository: "https://github.com/googlefonts/noto-cjk"
+NotoSansCJKtc-Light.otf | OFL-1.1 | LICENSE_OFL-1.1.txt | Based on commit f36eda03dfa5582a6d49abbfb5c83d0209584158 (01.07.2015) from repository: "https://github.com/googlefonts/noto-cjk"
+SILEOT.ttf | OFL-1.1 | LICENSE-OFL-1.1.txt | Based on "https://software.sil.org/ezra/""
+OpenSansHebrew-Regular.ttf | Apache-2.0 | Based on commit 66fbf17ecab031071aacfd387ad3356a9661d95a (13.07.2021) from repository: "https://github.com/sebastienrousseau/open-sans"
+NotoSansCJKsc-Regular.otf | OFL-1.1 | LICENSE_OFL-1.1.txt | Based on commit f36eda03dfa5582a6d49abbfb5c83d0209584158 (01.07.2015) from repository: "https://github.com/googlefonts/noto-cjk"
\ No newline at end of file
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfCheckBoxFieldTest/NotoSansCJKjp-Bold.otf b/forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKjp-Bold.otf
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/PdfCheckBoxFieldTest/NotoSansCJKjp-Bold.otf
rename to forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKjp-Bold.otf
diff --git a/forms/src/test/resources/com/itextpdf/forms/Utf8FormsTest/NotoSansCJKsc-Regular.otf b/forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKsc-Regular.otf
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/Utf8FormsTest/NotoSansCJKsc-Regular.otf
rename to forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKsc-Regular.otf
diff --git a/forms/src/test/resources/com/itextpdf/forms/FormFieldFlatteningTest/NotoSansCJKtc-Light.otf b/forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKtc-Light.otf
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/FormFieldFlatteningTest/NotoSansCJKtc-Light.otf
rename to forms/src/test/resources/com/itextpdf/forms/fonts/NotoSansCJKtc-Light.otf
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/OpenSansHebrew-Regular.ttf b/forms/src/test/resources/com/itextpdf/forms/fonts/OpenSansHebrew-Regular.ttf
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/OpenSansHebrew-Regular.ttf
rename to forms/src/test/resources/com/itextpdf/forms/fonts/OpenSansHebrew-Regular.ttf
diff --git a/forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/SILEOT.ttf b/forms/src/test/resources/com/itextpdf/forms/fonts/SILEOT.ttf
similarity index 100%
rename from forms/src/test/resources/com/itextpdf/forms/PdfFormFieldTest/SILEOT.ttf
rename to forms/src/test/resources/com/itextpdf/forms/fonts/SILEOT.ttf
diff --git a/hyph/pom.xml b/hyph/pom.xml
index cff4481a63..f1478a74c1 100644
--- a/hyph/pom.xml
+++ b/hyph/pom.xml
@@ -5,7 +5,7 @@
com.itextpdf
root
- 9.5.0
+ 9.6.0-SNAPSHOT
hyph
diff --git a/io/pom.xml b/io/pom.xml
index 1baa225216..f3a2315a55 100644
--- a/io/pom.xml
+++ b/io/pom.xml
@@ -5,7 +5,7 @@
com.itextpdf
root
- 9.5.0
+ 9.6.0-SNAPSHOT
io
diff --git a/io/src/main/java/com/itextpdf/io/codec/BitFile.java b/io/src/main/java/com/itextpdf/io/codec/BitFile.java
index 3cf80ce63b..c15b913b49 100644
--- a/io/src/main/java/com/itextpdf/io/codec/BitFile.java
+++ b/io/src/main/java/com/itextpdf/io/codec/BitFile.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/CCITTG4Encoder.java b/io/src/main/java/com/itextpdf/io/codec/CCITTG4Encoder.java
index 72e117652e..1a4e458247 100644
--- a/io/src/main/java/com/itextpdf/io/codec/CCITTG4Encoder.java
+++ b/io/src/main/java/com/itextpdf/io/codec/CCITTG4Encoder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/Jbig2SegmentReader.java b/io/src/main/java/com/itextpdf/io/codec/Jbig2SegmentReader.java
index 499a29c1e2..575908910c 100644
--- a/io/src/main/java/com/itextpdf/io/codec/Jbig2SegmentReader.java
+++ b/io/src/main/java/com/itextpdf/io/codec/Jbig2SegmentReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/LZWCompressor.java b/io/src/main/java/com/itextpdf/io/codec/LZWCompressor.java
index 17a741ea4d..a66a3b124a 100644
--- a/io/src/main/java/com/itextpdf/io/codec/LZWCompressor.java
+++ b/io/src/main/java/com/itextpdf/io/codec/LZWCompressor.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/LZWStringTable.java b/io/src/main/java/com/itextpdf/io/codec/LZWStringTable.java
index f0ecf0f1ad..a90e5b77e5 100644
--- a/io/src/main/java/com/itextpdf/io/codec/LZWStringTable.java
+++ b/io/src/main/java/com/itextpdf/io/codec/LZWStringTable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/PngWriter.java b/io/src/main/java/com/itextpdf/io/codec/PngWriter.java
index d4e67a15dc..7049a769e2 100644
--- a/io/src/main/java/com/itextpdf/io/codec/PngWriter.java
+++ b/io/src/main/java/com/itextpdf/io/codec/PngWriter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/codec/TiffWriter.java b/io/src/main/java/com/itextpdf/io/codec/TiffWriter.java
index 87448d258a..e90a9441d7 100644
--- a/io/src/main/java/com/itextpdf/io/codec/TiffWriter.java
+++ b/io/src/main/java/com/itextpdf/io/codec/TiffWriter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/colors/IccProfile.java b/io/src/main/java/com/itextpdf/io/colors/IccProfile.java
index c4a685599f..d756e71933 100644
--- a/io/src/main/java/com/itextpdf/io/colors/IccProfile.java
+++ b/io/src/main/java/com/itextpdf/io/colors/IccProfile.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/exceptions/ExceptionUtil.java b/io/src/main/java/com/itextpdf/io/exceptions/ExceptionUtil.java
index af4940315c..7965aa2375 100644
--- a/io/src/main/java/com/itextpdf/io/exceptions/ExceptionUtil.java
+++ b/io/src/main/java/com/itextpdf/io/exceptions/ExceptionUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/exceptions/FontCompressionException.java b/io/src/main/java/com/itextpdf/io/exceptions/FontCompressionException.java
index a6e2e10d27..ff0f0079ef 100644
--- a/io/src/main/java/com/itextpdf/io/exceptions/FontCompressionException.java
+++ b/io/src/main/java/com/itextpdf/io/exceptions/FontCompressionException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/exceptions/IOException.java b/io/src/main/java/com/itextpdf/io/exceptions/IOException.java
index 5436f33a45..a40dc1e4a4 100644
--- a/io/src/main/java/com/itextpdf/io/exceptions/IOException.java
+++ b/io/src/main/java/com/itextpdf/io/exceptions/IOException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/exceptions/IoExceptionMessageConstant.java b/io/src/main/java/com/itextpdf/io/exceptions/IoExceptionMessageConstant.java
index f1ef5d802b..2705fd4936 100644
--- a/io/src/main/java/com/itextpdf/io/exceptions/IoExceptionMessageConstant.java
+++ b/io/src/main/java/com/itextpdf/io/exceptions/IoExceptionMessageConstant.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -187,4 +187,6 @@ public final class IoExceptionMessageConstant {
public static final String ONLY_BMP_ENCODING = "This encoder only accepts BMP codepoints";
public static final String READING_BYTE_LIMIT_MUST_NOT_BE_LESS_ZERO = "The reading byte limit argument must not " +
"be less than zero.";
+
+ public static final String INVALID_HTTP_RESPONSE = "Invalid http response {0}.";
}
diff --git a/io/src/main/java/com/itextpdf/io/exceptions/ReadingByteLimitException.java b/io/src/main/java/com/itextpdf/io/exceptions/ReadingByteLimitException.java
index 6dcc221583..65144326b1 100644
--- a/io/src/main/java/com/itextpdf/io/exceptions/ReadingByteLimitException.java
+++ b/io/src/main/java/com/itextpdf/io/exceptions/ReadingByteLimitException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/AbstractTrueTypeFontModifier.java b/io/src/main/java/com/itextpdf/io/font/AbstractTrueTypeFontModifier.java
index f51f722095..d672a48015 100644
--- a/io/src/main/java/com/itextpdf/io/font/AbstractTrueTypeFontModifier.java
+++ b/io/src/main/java/com/itextpdf/io/font/AbstractTrueTypeFontModifier.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/AdobeGlyphList.java b/io/src/main/java/com/itextpdf/io/font/AdobeGlyphList.java
index 777b1c3e25..c77840c278 100644
--- a/io/src/main/java/com/itextpdf/io/font/AdobeGlyphList.java
+++ b/io/src/main/java/com/itextpdf/io/font/AdobeGlyphList.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CFFFont.java b/io/src/main/java/com/itextpdf/io/font/CFFFont.java
index cb701f693f..3c092571c5 100644
--- a/io/src/main/java/com/itextpdf/io/font/CFFFont.java
+++ b/io/src/main/java/com/itextpdf/io/font/CFFFont.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CFFFontSubset.java b/io/src/main/java/com/itextpdf/io/font/CFFFontSubset.java
index 75fbd33a8f..17c3b76230 100644
--- a/io/src/main/java/com/itextpdf/io/font/CFFFontSubset.java
+++ b/io/src/main/java/com/itextpdf/io/font/CFFFontSubset.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CMapEncoding.java b/io/src/main/java/com/itextpdf/io/font/CMapEncoding.java
index a2fe7b759f..172946250a 100644
--- a/io/src/main/java/com/itextpdf/io/font/CMapEncoding.java
+++ b/io/src/main/java/com/itextpdf/io/font/CMapEncoding.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CidFont.java b/io/src/main/java/com/itextpdf/io/font/CidFont.java
index a19921af8f..ee71b33d4c 100644
--- a/io/src/main/java/com/itextpdf/io/font/CidFont.java
+++ b/io/src/main/java/com/itextpdf/io/font/CidFont.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CidFontProperties.java b/io/src/main/java/com/itextpdf/io/font/CidFontProperties.java
index 183768ce7c..c06ec7632d 100644
--- a/io/src/main/java/com/itextpdf/io/font/CidFontProperties.java
+++ b/io/src/main/java/com/itextpdf/io/font/CidFontProperties.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/CjkResourceLoader.java b/io/src/main/java/com/itextpdf/io/font/CjkResourceLoader.java
index 52f2d541c8..24d7022b28 100644
--- a/io/src/main/java/com/itextpdf/io/font/CjkResourceLoader.java
+++ b/io/src/main/java/com/itextpdf/io/font/CjkResourceLoader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontCache.java b/io/src/main/java/com/itextpdf/io/font/FontCache.java
index f124a17158..cd6c03b80d 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontCache.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontCache.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontCacheKey.java b/io/src/main/java/com/itextpdf/io/font/FontCacheKey.java
index 6962d57503..10a0e2a926 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontCacheKey.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontCacheKey.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontEncoding.java b/io/src/main/java/com/itextpdf/io/font/FontEncoding.java
index 21f4eb9ac7..4f9ea30305 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontEncoding.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontEncoding.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontIdentification.java b/io/src/main/java/com/itextpdf/io/font/FontIdentification.java
index 724ff6fb35..b647ab98dd 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontIdentification.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontIdentification.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontMetrics.java b/io/src/main/java/com/itextpdf/io/font/FontMetrics.java
index 1d34455fe6..769558abbf 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontMetrics.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontMetrics.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontNames.java b/io/src/main/java/com/itextpdf/io/font/FontNames.java
index a5decc3492..9eb6f2c785 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontNames.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontNames.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontProgram.java b/io/src/main/java/com/itextpdf/io/font/FontProgram.java
index cbd873542d..8f56eff301 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontProgram.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontProgram.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptor.java b/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptor.java
index ca1b3f7e3e..c470b4b69c 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptor.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptor.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptorFactory.java b/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptorFactory.java
index cbc6769ff9..9908fc74b3 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptorFactory.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontProgramDescriptorFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontProgramFactory.java b/io/src/main/java/com/itextpdf/io/font/FontProgramFactory.java
index 2472da8604..d16446d631 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontProgramFactory.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontProgramFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/FontRegisterProvider.java b/io/src/main/java/com/itextpdf/io/font/FontRegisterProvider.java
index db476d39a4..42178a1c16 100644
--- a/io/src/main/java/com/itextpdf/io/font/FontRegisterProvider.java
+++ b/io/src/main/java/com/itextpdf/io/font/FontRegisterProvider.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/GidAwareGlyph.java b/io/src/main/java/com/itextpdf/io/font/GidAwareGlyph.java
index 457f191bb7..785f13a9f8 100644
--- a/io/src/main/java/com/itextpdf/io/font/GidAwareGlyph.java
+++ b/io/src/main/java/com/itextpdf/io/font/GidAwareGlyph.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/IExtraEncoding.java b/io/src/main/java/com/itextpdf/io/font/IExtraEncoding.java
index e2b62a43c1..3040e20eda 100644
--- a/io/src/main/java/com/itextpdf/io/font/IExtraEncoding.java
+++ b/io/src/main/java/com/itextpdf/io/font/IExtraEncoding.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/OpenTypeParser.java b/io/src/main/java/com/itextpdf/io/font/OpenTypeParser.java
index 0d0a1987e8..600b277e93 100644
--- a/io/src/main/java/com/itextpdf/io/font/OpenTypeParser.java
+++ b/io/src/main/java/com/itextpdf/io/font/OpenTypeParser.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/PdfEncodings.java b/io/src/main/java/com/itextpdf/io/font/PdfEncodings.java
index ff86711214..1120cbbd3a 100644
--- a/io/src/main/java/com/itextpdf/io/font/PdfEncodings.java
+++ b/io/src/main/java/com/itextpdf/io/font/PdfEncodings.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/Pfm2afm.java b/io/src/main/java/com/itextpdf/io/font/Pfm2afm.java
index acc46d8a0b..de9eb49c8b 100644
--- a/io/src/main/java/com/itextpdf/io/font/Pfm2afm.java
+++ b/io/src/main/java/com/itextpdf/io/font/Pfm2afm.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/TrueTypeCollection.java b/io/src/main/java/com/itextpdf/io/font/TrueTypeCollection.java
index 3c17934377..9f3fae180f 100644
--- a/io/src/main/java/com/itextpdf/io/font/TrueTypeCollection.java
+++ b/io/src/main/java/com/itextpdf/io/font/TrueTypeCollection.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/TrueTypeFont.java b/io/src/main/java/com/itextpdf/io/font/TrueTypeFont.java
index a8024b91ce..b10e4706db 100644
--- a/io/src/main/java/com/itextpdf/io/font/TrueTypeFont.java
+++ b/io/src/main/java/com/itextpdf/io/font/TrueTypeFont.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/TrueTypeFontMerger.java b/io/src/main/java/com/itextpdf/io/font/TrueTypeFontMerger.java
index c82568b1a7..6c5f3f068b 100644
--- a/io/src/main/java/com/itextpdf/io/font/TrueTypeFontMerger.java
+++ b/io/src/main/java/com/itextpdf/io/font/TrueTypeFontMerger.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/TrueTypeFontSubsetter.java b/io/src/main/java/com/itextpdf/io/font/TrueTypeFontSubsetter.java
index 27ffedbba6..d944b404b1 100644
--- a/io/src/main/java/com/itextpdf/io/font/TrueTypeFontSubsetter.java
+++ b/io/src/main/java/com/itextpdf/io/font/TrueTypeFontSubsetter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/Type1Font.java b/io/src/main/java/com/itextpdf/io/font/Type1Font.java
index 510d867591..d6b6bbbfd7 100644
--- a/io/src/main/java/com/itextpdf/io/font/Type1Font.java
+++ b/io/src/main/java/com/itextpdf/io/font/Type1Font.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/Type1Parser.java b/io/src/main/java/com/itextpdf/io/font/Type1Parser.java
index e82efe60aa..1ad293d050 100644
--- a/io/src/main/java/com/itextpdf/io/font/Type1Parser.java
+++ b/io/src/main/java/com/itextpdf/io/font/Type1Parser.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/WoffConverter.java b/io/src/main/java/com/itextpdf/io/font/WoffConverter.java
index 9c33c2db5e..cd39260617 100644
--- a/io/src/main/java/com/itextpdf/io/font/WoffConverter.java
+++ b/io/src/main/java/com/itextpdf/io/font/WoffConverter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/AbstractCMap.java b/io/src/main/java/com/itextpdf/io/font/cmap/AbstractCMap.java
index b984d7753a..a40c9691cd 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/AbstractCMap.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/AbstractCMap.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapByteCid.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapByteCid.java
index afc4837f49..81f070d558 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapByteCid.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapByteCid.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCharsetEncoder.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCharsetEncoder.java
index a7933bc79f..5ae4199de5 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCharsetEncoder.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCharsetEncoder.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidToCodepoint.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidToCodepoint.java
index 0ccfa0b592..0d350453cc 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidToCodepoint.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidToCodepoint.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidUni.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidUni.java
index be1e13a7e6..8cb0fcfd97 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidUni.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCidUni.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCodepointToCid.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCodepointToCid.java
index 284c61d1e5..5d2dc367ed 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapCodepointToCid.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapCodepointToCid.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapContentParser.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapContentParser.java
index 5fe30a7e45..18f5608eb2 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapContentParser.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapContentParser.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationFromBytes.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationFromBytes.java
index c43c6ca34c..f0b174ae67 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationFromBytes.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationFromBytes.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationResource.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationResource.java
index 1711ad2ca2..dd693ea5df 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationResource.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapLocationResource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapObject.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapObject.java
index 284dc89cb0..e4b81234b9 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapObject.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapObject.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapParser.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapParser.java
index 23c03dec81..8bf3095396 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapParser.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapParser.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapToUnicode.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapToUnicode.java
index 634864a266..37bf8f754e 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapToUnicode.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapToUnicode.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -22,6 +22,7 @@ This file is part of the iText (R) project.
*/
package com.itextpdf.io.font.cmap;
+import com.itextpdf.io.font.FontEncoding;
import com.itextpdf.io.logs.IoLogMessageConstant;
import com.itextpdf.io.util.IntHashtable;
import com.itextpdf.io.util.TextUtil;
@@ -41,15 +42,13 @@ This file is part of the iText (R) project.
public class CMapToUnicode extends AbstractCMap {
public static final CMapToUnicode EMPTY_CMAP = new CMapToUnicode(true);
+ private static final String CMAP_TO_UNICODE_CREATE_TO_UNICODE_CMAP_IS_NOT_SUPPORTED_FOR_FONT_SPECIFIC_ENCODING =
+ "CMapToUnicode#createToUnicodeCmap is not supported for font specific encoding";
private final Map byteMappings;
private final List codeSpaceRanges = new ArrayList<>();
- private CMapToUnicode(boolean emptyCMap) {
- byteMappings = Collections.emptyMap();
- }
-
/**
* Creates a new instance of CMap.
*/
@@ -57,6 +56,10 @@ public CMapToUnicode() {
byteMappings = new HashMap<>();
}
+ private CMapToUnicode(boolean emptyCMap) {
+ byteMappings = Collections.emptyMap();
+ }
+
public static CMapToUnicode getIdentity() {
CMapToUnicode uni = new CMapToUnicode();
for (int i = 0; i < 65537; i++) {
@@ -66,10 +69,34 @@ public static CMapToUnicode getIdentity() {
return uni;
}
+ /**
+ * Creates a ToUnicode CMap from the given font encoding.
+ *
+ * @param fontEncoding the font encoding
+ *
+ * @return the ToUnicode CMap
+ */
+ public static CMapToUnicode createToUnicodeCmap(FontEncoding fontEncoding) {
+ // For now we throw here though in future it may change
+ if (fontEncoding.isFontSpecific()) {
+ throw new IllegalArgumentException(
+ CMAP_TO_UNICODE_CREATE_TO_UNICODE_CMAP_IS_NOT_SUPPORTED_FOR_FONT_SPECIFIC_ENCODING);
+ }
+ CMapToUnicode toUnicodeCmap = new CMapToUnicode();
+ // 256 is max for any FontEncoding
+ for (int code = 0; code < 256; code++) {
+ int unicode = fontEncoding.getUnicode(code);
+ if (unicode != -1) {
+ toUnicodeCmap.addChar(code, new char[] {(char) unicode});
+ }
+ }
+ return toUnicodeCmap;
+ }
+
/**
* This will tell if this cmap has any two byte mappings.
*
- * @return true If there are any two byte mappings, false otherwise.
+ * @return {@code true} If there are any two byte mappings, {@code false} otherwise
*/
public boolean hasByteMappings() {
return byteMappings.size() != 0;
@@ -78,10 +105,11 @@ public boolean hasByteMappings() {
/**
* This will perform a lookup into the map.
*
- * @param code The code used to lookup.
- * @param offset The offset into the byte array.
- * @param length The length of the data we are getting.
- * @return The string that matches the lookup.
+ * @param code the code used to lookup
+ * @param offset the offset into the byte array
+ * @param length the length of the data we are getting
+ *
+ * @return the string that matches the lookup
*/
public char[] lookup(byte[] code, int offset, int length) {
char[] result = null;
@@ -141,22 +169,6 @@ public List getCodeSpaceRanges() {
return codeSpaceRanges;
}
- @Override
- void addCodeSpaceRange(byte[] low, byte[] high) {
- codeSpaceRanges.add(low);
- codeSpaceRanges.add(high);
- }
-
- private int convertToInt(char[] s) {
- int value = 0;
- for (int i = 0; i < s.length - 1; i++) {
- value += s[i];
- value <<= 8;
- }
- value += s[s.length - 1];
- return value;
- }
-
void addChar(int cid, char[] uni) {
byteMappings.put(cid, uni);
}
@@ -175,22 +187,26 @@ void addChar(String mark, CMapObject code) {
}
}
- private char[] createCharsFromSingleBytes(byte[] bytes) {
- if (bytes.length == 1) {
- return new char[]{(char) (bytes[0] & 0xff)};
- } else {
- char[] chars = new char[bytes.length];
- for (int i = 0; i < bytes.length; i++) {
- chars[i] = (char) (bytes[i] & 0xff);
- }
- return chars;
+ @Override
+ void addCodeSpaceRange(byte[] low, byte[] high) {
+ codeSpaceRanges.add(low);
+ codeSpaceRanges.add(high);
+ }
+
+ private int convertToInt(char[] s) {
+ int value = 0;
+ for (int i = 0; i < s.length - 1; i++) {
+ value += s[i];
+ value <<= 8;
}
+ value += s[s.length - 1];
+ return value;
}
private char[] createCharsFromDoubleBytes(byte[] bytes) {
char[] chars = new char[bytes.length / 2];
- for (int i = 0; i < bytes.length; i+=2) {
- chars[i/2] = (char)(((bytes[i] & 0xff) << 8) + (bytes[i+1] & 0xff));
+ for (int i = 0; i < bytes.length; i += 2) {
+ chars[i / 2] = (char) (((bytes[i] & 0xff) << 8) + (bytes[i + 1] & 0xff));
}
return chars;
}
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/CMapUniCid.java b/io/src/main/java/com/itextpdf/io/font/cmap/CMapUniCid.java
index b2fb8e0a28..dd9c637ff5 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/CMapUniCid.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/CMapUniCid.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/ICMapLocation.java b/io/src/main/java/com/itextpdf/io/font/cmap/ICMapLocation.java
index 7c34be69fb..9ea27a474d 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/ICMapLocation.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/ICMapLocation.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/cmap/StandardCMapCharsets.java b/io/src/main/java/com/itextpdf/io/font/cmap/StandardCMapCharsets.java
index d3760a2c5c..d0e86db619 100644
--- a/io/src/main/java/com/itextpdf/io/font/cmap/StandardCMapCharsets.java
+++ b/io/src/main/java/com/itextpdf/io/font/cmap/StandardCMapCharsets.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontDescriptorFlags.java b/io/src/main/java/com/itextpdf/io/font/constants/FontDescriptorFlags.java
index b272d74531..cf40e8afcf 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontDescriptorFlags.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontDescriptorFlags.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontMacStyleFlags.java b/io/src/main/java/com/itextpdf/io/font/constants/FontMacStyleFlags.java
index 182c81d354..84445fe851 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontMacStyleFlags.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontMacStyleFlags.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontResources.java b/io/src/main/java/com/itextpdf/io/font/constants/FontResources.java
index 5893a09ffc..5366187bcb 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontResources.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontResources.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontStretches.java b/io/src/main/java/com/itextpdf/io/font/constants/FontStretches.java
index 4fa5ac4b51..f7675c6101 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontStretches.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontStretches.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontStyles.java b/io/src/main/java/com/itextpdf/io/font/constants/FontStyles.java
index 16b6f5b8d5..f43b099f98 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontStyles.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontStyles.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/FontWeights.java b/io/src/main/java/com/itextpdf/io/font/constants/FontWeights.java
index c8b66bdcc6..6df93d73ec 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/FontWeights.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/FontWeights.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/StandardFontFamilies.java b/io/src/main/java/com/itextpdf/io/font/constants/StandardFontFamilies.java
index 4758fc7c00..567fa9dc4b 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/StandardFontFamilies.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/StandardFontFamilies.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/StandardFonts.java b/io/src/main/java/com/itextpdf/io/font/constants/StandardFonts.java
index 6d8dd429b7..efaf90fa23 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/StandardFonts.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/StandardFonts.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/constants/TrueTypeCodePages.java b/io/src/main/java/com/itextpdf/io/font/constants/TrueTypeCodePages.java
index 54cc17175f..0f84f0eab0 100644
--- a/io/src/main/java/com/itextpdf/io/font/constants/TrueTypeCodePages.java
+++ b/io/src/main/java/com/itextpdf/io/font/constants/TrueTypeCodePages.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ActualTextIterator.java b/io/src/main/java/com/itextpdf/io/font/otf/ActualTextIterator.java
index 34c83acd4f..46f046dafe 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ActualTextIterator.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ActualTextIterator.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ChainingContextualTable.java b/io/src/main/java/com/itextpdf/io/font/otf/ChainingContextualTable.java
index 2177d036e0..798fd8fa1c 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ChainingContextualTable.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ChainingContextualTable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ContextualPositionRule.java b/io/src/main/java/com/itextpdf/io/font/otf/ContextualPositionRule.java
index 5daf110c2b..b84564f2b1 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ContextualPositionRule.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ContextualPositionRule.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ContextualRule.java b/io/src/main/java/com/itextpdf/io/font/otf/ContextualRule.java
index 34b736321e..cd68a5f2b2 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ContextualRule.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ContextualRule.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ContextualSubstRule.java b/io/src/main/java/com/itextpdf/io/font/otf/ContextualSubstRule.java
index fff79a235a..2d1469eb77 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ContextualSubstRule.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ContextualSubstRule.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ContextualTable.java b/io/src/main/java/com/itextpdf/io/font/otf/ContextualTable.java
index 100773cc59..8b5a2bd666 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ContextualTable.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ContextualTable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/FeatureRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/FeatureRecord.java
index 0805fad4fd..3a43ef33dc 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/FeatureRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/FeatureRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/FontReadingException.java b/io/src/main/java/com/itextpdf/io/font/otf/FontReadingException.java
index 17ec13afe2..cbf223f584 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/FontReadingException.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/FontReadingException.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/Glyph.java b/io/src/main/java/com/itextpdf/io/font/otf/Glyph.java
index ede41b7744..01db7b913c 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/Glyph.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/Glyph.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GlyphLine.java b/io/src/main/java/com/itextpdf/io/font/otf/GlyphLine.java
index 2304ddec66..c6c74c7460 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GlyphLine.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GlyphLine.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GlyphPositioningTableReader.java b/io/src/main/java/com/itextpdf/io/font/otf/GlyphPositioningTableReader.java
index 8e80209ed4..f3700da7c4 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GlyphPositioningTableReader.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GlyphPositioningTableReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GlyphSubstitutionTableReader.java b/io/src/main/java/com/itextpdf/io/font/otf/GlyphSubstitutionTableReader.java
index 4a3024dce3..046d67e294 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GlyphSubstitutionTableReader.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GlyphSubstitutionTableReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposAnchor.java b/io/src/main/java/com/itextpdf/io/font/otf/GposAnchor.java
index 19ebef9e76..e18324b231 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposAnchor.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposAnchor.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType1.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType1.java
index 6a3487f71f..2c9a59422f 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType1.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType1.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType2.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType2.java
index c135ea4ae2..d3a8154cba 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType4.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType4.java
index 39df8e5906..c0125d3e91 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType4.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType4.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType5.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType5.java
index c0b7f75169..d3675fb5b0 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType5.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType5.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType6.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType6.java
index 90f7af971d..1c0948c694 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType6.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType6.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType7.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType7.java
index e026e3340e..a02e364bf8 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType7.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType7.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType8.java b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType8.java
index aa8f5af2d1..2de6cb13cc 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType8.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposLookupType8.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GposValueRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/GposValueRecord.java
index 6770944002..f7a734f824 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GposValueRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GposValueRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType1.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType1.java
index 9f9bf79ba3..b8a4e13b9c 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType1.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType1.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType2.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType2.java
index db83ac48a9..6c45041139 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType3.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType3.java
index 8f885b3d13..d9ff2a4eb5 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType3.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType3.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType4.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType4.java
index d6bf03eadb..15e361900a 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType4.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType4.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType5.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType5.java
index de81cc69db..62193c7795 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType5.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType5.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType6.java b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType6.java
index 793f70c2b1..3c1105fe16 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType6.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/GsubLookupType6.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/LanguageRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/LanguageRecord.java
index 2aa06fdd45..2eea906f70 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/LanguageRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/LanguageRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/LanguageTags.java b/io/src/main/java/com/itextpdf/io/font/otf/LanguageTags.java
index 5acd487ffd..78dad25823 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/LanguageTags.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/LanguageTags.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/MarkTable.java b/io/src/main/java/com/itextpdf/io/font/otf/MarkTable.java
index ef8ae5ee6b..0caeb55e24 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/MarkTable.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/MarkTable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OpenTableLookup.java b/io/src/main/java/com/itextpdf/io/font/otf/OpenTableLookup.java
index a92879eca2..8a98d59605 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OpenTableLookup.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OpenTableLookup.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFeature.java b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFeature.java
index 2ea6710eaa..369f98dc8c 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFeature.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFeature.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFontTableReader.java b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFontTableReader.java
index 20e8fb2820..f844744670 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFontTableReader.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeFontTableReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReader.java b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReader.java
index 90f5091a5c..649da7735a 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReader.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReader.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeScript.java b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeScript.java
index dd8e20058a..944ba6b4fc 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeScript.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OpenTypeScript.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OtfClass.java b/io/src/main/java/com/itextpdf/io/font/otf/OtfClass.java
index 68b8febd14..09afb94f0c 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OtfClass.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OtfClass.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OtfMarkRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/OtfMarkRecord.java
index 31bb0ebc59..08be0d8535 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OtfMarkRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OtfMarkRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/OtfReadCommon.java b/io/src/main/java/com/itextpdf/io/font/otf/OtfReadCommon.java
index 13a6f21ac3..0b8461f5a7 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/OtfReadCommon.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/OtfReadCommon.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/PosLookupRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/PosLookupRecord.java
index fdf8d56d9a..71b28190fa 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/PosLookupRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/PosLookupRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/ScriptRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/ScriptRecord.java
index 842ab56aaa..7e14c3b3f9 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/ScriptRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/ScriptRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/SubstLookupRecord.java b/io/src/main/java/com/itextpdf/io/font/otf/SubstLookupRecord.java
index 3a2fa4b4f7..4795daa154 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/SubstLookupRecord.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/SubstLookupRecord.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/TagAndLocation.java b/io/src/main/java/com/itextpdf/io/font/otf/TagAndLocation.java
index 6eaa585d56..3388f94fea 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/TagAndLocation.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/TagAndLocation.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format1.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format1.java
index f601641feb..49da05c613 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format1.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format1.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format2.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format2.java
index 6aa941a274..fe9d70f135 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format3.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format3.java
index 85cf9067c6..40ab0a3398 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format3.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype5/SubTableLookup5Format3.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format1.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format1.java
index 93b8196cdd..2e66b2101e 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format1.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format1.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format2.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format2.java
index 40e7ee5cc6..07f46db180 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format3.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format3.java
index 8b0455b12c..06b3eec643 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format3.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype6/SubTableLookup6Format3.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype7/PosTableLookup7Format2.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype7/PosTableLookup7Format2.java
index 22aa215ab0..4c8288fba6 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype7/PosTableLookup7Format2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype7/PosTableLookup7Format2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format1.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format1.java
index de9ea4822a..9c181d715b 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format1.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format1.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format2.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format2.java
index 8b55470bd1..9c5a34b738 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format2.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format2.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format3.java b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format3.java
index d3825fe050..643489ded4 100644
--- a/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format3.java
+++ b/io/src/main/java/com/itextpdf/io/font/otf/lookuptype8/PosTableLookup8Format3.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/woff2/JavaUnsignedUtil.java b/io/src/main/java/com/itextpdf/io/font/woff2/JavaUnsignedUtil.java
index ca547a187e..c6734fc6d6 100644
--- a/io/src/main/java/com/itextpdf/io/font/woff2/JavaUnsignedUtil.java
+++ b/io/src/main/java/com/itextpdf/io/font/woff2/JavaUnsignedUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/font/woff2/Woff2Converter.java b/io/src/main/java/com/itextpdf/io/font/woff2/Woff2Converter.java
index c87c6ae8b6..2415b657d4 100644
--- a/io/src/main/java/com/itextpdf/io/font/woff2/Woff2Converter.java
+++ b/io/src/main/java/com/itextpdf/io/font/woff2/Woff2Converter.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/AwtImageDataFactory.java b/io/src/main/java/com/itextpdf/io/image/AwtImageDataFactory.java
index dd71b52151..1755d73eb0 100644
--- a/io/src/main/java/com/itextpdf/io/image/AwtImageDataFactory.java
+++ b/io/src/main/java/com/itextpdf/io/image/AwtImageDataFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/BmpImageData.java b/io/src/main/java/com/itextpdf/io/image/BmpImageData.java
index af89426434..83ed82badc 100644
--- a/io/src/main/java/com/itextpdf/io/image/BmpImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/BmpImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/BmpImageHelper.java b/io/src/main/java/com/itextpdf/io/image/BmpImageHelper.java
index 22672499ef..ef9274e540 100644
--- a/io/src/main/java/com/itextpdf/io/image/BmpImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/BmpImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/GifImageData.java b/io/src/main/java/com/itextpdf/io/image/GifImageData.java
index 22845775d7..2db782cd8d 100644
--- a/io/src/main/java/com/itextpdf/io/image/GifImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/GifImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/GifImageHelper.java b/io/src/main/java/com/itextpdf/io/image/GifImageHelper.java
index 0046a2a23e..21f1e63f85 100644
--- a/io/src/main/java/com/itextpdf/io/image/GifImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/GifImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/ImageData.java b/io/src/main/java/com/itextpdf/io/image/ImageData.java
index 871d564d12..f7ce872e7b 100644
--- a/io/src/main/java/com/itextpdf/io/image/ImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/ImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/ImageDataFactory.java b/io/src/main/java/com/itextpdf/io/image/ImageDataFactory.java
index f51c27c77a..c7fb0f05fd 100644
--- a/io/src/main/java/com/itextpdf/io/image/ImageDataFactory.java
+++ b/io/src/main/java/com/itextpdf/io/image/ImageDataFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/ImageType.java b/io/src/main/java/com/itextpdf/io/image/ImageType.java
index 2563dd47b4..98b4fb94c2 100644
--- a/io/src/main/java/com/itextpdf/io/image/ImageType.java
+++ b/io/src/main/java/com/itextpdf/io/image/ImageType.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/ImageTypeDetector.java b/io/src/main/java/com/itextpdf/io/image/ImageTypeDetector.java
index 0a5892b8e7..5112a2995b 100644
--- a/io/src/main/java/com/itextpdf/io/image/ImageTypeDetector.java
+++ b/io/src/main/java/com/itextpdf/io/image/ImageTypeDetector.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/Jbig2ImageData.java b/io/src/main/java/com/itextpdf/io/image/Jbig2ImageData.java
index fae7464e72..4ab8775089 100644
--- a/io/src/main/java/com/itextpdf/io/image/Jbig2ImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/Jbig2ImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/Jbig2ImageHelper.java b/io/src/main/java/com/itextpdf/io/image/Jbig2ImageHelper.java
index dcd754386b..4521ce06f2 100644
--- a/io/src/main/java/com/itextpdf/io/image/Jbig2ImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/Jbig2ImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageData.java b/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageData.java
index 532f136c16..f516c9f654 100644
--- a/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageHelper.java b/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageHelper.java
index 8d10a6fd3e..d5d012cfd5 100644
--- a/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/Jpeg2000ImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/JpegImageData.java b/io/src/main/java/com/itextpdf/io/image/JpegImageData.java
index 42719ed1ac..51449fade4 100644
--- a/io/src/main/java/com/itextpdf/io/image/JpegImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/JpegImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/JpegImageHelper.java b/io/src/main/java/com/itextpdf/io/image/JpegImageHelper.java
index 3c9b7fc9df..1f73f57dcf 100644
--- a/io/src/main/java/com/itextpdf/io/image/JpegImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/JpegImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/PngChromaticities.java b/io/src/main/java/com/itextpdf/io/image/PngChromaticities.java
index 6d1326a656..e06e523890 100644
--- a/io/src/main/java/com/itextpdf/io/image/PngChromaticities.java
+++ b/io/src/main/java/com/itextpdf/io/image/PngChromaticities.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/PngImageData.java b/io/src/main/java/com/itextpdf/io/image/PngImageData.java
index fb87efa0a3..7c039ed330 100644
--- a/io/src/main/java/com/itextpdf/io/image/PngImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/PngImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/PngImageHelper.java b/io/src/main/java/com/itextpdf/io/image/PngImageHelper.java
index d3b68f7875..833437e4f8 100644
--- a/io/src/main/java/com/itextpdf/io/image/PngImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/PngImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/PngImageHelperConstants.java b/io/src/main/java/com/itextpdf/io/image/PngImageHelperConstants.java
index 8753e15170..99bae59ce9 100644
--- a/io/src/main/java/com/itextpdf/io/image/PngImageHelperConstants.java
+++ b/io/src/main/java/com/itextpdf/io/image/PngImageHelperConstants.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/RawImageData.java b/io/src/main/java/com/itextpdf/io/image/RawImageData.java
index a022f1b919..ac98752701 100644
--- a/io/src/main/java/com/itextpdf/io/image/RawImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/RawImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/RawImageHelper.java b/io/src/main/java/com/itextpdf/io/image/RawImageHelper.java
index 91b39be706..ec26f42df7 100644
--- a/io/src/main/java/com/itextpdf/io/image/RawImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/RawImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/TiffImageData.java b/io/src/main/java/com/itextpdf/io/image/TiffImageData.java
index 98afa20f17..7a7552a32e 100644
--- a/io/src/main/java/com/itextpdf/io/image/TiffImageData.java
+++ b/io/src/main/java/com/itextpdf/io/image/TiffImageData.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/image/TiffImageHelper.java b/io/src/main/java/com/itextpdf/io/image/TiffImageHelper.java
index 7709b0728f..925b980f1a 100644
--- a/io/src/main/java/com/itextpdf/io/image/TiffImageHelper.java
+++ b/io/src/main/java/com/itextpdf/io/image/TiffImageHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/logs/IoLogMessageConstant.java b/io/src/main/java/com/itextpdf/io/logs/IoLogMessageConstant.java
index fad9694659..7823619bde 100644
--- a/io/src/main/java/com/itextpdf/io/logs/IoLogMessageConstant.java
+++ b/io/src/main/java/com/itextpdf/io/logs/IoLogMessageConstant.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -178,6 +178,8 @@ public final class IoLogMessageConstant {
public static final String FAILED_TO_PARSE_ENCODING_STREAM = "Failed to parse encoding stream.";
+ @Deprecated
+ // replaced by com.itextpdf.kernel.logs.KernelLogMessageConstant#FAILED_TO_PROCESS_A_TRANSFORMATION_MATRIX
public static final String FAILED_TO_PROCESS_A_TRANSFORMATION_MATRIX =
"Failed to process a transformation matrix which is noninvertible. Some content may be placed not as "
+ "expected.";
@@ -349,6 +351,8 @@ public final class IoLogMessageConstant {
public static final String PDF_READER_CLOSING_FAILED = "PdfReader closing failed due to the error occurred!";
+ @Deprecated
+ // replaced by com.itextpdf.kernel.logs.KernelLogMessageConstant.PDF_REFERS_TO_NOT_EXISTING_PROPERTY_DICTIONARY
public static final String PDF_REFERS_TO_NOT_EXISTING_PROPERTY_DICTIONARY =
"The PDF contains a BDC operator which refers to a not existing Property dictionary: {0}.";
diff --git a/io/src/main/java/com/itextpdf/io/resolver/resource/DefaultResourceRetriever.java b/io/src/main/java/com/itextpdf/io/resolver/resource/DefaultResourceRetriever.java
index 9a37a6890e..08c6dd84fc 100644
--- a/io/src/main/java/com/itextpdf/io/resolver/resource/DefaultResourceRetriever.java
+++ b/io/src/main/java/com/itextpdf/io/resolver/resource/DefaultResourceRetriever.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -27,6 +27,9 @@ This file is part of the iText (R) project.
import com.itextpdf.io.logs.IoLogMessageConstant;
import com.itextpdf.io.util.StreamUtil;
import com.itextpdf.io.util.UrlUtil;
+
+import java.util.HashMap;
+import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -38,13 +41,14 @@ This file is part of the iText (R) project.
* Default implementation of the {@link IResourceRetriever} interface, which can set a limit
* on the size of retrieved resources using input stream with a limit on the number of bytes read.
*/
-public class DefaultResourceRetriever implements IResourceRetriever {
+public class DefaultResourceRetriever implements IAdvancedResourceRetriever {
private static final Logger LOGGER = LoggerFactory.getLogger(DefaultResourceRetriever.class);
private static final int DEFAULT_CONNECT_TIMEOUT = 300_000;
private static final int DEFAULT_READ_TIMEOUT = 300_000;
private long resourceSizeByteLimit;
private int connectTimeout;
private int readTimeout;
+ private Map requestHeaders;
/**
* Creates a new {@link DefaultResourceRetriever} instance.
@@ -104,6 +108,24 @@ public IResourceRetriever setConnectTimeout(int connectTimeout) {
return this;
}
+ /**
+ * Gets the request headers to use in the request.
+ *
+ * @return the request headers to use in the request
+ */
+ public Map getRequestHeaders() {
+ return requestHeaders;
+ }
+
+ /**
+ * Sets the request headers to use in the request.
+ *
+ * @param headers the request headers to use in the request
+ */
+ public void setRequestHeaders(Map headers) {
+ this.requestHeaders = headers;
+ }
+
/**
* Gets the read timeout.
*
@@ -121,6 +143,7 @@ public int getReadTimeout() {
* The read timeout is used to create input stream with a limited time to receive data from resource.
*
* @param readTimeout the read timeout in milliseconds
+ *
* @return the {@link IResourceRetriever} instance
*/
public IResourceRetriever setReadTimeout(int readTimeout) {
@@ -129,15 +152,13 @@ public IResourceRetriever setReadTimeout(int readTimeout) {
}
/**
- * Gets the input stream with current limit on the number of bytes read,
- * that connect with source URL for retrieving data from that connection.
- *
- * @param url the source URL
- * @return the limited input stream or null if the URL was filtered
+ * {@inheritDoc}
*/
+ @Override
public InputStream getInputStreamByUrl(URL url) throws IOException {
if (urlFilter(url)) {
- return new LimitedInputStream(UrlUtil.getInputStreamOfFinalConnection(url, connectTimeout, readTimeout),
+ return new LimitedInputStream(UrlUtil
+ .getInputStreamOfFinalConnection(url, connectTimeout, readTimeout, requestHeaders),
resourceSizeByteLimit);
}
LOGGER.warn(MessageFormatUtil.format(IoLogMessageConstant.RESOURCE_WITH_GIVEN_URL_WAS_FILTERED_OUT, url));
@@ -145,12 +166,9 @@ public InputStream getInputStreamByUrl(URL url) throws IOException {
}
/**
- * Gets the byte array that are retrieved from the source URL.
- *
- * @param url the source URL
- * @return the byte array or null if the retrieving failed or the
- * URL was filtered or the resourceSizeByteLimit was violated
+ * {@inheritDoc}
*/
+ @Override
public byte[] getByteArrayByUrl(URL url) throws IOException {
try (InputStream stream = getInputStreamByUrl(url)) {
if (stream != null) {
@@ -165,6 +183,26 @@ public byte[] getByteArrayByUrl(URL url) throws IOException {
}
}
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public InputStream get(URL url, byte[] request, Map headers) throws IOException {
+ HashMap finalHeaders = new HashMap();
+ if (requestHeaders != null) {
+ finalHeaders.putAll(requestHeaders);
+ }
+ if (headers != null) {
+ finalHeaders.putAll(headers);
+ }
+ if (urlFilter(url)) {
+ return new LimitedInputStream(UrlUtil.get(url, request, finalHeaders, connectTimeout, readTimeout),
+ resourceSizeByteLimit);
+ }
+ LOGGER.warn(MessageFormatUtil.format(IoLogMessageConstant.RESOURCE_WITH_GIVEN_URL_WAS_FILTERED_OUT, url));
+ return null;
+ }
+
/**
* Method for filtering resources by URL.
*
diff --git a/io/src/main/java/com/itextpdf/io/resolver/resource/IAdvancedResourceRetriever.java b/io/src/main/java/com/itextpdf/io/resolver/resource/IAdvancedResourceRetriever.java
new file mode 100644
index 0000000000..d46466d82a
--- /dev/null
+++ b/io/src/main/java/com/itextpdf/io/resolver/resource/IAdvancedResourceRetriever.java
@@ -0,0 +1,48 @@
+/*
+ This file is part of the iText (R) project.
+ Copyright (c) 1998-2026 Apryse Group NV
+ Authors: Apryse Software.
+
+ This program is offered under a commercial and under the AGPL license.
+ For commercial licensing, contact us at https://itextpdf.com/sales. For AGPL licensing, see below.
+
+ AGPL licensing:
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+ */
+package com.itextpdf.io.resolver.resource;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.Map;
+
+/**
+ * Extended interface for classes that can retrieve data from resources by URL.
+ * An extra method with http headers and request data is added.
+ */
+public interface IAdvancedResourceRetriever extends IResourceRetriever {
+
+ /**
+ * Gets the {@link InputStream} with the data from a provided URL by instantiating an HTTP connection to the URL.
+ *
+ * @param url the source URL
+ * @param request data to send to the URL
+ * @param headers HTTP headers to set for the outgoing connection
+ *
+ * @return the input stream with the retrieved data
+ *
+ * @throws IOException if any input/output issue occurs
+ */
+ InputStream get(URL url, byte[] request, Map headers) throws IOException;
+}
diff --git a/io/src/main/java/com/itextpdf/io/resolver/resource/IResourceRetriever.java b/io/src/main/java/com/itextpdf/io/resolver/resource/IResourceRetriever.java
index 8eda6adf41..e86d520ce4 100644
--- a/io/src/main/java/com/itextpdf/io/resolver/resource/IResourceRetriever.java
+++ b/io/src/main/java/com/itextpdf/io/resolver/resource/IResourceRetriever.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -31,19 +31,23 @@ This file is part of the iText (R) project.
*/
public interface IResourceRetriever {
/**
- * Gets the {@link InputStream} that connect with source URL for retrieving data from that connection.
+ * Gets the {@link InputStream} with the data from a provided URL by instantiating an HTTP connection to the URL.
*
* @param url the source URL
- * @return the input stream or null if the retrieving failed
+ *
+ * @return the input stream with the retrieved data
+ *
* @throws IOException if any input/output issue occurs
*/
InputStream getInputStreamByUrl(URL url) throws IOException;
/**
- * Gets the byte array that are retrieved from the source URL.
+ * Gets the byte array with the data from a provided URL by instantiating an HTTP connection to the URL.
*
* @param url the source URL
- * @return the byte array or null if the retrieving failed
+ *
+ * @return the byte array with the retrieved data
+ *
* @throws IOException if any input/output issue occurs
*/
byte[] getByteArrayByUrl(URL url) throws IOException;
diff --git a/io/src/main/java/com/itextpdf/io/resolver/resource/LimitedInputStream.java b/io/src/main/java/com/itextpdf/io/resolver/resource/LimitedInputStream.java
index 3b828168c5..1e21641e20 100644
--- a/io/src/main/java/com/itextpdf/io/resolver/resource/LimitedInputStream.java
+++ b/io/src/main/java/com/itextpdf/io/resolver/resource/LimitedInputStream.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/ASCII85OutputStream.java b/io/src/main/java/com/itextpdf/io/source/ASCII85OutputStream.java
new file mode 100644
index 0000000000..1c0f3259ab
--- /dev/null
+++ b/io/src/main/java/com/itextpdf/io/source/ASCII85OutputStream.java
@@ -0,0 +1,163 @@
+/*
+ This file is part of the iText (R) project.
+ Copyright (c) 1998-2026 Apryse Group NV
+ Authors: Apryse Software.
+
+ This program is offered under a commercial and under the AGPL license.
+ For commercial licensing, contact us at https://itextpdf.com/sales. For AGPL licensing, see below.
+
+ AGPL licensing:
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+ */
+package com.itextpdf.io.source;
+
+import java.io.FilterOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Arrays;
+
+/**
+ * An output stream that encodes data according to the {@code ASCII85Decode}
+ * filter from the PDF specification.
+ */
+public class ASCII85OutputStream extends FilterOutputStream implements IFinishable {
+ private static final int BASE = 85;
+ /**
+ * Offset to the first base-85 output char.
+ */
+ private static final int OFFSET = 33;
+ /**
+ * Size of the encoding block. After this amount of bytes data is converted
+ * and flush to the backing stream.
+ */
+ private static final int INPUT_LENGTH = 4;
+ /**
+ * Amount of bytes produced from a block of input bytes.
+ */
+ private static final int OUTPUT_LENGTH = 5;
+ /**
+ * Marker written, when all input bytes are zero. Not used for partial
+ * blocks.
+ */
+ private static final byte ALL_ZEROS_MARKER = (byte) 'z';
+ /**
+ * End Of Data marker.
+ */
+ private static final byte[] EOD = new byte[]{(byte) '~', (byte) '>'};
+
+ /**
+ * Encoding block buffer. Reused for encoding output, when flushing.
+ */
+ private final byte[] buffer = new byte[OUTPUT_LENGTH];
+ /**
+ * Bitwise OR of all bytes within the encoding block. Used to quickly
+ * check, whether the encoding block contains only zeros.
+ */
+ private int inputOr = 0;
+ /**
+ * Input bytes cursor within the buffer.
+ */
+ private int inputCursor = 0;
+
+ /**
+ * Flag for detecting, whether {@link #finish} has been called.
+ */
+ private boolean finished = false;
+
+ /**
+ * Creates a new {@code ASCIIHexDecode} encoding stream.
+ *
+ * @param out the output stream to write encoded data to
+ */
+ public ASCII85OutputStream(OutputStream out) {
+ super(out);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void write(int b) throws IOException {
+ int value = b & 0xFF;
+ buffer[inputCursor] = (byte) value;
+ inputOr |= value;
+ ++inputCursor;
+ writeBufferIfFull();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void close() throws IOException {
+ finish();
+ super.close();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void finish() throws IOException {
+ if (finished) {
+ return;
+ }
+
+ finished = true;
+ // Writing the remainder
+ if (inputCursor > 0) {
+ if (inputOr == 0) {
+ // If all zeros, output is just n + 1 exclamation points
+ Arrays.fill(buffer, 0, inputCursor + 1, (byte) '!');
+ } else {
+ Arrays.fill(buffer, inputCursor, INPUT_LENGTH, (byte) 0);
+ convertBuffer();
+ }
+ out.write(buffer, 0, inputCursor + 1);
+ resetBuffer();
+ }
+ out.write(EOD);
+ flush();
+ }
+
+ private void writeBufferIfFull() throws IOException {
+ if (inputCursor < INPUT_LENGTH) {
+ return;
+ }
+ if (inputOr == 0) {
+ // Special case, if all zeros
+ out.write(ALL_ZEROS_MARKER);
+ } else {
+ convertBuffer();
+ out.write(buffer);
+ }
+ resetBuffer();
+ }
+
+ private void resetBuffer() {
+ inputOr = 0;
+ inputCursor = 0;
+ }
+
+ private void convertBuffer() {
+ long num = ((buffer[0] & 0xFFL) << 24)
+ | ((buffer[1] & 0xFFL) << 16)
+ | ((buffer[2] & 0xFFL) << 8)
+ | (buffer[3] & 0xFFL);
+ for (int i = OUTPUT_LENGTH - 1; i >= 0; --i) {
+ buffer[i] = (byte) (OFFSET + (num % BASE));
+ num /= BASE;
+ }
+ }
+}
diff --git a/io/src/main/java/com/itextpdf/io/source/ASCIIHexOutputStream.java b/io/src/main/java/com/itextpdf/io/source/ASCIIHexOutputStream.java
new file mode 100644
index 0000000000..a025f82f9d
--- /dev/null
+++ b/io/src/main/java/com/itextpdf/io/source/ASCIIHexOutputStream.java
@@ -0,0 +1,101 @@
+/*
+ This file is part of the iText (R) project.
+ Copyright (c) 1998-2026 Apryse Group NV
+ Authors: Apryse Software.
+
+ This program is offered under a commercial and under the AGPL license.
+ For commercial licensing, contact us at https://itextpdf.com/sales. For AGPL licensing, see below.
+
+ AGPL licensing:
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+ */
+package com.itextpdf.io.source;
+
+import java.io.FilterOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
+/**
+ * An output stream that encodes data according to the {@code ASCIIHexDecode}
+ * filter from the PDF specification.
+ */
+public class ASCIIHexOutputStream extends FilterOutputStream implements IFinishable {
+ /**
+ * End Of Data marker.
+ */
+ private static final byte EOD = (byte) '>';
+ /**
+ * Array for mapping nibble values to the corresponding lowercase
+ * hexadecimal characters.
+ */
+ private static final byte[] CHAR_MAP = {
+ (byte) '0', (byte) '1', (byte) '2', (byte) '3', (byte) '4', (byte) '5', (byte) '6', (byte) '7', (byte) '8',
+ (byte) '9', (byte) 'a', (byte) 'b', (byte) 'c', (byte) 'd', (byte) 'e', (byte) 'f'
+ };
+
+ /**
+ * Buffer for storing the output hex char pair.
+ */
+ private final byte[] buffer = new byte[2];
+
+ /**
+ * Flag for detecting, whether {@link #finish} has been called.
+ */
+ private boolean finished = false;
+
+ /**
+ * Creates a new {@code ASCIIHexDecode} encoding stream.
+ *
+ * @param out the output stream to write encoded data to
+ */
+ public ASCIIHexOutputStream(OutputStream out) {
+ super(out);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void write(int b) throws IOException {
+ int value = (b & 0xFF);
+ // Writing via a 2-elem buffer, in case `write(byte[])` on the
+ // underlying stream is more performant
+ buffer[0] = CHAR_MAP[value >> 4];
+ buffer[1] = CHAR_MAP[value & 0x0F];
+ out.write(buffer);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void close() throws IOException {
+ finish();
+ super.close();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void finish() throws IOException {
+ if (finished) {
+ return;
+ }
+
+ finished = true;
+ out.write(EOD);
+ flush();
+ }
+}
diff --git a/io/src/main/java/com/itextpdf/io/source/ArrayRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/ArrayRandomAccessSource.java
index e1cce172b9..2f7108d92e 100644
--- a/io/src/main/java/com/itextpdf/io/source/ArrayRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/ArrayRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/ByteArrayOutputStream.java b/io/src/main/java/com/itextpdf/io/source/ByteArrayOutputStream.java
index 712ae84a14..ccd94d13e9 100644
--- a/io/src/main/java/com/itextpdf/io/source/ByteArrayOutputStream.java
+++ b/io/src/main/java/com/itextpdf/io/source/ByteArrayOutputStream.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/ByteBuffer.java b/io/src/main/java/com/itextpdf/io/source/ByteBuffer.java
index 9c198892c0..e2212e722d 100644
--- a/io/src/main/java/com/itextpdf/io/source/ByteBuffer.java
+++ b/io/src/main/java/com/itextpdf/io/source/ByteBuffer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/ByteBufferRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/ByteBufferRandomAccessSource.java
index 4da7d93010..bea8cccaf8 100644
--- a/io/src/main/java/com/itextpdf/io/source/ByteBufferRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/ByteBufferRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/ByteUtils.java b/io/src/main/java/com/itextpdf/io/source/ByteUtils.java
index a0405302de..b9f05761c4 100644
--- a/io/src/main/java/com/itextpdf/io/source/ByteUtils.java
+++ b/io/src/main/java/com/itextpdf/io/source/ByteUtils.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/DeflaterOutputStream.java b/io/src/main/java/com/itextpdf/io/source/DeflaterOutputStream.java
index aeb73fcb34..791cbcfac4 100644
--- a/io/src/main/java/com/itextpdf/io/source/DeflaterOutputStream.java
+++ b/io/src/main/java/com/itextpdf/io/source/DeflaterOutputStream.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/FileChannelRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/FileChannelRandomAccessSource.java
index 596ac8af8f..9e66b3162a 100644
--- a/io/src/main/java/com/itextpdf/io/source/FileChannelRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/FileChannelRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/GetBufferedRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/GetBufferedRandomAccessSource.java
index eed756e71d..3cc89764b1 100644
--- a/io/src/main/java/com/itextpdf/io/source/GetBufferedRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/GetBufferedRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/GroupedRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/GroupedRandomAccessSource.java
index 7703ceeb8d..5b450b2be6 100644
--- a/io/src/main/java/com/itextpdf/io/source/GroupedRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/GroupedRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/HighPrecisionOutputStream.java b/io/src/main/java/com/itextpdf/io/source/HighPrecisionOutputStream.java
index c3befa96ec..d06caba4cd 100644
--- a/io/src/main/java/com/itextpdf/io/source/HighPrecisionOutputStream.java
+++ b/io/src/main/java/com/itextpdf/io/source/HighPrecisionOutputStream.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/IFinishable.java b/io/src/main/java/com/itextpdf/io/source/IFinishable.java
index 7b0ef2c8e8..9d2f4805fa 100644
--- a/io/src/main/java/com/itextpdf/io/source/IFinishable.java
+++ b/io/src/main/java/com/itextpdf/io/source/IFinishable.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/IRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/IRandomAccessSource.java
index d24ec2c0f3..19ad3e225c 100644
--- a/io/src/main/java/com/itextpdf/io/source/IRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/IRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/IndependentRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/IndependentRandomAccessSource.java
index cb2f667864..e985190084 100644
--- a/io/src/main/java/com/itextpdf/io/source/IndependentRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/IndependentRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/MappedChannelRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/MappedChannelRandomAccessSource.java
index a0f222878a..db06bb572c 100644
--- a/io/src/main/java/com/itextpdf/io/source/MappedChannelRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/MappedChannelRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/PagedChannelRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/PagedChannelRandomAccessSource.java
index e4f7ecb4ec..4043d55b43 100644
--- a/io/src/main/java/com/itextpdf/io/source/PagedChannelRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/PagedChannelRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/PdfTokenizer.java b/io/src/main/java/com/itextpdf/io/source/PdfTokenizer.java
index 963baf6269..c06d8a5eae 100644
--- a/io/src/main/java/com/itextpdf/io/source/PdfTokenizer.java
+++ b/io/src/main/java/com/itextpdf/io/source/PdfTokenizer.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/RAFRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/RAFRandomAccessSource.java
index ae60c29b5a..694a1c9baf 100644
--- a/io/src/main/java/com/itextpdf/io/source/RAFRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/RAFRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/RASInputStream.java b/io/src/main/java/com/itextpdf/io/source/RASInputStream.java
index e0b7bb9d81..a729c39c39 100644
--- a/io/src/main/java/com/itextpdf/io/source/RASInputStream.java
+++ b/io/src/main/java/com/itextpdf/io/source/RASInputStream.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/RandomAccessFileOrArray.java b/io/src/main/java/com/itextpdf/io/source/RandomAccessFileOrArray.java
index a1587848e9..8f9d1ddae5 100644
--- a/io/src/main/java/com/itextpdf/io/source/RandomAccessFileOrArray.java
+++ b/io/src/main/java/com/itextpdf/io/source/RandomAccessFileOrArray.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/RandomAccessSourceFactory.java b/io/src/main/java/com/itextpdf/io/source/RandomAccessSourceFactory.java
index 777a6aecd0..e9aa66a5e1 100644
--- a/io/src/main/java/com/itextpdf/io/source/RandomAccessSourceFactory.java
+++ b/io/src/main/java/com/itextpdf/io/source/RandomAccessSourceFactory.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/RunLengthOutputStream.java b/io/src/main/java/com/itextpdf/io/source/RunLengthOutputStream.java
new file mode 100644
index 0000000000..88e7e0ad23
--- /dev/null
+++ b/io/src/main/java/com/itextpdf/io/source/RunLengthOutputStream.java
@@ -0,0 +1,167 @@
+/*
+ This file is part of the iText (R) project.
+ Copyright (c) 1998-2026 Apryse Group NV
+ Authors: Apryse Software.
+
+ This program is offered under a commercial and under the AGPL license.
+ For commercial licensing, contact us at https://itextpdf.com/sales. For AGPL licensing, see below.
+
+ AGPL licensing:
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+ */
+package com.itextpdf.io.source;
+
+import java.io.FilterOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
+/**
+ * An output stream that encodes data according to the {@code RunLengthDecode}
+ * filter from the PDF specification.
+ */
+public class RunLengthOutputStream extends FilterOutputStream implements IFinishable {
+ /**
+ * Maximum length of a run. Applies to both "unique" and repeating ones.
+ */
+ private static final int MAX_LENGTH = 128;
+ /**
+ * End Of Data marker.
+ */
+ private static final byte EOD = (byte) 128;
+
+ /**
+ * Buffer for storing the pending run.
+ */
+ private final byte[] buffer = new byte[MAX_LENGTH];
+ /**
+ * Value, that repeats in a repeating run. Set to {@code -1}, when the
+ * pending run is a "unique" one.
+ */
+ private int repeatValue = -1;
+ /**
+ * Current length of the pending run.
+ */
+ private int currentLength = 0;
+
+ /**
+ * Flag for detecting, whether {@link #finish} has been called.
+ */
+ private boolean finished = false;
+
+ /**
+ * Creates a new {@code RunLengthDecode} encoding stream.
+ *
+ * @param out the output stream to write encoded data to
+ */
+ public RunLengthOutputStream(OutputStream out) {
+ super(out);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void write(int b) throws IOException {
+ int value = b & 0xFF;
+ // Case for continuing a repeating run
+ if (value == repeatValue) {
+ ++currentLength;
+ if (currentLength == MAX_LENGTH) {
+ writePending();
+ }
+ return;
+ }
+ /*
+ * If there was a repeating run, but we got a different value, then we
+ * need to write the current repeating run we had and start a new
+ * "unique" run.
+ */
+ if (repeatValue != -1) {
+ writePending();
+ buffer[currentLength] = (byte) value;
+ ++currentLength;
+ return;
+ }
+ /*
+ * As soon as we detect a sequence of 3 or more bytes, which are the
+ * same, we need to switch to a repeating run. For this we will write
+ * the values before the repeated one as a "unique" run and start a
+ * new repeating run at length 3.
+ *
+ * Technically speaking we can switch to a repeating run at 2 bytes,
+ * but in the vast majority of cases this will make the compression
+ * ratio worse.
+ */
+ if (currentLength >= 2
+ && buffer[currentLength - 1] == (byte) value
+ && buffer[currentLength - 2] == (byte) value) {
+ currentLength -= 2;
+ writePending();
+ repeatValue = value;
+ currentLength = 3;
+ return;
+ }
+ // Just continuing (or starting) a "unique" run
+ buffer[currentLength] = (byte) value;
+ ++currentLength;
+ if (currentLength == MAX_LENGTH) {
+ writePending();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void close() throws IOException {
+ finish();
+ super.close();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void finish() throws IOException {
+ if (finished) {
+ return;
+ }
+
+ finished = true;
+ writePending();
+ out.write(EOD);
+ flush();
+ }
+
+ private void writePending() throws IOException {
+ if (currentLength <= 0) {
+ return;
+ }
+ if (repeatValue < 0) {
+ // Writing "unique" run
+ out.write(currentLength - 1);
+ out.write(buffer, 0, currentLength);
+ } else {
+ // Writing repeating run
+ out.write(257 - currentLength);
+ out.write(repeatValue);
+ }
+ resetPending();
+ }
+
+ private void resetPending() {
+ repeatValue = -1;
+ currentLength = 0;
+ }
+}
diff --git a/io/src/main/java/com/itextpdf/io/source/ThreadSafeRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/ThreadSafeRandomAccessSource.java
index d1f817d95d..bde63e9708 100644
--- a/io/src/main/java/com/itextpdf/io/source/ThreadSafeRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/ThreadSafeRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/source/WindowRandomAccessSource.java b/io/src/main/java/com/itextpdf/io/source/WindowRandomAccessSource.java
index 36ef471ffe..e6465a2303 100644
--- a/io/src/main/java/com/itextpdf/io/source/WindowRandomAccessSource.java
+++ b/io/src/main/java/com/itextpdf/io/source/WindowRandomAccessSource.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/ArrayUtil.java b/io/src/main/java/com/itextpdf/io/util/ArrayUtil.java
index 30e1dc867c..63e13185d7 100644
--- a/io/src/main/java/com/itextpdf/io/util/ArrayUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/ArrayUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/CliCommandUtil.java b/io/src/main/java/com/itextpdf/io/util/CliCommandUtil.java
index 48f404d404..e5a5e2d571 100644
--- a/io/src/main/java/com/itextpdf/io/util/CliCommandUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/CliCommandUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/DecimalFormatUtil.java b/io/src/main/java/com/itextpdf/io/util/DecimalFormatUtil.java
index caa411cc5c..e9c06c3fb5 100644
--- a/io/src/main/java/com/itextpdf/io/util/DecimalFormatUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/DecimalFormatUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/EnumUtil.java b/io/src/main/java/com/itextpdf/io/util/EnumUtil.java
index 0313cbc87e..92b63268a6 100644
--- a/io/src/main/java/com/itextpdf/io/util/EnumUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/EnumUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/FilterUtil.java b/io/src/main/java/com/itextpdf/io/util/FilterUtil.java
index 350643f322..5fb25a1388 100644
--- a/io/src/main/java/com/itextpdf/io/util/FilterUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/FilterUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/GenericArray.java b/io/src/main/java/com/itextpdf/io/util/GenericArray.java
index 459b2e3504..2ed7f85e1b 100644
--- a/io/src/main/java/com/itextpdf/io/util/GenericArray.java
+++ b/io/src/main/java/com/itextpdf/io/util/GenericArray.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/GhostscriptHelper.java b/io/src/main/java/com/itextpdf/io/util/GhostscriptHelper.java
index ca20b4703a..3a079259f0 100644
--- a/io/src/main/java/com/itextpdf/io/util/GhostscriptHelper.java
+++ b/io/src/main/java/com/itextpdf/io/util/GhostscriptHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/HashCode.java b/io/src/main/java/com/itextpdf/io/util/HashCode.java
index 2c12d5346f..8e4a426df6 100644
--- a/io/src/main/java/com/itextpdf/io/util/HashCode.java
+++ b/io/src/main/java/com/itextpdf/io/util/HashCode.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/ImageMagickCompareResult.java b/io/src/main/java/com/itextpdf/io/util/ImageMagickCompareResult.java
index 814111e237..286209581f 100644
--- a/io/src/main/java/com/itextpdf/io/util/ImageMagickCompareResult.java
+++ b/io/src/main/java/com/itextpdf/io/util/ImageMagickCompareResult.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/ImageMagickHelper.java b/io/src/main/java/com/itextpdf/io/util/ImageMagickHelper.java
index 2615926db7..7572fed449 100644
--- a/io/src/main/java/com/itextpdf/io/util/ImageMagickHelper.java
+++ b/io/src/main/java/com/itextpdf/io/util/ImageMagickHelper.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/NumberUtil.java b/io/src/main/java/com/itextpdf/io/util/NumberUtil.java
index 3e22e99ecf..7a1d316a2b 100644
--- a/io/src/main/java/com/itextpdf/io/util/NumberUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/NumberUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/PdfNameUtil.java b/io/src/main/java/com/itextpdf/io/util/PdfNameUtil.java
index 73177358cc..4bb4408a12 100644
--- a/io/src/main/java/com/itextpdf/io/util/PdfNameUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/PdfNameUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/ResourceUtil.java b/io/src/main/java/com/itextpdf/io/util/ResourceUtil.java
index 7bde3a0dca..c1df48edec 100644
--- a/io/src/main/java/com/itextpdf/io/util/ResourceUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/ResourceUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/StreamUtil.java b/io/src/main/java/com/itextpdf/io/util/StreamUtil.java
index 0664220664..e0695d7ba0 100644
--- a/io/src/main/java/com/itextpdf/io/util/StreamUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/StreamUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/TextUtil.java b/io/src/main/java/com/itextpdf/io/util/TextUtil.java
index 27328998ab..8bf6ad9461 100644
--- a/io/src/main/java/com/itextpdf/io/util/TextUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/TextUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/main/java/com/itextpdf/io/util/UrlUtil.java b/io/src/main/java/com/itextpdf/io/util/UrlUtil.java
index c154c9d233..70554f07c7 100644
--- a/io/src/main/java/com/itextpdf/io/util/UrlUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/UrlUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -22,13 +22,21 @@ This file is part of the iText (R) project.
*/
package com.itextpdf.io.util;
+import com.itextpdf.io.exceptions.IoExceptionMessageConstant;
+
+import java.io.BufferedOutputStream;
+import java.io.DataOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
+import java.util.Map;
+import java.util.Map.Entry;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
@@ -48,8 +56,11 @@ private UrlUtil() {
*
* This method makes the conversion of this library from the JAVA 2 platform
* to a JDK1.1.x-version easier.
+ *
* @param filename a given filename
+ *
* @return a valid URL
+ *
* @throws java.net.MalformedURLException If a protocol handler for the URL could not be found,
* or if some other error occurred while constructing the URL
*/
@@ -65,7 +76,9 @@ public static URL toURL(String filename) throws MalformedURLException {
/**
* This method makes a normalized URI from a given filename.
+ *
* @param filename a given filename
+ *
* @return a valid URI
*/
public static URI toNormalizedURI(String filename) {
@@ -74,7 +87,9 @@ public static URI toNormalizedURI(String filename) {
/**
* This method makes a normalized URI from a given file.
+ *
* @param file a given filename
+ *
* @return a valid URI
*/
public static URI toNormalizedURI(File file) {
@@ -85,6 +100,7 @@ public static URI toNormalizedURI(File file) {
* Get the entire URI string which is properly encoded.
*
* @param uri URI which convert to string
+ *
* @return URI string representation
*/
public static String toAbsoluteURI(URI uri) {
@@ -97,8 +113,11 @@ public static InputStream openStream(URL url) throws IOException {
/**
* This method gets uri string from a file.
+ *
* @param filename a given filename
+ *
* @return a uri string
+ *
* @throws MalformedURLException If a protocol handler for the URL could not be found,
* or if some other error occurred while constructing the URL
*/
@@ -108,7 +127,9 @@ public static String getFileUriString(String filename) throws MalformedURLExcept
/**
* This method gets normalized uri string from a file.
+ *
* @param filename a given filename
+ *
* @return a normalized uri string
*/
public static String getNormalizedFileUriString(String filename) {
@@ -119,11 +140,11 @@ public static String getNormalizedFileUriString(String filename) {
* Gets the input stream of connection related to last redirected url. You should manually close input stream after
* calling this method to not hold any open resources.
*
- * @param initialUrl an initial URL.
+ * @param initialUrl an initial URL
*
- * @return an input stream of connection related to the last redirected url.
+ * @return an input stream of connection related to the last redirected url
*
- * @throws IOException signals that an I/O exception has occurred.
+ * @throws IOException signals that an I/O exception has occurred
*/
public static InputStream getInputStreamOfFinalConnection(URL initialUrl) throws IOException {
return getInputStreamOfFinalConnection(initialUrl, DEFAULT_CONNECT_TIMEOUT,
@@ -134,56 +155,137 @@ public static InputStream getInputStreamOfFinalConnection(URL initialUrl) throws
* Gets the input stream of connection related to last redirected url. You should manually close input stream after
* calling this method to not hold any open resources.
*
- * @param initialUrl an initial URL.
- * @param connectTimeout a connect timeout in milliseconds.
- * @param readTimeout a read timeout in milliseconds.
+ * @param initialUrl an initial URL
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
*
- * @return an input stream of connection related to the last redirected url.
+ * @return an input stream of connection related to the last redirected url
*
- * @throws IOException signals that an I/O exception has occurred.
+ * @throws IOException signals that an I/O exception has occurred
*/
public static InputStream getInputStreamOfFinalConnection(URL initialUrl, int connectTimeout, int readTimeout)
throws IOException {
- return getInputStreamOfFinalConnection(initialUrl, connectTimeout, readTimeout, null);
+ return getInputStreamOfFinalConnection(initialUrl, connectTimeout, readTimeout, null, null);
}
/**
* Gets the input stream of connection related to last redirected url. You should manually close input stream after
* calling this method to not hold any open resources.
*
- * @param initialUrl an initial URL.
- * @param connectTimeout a connect timeout in milliseconds.
- * @param readTimeout a read timeout in milliseconds.
- * @param sslContext {@link SSLContext} to configure ssl connection.
+ * @param initialUrl an initial URL
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
+ * @param requestHeaders a set of custom request headers to set
*
- * @return an input stream of connection related to the last redirected url.
+ * @return an input stream of connection related to the last redirected url
*
- * @throws IOException signals that an I/O exception has occurred.
+ * @throws IOException signals that an I/O exception has occurred
+ */
+ public static InputStream getInputStreamOfFinalConnection(URL initialUrl, int connectTimeout, int readTimeout,
+ Map requestHeaders)
+ throws IOException {
+ return getInputStreamOfFinalConnection(initialUrl, connectTimeout, readTimeout, null, requestHeaders);
+ }
+
+
+ /**
+ * Gets the input stream of connection related to last redirected url. You should manually close input stream after
+ * calling this method to not hold any open resources.
+ *
+ * @param initialUrl an initial URL
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
+ * @param sslContext {@link SSLContext} to configure ssl connection
+ *
+ * @return an input stream of connection related to the last redirected url
+ *
+ * @throws IOException signals that an I/O exception has occurred
*/
public static InputStream getInputStreamOfFinalConnection(URL initialUrl, int connectTimeout, int readTimeout,
SSLContext sslContext) throws IOException {
- final URLConnection finalConnection = getFinalConnection(initialUrl, connectTimeout, readTimeout, sslContext);
+ return getInputStreamOfFinalConnection(initialUrl, connectTimeout, readTimeout, sslContext, null);
+ }
+
+ /**
+ * Gets the input stream of connection related to last redirected url. You should manually close input stream after
+ * calling this method to not hold any open resources.
+ *
+ * @param initialUrl an initial URL
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
+ * @param sslContext {@link SSLContext} to configure ssl connection
+ * @param requestHeaders a set of custom request headers to set
+ *
+ * @return an input stream of connection related to the last redirected url
+ *
+ * @throws IOException signals that an I/O exception has occurred
+ */
+ public static InputStream getInputStreamOfFinalConnection(URL initialUrl, int connectTimeout, int readTimeout,
+ SSLContext sslContext, Map requestHeaders) throws IOException {
+ final URLConnection finalConnection =
+ getFinalConnection(initialUrl, connectTimeout, readTimeout, sslContext, requestHeaders);
return finalConnection.getInputStream();
}
/**
- * Gets the connection related to the last redirected url. You should close connection manually after calling
- * this method, to not hold any open resources.
+ * Gets the {@link InputStream} with the data from a provided URL by instantiating an HTTP connection to the URL.
*
- * @param initialUrl an initial URL.
- * @param connectTimeout a connect timeout in milliseconds.
- * @param readTimeout a read timeout in milliseconds.
+ * @param url a URL to connect to
+ * @param request data to send to the URL
+ * @param headers HTTP headers to set for the outgoing connection
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
*
- * @return connection related to the last redirected url.
+ * @return the input stream with the retrieved data
*
- * @throws IOException signals that an I/O exception has occurred.
+ * @throws IOException signals that an I/O exception has occurred
*/
+ public static InputStream get(URL url, byte[] request, Map headers,
+ int connectTimeout, int readTimeout) throws IOException {
+ HttpURLConnection connection = (HttpURLConnection) url.openConnection();
+ for (Map.Entry header : headers.entrySet()) {
+ connection.setRequestProperty(header.getKey(), header.getValue());
+ }
+ connection.setDoOutput(true);
+ connection.setConnectTimeout(connectTimeout);
+ connection.setReadTimeout(readTimeout);
+ OutputStream out = connection.getOutputStream();
+ DataOutputStream dataOut = new DataOutputStream(new BufferedOutputStream(out));
+ dataOut.write(request);
+ dataOut.flush();
+ dataOut.close();
+ if (connection.getResponseCode() / 100 != 2) {
+ throw new com.itextpdf.io.exceptions.IOException(IoExceptionMessageConstant.INVALID_HTTP_RESPONSE)
+ .setMessageParams(connection.getResponseCode());
+ }
+ return connection.getInputStream();
+ }
+
+ /**
+ * Gets the connection related to the last redirected url. You should close connection manually after calling
+ * this method, to not hold any open resources.
+ *
+ * @param initialUrl an initial URL
+ * @param connectTimeout a connect timeout in milliseconds
+ * @param readTimeout a read timeout in milliseconds
+ * @param requestHeaders a set of custom request headers to set
+ *
+ * @return connection related to the last redirected url
+ *
+ * @throws IOException signals that an I/O exception has occurred
+ */
static URLConnection getFinalConnection(URL initialUrl, int connectTimeout, int readTimeout,
- SSLContext sslContext) throws IOException {
+ SSLContext sslContext,
+ Map requestHeaders) throws IOException {
URL nextUrl = initialUrl;
URLConnection connection = null;
while (nextUrl != null) {
connection = nextUrl.openConnection();
+ if (requestHeaders != null) {
+ for(Entry header : requestHeaders.entrySet()) {
+ connection.setRequestProperty(header.getKey(), header.getValue());
+ }
+ }
if (sslContext != null && connection instanceof HttpsURLConnection) {
((HttpsURLConnection) connection).setSSLSocketFactory(sslContext.getSocketFactory());
}
diff --git a/io/src/main/java/com/itextpdf/io/util/XmlUtil.java b/io/src/main/java/com/itextpdf/io/util/XmlUtil.java
index 454a46b072..930c78923b 100644
--- a/io/src/main/java/com/itextpdf/io/util/XmlUtil.java
+++ b/io/src/main/java/com/itextpdf/io/util/XmlUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/sharpenconfig/java/com/itextpdf/io/SharpenConfigMapping.java b/io/src/sharpenconfig/java/com/itextpdf/io/SharpenConfigMapping.java
index 6a5c54b11e..8f6405148f 100644
--- a/io/src/sharpenconfig/java/com/itextpdf/io/SharpenConfigMapping.java
+++ b/io/src/sharpenconfig/java/com/itextpdf/io/SharpenConfigMapping.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -81,6 +81,7 @@ public void applyMappingConfiguration(MappingConfigurator configurator) {
configurator.mapMethod("java.io.DataInputStreamReadFully", "iText.IO.Util.StreamUtil.ReadFully", false);
configurator.mapMethod("java.net.URL.openStream", "iText.IO.Util.UrlUtil.OpenStream", false);
configurator.mapMethod("java.lang.Character.isWhitespace", "iText.IO.Util.TextUtil.IsWhiteSpace", false);
+ configurator.mapType("java.io.FilterOutputStream", "iText.Commons.Utils.FilterOutputStream");
configurator.addIfPreprocessorDirectiveCondition("com.itextpdf.io.image.ImageDataFactory.create(java.awt.Image,java.awt.Color)", "!NETSTANDARD2_0");
configurator.addIfPreprocessorDirectiveCondition("com.itextpdf.io.image.ImageDataFactory.create(java.awt.Image,java.awt.Color,boolean)", "!NETSTANDARD2_0");
diff --git a/io/src/test/java/com/itextpdf/io/AdobeGlyphListTest.java b/io/src/test/java/com/itextpdf/io/AdobeGlyphListTest.java
index c1058a49e5..7ca2b293a9 100644
--- a/io/src/test/java/com/itextpdf/io/AdobeGlyphListTest.java
+++ b/io/src/test/java/com/itextpdf/io/AdobeGlyphListTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/UtilitiesTest.java b/io/src/test/java/com/itextpdf/io/UtilitiesTest.java
index a251157e7e..b95ffbaca6 100644
--- a/io/src/test/java/com/itextpdf/io/UtilitiesTest.java
+++ b/io/src/test/java/com/itextpdf/io/UtilitiesTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/CFFFontSubsetIntegrationTest.java b/io/src/test/java/com/itextpdf/io/font/CFFFontSubsetIntegrationTest.java
index 7af3cea484..4fee05cb1b 100644
--- a/io/src/test/java/com/itextpdf/io/font/CFFFontSubsetIntegrationTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/CFFFontSubsetIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -26,24 +26,21 @@ This file is part of the iText (R) project.
import com.itextpdf.io.source.RandomAccessSourceFactory;
import com.itextpdf.test.ExtendedITextTest;
-import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
@Tag("IntegrationTest")
public class CFFFontSubsetIntegrationTest extends ExtendedITextTest {
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/CFFFontSubsetIntegrationTest/";
- private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/sharedFontsResourceFiles/";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
private static final String CJK_JP_BOLD_PATH = FONTS_FOLDER + "NotoSansCJKjp-Bold.otf";
private static final int CJK_JP_BOLD_CFF_OFFSET = 259880;
@@ -53,11 +50,11 @@ public class CFFFontSubsetIntegrationTest extends ExtendedITextTest {
private static final int JP_REGULAR_CFF_OFFSET = 337316;
private static final int JP_REGULAR_CFF_LENGTH = 4210891;
- private static final String PURITAN_PATH = FONTS_FOLDER + "Puritan2.otf";
+ private static final String PURITAN_PATH = FONTS_FOLDER + "Puritan-Regular.otf";
@Test
public void subsetNotoSansCjkJpBoldNoUsedGlyphsTest() throws IOException {
- String cmpCff = SOURCE_FOLDER + "subsetNotoSansCJKjpBoldNoUsedGlyphs.cff";
+ String cmpCff = FONTS_FOLDER + "subsetNotoSansCJKjpBoldNoUsedGlyphs.cff";
Set glyphsUsed = Collections.emptySet();
@@ -73,7 +70,7 @@ public void subsetNotoSansCjkJpBoldNoUsedGlyphsTest() throws IOException {
@Test
public void subsetNotoSansCjkJpBoldTwoUsedGlyphsTest() throws IOException {
- String cmpCff = SOURCE_FOLDER + "subsetNotoSansCJKjpBoldTwoUsedGlyphs.cff";
+ String cmpCff = FONTS_FOLDER + "subsetNotoSansCJKjpBoldTwoUsedGlyphs.cff";
// In this case cid == gid for given characters.
// \u20eab "𠺫"
@@ -105,7 +102,7 @@ public void subsetNotoSansJpRegularOneUsedGlyphTest() throws IOException {
int expectedSubsetLength = 121796;
Assertions.assertEquals(expectedSubsetLength, cffSubsetBytes.length);
- byte[] cmpBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subsetNotoSansJPRegularOneUsedGlyph.cff"));
+ byte[] cmpBytes = Files.readAllBytes(Paths.get(FONTS_FOLDER + "subsetNotoSansJPRegularOneUsedGlyph.cff"));
Assertions.assertArrayEquals(cmpBytes, cffSubsetBytes);
}
@@ -117,7 +114,7 @@ public void subsetNonCidCFFFontRangeCheck() throws IOException {
byte[] cffData = new TrueTypeFont(PURITAN_PATH).getFontStreamBytes();
byte[] cffSubsetBytes = new CFFFontSubset(cffData, glyphsUsed).Process();
CFFFont result = new CFFFont(cffSubsetBytes);
- int expectedCharsetLength = 255;
+ int expectedCharsetLength = 237;
// skip over the format ID (1 byte) and the first SID (2 bytes)
result.seek(result.fonts[0].getCharsetOffset() + 3);
Assertions.assertEquals(expectedCharsetLength - 2, result.getCard16());
diff --git a/io/src/test/java/com/itextpdf/io/font/CFFFontTest.java b/io/src/test/java/com/itextpdf/io/font/CFFFontTest.java
index 8eb3f67e89..5d0e1f08b6 100644
--- a/io/src/test/java/com/itextpdf/io/font/CFFFontTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/CFFFontTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -33,13 +33,12 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class CFFFontTest extends ExtendedITextTest {
-
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/sharedFontsResourceFiles/";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void seekTest() throws IOException {
RandomAccessFileOrArray raf = new RandomAccessFileOrArray(new RandomAccessSourceFactory()
- .createBestSource(SOURCE_FOLDER + "NotoSansCJKjp-Bold.otf"));
+ .createBestSource(FONTS_FOLDER + "NotoSansCJKjp-Bold.otf"));
int offsetToCff = 259880;
int cffLength = 16023217;
@@ -66,7 +65,7 @@ public void seekTest() throws IOException {
@Test
public void getPositionTest() throws IOException {
RandomAccessFileOrArray raf = new RandomAccessFileOrArray(new RandomAccessSourceFactory()
- .createBestSource(SOURCE_FOLDER + "NotoSansCJKjp-Bold.otf"));
+ .createBestSource(FONTS_FOLDER + "NotoSansCJKjp-Bold.otf"));
int offsetToCff = 259880;
int cffLength = 16023217;
diff --git a/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderNoFontAsianTest.java b/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderNoFontAsianTest.java
index 65e7e6d67a..46afbae07c 100644
--- a/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderNoFontAsianTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderNoFontAsianTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderTest.java b/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderTest.java
index c873185846..dc0229f78d 100644
--- a/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/CjkResourceLoaderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/FontCacheTest.java b/io/src/test/java/com/itextpdf/io/font/FontCacheTest.java
index eda7596297..9c6474ee1a 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontCacheTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontCacheTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -41,7 +41,7 @@ public void before() {
@Test
public void clearFontCacheTest() {
- String fontName = "FreeSans.ttf";
+ String fontName = "NotoSans-Regular.ttf";
Assertions.assertNull(FontCache.getFont(fontName));
FontProgram fontProgram = new FontProgramMock();
diff --git a/io/src/test/java/com/itextpdf/io/font/FontEncodingTest.java b/io/src/test/java/com/itextpdf/io/font/FontEncodingTest.java
index 4bd9424ff5..0bde08516e 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontEncodingTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontEncodingTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/FontProgramDescriptorFactoryTest.java b/io/src/test/java/com/itextpdf/io/font/FontProgramDescriptorFactoryTest.java
index 4948d94104..a6a5828a9d 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontProgramDescriptorFactoryTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontProgramDescriptorFactoryTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/FontProgramFactoryTest.java b/io/src/test/java/com/itextpdf/io/font/FontProgramFactoryTest.java
index 9fe41cb855..4198a1c17c 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontProgramFactoryTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontProgramFactoryTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -34,7 +34,7 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class FontProgramFactoryTest extends ExtendedITextTest {
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/FontProgramFactoryTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void createRegisteredFontTest() throws IOException {
@@ -56,7 +56,7 @@ public void registerFontFamilyTest() throws IOException {
@Test
public void createTrueTypeWoffFontTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "SourceSerif4-Black.woff"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "SourceSerif4-Black.woff"));
TrueTypeFont woffFont = FontProgramFactory.createTrueTypeFont(fontBytes, false);
Assertions.assertNotNull(woffFont);
Assertions.assertEquals(1463, woffFont.bBoxes.length);
@@ -64,10 +64,10 @@ public void createTrueTypeWoffFontTest() throws IOException {
@Test
public void tryToCreateTrueTypeWoff2FontTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "valid.woff2"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "BellefairRegularLatin.woff2"));
TrueTypeFont woff2Font = FontProgramFactory.createTrueTypeFont(fontBytes, false);
Assertions.assertNotNull(woff2Font);
- Assertions.assertEquals(4, woff2Font.countOfGlyphs());
+ Assertions.assertEquals(209, woff2Font.countOfGlyphs());
}
}
diff --git a/io/src/test/java/com/itextpdf/io/font/FontProgramMultiThreadedTest.java b/io/src/test/java/com/itextpdf/io/font/FontProgramMultiThreadedTest.java
index 53a5cc1f38..fa6febde4c 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontProgramMultiThreadedTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontProgramMultiThreadedTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -32,8 +32,8 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class FontProgramMultiThreadedTest extends ExtendedITextTest {
-
- private static final String FONT = "./src/test/resources/com/itextpdf/io/font/otf/FreeSans.ttf";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String FONT = FONTS_FOLDER + "NotoSans-Regular.ttf";
@Test
public void fontSubsetTest() throws InterruptedException, IOException {
@@ -49,7 +49,7 @@ public void fontSubsetTest() throws InterruptedException, IOException {
}
for (TestThread thread : threads) {
Assertions.assertFalse(thread.exceptionCaught, "Exception during font subsetting");
- Assertions.assertEquals(2956, thread.subsetSize);
+ Assertions.assertEquals(3680, thread.subsetSize);
}
}
diff --git a/io/src/test/java/com/itextpdf/io/font/FontProgramTest.java b/io/src/test/java/com/itextpdf/io/font/FontProgramTest.java
index 2c009d55f6..2be3cbf52f 100644
--- a/io/src/test/java/com/itextpdf/io/font/FontProgramTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/FontProgramTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -37,6 +37,7 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class FontProgramTest extends ExtendedITextTest {
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
private static final String notExistingFont = "some-font.ttf";
@BeforeEach
@@ -68,16 +69,16 @@ public void registerDirectoryOpenTypeTest() {
FontProgramFactory.clearRegisteredFonts();
FontProgramFactory.clearRegisteredFontFamilies();
FontCache.clearSavedFonts();
- FontProgramFactory.registerFontDirectory("./src/test/resources/com/itextpdf/io/font/otf/");
+ FontProgramFactory.registerFontDirectory(FONT_FOLDER);
- Assertions.assertEquals(43, FontProgramFactory.getRegisteredFonts().size());
- Assertions.assertNull(FontCache.getFont("./src/test/resources/com/itextpdf/io/font/otf/FreeSansBold.ttf"));
- Assertions.assertTrue(FontProgramFactory.getRegisteredFonts().contains("free sans lihavoitu"));
+ Assertions.assertEquals(52, FontProgramFactory.getRegisteredFonts().size());
+ Assertions.assertNull(FontCache.getFont("./src/test/resources/com/itextpdf/io/font/FreeSansBold.ttf"));
+ Assertions.assertTrue(FontProgramFactory.getRegisteredFonts().contains("free sans bold"));
}
@Test
public void registerDirectoryType1Test() throws IOException {
- FontProgramFactory.registerFontDirectory("./src/test/resources/com/itextpdf/io/font/type1/");
+ FontProgramFactory.registerFontDirectory("./src/test/resources/com/itextpdf/io/");
FontProgram computerModern = FontProgramFactory.createRegisteredFont("computer modern");
FontProgram cmr10 = FontProgramFactory.createRegisteredFont("cmr10");
Assertions.assertNull(computerModern);
@@ -86,7 +87,7 @@ public void registerDirectoryType1Test() throws IOException {
@Test
public void registerDirectoryType1RecursivelyTest() throws IOException {
- FontProgramFactory.registerFontDirectoryRecursively("./src/test/resources/com/itextpdf/io/font/type1/");
+ FontProgramFactory.registerFontDirectoryRecursively("./src/test/resources/com/itextpdf/io/");
FontProgram computerModern = FontProgramFactory.createRegisteredFont("computer modern");
FontProgram cmr10 = FontProgramFactory.createRegisteredFont("cmr10");
Assertions.assertNotNull(computerModern);
diff --git a/io/src/test/java/com/itextpdf/io/font/LoadAllAsianFontsTest.java b/io/src/test/java/com/itextpdf/io/font/LoadAllAsianFontsTest.java
index 84c6bc9fe1..95f53c6ccc 100644
--- a/io/src/test/java/com/itextpdf/io/font/LoadAllAsianFontsTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/LoadAllAsianFontsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/MonospaceFontTest.java b/io/src/test/java/com/itextpdf/io/font/MonospaceFontTest.java
index 89cd5b2d90..86cea40673 100644
--- a/io/src/test/java/com/itextpdf/io/font/MonospaceFontTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/MonospaceFontTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -29,23 +29,23 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class MonospaceFontTest extends ExtendedITextTest {
- private static final String sourceFolder = "./src/test/resources/com/itextpdf/io/font/MonospaceFontTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void openMono() throws java.io.IOException {
- TrueTypeFont font = new TrueTypeFont(sourceFolder + "DejaVuSansMono.ttf");
+ TrueTypeFont font = new TrueTypeFont(FONT_FOLDER + "DejaVuSansMono.ttf");
Assertions.assertNotNull(font.getGlyph('A'));
}
@Test
public void openSans() throws java.io.IOException {
- TrueTypeFont font = new TrueTypeFont(sourceFolder + "DejaVuSans.ttf");
+ TrueTypeFont font = new TrueTypeFont(FONT_FOLDER + "DejaVuSans.ttf");
Assertions.assertNotNull(font.getGlyph('A'));
}
@Test
public void openSerif() throws java.io.IOException {
- TrueTypeFont font = new TrueTypeFont(sourceFolder + "DejaVuSerif.ttf");
+ TrueTypeFont font = new TrueTypeFont(FONT_FOLDER + "DejaVuSerif.ttf");
Assertions.assertNotNull(font.getGlyph('A'));
}
diff --git a/io/src/test/java/com/itextpdf/io/font/OpenTypeParserTest.java b/io/src/test/java/com/itextpdf/io/font/OpenTypeParserTest.java
index 96401de908..c06c620270 100644
--- a/io/src/test/java/com/itextpdf/io/font/OpenTypeParserTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/OpenTypeParserTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -39,12 +39,12 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class OpenTypeParserTest extends ExtendedITextTest {
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/OpenTypeParserTest/";
- private static final String FREESANS_FONT_PATH = "./src/test/resources/com/itextpdf/io/font/otf/FreeSans.ttf";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String NOTO_SANS_FONT_PATH = FONTS_FOLDER + "NotoSans-Regular.ttf";
@Test
public void tryToReadFontSubsetWithoutGlyfTableTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subsetWithoutGlyfTable.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONTS_FOLDER + "subsetWithoutGlyfTable.ttf"));
OpenTypeParser parser = new OpenTypeParser(fontBytes);
parser.loadTables(true);
Set usedGlyphs = new HashSet();
@@ -61,7 +61,7 @@ public void tryToReadFontSubsetWithoutGlyfTableTest() throws IOException {
@Test
public void getFlatGlyphsCompositeTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(FREESANS_FONT_PATH));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(NOTO_SANS_FONT_PATH));
OpenTypeParser parser = new OpenTypeParser(fontBytes);
parser.loadTables(true);
Set usedGlyphs = new HashSet();
@@ -72,13 +72,13 @@ public void getFlatGlyphsCompositeTest() throws IOException {
Assertions.assertEquals(4, glyphs.size());
Assertions.assertEquals(137, glyphs.get(0));
Assertions.assertEquals(0, glyphs.get(1));
- Assertions.assertEquals(586, glyphs.get(2));
- Assertions.assertEquals(38, glyphs.get(3));
+ Assertions.assertEquals(38, glyphs.get(2));
+ Assertions.assertEquals(122, glyphs.get(3));
}
@Test
public void smallNumberOfMetricsTest() throws IOException {
- OpenTypeParser parser = new OpenTypeParser(SOURCE_FOLDER + "NotoSansAndSpaceMono.ttc", 1);
+ OpenTypeParser parser = new OpenTypeParser(FONTS_FOLDER + "NotoSansAndSpaceMono.ttc", 1);
parser.loadTables(true);
Set usedGlyphs = new HashSet();
usedGlyphs.add(36);
diff --git a/io/src/test/java/com/itextpdf/io/font/PdfEncodingsTest.java b/io/src/test/java/com/itextpdf/io/font/PdfEncodingsTest.java
index daf347f1e3..6c479a051e 100644
--- a/io/src/test/java/com/itextpdf/io/font/PdfEncodingsTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/PdfEncodingsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/ResourceTestUtil.java b/io/src/test/java/com/itextpdf/io/font/ResourceTestUtil.java
index 5acbf8537d..1fdf9527fe 100644
--- a/io/src/test/java/com/itextpdf/io/font/ResourceTestUtil.java
+++ b/io/src/test/java/com/itextpdf/io/font/ResourceTestUtil.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/TrueTypeFontIntegrationTest.java b/io/src/test/java/com/itextpdf/io/font/TrueTypeFontIntegrationTest.java
index d46a7ae180..82dd375f2b 100644
--- a/io/src/test/java/com/itextpdf/io/font/TrueTypeFontIntegrationTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/TrueTypeFontIntegrationTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -40,12 +40,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class TrueTypeFontIntegrationTest extends ExtendedITextTest {
- private static final String SHARED_FOLDER = "./src/test/resources/com/itextpdf/io/font/sharedFontsResourceFiles/";
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/TrueTypeFontIntegrationTest/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void simpleSubsetTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SHARED_FOLDER + "NotoSans-Regular.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "NotoSans-Regular.ttf"));
TrueTypeFont font = FontProgramFactory.createTrueTypeFont(fontBytes, false);
Set usedGlyphs = new HashSet();
@@ -56,7 +55,7 @@ public void simpleSubsetTest() throws IOException {
byte[] subsetFontBytes = font.getSubset(usedGlyphs, true);
TrueTypeFont subsetFont = FontProgramFactory.createTrueTypeFont(subsetFontBytes, true);
- Assertions.assertEquals(3271, font.bBoxes.length);
+ Assertions.assertEquals(4702, font.bBoxes.length);
Assertions.assertEquals(39, subsetFont.bBoxes.length);
Assertions.assertNotNull(subsetFont.bBoxes[36]);
Assertions.assertNull(subsetFont.bBoxes[35]);
@@ -64,7 +63,7 @@ public void simpleSubsetTest() throws IOException {
@Test
public void simpleSubsetWithoutTableSubsetTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SHARED_FOLDER + "NotoSans-Regular.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "NotoSans-Regular.ttf"));
TrueTypeFont font = FontProgramFactory.createTrueTypeFont(fontBytes, false);
Set usedGlyphs = new HashSet();
@@ -75,7 +74,7 @@ public void simpleSubsetWithoutTableSubsetTest() throws IOException {
byte[] subsetFontBytes = font.getSubset(usedGlyphs, false);
TrueTypeFont subsetFont = FontProgramFactory.createTrueTypeFont(subsetFontBytes, false);
- Assertions.assertEquals(3271, font.bBoxes.length);
+ Assertions.assertEquals(4702, font.bBoxes.length);
Assertions.assertEquals(39, subsetFont.bBoxes.length);
Assertions.assertNotNull(subsetFont.bBoxes[36]);
Assertions.assertNull(subsetFont.bBoxes[35]);
@@ -83,11 +82,11 @@ public void simpleSubsetWithoutTableSubsetTest() throws IOException {
@Test
public void simpleSubsetMergeTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset1.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset1.ttf"));
// Subset for XBC
TrueTypeFont subset1 = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset2.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset2.ttf"));
// Subset for ABC
TrueTypeFont subset2 = FontProgramFactory.createTrueTypeFont(fontBytes, true);
@@ -114,13 +113,13 @@ public void simpleSubsetMergeTest() throws IOException {
public void noCommonCmapPdfTrueTypeMergeTest() throws IOException {
// subsets are created using fonttools Python lib with the following command
// fonttools subset ./NotoSans-Regular.ttf --text="ABC" --retain-gids --layout-features='*' --notdef-glyph --output-file=subset_abc.ttf
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_abc.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_abc.ttf"));
TrueTypeFont subsetAbc = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_def.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_def.ttf"));
TrueTypeFont subsetDef = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_xyz.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_xyz.ttf"));
TrueTypeFont subsetXyz = FontProgramFactory.createTrueTypeFont(fontBytes, true);
Map> toMerge = new HashMap>();
@@ -153,16 +152,16 @@ public void noCommonCmapPdfTrueTypeMergeTest() throws IOException {
public void commonCmapPdfTrueTypeMergeTest() throws IOException {
// subsets are created using fonttools Python lib with the following command
// fonttools subset ./NotoSans-Regular.ttf --text="ABC" --retain-gids --layout-features='*' --notdef-glyph --output-file=subset_abc.ttf
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_abc.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_abc.ttf"));
TrueTypeFont subsetAbc = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_abc_def_xyz.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_abc_def_xyz.ttf"));
TrueTypeFont subsetAbcDefXyz = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_def.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_def.ttf"));
TrueTypeFont subsetDef = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_xyz.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_xyz.ttf"));
TrueTypeFont subsetXyz = FontProgramFactory.createTrueTypeFont(fontBytes, true);
Map> toMerge = new HashMap>();
@@ -207,13 +206,13 @@ public void commonCmapPdfTrueTypeMergeTest() throws IOException {
public void noCommonCmapPdfType0MergeTest() throws IOException {
// subsets are created using fonttools Python lib with the following command
// fonttools subset ./NotoSans-Regular.ttf --text="ABC" --retain-gids --layout-features='*' --notdef-glyph --output-file=subset_abc.ttf
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_abc.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_abc.ttf"));
TrueTypeFont subsetAbc = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_def.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_def.ttf"));
TrueTypeFont subsetDef = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_xyz.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_xyz.ttf"));
TrueTypeFont subsetXyz = FontProgramFactory.createTrueTypeFont(fontBytes, true);
Map> toMerge = new HashMap>();
@@ -253,13 +252,13 @@ public void noCommonCmapPdfType0MergeTest() throws IOException {
public void noCommonCmapUnknownPdfTypeMergeTest() throws IOException {
// subsets are created using fonttools Python lib with the following command
// fonttools subset ./NotoSans-Regular.ttf --text="ABC" --retain-gids --layout-features='*' --notdef-glyph --output-file=subset_abc.ttf
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_abc.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_abc.ttf"));
TrueTypeFont subsetAbc = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_def.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_def.ttf"));
TrueTypeFont subsetDef = FontProgramFactory.createTrueTypeFont(fontBytes, true);
- fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subset_xyz.ttf"));
+ fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subset_xyz.ttf"));
TrueTypeFont subsetXyz = FontProgramFactory.createTrueTypeFont(fontBytes, true);
Map> toMerge = new HashMap>();
@@ -290,7 +289,7 @@ public void noCommonCmapUnknownPdfTypeMergeTest() throws IOException {
@Test
public void tryToReadFontSubsetWithoutGlyfTableTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subsetWithoutGlyfTable.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subsetWithoutGlyfTable.ttf"));
Exception e = Assertions.assertThrows(com.itextpdf.io.exceptions.IOException.class, () ->
FontProgramFactory.createTrueTypeFont(fontBytes, true));
String exp = MessageFormatUtil.format(IoExceptionMessageConstant.TABLE_DOES_NOT_EXIST, "glyf");
@@ -299,13 +298,13 @@ public void tryToReadFontSubsetWithoutGlyfTableTest() throws IOException {
@Test
public void readFontSubsetWithoutOs2TableTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subsetWithoutOsTable.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subsetWithoutOsTable.ttf"));
AssertUtil.doesNotThrow(() -> FontProgramFactory.createTrueTypeFont(fontBytes, true));
}
@Test
public void tryToReadFontSubsetWithoutOs2TableTest() throws IOException {
- byte[] fontBytes = Files.readAllBytes(Paths.get(SOURCE_FOLDER + "subsetWithoutOsTable.ttf"));
+ byte[] fontBytes = Files.readAllBytes(Paths.get(FONT_FOLDER + "subsetWithoutOsTable.ttf"));
Exception e = Assertions.assertThrows(com.itextpdf.io.exceptions.IOException.class, () ->
FontProgramFactory.createTrueTypeFont(fontBytes, false));
diff --git a/io/src/test/java/com/itextpdf/io/font/TrueTypeFontTest.java b/io/src/test/java/com/itextpdf/io/font/TrueTypeFontTest.java
index b7879cbb40..bd30c2f500 100644
--- a/io/src/test/java/com/itextpdf/io/font/TrueTypeFontTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/TrueTypeFontTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -41,14 +41,14 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class TrueTypeFontTest extends ExtendedITextTest {
- private static final String SOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/sharedFontsResourceFiles/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void notoSansJpCmapTest() throws IOException, InterruptedException {
// 信
char jpChar = '\u4FE1';
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansJP-Regular_charsetDataFormat0.otf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "NotoSansJP-Regular_charsetDataFormat0.otf");
Glyph glyph = fontProgram.getGlyph(jpChar);
Assertions.assertArrayEquals(new char[] {jpChar}, glyph.getUnicodeChars());
@@ -61,7 +61,7 @@ public void notoSansScCmapTest() throws IOException {
// 易
char chChar = '\u6613';
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansSC-Regular.otf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "NotoSansSC-Regular.otf");
Glyph glyph = fontProgram.getGlyph(chChar);
Assertions.assertArrayEquals(new char[] {chChar}, glyph.getUnicodeChars());
@@ -74,7 +74,7 @@ public void notoSansTcCmapTest() throws IOException {
// 易
char chChar = '\u6613';
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansTC-Regular.otf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "NotoSansTC-Regular.otf");
Glyph glyph = fontProgram.getGlyph(chChar);
Assertions.assertArrayEquals(new char[] {chChar}, glyph.getUnicodeChars());
@@ -89,7 +89,7 @@ public void notoSansScMapGlyphsCidsToGidsTest() throws IOException {
int charCidInFont = 20292;
int charGidInFont = 14890;
- TrueTypeFont trueTypeFontProgram = (TrueTypeFont) FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansSC-Regular.otf");
+ TrueTypeFont trueTypeFontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansSC-Regular.otf");
HashSet glyphs = new HashSet<>(Collections.singletonList(charCidInFont));
Set actualResult = trueTypeFontProgram.mapGlyphsCidsToGids(glyphs);
@@ -100,21 +100,21 @@ public void notoSansScMapGlyphsCidsToGidsTest() throws IOException {
@Test
public void cmapPlatform0PlatEnc3Format4Test() throws IOException {
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "glyphs.ttf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "glyphs.ttf");
checkCmapTableEntry(fontProgram, 'f', 2);
checkCmapTableEntry(fontProgram, 'i', 3);
}
@Test
public void cmapPlatform0PlatEnc3Format6Test() throws IOException {
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "glyphs-fmt-6.ttf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "glyphs-fmt-6.ttf");
checkCmapTableEntry(fontProgram, 'f', 2);
checkCmapTableEntry(fontProgram, 'i', 3);
}
@Test
public void checkSxHeightTtfTest() throws IOException {
- FontProgram fontProgram = FontProgramFactory.createFont(SOURCE_FOLDER + "glyphs-fmt-6.ttf");
+ FontProgram fontProgram = FontProgramFactory.createFont(FONT_FOLDER + "glyphs-fmt-6.ttf");
FontMetrics metrics = fontProgram.getFontMetrics();
int xHeight = metrics.getXHeight();
Assertions.assertEquals(536, xHeight);
@@ -122,7 +122,7 @@ public void checkSxHeightTtfTest() throws IOException {
@Test
public void containsCmapTest() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(SOURCE_FOLDER + "glyphs-fmt-6.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "glyphs-fmt-6.ttf");
Assertions.assertEquals(1, fontProgram.getNumberOfCmaps());
Assertions.assertTrue(fontProgram.isCmapPresent(0, 3));
Assertions.assertFalse(fontProgram.isCmapPresent(1, 0));
@@ -131,7 +131,7 @@ public void containsCmapTest() throws IOException {
@Test
public void updateUsedGlyphsSetTest() throws IOException {
TrueTypeFont trueTypeFontProgram =
- (TrueTypeFont) FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansSC-Regular.otf");
+ (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansSC-Regular.otf");
SortedSet usedGlyphs = new TreeSet<>();
@@ -151,7 +151,7 @@ public void updateUsedGlyphsSetTest() throws IOException {
@Test
public void updateUsedGlyphsMapTest() throws IOException {
TrueTypeFont trueTypeFontProgram =
- (TrueTypeFont) FontProgramFactory.createFont(SOURCE_FOLDER + "NotoSansSC-Regular.otf");
+ (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansSC-Regular.otf");
Map usedGlyphs = new HashMap<>();
diff --git a/io/src/test/java/com/itextpdf/io/font/Type1FontTest.java b/io/src/test/java/com/itextpdf/io/font/Type1FontTest.java
index 4a84bb6e83..c0e01814ca 100644
--- a/io/src/test/java/com/itextpdf/io/font/Type1FontTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/Type1FontTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -32,7 +32,7 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class Type1FontTest extends ExtendedITextTest {
- public static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/type1/testPackage/";
+ public static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/TestPackage/";
@Test
public void fillUsingEncodingTest() throws IOException {
diff --git a/io/src/test/java/com/itextpdf/io/font/cmap/CMapByteCidTest.java b/io/src/test/java/com/itextpdf/io/font/cmap/CMapByteCidTest.java
index c189118149..b029abc19b 100644
--- a/io/src/test/java/com/itextpdf/io/font/cmap/CMapByteCidTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/cmap/CMapByteCidTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/cmap/CMapCidToCodepointTest.java b/io/src/test/java/com/itextpdf/io/font/cmap/CMapCidToCodepointTest.java
index 7862d11b1c..7704240a3f 100644
--- a/io/src/test/java/com/itextpdf/io/font/cmap/CMapCidToCodepointTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/cmap/CMapCidToCodepointTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/cmap/CMapCodepointToCidTest.java b/io/src/test/java/com/itextpdf/io/font/cmap/CMapCodepointToCidTest.java
index f4c9497e9e..131b475d7e 100644
--- a/io/src/test/java/com/itextpdf/io/font/cmap/CMapCodepointToCidTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/cmap/CMapCodepointToCidTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/cmap/CMapToUnicodeTest.java b/io/src/test/java/com/itextpdf/io/font/cmap/CMapToUnicodeTest.java
index cc44cc9f56..b4ae80a554 100644
--- a/io/src/test/java/com/itextpdf/io/font/cmap/CMapToUnicodeTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/cmap/CMapToUnicodeTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/cmap/StandardCMapCharsetsTest.java b/io/src/test/java/com/itextpdf/io/font/cmap/StandardCMapCharsetsTest.java
index adaa0e5fae..44c6885467 100644
--- a/io/src/test/java/com/itextpdf/io/font/cmap/StandardCMapCharsetsTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/cmap/StandardCMapCharsetsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/constants/FontWeightsTest.java b/io/src/test/java/com/itextpdf/io/font/constants/FontWeightsTest.java
index 015431f746..37b7ca32bb 100644
--- a/io/src/test/java/com/itextpdf/io/font/constants/FontWeightsTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/constants/FontWeightsTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/ActualTextIteratorTest.java b/io/src/test/java/com/itextpdf/io/font/otf/ActualTextIteratorTest.java
index 67960d3b34..662ff99564 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/ActualTextIteratorTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/ActualTextIteratorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GlyphLinePartTest.java b/io/src/test/java/com/itextpdf/io/font/otf/GlyphLinePartTest.java
index f9b8c1acba..fdb23d1741 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GlyphLinePartTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GlyphLinePartTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GlyphLineTest.java b/io/src/test/java/com/itextpdf/io/font/otf/GlyphLineTest.java
index fb139b5409..5755d54432 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GlyphLineTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GlyphLineTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -37,8 +37,8 @@ This file is part of the iText (R) project.
@Tag("UnitTest")
public class GlyphLineTest extends ExtendedITextTest {
-
- public static final String FREESANS_FONT_PATH = "./src/test/resources/com/itextpdf/io/font/otf/FreeSans.ttf";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String NOTO_SANS_FONT_PATH = FONTS_FOLDER + "NotoSans-Regular.ttf";
private static List constructGlyphListFromString(String text, TrueTypeFont font) {
List glyphList = new ArrayList<>();
@@ -442,7 +442,7 @@ public void diffActualTextEqualsTest() throws IOException {
}
private TrueTypeFont initializeFont() throws IOException {
- byte[] ttf = StreamUtil.inputStreamToArray(FileUtil.getInputStreamForFile(FREESANS_FONT_PATH));
+ byte[] ttf = StreamUtil.inputStreamToArray(FileUtil.getInputStreamForFile(NOTO_SANS_FONT_PATH));
return new TrueTypeFont(ttf);
}
}
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GlyphTest.java b/io/src/test/java/com/itextpdf/io/font/otf/GlyphTest.java
index 73761165b4..cf64eddd17 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GlyphTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GlyphTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType1Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType1Test.java
index 7cd3d8a96a..a7b3eb3762 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType1Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType1Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -35,11 +35,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType1Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType1Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void verifyXAdvanceIsAppliedSubFormat1() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoSansMyanmar-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansMyanmar-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType1 lookup = (GposLookupType1) gposTableReader.getLookupTable(29);
List glyphs = Arrays.asList(new Glyph(fontProgram.getGlyphByCode(174)),
@@ -57,7 +57,7 @@ public void verifyXAdvanceIsAppliedSubFormat1() throws IOException {
@Test
public void verifyPositionIsNotAppliedForIrrelevantGlyphSubFormat1() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoSansMyanmar-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansMyanmar-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType1 lookup = (GposLookupType1) gposTableReader.getLookupTable(29);
List glyphs = Arrays.asList(new Glyph(fontProgram.getGlyphByCode(5)),
@@ -75,7 +75,7 @@ public void verifyPositionIsNotAppliedForIrrelevantGlyphSubFormat1() throws IOEx
@Test
public void verifyDifferentXAdvanceIsAppliedSubFormat2() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoSansMyanmar-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansMyanmar-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType1 lookup = (GposLookupType1) gposTableReader.getLookupTable(16);
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType2Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType2Test.java
index befd86f63e..d05ccfd9ca 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType2Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType2Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -34,8 +34,8 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType2Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType2Test/";
- private static final String DEJAVU_FONT_PATH = RESOURCE_FOLDER + "DejaVuSans.ttf";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String DEJAVU_FONT_PATH =FONT_FOLDER + "DejaVuSans.ttf";
@Test
public void idxEqualToEndLineGpos2Test() throws IOException {
TrueTypeFont font = new TrueTypeFont(DEJAVU_FONT_PATH);
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType4Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType4Test.java
index 01805f3b2a..ca5c7ae228 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType4Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType4Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -36,11 +36,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType4Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType4Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void verifyMarkToBaseAttachment() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(RESOURCE_FOLDER + "Padauk-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(FONT_FOLDER + "Padauk-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType4 lookup = (GposLookupType4) gposTableReader.getLookupTable(192);
List glyphs = Arrays.asList(new Glyph(fontProgram.getGlyphByCode(163)), new Glyph(fontProgram.getGlyphByCode(207)),
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType5Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType5Test.java
index da280574de..debfb85de9 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType5Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType5Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -36,12 +36,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType5Test extends ExtendedITextTest {
-
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType5Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void verifyMarkToBaseAttachment() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoSansKhmer-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(FONT_FOLDER + "NotoSansKhmer-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType5 lookup = (GposLookupType5) gposTableReader.getLookupTable(25);
List glyphs = Arrays.asList(new Glyph(fontProgram.getGlyphByCode(445)), new Glyph(fontProgram.getGlyphByCode(394)));
@@ -61,7 +60,7 @@ public void verifyMarkToBaseAttachment() throws IOException {
// since we will have to emulate previous substitutions and populate the substitution info
// to the glyph line so that mark is attached to the correct component of a ligature
public void testSelectingCorrectAttachmentAlternative() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoNaskhArabic-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(FONT_FOLDER + "NotoNaskhArabic-Regular.ttf");
GlyphLine glyphLine = new GlyphLine(Arrays.asList(fontProgram.getGlyphByCode(513), fontProgram.getGlyphByCode(75)));
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType5 lookup = (GposLookupType5) gposTableReader.getLookupTable(3);
@@ -78,7 +77,7 @@ public void testSelectingCorrectAttachmentAlternative() throws IOException {
@Test
public void testThatNoTransformationsAppliedForNonRelevantGlyphs() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoNaskhArabic-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(FONT_FOLDER + "NotoNaskhArabic-Regular.ttf");
GlyphLine glyphLine = new GlyphLine(Arrays.asList(fontProgram.getGlyph('1'), fontProgram.getGlyphByCode(75)));
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType5 lookup = (GposLookupType5) gposTableReader.getLookupTable(3);
@@ -95,7 +94,7 @@ public void testThatNoTransformationsAppliedForNonRelevantGlyphs() throws IOExce
@Test
public void idxBiggerThanLineEndTest() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoNaskhArabic-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont)FontProgramFactory.createFont(FONT_FOLDER + "NotoNaskhArabic-Regular.ttf");
GlyphLine glyphLine = new GlyphLine(Collections.singletonList(fontProgram.getGlyph(203)));
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType5 lookup = (GposLookupType5) gposTableReader.getLookupTable(3);
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType6Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType6Test.java
index 69e9b5391a..96b88cca88 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType6Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType6Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -35,14 +35,12 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType6Test extends ExtendedITextTest {
-
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/";
-
- private static final String FREE_SANS_FONT_PATH = RESOURCE_FOLDER + "FreeSans.ttf";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String NOTO_SANS_FONT_PATH = FONTS_FOLDER + "NotoSans-Regular.ttf";
@Test
public void idxEqualToEndLineGpos6Test() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FREE_SANS_FONT_PATH);
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(NOTO_SANS_FONT_PATH);
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
GposLookupType6 lookup = new GposLookupType6(gposTableReader, 0, new int[0]);
List glyphs = Arrays.asList(new Glyph(fontProgram.getGlyphByCode(445)),
@@ -55,7 +53,7 @@ public void idxEqualToEndLineGpos6Test() throws IOException {
@Test
public void idxSmallerThanEndLineGpos6Test() throws IOException {
- TrueTypeFont font = new TrueTypeFont(FREE_SANS_FONT_PATH);
+ TrueTypeFont font = new TrueTypeFont(NOTO_SANS_FONT_PATH);
GlyphPositioningTableReader gposTableReader = font.getGposTable();
GposLookupType6 lookup = new GposLookupType6(gposTableReader, 0, new int[0]);
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType7Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType7Test.java
index 70d1ace7e4..29721e855e 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType7Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType7Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -35,7 +35,7 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType7Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType7Test/";
+ private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void verifyXAdvanceIsAppliedForContextualPositioning() throws IOException {
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType8Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType8Test.java
index 2e01cd34f7..6928969415 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType8Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GposLookupType8Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -36,11 +36,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GposLookupType8Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GposLookupType8Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void verifyXAdvanceIsAppliedForContextualPositioning() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "Padauk-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "Padauk-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
List glyphs = Arrays.asList(fontProgram.getGlyphByCode(233), fontProgram.getGlyphByCode(163),
@@ -56,7 +56,7 @@ public void verifyXAdvanceIsAppliedForContextualPositioning() throws IOException
@Test
public void verifyXAdvanceIsAppliedForPosTableLookup8Format2() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "NotoSansMyanmar-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "NotoSansMyanmar-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
List glyphs = Arrays.asList(fontProgram.getGlyphByCode(29),
@@ -79,7 +79,7 @@ public void verifyXAdvanceIsAppliedForPosTableLookup8Format2() throws IOExceptio
@Test
public void verifyXAdvanceIsNotAppliedForUnsatisfiedContextualPositioning() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "Padauk-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "Padauk-Regular.ttf");
GlyphPositioningTableReader gposTableReader = fontProgram.getGposTable();
List glyphs = Arrays.asList(fontProgram.getGlyphByCode(233), fontProgram.getGlyphByCode(163),
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType4Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType4Test.java
index 21b525fc18..2fae7abfd8 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType4Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType4Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -36,11 +36,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GsubLookupType4Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GsubLookupType4Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void testNoIndexOutOfBound() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "DejaVuSansMono.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "DejaVuSansMono.ttf");
GlyphSubstitutionTableReader gsubTableReader = fontProgram.getGsubTable();
List glyphs = Arrays.asList(new Glyph(1, 1, 1),
@@ -61,7 +61,7 @@ public void testNoIndexOutOfBound() throws IOException {
@Test
public void noTransformationTest() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "DejaVuSansMono.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "DejaVuSansMono.ttf");
GlyphSubstitutionTableReader gsubTableReader = fontProgram.getGsubTable();
List glyphs = Arrays.asList(new Glyph(1, 1, 1),
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType6Test.java b/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType6Test.java
index d32e10b95a..eec032755c 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType6Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/GsubLookupType6Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -36,11 +36,11 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class GsubLookupType6Test extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/GsubLookupType6Test/";
+ private static final String FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void testSubstitutionApplied() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "Padauk-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "Padauk-Regular.ttf");
GlyphSubstitutionTableReader gsubTableReader = fontProgram.getGsubTable();
List glyphs = Arrays.asList(fontProgram.getGlyphByCode(233),
@@ -60,7 +60,7 @@ public void testSubstitutionApplied() throws IOException {
@Test
public void testSubstitutionNotApplied() throws IOException {
- TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(RESOURCE_FOLDER + "Padauk-Regular.ttf");
+ TrueTypeFont fontProgram = (TrueTypeFont) FontProgramFactory.createFont(FONT_FOLDER + "Padauk-Regular.ttf");
GlyphSubstitutionTableReader gsubTableReader = fontProgram.getGsubTable();
List glyphs = Arrays.asList(fontProgram.getGlyphByCode(233),
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/LanguageRecordTest.java b/io/src/test/java/com/itextpdf/io/font/otf/LanguageRecordTest.java
index 29ee5e9c23..614be7af91 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/LanguageRecordTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/LanguageRecordTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/OpenTableLookupTest.java b/io/src/test/java/com/itextpdf/io/font/otf/OpenTableLookupTest.java
index f611835f89..a2da533826 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/OpenTableLookupTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/OpenTableLookupTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeFontTableReaderTest.java b/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeFontTableReaderTest.java
index 352070a2de..a7b88bdbe7 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeFontTableReaderTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeFontTableReaderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -38,13 +38,13 @@ This file is part of the iText (R) project.
public class OpenTypeFontTableReaderTest extends ExtendedITextTest {
private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/OpenTypeFontTableReaderTest/";
- private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/sharedFontsResourceFiles/";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
private static final String CJK_JP_BOLD_PATH = FONTS_FOLDER + "NotoSansCJKjp-Bold.otf";
- private static final String SANS_MYANMAR_REGULAR_PATH = RESOURCE_FOLDER + "NotoSansMyanmar-Regular.ttf";
+ private static final String SANS_MYANMAR_REGULAR_PATH = FONTS_FOLDER + "NotoSansMyanmar-Regular.ttf";
@Test
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReaderTest.java b/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReaderTest.java
index 6611ffe5a4..4b3c9ec249 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReaderTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/OpenTypeGdefTableReaderTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -33,7 +33,7 @@ This file is part of the iText (R) project.
@Tag("IntegrationTest")
public class OpenTypeGdefTableReaderTest extends ExtendedITextTest {
- private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/OpenTypeGdefTableReaderTest/";
+ private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
@Test
public void testLookupFlagWithMarkAttachmentTypeAndMarkGlyphWithoutMarkAttachmentClass() throws IOException {
diff --git a/io/src/test/java/com/itextpdf/io/font/otf/OtfReadCommonTest.java b/io/src/test/java/com/itextpdf/io/font/otf/OtfReadCommonTest.java
index 2e95b7ddc4..840b8f4707 100644
--- a/io/src/test/java/com/itextpdf/io/font/otf/OtfReadCommonTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/otf/OtfReadCommonTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -41,9 +41,6 @@ This file is part of the iText (R) project.
public class OtfReadCommonTest extends ExtendedITextTest {
private static final String RESOURCE_FOLDER = "./src/test/resources/com/itextpdf/io/font/otf/OtfReadCommonTest/";
- private static final String RESOURCE_FOLDER_2 = "./src/test/resources/com/itextpdf/io/font/otf"
- + "/GposLookupType7Test/";
-
@Test
public void testReadCoverageFormat1() throws IOException {
// Based on Example 5 from the specification
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/SimpleWoff2DecodeTest.java b/io/src/test/java/com/itextpdf/io/font/woff2/SimpleWoff2DecodeTest.java
index bc5216a4bd..01a5390b00 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/SimpleWoff2DecodeTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/SimpleWoff2DecodeTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -29,14 +29,13 @@ This file is part of the iText (R) project.
import org.junit.jupiter.api.Test;
public class SimpleWoff2DecodeTest extends Woff2DecodeTest {
-
- private static final String sourceFolder = "./src/test/resources/com/itextpdf/io/font/woff2/SimpleWoff2Decode/";
- private static final String targetFolder = TestUtil.getOutputPath() + "/io/font/woff2/SimpleWoff2Decode/";
+ private static final String FONTS_FOLDER = "./src/test/resources/com/itextpdf/io/font/";
+ private static final String DESTINATION_FOLDER = TestUtil.getOutputPath() + "/io/font/woff2/SimpleWoff2Decode/";
@BeforeAll
public static void setUp() {
if (DEBUG) {
- createOrClearDestinationFolder(targetFolder);
+ createOrClearDestinationFolder(DESTINATION_FOLDER);
}
}
@@ -51,6 +50,6 @@ public void bigTTCTest() throws IOException {
}
private void runTest(String fontName) throws IOException {
- runTest(fontName, sourceFolder, targetFolder, true);
+ runTest(fontName, FONTS_FOLDER, DESTINATION_FOLDER, true);
}
}
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/Woff2DecodeTest.java b/io/src/test/java/com/itextpdf/io/font/woff2/Woff2DecodeTest.java
index 6e8c8a91b6..a8556eb997 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/Woff2DecodeTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/Woff2DecodeTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/W3CWoff2DecodeTest.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/W3CWoff2DecodeTest.java
index f44c9d8799..4abdad15d9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/W3CWoff2DecodeTest.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/W3CWoff2DecodeTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -32,8 +32,8 @@ This file is part of the iText (R) project.
import org.junit.jupiter.api.Test;
public abstract class W3CWoff2DecodeTest extends Woff2DecodeTest{
- private static final String baseSourceFolder = "./src/test/resources/com/itextpdf/io/font/woff2/w3c/";
- private static final String baseDestinationFolder = TestUtil.getOutputPath() + "/io/font/woff2/w3c/";
+ private static final String W3C_FONT_FOLDER = "./src/test/resources/com/itextpdf/io/font/w3c/";
+ private static final String W3C_DESTINATION_FOLDER = TestUtil.getOutputPath() + "/io/font/w3c/";
protected abstract String getFontName();
@@ -56,12 +56,12 @@ public void runTest() throws IOException{
private String getDestinationFolder() {
String localPackage = StringNormalizer.toLowerCase(getLocalPackage());
- return baseDestinationFolder + localPackage + File.separatorChar + getTestClassName() + File.separatorChar;
+ return W3C_DESTINATION_FOLDER + localPackage + File.separatorChar + getTestClassName() + File.separatorChar;
}
private String getSourceFolder() {
String localPackage = StringNormalizer.toLowerCase(getLocalPackage());
- return baseSourceFolder + localPackage + File.separatorChar;
+ return W3C_FONT_FOLDER + localPackage + File.separatorChar;
}
private String getTestClassName() {
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum001Test.java
index 8026866351..62311bfd03 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum002Test.java
index f5a4893b0f..9e05b45fbf 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationChecksum002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat001Test.java
index 30452eed84..5d27381359 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat002Test.java
index 321f170e70..6e8a8e4a41 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationLocaFormat002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff001Test.java
index ad5e211eaf..1f7787a9e4 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff002Test.java
index 2b278cea4d..ddedbe9785 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff003Test.java
index 20f84f24f3..1d144c0248 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff004Test.java
index e7bb2ca5ef..9742b7cc93 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff005Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff005Test.java
index 0350958a6a..e1b90109ba 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff005Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff005Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff006Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff006Test.java
index a9060b4bf8..da538f4efe 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff006Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff006Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff007Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff007Test.java
index af5c99b4cc..aabc305120 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff007Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff007Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff008Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff008Test.java
index 2bb975b2da..3e6d521009 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff008Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff008Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff009Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff009Test.java
index f6cd936823..c342b305dc 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff009Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff009Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff010Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff010Test.java
index e0b3ccde04..67d819fe19 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff010Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff010Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff011Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff011Test.java
index b105176599..38de5f5afa 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff011Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff011Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff012Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff012Test.java
index 729c474c55..c47e8ced65 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff012Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff012Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff013Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff013Test.java
index 7a49658c3c..fb51af5cac 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff013Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff013Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff014Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff014Test.java
index 0274af903c..56914d766e 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff014Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff014Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff015Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff015Test.java
index a59f0d8b28..5630809423 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff015Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff015Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff016Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff016Test.java
index 090d314f99..8e1f673203 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff016Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff016Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff017Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff017Test.java
index b42e93da05..2dd093e84c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff017Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff017Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff018Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff018Test.java
index 48f5a20843..55a5466bb7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff018Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff018Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff019Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff019Test.java
index 752c93b548..cfe4e2699b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff019Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff019Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff020Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff020Test.java
index 8ca80bbc53..1ff628a0d7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff020Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff020Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff021Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff021Test.java
index f4b4b19105..70c1b399a7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff021Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff021Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff022Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff022Test.java
index d0ad52cf57..d7dd1caebf 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff022Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff022Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff023Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff023Test.java
index b88edcf387..157b47351a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff023Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff023Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff024Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff024Test.java
index b0ebcfd114..20903162d2 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff024Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff024Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff025Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff025Test.java
index 9f79205aae..329aa91781 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff025Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff025Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff026Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff026Test.java
index c1427daad6..fcfa9e9fea 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff026Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff026Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff027Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff027Test.java
index 0ef3871178..b931bacf75 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff027Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff027Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff028Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff028Test.java
index 3b46f48bf1..91e0930d38 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff028Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff028Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff029Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff029Test.java
index e4c36c8086..938de67b7c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff029Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff029Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff030Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff030Test.java
index dcf53c9622..3a4c8a4da1 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff030Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff030Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff031Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff031Test.java
index d94187e671..77bc4ec804 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff031Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff031Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff032Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff032Test.java
index 3e2885b807..12f11398c9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff032Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff032Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff033Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff033Test.java
index 4741fa6cf6..518a8cc004 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff033Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff033Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff034Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff034Test.java
index b79b3b1422..28d8ce8cc1 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff034Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff034Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff035Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff035Test.java
index df8033030c..9dfea8b7f7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff035Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff035Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff036Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff036Test.java
index 0f07f948ed..8fea36e9bc 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff036Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff036Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff037Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff037Test.java
index f65601ed8a..d3d1bd9819 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff037Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff037Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff038Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff038Test.java
index 77975576f0..970dca3746 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff038Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff038Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff039Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff039Test.java
index 58be5ecdc4..feb9e80607 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff039Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff039Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff040Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff040Test.java
index 1993dc913b..334a3d493d 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff040Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff040Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff041Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff041Test.java
index b8e051d7b6..53e71b8fdd 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff041Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff041Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff042Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff042Test.java
index 1eb33bf798..7d306411a2 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff042Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff042Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff043Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff043Test.java
index e44f87206d..06762e8b05 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff043Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff043Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff044Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff044Test.java
index 8a0e8644e7..88bdf76b0a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff044Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff044Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff045Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff045Test.java
index b53125ac44..e99e633056 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff045Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff045Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff046Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff046Test.java
index 9223b1186e..0ec7cf461e 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff046Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff046Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff047Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff047Test.java
index 9dee04386c..435ec41ba9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff047Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff047Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff048Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff048Test.java
index 9bdb9a3221..27a7ea77f3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff048Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff048Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff049Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff049Test.java
index dce1f1e8c9..a8d7874e96 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff049Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff049Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff050Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff050Test.java
index 5641c952b8..b2ec75ac2b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff050Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff050Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff051Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff051Test.java
index 40b9711615..4a6f626adf 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff051Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff051Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff052Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff052Test.java
index cc16be6090..113a34231a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff052Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff052Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff053Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff053Test.java
index 5e505066df..49a4120f24 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff053Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff053Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff054Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff054Test.java
index b00636f8f4..be6a742a0b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff054Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff054Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff055Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff055Test.java
index 007e1f2561..58f90f16a5 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff055Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff055Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff056Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff056Test.java
index 7d29a49c7d..34f123a210 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff056Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff056Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff057Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff057Test.java
index eaced41ff0..711d17f075 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff057Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff057Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff058Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff058Test.java
index f20dfe4df4..d19d871a45 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff058Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff058Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff059Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff059Test.java
index 4a691394d1..e031621991 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff059Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff059Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff060Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff060Test.java
index 3ad5264fa9..08337be2a7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff060Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff060Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff061Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff061Test.java
index 14349a39db..5c6b942f54 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff061Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff061Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff062Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff062Test.java
index 77bfdd2556..62a31cae4a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff062Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff062Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff063Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff063Test.java
index a4c11420c5..b4b9c58db4 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff063Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff063Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff064Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff064Test.java
index 84220b0f50..2cb8d945c0 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff064Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff064Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff065Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff065Test.java
index 5436416bf4..70e64704cb 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff065Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff065Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff066Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff066Test.java
index 20ae69756e..1bed54c6c3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff066Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff066Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff067Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff067Test.java
index 454a049d32..1e4e941915 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff067Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff067Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff068Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff068Test.java
index af09b8cd9a..2b265e3498 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff068Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff068Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff069Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff069Test.java
index be9df87536..0dc43ec78a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff069Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff069Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff070Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff070Test.java
index 790aaefea5..a3ce13e9e3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff070Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff070Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff071Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff071Test.java
index 26a0249ff7..f4d089b9f6 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff071Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff071Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff072Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff072Test.java
index 8a48956405..0baf371196 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff072Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff072Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff073Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff073Test.java
index 768d442e79..edde207e76 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff073Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff073Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff074Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff074Test.java
index f49b47a747..c7b8e1f778 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff074Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff074Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff075Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff075Test.java
index 9bf7f9a5d0..9b1f65227c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff075Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff075Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff076Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff076Test.java
index 6c34bb5abd..616678429a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff076Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff076Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff077Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff077Test.java
index 4700bea57c..e7ea41d629 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff077Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff077Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff078Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff078Test.java
index c6671175b9..4cc3bc3471 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff078Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff078Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff079Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff079Test.java
index 7f80ec1cb2..702659c4a0 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff079Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff079Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff080Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff080Test.java
index cc766d03c4..c24ddd2114 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff080Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff080Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff081Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff081Test.java
index 448c3a4798..71a8beafbd 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff081Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff081Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff082Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff082Test.java
index c165efaaea..8a04cbd196 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff082Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff082Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff083Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff083Test.java
index d8583728b0..86db77a2be 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff083Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff083Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff084Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff084Test.java
index 47ba2c2b38..9f2c259535 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff084Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff084Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff085Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff085Test.java
index 34c4686f7a..4010e392f3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff085Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff085Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff086Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff086Test.java
index 5f68b2b1fb..25ab779c81 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff086Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff086Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff087Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff087Test.java
index ced53db42a..cf3b403e03 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff087Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff087Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff088Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff088Test.java
index e1143d24d0..183d8f42fb 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff088Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff088Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff089Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff089Test.java
index 1ac9706d2e..fe57bedb10 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff089Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff089Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff090Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff090Test.java
index f7b7d8f3d1..c50b693102 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff090Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff090Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff091Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff091Test.java
index ce7f7bd79d..aa9d5562f1 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff091Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff091Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff092Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff092Test.java
index 17878de8f0..7a06366867 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff092Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff092Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff093Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff093Test.java
index 68eaf9cff3..4e49335e46 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff093Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff093Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff094Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff094Test.java
index 9fa2597a6e..f083800006 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff094Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff094Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff095Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff095Test.java
index 2853d5fcf7..f7870c26a0 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff095Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff095Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff096Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff096Test.java
index 442c0a3188..ae7eca81b5 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff096Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff096Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff097Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff097Test.java
index 8142c27ba7..6b3ed25386 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff097Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff097Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff098Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff098Test.java
index 4d00aafc72..fb23b663e6 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff098Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff098Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff099Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff099Test.java
index 1641c9c89f..09f7fa2652 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff099Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff099Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff100Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff100Test.java
index 425d39c754..0103ed5bb6 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff100Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff100Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff101Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff101Test.java
index 02a6bbb30e..646da64bec 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff101Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff101Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff102Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff102Test.java
index d2dd31ff69..fe72f9d34e 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff102Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff102Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff103Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff103Test.java
index ab33433e6b..e3c3ec4349 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff103Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff103Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff104Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff104Test.java
index fbcdd30d49..87e6c577bd 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff104Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff104Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff105Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff105Test.java
index 26f9259e52..090f53527b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff105Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff105Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff106Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff106Test.java
index 73c787d634..75803d384c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff106Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff106Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff107Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff107Test.java
index e386d99b8b..d8bdec63e9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff107Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff107Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff108Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff108Test.java
index 42b09f803d..ccb06716a2 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff108Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff108Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff109Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff109Test.java
index 5a66007d8b..b2ae93eaa5 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff109Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff109Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff110Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff110Test.java
index 866fca9725..4cda321866 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff110Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff110Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff111Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff111Test.java
index 100f3b6b29..4e326f941f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff111Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff111Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff112Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff112Test.java
index d064d6c8d9..613583a7f8 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff112Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff112Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff113Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff113Test.java
index 6f3875c304..9439a98a8d 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff113Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff113Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff114Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff114Test.java
index 25a8ea36cf..90f04c5c8a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff114Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff114Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff115Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff115Test.java
index 930e431881..bdad00e1ba 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff115Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff115Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff116Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff116Test.java
index e648ec8b5f..dd0a13c86d 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff116Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff116Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff117Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff117Test.java
index cca032bb05..8a2249d307 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff117Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff117Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff118Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff118Test.java
index 904df869e3..f027e49c8f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff118Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff118Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff119Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff119Test.java
index ccbea5382f..1dfe2087b9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff119Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff119Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff120Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff120Test.java
index aa8d6f6082..a29cd7331a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff120Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff120Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff121Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff121Test.java
index 10ee241361..3b7c9d613b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff121Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff121Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff122Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff122Test.java
index 7a5411b721..21c36cc1b3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff122Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff122Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff123Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff123Test.java
index 6b3062cb8f..3bd15715d9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff123Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff123Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff124Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff124Test.java
index 5e1e359344..1ac5aec5af 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff124Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff124Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff125Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff125Test.java
index a52b570140..5030b2197c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff125Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff125Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff126Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff126Test.java
index 29c052523a..276a4d2d1f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff126Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff126Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff127Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff127Test.java
index b9cb9cc89a..60db27b137 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff127Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff127Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff128Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff128Test.java
index 885869a336..1f1fdfa134 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff128Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff128Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff129Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff129Test.java
index b0143f83f4..0bc684ee7a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff129Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff129Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff130Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff130Test.java
index a0ed506d10..3e350ded72 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff130Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff130Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff131Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff131Test.java
index 8b1b2554fe..34bc3a1191 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff131Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff131Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff132Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff132Test.java
index 045565be54..0b8fb3a5ad 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff132Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff132Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff133Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff133Test.java
index 657ea3890e..0d002ed70f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff133Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff133Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff134Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff134Test.java
index e44aebf19e..770159b419 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff134Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff134Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff135Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff135Test.java
index edea2a7501..87c69c4b02 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff135Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff135Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff136Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff136Test.java
index 26c7e0e70f..e718a6c0e9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff136Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff136Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff137Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff137Test.java
index 4f7c00a6ce..64474f7b19 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff137Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff137Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff138Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff138Test.java
index bbb2abe67e..903e45169e 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff138Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff138Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff139Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff139Test.java
index 2435c8ffc3..80f4657f26 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff139Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff139Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff140Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff140Test.java
index 33dba4442e..f730efac9b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff140Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff140Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff141Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff141Test.java
index f5603d08d5..c7874b687f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff141Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff141Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff142Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff142Test.java
index 574564a7d9..7a904f5234 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff142Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff142Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff143Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff143Test.java
index 530d48d5cf..2d4ad53d80 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff143Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff143Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff144Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff144Test.java
index 595cab8d20..1bc2d3ed51 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff144Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff144Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff145Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff145Test.java
index 2d8bf41a40..1aa46ee86c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff145Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff145Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff146Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff146Test.java
index a6d0d44916..8c520fc133 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff146Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff146Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff147Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff147Test.java
index 810e7ffbba..0605a921db 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff147Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff147Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff148Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff148Test.java
index 0494f7f642..6cb90b996c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff148Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff148Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff149Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff149Test.java
index 3b74acfb83..aba724fe27 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff149Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff149Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff150Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff150Test.java
index 79dbacfc04..996ff9826f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff150Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff150Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff151Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff151Test.java
index b9f139aa54..70499d0f24 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff151Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff151Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff152Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff152Test.java
index c3b8f87d4e..219004e31f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff152Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff152Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff153Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff153Test.java
index ab15eebab7..cbb060c283 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff153Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff153Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff154Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff154Test.java
index e571b2b4c8..2aff14df10 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff154Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff154Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff155Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff155Test.java
index 069b4da967..72d15b91b0 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff155Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/decoder/ValidationOff155Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData001Test.java
index 4163f95829..265d3117b3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData002Test.java
index fce7ce5e3f..4f01a0d89c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData003Test.java
index 8561268976..ecaee95bfd 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData004Test.java
index eedd34b598..c72ef75570 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData005Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData005Test.java
index 5e4ef6be1d..cb783d4d74 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData005Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData005Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData006Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData006Test.java
index 4d59e9881b..cc598391de 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData006Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData006Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData007Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData007Test.java
index 9909fb6fb2..0225c66655 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData007Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksExtraneousData007Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataAbsent002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataAbsent002Test.java
index 183eb85a87..9a291abd00 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataAbsent002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataAbsent002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding001Test.java
index 93f0f1b845..882d1fd1d7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding002Test.java
index 0d69661169..bb9b2a763c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding003Test.java
index 3491194b9d..e345cd1c3a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding004Test.java
index d88e99f563..6607547ba4 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksMetadataPadding004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering003Test.java
index 71e155fb33..f2ae9039a8 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering004Test.java
index 7fc97f8cf5..cab2300f9b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksOrdering004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate001Test.java
index ff54c88973..ff68be65bc 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate002Test.java
index 3936551013..03e2d20ee0 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/BlocksPrivate002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder001Test.java
index a89bf3b3f5..584fc1fa0f 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder002Test.java
index f09c9eb5fb..7d203d2859 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/DirectoryTableOrder002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor001Test.java
index b9da04aac8..14d604a70a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor002Test.java
index 494e940f68..1041e27312 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderFlavor002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength001Test.java
index f05e759402..fb9763fdd9 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength002Test.java
index 96d2320882..2aa7943744 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderLength002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderNumTables001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderNumTables001Test.java
index e0a05bab43..b6a9fceca7 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderNumTables001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderNumTables001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderReserved001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderReserved001Test.java
index cdee3d0f25..efee2719d6 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderReserved001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderReserved001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderSignature001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderSignature001Test.java
index 2389cb629d..4703995d11 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderSignature001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/HeaderSignature001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataBrotli001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataBrotli001Test.java
index b80469266f..5f14ace97b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataBrotli001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataBrotli001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength001Test.java
index a572a16d4e..4ec49c85c2 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength002Test.java
index def3611e3a..050def0095 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength003Test.java
index 531be5128c..6236668b8a 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength004Test.java
index 2d1584b6fb..36d76a4ba5 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataDecompressedLength004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataExtraneousData001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataExtraneousData001Test.java
index 0f47efadeb..af13cae378 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataExtraneousData001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataExtraneousData001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataGlyfCompositeBbox001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataGlyfCompositeBbox001Test.java
index 37be23f5fe..bd105dfa6c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataGlyfCompositeBbox001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataGlyfCompositeBbox001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform001Test.java
index 0a81e180cd..48f52addf6 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform002Test.java
index d2659b6817..8843e7aaaa 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform003Test.java
index 185d499002..675803f70d 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataHmtxTransform003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize001Test.java
index b602b0eb30..7de4bbf421 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize002Test.java
index 206979d1eb..d354092600 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize003Test.java
index 4d74d27e3f..3846a3f365 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataLocaSize003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca001Test.java
index bc20567305..bbc2e680cd 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca002Test.java
index 4aea103e93..29b6a7caa3 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformGlyfLoca002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength001Test.java
index 8def22fd9e..4bc3d09f62 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength002Test.java
index 9e427898aa..942b7feb68 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/TabledataTransformLength002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid001Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid001Test.java
index 93aa1b75c5..a20bc5cf45 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid001Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid001Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid002Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid002Test.java
index 947c67d265..2ff8e23785 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid002Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid002Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid003Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid003Test.java
index 46e338a065..4175005eec 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid003Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid003Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid004Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid004Test.java
index b3f4f3c090..0a07c6508c 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid004Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid004Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid005Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid005Test.java
index ae3484736f..edde13b28d 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid005Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid005Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid006Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid006Test.java
index 639e86aa80..bb851f621b 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid006Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid006Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid007Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid007Test.java
index 4545535659..e5dc8749db 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid007Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid007Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid008Test.java b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid008Test.java
index 6efd012afd..ee7f3c9732 100644
--- a/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid008Test.java
+++ b/io/src/test/java/com/itextpdf/io/font/woff2/w3c/format/Valid008Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/BmpTest.java b/io/src/test/java/com/itextpdf/io/image/BmpTest.java
index 28a089fe12..77ebcdf4de 100644
--- a/io/src/test/java/com/itextpdf/io/image/BmpTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/BmpTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/GifTest.java b/io/src/test/java/com/itextpdf/io/image/GifTest.java
index b1e9f45bb1..9b05e9e9b6 100644
--- a/io/src/test/java/com/itextpdf/io/image/GifTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/GifTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/ImageDataFactoryTest.java b/io/src/test/java/com/itextpdf/io/image/ImageDataFactoryTest.java
index 42208eccec..bc019fbe44 100644
--- a/io/src/test/java/com/itextpdf/io/image/ImageDataFactoryTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/ImageDataFactoryTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/ImageTypeDetectorTest.java b/io/src/test/java/com/itextpdf/io/image/ImageTypeDetectorTest.java
index fce74d837b..bff19b44ee 100644
--- a/io/src/test/java/com/itextpdf/io/image/ImageTypeDetectorTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/ImageTypeDetectorTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/Jbig2Test.java b/io/src/test/java/com/itextpdf/io/image/Jbig2Test.java
index 72c21f5246..8b8a09a63a 100644
--- a/io/src/test/java/com/itextpdf/io/image/Jbig2Test.java
+++ b/io/src/test/java/com/itextpdf/io/image/Jbig2Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/Jpeg2000Test.java b/io/src/test/java/com/itextpdf/io/image/Jpeg2000Test.java
index 004765c15f..3150090aad 100644
--- a/io/src/test/java/com/itextpdf/io/image/Jpeg2000Test.java
+++ b/io/src/test/java/com/itextpdf/io/image/Jpeg2000Test.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/JpegImageHelperTest.java b/io/src/test/java/com/itextpdf/io/image/JpegImageHelperTest.java
index 3d37d4a770..0cefc887af 100644
--- a/io/src/test/java/com/itextpdf/io/image/JpegImageHelperTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/JpegImageHelperTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/JpegTest.java b/io/src/test/java/com/itextpdf/io/image/JpegTest.java
index 76c1597272..3ebe08487b 100644
--- a/io/src/test/java/com/itextpdf/io/image/JpegTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/JpegTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/PngTest.java b/io/src/test/java/com/itextpdf/io/image/PngTest.java
index 7774b198e7..c080181056 100644
--- a/io/src/test/java/com/itextpdf/io/image/PngTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/PngTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/RawImageHelperTest.java b/io/src/test/java/com/itextpdf/io/image/RawImageHelperTest.java
index bdf57819f0..6d31bcb6cd 100644
--- a/io/src/test/java/com/itextpdf/io/image/RawImageHelperTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/RawImageHelperTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/image/TiffTest.java b/io/src/test/java/com/itextpdf/io/image/TiffTest.java
index f80d700b1a..f7a190c40c 100644
--- a/io/src/test/java/com/itextpdf/io/image/TiffTest.java
+++ b/io/src/test/java/com/itextpdf/io/image/TiffTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
diff --git a/io/src/test/java/com/itextpdf/io/resolver/resource/DefaultResourceRetrieverTest.java b/io/src/test/java/com/itextpdf/io/resolver/resource/DefaultResourceRetrieverTest.java
index 6d4e524c69..64fb03f677 100644
--- a/io/src/test/java/com/itextpdf/io/resolver/resource/DefaultResourceRetrieverTest.java
+++ b/io/src/test/java/com/itextpdf/io/resolver/resource/DefaultResourceRetrieverTest.java
@@ -1,6 +1,6 @@
/*
This file is part of the iText (R) project.
- Copyright (c) 1998-2025 Apryse Group NV
+ Copyright (c) 1998-2026 Apryse Group NV
Authors: Apryse Software.
This program is offered under a commercial and under the AGPL license.
@@ -24,12 +24,19 @@ This file is part of the iText (R) project.
import com.itextpdf.commons.utils.StringNormalizer;
import com.itextpdf.io.logs.IoLogMessageConstant;
+import com.itextpdf.io.util.StreamUtil;
import com.itextpdf.test.ExtendedITextTest;
import com.itextpdf.test.annotations.LogMessage;
import com.itextpdf.test.annotations.LogMessages;
+import java.io.InputStream;
import java.net.BindException;
import java.net.InetAddress;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import java.net.MalformedURLException;
+import java.nio.charset.StandardCharsets;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -47,13 +54,14 @@ class DefaultResourceRetrieverTest extends ExtendedITextTest {
// Android-Conversion-Ignore-Test DEVSIX-6459 Some different random connect exceptions on Android
public void retrieveResourceReadTimeoutTest() throws IOException, InterruptedException {
- TestResource thread = new TestResource();
+ TestResource thread = new TestResource(1000);
thread.start();
while (!thread.isStarted() && !thread.isFailed()) {
Thread.sleep(250);
}
+ Assertions.assertNull(thread.getException());
Assertions.assertFalse(thread.failed);
- URL url = new URL("http://127.0.0.1:" + thread.port + "/");
+ URL url = new URL("http://127.0.0.1:" + thread.getPort() + "/");
DefaultResourceRetriever resourceRetriever = new DefaultResourceRetriever();
resourceRetriever.setReadTimeout(500);
@@ -101,13 +109,15 @@ public void setResourceByLimitTest() {
@Test
@LogMessages(messages = {
@LogMessage(
- messageTemplate = IoLogMessageConstant.RESOURCE_WITH_GIVEN_URL_WAS_FILTERED_OUT)
+ messageTemplate = IoLogMessageConstant.RESOURCE_WITH_GIVEN_URL_WAS_FILTERED_OUT, count = 2)
})
public void filterOutFilteredResourcesTest() throws IOException {
DefaultResourceRetriever resourceRetriever = new FilteredResourceRetriever();
Assertions.assertFalse(resourceRetriever.urlFilter(new URL("https://example.com/resource")));
Assertions.assertNull(resourceRetriever.getInputStreamByUrl(new URL("https://example.com/resource")));
+ Assertions.assertNull(resourceRetriever.get(new URL("https://example.com/resource"), new byte[0],
+ new HashMap<>(0)));
}
@Test
@@ -119,6 +129,78 @@ public void loadGetByteArrayByUrl() throws IOException {
Assertions.assertTrue(data.length > 0);
}
+ @Test
+ // Android-Conversion-Ignore-Test DEVSIX-6459 Some different random connect exceptions on Android
+ public void loadWithRequestAndHeaders() throws IOException {
+ DefaultResourceRetriever resourceRetriever = new DefaultResourceRetriever();
+ Map headers = new HashMap<>(1);
+ headers.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36");
+ InputStream is = resourceRetriever.get(
+ new URL("https://itextpdf.com/blog/itext-news-technical-notes/get-excited-itext-8-here"),
+ new byte[0], headers);
+ byte[] data = StreamUtil.inputStreamToArray(is);
+
+ Assertions.assertNotNull(data);
+ Assertions.assertTrue(data.length > 0);
+ }
+
+ @Test
+ // Android-Conversion-Ignore-Test DEVSIX-6459 Some different random connect exceptions on Android
+ public void loadWithRequestAndMixedHeaders() throws IOException, InterruptedException {
+ TestResource thread = new TestResource();
+ thread.start();
+ while (!thread.isStarted() && !thread.isFailed()) {
+ Thread.sleep(250);
+ }
+ Assertions.assertNull(thread.getException());
+ Assertions.assertFalse(thread.failed);
+ URL url = new URL("http://127.0.0.1:" + thread.getPort() + "/");
+ DefaultResourceRetriever resourceRetriever = new DefaultResourceRetriever();
+ Map defaultHeaders = new HashMap<>(3);
+ defaultHeaders.put("User-Agent","DEFAULT User Agent");
+ defaultHeaders.put("TEST-HEADER","DEFAULT test header");
+ resourceRetriever.setRequestHeaders(defaultHeaders);
+ Map getHeaders = Collections.singletonMap("User-Agent","TEST User Agent");
+ try {
+ resourceRetriever.get(url, new byte[0], getHeaders);
+ } catch (Exception e) {
+ // exception is expected here, but we do not care
+ }
+ while (thread.getException() == null && thread.getLastRequest() == null) {
+ Thread.sleep(100);
+ }
+ Assertions.assertNull(thread.getException());
+ Assertions.assertTrue(thread.getLastRequest().contains("User-Agent: TEST User Agent"));
+ Assertions.assertTrue(thread.getLastRequest().contains("TEST-HEADER: DEFAULT test header"));
+ }
+
+ @Test
+ // Android-Conversion-Ignore-Test DEVSIX-6459 Some different random connect exceptions on Android
+ public void userAgentTest() throws InterruptedException, MalformedURLException {
+ TestResource thread = new TestResource();
+ thread.start();
+ while (!thread.isStarted() && !thread.isFailed()) {
+ Thread.sleep(250);
+ }
+ Assertions.assertNull(thread.getException());
+ Assertions.assertFalse(thread.failed);
+ URL url = new URL("http://127.0.0.1:" + thread.getPort() + "/");
+ DefaultResourceRetriever resourceRetriever = new DefaultResourceRetriever();
+ Map headers = Collections.singletonMap("User-Agent","TEST User Agent");
+ resourceRetriever.setRequestHeaders(headers);
+
+ try {
+ resourceRetriever.getInputStreamByUrl(url);
+ } catch (Exception e) {
+ // exception is expected here, but we do not care
+ }
+ while (thread.getException() == null && thread.getLastRequest() == null) {
+ Thread.sleep(100);
+ }
+ Assertions.assertNull(thread.getException());
+ Assertions.assertTrue(thread.getLastRequest().contains("User-Agent: TEST User Agent"));
+ }
+
private static class FilteredResourceRetriever extends DefaultResourceRetriever {
@Override
@@ -130,9 +212,21 @@ public boolean urlFilter(URL url) {
private static class TestResource extends Thread {
- private int port = 8000;
- private boolean started = false;
- private boolean failed = false;
+ private final int responseWaitTime;
+ private volatile int port = 8000;
+ private volatile boolean started = false;
+ private volatile boolean failed = false;
+ private volatile String request;
+ private volatile Exception exception;
+
+ public TestResource(int responseWaitTime) {
+ this.responseWaitTime = responseWaitTime;
+ }
+
+ public TestResource() {
+ this.responseWaitTime = 0;
+ }
+
@Override
public void run() {
try {
@@ -156,6 +250,14 @@ public boolean isFailed() {
return failed;
}
+ public String getLastRequest() {
+ return request;
+ }
+
+ public Exception getException() {
+ return exception;
+ }
+
private void startServer() throws IOException, InterruptedException {
int tryCount = 0;
while (!started) {
@@ -165,7 +267,9 @@ private void startServer() throws IOException, InterruptedException {
server.setSoTimeout(20000);
started = true;
try (Socket clientSocket = server.accept()){
- Thread.sleep(1000);
+ if (responseWaitTime > 0) {
+ Thread.sleep(responseWaitTime);
+ }
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String response = "HTTP/1.1 OK OKrnContent-Type: text/html; charset=UTF-8rnrn" +
"\n" +
@@ -176,16 +280,40 @@ private void startServer() throws IOException, InterruptedException {
"