2014-01-05 93 views
2

我製作了一個應用程序,它從網上獲取圖像並將其與My Hard中的圖像混合並生成新圖像。我的問題是在這個過程之後增加新的照片大小。例如,如果主照片是50X50像素,在此之後有50kb操作新圖像是相同的50X50像素,但是它的新大小是400kb!混合2圖像並增加新一代圖像的大小

請幫我解決這個可怕的問題。
我用這個方法來此圖像混合:因爲可能是在高質量

HttpWebRequest MakeRequest = (HttpWebRequest)HttpWebRequest.Create(ImageURL); 
HttpWebResponse Respnse = (HttpWebResponse)MakeRequest.GetResponse(); 
Stream Streaming = Respnse.GetResponseStream(); 
Image ImageNews = Image.FromStream(Streaming); 

imgToResize = ImageNews; 


Image Logo = Image.FromFile("d:\\logonews.jpg"); 

Bitmap NewsMainImage = new Bitmap(ImageNews.Width, ImageNews.Height); 
Graphics makeImage = Graphics.FromImage(NewsMainImage); 
makeImage.DrawImage(ImageNews, 
        new Rectangle(new Point(), ImageNews.Size), 
        new Rectangle(new Point(), ImageNews.Size), 
        GraphicsUnit.Pixel); 


makeImage.DrawImage(Logo, 
        new Rectangle(new Point(0, ImageNews.Height - Logo.Height), 
            Logo.Size), 
        new Rectangle(new Point(), 
            Logo.Size), 
        GraphicsUnit.Pixel); 

回答

2

渲染 「makeImage」 爲JPEG。您可能將其作爲位圖返回,從而導致您的文件大小問題。將其渲染爲Jpeg或Png可以解決問題。

1

檢查屬性PixelOffsetMode在makeImage變量;

添加這一行:

makeImage.PixelOffsetMode = PixelOffsetMode.HighSpeed;

高速設置低質量