繁体   English   中英

如何旋转由ashx处理程序检索的图像

[英]How to rotate an image which is retrieved by ashx handler

我有一个从MySql返回的图像。 其数据类型是Mysql中的图像。 我用ashx处理图像。 下面的代码显示了我的ashx文件。

string imageID = context.Request.QueryString["imageID"];
using(SqlConnection objConnection = new SqlConnection(portalConnectionString))
{
    objConnection.Open();
    SqlCommand fetchTaskImageCMD = new SqlCommand("fetch_task_image", objConnection);
    fetchTaskImageCMD.CommandType = CommandType.StoredProcedure;
    fetchTaskImageCMD.Parameters.Add("@IMAGE_ID", SqlDbType.VarChar).Value = imageID;

    try
    {
        SqlDataReader dr = fetchTaskImageCMD.ExecuteReader();
        dr.Read();

        byte[] bufferImg = (Byte[])dr[0];

        context.Response.OutputStream.Write(bufferImg, 0, bufferImg.Length);
    }

    catch
    {
        System.Diagnostics.Debug.WriteLine("Image Handler Failed : /DesktopModules/ImageHandler.ashx");
    }

    objConnection.Close();
}

下面的代码显示了我如何从C#类背后的asp.net代码调用ashx文件。

protected void Page_Load(object sender, System.EventArgs e)
{
   FetchedImage.ImageUrl = "/DesktopModules/ImageHandler.ashx?imageType=" + imageType + "&imageID=" + imageID;
}

我的问题是我将如何旋转该图像并将其保存回数据库,然后。

任何意见将不胜感激。

如果要旋转它并将其保存回数据库,请在服务器上使用GDI +,而不是将其流回客户端。

可以从字节数组实例化System.Drawing.Image,然后可以使用GDI +方法旋转图像,从旋转的图像中提取字节数组并保存。

让我知道是否需要示例,但是使用System.Drawing.Image可以帮助您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM