这是我的 aspx 代码:
<asp:FileUpload ID="FileUpload2" runat="server" Width="500px" />
<asp:Button ID="btnUploadImg" runat="server" onclick="btnNahrajObrazek_Click" Text="Nahrát obrázek" Height="35px" Width="150px" />
这是我背后的代码:
protected void btnUploadImg_Click(object sender, EventArgs e)
{
string input = Request.Url.AbsoluteUri;
string output = input.Substring(input.IndexOf('=') + 1);
string fileName = Path.GetFileName(FileUpload2.PostedFile.FileName);
int width = 800;
int height = 600;
Stream stream = FileUpload2.PostedFile.InputStream;
Bitmap image = new Bitmap(stream);
Bitmap target = new Bitmap(width, height);
Graphics graphic = Graphics.FromImage(target);
graphic.DrawImage(image, 0, 0, width, height);
target.Save(Server.MapPath("~/Uploads/" + output + "/") + fileName);
}
我想保持正在上传的图像的纵横比,所以我只需要设置宽度或设置宽度,如 100% 和高度 400 或类似的东西?但是不知道怎么做。
如果这是不可能的,图像裁剪就足够了,但我想先更好。
提前致谢!