[ kravko @ 03.12.2011. 12:16 ] @
Pozdrav, Imam jedan problem i nadam se da netko zna rjesenje :) Naime, imam funkciju koja croppa sliku na odredjene dimeznije, ali mi se ne ponasa isto kada je site na online serveru ili kad ju testiram u lokalu. Funkcija pozvana na serveru/slika spremljena na server(winhost.com): ![]() Funkcija testirana u localhostu/slika spremljena na localdisc (Virtual server): ![]() Primjetite razliku u kvaliteti? A koristena je ista slika i ista funkcija Metode (CropImageFile() je metoda koja cropa sliku) Code: //Crops Image public static void CropImageFile(string ImageFrom, string ImageTo, int targetW, int targetH) { System.Drawing.Image imgPhoto = System.Drawing.Image.FromFile(ImageFrom); int targetX = (imgPhoto.Width - targetW) / 2; int targetY = (imgPhoto.Height - targetH) / 2; Bitmap bmPhoto = new Bitmap(targetW, targetH, PixelFormat.Format48bppRgb); bmPhoto.SetResolution(72, 72); Graphics grPhoto = Graphics.FromImage(bmPhoto); grPhoto.SmoothingMode = SmoothingMode.AntiAlias; grPhoto.InterpolationMode = InterpolationMode.HighQualityBicubic; grPhoto.PixelOffsetMode = PixelOffsetMode.HighQuality; grPhoto.DrawImage ( imgPhoto, new Rectangle(0, 0, targetW, targetH), targetX, targetY, targetW, targetH, GraphicsUnit.Pixel ); // Save out to memory and then to a file. We dispose of all objects to make sure the files don't stay locked. EncoderParameters ep = new EncoderParameters(1); ep.Param[0] = new EncoderParameter(Encoder.Quality, (long)100); ImageCodecInfo ici = GetEncoderInfo("image/jpeg"); imgPhoto.Dispose(); grPhoto.Dispose(); bmPhoto.Save(ImageTo, ici, ep); bmPhoto.Dispose(); } //CodecInfo 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; } Hvala unaprijed. Pozz [Ovu poruku je menjao kravko dana 03.12.2011. u 13:30 GMT+1] |