Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.03.2010, 10:36   #1
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию размер изображения

есть pictureBox определенных размеров (140x175)
есть изображение лежащее тут @"С:\Images\Image.jpg" с размером 600x348
нужно пропорционально уменьшить изображение и вписать его в pictureBox (расположить по центру контрола) не меняя при этом файл

думаю делать нужно как-то так:

Код:
Image img = Image.FromFile("С:\\Images\\Image.jpg");
Size nSize; //новый размер подходящий по размеру к picturebox
if(img.Width>img.Height)
        nSize = new Size(pictureBox.Width, pictureBox.Width * img.Height / img.Width);
else if(img.Width<img.Height)
        nSize = new Size(pictureBox.Height * img.Width / img.Height, pictureBox.Height);
else if(img.Width==img.Height)
        nSize = new Size(pictureBox.Width,pictureBox.Width);

//дальше к img нужно как-то применить размер nSize
//дальше наверное нужно через Graphics нарисовать измененный img в середине picturebox'a
потом при нажатии кнопки нужно этот img превратить в массив байтов
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 05.03.2010, 11:18   #2
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

хм, нашел у класса Image интересное свойство ))
GetThumbnailImage называется
есть ещё идея, если не получиться сделать самому, то напишу
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 05.03.2010, 11:18   #3
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

хм, нашел у класса Image интересное свойство ))
GetThumbnailImage называется
есть ещё идея, если не получиться сделать самому, то напишу
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 05.03.2010, 11:46   #4
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

как сохранить picktureBox1.Image в FileStream без сохранения лишних файлов?
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 05.03.2010, 14:11   #5
m0nax
Форумчанин
 
Аватар для m0nax
 
Регистрация: 25.09.2009
Сообщений: 525
По умолчанию

наверно pictureBox1.Image.Save()
m0nax вне форума Ответить с цитированием
Старый 05.03.2010, 15:36   #6
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

сейчас пока на save и сделал. он у него первый параметр - путь к файлу, а не стрим... ну ладно. нормально
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 05.03.2010, 19:24   #7
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

немного не в тему... проблема нарисовалась совсем неожиданно
с базы я считываю файл через FileStream и BinaryWriter. После их закрытия появляется нужный файл. Если сразу после закрытия написать File.Delete("") то файл удаляется. Но до удаления мне нужно считать этот файл в pictureBox
я делаю так:

Код:
writer.Close();
stream.Close();
Image ph = Image.FromFile("_temp.jpg");
pictureBox.Image = ph;
File.Delete("_temp.jpg");
из-за Image, файл _temp.jpg становится занятым приложением и не удаляется. почему так? как решить?
и можно ли сразу читать в Image из FileStream?


--------------------
странно, что я забыл что у пикчабокса есть метод Load ))
всё заработало
Life if about choices
Make the right choice

Последний раз редактировалось TaTT DoGG; 05.03.2010 в 19:44.
TaTT DoGG вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать размер изображения Lokos Мультимедиа в Delphi 3 21.12.2009 16:44
Размер изображения FeNiX_IU8 Помощь студентам 5 15.11.2009 21:35
Размер изображения guffer Мультимедиа в Delphi 6 10.07.2009 17:50
Масштабирование изображения под размер таблицы ARCHANG3L HTML и CSS 6 03.02.2009 23:23
Как уменьшить размер PNG изображения? highklass Мультимедиа в Delphi 5 31.05.2008 16:24