Category :
ColdFusion
Comments :
댓글쓰기
Posted by
장창학
at
2:12 AM
Adobe Coldfusion 8에서는 매우 유용하면서도 편리한 Presentation을 동적으로 제작해 주는 <cfpresentation>태그를 지원하여 Flash 기반의 깔끔한 웹프리젠테이션을 만들어 줍니다. 간단한 태그로만 이루어져 있지만 사진(JPG, PNG 등), 음성(MP3 등), 비디오(FLV)를 로드하여 멀티미디어 프리젠테이션도 만들 수 있습니다.

그런데, 이러한 강력한 기능은 오로지 Adobe Coldfusion 8에서만 지원합니다. 그렇다면 자신의 PC에 깔려 있는 테스트용 Coldfusion 서버에서 이러한 프리젠테이션을 제작해보고 그대로 끝내야 할까요?
절대로 그렇지 않습니다. 기본적으로 <cfpresentation>태그로 동적인 프리젠테이션을 생성하면, Coldfusion의 설치디렉토리안의 tmpCache안의 CFFileServlet 디렉토리안에 캐시된 형태로 swf파일 등이 저장되어집니다.

이 캐시된 파일을 가져다가 다른 곳에서 사용하면 되는데, 문제는 Codlfusion서버가 재시작되거나 또는 실제 프리젠테이션이 종료되어 사용자가 브라우저를 닫아버리는 경우 캐시가 삭제될 수 있습니다.
다음의 코드로서 임시로 캐시된 파일을 실제 프리젠테이션 파일이 있는 곳에 임시디렉토리를 만들고 그 안에 저장해 봅시다.
<cfscript>
preso=structNew();
preso.title = "콜드퓨전웹프리젠테이션";
preso.controlLocation = "left";
preso.directory = "cache";
</cfscript>
<cfif not directoryExists(preso.directory)>
<cfdirectory action="create" directory="#preso.directory#">
</cfif>
<cftry>
<!--- 이 부분에 CFPRESENTATION 및 CFPRESENTER, CFPRESENTATIONSLIDE 내용 기술 --->
<cfpresentation attributeCollection="#preso#">
<cfpresenter name="이영아" title="귀여운탤런트" email="test@test.com" image="lee.jpg">
<cfpresenter name="김태희" title="이쁜탤런트" email="test@test.com" image="kim.jpg">
<cfpresenter name="한지민" title="참한탤런트" email="test@test.com" image="han.jpg">
<cfpresentationslide title="이영아 발표" presenter="이영아">
<h3>Sample 슬라이드 1</h3>
<ul>
<li>Coldfusion Web Presentation</li>
<li>CFPRESENTATION 태그</li>
<li>CFPRESENTER 태그</li>
<li>CFPRESENTATIONSLIDE 태그</li>
</ul>
</cfpresentationslide>
<cfpresentationslide title="김태희 발표" presenter="김태희">
<h3>Sample 슬라이드 2</h3>
<ul>
<li>Coldfusion Web Presentation</li>
<li>CFPRESENTATION 태그</li>
<li>CFPRESENTER 태그</li>
<li>CFPRESENTATIONSLIDE 태그</li>
</ul>
</cfpresentationslide>
<cfpresentationslide title="한지민 발표" presenter="한지민">
<h3>Sample 슬라이드 3</h3>
<ul>
<li>Coldfusion Web Presentation</li>
<li>CFPRESENTATION 태그</li>
<li>CFPRESENTER 태그</li>
<li>CFPRESENTATIONSLIDE 태그</li>
</ul>
</cfpresentationslide>
</cfpresentation>
<cfcatch>
<!--- 캐시 디렉토리 및 파일이 이미 존재하는 경우 --->
<cfif not findNoCase("파일작성실패",cfcatch.message)>
<cfdump var="#cfcatch#">
<cfabort>
</cfif>
</cfcatch>
</cftry>
자, 이제 임시디렉토리안의 파일들을 그대로 다른 홈페이지 등에 업로드하여 프리젠테이션을 할 수 있습니다. 실제로 위 소스를 Coldfusion에서 실행하면 다음과 같이 나타납니다(실제 아래 URL은 캐시된 파일을 다른 곳에 업로드하여 보여주는 것입니다.).
사실 <cfpresentation>태그로 생성되는 웹 프리젠테이션은 Adobe Acrobat 9에 포함된 Adobe Presenter 이라는 프로그램과 동일합니다. 다만, Coldfusion에서는 CFML언어로 동적으로 생성하는 것이라면, Presenter는 사용자의 PC에 설치하여 Microsoft Powerpoint에 Add-in하여 생성하는 것의 차이점만 있을 뿐 입니다.
첨부파일 다운로드 : webpr.zip

|


ColdFusion (74)
Comments