Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Added

 

Jednowymiarowy kod kreskowy będący udoskonaleniem formatu CODE_39. Występują w nim paski o czterech różnych szerokościach. Podobnie jak swój pierwowzór przechowuje 43 znaki alfanumeryczne, ale dodatkowo posiada 4 znaki sterujące (($), (%), (/), (+)), które są używane do kodowania wszystkich 128 znaków ASCII (CODE_93 Extended). Kod przyjmuje wyłącznie wielkie litery, chyba że zostaną użyte znaki sterujące.

Polish

← Powrót do listy dostępnych hook'ów

Info
Jeśli masz problem ze zrozumieniem jak działają hook'i, sprawdź opis: Mechanizm hook'ów
Panel
titlePodstawowe informacje

Dostępny od: 1.0.0

Panel
titleOpis

Hook pełni funkcję umieszczania znaku wodnego na dokumencie w czasie jego wyświetlania. Jest on zaimplementowany na podstawie definicji hook'a systemowego ReadFileHookAdapter, który umożliwia zmianę strumienia binarnego wyświetlanego dokumentu z archiwum lub w podglądzie w procesie. Konfiguracja hook'a wstawiającego znak wodny jest określana w formacie JSON pod postacią listy i zarządzana jest przez wtyczkę PCM (Plugin Configuration Manager). Znak wodny jest umieszczany na każdej stronie dokumentu i akceptuje tylko format PDF.

Panel
titleParametry Struktura JSON
Code Block
languagejs
   - documentClassId
   - watermark
       - type
       - text
	   - alignment
       - anchor 
	   - positionX%
       - positionY%
       - opacity
       - clockwiseAngle
       - watermarkBarcode
            - format
            - codeWidth
            - codeHeight
            - textUnderBarcode
			- rotationMechanism
       - watermarkText
            - sizefontSize
			- fontType
			- colorfontColor
            - encoding
            - clockwiseAnglebackgroundColor
   - permissions
       - groups
   - errorHandling
   - removePDFSecurity
Warning

Wersja wtyczki 1.0.0 jest niekompatybilna z nowszymi wersjami. Instalowanie wersji wtyczki 1.0.1 lub nowszej spowoduje uruchomienie Upgrader'a, który zaktualizuje plik konfiguracyjny JSON na zgodny z wersją wtyczki 1.0.1.

Jednowymiarowy kod kreskowy zawierający znaki alfanumeryczne o zmiennej długości, w którym występują paski o dwóch różnych szerokościach. Do kodowania CODE_39 używane są 43 znaki plus dodatkowe znaki, które są ogranicznikami i znakami start/stop. Znak start/stop zawsze występuje jako pierwszy i ostatni znak kodu i jest nim znak '*'. Ten format nie pozwala na zakodowanie małych liter.

Panel
titleParametry konfiguracyjne

Pozycja znaku wodnego względem lewego dolnego rogu znaku wodnego.

Image Removed

punkt na obwodzie znaku wodnego lub na jego środku, na podstawie którego określane jest położenie znaku wodnego biorąc pod uwagę wartości parametrów positionX% oraz positionY%.

 

Więcej informacji...

 

Nazwa parametru w konfiguracji JSONOd wersjiOpisTyp parametruUwagi i ograniczenia
documentClassId*1.0.0Identyfikator klasy dokumentów wskazuje dla których dokumentów ma być uruchamiany mechanizm wstawiania znaku wodnego.Całkowity

 

type*

(watermark)

1.0.0Określa typ znaku wodnego.
Tekstowy
WartośćZnaczenieOpis
BARCODEkoduje wartość parametru text do postaci kodu kreskowego o określonym formacie zdefiniowanym w parametrze format. Znak wodny umieszczany na dokumencie jest kodem kreskowym.
TEXTWartość parametru text jest nanoszona na dokument jako znak wodny w formie jawnej, niezakodowanej.

text*

(watermark)

1.0.0

Przyjmuje wartość tekstową, która jest wykorzystywana do utworzenia znaku wodnego. W celu skorzystania z wartości indeksów dokumentu należy umieścić identyfikator indeksu w nawiasach klamrowych {}. Istnieje możliwość wykorzystania więcej niż jednej wartości indeksu w parametrze. Każdy kolejny indeks musi być opatrzony nawiasami klamrowymi.

Przykład.:

"Numer sprawy: {8}, Data rejestracji: {9}"

Tekst znaku wodnego ->

Numer sprawy: 433589, Data rejestracji: 13-02-2021


Możliwe jest również skorzystanie ze specjalnych słów kluczowych zwracających informacje o użytkowniku, identyfikatorze procesu i zadania. Lista wszystkich dostępnych wartości znajduje się w kolumnie obok.

Przykład:

