現在我可以存為.bmp格式,但是怎么樣才可以存jpg格式呢,是不是需加載什么庫?
注意是檔案格式為JPG不是僅僅改一個后綴名
uj5u.com熱心網友回復:
using System;
using System.Drawing;
using System.Drawing.Imaging;
class Example_SetJPEGQuality
{
public static void Main()
{
Bitmap myBitmap;
ImageCodecInfo myImageCodecInfo;
Encoder myEncoder;
EncoderParameter myEncoderParameter;
EncoderParameters myEncoderParameters;
// Create a Bitmap object based on a BMP file.
myBitmap = new Bitmap("Shapes.bmp");
// Get an ImageCodecInfo object that represents the JPEG codec.
myImageCodecInfo = GetEncoderInfo("image/jpeg");
// Create an Encoder object based on the GUID
// for the Quality parameter category.
myEncoder = Encoder.Quality;
// Create an EncoderParameters object.
// An EncoderParameters object has an array of EncoderParameter
// objects. In this case, there is only one
// EncoderParameter object in the array.
myEncoderParameters = new EncoderParameters(1);
// Save the bitmap as a JPEG file with quality level 25.
myEncoderParameter = new EncoderParameter(myEncoder, 25L);
myEncoderParameters.Param[0] = myEncoderParameter;
myBitmap.Save("Shapes025.jpg", myImageCodecInfo, myEncoderParameters);
// Save the bitmap as a JPEG file with quality level 50.
myEncoderParameter = new EncoderParameter(myEncoder, 50L);
myEncoderParameters.Param[0] = myEncoderParameter;
myBitmap.Save("Shapes050.jpg", myImageCodecInfo, myEncoderParameters);
// Save the bitmap as a JPEG file with quality level 75.
myEncoderParameter = new EncoderParameter(myEncoder, 75L);
myEncoderParameters.Param[0] = myEncoderParameter;
myBitmap.Save("Shapes075.jpg", myImageCodecInfo, myEncoderParameters);
}
private static ImageCodecInfo GetEncoderInfo(String mimeType)
{
int j;
ImageCodecInfo[] encoders;
encoders = ImageCodecInfo.GetImageEncoders();
for(j = 0; j < encoders.Length; ++j)
{
if(encoders[j].MimeType == mimeType)
return encoders[j];
}
return null;
}
}
MSDN copy的==我也沒試,你可以自己去看一下image類
uj5u.com熱心網友回復:
Me.PictureBox1.Image.Save("c:\abc.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
uj5u.com熱心網友回復:
那如果碰到有重名圖片嗎 也就是實作存盤覆寫功能怎么解決?Me.PictureBox1.Image.Save只能保存無法實作另存為的覆寫功能
uj5u.com熱心網友回復:
if(File.Exist(x.jpg))
{
File.Delete(x.jpg)
}
else
{
//Save
}
uj5u.com熱心網友回復:
using bmp as new bitmap(me.picturebox1.image.width,me.picturebox1.image.height)using g=graphic.fromimage(bmp)
g.drawimage(me.picturebox1.image,0,0,bmp.width,bmp.height)
end using
bmp.save(decPath,imageformat.jpg)
end using
沒在開發機器上,憑印象打的,代碼大致應該如此。
uj5u.com熱心網友回復:
那不是image.save函式管的,先自己檢測是否有重名,根據savefiled...的filename再去設定save的path。
uj5u.com熱心網友回復:
支持2#,沒必要轉換,自帶功能轉載請註明出處,本文鏈接:https://www.uj5u.com/net/86348.html
標籤:VB.NET
上一篇:C#反射
