Рейтинг:
2
OriginalGriff
Изображения не могут быть созданы только для какой-либо старой строки: это структурированные файлы, которые содержат много "упаковочной информации", которая относится к фактическим данным изображения, но не является фактическими пикселями.
Вы не можете просто предположить, что любая строка, переведенная в Base64, будет действительным изображением: это не так! А когда это не так, вы получаете ошибку "параметр недействителен", потому что данных, которые он ожидает и должен "декодировать" данные изображения в фактическое изображение, которое вы можете отобразить, просто нет!
Попробуйте прочитать файл образа с диска в виде массива байтов, преобразовать его в Base64, а затем обработать в образ.
Vikram Singh Rathaur
Мое требование состоит в том, чтобы отправить изображение(которое мы хотим преобразовать из html) по электронной почте
OriginalGriff
Почему бы просто не прикрепить файл изображения?
Если вы не можете этого сделать, то считайте его как массив байтов, преобразуйте его в Base64 и отшлифуйте таким образом. Как именно вы его отправляете, зависит от того, что вы хотите с ним сделать, когда придет письмо, но базовым HTML-встраиванием будет тег img:
ИМГ АЛТ="мои изображения" в src="данные:изображение/jpeg;base64, и...данные в кодировке base64..."
Vikram Singh Rathaur
некоторое время он не загружается автоматически в почтовый ящик
Рейтинг:
1
F-ES Sitecore
string str = "This is a\r\n test Message";
// create a dummy Bitmap just to get the Graphics object
Bitmap img = new Bitmap(1, 1);
Graphics g = Graphics.FromImage(img);
// The font for our text
Font f = new Font("Arial", 14);
// work out how big the text will be when drawn as an image
SizeF size = g.MeasureString(str, f);
// create a new Bitmap of the required size
img = new Bitmap((int)Math.Ceiling(size.Width), (int)Math.Ceiling(size.Height));
g = Graphics.FromImage(img);
// give it a white background
g.Clear(Color.White);
// draw the text in black
g.DrawString(str, f, Brushes.Black, 0, 0);
// save the image
img.Save(@"c:\temp\Hello.jpg");