【问题标题】:Indesign Javascript load a file from serverpathIndesign Javascript 从服务器路径加载文件
【发布时间】:2015-09-02 08:11:15
【问题描述】:

我对 Indesign 有疑问。 我有一个文档,我想在其中以编程方式添加图片。 当我在本地驱动器上使用图片时,这很容易。但我想从服务器路径添加图片,如 \myserver\pictures\pic.jpg

我试过了,就像我从本地驱动器添加图片一样

var f = new File("\\myserver\pictures\pic.jpg");
imgPicture.place(f, false);

那么f中的值为

//myserver/pictures/pic.jpg 

我围绕它构建了一个 try catch。 errorMessage 未定义。 当我使用网络驱动器号时,我得到了同样的错误,比如

/x/pictures/pic.jpg

正如我在文件对象的文档中看到的,路径只有一个字符串参数。

有解决办法吗? 在另一个论坛上,我发现了一个线程,其中有人遇到了同样的问题。但是他做了一个肮脏的方法来解决它。他做了一个fileOpenDialog并将链接粘贴到文件中,然后将文件下载到临时目录。

我不能这样做,因为我的服务器上有大约 100,000 张图片。

感谢您的帮助。

【问题讨论】:

    标签: javascript adobe adobe-indesign


    【解决方案1】:

    您的另一个问题可能是反斜杠可能被解释为转义字符,从而导致类似:\myserverpicturespic.jpg" 所以您可能需要转义转义字符,例如:"\\myserver\pictures\pic.jpg"然后传递这个字符串。最后,当我对文件路径有疑问时,我通常会使用这段代码:

    var f = File.openDialog();
    if ( f ) $.writeln ( f.fsName );

    FWIW

    洛伊克

    【讨论】:

    • 我自己解决了。我们的 DNS 的名称有问题,所以我获取了 IP 并且 tada 它可以工作 字符串现在是:\\192.168.20.24\pictures\pic.jpg 我忘记检查文件是否存在。感谢您的回复。
    【解决方案2】:

    我不能像你那样用正斜杠得到 f 的值。我尝试了您的代码,如果我将文件路径作为

    传递,它对我来说很好
    var f = new File("//myserver/pictures/pic.jpg");
    

    您可以使用 .toString().replace(/\/g, '/') 转换路径

    同时尝试用

    替换文件路径中的空格

    CS 5.5 OSX 10.9

    【讨论】:

      猜你喜欢
      • 2020-10-27
      • 1970-01-01
      • 1970-01-01
      • 2019-09-04
      • 2021-11-20
      • 1970-01-01
      • 2011-05-18
      • 1970-01-01
      • 2020-11-24
      相关资源
      最近更新 更多