SunAOJLXY 2013-09-23 06:41 采纳率: 0%
浏览 1223

求救!ASP.Net如何打印指定的图片呀?

我想用GDI做一张图在网页上,但是不知道该怎么用打印机打印出来,因为业务要求,必须是要在网页上做···

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-19 22:50
    关注

    该回答引用ChatGPT

    在ASP.NET中,您可以使用GDI+绘制图片,并将其呈现在网页上。如果您想打印图片,您可以使用JavaScript来调用浏览器的打印功能。


    以下是一些基本的步骤来在ASP.NET中绘制并打印图片:

    • 创建一个画布并使用GDI+在画布上绘制图片。您可以使用System.Drawing命名空间中的类来创建画布和绘制图像,例如Bitmap、Graphics、Pen和Brush。
    • 将绘制的图像呈现在网页上。您可以使用System.Drawing.Imaging命名空间中的类将绘制的图像转换为Web格式,例如JPEG或PNG格式,然后使用System.Web.UI.WebControls.Image控件将其呈现在网页上。
    • 在页面上添加一个打印按钮,并使用JavaScript来处理点击事件。在JavaScript代码中,您可以使用window.print()方法来调用浏览器的打印功能,以打印当前页面上的内容,包括绘制的图像。

    下面是一个示例代码,演示了如何在ASP.NET中绘制并打印一张图片:

    protected void Page_Load(object sender, EventArgs e)
    {
        // 创建画布并绘制图像
        Bitmap bitmap = new Bitmap(400, 400);
        Graphics graphics = Graphics.FromImage(bitmap);
        Pen pen = new Pen(Color.Red, 5);
        graphics.DrawRectangle(pen, 50, 50, 300, 300);
    
        // 将绘制的图像转换为Web格式并呈现在网页上
        using (MemoryStream stream = new MemoryStream())
        {
            bitmap.Save(stream, ImageFormat.Png);
            byte[] bytes = stream.ToArray();
            string base64 = Convert.ToBase64String(bytes);
            Image1.ImageUrl = "data:image/png;base64," + base64;
        }
    }
    
    protected void PrintButton_Click(object sender, EventArgs e)
    {
        // 调用浏览器的打印功能
        Page.ClientScript.RegisterStartupScript(this.GetType(), "PrintOperation", "window.print();", true);
    }
    

    在这个示例中,我们创建了一个400x400像素的画布,并在画布上绘制了一个红色矩形。然后,我们将绘制的图像转换为Base64编码的PNG格式,并使用Image1控件将其呈现在网页上。最后,我们在页面上添加了一个名为PrintButton的按钮,并将其点击事件绑定到PrintButton_Click方法。在PrintButton_Click方法中,我们使用JavaScript调用浏览器的打印功能,以打印当前页面上的内容,包括绘制的图像。

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序