"Nazwa użytkownika: {USER_NAME}, Data: {CURRENT_DATE}"

Tekst znaku wodnego ->

"Nazwa użytkownika: admin, Data: 2022-10-21"

Tekstowy
Warning

Wszystkie wpisane identyfikatory indeksów w ciągu tekstowym muszą istnieć w klasie dokumentów podanej w parametrze documentClassId. Jeśli przeglądany dokument nie zawiera wartości indeksu (jest pusty), którego identyfikator został podany w tym parametrze w nawiasach klamrowych, to identyfikator zostanie zastąpiony pustym łańcuchem znaków "".

Słowo kluczoweOpis
{CURRENT_DATE}Bieżąca data w formacie yyyy-MM-dd.
{CURRENT_DATE_AND_TIME}Bieżąca data i czas w formacie yyyy-MM-dd HH-mm-ss.
{PROCESS_ID}Identyfikator procesu.
{ACTIVITY_ID}Identyfikator zadania.
{USER_NAME}Nazwa użytkownika.
{USER_EMAIL}Email użytkownika.
{USER_FULL_NAME}Pełna nazwa użytkownika składająca się na imię i nazwisko.
{USER_FIRST_NAME}Imię użytkownika.
{USER_LAST_NAME}Nazwisko użytkownika.
{USER_NUMBER}Numer użytkownika.

alignment*

(watermark)

1.0.0

Określa względem którego z czterech rogów strony dokumentu obliczona zostanie pozycja znaku wodnego na podstawie wartości parametrów positionX% oraz positionY%.


Więcej informacji...

Tekstowy

Należy zwrócić uwagę na odpowiednie wartości parametrów positionX% oraz positionY%, ponieważ w zależności od wartości parametru alignment, anchor oraz rozmiarów znaku wodnego, znak wodny może wykraczać poza stronę dokumentu, czyli być częściowo lub wcale niewidoczny.

WartośćDostępne wartościZnaczenie
TOP_LEFT

Pozycja znaku wodnego względem górnego lewego rogu.

Image Removed

TOP_RIGHT

Pozycja znaku wodnego względem górnego prawego rogu.

Image Removed

BOTTOM_LEFT

Pozycja znaku wodnego względem dolnego lewego rogu.

Image Removed

BOTTOM_RIGHT

Pozycja znaku wodnego względem dolnego prawego rogu.

Image Removed

anchor*

(watermark)

1.0.0

Określa

pozycję znaku wodnego względem odpowiedniego rogu znaku wodnego.
Tekstowy
WartośćZnaczenie
BOTTOM_LEFTTekstowy
Dostępne wartości
TOP_LEFT
TOP_MIDDLE
TOP_RIGHT
CENTER_LEFT
CENTER_MIDDLE
CENTER_RIGHT
BOTTOM_LEFT
BOTTOM_MIDDLE
BOTTOM_RIGHT

positionX%*

(watermark)

1.0.0Wskazuje pozycję procentową X (w poziomie) znaku wodnego względem wymiarów strony dokumentu. Pozycja ustawiana jest na podstawie wybranego rogu strony w parametrze alignment.Całkowity

Wartość z przedziału 0 - 100.


positionY%*

(watermark)

1.0.0Wskazuje pozycję procentową Y (w pionie) znaku wodnego względem wymiarów strony dokumentu. Pozycja ustawiana jest na podstawie wybranego rogu strony w parametrze alignment.CałkowityWartość z przedziału 0 -100.

opacity*

(watermark)

1.0.0Określa przezroczystość stopień widoczności (nieprzezroczystość) wstawianego znaku wodnego.Zmiennoprzecinkowy
  • Wartość 0 (lub mniej)

Element jest w pełni przezroczysty (niewidoczny).

  • Wartość z przedziału (0
.0 - 1.0.
  • , 1)

Element jest częściowo przezroczysty.

  • Wartość 1 (lub więcej)

Element jest w pełni nieprzezroczysty (jednolity).

clockwiseAngle*

(watermark)

1.0.0Rotacja znaku wodnego zgodnie z kierunkiem ruchu wskazówki zegara.Zmiennoprzecinkowy 

format*

(watermark.watermarkBarcode)

1.0.0

Określa standard

kodów kreskowych w postaci jednowymiarowej (zapis informacji w jednej linii, w formie kresek).

kodu kreskowego.


Więcej informacji...

Tekstowy
WartośćDostępne wartościZnaczenie
AZTEC
CODABAR
CODE_39

Znany też jako "USS Code 39", "Code 3/9", "Kod 3 z 9", "USD-3", "Alpha39") – alfanumeryczny kod kreskowy o stałej szerokości pojedynczego znaku.

