Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';t在流中保存并重新创建Aspose jpeg图像_C#_Jpeg_Memorystream_Aspose - Fatal编程技术网

C# Can';t在流中保存并重新创建Aspose jpeg图像

C# Can';t在流中保存并重新创建Aspose jpeg图像,c#,jpeg,memorystream,aspose,C#,Jpeg,Memorystream,Aspose,希望这只是我遗漏的一些细节 我正在为一个转换器创建一个单元测试,它将一个JPG粘贴到一个新的PDF文档中。新文档和Jpeg都保存到内存流中,然后两个流都被传入。PDF文档工作正常,但Jpeg将保存到流中,然后我无法从中创建新的Jpeg图像。代码很简单 converter = new Converters.JpegToPdfConverter(); jpegConverterSourceStream = new MemoryStream(); so

希望这只是我遗漏的一些细节

我正在为一个转换器创建一个单元测试,它将一个JPG粘贴到一个新的PDF文档中。新文档和Jpeg都保存到内存流中,然后两个流都被传入。PDF文档工作正常,但Jpeg将保存到流中,然后我无法从中创建新的Jpeg图像。代码很简单

        converter = new Converters.JpegToPdfConverter();

        jpegConverterSourceStream = new MemoryStream();
        sourceStream = new MemoryStream();
        destinationStream = new MemoryStream();

        var document = new Document();
        var page = document.Pages.Add();
        page.PageInfo = testPageInfo;

        document.Save(destinationStream);

        var img = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(imageWidth, imageHeight);

        img.Save(jpegConverterSourceStream, ImageOptions);

        jpegConverterSourceStream.CopyTo(sourceStream);

        JpegImage img2 = new JpegImage(sourceStream);
//最后一行失败了

ImageLoadException:无法打开图像。图像文件格式目前可能不受支持


这没有任何意义。。。我刚刚救了一个班。在与内存流的转换过程中是否发生了一些有趣的事情?

小问题-在从内存流复制之前,您需要重置流的位置-

jpegConverterSourceStream.Position = 0;
jpegConverterSourceStream.CopyTo(sourceStream);

次要问题-在从流复制之前,需要重置流的位置-

jpegConverterSourceStream.Position = 0;
jpegConverterSourceStream.CopyTo(sourceStream);

不是一个小问题。。。这实际上解决了整个问题!!泰!一旦我将流重置回pos 0,图像就创建得很好。不是一个小问题。。。这实际上解决了整个问题!!泰!一旦我将流重置回pos 0,图像就创建得很好。