如何将图片从图片框保存为jpg

Posted

技术标签:

【中文标题】如何将图片从图片框保存为jpg【英文标题】:How to save an image from a picturebox to jpg 【发布时间】:2013-05-10 18:40:06 【问题描述】:

我已经能够将文件另存为 .jpeg,但无法加载图像,有人有建议吗?

    Private Sub Btnconfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnconfirm.Click

        MsgBox("A receipt will now be saved to your files", vbOKOnly, "Thank you for your purchase")

        SaveFileDialog1.ShowDialog()
        MsgBox("Thank you for choosing Tiny Theatre, have a nice day.", vbOKOnly, "Thank you")
        Me.Close()
    End Sub

    Private Sub SaveFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles SaveFileDialog1.FileOk
        Dim FileToSaveAs As String = SaveFileDialog1.FileName

        Dim objwriter As New System.IO.StreamWriter(FileToSaveAs)
        objwriter.Write(PictureBox1)
        objwriter.Close()
    End Sub

【问题讨论】:

图像保存后,它会出现在我保存它的任何位置(应该如此),但图像无法打开,我做错了什么? PictureBox1是什么类型的控件?您是否在十六进制编辑器中查看过生成文件的内容?如果您将扩展名更改为其他内容,例如.png.gif.bmp 等,图像是否会打开? 对不起,我不确定你的意思 如果您不确定十六进制编辑器,没关系。您是否尝试过在记事本中打开文件?大部分文件可能看起来像垃圾,但前几个字符中的某处应该是JFIF 我也可以说你对你的一些 cmets 很模糊吗? 图片打不开 - 你是如何打开它的,发生了什么?您看到了哪些错误消息(如果有)? 它不会保存文件句号 - 这是什么意思?代码似乎运行正常,但文件没有出现在 Windows 资源管理器中?尝试保存文件时报告错误消息?含糊不清和遗漏细节会让我们很难为您提供帮助。 【参考方案1】:

没试过,但是这样可以吗?

Private Sub SaveFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles SaveFileDialog1.FileOk
    Dim FileToSaveAs As String = System.IO.Path.Combine(My.Computer.FileSystem.SpecialDirectories.Temp, SaveFileDialog1.FileName)
    PictureBox1.Image.Save(FileToSaveAs, System.Drawing.Imaging.ImageFormat.Jpeg)
End Sub

如果您需要设置编码器参数(如 jpeg 压缩),则需要重载 Save 方法。见http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.image.aspx和http://msdn.microsoft.com/en-us/library/system.drawing.image.aspx

提供的代码将图片框控件以序列化形式保存到扩展名为 jpeg 的文件中。将 text.txt 文件重命名为 text.jpg 不会使其成为有效的 jpg 图像。这是一样的。

【讨论】:

我试了一下,它不会完全停止保存文件。 PictureBox1是什么类型的控件?它是一个 PictureBox 控件吗? 这可能是因为 FileToSaveAs 仅包含文件名而不包含完整路径。我编辑了代码,以便将文件保存在临时目录中。 我必须注意,这基本上是用图片框对一些文本框和组合框进行截图 你能展示截图是如何制作的代码吗?您可以编辑您的问题并在那里添加代码。

以上是关于如何将图片从图片框保存为jpg的主要内容,如果未能解决你的问题,请参考以下文章

请问如何把图片保存为JPG和BMP

如何将jpg格式转换成png格式?

pdf怎么转换成jpg图片格式

如何将图片保存为BMP格式?

急求:如何将 WPF ChartControl生成的图片保存到本地为jpg格式

svg格式的图片怎么转换成PNG的?