コード例 #1
0
        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
                        };
        }
コード例 #2
0
 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;
 }