Verstecke letzte Bearbeiter
gru 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)
gru 5.10 2
gru 5.14 3 {{info}}
gru 5.20 4 Bitte verwenden Sie für {{formcycle/}} Version 6 das Plugin ab **Version 2.0.0**.
gru 5.14 5 {{/info}}
6
gru 1.1 7 {{content/}}
8
gru 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
gru 5.11 13 Technisch erfolgt die Umsetzung mittels Selenium und dem Treiber //phantomJS//. Das PDF-Dokument wird im Format A4 erzeugt.
14
awa 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}}
awa 5.2 18
gru 5.18 19 == Installation ==
20
gru 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]].
gru 5.18 22
gru 1.1 23 == Optionen ==
24
gru 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
gru 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**
gru 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.
gru 1.1 39
gru 5.13 40 == Textfelder und Auswahllisten ==
gru 1.1 41
gru 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:
gru 1.1 43
gru 5.6 44 {{code language="css"}}
gru 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
gru 5.6 53 {{code language="css"}}
gru 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.
Copyright 2000-2025