CODE_93Code 93 został zaprojektowany jako udoskonalenie kodowania Code 39. Podobnie jak swój pierwowzór w wersji podstawowej jest w stanie przechowywać 43 znaki alfanumeryczne. Jednak w stosunku do swojego poprzednika posiada jeszcze 4 dodatkowe znaki sterujące.
CODE_128

Kod alfanumeryczny o zmiennej długości i wysokiej gęstości. Potrafi kodować znaki z całego zakresu ASCII.

DATA_MATRIX
EAN_8
EAN_13
ITF
PDF_417
QR_CODE
UPC_A
UPC_E

codeWidth*

(watermark.watermarkBarcode)

1.0.0Definiuje szerokość kodu kreskowego w pikselach.Całkowity

Określa minimalną szerokość kodu kreskowego. W przypadku, gdy wartość do zakodowania z parametru text okaże się zbyt długa, szerokość zostanie zwiększona.

codeHeight*

(watermark.watermarkBarcode)

1.0.0Definiuje wysokość kodu kreskowego w pikselach.Całkowity 

sizetextUnderBarcode*

(watermark.watermarkBarcode)

1.0.1Określa, czy ma być wyświetlany pod kodem kreskowym tekst (wartość parametru text), który został w nim zakodowany.LogicznyTekst ma stały rozmiar czcionki 11 i kolor czarny.

rotationMechanism

(watermark.watermarkBarcode)

1.0.8Określa w jaki sposób ma działać rotacja kodu kreskowego. Sposób 1 - (przestarzały) rotacja odbywa się na zasadach podstawowej funkcji biblioteki. Rotacja dla znaku wodnego w formie kodu kreskowego wykonuje się w przeciwnym kierunku do ruchu wskazówek zegara. Sposób 2 (zalecany) - rotacja odbywa się względem punktu znaku wodnego określonego w parametrze anchor. Rotacja kodu kreskowego wykonuje się w kierunku zgodnym do ruchu wskazówek zegara. Parametr jest opcjonalny. Domyślnie stosowana jest wartość METHOD_1.Tekstowy
Dostępne wartości
METHOD_1
METHOD_2

fontSize*

(watermark.watermarkText)

1.0.0Rozmiar tekstu.Zmiennoprzecinkowy 

fontType*

(watermark.watermarkText)

1.0.0Rodzaj czcionki tekstu.Tekstowy
WartośćZnaczenieOpis
COURIERCourier
COURIER_BOLDCourier Bold
COURIER_OBLIQUECourier Oblique
COURIER_BOLDOBLIQUECourier Bold Oblique
HELVETICAHelvetica
HELVETICA_BOLDHelvetica Bold
HELVETICA_OBLIQUEHelvetica Oblique
HELVETICA_BOLDOBLIQUEHelvetica Bold Oblique
SYMBOLSymbol
TIMES_ROMANTimes Roman
TIMES_BOLDTimes Bold
TIMES_ITALICTimes Italic
TIMES_BOLDITALICTimes Bold Italic
ZAPFDINGBATSZapf Dingbats

colorfontColor*

(watermark.watermarkText)

 

1.0.0Kolor tekstu.Tekstowy
WartośćZnaczenieOpis
WHITEBiały
LIGHT_GRAYJasnoszary
GRAYSzary
DARK_GRAYCiemnoszary
BLACKCzarny
REDCzerwony
PINKRóżowy
ORANGEPomarańczowy
YELLOWŻółty
GREENZielony
MAGENTAMagenta
CYANCyjan
BLUENiebieski

encoding*

(watermark.watermarkText)

 1.0.0

 Kodowanie znaków.


Więcej informacji...

 Tekstowy
WartośćDostępne wartościZnaczenie
CP1250Strona kodowa służąca do reprezentacji tekstów w językach środkowoeuropejskich używających alfabetu łacińskiego, na przykład albańskim, chorwackim, czeskim, polskim, rumuńskim, słowackim, słoweńskim, węgierskim.
CP1252Strona kodowa służąca do reprezentacji tekstów w językach zachodnioeuropejskich.
CP1257Strona kodowa służąca do reprezentacji tekstów w językach estońskim, litewskim, czy łotewskim. Zestaw ten jest w znacznej części kompatybilny z ISO 8859-13, oraz nadaje się do kodowania języka polskiego.
MACROMANKodowanie znaków używane głównie w klasycznym systemie Mac OS do reprezentowania tekstu. Koduje 256 znaków, z których pierwsze 128 jest identyczne z ASCII, a pozostałe znaki obejmują symbole matematyczne, znaki diakrytyczne i dodatkowe znaki interpunkcyjne. Jest odpowiedni dla języka angielskiego i kilku innych języków zachodnich.

clockwiseAngle*

(watermark.watermarkText)

1.0.0Rotacja znaku wodnego zgodnie z kierunkiem ruchu wskazówki zegara.Zmiennoprzecinkowy 
CP1257
MACROMAN

backgroundColor

(watermark.watermarkText)

1.0.1Kolor tła tekstu 

Parametr jest opcjonalny. W przypadku braku jego zdefiniowania, nie zostanie zastosowane tło dla znaku wodnego w formie tekstu.

WartośćOpis
WHITEBiały
LIGHT_GRAYJasnoszary
GRAYSzary
DARK_GRAYCiemnoszary
BLACKCzarny
REDCzerwony
PINKRóżowy
ORANGEPomarańczowy
YELLOWŻółty
GREENZielony
MAGENTAMagenta
CYANCyjan
BLUENiebieski
errorHandling*1.0.1

Obsługa błędów. Określa w jaki sposób ma się zachować okno podglądu dokumentu przy wystąpieniu jakiekolwiek błędu np. niepoprawne znaki w tekście użytym do zakodowania kodu kreskowego dla określonego formatu kodu kreskowego.

Tekstowy
WartośćOpis
BLOCKWyświetlana jest strona HTML z informacją o błędzie. Nie ma możliwości pobrania oryginalnego (bez znaku wodnego) dokumentu.
DISPLAY_ORIGINALWyświetlany jest oryginalny dokument i jest on możliwy do pobrania.
Warning

Wartość tego parametru jest brana pod uwagę po deserializacji JSON'a (po wpisaniu poprawnych nazw i wartości parametrów konfiguracji JSON w PCM), stąd jeśli na etapie deserializacji wystąpi błąd, zostanie zastosowana domyślna obsługa błędów BLOCK.

groups

(permissions)

1.0.0Uprawnienia określające dla jakich zalogowanych użytkowników w systemie przy próbie otwarcia dokumentu zostanie uruchomiony hook. Wskazuje na grupy użytkowników systemowych.Tablica wartości tekstowychParametr opcjonalny, gdy nie jest uzupełniony, to mechanizm wstawiania znaku wodnego działa dla każdego użytkownika.

Parametr*- pole wymagane

Panel
titleFormaty kodu kreskowego
FormatOpis
Code_39
ZnakWartośćZnakWartośćZnakWartośćZnakWartość
00B11M22X33
11C12N23Y34
22D131O24Z35
33E14P25-36
44F15Q26.37
55G16R27space38
66H17S28$39
77I18T29/40
88J19U30+41
99K20V31%42
A10L21W32  

Image Removed

Code_93
ZnakWartośćZnakWartośćZnakWartośćZnakWartość
00C12O24-36
11D13P25.37
22E14Q26space38
33F15R27$39
44G16S28/40
55H17T29+41
66I18U30%42
77J19V31($)43
88K20W32(%)44
99L21X33(/)45
A10M22Y34(+)46
B11N23Z35  

Image Removed

Code_128

Kod alfanumeryczny o zmiennej długości i wysokiej gęstości. Potrafi kodować znaki z całego zakresu ASCII. Do kodowania używa się kreski i przerwy o czterech możliwych szerokościach, co czyni go zwartym kodem. Kod 128 może być skanowany w każdym kierunku i nie ma ograniczeń co do długości samego kodu.

Image Removed

Panel
titlePrzykładowa konfiguracja

Image Removed

Code Blocklanguagejs
removePDFSecurity1.0.2Usuwa hasło, zabezpieczenia pliku chroniące przed jego modyfikacją. Wynikowy plik nie posiada żadnych zabezpieczeń w porównaniu z jego pierwotną wersją. Parametr nie uwzględnia usuwania hasła użytkownika (odczytu), które zostało użyte w celu zabezpieczenia dokumentu przed otwarciem.LogicznyParametr opcjonalny, gdy nie jest zdefiniowany, domyślnie przyjmowana jest wartość false zgodnie z kompatybilnością wsteczną.

Parametr*- pole wymagane

Panel
titlePrzykładowa konfiguracja
Image Added

 

Code Block
languagejs
linenumberstrue
[
  {
   "documentClassId": 4,
   "watermark": {
        "type": "TEXT",
        "text": "Numer sprawy: {8}, Data rejestracji: {9}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "fontSize": 15,
			"fontType": "HELVETICA",
			"fontColor": "WHITE",
            "encoding": "CP1250",
            "backgroundColor": "BLACK"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 4,
   "watermark": {
        "type": "BARCODE",
        "text": "{8}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 80,
        "positionY%": 10,
        "opacity": 0.5,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",       
            "codeWidth": 50,
            "codeHeight": 15,
            "textUnderBarcode": false,
			"rotationMechanism": "METHOD_2"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK",
   "removePDFSecurity": true
  }
]
Panel
titlePrzykład działania
Expand
titlePrzykład 1.
Code Block
languagejs
titleKonfiguracja JSON
linenumberstrue
[
  {
   "documentClassId": 4,
   "watermark": {
        "type": "TEXT",
        "text": "Numer sprawy: {8}, Data rejestracji: {9}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "fontSize": 15,
			"fontType": "HELVETICA",
			"fontColor": "LIGHT_GRAY",
            "encoding": "CP1250"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 4,
   "watermark": {
        "type": "BARCODE",
        "text": "{8}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 80,
        "positionY%": 10,
        "opacity": 0.5,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",       
            "codeWidth": 50,
            "codeHeight": 15,
            "textUnderBarcode": false
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK"
  }
]

Oryginalny dokument:

Image Added

Po otwarciu:

Image Added

 

Przykład działania dla powyższej konfiguracji JSON'a.

Expand
titlePrzykład 2.
Code Block
languagejs
titleKonfiguracja JSON
linenumberstrue
[
  {
   "documentClassId": 4,
   "watermark": {
        "type": "TEXT",
        "text": "Numer sprawy: {8}, Data rejestracji: {9}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "
size
fontSize": 15,
			"fontType": "HELVETICA",
			"
color
fontColor": "
LIGHT_GRAY
WHITE",
            "encoding": "CP1250",
            "
clockwiseAngle
backgroundColor": 
0
"BLACK"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 4,
   "watermark": {
        "type": "BARCODE",
        "text": "{8}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 
80
20,
        "positionY%": 10,
        "opacity": 0.
5
9,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",       
            "codeWidth": 50,
            "codeHeight": 15,
            "textUnderBarcode": true
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]  
    },
   "errorHandling": "BLOCK",
   "removePDFSecurity": true
  }
]
Panel
titlePrzykład działania

Oryginalny dokument:

Image Removed

Image Added

 Po

Po otwarciu:

Image Removed

Image Added

Panel
titleChange log

1.0.0 (obowiązująca dokumentacja)

  • Dodanie hook'a

1.0.1 (obowiązująca dokumentacja)

  • Dodanie obsługi błędów, wyświetlanie tekstu pod kodem kreskowym, definiowanie tła dla znaku wodnego w formie tekstu

1.0.2 (obowiązująca dokumentacja)

  • Dodanie parametru "removePDFSecurity" obsługującego zabezpieczone hasłem pliki

1.0.4 (obowiązująca dokumentacja)

  • Dodanie słów kluczowych do użycia w parametrze text

1.0.8

  • Dodanie parametru "rotationMechanism" zmieniającego działanie rotacji kodu kreskowego

Variable length, high density alphanumeric code. It can encode characters from the entire ASCII range. The coding uses a dash and a gap of four possible widths, which makes it a compact code. Code 128 can be scanned in either direction and there is no limit to the length of the code itself.

Image Removed

English

← Return to the list of hooks

Info

If you have a problem understanding how the hook works, check: Hook's mechanism

Panel
titleBasic information

Available from version: 1.0.0

Panel
titleDescription

Hook places a watermark on the document as it is displayed. This hook is implemented based on the definition of the ReadFileHookAdapter system hook, which allows to change the binary stream of the displayed document from archive or in preview in the process. Configuration of the watermark insert hook is defined in JSON format as a list and is managed by the PCM (Plugin Configuration Manager). A watermark is placed on every page of the document and accepts only PDF format.

Panel
titleJSON parameters
Code Block
languagejs
   - documentClassId
   - watermark
       - type
       - text
	   - alignment
       - anchor 
	   - positionX%
       - positionY%
       - opacity
	   - clockwiseAngle
       - watermarkBarcode
            - format
            - codeWidth
            - codeHeight
            - textUnderBarcode
			- rotationMechanism
       - watermarkText
            - sizefontSize
			- fontType
			- colorfontColor
            - encoding
            - clockwiseAnglebackgroundColor
   - permissions
       - groups
   -errorHandling
   -removePDFSecurity
Warning

Plugin version 1.0.0 is incompatible with newer versions. Installing plugin version 1.0.1 or later will run the Upgrader, which will update the JSON configuration file to match plugin version 1.0.1.

Panel
titleConfiguration parameters

Parameter name in JSON configuration

From version

Description

Paremeter type

Comments and restrictions

documentClassId*

1.0.0

The document class id indicates for which documents the watermark insertion parameters are to be considered.

Integer

 

type*

(watermark)

 

1.0.0

Specifies what type of watermark is.

Text
ValueMeaningDescription
BARCODEEncodes the value of the text parameter into a barcode with the specified format defined in the format parameter. The watermark on the document is a barcode.
TEXTThe value of the text parameter is applied to the document as an explicit, unencoded watermark.

text*

(watermark)

1.0.0

Takes the text value that is used to create the watermark. In order to use document index values, the index id should be enclosed in curly braces {}. It is possible to use more than one index value in a parameter. Each subsequent index must be followed by curly braces.

Example.:

Case number: "{8}, Registration Date {9}"

Watermark text ->

Case number: 433589, Registration Date: 13-02-2021


It is also possible to use special keywords that return information about the user, process id and activity id. All available values are listed in the next column.

 

Example:

"Username: {USER_NAME}, Date: {CURRENT_DATE}"

Watermark text ->

"Username: admin, Date: 2022-10-21"


Text
Warning

Any typed index ids in the text string must exist in the document class specified by the documentClassId parameter. If the document being viewed does not contain an index value (it is empty) whose id is given in curly braces in this parameter, the id will be replaced with the empty string "".

KeywordDescription
{CURRENT_DATE}Current date in yyyy-MM-dd format.
{CURRENT_DATE_AND_TIME}Current date and time in yyyy-MM-dd HH-mm-ss format.
{PROCESS_ID}Process id.
{ACTIVITY_ID}Activity id.
{USER_NAME}User name.
{USER_EMAIL}User email.
{USER_FULL_NAME}User full name that consists of first and last name.
{USER_FIRST_NAME}User first name.
{USER_LAST_NAME}User last name.
{USER_NUMBER}User number.

alignment*

(watermark)

1.0.0

Specifies relative to which of the four corners of the document page the position of the watermark will be calculated based on the positionX% and positionY% parameters.

 

More information...

Text

Pay attention to the corresponding values of the positionX% and positionY% parameters, because depending on the value of the alignment, anchor parameter, and the size of the watermark, the watermark may extend beyond the document page, i.e. be partially or completely invisible.

ValueAvailable valuesMeaning
TOP_LEFT

The position of the watermark in relation to the top left corner.

Image Removed

TOP_RIGHT

The position of the watermark in relation to the top right corner.

Image Removed

BOTTOM_LEFT

The position of the watermark in relation to the bottom left corner.

Image Removed

BOTTOM_RIGHT

The position of the watermark in relation to the bottom right corner.

Image Removed

anchor*

(watermark)

1.0.0

Specifies

the position

a point in the circumference or in the center of the watermark

in relation to the corresponding corner

from which the position of the watermark is determined based on the values of parameters positionX% and positionY%.

 

More information...

Text

The position of the watermark in relation to the lower left corner of the watermark.

Image Removed
ValueMeaning
Available values
TOP_LEFT
TOP_MIDDLE
TOP_RIGHT
CENTER_LEFT
CENTER_MIDDLE
CENTER_RIGHT
BOTTOM_LEFT
BOTTOM_MIDDLE
BOTTOM_RIGHT

positionX%*

(watermark)

1.0.0 Indicates the X (horizontal) position of the watermark in percent relative to the document page dimensions. The position is set based on the selected page corner in the alignment parameter. Integer Value between 0 and 100.

positionY%*

(watermark)

1.0.0 Indicates the Y (vertical) position of the watermark in percent relative to the document page dimensions. The position is set based on the selected page corner in the alignment parameter. Integer Value between 0 and 100.

opacity*

(watermark)

1.0.0 Specifies the transparency degree of visibility of the inserted watermark on the pages of the document. Float 
  •  Value 0 (or less)

The element is fully transparent (invisible).

  • Value between (0
.0 and 1.0.

format*

  • , 1)

The item is partially transparent.

  • Value 1 (or more)

The element is fully opaque (uniform).

clockwiseAngle*

(watermark)

1.0.0Watermark rotation.Float 

format*

 (watermark.watermarkBarcode)

1.0.0

Specifies

standard for one-dimensional barcodes (writing information on one line, in the form of dashes).
 Text
ValueMeaning
CODE_39

Also known as "USS Code 39", "Code 3/9", "Code 3 of 9", "USD-3", "Alpha39") - fixed-width alphanumeric single character bar code.

CODE_93

Code 93 was designed as an improvement to the Code 39 encoding. Like its original in the basic version, it is able to store 43 alphanumeric characters. However, compared to its predecessor, it has 4 additional control characters.

CODE_128

High-resolution alphanumeric one-dimensional barcode. It was designed to encode 128 ASCII characters

the barcode format.


More information...

 Text
Available values
AZTEC
CODABAR
CODE_39
CODE_93
CODE_128
DATA_MATRIX
EAN_8
EAN_13
ITF
PDF_417
QR_CODE
UPC_A
UPC_E

codeWidth*

(watermark.watermarkBarcode)

1.0.0Defines the width of the barcode in pixels.IntegerSpecifies the minimum width of the barcode. In case the value to be encoded from the text parameter turns out to be too long, the width will be increased.

codeHeight*

(watermark.watermarkBarcode)

1.0.0Defines the height of the barcode in pixels.Integer 

textUnderBarcode*

(watermark.watermarkBarcode)

1.0.1Specifies whether to display the text encoded in the barcode below this barcode.BooleanThe text has a fixed font size of 11 and black color.

rotationMechanism

(watermark.watermarkBarcode)

1.0.8Specifies how a barcode watermark rotation should work. Method 1 - (obsolete) rotation is based on the basic functions of the library. The rotation for the barcode watermark is counterclockwise. Method 2 (recommended) - rotation takes place relative to the watermark point specified in the anchor property. The rotation is clockwise for the barcode watermark. The parameter is optional. By default, METHOD_1 is used.Text
Available values
METHOD_1
METHOD_2

size*

(watermark.watermarkText)

1.0.0Text size.Float 

fontType*

(watermark.watermarkText)

1.0.0Text font type.Text
ValueMeaningDescription
COURIERCourier
COURIER_BOLDCourier Bold
COURIER_OBLIQUECourier Oblique
COURIER_BOLDOBLIQUECourier Bold Oblique
HELVETICAHelvetica
HELVETICA_BOLDHelvetica Bold
HELVETICA_OBLIQUEHelvetica Oblique
HELVETICA_BOLDOBLIQUEHelvetica Bold Oblique
SYMBOLSymbol
TIMES_ROMANTimes Roman
TIMES_BOLDTimes Bold
TIMES_ITALICTimes Italic
TIMES_BOLDITALICTimes Bold Italic
ZAPFDINGBATSZapf Dingbats

colorfontColor*

(watermark.watermarkText)

1.0.0Color of the text.Text
ValueMeaningDescription
WHITEWhite
LIGHT_GRAYLight gray
GRAYGray
DARK_GRAYDark gray
BLACKBlack
REDRed
PINKPink
ORANGEOrange
YELLOWYellow
GREENGreen
MAGENTAMagenta
CYANCyan
BLUEBlue

encoding*

(watermark.watermarkText)

1.0.0

Character encoding standard.

 

More information...

TextThe value between 0.0 and 360.0.
ValueAvailable valuesMeaning
CP1250A code page for the representation of texts in Central European languages using the Latin alphabet, for example Albanian, Croatian, Czech, Polish, Romanian, Slovak, Slovenian, Hungarian.
CP1252A code page to represent texts in Western European languages.
CP1257A code page used to represent texts in Estonian, Lithuanian or Latvian. This set is largely compatible with ISO 8859-13, and is suitable for coding the Polish language.
MACROMANCharacter encoding mainly used in classic Mac OS to represent text. It encodes 256 characters, the first 128 of which are identical to ASCII and the remaining characters include math symbols, diacritics, and additional punctuation marks. It is suitable for English and several other Western languages.

clockwiseAngle*

(watermark.watermarkText)

1.0.0Watermark rotation.Float
CP1250
CP1252
CP1257
MACROMAN

backgroundColor

(watermark.watermarkText)

1.0.1Text background color. 

The parameter is optional. If it is not defined, the background for the watermark in the form of text will not be used.

ValueDescription
WHITEWhite
LIGHT_GRAYLight gray
GRAYGray
DARK_GRAYDark gray
BLACKBlack
REDRed
PINKPink
ORANGEOrange
YELLOWYellow
GREENGreen
MAGENTAMagenta
CYANCyan
BLUEBlue
errorHandling*1.0.1Error handling. Defines how the document preview window should behave in the event of any error, e.g. incorrect characters in the text used to encode the barcode for a specific barcode format.Text
 Value Description
 BLOCKAn HTML page is displayed with the error message. It is not possible to download the original (no watermark) document.
DISPLAY_ORIGINALThe original document is displayed and available for download.
Warning

The value of this parameter is taken into account after JSON deserialization (after entering the correct names and values of JSON configuration parameters in PCM), hence if an error occurs during the deserialization stage, the default BLOCK error handling will be used.

groups

(permissions)

1.0.0Permissions defining for which users logged in to the system the hook will be run when trying to open a document.Array of text valuesOptional parameter, when is not filled, everyone can see the watermark.
removePDFSecurity1.0.2Removes the file's password that protects it from being modified. The resulting file has no security compared to its original version. The parameter does not take into account the removal of the file password that was used to prevent the file from being opened.BooleanOptional, when undefined, defaults to false for backward compatibility.

Parameter*- field is required

The barcode is an improvement of the CODE_39 format. Like its prototype, it stores 43 alphanumeric characters, but additionally has 4 control characters (($), (%), (/), (+)).
The code accepts only uppercase letters.

Panel
titleBarcode formatsConfiguration example
FormatImage Added
Description

 

Code_39

Barcode with variable-length alphanumeric characters to store 43 different characters. Each sign consists of 9 elements (light and dark bars), 3 of which are significantly wider. This format allows you to encode numbers, capital letters and characters (-, ., (Space), $, /, +,%, *).

CharValueCharValueCharValueCharValue
00B11M22X33
11C12N23Y34
22D13O24Z35
33E14P25-36
44F15Q26.37
55G16R27space38
66H17S28$39
77I18T29/40
88J19U30+41
99K20V31%42
A10L21W32  

Image Removed

 

Code_93
CharValueCharValueCharValueCharValue
00C12O24-36
11D13P25.37
22E14Q26space38
33F15R27$39
44G16S28/40
55H17T29+41
66I18U30%42
77J19V31($)43
88K20W32(%)44
99L21X33(/)45
A10M22Y34(+)46
B11N23Z35  

Image Removed

Code_128
Panel
titleConfiguration example

Image Removed

Code Block
languagejs
Code Block
languagejs
linenumberstrue
[
  {
   "documentClassId": 5,
   "watermark": {
        "type": "TEXT",
        "text": "Case number: {10}, Registration date: {11}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "fontSize": 15,
			"fontType": "HELVETICA",
			"fontColor": "WHITE",
            "encoding": "CP1252",
            "backgroundColor": "BLACK"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
   "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 5,
   "watermark": {
        "type": "BARCODE",
        "text": "{10}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 80,
        "positionY%": 10,
        "opacity": 0.5,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",  
            "codeWidth": 50,
            "codeHeight": 15,
            "textUnderBarcode": false,
			"rotationMechanism": "METHOD_1"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
   "errorHandling": "BLOCK",
   "removePDFSecurity": true
  }
]
Panel
titleExample of use
Expand
titleExample 1.
Code Block
languagejs
titleJSON configuration
linenumberstrue
[
  {
   "documentClassId": 5,
   "watermark": {
        "type": "TEXT",
        "text": "Case number: {10}, Registration date: {11}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "fontSize": 15,
			"fontType": "HELVETICA",
			"fontColor": "LIGHT_GRAY",
            "encoding": "CP1252",
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
   "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 5,
   "watermark": {
        "type": "BARCODE",
        "text": "{10}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 80,
        "positionY%": 10,
        "opacity": 0.5,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",  
            "codeWidth": 50,
            "codeHeight": 15,
            "textUnderBarcode": false
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
   "errorHandling": "BLOCK"
  }
]

Original document:

Image Added

 After opening:

Image Added

Example of use for the above JSON configuration.

Expand
titleExample 2.
Code Block
languagejs
titleJSON configuration
linenumberstrue
[
  {
   "documentClassId": 5,
   "watermark": {
        "type": "TEXT",
        "text": "Case number: {10}, Registration date: {11}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
		"positionX%": 5,
        "positionY%": 5,
        "opacity": 0.7,
        "clockwiseAngle": 0,
        "watermarkText":{
            "
size
fontSize": 15,
			"fontType": "HELVETICA",
			"
color
fontColor": "
LIGHT_GRAY
WHITE",
            "encoding": "CP1252",
            "
rotation
backgroundColor": 
0
"BLACK"
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
 
}
  "errorHandling": "BLOCK"
  },
  {
   "documentClassId": 5,
   "watermark": {
        "type": "BARCODE",
        "text": "{10}",
		"alignment": "TOP_LEFT",
        "anchor": "BOTTOM_LEFT",
        "positionX%": 80,
        "positionY%": 10,
        "opacity": 0.
5
9,
        "clockwiseAngle": 0,
        "watermarkBarcode":{
            "format": "CODE_128",  
            "codeWidth": 50,
   
"codeWidth
         "codeHeight": 
50
15,
            "
codeHeight
textUnderBarcode": 
15
true
        }
    },
   "permissions": {
       "groups": ["Users", "Administrators"]
    },
 
}
  "errorHandling": "BLOCK",
   "removePDFSecurity": true
  }
]
Panel
titleExample of use

Original document:

Image Removed

Image Added

 After

After opening:

Image Removed

Image Added

 

Panel
titleChange log

1.0.0 (applicable documentation)

  • Hook adding

1.0.1 (applicable documentation)

  • Adding error handling, displaying text under the barcode, defining the background for the watermark as text

1.0.2 (applicable documentation)

  • Adding "removePDFSecurity" parameter for password-protected files

1.0.4 (applicable documentation)

  • Adding keywords to use in the text parameter

1.0.8

  • Adding a "rotationMechanism" parameter that changes the barcode rotation behavior