Resource dosyasından resim gösterme

Framework 2.0’da yarattığınız herhangi bir resource dosyanıza herhangi bir dosya eklemek için resgen aracını kullanmanıza gerek yok. Resx dosyanızı Visual Studio ile açmanız ve “Yeni resim ekle” seçeneğini seçmeniz durumunda sizden direkt olarak eklemek istediğiniz resmin yolunu istiyor.

Normal olarak resx dosyanıza attığınız bir dosyayı framework 2.0’da Resources.[ResxDosyasınınİsmi].[Dosyanınİsmi] şeklinde alabilmeniz mümkün.

Mesela Resimler.resx isminde bir dosyanız olduğunu varsayalım ve bu dosyanın içine de Resim.gif isminde bir resim koyduk. Bu resmi almak ve ekrana bastırabilmek için tek yapmamız gereken şudur:

Bitmap bmp = Resources.Resimler.Resim;
bmp.Save ( Response.OutputStream, ImageFormat.Gif );

Diyelim ki Resim.aspx isminde bir dosyanız var ve bu dosya da sizin resource dosyanızdaki resimlerinizi almanıza yarıyor. Bu durum da Resim.aspx dosyanızı çağırırken, bu dosyaya QueryString aracılığı ile hangi resmi istediğinizi belirtmek istemeniz muhtemel. Bu durumda yukarıdaki yöntem işe yaramayacaktır. Çünkü framework 2.0 yukarıdaki kodda parametrik kullanıma izin vermiyor. Bunun yerine aşağıdaki gibi bir yapı kullanabilirsiniz.

Aşağıdaki kodda, resource dosyanızın içinde “ResimBulunamadi” isminde bir resminizin bulunduğunu varsayıyorum.

string resim = Request.QueryString[“Resim”];

if ( resim == null )
resName = “ResimBulunamadi”;

Bitmap bmp
= ( Bitmap )Resources.Images.ResourceManager.GetObject( resim );

if ( bmp == null )
bmp = ( Bitmap )Resources.Images.ResourceManager.GetObject( “ResimBulunamadi” );

bmp.Save( Response.OutputStream , ImageFormat.Gif );

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *