【问题标题】:XpsDocument GetFixedDocumentSequence return nullXpsDocument GetFixedDocumentSequence 返回 null
【发布时间】:2018-04-10 18:49:45
【问题描述】:

我像这样从打印机读取数据:

  using (Stream stream = client.GetStream())
  {
    using (MemoryStream ms = new MemoryStream())
    {
      stream.CopyTo(ms);

      client.Close();

      byte[] result = ms.ToArray();
      ...

     using (var memoryStream = new MemoryStream(result))
     {
      using (var package = Package.Open(memoryStream, FileMode.Open))
      {
        var packageUri = new Uri("memorystream://printstream");
        PackageStore.AddPackage(packageUri, package);
        var xpsDocument = new XpsDocument(package, CompressionOption.Fast, packageUri.OriginalString);
        return xpsDocument.GetFixedDocumentSequence() // NULL

我也尝试将流直接保存到文件中,然后读取为 File.ReadAllBytes(filePath),但结果是一样的。

将流保存到文件后,我可以毫无问题地通过 XpsViewer 打开它。

【问题讨论】:

    标签: c# printing tcpclient xps


    【解决方案1】:

    奇怪,但它的工作。我必须使用 XpsConverter.exe 并将 .xps 文件转换为 .xps。这是@AXMIM solution

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2020-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-21
      • 2020-06-19
      相关资源
      最近更新 更多