実行時に単純な tiff イメージを生成しようとしています。この画像は、白い背景とリモート サーバーからダウンロードした画像で構成されています。
その目標を達成するために私が書いたコードは次のとおりです。
const string url = "http://localhost/barcode.gif";
var size = new Size(794, 1123);
var drawingVisual = new DrawingVisual();
using (var drawingContext = drawingVisual.RenderOpen())
{
drawingContext.DrawRectangle(new SolidColorBrush(Colors.White), null, new Rect(size));
var image = new BitmapImage(new Uri(url));
drawingContext.DrawImage(image, new Rect(0, 0, 180, 120));
}
var targetBitmap = new RenderTargetBitmap((int)size.Width, (int)size.Height, 96, 96, PixelFormats.Default);
targetBitmap.Render(drawingVisual);
var convertedBitmap = new FormatConvertedBitmap(targetBitmap, PixelFormats.BlackWhite, null, 0);
var encoder = new TiffBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(convertedBitmap));
using (var fs = new FileStream("out.tif", FileMode.Create))
{
encoder.Save(fs);
}
コードが機能し、「out.tif」ファイルが生成されます。ただし、出力ファイルの背景は白いだけで、リモート サーバーから画像を受信していません。
何が問題になる可能性がありますか? 次のコードをさまざまな方法で試しましたが、毎回うまくいきません。