Wiki-Quellcode von Print-Service Plugin
Verstecke letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
![]() |
5.14 | 1 | [[**Plugin-Download**>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/plugin-bundle-phantomjs&fileid=342||target="_blank"]] (erfordert Anmeldung) |
![]() |
5.10 | 2 | |
![]() |
5.14 | 3 | {{info}} |
![]() |
5.20 | 4 | Bitte verwenden Sie für {{formcycle/}} Version 6 das Plugin ab **Version 2.0.0**. |
![]() |
5.14 | 5 | {{/info}} |
6 | |||
![]() |
1.1 | 7 | {{content/}} |
8 | |||
![]() |
5.10 | 9 | Das Plugin //Print-Service// ermöglicht es, in der Statusverarbeitung ein PDF aus dem Formular zu erzeugen, welches besser für den Druck geeignet ist. |
10 | |||
11 | == Technische Besonderheiten == | ||
12 | |||
![]() |
5.11 | 13 | Technisch erfolgt die Umsetzung mittels Selenium und dem Treiber //phantomJS//. Das PDF-Dokument wird im Format A4 erzeugt. |
14 | |||
![]() |
5.4 | 15 | {{warning}} |
16 | Beim Drucken mit dem Print-Service wird JavaScript aus dem Formular ausgeführt. Hierbei muss allerdings beachtet werden, dass hierbei keine neuen JavaScript-Funktionen zur Verfügung stehen. Konkret werden keine Funktionalitäten ab {{smallcaps}}Ecma{{/smallcaps}}Script6 und höher unterstützt. Es können also etwa keine neuen Schlüsselwörter wie //let// und //const// oder neue Syntax wie Arrow-Funktionen oder Destrukturierung verwendet werden. | ||
17 | {{/warning}} | ||
![]() |
5.2 | 18 | |
![]() |
5.18 | 19 | == Installation == |
20 | |||
![]() |
5.19 | 21 | Das Plugin kann als Mandant-Plugin oder System-Plugin installiert werden. Eine Anleitung zur Installation von Plugins finden Sie [[hier>>doc:Formcycle.UserInterface.Client.Plugins.WebHome]]. |
![]() |
5.18 | 22 | |
![]() |
1.1 | 23 | == Optionen == |
24 | |||
![]() |
5.10 | 25 | Um das Plugin zu nutzen, klicken Sie in der Statusverarbeitung auf neue Aktion und wählen das Print-Plugin aus. Die folgenden Optionen werden zum Konfigurieren der Plugin-Aktion verwendet: |
26 | |||
![]() |
5.16 | 27 | ; **Dateiname** |
28 | : Dateiname, unter dem das erzeugte PDF-Dokument gespeichert wird. | ||
29 | ; **Druckmodus Formular mit textueller Ausgabe von Werten** | ||
30 | : Eingabefelder werden in Text umgewandelt und das Formular wird in der Breite entsprechend angepasst, siehe nächster Abschnitt. | ||
31 | ; **Druckmodus Formular mit Eingabefeldern** | ||
32 | : Das Formular wird so in dem PDF ausgegeben wie es auch im Browser aussieht. | ||
33 | ; **Zoomfaktor** | ||
34 | : Faktor, um den das Formular vergrößert wird. Ist dieser kleiner 1, wird das Formular verkleinert. Kann genutzt werden, um besonders große oder kleine Formulare auf das A4-Format des PDF-Dokuments anzupassen. | ||
35 | ; **Benutzergruppen** | ||
36 | : Benutzergruppen, denen der virtuelle Benutzer angehört, der das Formular über Selenium öffnet. Formularelemente können abhängig von der Benutzergruppe ausgeblendet bzw. //readonly// geschaltet werden. | ||
37 | ; **URL-Parameter** | ||
![]() |
5.17 | 38 | : Zusätzliche URL-Parameter, die an die URL angehängt werden, wenn das Formular über Selenium bei der Generierung des PDF-Dokuments geöffnet wird. Diese können beispielsweise genutzt werden, um [[Formularfelder vorzubefüllen>>Formcycle.FormDesigner.URLParameter]]. Auf diese URL-Parameter kann auch von selbstgeschriebenem JavaScript im Scriptbereich zugegriffen werden. |
![]() |
1.1 | 39 | |
![]() |
5.13 | 40 | == Textfelder und Auswahllisten == |
![]() |
1.1 | 41 | |
![]() |
5.7 | 42 | Zur Optimierung des PDF-Dokuments für den Druck werden Formularelemente vom Typ [[Eingabefeld>>Formcycle.FormDesigner.FormElements.Input]], [[Textarea>>Formcycle.FormDesigner.FormElements.Textarea]] und [[Auswahl>>Formcycle.FormDesigner.FormElements.Selection]] (Drop-Down) in reine Textfelder umgewandelt, falls als Druckmodus Formular mit textueller Ausgabe von Werten eingestellt ist. Zudem werden diese mit der CSS-Klasse //print// und //XSpan// versehen, welches für Anpassungen des Aussehens verwendet werden kann. Um etwas die Schriftgröße zu ändern, kann folgendes CSS verwendet werden: |
![]() |
1.1 | 43 | |
![]() |
5.6 | 44 | {{code language="css"}} |
![]() |
1.1 | 45 | .print.XSpan { |
46 | font-size: 18pt; | ||
47 | font-family: serif; | ||
48 | } | ||
49 | {{/code}} | ||
50 | |||
51 | Um einige Eigenschaften des Standard-CSS zu überschreiben, welches mit {{formcycle/}} ausgeliefert wird, können spezifischerer Selektoren verwendet werden, wie beispielsweise | ||
52 | |||
![]() |
5.6 | 53 | {{code language="css"}} |
![]() |
1.1 | 54 | xm-form .xm-content div.print.XSpan { |
55 | font-size: 18pt; | ||
56 | font-family: serif; | ||
57 | } | ||
58 | {{/code}} | ||
59 | |||
60 | Bei den meisten Eigenschaften ist dies jedoch nicht nötig. |