繁体   English   中英

将本地图像转换为 iText.Layout.Element 图像 xamarin forms

[英]Convert local image to iText.Layout.Element image xamarin forms

I am having problems in Xamarin forms in android when converting an image that resides in the drawable repository of resources, but at the time of loading the image in a variable to later make the conversion to iText.Layout.Element.Image (which later this图像它将 go 到 pdf 使用 itext 7),根据文档,它们只给我提供兼容性错误,用于在变量中删除图像。

我想稍后在 apk 中,当它不在调试模式下执行时,这些图像将可用。 有一些类似的问题,但我没有看到图像从本地开始的任何地方

var image5 = new iText.Layout.Element.Image("logo.jpg");


 using (MemoryStream memoryStream1 = new MemoryStream())
 {
      image5.Save(memoryStream1, ImageFormat.Png);
      byte[] bytes = memoryStream1.ToArray();
 }

稍后处理图像以将其合并到 pdf 文档中

ImageData imageData = ImageDataFactory.Create(bytes);

iText.Layout.Element.Image image = new iText.Layout.Element.Image(imageData);

document.Add(image);

但我从 System.Drawing 得到 Save() 方法错误,而不是如何修复它

我的另一个代码是:

 var image20 = new Xamarin.Forms.Image();

            Assembly assembly = this.GetType().GetTypeInfo().Assembly;
            byte[] imgByteArray = null;

            using (var s = assembly.GetManifestResourceStream("C:\\Users\\..\\logotipo.PNG"))
            {
                if (s != null)
                {
                    var length = s.Length;
                    imgByteArray = new byte[length];
                    s.Read(imgByteArray, 0, (int)length);

                    image20.Source = ImageSource.FromStream(() => s);
                }
            }

            ImageData imageData9 = ImageDataFactory.Create(imgByteArray);

            iText.Layout.Element.Image image9 = new 
            iText.Layout.Element.Image(imageData9);

在此处输入图像描述

I am having problems in Xamarin forms in android when converting an image that resides in the drawable repository of resources, but at the time of loading the image in a variable to later make the conversion to iText.Layout.Element.Image (which later this图像它将 go 到 pdf 使用 itext 7),根据文档,它们只给我提供兼容性错误,用于在变量中删除图像。

我想稍后在 apk 中,当它不在调试模式下执行时,这些图像将可用。 有一些类似的问题,但我没有看到图像从本地开始的任何地方

var image5 = new iText.Layout.Element.Image("logo.jpg");


 using (MemoryStream memoryStream1 = new MemoryStream())
 {
      image5.Save(memoryStream1, ImageFormat.Png);
      byte[] bytes = memoryStream1.ToArray();
 }

稍后处理图像以将其合并到 pdf 文档中

ImageData imageData = ImageDataFactory.Create(bytes);

iText.Layout.Element.Image image = new iText.Layout.Element.Image(imageData);

document.Add(image);

但我从 System.Drawing 得到 Save() 方法错误,而不是如何修复它

我的另一个代码是:

 var image20 = new Xamarin.Forms.Image();

            Assembly assembly = this.GetType().GetTypeInfo().Assembly;
            byte[] imgByteArray = null;

            using (var s = assembly.GetManifestResourceStream("C:\\Users\\..\\logotipo.PNG"))
            {
                if (s != null)
                {
                    var length = s.Length;
                    imgByteArray = new byte[length];
                    s.Read(imgByteArray, 0, (int)length);

                    image20.Source = ImageSource.FromStream(() => s);
                }
            }

            ImageData imageData9 = ImageDataFactory.Create(imgByteArray);

            iText.Layout.Element.Image image9 = new 
            iText.Layout.Element.Image(imageData9);

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM