首页 > 解决方案 > 空图像文我尝试复制剪贴板

问题描述

我已经开始构建我的第一个软件,我尝试将面板中的 e.graphic 绘图复制到剪贴板,但是我尝试复制的图像是空的 如何将我的图形作为来自绘画事件的 png 图像复制到剪贴板

这是我的代码。

Dim fileName = OpenFileDialog1.FileName

        Dim image1 = Image.FromFile(fileName, True)

        Dim texture As New TextureBrush(image1)
        texture.WrapMode = Drawing2D.WrapMode.Tile

        Dim font As New Font("Arial", 8, FontStyle.Bold)

        e.Graphics.DrawString(textoutline, FontDialog1.Font, texture, TextBox2.Text, TextBox3.Text)

我尝试使用此代码复制到剪贴板

Dim graphicsImage = New Bitmap(Panel1.Width, Panel1.Height, System.Drawing.Imaging.PixelFormat.Format24bppRgb)
    Clipboard.SetImage(graphicsImage)

但我需要复制为 png 格式我怎样才能保存它

标签: vb.net

解决方案


据我所知,存储在内存中的图像是位图。为什么需要将它作为 PNG 放在剪贴板上?如果只是为了将其保存到文件,那么您可以使用您在此行中定义的已定义图像对象..

Dim image1 = Image.FromFile(fileName, True)

无需将其存储为 PNG,因为您可以将其保存为任何支持的格式.. 像这样

    Image1.Save("filename", System.Drawing.Imaging.ImageFormat.Png)

但是,如果您想将图像作为电子邮件附件发送,您可以执行类似于此 Stack answer上的 answer 的操作。它在 c# 中,但你明白了。


推荐阅读