Skip to main content
A newer version of this page is available.
All docs
V18.2
Row

ShapeCollection.AddPicture(String, Range) Method

OBSOLETE

Use the Worksheet.Pictures.AddPicture(string filename, Range targetRange) method instead.

Inserts a picture from a file to fit in the specified range.

Namespace: DevExpress.Spreadsheet

Assembly: DevExpress.Spreadsheet.v18.2.Core.dll

Declaration

[Obsolete("Use the Worksheet.Pictures.AddPicture(string filename, Range targetRange) method instead.", false)]
Picture AddPicture(
    string filename,
    Range targetRange
)

Parameters

Name Type Description
filename String

A string that specifies a path to the image file.

targetRange Range

A Range to which the inserted picture fits.

Returns

Type Description
Picture

A Picture object that is the inserted picture.

Remarks

The image is resized to fit in the specified range.

Inserted picture has a FloatingObject.Placement set to Placement.MoveAndSize.

Example

Dim imageStream As Stream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("Pictures.x-spreadsheet.png")
Dim imageSource As SpreadsheetImageSource = SpreadsheetImageSource.FromStream(imageStream)
workbook.BeginUpdate()
' Set the measurement unit to Millimeter.
workbook.Unit = DevExpress.Office.DocumentUnit.Millimeter
Try
    Dim worksheet As Worksheet = workbook.Worksheets(0)
    ' Insert a picture from a file so that its top left corner is in the specified cell.
    ' By default the picture is named Picture1.. PictureNN.
    worksheet.Pictures.AddPicture("Pictures\x-docserver.png", worksheet.Cells("D5"))
    ' Insert a picture to fit in the specified range.
    worksheet.Pictures.AddPicture("Pictures\x-docserver.png", worksheet.Range("B2"))
    ' Insert a picture from the SpreadsheetImageSource at 120 mm from the left, 80 mm from the top, 
    ' and resize it to a width of 70 mm and a height of 20 mm, locking the aspect ratio.
    worksheet.Pictures.AddPicture(imageSource, 120, 80, 70, 20, True)
    ' Insert the picture to be removed.
    worksheet.Pictures.AddPicture("Pictures\x-docserver.png", 0, 0)
    ' Remove the last inserted picture.
    ' Find the Picture by its name. The method returns a collection of Pictures with the same name.
    Dim pic As Picture = worksheet.Pictures.GetPicturesByName("Picture 4")(0)
    pic.Delete()
Finally
    workbook.EndUpdate()
End Try
See Also