// For complete examples and data files, please go to https://github.com/groupdocs-viewer/GroupDocs.Viewer-for-Java
try {
// Setup GroupDocs.Viewer config
ViewerConfig config = Utilities.getConfiguration();
// Create image handler
ViewerImageHandler imageHandler = new ViewerImageHandler(config);
String guid = fileName;
RotatePageOptions rotatePage = new RotatePageOptions(rotationPageNumber, rotationAngle);
// Rotate page
imageHandler.rotatePage(guid, rotatePage);
// Rotate second page 180 degrees
// imageHandler.rotatePage(new RotatePageOptions(guid, 2, 180));
ReorderPageOptions reorderPage = new ReorderPageOptions(reorderPageNumber, reorderNewPosition);
// Reorder pages
imageHandler.reorderPage(guid, reorderPage);
// Set options to include rotate and reorder transformations
ImageOptions options = new ImageOptions();
options.setTransformations(
Transformation.from(Transformation.Rotate, Transformation.Reorder));
// Set watermark properties
Watermark watermark = new Watermark("This is watermark text");
watermark.setColor(Color.BLUE);
watermark.setPosition(WatermarkPosition.Diagonal);
watermark.setWidth(100f);
options.setWatermark(watermark);
// Get document pages image representation with multiple
// transformations
List<PageImage> pages = imageHandler.getPages(guid, options);
for (PageImage page : pages) {
Utilities.saveAsImage(page.getPageNumber() + "_" + fileName, "png", page.getStream());
}
} catch (Exception exp) {
System.out.println("Exception: " + exp.getMessage());
exp.printStackTrace();
}