Я делаю сайт в coldfusion8/mysql 5.0.88
с передним концом в JQuery Mobile. Я также использую плагин photoswipe.js, который позволяет масштабировать изображения и просматривать их в отдельном слое.Предотвращение утечки памяти при использовании cfimage и cfxml?
Для установки photoswipeable изображений, мне нужно вывести
<cfoutput>
<a class="swipeMe" rel="external" href="#variables.imageSrc#">
<img src="#variables.imageSrc#" class="adaptImg ui-li-thumb" />
</a>
</cfoutput>
Проблема imageSrc
поставляются пользователями, так что я должен взять/Validate/изменить размер изображения перед выводом его и мне нужна стезя изображение для фотографии.
я возился с этим на некоторое время и придумал следующее решение:
// read img from user specs
<cfimage name="myImage" source="#bildpfad##bilddateiname#" action="read" />
<cfif IsImage(myImage) is true>
// resize
<cfscript>
ImageSetAntialiasing(myImage,"on");
variables.breite = 400;
ImageScaleToFit(myImage, variables.breite,"", "highestPerformance");
</cfscript>
// write to xml, so I can get the path
<cfxml variable="imageXml">
<cfimage quality=".5" action="writetobrowser" source="#myImage#" class="adaptImg ui-li-thumb"/
</cfxml>
<cfset variables.imageSrc = imageXml.xmlRoot.xmlAttributes.src>
// output
<cfoutput>
<a class="swipeMe" rel="external" href="#variables.imageSrc#">#imageXml#</a>
</cfoutput>
</cfif>
В то время как это работает он довольно много киосков приложения и память, кажется, утечки, а также, потому что я теряю все больше и больше памяти, когда я запускаю это.
Вопрос:
Есть ли очевидная проблема с выше код вызывает утечку памяти? Я воображаю, что изображения записываются в какой-то временный каталог (CFFileservelet?) И остаются там, блокируя мою память. Если да, то какими будут альтернативные подходы к обработке этого при поиске изображений?
Спасибо!
Я не знаю, это относится к i, но атрибут класса не указан как допустимый атрибут в CFML do cs для тега CFIMAGE. Работает ли этот код, но висит? или просто повесить? – Dpolehonski
он работает. Я также устанавливаю 'id' и' title' и собственный атрибут 'data-xyz' помимо класса. Я где-то читал, что вы можете добавлять атрибуты в cfimage allright. Позвольте мне посмотреть, найду ли я ссылку. GOt it [здесь] (http://www.bennadel.com/blog/846-Styling-The-ColdFusion-8-WriteToBrowser-CFImage-Output.htm) – frequent