5

我们有一个文件名为“ Tim%20Butler%20Trading.jpg ”的图像。此图像在主组件的“图像”字段中作为组件链接链接。在 C# DLL 中,我们读取此“图像”字段并形成图像标记,如下所示:

"<img " + style + " src=\"" + imageID + "\" />" 

其中 style 是属性名称(如果有),imageID 是多媒体组件的 tcm id。

输出字符串由组件中的图像、标题和其他一些字段值形成。此输出被推送到包中以在 dwt 中访问它。传递给 dwt 的输出字符串的 contentType 是“HTML”。

我们正在使用 DefaultFinishActions 发布图像。此图像作为Tim%20Butler%20Trading34-13565.jpg部署在演示服务器上,但在演示端未得到解决。

在页面源图像标签形成如下:

<img src="/images/Tim%2520Butler%2520Trading34-13565.jpg"  class="img" />

我们认为 DWT在发布图像时将图像文件名中的 % 转换为% 25

有人可以让我知道如何解决这个问题吗?

4

2 回答 2

6

问题出在%符号上。当模板看到%符号时,它会将其编码为%25.

您需要做的就是停止自己编码。如果您的模板将输出Tim Butler Trading.jpg,dreamweaver 模板会将空格编码为%20并且everyhting 应该可以工作。

于 2012-10-22T13:41:56.037 回答
0

将图像上传到 Tridion 时,请确保文件名不包含 % 字符。

Tim%20Butler%20Trading34-13565.jpg

应该

Tim Butler Trading34-13565.jpg

当您从本地系统将其上传到 Tridion 时。

这是基于您在发布期间没有将 TCMID 添加到文件名的假设(34-13565 部分具有与 TCMURI 相同的数据和几乎相同的格式......)。

于 2012-10-29T11:05:19.727 回答