Работа с изображениями в файле XPS | Java
Добавить изображение в документы XPS
Aspose.Page для Java предлагает XpsPath класс, с помощью которого вы можете добавлять изображения в документ XPS. Вам необходимо создать Matrix и ImageBrush и сохранить XpsDocument. Следующий фрагмент кода демонстрирует полную функциональность добавления изображения в документ XPS:
1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-Java
2// The path to the documents directory.
3String dataDir = Utils.getDataDir();
4// Create new XPS Document
5XpsDocument doc = new XpsDocument();
6// Add Image
7XpsPath path = doc.addPath(doc.createPathGeometry("M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));
8// Creating a matrix is optional, it can be used for proper positioning
9path.setRenderTransform(doc.createMatrix(0.7f, 0f, 0f, 0.7f, 0f, 20f));
10// Create Image Brush
11path.setFill(doc.createImageBrush(dataDir + "QL_logo_color.tif", new Rectangle2D.Double(0f, 0f, 258.24f, 56.64f), new Rectangle2D.Double(50f, 20f, 193.68f, 42.48f)));
12// Save resultant XPS document
13doc.save(dataDir + "AddImage_out.xps");
Результат of running this code is next
Добавить мозаичное изображение
Aspose.Page для Java предлагает XpsPath класс, с помощью которого вы можете добавлять изображения в документ XPS. Вам необходимо создать Matrix и ImageBrush, затем перейти в режим setTileMode(XpsTileMode.Tile) и сохранить XpsDocument. Следующий фрагмент кода демонстрирует полную функциональность добавления мозаичного изображения в документ XPS:
1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-Java
2// The path to the documents directory.
3String dataDir = Utils.getDataDir();
4
5// Create new XPS Document
6XpsDocument doc = new XpsDocument();
7// Tile image
8// ImageBrush filled rectangle in the right top bellow
9XpsPath path = doc.addPath(doc.createPathGeometry("M 10,160 L 228,160 228,305 10,305"));
10path.setFill(doc.createImageBrush(dataDir + "R08LN_NN.jpg",
11 new Rectangle2D.Float(0f, 0f, 128f, 96f), new Rectangle2D.Float(0f, 0f, 64f, 48f)));
12((XpsImageBrush)path.getFill()).setTileMode(XpsTileMode.Tile);
13path.getFill().setOpacity(0.5f);
14// Save resultant XPS document
15doc.save(dataDir + "AddTiledImage_out.xps");
Результат of running this code is next
Вы можете загрузить примеры и файлы данных с GitHub.