【问题标题】:I would like to rotate images on the web using aspx我想使用 aspx 在网络上旋转图像
【发布时间】:2012-03-30 02:03:44
【问题描述】:

我正在编写一个应用程序(使用 Web 表单的 .NET 4.0)。我喜欢做的是让用户能够查看他们存储在目录中的图像,并能够对他们的图片进行更改(缩放、旋转、裁剪等)。我可以在winforms中进行缩放、旋转和裁剪,但我不知道如何在不保存的情况下在aspx中显示它。

想象一下图像 A 显示在图像控件中。用户点击它进行缩放。我将它传递给一个方法。它旋转。但是我如何重新显示它旋转?我必须保存图像然后显示它吗?也许我对这一切都错了。有人有示例代码来完成此操作吗?在 aspx 上显示图像并旋转并显示旋转后的图像的示例代码。

谢谢

【问题讨论】:

  • 我尝试了在表单上放置 Web 控件图像的基本方法。但我对 aspx 不是那么强,尤其是图像。我只是寻求帮助

标签: c# asp.net image


【解决方案1】:

试试这个:

protected void Button1_Click(object sender, EventArgs e)
{
    // get the full path of image url
    string path = Server.MapPath(Image1.ImageUrl) ;

    // creating image from the image url
    System.Drawing.Image i = System.Drawing.Image.FromFile(path);

    // rotate Image 90' Degree
    i.RotateFlip(RotateFlipType.Rotate90FlipXY);

    // save it to its actual path
    i.Save(path);

    // release Image File
    i.Dispose();

    // Set Image Control Attribute property to new image(but its old path)
    Image1.Attributes.Add("ImageUrl", path);
}

【讨论】:

  • 我必须保存到原始图像吗?不能在记忆中吗?换句话说,在他们满意之前,我不想触摸原始图片。
  • 您必须保存它,然后进行您需要的任何更改。如果您不希望用户保存直到他们满意,您可以将其保存在您的文件夹中,如果他们单击应用然后对图像应用旋转,否则从文件夹中删除图像。
  • 我喜欢这个主意。就像根据会话 ID 等创建一个临时文件夹来工作。感谢您的帮助
  • 不客气!是的,您可以创建临时文件夹并转储用户根据会话加载的任何内容,并在用户不需要时尝试删除。
  • Image1为什么不显示新图片?
【解决方案2】:

也许此链接会为您指明正确的方向。 ASP.NET friendly image editor

Win 和 Web 表单是两种完全不同的野兽,在每次更改时都没有将其保存到服务器,您真的希望让客户端处理大部分工作,直到他们点击保存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多