Word 文書にブックマークを追加すると、特定の位置をマークしてすばやく参照したり移動したりできるようになります。ブックマークは仮想的な目印として機能し、長い文書内の重要なセクションを簡単に見つけるのに役立ちます。本記事では、Spire.Doc for Python を使用して Word 文書にブックマークを追加する方法を紹介します。 Word の段落にブックマークを追加する Word のテキストにブックマークを追加する Spire.Doc for Python のインストール この操作には、Spire.Doc for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.Doc for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。 pip install Spire.Doc Word の段落にブックマークを追加する Spire.Doc for Python では、BookmarkStart クラスがブックマークの開始位置を、BookmarkEnd クラスがブックマークの終了位置を表します。段落をブックマークするには、段落の先頭に BookmarkStart オブジェクトを挿入し、末尾に BookmarkEnd オブジェクトを追加します。具体的な手順は次のとおりです。 Document オブジェクトを作成します。 Document.LoadFromFile() メソッドを使用して Word ファイルを読み込みます。 Document.Sections[index].Paragraphs[index] プロパティを使用して対象の段落を取得します。 Paragraph.AppendBookmarkStart() メソッドで BookmarkStart を作成し、Paragraph.Items.Insert() メソッドで段落の先頭に挿入します。 Paragraph.AppendBookmarkEnd() メソッドを使用して段落の末尾に BookmarkEnd を追加します。 Document.SaveToFile() メソッドを使用して、文書を別の Word ファイルとして保存します。 Python from spire.doc import Document # Document オブジェクトを作成します doc = Document() # サンプルの Word ファイルを読み込みます doc.LoadFromFile('Sample.docx') # 2 番目の段落を取得します paragraph = doc.Sections.get_Item(0).Paragraphs.get_Item(1) # ブックマークの開始を作成します start = paragraph.AppendBookmarkStart('ブックマーク 1') # 段落の先頭に挿入します paragraph.Items.Insert(0, start) # 段落の末尾にブックマークの終了を追加します paragraph.AppendBookmarkEnd('ブックマーク 1') # ファイルを保存します doc.SaveToFile('output/段落にブックマークを追加.docx') doc.Dispose() 特定の Word のテキストにブックマークを追加する 特定のテキストをブックマークするには、まず文書内で該当するテキストを見つけ、その段落内の位置を取得します。次に、そのテキストの前に BookmarkStart を、後に BookmarkEnd を挿入します。具体的な手順は次のとおりです。 Document オブジェクトを作成します。 Document.LoadFromFile() メソッドを使用して Word ファイルを読み込みます。 文書内でブックマークを付けたい文字列を検索します。 その文字列が属する段落を取得し、段落内での位置を特定します。 文字列の前に BookmarkStart を挿入し、後に BookmarkEnd を挿入します。 Document.SaveToFile() メソッドを使用して、文書を別の Word ファイルとして保存します。 Python from spire.doc import Document # Document オブジェクトを作成します doc = Document() # サンプルの Word ファイルを読み込みます doc.LoadFromFile('Sample.docx') # 検索する文字列を指定します stringToFind = '抗酸化作用' # 文書内で指定した文字列を検索します finds = doc.FindAllString(stringToFind, False, True) specificText = finds[0] # 検索した文字列が含まれる段落を取得します paragraph = specificText.GetAsOneRange().OwnerParagraph # 段落内での文字列のインデックスを取得します index = paragraph.ChildObjects.IndexOf(specificText.GetAsOneRange()) # ブックマークの開始を作成します start = paragraph.AppendBookmarkStart("ブックマーク 2") # 指定したインデックスの位置にブックマークの開始を挿入します paragraph.ChildObjects.Insert(index, start) # ブックマークの終了を作成します end = paragraph.AppendBookmarkEnd("ブックマーク 2") # 検索した文字列の末尾にブックマークの終了を挿入します paragraph.ChildObjects.Insert(index + 2, end) # 文書を別のファイルとして保存します doc.SaveToFile("output/テキストにブックマークを挿入.docx") doc.Dispose() 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。