|
Модераторы: Partizan, gambit |
|
Roman_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 28.1.2003 Репутация: нет Всего: нет |
вот пример....
Bitmap b = Bitmap.FromFile("c:\\v.jpg") as Bitmap; int sourceWidth = b.Width; int sourceHeight = b.Height; int sourceX = 0; int sourceY = 0; int destX = 0; int destY = 0; int destWidth = (int)(sourceWidth*0.9); int destHeight = (int)(sourceHeight*0.9); Bitmap bb = new Bitmap(destWidth, destHeight,PixelFormat.Format24bppRgb); bb.SetResolution(b.HorizontalResolution, b.VerticalResolution); Graphics grPhoto = Graphics.FromImage(bb); grPhoto.InterpolationMode = InterpolationMode.HighQualityBicubic; grPhoto.DrawImage(b, new Rectangle(destX,destY,destWidth,destHeight), new Rectangle(sourceX,sourceY,sourceWidth,sourceHeight), GraphicsUnit.Pixel); grPhoto.Dispose(); bb.Save("c:\\vv.jpg"); но почему то при сохранении файла размер в 5 раз больше... как решить проблему... |
|||
|
||||
Balu |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 28.8.2002 Репутация: нет Всего: 1 |
А если вот так попробовать (последняя строчка)
bb.Save("c:\\vv.jpg", System.Drawing.Imaging.ImageFormat.Jpeg); |
|||
|
||||
mr.DUDA |
|
|||
3D-маньяк Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
При сохранении нужно явно указать кодек и его параметры, в данном случае параметр - качество картинки (его нужно выставить в пределах 1...100, среднее качество - 50..65). Вот пример с другого форума:
-------------------- |
|||
|
||||
Roman_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 28.1.2003 Репутация: нет Всего: нет |
все работает.. всем спасибо... но еще попутный вопросик... если картинка 90 метров то ошибка....
как можно обойти это???? |
|||
|
||||
mr.DUDA |
|
|||
3D-маньяк Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Roman_, памяти добавить
-------------------- |
|||
|
||||
Roman_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 28.1.2003 Репутация: нет Всего: нет |
а если серьездно! |
|||
|
||||
mr.DUDA |
|
|||
3D-маньяк Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Если валится OutOfMemoryException, то другого решения нет. Либо юзать компоненты сторонних разработчиков, такие как FreeImage. -------------------- |
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |