*ハイパーリンク [#g5325f6c] #contents Writer のハイパーリンクはフィールドではなく TextRange のプロパティで設定します。 以下は選択範囲にハイパーリンクを設定します。 Sub Main oDoc = ThisComponent oController = oDoc.getCurrentController() oViewCursor = oController.getViewCursor() oViewCursor.HyperLinkURL = "http://www.openoffice.org/" oViewCursor.HyperLinkTarget = "_blank" oViewCursor.HyperLinkName = "" End Sub HyperLinkURL に URL を、HyperLinkTarget ターゲット、HyperLinkName を設定すると Name 属性がリンクに付きます。 ドキュメント内のセクションなどのリンクは HyperLinkURL の "#" 以降に指定した名前で設定します。他のドキュメント内の名前も同じように設定できます。 マクロなどを実行するときには vnd.sun.star.script:... 形式で指定します。 ** ドキュメント内の全てのハイパーリンクの処理 [#aa381fba] ドキュメントに内で設定された全てのハイパーリンクの処理は段落とテキストポーションを順に全て処理しなければいけません。 Sub AllHyperLinks oDoc = ThisComponent oText = oDoc.getText() oParaEnume = oText.createEnumeration() While oParaEnume.hasMoreElements() oPara = oParaEnume.nextElement() oPortionEnume = oPara.createEnumeration() While oPortionEnume.hasMoreElements() oPortion = oPortionEnume.nextElement() If oPortion.oPortionEnume <> "" Then ' ... ハイパーリンクが設定されているポーションを処理する End If WEnd WEnd End Sub |