Top > OOoBasic > Math

Math Edit

目次 Edit

数式オブジェクトの作成 Edit

多くの場合、数式オブジェクトは他のドキュメントに埋め込む形で利用されます。

Writer Edit

Writer の場合にはドローページに配置されますが、他のドキュメントの図形描写オブジェクトとは少し異なります。

Sub CreateFormulaObject_1
 oDoc = ThisComponent
 oText = oDoc.getText()
 oCursor = oText.createTextCursor(oText.getEnd())
 
 oObj = oDoc.createInstance("com.sun.star.text.TextEmbeddedObject") 
 oObj.CLSID = "078B7ABA-54FC-457F-8551-6147e776a997" 
 oText.insertTextContent(oCursor, oObj, False)
 oFormula = oObj.getEmbeddedObject()
 oFormula.Formula = "s = sqrt{alignc {1} over {N - 1} sum from i = 1 to N (x_i - bar x )^2}"
End Sub

getEmbeddedObject メソッドの返り値と EmbeddedObject プロパティの値は異なるオブジェクトのため、注意が必要です。

Calc、Draw、Impress Edit

Calc、Draw、Impress ではドローページに追加する形になります。

以下は Calc に数式を挿入します。挿入した直後はオブジェクトのサイズが小さすぎるので元のサイズに戻しています。

Sub CreateFormulaObject_2
 oDoc = ThisComponent
 oDrawPage = oDoc.getSheets().getByIndex(0).getDrawPage()
 
 oShape = oDoc.createInstance("com.sun.star.drawing.OLE2Shape")
 oShape.CLSID = "078B7ABA-54FC-457F-8551-6147e776a997" 
 oDrawPage.add(oShape)
 oFormula = oShape.Model
 oFormula.Formula = "s = sqrt{alignc {1} over {N - 1} sum from i = 1 to N (x_i - bar x )^2}"
 
 oShape.setSize(oShape.OriginalSize)
End Sub

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes