Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在vb.net中保存图像文件?_Vb.net - Fatal编程技术网

如何在vb.net中保存图像文件?

如何在vb.net中保存图像文件?,vb.net,Vb.net,我正在vb.net中创建一个简单的绘图程序,当我试图保存文件时,程序被冻结了,我什么都做不了 这是我使用的代码 Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click SaveFileDialog1.CreatePrompt = True SaveFi

我正在vb.net中创建一个简单的绘图程序,当我试图保存文件时,程序被冻结了,我什么都做不了

这是我使用的代码

Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click
        SaveFileDialog1.CreatePrompt = True
        SaveFileDialog1.DefaultExt = "jpg"
        SaveFileDialog1.Filter = "File Images (*.jpg;*.jpeg;) | *.jpg;*.jpeg; |PNG Images | *.png |GIF Images | *.GIF"
        SaveFileDialog1.InitialDirectory = "F:"

        If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
            FrmCanvas.PictureBox1.Image.Save(SaveFileDialog1.FileName)
        End If
End Sub

我的密码有什么遗漏吗?很抱歉,我是vb.net的新手

您错过了图像的文件格式

 FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Jpeg)
要将图像保存在用户选择的基于过滤器的格式上,如下所示

If SaveFileDialog1.FileName <> "" Then
   ' Saves the Image in the appropriate ImageFormat based upon the
      ' file type selected in the dialog box.
      ' NOTE that the FilterIndex property is one-based.
      Select Case SaveFileDialog1.FilterIndex
         Case 1
            FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Jpeg)

         Case 2
            FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Bmp)

         Case 3
            FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Gif)
       End Select
End If
如果SaveFileDialog1.FileName为“”,则
'将图像保存为基于
'在对话框中选择的文件类型。
'请注意,FilterIndex属性基于一个。
选择Case SaveFileDialog1.FilterIndex
案例1
FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Jpeg)
案例2
FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Bmp)
案例3
FrmCanvas.PictureBox1.Image.Save(savefiledialog1.FileName,System.Drawing.Imaging.ImageFormat.Gif)
结束选择
如果结束
希望这能帮助你理解这个想法

请访问以获取更多信息。

试试这个

Dim SaveImage As New Bitmap(PictureBox1.Image)
SaveImage.Save(SaveImagePath + SaveImageName, Imaging.ImageFormat.Jpeg)
SaveImage.Dispose()

对不起,我还是不工作。如果我没弄错的话,这意味着我只能以*.jpeg格式保存文件,对吗?但我不想在保存时保存其他格式类型,可能吗?丢失格式不会导致程序冻结