Круглые изображения с asp.net

Могу ли я создавать круглые изображения с помощью asp.net? Пожалуйста, порекомендуйте. Мое требование - загрузить любое изображение и получить округленную версию созданного bu asp.net. Я использую .Net framework 3.5, visual studio .net 2008.

Спасибо заранее.


person Kunal    schedule 24.11.2009    source источник
comment
Это решает вашу проблему? forums.asp.net/p/942160/1130380.aspx   -  person Heinzi    schedule 24.11.2009


Ответы (4)


Рисование и обработка изображений с помощью GDI + просты, как и другие ответы.

Но учтите, что это неподдерживаемый путь, как указано в этой статье MSDN (выделено мной).

Классы в пространстве имен System.Drawing не поддерживаются для использования в службах Windows или ASP.NET. Попытка использовать эти классы из одного из этих типов приложений может привести к непредвиденным проблемам, таким как снижение производительности службы и исключения во время выполнения.

Я успешно использовал GDI+ в приложении ASP.NET несколько раз и никогда не сталкивался с какими-либо проблемами, но я думаю, что это просто полезно знать.

person kay.herzam    schedule 24.11.2009

Вы можете сделать это с помощью GDI + по крайней мере. Краткий ответ: используйте .Graphics.SetClip(), чтобы установить желаемую форму, а затем нарисуйте изображение. Все, что находится за пределами области отсечения, будет обрезано.

Вот статья, в которой рассматривается метод, позволяющий сделать углы более гладкими (и даже смягчить края, если хотите): http://danbystrom.se/2008/08/24/soft-edged-images-in-gdi/

person Dan Byström    schedule 24.11.2009

Прежде всего, вам нужно найти библиотеку, которая может делать такие вещи с изображением. Я нашел что-то в CodeProject http://www.codeproject.com/KB/GDI-plus/rounded_corners.aspx, но я не уверен, что это будет работать с asp.net (в основном это то, что вам следует поискать в Google).

Затем, когда у вас есть библиотека, вы выполняете свою работу по загрузке файла, и когда он загружается, вы проверяете MIME-тип, пытаетесь открыть его и использовать библиотеку.

person kubal5003    schedule 24.11.2009
comment
Исходя из того, что написал danbystrom, полагаю, что библиотека от CP тоже будет работать, потому что использует GDI. - person kubal5003; 24.11.2009

Вы не упомянули, является ли это веб-сайтом или нет, но рассматривали ли вы округление изображений с помощью css и/или javascript? Как только вы удалите эту деталь изображения, вы не сможете вернуть ее! Что, если позже клиент захочет другую форму зажима?

person ScottE    schedule 24.11.2009