using
System.IO;
using
System.Drawing.Imaging;
private
void
Button1_ServerClick(
object
sender, System.EventArgs e)
{
Graphics g=
null
;
System.Drawing.Image upimage=
null
;
System.Drawing.Image thumimg=
null
;
System.Drawing.Image simage=
null
;
Bitmap outputfile=
null
;
try
{
string
extension = Path.GetExtension(File1.PostedFile.FileName).ToUpper();
string
filename = DateTime.Now.ToString(
"yyyyMMddhhmmss"
);
string
smallpath = Server.MapPath(
"."
)+
"/smallimg/"
;
string
bigpath = Server.MapPath(
"."
)+
"/bigimg/"
;
int
width,height,newwidth,newheight;
System.Drawing.Image.GetThumbnailImageAbort callb =
new
System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
if
(!Directory.Exists(smallpath))
Directory.CreateDirectory(smallpath);
if
(!Directory.Exists(bigpath))
Directory.CreateDirectory(bigpath);
Stream upimgfile = File1.PostedFile.InputStream;
string
simagefile = Server.MapPath(
"a8logo.jpg"
);
simage=System.Drawing.Image.FromFile(simagefile);
upimage= System.Drawing.Image.FromStream(upimgfile);
width = upimage.Width;
height = upimage.Height;
if
(width>height)
{
newwidth=200;
newheight =(
int
)((
double
)height/(
double
)width * (
double
)newwidth);
}
else
{
newheight=200;
newwidth=(
int
)((
double
)width/(
double
)height * (
double
)newheight);
}
thumimg = upimage.GetThumbnailImage(newwidth,newheight,callb,IntPtr.Zero);
outputfile=
new
Bitmap(upimage);
g=Graphics.FromImage(outputfile);
g.DrawImage(simage,
new
Rectangle(upimage.Width-simage.Width,upimage.Height-simage.Height,upimage.Width,upimage.Height),0,0,upimage.Width,upimage.Height,GraphicsUnit.Pixel);
string
newpath = bigpath + filename + extension;
string
thumpath = smallpath + filename + extension;
outputfile.Save(newpath);
thumimg.Save(thumpath);
outputfile.Dispose();
}
catch
(Exception ex)
{
throw
ex;
}
finally
{
if
(g!=
null
)
g.Dispose();
if
(thumimg!=
null
)
thumimg.Dispose();
if
(upimage!=
null
)
upimage.Dispose();
if
(simage!=
null
)
simage.Dispose();
}
}
public
bool
ThumbnailCallback()
{
return
false
;
}