From c8abbd8bef5349ab892a2853a4e5e3d5ed16b670 Mon Sep 17 00:00:00 2001 From: Jakob Heher Date: Tue, 12 May 2026 15:33:19 +0200 Subject: Update docs & various fixes discovered in the process (#86) - update documentation for pdf-as 5 - document the v2 json api - fix a number of documentation quirks - document `keyId` parameter - px (pixels) -> pt (pdf page units) - document --verify_level - remove a number of documented features that were never implemented: - `adobeSignFieldValue` and `sigLogoAltText` from signature profiles - `UNDERLINE` and `STRIKETHRU` from fonts - `num-bytes` parameter - `verify_only`/`sign_only` enable states for profiles - update mobile BKU base URL - update pdfbox backend default to 3 in sample configurations - consistently made boolean parsing from configuration files case permissive - add moa verification timeout - add support for BOLDITALIC to all base fonts, and for ITALIC to helvetica and courier - fix a number of small quirks - hibernate properties are now reloaded properly - fix the signature block parameter key regex - v1 json api now correctly checks for onlinebku/mobilebku being enabled - pdfbox 2 module correctly compares for integer equality regardless of cached boxed ints - test operationcountwatcher no longer sometimes breaks due to spring context differences --- .../src/configuration/cfg/advancedconfig.properties | 6 +----- pdf-as-lib/src/configuration/cfg/config.properties | 2 +- .../cfg/profiles/AMTSSIGNATURBLOCK_BASE.properties | 4 +--- .../cfg/profiles/AMTSSIGNATURBLOCK_BASE_EN.properties | 2 -- .../cfg/profiles/BAIK_ARCHIV_SIGNATUR.properties | 5 ----- .../cfg/profiles/BAIK_URKUNDE_SIGNATUR.properties | 4 ---- .../src/configuration/cfg/profiles/BASE_LOGO.properties | 4 ---- .../configuration/cfg/profiles/BASE_MINIMAL.properties | 4 ---- .../cfg/profiles/BASE_MINIMAL_EN.properties | 3 --- .../configuration/cfg/profiles/BASE_NORMAL.properties | 16 +--------------- .../configuration/cfg/profiles/BASE_NORMAL_EN.properties | 3 --- .../configuration/cfg/profiles/BASE_SMALL_EN.properties | 3 --- .../src/configuration/cfg/profiles/INVISIBLE.properties | 1 - .../main/java/at/gv/egiz/sl/util/BaseSLConnector.java | 11 +++++------ .../java/at/knowcenter/wag/egov/egiz/table/Style.java | 8 -------- 15 files changed, 9 insertions(+), 67 deletions(-) (limited to 'pdf-as-lib/src') diff --git a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties index d00f2872..52e204dd 100644 --- a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties +++ b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties @@ -98,10 +98,6 @@ sigblock.placement.less.space.failing=false #default.verifyURL=https://www.signaturpruefung.gv.at -# Standard Alternativer Text fuer den Signaturblock (WAI) (globale Einstellung) - -#default.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. - #register Verificators default.verifier.01=at.gv.egiz.pdfas.sigs.pades.PAdESVerifier @@ -111,4 +107,4 @@ default.verifier.01=at.gv.egiz.pdfas.sigs.pades.PAdESVerifier #Enable background color detection #sigblock.placement.bgcolor.detection.enabled=true #sigblock.placement.debug.file=/home/user/temp/debugImg.png -#runtime.backend=PDFBOX_2_BACKEND +#runtime.backend=PDFBOX_3_BACKEND diff --git a/pdf-as-lib/src/configuration/cfg/config.properties b/pdf-as-lib/src/configuration/cfg/config.properties index ff9df42f..bb62cf50 100644 --- a/pdf-as-lib/src/configuration/cfg/config.properties +++ b/pdf-as-lib/src/configuration/cfg/config.properties @@ -30,7 +30,7 @@ bku.verify.url=http://127.0.0.1:3495/http-security-layer-request ## # Handy-Signatur # Signaturservice URL -mobile.sign.url=https://www.handy-signatur.at/mobile/https-security-layer-request/default.aspx +mobile.sign.url=https://service.a-trust.at/mobile/https-security-layer-request/default.aspx ## # MOA Signatur diff --git a/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE.properties b/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE.properties index 344c49a4..e3fab643 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE.properties @@ -20,7 +20,5 @@ sig_obj.AMTSSIGNATURBLOCK_BASE.value.SIG_ISSUER=${issuer.T != null ? (issuer.T + sig_obj.AMTSSIGNATURBLOCK_BASE.value.SIG_NUMBER=${sn} sig_obj.AMTSSIGNATURBLOCK_BASE.pos=f:80 -sig_obj.AMTSSIGNATURBLOCK_BASE.adobeSignFieldValue=PDF-AS Signatur sig_obj.AMTSSIGNATURBLOCK_BASE.adobeSignReasonValue=Signaturpruefung unter https://www.signaturpruefung.gv.at -sig_obj.AMTSSIGNATURBLOCK_BASE.verifyURL=https://www.signaturpruefung.gv.at -sig_obj.AMTSSIGNATURBLOCK_BASE.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. \ No newline at end of file +sig_obj.AMTSSIGNATURBLOCK_BASE.verifyURL=https://www.signaturpruefung.gv.at \ No newline at end of file diff --git a/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE_EN.properties b/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE_EN.properties index f52a1fc4..e4eff37e 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE_EN.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/AMTSSIGNATURBLOCK_BASE_EN.properties @@ -16,7 +16,5 @@ sig_obj.AMTSSIGNATURBLOCK_BASE_EN.value.SIG_META=Information about the verificat sig_obj.AMTSSIGNATURBLOCK_BASE_EN.value.SIG_LABEL=./images/amtsignatur-logo_demo.png sig_obj.AMTSSIGNATURBLOCK_BASE_EN.value.SIG_NOTE=This document was signed/sealed with an official signature. According to \u00a7 20 Austrian E-Government-Act a printout of this document is assumed to be authentic. -sig_obj.AMTSSIGNATURBLOCK_BASE_EN.adobeSignFieldValue=PDF-AS Signature sig_obj.AMTSSIGNATURBLOCK_BASE_EN.adobeSignReasonValue=Signature verification at: https://www.signature-verification.gv.at sig_obj.AMTSSIGNATURBLOCK_BASE_EN.verifyURL=https://www.signaturpruefung.gv.at -sig_obj.AMTSSIGNATURBLOCK_BASE_EN.sigLogoAltText=A standard signature logo is shown. diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BAIK_ARCHIV_SIGNATUR.properties b/pdf-as-lib/src/configuration/cfg/profiles/BAIK_ARCHIV_SIGNATUR.properties index b71c82bb..b6634bc1 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BAIK_ARCHIV_SIGNATUR.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BAIK_ARCHIV_SIGNATUR.properties @@ -21,16 +21,11 @@ sig_obj.BAIK_ARCHIV_SIGNATUR.key.SIG_META=Hinweis sig_obj.BAIK_ARCHIV_SIGNATUR.key.SIG_TITLE=ELEKTRONISCHE ARCHIVSIGNATUR sig_obj.BAIK_ARCHIV_SIGNATUR.pos=f:80 -sig_obj.BAIK_ARCHIV_SIGNATUR.adobeSignFieldValue=ELEKTRONISCHE ARCHIVSIGNATUR - -# WAI -sig_obj.BAIK_ARCHIV_SIGNATUR.sigLogoAltText=Abgebildet ist eine Signaturbildmarke mit Bundesadler. sig_obj.BAIK_ARCHIV_SIGNATUR.value.SIG_META=Dokumentenformat: ${iui.pdfVersion} sig_obj.BAIK_ARCHIV_SIGNATUR.value.SIG_LABEL=./images/Baik_Archiv.gif sig_obj.BAIK_ARCHIV_SIGNATUR.value.SIG_TITLE=ELEKTRONISCHE ARCHIVSIGNATUR -sig_obj.BAIK_ARCHIV_SIGNATUR.adobeSignFieldValue=Archivsignatur sig_obj.BAIK_ARCHIV_SIGNATUR.adobeSignText.binary=Archivsignatur der BAIK sig_obj.BAIK_ARCHIV_SIGNATUR.verifyURL=https://www.signaturpruefung.gv.at diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BAIK_URKUNDE_SIGNATUR.properties b/pdf-as-lib/src/configuration/cfg/profiles/BAIK_URKUNDE_SIGNATUR.properties index 29478b75..15dd58fc 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BAIK_URKUNDE_SIGNATUR.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BAIK_URKUNDE_SIGNATUR.properties @@ -20,11 +20,7 @@ sig_obj.BAIK_URKUNDE_SIGNATUR.key.SIG_KZ=Methode sig_obj.BAIK_URKUNDE_SIGNATUR.key.SIG_META=Hinweis: sig_obj.BAIK_URKUNDE_SIGNATUR.key.SIG_TITLE=ELEKTRONISCHE BEURKUNDUNGSSIGNATUR -# WAI -sig_obj.BAIK_URKUNDE_SIGNATUR.sigLogoAltText=Abgebildet ist die Signaturbildmarke eines staatlich befugten und beeideten Ziviltechnikers mit Bundesadler. - sig_obj.BAIK_URKUNDE_SIGNATUR.pos=f:80 -sig_obj.BAIK_URKUNDE_SIGNATUR.adobeSignFieldValue=Urkundensignatur sig_obj.BAIK_URKUNDE_SIGNATUR.adobeSignText.binary=Urkundensignatur der BAIK sig_obj.BAIK_URKUNDE_SIGNATUR.verifyURL=https://www.signaturpruefung.gv.at diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_LOGO.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_LOGO.properties index 2e80d384..47147d96 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_LOGO.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_LOGO.properties @@ -7,16 +7,12 @@ sig_obj.BASE_LOGO.description= Signature block with logo sig_obj.BASE_LOGO.key.SIG_META=Pr\u00fcfinformation sig_obj.BASE_LOGO.pos=w:230.0;f:80 -sig_obj.BASE_LOGO.adobeSignFieldValue=PDF-AS Signatur sig_obj.BASE_LOGO.adobeSignReasonValue=Signaturpruefung unter https://www.signaturpruefung.gv.at sig_obj.BASE_LOGO.verifyURL=https://www.signaturpruefung.gv.at sig_obj.BASE_LOGO.value.SIG_LABEL=./images/signatur-logo_de.png sig_obj.BASE_LOGO.table.main.Style.imagescaletofit=65.0;65.0 -# WAI -sig_obj.BASE_LOGO.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. - #---------------------- MAIN TABLE ------------------------- sig_obj.BASE_LOGO.table.main.1=SIG_LABEL-i diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL.properties index 75a3c682..c4d70451 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL.properties @@ -7,7 +7,6 @@ sig_obj.BASE_MINIMAL.description=Minimalbasissignatur Deutsch sig_obj.BASE_MINIMAL.key.SIG_META=Pr\u00fcfinformation sig_obj.BASE_MINIMAL.pos=w:230.0;f:80 -sig_obj.BASE_MINIMAL.adobeSignFieldValue=PDF-AS Signatur sig_obj.BASE_MINIMAL.adobeSignReasonValue=Signaturpruefung unter https://www.signaturpruefung.gv.at sig_obj.BASE_MINIMAL.verifyURL=https://www.signaturpruefung.gv.at @@ -15,9 +14,6 @@ sig_obj.BASE_MINIMAL.value.SIG_META=Informationen zur Pr\u00FCfung der elektroni sig_obj.BASE_MINIMAL.value.SIG_LABEL=./images/signatur-logo_de.png sig_obj.BASE_MINIMAL.table.main.Style.imagescaletofit=65.0;65.0 -# WAI -sig_obj.BASE_MINIMAL.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. - #---------------------- MAIN TABLE ------------------------- sig_obj.BASE_MINIMAL.table.main.1=SIG_LABEL-i sig_obj.BASE_MINIMAL.table.main.2=SIG_META-v diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL_EN.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL_EN.properties index 3d98c271..2fb06a71 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL_EN.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_MINIMAL_EN.properties @@ -11,6 +11,3 @@ sig_obj.BASE_MINIMAL_EN.verifyURL=https://www.signature-verification.gv.at sig_obj.BASE_MINIMAL_EN.value.SIG_META=Information about the verification of the electronic signature can be found at: https://www.signaturpruefung.gv.at sig_obj.BASE_MINIMAL_EN.value.SIG_LABEL=./images/signatur-logo_en.png - -# WAI -sig_obj.BASE_MINIMAL_EN.sigLogoAltText=A standard signature logo is shown. diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL.properties index 756d0472..6a76af74 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL.properties @@ -6,10 +6,6 @@ sig_obj.BASE_NORMAL.description=Basissignatur Deutsch # Aktiviert ("on") bzw. deaktiviert ("off") dieses Profil. -# "verify_only" beschraenkt das Profil auf Signaturpruefung, d.h. es kann nicht zum Erstellen von -# Signaturen verwendet werden. -# "sign_only" beschraenkt das Profil insofern, dass es nur noch zum Signieren, nicht aber -# zum Pruefen verwendet werden kann. sig_obj.types.BASE_NORMAL=on # Festlegung der einzelner Bezeichnungen im Signaturblock. @@ -52,16 +48,12 @@ sig_obj.BASE_NORMAL.value.SIG_NOTE=Dieses mit einer qualifizierten elektronische # sig_obj.PROFILE.pos=p:1;x:40.0;y:800.0;w:400.0;f:80 sig_obj.BASE_NORMAL.pos=f:80 -sig_obj.BASE_NORMAL.adobeSignFieldValue=PDF-AS Signatur # Text, der im Adobe Reader unter "Reason" angezeigt wird. sig_obj.BASE_NORMAL.adobeSignReasonValue=Signaturpruefung unter https://www.signaturpruefung.gv.at # URL fuer die Signaturpruefung durch das Adobe Acrobat Professional PDF-AS Plugin. #sig_obj.SIGNATURBLOCK_DE.verifyURL=https://www.signaturpruefung.gv.at -# WAI -sig_obj.BASE_NORMAL.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. - # Pruefhinweis im Signaturblock #sig_obj.SIGNATURBLOCK_DE.value.SIG_META=Signaturpruefung unter: https://www.signaturpruefung.gv.at @@ -107,7 +99,7 @@ sig_obj.BASE_NORMAL.table.main.Style.imagevalign=middle # # FACE: HELVETICA | TIMES_ROMAN | COURIER # WEIGHT: float value -# STYLE: NORMAL | BOLD | ITALIC | BOLDITALIC | UNDERLINE | STRIKETHRU +# STYLE: NORMAL | BOLD | ITALIC | BOLDITALIC # # z.B. sig_obj.SIGNATURBLOCK_DE.table.main.Style.valuefont=COURIER,8,NORMAL sig_obj.BASE_NORMAL.table.main.Style.font=TTF:DejaVuSansCondensed-Bold.ttf,8 @@ -132,14 +124,8 @@ sig_obj.BASE_NORMAL.table.info.3=SIG_META-cv # Name fuer die Signaturkennzeichnung (binaer) # sig_obj.PROFILE.adobeSignText.textual=PDF-AS # -# Name fuer die PDF-Signatur -# sig_obj.PROFILE.adobeSignFieldValue=PDF-AS Signatur -# # "Reason"-Feld der jeweiligen Signatur # sig_obj.PROFILE.adobeSignReasonValue=Informationen zur Pr\u00FCfung finden Sie unter https://www.signaturpruefung.gv.at # # Prueflink fuer die Adobe Signaturkennzeichnung (nur relevant falls Adobe Plugin fuer Pruefung verwendet wird) # sig_obj.PROFILE.verifyURL=https://www.signaturpruefung.gv.at -# -# Alternativer Text fuer den Signaturblock (WAI) (globale Einstellung) -# sig_obj.PROFILE.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL_EN.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL_EN.properties index 56429070..90f66b26 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL_EN.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_NORMAL_EN.properties @@ -26,6 +26,3 @@ sig_obj.BASE_NORMAL_EN.adobeSignReasonValue=Signature verification at https://ww # URL fuer die Signaturpruefung durch das Adobe Acrobat Professional PDF-AS Plugin. sig_obj.BASE_NORMAL_EN.verifyURL=https://www.signature-verification.gv.at - -# WAI -sig_obj.BASE_NORMAL_EN.sigLogoAltText=A standard signature logo is shown. diff --git a/pdf-as-lib/src/configuration/cfg/profiles/BASE_SMALL_EN.properties b/pdf-as-lib/src/configuration/cfg/profiles/BASE_SMALL_EN.properties index e4d51c22..525613c4 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/BASE_SMALL_EN.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/BASE_SMALL_EN.properties @@ -38,9 +38,6 @@ sig_obj.BASE_SMALL_EN.table.info.ColsWidth=1 2.7 #sig_obj.BASE_SMALL_EN.value.SIG_META=Information about the verification of the electronic signature can be found at: https://www.signaturpruefung.gv.at \nInformation about the verification of the printout can be found at: https://www.behoerde.gv.at/el_signatur/ #sig_obj.BASE_SMALL_EN.value.SIG_LABEL=./images/signatur-logo_en.png -# WAI -#sig_obj.BASE_SMALL_EN.sigLogoAltText=A standard signature logo is shown. - #---------------------- MAIN TABLE ------------------------- #sig_obj.BASE_SMALL_EN.table.main.ColsWidth=1 4.5 #sig_obj.BASE_SMALL_EN.table.main.Style.font=HELVETICA,5,BOLD diff --git a/pdf-as-lib/src/configuration/cfg/profiles/INVISIBLE.properties b/pdf-as-lib/src/configuration/cfg/profiles/INVISIBLE.properties index b95bf2cb..7c2b7451 100644 --- a/pdf-as-lib/src/configuration/cfg/profiles/INVISIBLE.properties +++ b/pdf-as-lib/src/configuration/cfg/profiles/INVISIBLE.properties @@ -5,7 +5,6 @@ sig_obj.INVISIBLE.description=Unsichtbarer Signaturblock sig_obj.types.INVISIBLE=on -sig_obj.INVISIBLE.adobeSignFieldValue=PDF-AS Signatur sig_obj.INVISIBLE.adobeSignReasonValue=Informationen zur Pr\u00fcfung finden Sie unter https://www.signaturpruefung.gv.at sig_obj.INVISIBLE.isvisible=false diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java index 2744276e..f4ed290a 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java @@ -169,12 +169,11 @@ public abstract class BaseSLConnector implements ISLConnector, { String value = parameter.getConfiguration().getValue(WHITELIST_VERSION_ENABLED); - if (value != null) { - if (value.equals("true")) { - whiteListregEx.add(parameter.getConfiguration().getValue(WHITELIST_VALUE_PRE)); - return true; - } - }} + if (Boolean.parseBoolean(value)) { + whiteListregEx.add(parameter.getConfiguration().getValue(WHITELIST_VALUE_PRE)); + return true; + } + } return false; } diff --git a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/table/Style.java b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/table/Style.java index d575b6bd..6968c6a3 100644 --- a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/table/Style.java +++ b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/table/Style.java @@ -194,14 +194,6 @@ public class Style implements Serializable { * Font type BOLDITALIC */ public final static String BOLDITALIC = "BOLDITALIC"; - /** - * Font type UNDERLINE - */ - public final static String UNDERLINE = "UNDERLINE"; - /** - * Font type STRIKETHRU - */ - public final static String STRIKETHRU = "STRIKETHRU"; /** * Valid horizontal alignment values -- cgit v1.2.3