2

スキャンした tiff 画像を一部の SSRS レポートに埋め込むことができるようにする必要があります。

VS2005 でレポートをデザインし、イメージ コントロールを追加すると、ビルド時に tiff イメージが完全に表示されます。警告が表示されます:

Warning 2 [rsInvalidMIMEType] The value of the MIMEType property for the image ‘image1’ is “image/tiff”, which is not a valid MIMEType. c:\SSRSStuff\TestReport.rdl 0 0

画像の代わりに小さな赤い x が表示されます。

誰かがこの問題を克服しましたか?

4

3 に答える 3

3

IIS 経由で画像ファイルを配信すると仮定すると、ASP.NET ページを使用して、画像形式と MIME タイプを使用できるものに変更します。

Response.ContentType = "image/png";
Response.Clear();
using (Bitmap bmp = new Bitmap(tifFilepath))
  bmp.Save(Response.OutputStream, ImageFormat.Png);
Response.End();
于 2008-09-25T01:19:07.140 に答える
2

SSRSレポートにTIFF画像を表示する方法について解決策を探していましたが、何も見つかりませんでした。SSRSはTIFFをサポートしているため、TIFFをサポートされている形式の1つに変換するとうまくいくと思いました。そして、それはしました。このような同様の実装があるかどうかはわかりませんが、他の人にもメリットがあるように投稿しているだけです. これは、データベースに保存された TIFF 画像がある場合にのみ適用されることに注意してください。

Public Shared Function ToImage(ByVal imageBytes As Byte()) As Byte()
    Dim ms As System.IO.MemoryStream = New System.IO.MemoryStream(imageBytes)
    Dim os As System.IO.MemoryStream = New System.IO.MemoryStream()
    Dim img As System.Drawing.Image = System.Drawing.Image.FromStream(ms)

    img.Save(os, System.Drawing.Imaging.ImageFormat.Jpeg)

    Return os.ToArray()
End Function

コードの使用方法は次のとおりです。 1. [レポート プロパティ] で [参照] を選択し、[追加] をクリックして参照します System.Drawing, Version=2.0.0.0 2. [コード プロパティ] を選択し、上記の関数をコピーして貼り付けます 3. [OK] をクリックします 4. ドロップしますツールボックスからの画像コントロール 4.1. 画像を右クリックし、[画像のプロパティ 4.2] を選択します。イメージ ソースをデータベース 4.3 に設定します。[このフィールドを使用] で式をクリックし、以下のコードを貼り付けます =Code.ToImage(Fields!FormImage.Value)
4.4. 適切な Mime を JPEG に設定します

よろしく、 フルバート

于 2010-04-27T13:14:35.867 に答える
0

Peterに感謝します。あなたのコードはコンパイルされませんでしたが、アイデアは健全でした。

これが私のために働く私の試みです。

protected void Page_Load(object sender, EventArgs e)
{
    Response.ContentType = "image/jpeg";
    Response.Clear();        
    Bitmap bmp = new Bitmap(tifFileLocation);
    bmp.Save(Response.OutputStream, ImageFormat.Jpeg);
    Response.End();

}
于 2008-09-25T12:02:23.710 に答える