Javascript Windows UWP应用程序中的本地PDF超链接
我正在用javascript编写UWP应用程序。Javascript Windows UWP应用程序中的本地PDF超链接,javascript,pdf,hyperlink,uwp,hololens,Javascript,Pdf,Hyperlink,Uwp,Hololens,我正在用javascript编写UWP应用程序。 其中包含一个链接列表,每个链接都称为PDF。 PDF将本地存储在应用程序中。 目标是为Hololens(Windows AR)提供一个免提文档库 无论如何,我用以下方法打开PDF: Windows.System.Launcher.launchFileAsync(file) 这一切都很好。 但是,PDF还通过超链接相互引用。 我可以在最初生成PDF时将超链接修改为任何形式。 但是,如何使超链接在用户的默认PDF应用程序中打开时仍然相互引用。 同样
其中包含一个链接列表,每个链接都称为PDF。
PDF将本地存储在应用程序中。
目标是为Hololens(Windows AR)提供一个免提文档库
无论如何,我用以下方法打开PDF:
Windows.System.Launcher.launchFileAsync(file)
这一切都很好。但是,PDF还通过超链接相互引用。
我可以在最初生成PDF时将超链接修改为任何形式。
但是,如何使超链接在用户的默认PDF应用程序中打开时仍然相互引用。
同样,默认的PDF应用程序可以是任何内容。
这在Adobe Acobat for Windows中运行良好,
希望将此功能移植到UWP。
现行守则及工作守则:
window.onload = function () {
document.getElementById("#id").onclick = function (evt) {
pdfopen("pdf.pdf")
}
function pdfopen(pdf) {
var imageFile = "assets\\" + pdf;
// Get the image file from the package's image directory
Windows.ApplicationModel.Package.current.installedLocation.getFileAsync(imageFile).then(
function (file) {
// Launch the retrieved file using the default app
var options = new Windows.System.LauncherOptions();
Windows.System.Launcher.launchFileAsync(file)
}
);
感谢您的帮助
但是我怎样才能使超链接在用户默认的PDF应用程序中打开时仍然相互引用呢
当您使用launchFileAsync
方法而不使用launchoptions
时,它也将使用默认应用程序打开.pdf文件
如果设置“始终使用应用程序打开.pdf文件”,则应能够使用设置用于启动文件的目标包的包族名称。然后,您可以在中添加启动器选项
,以使用指定选项启动与指定文件关联的默认应用程序
例如,使用边缘打开.pdf文件:
var options = new Windows.System.LauncherOptions();
options.TargetApplicationPackageFamilyName = "Microsoft.MicrosoftEdge_8wekyb3d8bbwe";
Windows.System.Launcher.launchFileAsync(file, options).then(
function(success) {
if (success)
{
// File launched
}
else
{
// File launch failed
}
});
从应用程序启动特定PDF时,这很好。但是,如何从已发布的PDF中链接到其他PDF呢?这些是Adobe Javascript中的简单超链接。我无法像在应用程序中那样编写这些代码。我认为在这种情况下,Edge应用程序需要在其库中打包正确的PDF,才能使超链接正常工作?想法??你说的其他PDF的超链接是什么意思?PDF文件有一个默认的应用程序来打开它。在UWP中,您可以通过不更改默认应用的其他应用打开它。