Top > OOobbs2 > 150

OOobbs2/150 Edit

  • サマリ: Writerで改ページ その2 OOobbs2/146関連
  • 環境: Writer
  • 状態: 未解決
  • 投稿者: セルダン?
  • 投稿日: 2008-10-27 (月) 14:23:33

質問 Edit

連続の質問で申し訳ありません。

OOobbs2/146で回答ありがとうございました。

しかし、この方法で改頁を入れると、Writerの「挿入」-「区切りの挿入」-「改頁」で実行した方法と違いが生じてしまいます。

違いは以下の違いになります。

・マクロを実行した直後、下矢印キーでカーソルが動かない  (一度上矢印キーで上に移動してからなら、カーソルが移動可能になる)

・改行キーで改行を挿入しても改頁されてしまう。

上記のようなことから、以下のような方法を取りました。

dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Kind"
args1(0).Value = 3
args1(1).Name = "TemplateName"
args1(1).Value = ""
args1(2).Name = "PageNumber"
args1(2).Value = 0
dispatcher.executeDispatch(document, ".uno:InsertBreak", "", 0, args1())

しかしながらこの方法にも問題があり、 改頁、CalcのOleペースト、改頁、CalcのOleペーストを繰り返していると改頁が入らないタイミングが発生してしまいます。

そこで質問ですが、

1.insertControlCharacterで実際のWriterでの   「挿入」-「区切りの挿入」-「改頁」   と同じような改頁をすることは出来ませんか?

2.確実に改頁を入れる方法は有りませんか?   (改頁が入らないタイミングをなくす方法は有りませんか?)

回答 Edit

  • メニューから実行するのと同じような改ページですが、メニューから行った場合 BreakType を PAGE_BEFORE が設定されます。確実に改ページを入れる方法ですが、dispatch と insertControlCharacter メソッドは同期メソッドなので順に行えば改ページが入るはずです。ペーストはビューカーソルで行っていると思いますが、カーソルを移動させているでしょうか? -- はにゃ? 2008-10-28 (火) 02:44:53
  • 回答有難う御座います。しかしながらPAGE_BEFORE にすると1行目に文字列を入力し改行も何も無い状態でマクロを実行しても改頁されません?? -- セルダン 2008-10-28 (火) 09:24:42
  • 改頁が入らない場合があるのは、ペーストはdispatchではなく、XTransferableで改頁をdispatchにした場合です。 -- セルダン 2008-10-28 (火) 09:27:42
  • >しかしながらPAGE_BEFORE にすると1行目に文字列を入力し改行も何も無い状態でマクロを実行しても改頁されません??

この場合、BreakType の設定は段落に相当するテキスト範囲に設定されます。改ページをはさんで同じ段落は続きませんので段落区切りを入れてから後のほうの段落に PAGE_BEFORE を設定すると前の段落と PAGE_BEFORE を設定した段落の間で次のページに移ります。

  • はにゃ? 2008-10-28 (火) 12:50:39

感想,コメント,メモ Edit



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