当我使用 bitmap.save 保存 jpg 文件时,当我指定编码器和质量时,它会保存为 jpeg 4-1-1,但当我不指定编码器和质量时,它会保存为 4-2-2。我想将其保存为 4-2-2,其质量比默认值更高。使用 bitmap.save 可以吗?通过 4-1-1 保存我会失去任何东西吗?
Dim bmp As Bitmap
Dim ep As New EncoderParameters(1)
Dim sysCodecs() As ImageCodecInfo
Dim jpgCodec, cdc As ImageCodecInfo
sysCodecs = ImageCodecInfo.GetImageEncoders()
' get jpg codec
jpgCodec = Nothing
For Each cdc In sysCodecs
If String.Compare(cdc.MimeType, "image/jpeg", True) = 0 Then
jpgCodec = cdc
Exit For
End If
Next cdc
If jpgCodec IsNot Nothing Then
ep.Param(0) = New EncoderParameter(Encoder.Quality, 97)
bmp = Bitmap.FromFile(filename)
bmp.Save(outname, jpgCodec, ep) ' saves 4-1-1
bmp.Save(outname) ' saves 4-2-2
end if
无法更改 GDI+ 中的色度子采样:
- http://www.windows-tech.info/13/182be886cf7447bc.php http://www.windows-tech.info/13/182be886cf7447bc.php
- http://forums.asp.net/p/1538597/3763627.aspx http://forums.asp.net/p/1538597/3763627.aspx
- http://www.codeguru.com/forum/archive/index.php/t-494480.html http://www.codeguru.com/forum/archive/index.php/t-494480.html
我必须使用第三方工具(Leadtools RasterImage Library)来完成此任务。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)