C# Syncfusion WinRT:在版本12.2.0.36中工作的代码出现异常,该版本现在没有';t在版本13.1.0.21上工作

C# Syncfusion WinRT:在版本12.2.0.36中工作的代码出现异常,该版本现在没有';t在版本13.1.0.21上工作,c#,windows-8,windows-runtime,windows-store-apps,syncfusion,C#,Windows 8,Windows Runtime,Windows Store Apps,Syncfusion,我在syncfusion foruns上问过这个问题,但我想我也会在这里尝试一下 不久前,我参与了一个项目,该项目使用WinRT 12.2.0.36版的Syncfusion 它有一些pdf操作,比如在pdf中添加图像。经过一些努力,它开始工作了,代码的部分是这样的 //... foreach (var image in this.images) //image is type Windows.Ui.Xaml.Controls.Image {

我在syncfusion foruns上问过这个问题,但我想我也会在这里尝试一下

不久前,我参与了一个项目,该项目使用WinRT 12.2.0.36版的Syncfusion 它有一些pdf操作,比如在pdf中添加图像。经过一些努力,它开始工作了,代码的部分是这样的

//...
foreach (var image in this.images)   //image is type Windows.Ui.Xaml.Controls.Image
            {
                var bitmap = image.Source as ImageSource;
                var index = bitmaps.IndexOf(bitmap);
                var signature = signatures.ElementAt(index);
                var bytes = await signature.Data.EncodePngToJpeg();  //returns bytes of png image converted to jpg


                PdfImage pdfImage;
                using (var memoryStream = new MemoryStream(bytes))
                {
                    pdfImage = PdfImage.FromStream(memoryStream);
                }


        var transform = image.RenderTransform as CompositeTransform;

                var x = (image.Margin.Left + transform.TranslateX + horizontalOffset) * 100 / pdfViewer.Zoom - 10;
                var y = (image.Margin.Top + transform.TranslateY + verticalOffset) * 100 / pdfViewer.Zoom - 10;

                var firstPage = pdfDocument.Pages[pdfViewer.PageNumber - 1];
                var pageHeight = firstPage.Size.Height;
                var pageWidth = firstPage.Size.Width;

                var selpage = pdfViewer.PageNumber;

                var pagn = selpage - 1;
                if (pagn < 0)
                    pagn = 0;

                var ss = pdfViewer.GetDescendantsOfType<ScrollViewer>();
                var hh = ss.ElementAt(3);
                float VertOff = (float)hh.VerticalOffset;
                float VertOff2 = (VertOff * 100 / pdfViewer.Zoom) - ((pagn) * (pageHeight * 1.325f));


                var page = pdfDocument.Pages[pagn];
                var graphics = page.Graphics;

                var width = image.Width;
                var height = image.Height;

                //float fWidth = (float)width;
                //float fHeight = (float)height;
                fWidth = 165f * 0.50f;
                fHeight = 110f * 0.50f;

                graphics.ScaleTransform(0.75f, 0.75f);
                graphics.DrawImage(pdfImage, (float)x, (float)y + VertOff2, fWidth, fHeight);   // <-- exception is here 

            }
/。。。
foreach(this.images中的var image)//image的类型为Windows.Ui.Xaml.Controls.image
{
var bitmap=image.Source作为ImageSource;
var index=bitmaps.IndexOf(位图);
var signature=signatures.ElementAt(索引);
var bytes=wait signature.Data.EncodePngToJpeg();//返回转换为jpg的png图像的字节
PdfImage-PdfImage;
使用(var memoryStream=新的memoryStream(字节))
{
pdfImage=pdfImage.FromStream(memoryStream);
}
var transform=image.RenderTransform作为复合转换;
var x=(image.Margin.Left+transform.TranslateX+horizontalpoffset)*100/pdfViewer.Zoom-10;
变量y=(image.Margin.Top+transform.TranslateY+verticalOffset)*100/pdfViewer.Zoom-10;
var firstPage=pdfDocument.Pages[pdfViewer.PageNumber-1];
var pageHeight=firstPage.Size.Height;
var pageWidth=firstPage.Size.Width;
var selpage=pdfViewer.PageNumber;
var pagn=selpage-1;
如果(页码<0)
pagn=0;
var ss=pdfViewer.getDegenantSoftype();
var hh=ss.ElementAt(3);
浮动垂直偏移=(浮动)hh.VerticalOffset;
浮动顶点2=(顶点*100/pdfViewer.Zoom)-(页码)*(页高*1.325f));
var page=pdfDocument.Pages[pagn];
var graphics=page.graphics;
var-width=image.width;
var height=image.height;
//浮动宽度=(浮动)宽度;
//浮动高度=浮动高度;
fWidth=165f*0.50f;
FHheight=110f*0.50f;
图形.比例变换(0.75f,0.75f);

graphics.DrawImage(pdfImage,(float)x,(float)y+VertOff2,fWidth,fHeight);//目前基本的PDF Winrt支持以下图像格式。 1.Jpeg 2.巴布亚新几内亚 3.争吵 4.Gif

请尝试不转换为jpeg的PNG图像,我已经附加了供您参考的样本项目,请尝试这个,让我知道结果

问候,


C

我想出来了,问题是这一行:PdfImage PdfImage;