OO-Snippets: insertImage

Commons

Keywords
LanguageooRexx
ApplicationCalc
AuthorsMichael Hinz (initial)
Supported Versions
Supported OSWin32  
QuestionHow can i insert an image
Answer

Code-Snippet-Listing (snippet-source)

/* get the desktop  (an Xdesktop object) */
oDesktop = UNO.createDesktop()   
xComponentLoader = oDesktop~XDesktop~XComponentLoader      --get componentLoader interface
                                                      
/* open a blank calc file */
url = "private:factory/scalc"
xCalcComponent = xComponentLoader~loadComponentFromURL(url, "_blank", 0, .UNO~noProps)


/* get first sheet in spreadsheet */
xDocument = xCalcComponent~XSpreadSheetDocument
xSheet = xDocument~getSheets~XIndexAccess~getByIndex(0)~XSpreadSheet

/* get DrawPage */
xDrawPages = xSheet~xDrawPageSupplier
xDrawPage = xDrawPages~getDrawPage~xDrawPage

/*create shape to insert picture*/
xFactoryManager = xCalcComponent~XMultiServiceFactory
calcShape = xFactoryManager~createInstance("com.sun.star.drawing.GraphicObjectShape")
xcalcImg = calcShape~xShape

size = .bsf~new("com.sun.star.awt.Size")               -- set size
point = .bsf~new("com.sun.star.awt.Point")
size~Height = 2500
size~Width = 8000
point~x = 1000
point~y= 1000

xcalcImg~setSize(size)
xcalcImg~setPosition(point)

url1 = ConvertToURL(directory()"/oorexx.jpg")
xcalcImg~xPropertySet~setPropertyValue("GraphicURL", url1)

xxx = xDrawPage~add(xcalcImg)         -- add image to page

::requires UNO.cls       -- get UNO support

Changelog

DateUserModification

and