让用户下载pdf而不是保存到某个位置

时间:2010-04-05 07:39:32

标签: php html pdf pdf-generation

我正在尝试以下代码,它实际上将pdf文件保存到C:/ xampp / 我想创建一个链接,以便在用户点击它时。它会提示它保存pdf文件。

<?php  
// create handle for new PDF document  
$pdf = pdf_new();  

// open a file  
pdf_open_file($pdf, "try1.pdf");  

// start a new page (A4)  
pdf_begin_page($pdf, 595, 842);  
pdf_set_parameter($pdf, 'FontOutline',

'Arial=c:\windows\fonts\arial.ttf');
// get and use a font object  
$font = pdf_findfont($pdf, "Arial", "host", 1); 

pdf_setfont($pdf, $font, 10);  

// print text  
pdf_show_xy($pdf, "There are more things in heaven and earth, Horatio,", 50, 750); 
pdf_show_xy($pdf, "than are dreamt of in your philosophy", 50, 730);  

// add an image under the text  
//$image = pdf_open_image_file($pdf, "jpeg", "shakespeare.jpg"); pdf_place_image($pdf, $image, 50, 650, 0.25);  

// end page  
pdf_end_page($pdf);  

// close and save file  
pdf_close($pdf);  
?>

2 个答案:

答案 0 :(得分:1)

而不是pdf_close()使用pdf_get_buffer() and pdf_delete()

答案 1 :(得分:0)

问题和标题似乎并不匹配,但您可能正在寻找Content-Disposition标题。当您使用PDF等资源发送该标头时,您建议浏览器如何处理资源 - 将其保存到文件或内联呈现(例如,在窗口中)。

例如,建议浏览器提供在本地保存文件:

Content-Disposition: attachment; filename=foo.pdf

而建议它应该尝试内联呈现内容:

Content-Disposition: inline; filename=foo.pdf

浏览器仍然可以做任何想做的事情,但主要的浏览器都会提示。