> jun meguro<[email protected]>  wrote:
>> 再度課題をまとめてみます。
>> ■■「ツール>オプション>Writer>全般>〜〜正方形のマスを使用する」がOFFになっている場合の挙動
>> 1、ページの書式で行数文字数を固定にした場合、指定よりも少ない行数しかページに収まらない。
>> ※行の高さを割り出すための、ページ内の上下幅の取得が上手く行ってない?
>> 2、ふりがなが上の行とかぶってしまう。
>> 3、上記の問題はODFの規格まで影響する話なのか?
>> 4、目黒には英語でこれを説明できない

On 1/2/2012 11:42 PM, AWASHIRO Ikuya wrote:
> 私には単純に計算ミスをしているようにしか思えないんですが、どうなんでしょう??

ダイアログ内に、関係する四つの数値フィールドがあります。
・ページ単位の行数  (Lines per page: 1 ページあたりの行数)
・行単位の文字数   (Characters per line: 1 行あたりの文字数)
・1文字の最大サイズ (Max. base text size)
・ルビ文字の最大サイズ(Max. Ruby text size)

加えて、用紙サイズ(縦x横)から上下左右のマージンを引いて求まる、
描画できる領域の縦と横の長さがあります。

これら、六つの数値を使います。

ダイアログ上の四つの数値フィールドは、フィールドの値が変更されると、
フィールド毎のイベントが発生し、それぞれのイベント処理が発動します。

それらの処理では、自身を含めた上記七つの数値から、あらかじめ定められた
条件判定及び数式を用いて、残る3つのフィールドの数値を算出し、修正が
必要となるフィールドについて、算出結果を設定します。
または、自身の数値が上限下限を超えたので、自身の値を元に戻します。

というような、振る舞いになっています。

上記における
「どの値が変化すると、どの値を更新するか」という関連づけ、および、
「上限下限判定などの条件分岐含んだ計算式」が、現状の実装では、
日本語の要求仕様に沿っていない。

というような問題かと思います。
「計算ミス」、あたらからずとうからず。。。

基本的に、
「1ページあたりの行数」および「1行あたりの文字数」が主。
   ↓
「1文字の最大サイズ」および「ルビ文字の最大サイズ」が従。

というような振る舞いへ、実装を修正すべきなのかと。。。

実装例が、これ↓ です。
http://wiki.services.openoffice.org/wiki/Relations_among_lines_and_characters

上記wikiページ内に記載したパッチでは、
SwTextGridPage::ほげほげChangeHandle()
という複数のメソッドをそれぞれ修正しています。

※RedFlag2000 チームが同ダイアログを変更しまくる前に書いたコードです。
現バージョンに対して、同パッチは、単純には、あたらないかとは思います。

Tora

-- 
Unsubscribe instructions: E-mail to [email protected]
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/ja/discuss/
All messages sent to this list will be publicly archived and cannot be deleted

メールによる返信