Indesign Javascript 从服务器路径加载文件

Indesign Javascript load a file from serverpath

我对 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 并将 link 粘贴到文件中,然后它将文件下载到临时目录。

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

感谢您的帮助。

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

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

您可以使用 .toString().replace(/\/g, '/')

转换您的路径

同时尝试将文件路径中的空格替换为

CS 5.5 OSX 10.9

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

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

FWIW

洛伊克