Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If Me.openFileDialog1.FileName = "" Then
MessageBox.Show("请首先打开一个图像文件", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Exit Sub
End If
If Me.saveFileDialog1.ShowDialog() = DialogResult.Cancel Then
MessageBox.Show("请首先选择保存的JPG文件名", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Exit Sub
End If
Try
Dim MyFileName As String = Me.saveFileDialog1.FileName + ".jpg"
Dim MyLevel As Integer = CInt(Me.TextBox1.Text)
Dim MyEncoders() As ImageCodecInfo = ImageCodecInfo.GetImageEncoders()
'获取JPEG格式的编码方式
Dim j As Int16 = 0
Dim MyImageCodecInfo As ImageCodecInfo
For j = 0 To MyEncoders.Length - 1 Step 1
If MyEncoders(j).MimeType = "image/jpeg" Then
MyImageCodecInfo = MyEncoders(j)
End If
Next
'设置JPEG文件的图片质量
Dim MyEncoder As Encoder = Encoder.Quality
'创建一个EncoderParameters对象,它仅包含一个 EncoderParameter对象
Dim MyEncoderParameters As New EncoderParameters(1)
'设置JPEG图片质量
Dim MyEncoderParameter As New EncoderParameter(MyEncoder, MyLevel)
MyEncoderParameters.Param(0) = MyEncoderParameter
Me.PictureBox1.Image.Save(MyFileName, MyImageCodecInfo, MyEncoderParameters)
MessageBox.Show("另存为JPG图像格式文件操作成功!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("另存为JPG图像格式文件操作失败,错误是:" + ex.Message, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Try
End Sub