none
C++/CLI イメージ拡大時にピクセルずれ RRS feed

  • 質問

  • System::Windows::Forms::PictureBox 上でのイメージ拡大時の補間モードについてお問い合わせいたします。

    今回イメージを単純に拡大するため、
    補間モード ( System::Drawing::Drawing2D::InterpolationMode::NearestNeighbor
    を用いてイメージを描画したところ、作成されたイメージはピクセルが左上に半ピクセルずれて表示されていました。
    つまり上辺と左辺のピクセルは半分のサイズに欠けており、下辺と右辺のピクセルは左上に半ピクセルずれて半ピクセル分の空白が発生しています。

    単純にイメージを拡大するためには、ピクセル数を増やすしか方法がないのでしょうか。

    以上、よろしくお願いいたします。

    2010年9月9日 9:44

回答

すべての返信

  • PixelOffsetMode プロパティで変更可能だったと思います。
    • 回答としてマーク KDou 2010年9月10日 0:27
    2010年9月9日 9:53
  • Hongliang 様

    いつも助けていただき、ありがとうございます。

    System::Drawing::Drawing2D::PixelOffsetMode::Half
    を設定することで解決できました。

    追伸:
    System::Drawing::Drawing2D::PixelOffsetMode::None
    を設定しても解決できないあたりに感覚の相違を感じますね。

    2010年9月10日 0:38