2012-02-29 19 views
0

私は、Webからイメージを取得し、FixedDocumentページに追加しています。私が引っ張っている画像は、1200px X 1500pxの寸法サイズを持っています。しかし、FixedDocumentでは画像が小さなサムネイルとして表示されます(画面のグラブを参照してください)。FixedDocumentのページサイズ

以下にコードスニペットを示します。

FixedDocument fd = new FixedDocument(); 

BitmapImage bi = new BitmapImage(); 
bi.BeginInit(); 
bi.UriSource = new Uri(@"http://www.example.com/image.jpg", UriKind.Absolute); 
bi.EndInit(); 
Image i = new Image(); 
i.Source = bi; 

FixedPage fixedPage = new FixedPage(); 
fixedPage.Children.Add(i);     

PageContent pageContent = new PageContent(); 
(pageContent as IAddChild).AddChild(fixedPage); 
fd.Pages.Add(pageContent); 

画像は、サムネイルではなく寸法に従って表示する必要があります。サイズに応じて画像を表示するために何をする必要があるか教えてください。

多くのありがとうございます。

enter image description here

+0

あなたのコードは[this](http://upload.wikimedia.org/wikipedia/commons/c/cd/RathausBremen-01-2.jpg)の大きな画像でうまく動作します。 [BitmapSource.DownloadCompleted](http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapsource.downloadcompleted.aspx)イベントハンドラでイメージのサイズを確認し、ifあなたはあなたが望むものを手に入れました。 – Clemens

+0

@クレメンス:ありがとう。あなたのコメントを答えに入れてください、私はそれを受け入れます。 DownloadCompletedイベントハンドラの高さと幅を調べると、問題が明らかになりました。高さと幅はそれぞれ150ピクセル×225ピクセルで表示されていました。それはなぜでしょうか?あなたのコメントにあなたのリンクからのイメージは、完璧なサイズに開く、それはサーバーの問題ですか? –

答えて

2

コードはthisの大きな画像でうまく動作します。

BitmapSource.DownloadCompletedイベントハンドラでイメージサイズを確認して、必要なものがあるかどうかを確認できます。

しかし、私は画像サイズがあなたが予想しているものと異なる理由は何も説明しません。私の知る限り、JPEG画像ファイルには、サムネイル画像が含まれているため、高速プレビューが可能です。おそらくあなたのサーバーはそのようなサムネイルを配信していますか?

+0

+1の素敵な画像:) – tobsen

0

あなたはViewBoxをを追加し、その中に画像を置くことができます。 ViewBoxのサイズは、文書のサイズから必要な余白を差し引いたものにする必要があります

0

試行再サイズべきiを画像ピクセルに応じ

i.Height = bi.PixelHeight; 
i.Width = bi.PixelWidth; 

を設定します。

関連する問題