Как сгенерировать PDF со страницы .cfm в Mac - PullRequest
1 голос
/ 12 февраля 2010

Я использую <cfdocument> тег Coldfusion 7. Использую CFEclipse и работаю на MacOS. Я написал следующий код:

<cfdocument format="pdf">
 SitePoint.com - Introduction to ColdFusion 7
 PDF Generation
 This is an example of PDF generation using ColdFusion 7.
</cfdocument>

Но вместо того, чтобы попросить меня сохранить этот файл в формате .pdf, он пытается открыть его в формате .cfm. Как я могу сохранить его в формате .pdf? Спасибо!

Ответы [ 4 ]

8 голосов
/ 12 февраля 2010

Если вы не укажете обратное, веб-сервер возвращает результаты вызова CFM в виде текста.Вам необходимо использовать CFContent с CFHeader, чтобы предупредить браузер, что результаты, которые он будет получать, имеют другой тип.Что-то вроде:

<cfheader name="Content-Disposition" value="inline; filename=document.pdf"> 
<cfcontent type="application/x-pdf"> 
<cfdocument>...</cfdocument>

У меня там может быть неправильный тип MIME.Я делаю это по памяти.Проверьте документы для получения дополнительной помощи.

5 голосов
/ 12 февраля 2010

Если у вас CF8 или выше, используйте атрибут saveAsName:

<cfdocument saveAsName=""

Либо тот, либо метод, предложенный Беном выше, должен работать

1 голос
/ 23 апреля 2012

Вам также может понадобиться импортировать таблицу стилей. Таким образом, вы можете получить желаемое форматирование. Он должен быть импортирован после cfdocument.

 <cfdocument 
 format="pdf" 
 filename = "canwriteurfile.pdf"
 overwrite = "yes"
 marginBottom = ".2"
 marginLeft = ".4"
 marginRight = ".4"
 marginTop = ".2">

 <style type="text/css">@import "pdf.css";</style>

  BLAHHH BLAHHH PDF FORMATTING STUFF

 </cfdocument>
0 голосов
/ 14 февраля 2010

Попробуйте:

<cfdocument format="PDF" name="myPDF">
 <html>
  <body>
   SitePoint.com - Introduction to ColdFusion 7
   PDF Generation
   This is an example of PDF generation using ColdFusion 7.
  </body>
 </html>
</cfdocument>

<cfpdf action = "write" destination = "pdf_path" source = "myPDF" overwrite = "yes"/>

<cflocation url="pdf_path"/>

При этом вы сохраняете PDF на диск

...