Что было бы хорошим способом для масштабирования изображений в C #? - PullRequest
1 голос
/ 08 марта 2010

У меня есть сайт, который содержит множество проектов, каждый из которых содержит боковую панель.

На этой боковой панели можно прикреплять изображения к проекту. Приложенные изображения будут показаны в галерее с 3 маленькими большими пальцами внизу и одним большим изображением в верхней части галереи. Большое изображение обновится до другого изображения, когда посетитель нажмет на большой палец в нижней части галереи.

Большие пальцы не являются проблемой, они отображаются правильно.

Моя проблема в увеличении изображения в верхней части галереи. Загружаемые изображения имеют большое разнообразие размеров, в то время как мой держатель имеет ширину 239 и высоту 179. Как лучше всего масштабировать изображения, чтобы они правильно отображались посетителям сайта?

Спасибо, Zapping (этот код пригоден для меня):

int sourceWidth = imgToResize.Width;
   int sourceHeight = imgToResize.Height;

   float nPercent = 0;
   float nPercentW = 0;
   float nPercentH = 0;

   nPercentW = ((float)size.Width / (float)sourceWidth);
   nPercentH = ((float)size.Height / (float)sourceHeight);

   if (nPercentH < nPercentW)
      nPercent = nPercentH;
   else
      nPercent = nPercentW;

   int destWidth = (int)(sourceWidth * nPercent);
   int destHeight = (int)(sourceHeight * nPercent);

Ответы [ 3 ]

2 голосов
/ 08 марта 2010

Все об изменении размера. http://www.codeproject.com/KB/GDI-plus/imageresize.aspx

2 голосов
/ 08 марта 2010

Вы можете изменить размер изображения, сохранив пропорции и сохранив его. Или, если вы хотите сохранить то же изображение, вы можете узнать новые высоту и ширину, сохранить соотношение сторон и применить их соответственно к свойствам высоты и ширины тега img.

Вы можете использовать их для изменения размера изображения или определения высоты и ширины.
http://snippets.dzone.com/posts/show/4336
http://www.switchonthecode.com/tutorials/csharp-tutorial-image-editing-saving-cropping-and-resizing

Вы также можете попробовать что-нибудь на панорамировании, если решите сохранить изображения большего размера
Как увеличить и уменьшить изображение с помощью jquery?

0 голосов
/ 08 марта 2010

Пропорциональное масштабирование также можно сделать с помощью CSS. Рассмотрим изображение шириной 100px и высотой 200px.

<img src="image.png" style="max-width:50;max-height:50;">

поместит изображение в поле размером 50x50px, т.е. создаст изображение 25x50px. Аналогично,

<img src="image.png" style="min-width:500;min-height:500;">

будет производить и изображение 500x1000px.

В вашем случае

<img src="image.png" style="max-width:239;max-height:179;">

Это может быть хорошим решением для вас, так как ваши изображения маленькие, и вы все равно собираетесь загружать миниатюру и изображение, это может быть одно и то же изображение, сохранить полосу пропускания и использовать кэши.

...