usmanazizgroupdocs
4/15/2016 - 10:33 AM

PerformMultipleTransformationsInImageMode.java

// 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();
}