--
Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.IO
Module ImageCompressor
Sub Main()
Dim inputPath As String = "f\\g\\DSC01371.jpg"
Dim outputPath As String = "f\\g\\vDSC01371.jpg"
Using originalImage As Image = Image.FromFile(inputPath)
\' 设置压缩质量(0-100)
Dim quality As Long = 50L
Dim jpgEncoder As ImageCodecInfo = GetEncoder(ImageFormat.Jpeg)
\' 创建编码参数
Dim myEncoder As Encoder = Encoder.Quality
Dim myEncoderParameters As New EncoderParameters(1)
Dim myEncoderParameter As New EncoderParameter(myEncoder, CType(quality, Byte))
myEncoderParameters.Param[0] = myEncoderParameter
\' 保存压缩后的图像
originalImage.Save(outputPath, jpgEncoder, myEncoderParameters)
End Using
End Sub
Private Function GetEncoder(ByVal format As ImageFormat) As ImageCodecInfo
Dim codecs As ImageCodecInfo() = ImageCodecInfo.GetImageDecoders()
Dim myEncoder As ImageCodecInfo = Nothing
For Each codec As ImageCodecInfo In codecs
If codec.FormatID = format.Guid Then
myEncoder = codec
Exit For
End If
Next codec
Return myEncoder
End Function
End Module
这是网上找的个程序,但运行出错,要怎么改?能行吗?