2

我在cfdocument. 我尝试了几种不同的选项,但没有运气(请参阅下面的测试代码)。

似乎cfdocument承认那里有一个图像文件,因为表格单元格的大小发生了变化。然而它仍然不显示图像的内容。我将不胜感激任何帮助。

    <cfdocument format="PDF" localURL = "yes">
    <p style="background-color:#006633">

    <table border="1">
    <tr><td><cfoutput>
            output from "file:///#ExpandPath('CEUCertificate_ABondy3.jpg')#" 
            </cfoutput>
        </td>
        <td style="background-color:white">
        <cfoutput>
           <image src="file:///#ExpandPath('CEUCertificate_ABondy3.jpg')#"> 
        </cfoutput>
        </td>
    </tr>
    <tr><td><cfoutput> output from #ExpandPath('CEUCertificate_ABondy3.jpg')#  </cfoutput> </td>
        <td>
        <cfoutput>
            <image src="#ExpandPath('CEUCertificate_ABondy3.jpg')#"> 
        </cfoutput>
        </td>
    </tr>
    <tr><td style="background-color:red">
            Output from: img src="CEUCertificate_ABondy3.jpg"
        </td>
        <td style="background-color:red"> 
            <img src="CEUCertificate_ABondy3.jpg"/>
        </td>
    </tr>
    <tr>
        <td style="background-color:white">
            output from image src="CEUCertificate_ABondy3.jpg"
        </td>
        <td>
            <cfoutput>
            <image src="CEUCertificate_ABondy3.jpg">
            </cfoutput>
    </tr>
    <tr>
        <td>Output from local url</td>
        <td>
             <cfoutput>
             <img src=#localUrl("CEUCertificate_ABondy3.jpg")#>
             </cfoutput>
        </td>
    </tr>
    </table>
    </p>
    </cfdocument>

    <cffunction name="localUrl" >
      <cfargument name="file" />

      <cfset var fpath = ExpandPath(file)>
      <cfset var f="">
      <cfset f = createObject("java", "java.io.File")>
      <cfset f.init(fpath)>

      <cfreturn f.toUrl().toString()>
    </cffunction>
4

2 回答 2

1

对于您的第一个问题,您需要像cfdocument处理任何其他 HTML 页面一样引用标签中的图像;<img src="url-to-the-image" />. 所以这应该适合你。

<img src="/cde/mobileweb/CEUCertificate_ABondy3.jpg"/>

现在您已经进行了更改,页面正在超时。这可能是由于图像是如何创建的。 在这里看到这个页面。我在这里从查理的页面找到的

尝试在编辑器中打开该图像并重新保存。然后看看处理时间是否减少。

我在Ben Nadel 的博客上找到了更多关于此的讨论。

于 2013-05-14T20:20:36.167 回答
0

与其搞乱ExpandPath()and file://,不如将其编码为普通的 html 并确保它首先工作。然后localUrl="true"在你的<cfdocument>

于 2013-05-14T19:58:53.883 回答