EU4dll icon indicating copy to clipboard operation
EU4dll copied to clipboard

Extra space in text box

Open oooFUNooo opened this issue 5 years ago • 20 comments

問題: イベントダイアログやスタートアップ画面で、文章のあとに余分な空白ができる。

再現性: 常に

再現手順:

  1. 1444年の適当な大国(ポルトガル、ポーランド、ハンガリーなど)で開始し、歴史イベントを発生させる。
  2. 英語環境と日本語環境のイベントダイアログを比較する。

原因: 不明 おそらくエスケープシーケンス絡みで文字幅の計算に失敗しているものと推測される。 症状は Issue #46 と類似している。

解決策: 不明

参考画像:

英語環境(正常) dialog_normal

日本語環境(異常) dialog_issue

oooFUNooo avatar Mar 10 '19 09:03 oooFUNooo

この部分とも関係があるかもしれません image

matanki-saito avatar Mar 10 '19 10:03 matanki-saito

この余白はおそらく処理そのものよりもline-heightと関係があります。

matanki-saito avatar Apr 16 '19 03:04 matanki-saito

 string_start_provence:0 "a\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\n"

のようにすると、想定通りになる。 image

matanki-saito avatar Oct 20 '19 14:10 matanki-saito

マルチバイト、も特に問題ない image

matanki-saito avatar Oct 20 '19 14:10 matanki-saito

こういう時は image 下の方に自動改行送りになったものが加算される。 image

matanki-saito avatar Oct 20 '19 15:10 matanki-saito

つまり、これはline-heightの問題ではなく、ワードラップの問題なのですね。

oooFUNooo avatar Oct 21 '19 00:10 oooFUNooo

超える部分が、だと問題ない?下記のような場合は空白は生じなかった。 image

matanki-saito avatar Oct 26 '19 10:10 matanki-saito

フォントはvic_22(SourceHanSelif22) 年

char id=24180 x=680   y=1264  width=17    height=16    xoffset=-1    yoffset=2     xadvance=15    page=0 

char id=12289 x=317   y=1397  width=6     height=7     xoffset=-1    yoffset=12    xadvance=15    page=0 

matanki-saito avatar Oct 26 '19 10:10 matanki-saito

両方とも同じように見える...

matanki-saito avatar Oct 26 '19 10:10 matanki-saito

最初に少し加工すると空白は正常になる image

matanki-saito avatar Oct 26 '19 11:10 matanki-saito

これは、空白が1つ余計にできる image

matanki-saito avatar Oct 26 '19 11:10 matanki-saito

t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0

はOK。一文字足すと余白ができる。 byte数: 468 文字数:468/3 = 156

image

matanki-saito avatar Oct 26 '19 12:10 matanki-saito

リミットがあるのはbyte数なのか文字数なのか、幅の総計なのか…

matanki-saito avatar Oct 26 '19 12:10 matanki-saito

これは大丈夫。1文字増えると余白ができる

"t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0t^0aaaaaaaaaaaaaaaaaaaa\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na\na"

byte数:446 文字数:142+20 = 162

image

matanki-saito avatar Oct 26 '19 13:10 matanki-saito

幅の総計でもない気がする image

matanki-saito avatar Oct 26 '19 13:10 matanki-saito

わからん

matanki-saito avatar Oct 26 '19 13:10 matanki-saito

年のフォントの幅をいじったりもしたが問題ないので、character数の問題か image

char id=24180 x=680   y=1264  width=32    height=16    xoffset=-1    yoffset=2     xadvance=30    page=0 

matanki-saito avatar Oct 27 '19 05:10 matanki-saito

む、文字数を増やしても送り幅が30のときは問題が発生しないがそこから15に戻すと問題が発生するな...

matanki-saito avatar Oct 27 '19 06:10 matanki-saito

わからん彡(゚)(゚)

matanki-saito avatar Oct 27 '19 07:10 matanki-saito

もともとこの改行システムは、長すぎる英文を強制的に改行するための処理をマルチバイト文字列の場合は毎回その処理を実行することで実現している。もともとの処理では2行になるためこの部分の改行がでているのかもしれない。 image

matanki-saito avatar Oct 27 '19 11:10 matanki-saito

できた!

image

matanki-saito avatar Apr 23 '23 01:04 matanki-saito

表題の方はウィンドウが画像なので調整は難しいと思います。

matanki-saito avatar Apr 23 '23 01:04 matanki-saito