private static Image RenderImageContext(ImageRenderData imageRenderData) { var imageBytes = Convert.FromBase64String(imageRenderData.Base64String); var image = new BitmapImage(); using (InMemoryRandomAccessStream ms = new InMemoryRandomAccessStream()) { using (DataWriter writer = new DataWriter(ms.GetOutputStreamAt(0))) { writer.WriteBytes((byte[])imageBytes); writer.StoreAsync().GetResults(); } image.SetSource(ms); } return new Image { Margin = imageRenderData.Margin, VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Left, Source = image, Width = imageRenderData.Width, Height = imageRenderData.Height }; }
private static ImageRenderData CreateImage(PageRenderData context, double offsetX, double top, ImageElement item, BookImage bookImage) { var imageContext = new ImageRenderData { Margin = new Thickness(offsetX + context.OffsetX, top + context.OffsetY, 0.0, 0.0), Width = item.Width, Height = item.Height, ImageStream = bookImage.CreateStream(), Base64String = bookImage.Data }; return imageContext; }