Advertisement
Guest User

Untitled

a guest
May 22nd, 2015
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. <?php
  2. $outfilename = '';
  3. $input = 'input.pdf';
  4.  
  5. try {
  6. $p = new PDFlib();
  7. $p->set_option('errorpolicy=return');
  8. #$p->set_option('usehostfonts=false'); // for Mac
  9. $p->set_option('stringformat=utf8');
  10. $p->set_option('searchpath={{' . dirname(__FILE__) . '/data' . '}}');
  11.  
  12. $options = 'compatibility=1.7 masterpassword=service permissions={nohiresprint noassemble}';
  13.  
  14. if ($p->begin_document($outfilename, $options) == 0) {
  15. die('Error: ' . $p->get_errmsg());
  16. }
  17.  
  18. $p->set_info('Creator', 'pdf creator');
  19. $p->set_info('Title', 'pdf title');
  20.  
  21. $font = $p->load_font('KozGoPro-Medium', 'unicode', 'embedding');
  22. if ($font == 0) {
  23. die('Error: ' . $p->get_errmsg());
  24. }
  25.  
  26. {
  27. $indoc = $p->open_pdi_document($input, '');
  28. if ($indoc == 0) {
  29. echo 'Error: ' . $p->get_errmsg() . "\n";
  30. exit;
  31. }
  32. $endpage = $p->pcos_get_number($indoc, 'length:pages');
  33.  
  34. for ($pageno=1; $pageno<=$endpage; $pageno++) {
  35. $page = $p->open_pdi_page($indoc, $pageno, '');
  36.  
  37. if ($page == 0) {
  38. die('Error: ' . $p->get_errmsg());
  39. continue;
  40. }
  41.  
  42. #$pageWidth = $p->pcos_get_number($indoc, 'pages[' . ($pageno - 1) . ']/width');
  43. $pageHeight = $p->pcos_get_number($indoc, 'pages[' . ($pageno - 1) . ']/height');
  44.  
  45. // Dummy $page size; will be adjusted later
  46. $p->begin_page_ext(10, 10, '');
  47.  
  48. // Create a bookmark with the file name
  49. if ($pageno == 1) {
  50. $p->create_bookmark($input, '');
  51. }
  52.  
  53. $p->setfont($font, 13);
  54. $p->set_text_pos(0, $pageHeight - 13);
  55. $p->show('stamp on the page top');
  56.  
  57. $p->fit_pdi_page($page, 0, 0, 'adjustpage');
  58. $p->close_pdi_page($page);
  59. $p->end_page_ext('');
  60. }
  61. $p->close_pdi_document($indoc);
  62. }
  63.  
  64. $p->end_document('');
  65. $buf = $p->get_buffer();
  66. $len = strlen($buf);
  67.  
  68. #header('Content-type: application/pdf');
  69. #header('Content-Length: '. $len);
  70. #header('Content-Disposition: inline; filename=output.pdf');
  71. #echo $buf;
  72. file_put_contents('output.pdf', $buf);
  73. }
  74. catch (Exception $e) {
  75. throw $e;
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement