← 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 |
---|
title | Podstawowe informacje |
---|
| Dostępny od: 1.0.0 |
Panel |
---|
| 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 |
---|
| Code Block |
---|
| - documentClassId
- watermark
- type
- text
- alignment
- anchor
- positionX%
- positionY%
- opacity
- clockwiseAngle
- watermarkBarcode
- format
- codeWidth
- codeHeight
- textUnderBarcode
- rotationMechanism
- watermarkText
- fontSize
- fontType
- fontColor
- encoding
- backgroundColor
- 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. |
|
Panel |
---|
title | Parametry konfiguracyjne |
---|
| Image Removed Info |
---|
| title | Przykładowa konfiguracja JSON |
---|
| "type": "BARCODE", "Nazwa parametru w konfiguracji JSON | | Od wersji | Opis | Typ parametru | Uwagi i ograniczenia | documentClass
---|
documentClassId* | | 1.0.0 | Klasa Identyfikator klasy dokumentów wskazuje dla których dokumentów ma być uruchamiany mechanizm wstawiania znaku wodnego. | TekstowyCałkowity | | type* | (watermark) | 1.0.0 | Określa jakiego typu jest znak wodnytyp znaku wodnego.
| Tekstowy | Wartość | ZnaczenieOpis |
---|
BARCODE | Zamieszcza znak wodny w koduje wartość parametru text do postaci kodu kreskowego o określonym formacie zdefiniowanym w parametrze format. Znak wodny umieszczany na dokumencie jest kodem kreskowym. | TEXT | Zamieszcza Wartość parametru text jest nanoszona na dokument jako znak wodny w postaci |
| format | formie jawnej, niezakodowanej. |
| text* (watermark) | 1.0.0 | Określa standard kodów kreskowych w postaci jednowymiarowej (zapis informacji w jednej linii, w formie kresek). | Tekstowy | Wartość | Znaczenie |
---|
CODE_39 | 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. Znak | Wartość | Znak | Wartość | Znak | Wartość | Znak | Wartość |
---|
0 | 0 | B | 11 | M | 22 | X | 33 | 1 | 1 | C | 12 | N | 23 | Y | 34 | 2 | 2 | D | 13 | O | 24 | Z | 35 | 3 | 3 | E | 14 | P | 25 | - | 36 | 4 | 4 | F | 15 | Q | 26 | . | 37 | 5 | 5 | G | 16 | R | 27 | space | 38 | 6 | 6 | H | 17 | S | 28 | $ | 39 | 7 | 7 | I | 18 | T | 29 | / | 40 | 8 | 8 | J | 19 | U | 30 | + | 41 | 9 | 9 | K | 20 | V | 31 | % | 42 | A | 10 | L | 21 | W | 32 | | |
Image Removed
| CODE_93 | 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. Znak | Wartość | Znak | Wartość | Znak | Wartość | Znak | Wartość |
---|
0 | 0 | C | 12 | O | 24 | - | 36 | 1 | 1 | D | 13 | P | 25 | . | 37 | 2 | 2 | E | 14 | Q | 26 | space | 38 | 3 | 3 | F | 15 | R | 27 | $ | 39 | 4 | 4 | G | 16 | S | 28 | / | 40 | 5 | 5 | H | 17 | T | 29 | + | 41 | 6 | 6 | I | 18 | U | 30 | % | 42 | 7 | 7 | J | 19 | V | 31 | ($) | 43 | 8 | 8 | K | 20 | W | 32 | (%) | 44 | 9 | 9 | L | 21 | X | 33 | (/) | 45 | A | 10 | M | 22 | Y | 34 | (+) | 46 | B | 11 | N | 23 | Z | 35 | | |
Image Removed
| CODE_128 | Kod alfanumeryczny o zmiennej długości i wysokiej gęstości. Potrafi kodować znaki z całego zakresu ASCII. Image Removed
|
| indexId | | 1.0.0 | Wskazuje na indeks, z którego jest pobierana wartość do zakodowania w znaku wodnym. | Całkowity | Wartość indeksu musi być typu tekstowego. | codeWidth | | 1.0.0 | Definiuje szerokość znaku wodnego w pikselach. | Całkowity | Parametr nie definiuje maksymalnej szerokości kodu kreskowego - w przypadku, gdy podstawiana wartość okaże się zbyt długa, szerokość automatycznie zostanie zwiększona. | codeHeight | | 1.0.0 | Definiuje długość znaku wodnego w pikselach. | Całkowity | | position | | | Pozycjonuje znak wodny w odpowiedniej części strony. Do wykorzystania jest 9 predefiniowanych pozycji. | Tekstowy | Wartość | Znaczenie |
---|
TOP_RIGHT | Górny prawy róg | TOP_LEFT | Górny lewy róg | BOTTOM_RIGHT | Dolny prawy róg | BOTTOM_LEFT | Dolny lewy róg | TOP | U góry na środku | BOTTOM | Na dole na środku | LEFT | Na środku po lewej stronie | RIGHT | Na środku po prawej stronie | CENTER | Na środku |
| margin | | 1.0.0 | Definiuje odstęp znaku wodnego od określonej krawędzi strony w zależności od wartości parametru Umiejscowienie np. gdy wspomniany parametr ma wartość TOP, to margines odnosi się do górnej krawędzi strony dokumentu.
| Zmiennoprzecinkowy | | opacity | | 1.0.0 | Określa przezroczystość wstawianego znaku wodnego na stronach dokumentu. | Zmiennoprzecinkowy | Wartość z przedziału 0-1. | permissions | | 1.0.0 | Uprawnienia określające dla jakich zalogowanych użytkowników w systemie przy próbie otwarcia dokumentu zostanie uruchomiony hook. | Obiekt | Parametr opcjonalny, gdy nie jest uzupełniony to znak wodny widzą wszyscy. | groups | | 1.0.0 | Wskazuje na grupy użytkowników systemowych. | Tablica tekstowa | |
Panel |
---|
title | Przykładowa konfiguracja |
---|
| 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 kluczowe | Opis |
---|
{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. Dostępne wartości |
---|
TOP_LEFT | TOP_RIGHT | BOTTOM_LEFT | BOTTOM_RIGHT |
| anchor* (watermark) | 1.0.0 | Określa 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... | Tekstowy | 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.0 | Wskazuje 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.0 | Wskazuje 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łkowity | Wartość z przedziału 0 -100. | opacity* (watermark) | 1.0.0 | Określa stopień widoczności (nieprzezroczystość) wstawianego znaku wodnego. | Zmiennoprzecinkowy | Element jest w pełni przezroczysty (niewidoczny). - Wartość z przedziału (0, 1)
Element jest częściowo przezroczysty. Element jest w pełni nieprzezroczysty (jednolity). | clockwiseAngle* (watermark) | 1.0.0 | Rotacja znaku wodnego zgodnie z kierunkiem ruchu wskazówki zegara. | Zmiennoprzecinkowy | | format* (watermark.watermarkBarcode) | 1.0.0 | Określa standard kodu kreskowego.
Więcej informacji... | Tekstowy | Dostępne wartości |
---|
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.0 | Definiuje 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.0 | Definiuje wysokość kodu kreskowego w pikselach. | Całkowity | | textUnderBarcode* (watermark.watermarkBarcode) | 1.0.1 | Określa, czy ma być wyświetlany pod kodem kreskowym tekst (wartość parametru text), który został w nim zakodowany. | Logiczny | Tekst ma stały rozmiar czcionki 11 i kolor czarny. | rotationMechanism (watermark.watermarkBarcode) | 1.0.8 | Okreś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.0 | Rozmiar tekstu. | Zmiennoprzecinkowy | | fontType* (watermark.watermarkText) | 1.0.0 | Rodzaj czcionki tekstu. | Tekstowy | Wartość | Opis |
---|
COURIER | Courier | COURIER_BOLD | Courier Bold | COURIER_OBLIQUE | Courier Oblique | COURIER_BOLDOBLIQUE | Courier Bold Oblique | HELVETICA | Helvetica | HELVETICA_BOLD | Helvetica Bold | HELVETICA_OBLIQUE | Helvetica Oblique | HELVETICA_BOLDOBLIQUE | Helvetica Bold Oblique | SYMBOL | Symbol | TIMES_ROMAN | Times Roman | TIMES_BOLD | Times Bold | TIMES_ITALIC | Times Italic | TIMES_BOLDITALIC | Times Bold Italic | ZAPFDINGBATS | Zapf Dingbats |
| fontColor* (watermark.watermarkText) | 1.0.0 | Kolor tekstu. | Tekstowy | Wartość | Opis |
---|
WHITE | Biały | LIGHT_GRAY | Jasnoszary | GRAY | Szary | DARK_GRAY | Ciemnoszary | BLACK | Czarny | RED | Czerwony | PINK | Różowy | ORANGE | Pomarańczowy | YELLOW | Żółty | GREEN | Zielony | MAGENTA | Magenta | CYAN | Cyjan | BLUE | Niebieski |
| encoding* (watermark.watermarkText) | 1.0.0 | Kodowanie znaków.
Więcej informacji... | Tekstowy | Dostępne wartości |
---|
CP1250 | CP1252 | CP1257 | MACROMAN |
| backgroundColor (watermark.watermarkText) | 1.0.1 | Kolor tła tekstu | | Parametr jest opcjonalny. W przypadku braku jego zdefiniowania, nie zostanie zastosowane tło dla znaku wodnego w formie tekstu. Wartość | Opis |
---|
WHITE | Biały | LIGHT_GRAY | Jasnoszary | GRAY | Szary | DARK_GRAY | Ciemnoszary | BLACK | Czarny | RED | Czerwony | PINK | Różowy | ORANGE | Pomarańczowy | YELLOW | Żółty | GREEN | Zielony | MAGENTA | Magenta | CYAN | Cyjan | BLUE | Niebieski |
| 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 |
---|
BLOCK | Wyświetlana jest strona HTML z informacją o błędzie. Nie ma możliwości pobrania oryginalnego (bez znaku wodnego) dokumentu. | DISPLAY_ORIGINAL | Wyś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.0 | Uprawnienia 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 tekstowych | Parametr opcjonalny, gdy nie jest uzupełniony, to mechanizm wstawiania znaku wodnego działa dla każdego użytkownika. | removePDFSecurity | 1.0.2 | Usuwa 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. | Logiczny | Parametr opcjonalny, gdy nie jest zdefiniowany, domyślnie przyjmowana jest wartość false zgodnie z kompatybilnością wsteczną. |
Parametr*- pole wymagane |
Panel |
---|
title | Przykładowa konfiguracja |
---|
| Image Added
Code Block |
---|
language | js |
---|
linenumbers | true |
---|
| [
{
"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 |
---|
| Expand |
---|
| Code Block |
---|
language | js |
---|
title | Konfiguracja JSON |
---|
linenumbers | true |
---|
| [
{
"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 |
Expand |
---|
| Code Block |
---|
language | js |
---|
title | Konfiguracja JSON |
---|
linenumbers | true |
---|
| [
{
"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%": 20,
"positionY%": 10,
"opacity": 0.9,
"clockwiseAngle": 0,
"watermarkBarcode":{
"format": "CODE_128",
"codeWidth": 50,
"codeHeight": 15,
"textUnderBarcode": true
}
},
"permissions": {
"groups": ["Users", "Administrators"]
},
"errorHandling": "BLOCK",
"removePDFSecurity": true
}
] |
Oryginalny dokument: Image Added
Po otwarciu: Image Added
|
|
|