使用C#从Windows 8 metro应用程序打印pdf文档

时间:2014-01-15 08:45:10

标签: c# windows-runtime microsoft-metro windows-store-apps

我目前正在开发一个Windows 8 metro应用程序,我需要在点击打印报告按钮时打印pdf文档。我使用了以下代码。

StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
StorageFile reportFile = await localFolder.GetFileAsync("abc.pdf");
var options = new Windows.System.LauncherOptions();
options.DisplayApplicationPicker = false;
bool success = await Windows.System.Launcher.LaunchFileAsync(reportFile, options);

但它会打开pdf文档,然后用户手动需要打印它。 有没有办法直接打印pdf文档而不打开它。?

1 个答案:

答案 0 :(得分:0)

与支持将verb "print"传递给已启动的应用程序的Win32应用程序不同,目前在WinRT中没有针对此的标准技术。

虽然可能有一个PDF查看器支持"print"的自定义查询字符串,但用户可能拥有一个不支持其他应用程序支持的语法的已注册应用程序。

最可靠的是嵌入源代码或可以在WinRT中本机打印PDF而无需用户交互的组件。