INCLUDEPICTURE 字段内的相对路径有时会以某种方式更改为绝对路径

问题描述 投票:0回答:2

当我在 INCLUDEPICTURE 字段中使用相对路径时,有时它会自动更改为绝对路径。

Before:
   {INCLUDEPICTURE  ".\\img\\TEST_01.png" \d  \* MERGEFORMAT}

After:
   {INCLUDEPICTURE  "c:\\test\\img\\TEST_01.png" \d  \* MERGEFORMAT}

请告诉我原因以及如何避免这种情况。我想链接到子文件夹中的图像文件。

ms-word
2个回答
2
投票

尽管您尝试通过省略其中一些路径来使路径相对,但它仍然是绝对的。为了使路径以真正相对的方式运行,您需要使用 FILENAME 字段,因此:

{INCLUDEPICTURE "{FILENAME \p}/../Image.png"}

{INCLUDEPICTURE "{FILENAME \p}\\..\\Image.png"}

其工作原理:FILENAME p 字段提取当前文件的名称和路径。下面的“\..\”或“/../”告诉 Word 忽略文件名并仅获取路径。然后您需要做的就是添加源文件的名称和扩展名。

可以扩展相同的方法来实现某种形式的相对寻址。例如:

{INCLUDEPICTURE "{FILENAME \p}\\..\\My Pictures\\Image.png"}

查看名为“我的图片”的子文件夹并:

{INCLUDEPICTURE "{FILENAME \p}\\..\\..\\Image.png"}

查看父文件夹,同时:

{INCLUDEPICTURE "{FILENAME \p}\\..\\..\\My Pictures\\Image.png"}

查看父文件夹,然后查看其名为“我的图片”的子文件夹(可以说是同级文件夹)。

注意: 您可以通过添加所需的任意多组“\..\”来向下浏览文件树,但您必须给出明确的文件夹名称才能导航备份。


0
投票

如果

MERGEFORMAT
未出现在字段代码中或被
MERGEFORMATINET
替换,则保留相对路径。即使您保存、关闭并重新打开文件,后一个开关也不会更改。所以在你的情况下使用

{ INCLUDEPICTURE  ".\\img\\TEST_01.png" \d  \* MERGEFORMATINET }

{ INCLUDEPICTURE  ".\\img\\TEST_01.png" \d  }
© www.soinside.com 2019 - 2024. All rights reserved.