Options Operation: Darstellung verändern
Dieses Code-Beispiel soll zeigen, wie man mit der Options-Operation mithilfe des webPDF ToolboxWebService arbeiten kann und wie man die wsclient-Bibliothek am besten einsetzt.
Wichtiger Hinweis:
Das folgende Coding-Beispiel beruht auf der Nutzung der webPDF wsclient Bibliothek. Um das Beispiel zu verstehen und anzuwenden, sollte zunächst der folgende Blogbeitrag beachtet werden.
Start und Vorarbeit
Um den Webservice entsprechend aufrufen zu können, sollten Sie zuvor bereits eine REST- oder SOAP-Session erzeugt haben. Damit wird über den Aufruf der WebServiceFactory entweder ein ToolboxWebService-Objekt für eine SOAP-Session
ToolboxWebService toolboxWebService =
WebServiceFactory.createInstance(
session, WebServiceType.TOOLBOX
);
oder ein ToolboxRestWebService-Objekt für eine REST-Session erzeugt.
ToolboxRestWebService toolboxWebService =
WebServiceFactory.createInstance(
session, WebServiceType.TOOLBOX
);
Anschließend wird diesem WebService-Objekt über den Aufruf der Methode setDocument() ein RestDocument- oder SoapDocument-Objekt übergeben.
Einsatz des Webservice Parameters
Sie benötigen einen ändernden Zugriff auf Ihr PDF-Dokument. Dafür müssen Sie dem Webservice-Aufruf das aktuelle open- und/oder permission-Passwort des Dokuments mit übergeben. Das passiert am erzeugten ToolboxWebService-Objekt. Sollte das Dokument nicht über einen solchen Passwortschutz verfügen, können Sie diesen Punkt überspringen.
toolboxWebService.getPassword().setOpen("password");
toolboxWebService.getPassword().setPermission("password");
ToolboxWebService als Endpunkt Ihres webPDF-Servers
Der ToolboxWebService fasst eine Reihe von Operationen zusammen, mit denen Sie das PDF-Dokument veränderbar machen können. Eine dieser Operationen ist die Options-Operation, die uns hier als Beispiel dient. Mit der Options-Operation können Sie verschiedene Optionen für die Darstellung Ihres PDF-Dokuments gezielt manipulieren.
So fügen Sie Ihrem WebService-Objekt eine Options-Operation hinzu:
OptionsType options = new OptionsType();
toolboxWebService.getOperation().add(options);
Am Options-Objekt lassen sich folgende Parameter setzen:
initialPage (Standardwert: 1)
Legt die Nummer der Startseite des Dokuments fest. Die erste Seite entspricht dem Wert 1.
options.setInitialPage(2);
initialView (Standardwert: "none")
Legt fest, welche Unterfenster des Viewers initial geöffnet werden. Folgende Werte können hier gesetzt werden:
- none = Kein Unterfenster wird geöffnet.
- outlines = Das Inhaltsverzeichnis (Outlines) des Dokuments wird angezeigt.
- thumbnails = Miniaturansichten (Thumbnails) der Seiten des Dokuments werden angezeigt.
- fullscreen = Das Dokument wird im Vollbildmodus geöffnet.
options.setInitialView(InitialViewType.FULLSCREEN);
magnification (Standardwert: "fitWidth")
Setzt die initiale Vergrößerung der Dokumentenansicht auf einen voreingestellten Modus. Folgende Werte können hier gesetzt werden:
- none = Es wird kein besonderer Zoommodus gewählt.
- fitWidth = Eine passende Zoomstufe wird gewählt, um die komplette Seitenbreite darstellen zu können.
- fitPage = Eine passende Zoomstufe wird gewählt, um die komplette Seite darstellen zu können.
- fitHeight = Eine passende Zoomstufe wird gewählt, um die komplette Seitenhöhe darstellen zu können.
- fitVisible = Eine passende Zoomstufe wird gewählt, um den tatsächlichen Inhaltsbereich der Seite darstellen zu können.
- fitActual = Das Dokument wird in seiner originalen Größe geöffnet.
- zoom = Das Dokument wird mit einer bestimmten Vergrößerung geöffnet.
options.setMagnification(MagnificationType.ZOOM);
magnificationZoom (Standardwert: 100)
Wird für die Vergrößerung der Modus zoom gewählt, legt dieser prozentuale Wert die Vergrößerung fest.
options.setMagnificationZoom(300);
pageLayout (Standardwert: "singlePage")
Legt das Layout fest, in dem die Seiten angezeigt werden. Folgende Werte können hier gesetzt werden:
- singlePage = Die Seiten werden einzeln und isoliert angezeigt.
- singlePageContinous = Die Seiten werden einzeln und fortlaufend angezeigt.
- twoPages = Es werden je zwei Seiten des Dokuments isoliert angezeigt.
- twoPagesContinous = Es werden je zwei Seiten des Dokuments fortlaufend angezeigt.
Wir wollen hier ein ausführlicheres Beispiel für den Webservice-Aufruf zur Ansprache der SOAP-Schnittstelle geben:
try (
// Aufbau einer Session mit dem webPDF Server(hier SOAP)
SoapSession session = SessionFactory.createInstance(
WebServiceProtocol.SOAP,
new URL("https://localhost:8080/webPDF/")
);
// Bereit stellen des Dokuments, das verarbeitet werden soll
// und der Datei, in die das Ergebnis geschrieben werden soll
SoapDocument soapDocument = new SoapDocument(
new File("Pfad des Quelldokuments").toURI(),
new File("Pfad des Zieldokuments")
)
) {
// ...
} catch (ResultException | MalformedURLException ex) {
// ...
}
Weiterführende Infos hier
Die Parameter sind auch im Nutzerhandbuch beschrieben: Options Parameterstruktur
Weitere Coding-Beispiele für Webservices, die Sie mit der wsclient-Bibliothek nutzen können, finden Sie hier.