Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Windows UWP应用程序中的本地PDF超链接_Javascript_Pdf_Hyperlink_Uwp_Hololens - Fatal编程技术网

Javascript Windows UWP应用程序中的本地PDF超链接

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应用程序中打开时仍然相互引用。 同样

我正在用javascript编写UWP应用程序。
其中包含一个链接列表,每个链接都称为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中,您可以通过不更改默认应用的其他应用打开它。