我有一個矩形,並用圖像圖像反轉時的圖像轉換爲Base64
<Rectangle Height="95" Fill="{Binding Path=Image,RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay,Converter={StaticResource ConvertBase64toImage}}" Stroke="{x:Null}" x:Name="EditPhotoRectangel">
<Rectangle.BitmapEffect>
<DropShadowBitmapEffect ShadowDepth="7" Softness="0.75"/>
</Rectangle.BitmapEffect>
</Rectangle>
圖片是一個base64字符串,我設置的圖像爲它填充它。
private string ImageToBase64(System.Drawing.Image image, ImageFormat format)
{
using (MemoryStream ms = new MemoryStream())
{
// Convert Image to byte[]
image.Save(ms, format);
byte[] imageBytes = ms.ToArray();
// Convert byte[] to Base64 String
string base64String = Convert.ToBase64String(imageBytes);
return base64String;
}
}
並使用轉換器將Base64轉換爲用於填充矩形的圖像刷。
ImageBrush brush = new ImageBrush();
BitmapImage bitmap = new BitmapImage();
// convert base64string to byte[].
byte[] binaryData = System.Convert.FromBase64String((string)value);
bitmap.BeginInit();
// Initializes a new non-resizable instance of the MemoryStream class based on the binaryData array.
bitmap.StreamSource = new MemoryStream(binaryData);
bitmap.EndInit();
//set bitmapimage for brush imagesource
brush.ImageSource = bitmap;
return brush;
我的問題是:當我選擇一個圖像此Rectangle
與MYIMAGE翻轉填寫。
謝謝很多,我使用> System.Drawing.Image img = System.Drawing.Image.FromFile(openfile.FileName);獲取圖像。 – Niloo
您使用什麼ImageFormat保存圖像? –
我使用'img.RawFormat' – Niloo