Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 19:53 17.05.24 
Компютри и Интернет
   >> .NET
Всички теми Следваща тема *Кратък преглед

Тема Как да скалирам на 50% jpeg файл и да го save-на  
АвторFuoco (Нерегистриран)
Публикувано03.11.05 15:34



Здравейте!

Как да отворя един jpeg файл, да го намаля на 50 % и да го запиша обратно на диска?

Опитах със следния код:

img: Image;
g: Graphics;
r: Rectangle;

img := Image.FromFile(filesindir);
g := Graphics.FromImage(img);
g.ScaleTransform(0.5, 0.5);

// ??? img.FromGraphics???

img.Save(filesindir + '_');
end;

но не можах да намеря начин да запиша инстанцията на Graphics във файл, или в Image обект.

Как трябва да стане това?



Тема Re: Как да скалирам на 50% jpeg файл и да го save-нанови [re: Fuoco]  
Авторzahical (Нерегистриран)
Публикувано03.11.05 18:46



Най-елементарният начин е следният: (C#)
Bitmap b=(Bitmap)Bitmap.FromFile(fileName);

Size bmpSize=b.Size;
bmpSize.Height/=2;
bmpSize.Width/=2;

Bitmap targetBmp=new Bitmap(b,bmpSize);
targetBmp.Save(newFileName,System.Drawing.Imaging.ImageFormat.Jpeg);

Проблема с този подход обаче е, че:
а) Не можеш да контролираш качеството на интерполацията - т.е. дали скалирането ще е NearestNeighbour или Bicubic.
б) Не можеш да зададеш степента на компресията във новия JPEG.

За решаване на проблем б) виж http://support.microsoft.com/kb/324790/EN-US/ . Проблем а) също не е сложен за решаване -- ако имаш нужда пиши пак.




Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.