[GastForen Programme Web/Internet PDF Grundlagen / Web / eForms Drucker/Seite Einrichten per JavaScript

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Drucker/Seite Einrichten per JavaScript

15broetchenmann
Beiträge gesamt: 1

8. Okt 2010, 23:13
Beitrag # 1 von 2
Bewertung:
(9016 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich möchte ein PDF erstellen mit einer Auswahlmöglichkeit der zu druckenden Seiten.
Für die verschiedenen Seitenbereiche habe ich checkboxes angelegt (z.B. "Seite1, Seite2, Seite3").
Mit dem folgenden Script funktioniert die eigentliche Übergabe der zu druckenden Seiten auch ganz gut.


Code
if(this.getField("Seite1").value == "On"){ 
this.print({bUI: false, nStart: 0 , nEnd:0, bSilent: true, bShrinkToFit: false});
}
if(this.getField("Seite2").value == "On"){
this.print({bUI: false, nStart: 1 , nEnd:1, bSilent: true, bShrinkToFit: false});
}
if(this.getField("Seite3").value == "On"){
this.print({bUI: false, nStart: 2 , nEnd:2, bSilent: true, bShrinkToFit: false});
}


Ziel ist es eine nicht durchgängige Seitenauswahl zu drucken also z.B. 1, 3. Mit dem bisher verwendeten JS kann das dem User auch ganz gut vorgegaukelt werden, wenn der Parameter "bUI: false" den Druckendialog unterdrückt.
Im Grunde genommen werden damit aber lediglich mehrere Druckaufträge gestartet, was OK wäre, wenn der User die Möglichkeit hätte, vorher den Drucker auszuwählen und einzurichten. Natürlich könnte man bUI auch auf "true" setzen dann würden aber mehrmals der Druckendialog aufpoppen, was ich eigentlich vermeiden möchte.

Frage 1:
Gibt es eine Möglichkeit den "Drucker einrichten" Dialog per JS aufzurufen? Ich habe lediglich die Möglichkeit über "app.execMenuItem("PageSetup");" gefunden, was aber suboptimal ist, da es eher Acrobat/Adobe Reader spezifisch ist und in alternativen PDF-Viewern nicht funktioniert.

alternativ:

Frage 2:
Das alles bräuchte man natürlich nicht wenn man dem print-Befehl per JS eine nicht durchgängige Seitenauswahl (wie "Seite1, Seite3" statt "Seite1 - Seite3") übergeben könnte? Gibt es also eine andere Möglichkeiten als mit "nStart" und "nEnd" einen Seitenbereich für den Druck zu definieren?

Vielleicht gibt es ja auch eine ganz andere Lösung für dieses Problem.

Das Gesamtdokument soll gemäß eines schon bestehenden Printlayouts gestaltet sein (also eine Indesign generiertes PDF) - daher wird eine Live Cycle Designer Lösung wohl eher nicht passen.

Vielen Dank im Voraus
X

Drucker/Seite Einrichten per JavaScript

Max Wyss
Beiträge gesamt: 532

9. Okt 2010, 16:30
Beitrag # 2 von 2
Beitrag ID: #453637
Bewertung:
(8980 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Es ist eventuell möglich, etwas weiter zu kommen, indem das printParams Object eingesetzt wird.

ABER, die Anzahl nicht-Adobe PDF-Viewer, welche Acrobat JavaScript halbwegs unterstützen, lassen sich an einem Finger abzählen... Daher ist die "Rücksichtnahme" auf nicht-Adobe-Viewer überflüssig.

Die Implementierung des Druckdialogs ist nun mal so, dass nur zusammenhängende Seitenbereiche im gleichen Druckbafehl ausgegeben werden können. Es ist denkbar, mit Hilfe eines Plug-ins die Druckfunktion derart zu manipulieren, dass nicht-zusammenhängende Bereiche ausgegeben werden können... vielleicht.

HTH.


als Antwort auf: [#453608]