2014-09-16 6 views
1

Есть ли кто-нибудь, кто может рассказать мне, как я могу изменить размер изображения, прочитанного с Sitecore ImageField?Изменить размер изображения с изображения Sitecore после чтения

После того как я прочитал его из этого конкретного поля изображения, я сформирую из него Sitecore MediaItem и сгенерирую его 64-битное представление. Проблема в том, что он приходит в больший размер, который мне нужен.

Может ли кто-нибудь мне помочь?

С уважением, Marius.

+0

Посредством средства массовой информации Вы имеете в виду элемент питания Sitecore? – nsgocev

+0

Да. Sitecore MediaItem. Я сделал редактирование для моего оригинального сообщения, чтобы быть более ясным. –

ответ

2

Я думаю, вы преобразовываете изображение через MediaItem.GetMediaStream(), создавая его массив байтов, после чего вы создаете строку base64 из изображения. Проблема изменения размера теперь становится проблемой .net, а не Sitecore. Существует несколько способов изменения размера изображения в C#. Вы можете обратиться к этому сообщению с переполнением стека о том, как изменить размер изображения:

How I can resize the image in c#?

Resize image on the fly in .net and c#

Если вы решили сбросить часть кода для изменения размера и использовать Sitecore MediaManager вместо есть запрос string params, которые помогут вам изменить размер самого изображения. Вы можете обратиться к сообщению this для получения дополнительной информации о параметрах строки запроса.

+0

Да, вы правы насчет конверсии. Так, например, что касается второй ссылки, которую вы предоставили, как мне ее использовать в моем случае? Из чего я должен формировать образ Bitmap, как там описано? –

+1

@MariusPopa вы можете использовать поток, который вы получаете от GetMediaStream() – nsgocev

+0

Большое вам спасибо за помощь. Я создал изображение из MediaItem.GetMediaStream() и выполнил всю обработку. –