Top > OOoBasic > Writer > Bookmark

ブックマーク Edit

テキストマークのこと。ブックマークで同じ名前を持つものは一度だけ挿入できます。

ブックマークコンテナ Edit

ドキュメント中にあるブックマーク全てが含まれるコンテナオブジェクト。同名のブックマークがあるかどうか調べるときなどに利用。

Sub bookmark_1
  oDoc = ThisComponent
  oBookmarks = oDoc.getBookmarks()
  msgbox oBookmarks.hasByName("NewBookmark")
End Sub

ブックマークの挿入 Edit

テキストコンテンツを挿入する方法で com.sun.star.text.Bookmark サービスをインスタンス化したのち、ブックマーク名を設定してから挿入します。一度しか挿入できません。

Sub bookmark_2
  oDoc = ThisComponent
  oText = oDoc.getText()
  oViewCursor = oDoc.getCurrentController().getViewCursor()
  oBookmark = oDoc.createInstance("com.sun.star.text.Bookmark")
  oBookmark.Name = "NewBookmark"
  
  oText.insertTextContent(oViewCursor,oBookmark,False)
End Sub

ブックマークの削除 Edit

ブックマークはテキストコンテンツの削除と同じです。

Sub bookmark_3
  oDoc = ThisComponent
  oText = oDoc.getText()
  oBookmarks = oDoc.getBookmarks()
  oBookmark = oBookmarks.getByName("NewBookmark1")
  oText.removeTextContent(oBookmark)
End Sub

ブックマークの参照 Edit

ブックマークへ移動するハイパーリンクを作成するときには HyperLinkURL プロパティに次のように設定します。

oViewCursor.HyperLinkURL = "#NewBookmark"

ドキュメントを開いたときにブックマークを表示 Edit

ドキュメントを開いたときにブックマークの位置を表示するには次のように HTML でのアンカー指定のようにブックマーク名を指定します。

Sub bookmark_10
 sFileURL = "file:///home/user/Desktop/BookmarksMenu_ja-JP.odt"
 sMark = "dialog"
 
 sURL = sFileURL & "#" & sMark
 StarDesktop.loadComponentFromURL(sURL,"_blank",0,Array())
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