2013-05-14 2 views
2

У меня возникли проблемы с отображением изображений в пределах cfdocument. Я попробовал несколько разных вариантов без удачи (см. Тестовый код ниже).CFDocument Images

Кажется, что 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> 
+1

Что произойдет, если вы используете ''? –

+0

Сколько бара вы выделили для экземпляра CF? Вы пытались его увеличить? – Henry

+0

Генри, у меня нет контроля над ним. –

ответ

0

Вместо того, чтобы возиться с ExpandPath() и file://, код как обычный HTML и убедитесь, что он работает первым. Затем используйте localUrl="true" в вашем <cfdocument>

+0

Он также используется в моем коде. Ничего не появляется. –

+0

@JanuszChudzynski, что из-за того, как 'cfdocument' работает с изображениями. Ваш код ищет изображение в корневом каталоге, и его нет. Вы попробовали пример из моего комментария? –

+0

Да. И я получаю следующую ошибку: Содержимое этого процесса документа занимает более 60000 миллисекунд для обработки. –

1

Для вашего первоначального вопроса вам необходимо ссылаться на изображения в вашем теге cfdocument так же, как и на любой другой HTML-странице; <img src="url-to-the-image" />. Так что это должно сработать для вас.

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

Теперь, когда вы сделали это изменение, страница выберет время. Вероятно, это связано с тем, как было создано изображение. See this page here. Который я нашел от Charlie's page here.

Попробуйте открыть это изображение в редакторе и повторно сохранить его. Затем посмотрите, уменьшается ли время обработки.

Об этом я узнал по телефону Ben Nadel's blog here.

+0

Спасибо! Я попытался сохранить и даже изменить размер уже, но я попробую еще раз с другим редактором. –

+0

Я не смог заставить его работать. Я использовал библиотеку mpdf для создания pdf. –

+0

Если вы нашли другое решение своей проблемы, разместите его как ответ на вопрос, чтобы другие могли находить его легче, чем в этих комментариях. Рад, что вы его работали. –

Смежные вопросы