Druckqualität im Embedded Documents

Anfrage von unseren Beschäftigten zur Druckqualität.
Wir nutzten das ED als Standard Anzeige-Tool für PDF-Dateinen. Die PDF wird zur besseren Bearbeitung direkt im Browser geöffnet.
Ein MA will nun die geöffnete Datei drucken.
In Qualität Normal war der Ausdruck sehr stark verpixelt.
In Qualität Hoch sind immer noch leichte Pixel erkennbar.
Ein sauberes Druckbild analog zur Anzeige war erst durch den Druck über eine externe PDF-Viewer Anwendung (Adobe) möglich.

Wo können die Qualitäten zum Druck im ED hinterlegt werden?
Könnte ggf. eine zusätzliche Option hinzugefügt werden - z.B. Qualität = Original ?

Hallo @SDonath, vielen Dank für die spannende Frage - diese Problemstellung kannte ich noch nicht.

Ist in dieser Konstellation der Download-Dialog erlaubt, welche in PDF ohne das vorherige Rastern als (zu niedrig qualitatives) Bild liefert?


Die Druckqualität könnte sich allenfalls tatsächlich noch erhöhen lassen, wir prüfen dies gerne parallel.

Weiterhin könnte ein Hotfix zu IFrames helfen, welches OS vor kurzem für 10.10, 11.0 und 11.10 angekündigt hat. Auch dies müssten wir untersuchen.

Die Download-Funktion ist bei uns deaktiviert.
Innerhalb des Browser ist die Anzeige auch noch gestochen scharf.

Vielen Dank für die Rückmeldung. Embedded Documents rastert PDFs vor dem Druck, um möglichst unabhängig von der Umgebung und vorhandenen Werkzeugen zu funktionieren. Welche Optionen wir hier noch bieten können, untersuchen wir gerne.

Wäre es in der Zwischenzeit für die User eine gangbare Alternative, nach dem Speichern mit Ctrl+P aus dem enaio-Client zu drucken?

Diese Funktion könnte man danke enaio-API auch aus Embedded Documents auslösen, wenn sich diese Art zu drucken als eine geeignete Lösung erweisen sollte:

Danke für den Vorschlag, dass hatten wir auch schon probiert.

Ich denke das wäre der beste Ansatz falls sie vom ED nicht direkt die originale Druckqualität übergeben können.

Leider kann man bei diesem Druck nur den Drucker auswählen mehr nicht es startet dann sofort der Ausdruck. Bei der Auswahl nur Liste kommt komischerweise der Druckdialog - wir werden das als Ticket bei OS mal melden.

Aktuell helfen wir uns mit dem Öffnen über externe Anwendung (Adobe).

Grundsätzlich könnte Embedded Documents im Dashlet-Modus auch enaio darum bitten, das Dokument zu drucken. Hier ein kleines Beispiel mit Button:

let currentInfoForPrinter = null;

class PrintViaEnaio {
  async print() {
    window.osClient.osjxPrintObject();
  }

  initEditorConfiguration(instance) {
    const mergeButton = {
      dataElement: this.buttonDataElement,
      type: "actionButton",
      img: '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-printer" viewBox="0 0 16 16"><path d="M2.5 8a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1"/><path d="M5 1a2 2 0 0 0-2 2v2H2a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h1v1a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-1h1a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-1V3a2 2 0 0 0-2-2zM4 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2H4zm1 5a2 2 0 0 0-2 2v1H2a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1v-1a2 2 0 0 0-2-2zm7 2v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1"/></svg>',
      title: "Druck aus enaio",
      onClick: () => this.print(instance),
    };

    instance.UI.setHeaderItems((header) => {
      header.push(mergeButton);
    });
  }

  async updateEditorConfiguration(instance, info, config) {
    currentInfoForPrinter = info;
    if (currentInfoForPrinter.mode == "edit") {
      instance.UI.disableElements([this.buttonDataElement]);
    } else {
      instance.UI.enableElements([this.buttonDataElement]);
    }
  }
}

window.ed.registerInterceptor(new PrintViaEnaio());

Allerdings wird der Druck auch hier direkt ausgelöst, enaio zeigt keinen Druckdialog an.

Wir hatten im Zusammenhang mit der Druckqualität die Anforderung, die Qualitätsstufe standardmäßig von Normal auf Hoch zu setzen und haben uns hier mit einem Interceptor beholfen. Könnte es eine Lösung sein, den Wert bei setPrintQuality größer als 2 zu setzen, oder ist dies der Maximalwert?