2009-07-04 18 views

答えて

4

「通常の」方法では、希望のサイズの新しいBitmapを作成し、Graphicsを作成して、それに古いイメージをGraphics.DrawImage(Point, Rectangle)で描画します。 Compact Frameworkで使用できないコールはありますか?

編集:ここではデスクトップ上で動作します短いが、完全なアプリです:

using System; 
using System.Drawing; 

class Test 
{ 
    static void Main() 
    { 
     using (Image original = Image.FromFile("original.jpg")) 
     using (Bitmap bigger = new Bitmap(original.Width * 2, 
            original.Height * 2, 
            original.PixelFormat)) 
     using (Graphics g = Graphics.FromImage(bigger)) 
     { 
      g.DrawImage(original, new Rectangle(Point.Empty, bigger.Size)); 
      bigger.Save("bigger.jpg"); 
     } 
    } 
} 

、この作品にもかかわらず、それは上で動作する場合、うまく補間などの面でそれを行うためのより良い方法があるかもしれませんコンパクトなフレームワークは、少なくともあなたの出発点を与えるだろう。

+0

コンパクトフレームワークで利用できるかどうかを調べるために私を見てください=) – colithium

+0

私は試しましたが、MSDNはそれほど厳しいものではありませんでした...少なくとも私が使っていたオフラインバージョン。 –

+0

私はInterpolationModeのようなBitmapを構築し、それを拡大するように頼むときに、どのInterpolationModeを使うのだろうかと思います。ここでも、MSDNは明確ではありません。 – colithium

1

CFは、フルフレームワークのような標準のグラフィックスオブジェクトとビットマップオブジェクトにアクセスできます。

  • が希望のサイズ
  • アソシエイト・グラフィックスは、古いイメージと新しいビットマップ
  • コールg.DrawImage()と幅を指定するための過負荷を持つオブジェクトの新しいビットマップを作成したビットマップに元の画像を取得します .NET Compact Frameworkの01:

バージョン物事の/高さ

  • 処分サポート対象:3.5,2.0,1.0

  • 関連する問題