Изображение не разрешается на стороне презентации

У нас есть изображение с именем файла "Tim%20Butler%20Trading.jpg". Это изображение связано как ссылка компонента в поле «Изображение» основного компонента. В C# DLL мы читаем это поле «Изображение» и формируем тег изображения следующим образом:

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

где стиль — это имя атрибута, если оно есть, а imageID — идентификатор tcm мультимедийного компонента.

Выходная строка формируется из изображения, заголовка и некоторых других значений полей из компонента. Этот вывод помещается в пакет для доступа к нему в dwt. ContentType выходной строки, переданной в dwt, — «HTML».

Мы используем DefaultFinishActions для публикации изображений. Это изображение развертывается на сервере презентации как Tim%20Butler%20Trading34-13565.jpg, но не обрабатывается на стороне презентации.

В исходной странице тег изображения формируется следующим образом:

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

Мы думаем, что DWT преобразует % в имени файла изображения в %25 при публикации изображения.

Может ли кто-нибудь сообщить мне, как решить эту проблему?


person user1517450    schedule 22.10.2012    source источник
comment
Тег исходного изображения страницы не виден в вашем сообщении!   -  person Quirijn    schedule 22.10.2012


Ответы (2)


Проблема в знаке %. Когда шаблон видит знак %, он кодирует его как %25.

Все, что вам нужно сделать, это перестать кодировать его самостоятельно. Если ваш шаблон выводит Tim Butler Trading.jpg, шаблон dreamweaver будет кодировать пробелы как %20, и все должно работать

person Andrey Marchuk    schedule 22.10.2012
comment
Не согласен, я боюсь; посмотрите на имя файла в файловой системе на сервере презентаций! Знаки % явно присутствуют в самом имени файла, что означает, что URL-адрес, который он имеет в источнике на стороне клиента, кажется правильным представлением с учетом имени файла. - person Bjørn van Dommelen; 29.10.2012

Когда изображение загружается в Tridion, убедитесь, что имя файла не содержит символов %.

Тим%20Батлер%20Трейдинг34-13565.jpg

должно быть

Тим Батлер Трейдинг34-13565.jpg

когда вы загружаете его в Tridion из вашей локальной системы.

Это основано на предположении, что вы не добавляете TCMID к имени файла во время публикации (часть 34-13565 имеет те же данные и почти тот же формат, что и TCMURI...).

person Bjørn van Dommelen    schedule 29.10.2012