是否有内置Windows 8“现代阅读器”PDF查看器的API?

时间:2012-01-03 15:25:54

标签: pdf windows-8

Windows 8将包含一个名为“Modern Reader”的内置PDF阅读器。在我们当前的应用程序中,我们将Adobe Reader作为ActiveX控件嵌入。

我能以类似的方式嵌入Windows 8“Modern Reader”吗?

8 个答案:

答案 0 :(得分:9)

你的问题的答案是'不'。现在(现在)还没有为Modern Reader PDF查看器发布的API。下一个最好的事情是PDF-Tools.com解决方案,我认为它可能过于通用,无法满足您的需求,但仍值得一试。

请参阅:http://www.pdf-tools.com/public/downloads/manuals/vwra.pdf

抱歉有坏消息。只是不要射击信使:)

答案 1 :(得分:7)

Windows 8.1具有用于呈现PDF的API。请查看Windows.Data.Pdf命名空间

Channel 9上建立会议会话记录。这详细介绍了如何使用新的PDF呈现API。

答案 2 :(得分:3)

您可以从应用程序中打开Windows Reader中的PDF文件。这将单独打开Windows Reader。

  StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(filePath));
  Launcher.LaunchFileAsync(file);

filePath是PDF文件的路径。

答案 3 :(得分:3)

这是一个关于如何将PDF文档呈现为BitmapImages的代码示例:

private async Task<List<BitmapImage>> LoadPdf()
{
var _pageImages = new List<BitmapImage>();

// Open the file
var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync("demo.pdf");

// Create PDF document
var pdfDocument = await PdfDocument.LoadFromFileAsync(file);

// Loop through the pages
for (uint i = 0; i < pdfDocument.PageCount; i++)
{
    using (var stream = new InMemoryRandomAccessStream())
    {
        using (var page = pdfDocument.GetPage(i))
        {
            // Set render options
            var renderOptions = new PdfPageRenderOptions
                                        {
                                            BackgroundColor = Colors.LightGray,
                                            DestinationHeight = (uint)(page.Size.Height * 10)
                                        };

            // Render into bitmap image
            await page.RenderToStreamAsync(stream, renderOptions);
            var image = new BitmapImage();
            await image.SetSourceAsync(stream);
            await stream.FlushAsync();
            _pageImages.Add(image);
        }
    }
}

return _pageImages;
}

原始来源:http://www.win8tutorial.net/windows-8-1/render-pdf-documents/

问候 基督教

答案 4 :(得分:1)

我有好消息。看看我找到了什么:Reading PDF and XPS on your Windows 8 application using WinRT

David Catuhe将其发布在Msdn博客上:

  

PDF和XPS文件格式在全球范围内广泛使用   可能需要一天时间才能在您的应用程序中显示它们。
今天   我想通过使用open来与您分享一个简单的方法   源解决方案:MuPDF(多平台轻量级PDF和XPS   观众)。
  结果是一个简单但非常有用的Windows 8 Modern UI应用程序   能够显示PDF / XPS文件。

希望对每个人都有所帮助!

答案 5 :(得分:1)

使用Windows 8.1,商店应用程序中的PDF渲染变得非常简单。

Windows 8.1现在具有PDF呈现API以及将PDF页面保存/显示为图像的功能。查看these samples

答案 6 :(得分:0)

看看这里...... http://social.msdn.microsoft.com

因为没有apis可用你可以使用以下javascript框架将你的pdf集成到metro风格的html5应用程序

https://github.com/mozilla/pdf.js

答案 7 :(得分:0)

现代PDF阅读器不再包含在Microsoft Windows 8的最终版本中。我使用Cool PDF Reader替代Modern PDF Reader。 Windows 8确实附带Metro风格的Reader应用程序,功能瘫痪,特别是因为它不允许您打印PDF。 Cool PDF Reader是一个很好的Windows桌面应用程序,用于打开,查看甚至打印PDF文档。