none
Deleted RRS feed

回答

  • イメージしやすくするために、面倒くさいパターンを書いておきます。

    このようなケースを加味するのであれば、すべての行のその列における文字列幅を計算し、縦方向の罫線の位置を決める必要があります。
    また、文字列幅が極端に長い場合、折り返しを加味する必要があるようですので、1本の縦罫線というよりは、折り返しを考慮した罫線として、行ごとに線が途切れるようなものを描かないといけません。

    これらの実現を目指すとなると、数行足す、変えるでは足りないということ、そういった「依頼」に近い内容になっていることをご理解いただきたいということが、直前の投稿の主旨です。

    2016年5月30日 21:08
    モデレータ

すべての返信

  • 先に苦言を。フォーラムはアドバイスをもらう場所だとは思いますが、「どこをどのように変更」という具体的指示を求める場所ではないと、私個人は考えています。

    さて、カンマをタブへは、文字列置換で済みませんか? string 型の Replace で何とでもなるでしょう。文字列リテラルとしてのタブは \t です。

    罫線はどんなものをイメージされていますか?
    横方向にだけ引く罫線ならまだしも、縦方向の罫線は一言二言で片付く話ではありません。
    なぜかというと、描くべき文字列の幅や高さをきちんと計算し、行ごとの左右の揺れも加味して、DrawLine で線を引かなければなりません。左右の揺れを考慮する必要があるなら、DrawString も一行まとめて描くのではなく、フィールドごとに座標を調整して描かなければなりません。

    そういったアルゴリズムが必要となることは理解されていますか?
    それとも、ここに書かれていない、前提とできる仕様で、横方向に引く罫線のみであるとか、文字列幅の揺れがないとか、簡潔に済む条件があるのでしょうか?
    (それも含めて推測して、答えをいきなり示せというのであれば…、「質問」ではなく「コードを書いてください」になってしまうので…、どこまで理解されているかを確かめたかったという気持ちもあります。プロポーショナルフォントを選んでいる時点でも苦労は多そうですけれども…)

    2016年5月30日 14:13
    モデレータ
  • イメージしやすくするために、面倒くさいパターンを書いておきます。

    このようなケースを加味するのであれば、すべての行のその列における文字列幅を計算し、縦方向の罫線の位置を決める必要があります。
    また、文字列幅が極端に長い場合、折り返しを加味する必要があるようですので、1本の縦罫線というよりは、折り返しを考慮した罫線として、行ごとに線が途切れるようなものを描かないといけません。

    これらの実現を目指すとなると、数行足す、変えるでは足りないということ、そういった「依頼」に近い内容になっていることをご理解いただきたいということが、直前の投稿の主旨です。

    2016年5月30日 21:08
    モデレータ
  • Deleted
    2016年5月31日 6:43