2017-07-26 62 views
0

我正在使用UWP應用程序從具有Syncfusion組件的.rdlc模板文件生成.pdf文件。我可以從rdlc模板文件生成pdf,但pdf(文本或圖像)中的所有鏈接不起作用。鏈接工作,如果我生成一個HTML文件,但不是PDF文件。下面是代碼:UWP:使用ReportWriter生成PDF後,鏈接無法在PDF中工作(SyncFusion)

var pdfFile = await ApplicationData.Current.LocalFolder.CreateFileAsync(String.Concat("Order-", this.Model.SaleReference, ".pdf"), CreationCollisionOption.ReplaceExisting); 
using (var stream = await pdfFile.OpenAsync(FileAccessMode.ReadWrite)) 
{ 
    using (var outstream = stream.AsStreamForWrite()) 
    { 
     var assembly = typeof(FinalizeViewModel).GetTypeInfo().Assembly; 

     var reportStream = assembly.GetManifestResourceStream("UWP.OrderModule.Reports.Test.rdlc"); 

     var writer = new ReportWriter(reportStream) 
     { 
      ExportMode = Syncfusion.ReportWriter.ExportMode.Local 
     }; 

     writer.Save(outstream, WriterFormat.PDF); 

     outstream.Dispose(); 
    } 
} 

await Windows.System.Launcher.LaunchFileAsync(pdfFile); 

我也嘗試使用此代碼,但結果是一樣的:

var file = await ApplicationData.Current.LocalFolder.CreateFileAsync(String.Concat("Order-", this.Model.SaleReference, ".pdf"), CreationCollisionOption.ReplaceExisting); 

using (var stream = await WindowsRuntimeStorageExtensions.OpenStreamForWriteAsync(file)) 
{ 
    var assembly = typeof(FinalizeViewModel).GetTypeInfo().Assembly; 

    var reportStream = assembly.GetManifestResourceStream("UWP.OrderModule.Reports.Test.rdlc"); 

    var writer = new ReportWriter(reportStream) 
    { 
     ReportProcessingMode = Syncfusion.ReportWriter.ProcessingMode.Local, 
     ExportMode = Syncfusion.ReportWriter.ExportMode.Local 
    }; 

    writer.Save(stream, WriterFormat.PDF); 
} 

await Windows.System.Launcher.LaunchFileAsync(pdfFile); 

有什麼不對? ReportWriter類(Syncfusion.RdllO.RdllOExportEngine類)中有問題嗎? 感謝您的幫助。

回答

0

當前Syncfusion ReportWriter不支持使用超鏈接選項將報告導出爲PDF格式。我們將考慮在即將發佈的任何版本中包含此功能。