Загружать книгу с указанным размером бумаги принтера

Загружать книгу с указанным размером бумаги принтера

Следующий пример иллюстрирует использование метода LoadOptions.setPaperSize(). Он сначала создает рабочую книгу, сохраняет в поток байтов в формате XLSX, затем загружает ее с размером бумаги A5 и сохраняет в PDF, затем снова загружает с размером A3 и сохраняет еще раз в PDF. Открыв итоговые PDF, вы увидите, что размеры бумаги разные: один — A5, другой — A3. Для ознакомления скачайте сгенерированные примеру файлы A5 PDF и A3 PDF.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(LoadWorkbook.class);
// Create a sample workbook and add some data inside the first worksheet
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getCells().get("P30").putValue("This is sample data.");
// Save the workbook in memory stream
ByteArrayOutputStream baout = new ByteArrayOutputStream();
workbook.save(baout, SaveFormat.XLSX);
// Get bytes and create byte array input stream
byte[] bts = baout.toByteArray();
ByteArrayInputStream bain = new ByteArrayInputStream(bts);
// Now load the workbook from memory stream with A5 paper size
LoadOptions opts = new LoadOptions(LoadFormat.XLSX);
opts.setPaperSize(PaperSizeType.PAPER_A_5);
workbook = new Workbook(bain, opts);
// Save the workbook in pdf format
workbook.save(dataDir + "output-a5.pdf");
// Now load the workbook again from memory stream with A3 paper size
opts = new LoadOptions(LoadFormat.XLSX);
opts.setPaperSize(PaperSizeType.PAPER_A_3);
workbook = new Workbook(bain, opts);
// Save the workbook in pdf format
workbook.save(dataDir + "output-a3.pdf");