Managing Pictures

Adding Pictures

Adding pictures to a spreadsheet is very easy. It only takes a few lines of code.

Simply call the add method of the Pictures collection (encapsulated in the Worksheet object). The add method takes the following parameters:

  • Upper left row index, the index of the upper left row.
  • Upper left column index, the index of the upper left column.
  • Image file name, the name of the image file, complete with path.
// 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(AddingPictures.class);
// Instantiating a Workbook object
Workbook workbook = new Workbook();
WorksheetCollection worksheets = workbook.getWorksheets();
// Obtaining the reference of first worksheet
Worksheet sheet = worksheets.get(0);
// Adding a picture at the location of a cell whose row and column indices are 5 in the worksheet. It is "F6" cell
int pictureIndex = sheet.getPictures().add(5, 5, dataDir + "logo.jpg");
Picture picture = sheet.getPictures().get(pictureIndex);
// Saving the Excel file
workbook.save(dataDir + "book1.xls");

Positioning of Pictures

Pictures can be positioned using Aspose.Cells as follows:

Absolute Positioning

Developers can position the pictures absolutely by using the setUpperDeltaX and setUpperDeltaY methods of the Picture object.

// 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(AbsolutePositioning.class);
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Obtaining the reference of the newly added worksheet.
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
// Adding a picture at the location of a cell whose row and column indices are 5 in the worksheet. It is "F6" cell
int pictureIndex = worksheet.getPictures().add(5, 5, dataDir + "logo.jpg");
Picture picture = worksheet.getPictures().get(pictureIndex);
// Positioning the picture proportional to row height and colum width
picture.setUpperDeltaX(200);
picture.setUpperDeltaY(200);
// Saving the Excel file
workbook.save(dataDir + "test_pictures.xls");

Advance topics