html2pdf
Ik heb een website waar ik graag van mijn html pagina een pdf bestand wil maken. Nu heb ik al uren zitten proberen via google te zoeken en heb ik verschillende dingen gevonden o.a.
http://html2fpdf.sourceforge.net/
Ik zie op de site dat deze prima werkt maar op het moment dat ik hem wil implementeren in mijn site en ik de documentatie bekijk ofja de bestanden die erbij staan kom ik er niet uit wat ik aan moet passen om hem te laten werken op mijn site.
Heeft iemand een site waar duidelijk uitgelegd staat voor een wat beginnende phper wat je moet doen om het werkend te krijgen want ik kom er helemaal niet meer uit.
Dit zou me erg op weg helpen als het zou werken. Alvast bedankt!!
Mvg,
Nils van Woensel
ja die site heb ik ook gezien en het bestand gedownload maar ik snap niet hoe ik hem moet implementeren ook niet echt een duidelijke handleiding staat daar
(ik heb em wel een beetje uitelkaar gehaald, maar de kern zit erin!)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?php
/**
* Runs the HTML->PDF conversion with default settings
*
* Warning: if you have any files (like CSS stylesheets and/or images referenced by this file,
* use absolute links (like http://my.host/image.gif).
*
* @param $path_to_html String path to source html file.
* @param $path_to_pdf String path to file to save generated PDF to.
*/
function convert_to_pdf($path_to_html, $path_to_pdf) {
/**
* Handles the saving generated PDF to user-defined output file on server
*/
class MyDestinationFile extends Destination {
/**
* @var String result file name / path
* @access private
*/
var $_dest_filename;
function MyDestinationFile($dest_filename) {
$this->_dest_filename = $dest_filename;
}
function process($tmp_filename, $content_type) {
copy($tmp_filename, $this->_dest_filename);
}
}
class MyFetcherLocalFile extends Fetcher {
var $_content;
function MyFetcherLocalFile($file) {
$this->_content = file_get_contents($file);
}
function get_data($dummy1) {
return new FetchedDataURL($this->_content, array(), "");
}
function get_base_url() {
return "";
}
}
$pipeline = PipelineFactory::create_default_pipeline("", // Attempt to auto-detect encoding
"");
// Override HTML source
$pipeline->fetchers[] = new MyFetcherLocalFile($path_to_html);
// Override destination to local file
$pipeline->destination = new MyDestinationFile($path_to_pdf);
$baseurl = "";
$media = Media::predefined("A4");
$media->set_landscape(false);
$media->set_margins(array('left' => 0,
'right' => 0,
'top' => 0,
'bottom' => 0));
$media->set_pixels(1024);
global $g_config;
$g_config = array(
'cssmedia' => 'screen',
'renderimages' => true,
'renderlinks' => true,
'renderfields' => false,
'renderforms' => false,
'mode' => 'html',
'encoding' => '',
'debugbox' => false,
'pdfversion' => '1.5',
'draw_page_border' => false
);
global $g_px_scale;
$g_px_scale = mm2pt($media->width() - $media->margins['left'] - $media->margins['right']) / $media->pixels;
global $g_pt_scale;
$g_pt_scale = $g_px_scale * 1.43;
$pipeline->process($baseurl, $media);
}
convert_to_pdf($new_file, '../pdf_out/'.$userid.'-'.$datetime.'.pdf');
return $pdf_path = array('../pdf_out/'.$userid.'-'.$datetime.'.pdf',$fact_nummer);
}
?>
/**
* Runs the HTML->PDF conversion with default settings
*
* Warning: if you have any files (like CSS stylesheets and/or images referenced by this file,
* use absolute links (like http://my.host/image.gif).
*
* @param $path_to_html String path to source html file.
* @param $path_to_pdf String path to file to save generated PDF to.
*/
function convert_to_pdf($path_to_html, $path_to_pdf) {
/**
* Handles the saving generated PDF to user-defined output file on server
*/
class MyDestinationFile extends Destination {
/**
* @var String result file name / path
* @access private
*/
var $_dest_filename;
function MyDestinationFile($dest_filename) {
$this->_dest_filename = $dest_filename;
}
function process($tmp_filename, $content_type) {
copy($tmp_filename, $this->_dest_filename);
}
}
class MyFetcherLocalFile extends Fetcher {
var $_content;
function MyFetcherLocalFile($file) {
$this->_content = file_get_contents($file);
}
function get_data($dummy1) {
return new FetchedDataURL($this->_content, array(), "");
}
function get_base_url() {
return "";
}
}
$pipeline = PipelineFactory::create_default_pipeline("", // Attempt to auto-detect encoding
"");
// Override HTML source
$pipeline->fetchers[] = new MyFetcherLocalFile($path_to_html);
// Override destination to local file
$pipeline->destination = new MyDestinationFile($path_to_pdf);
$baseurl = "";
$media = Media::predefined("A4");
$media->set_landscape(false);
$media->set_margins(array('left' => 0,
'right' => 0,
'top' => 0,
'bottom' => 0));
$media->set_pixels(1024);
global $g_config;
$g_config = array(
'cssmedia' => 'screen',
'renderimages' => true,
'renderlinks' => true,
'renderfields' => false,
'renderforms' => false,
'mode' => 'html',
'encoding' => '',
'debugbox' => false,
'pdfversion' => '1.5',
'draw_page_border' => false
);
global $g_px_scale;
$g_px_scale = mm2pt($media->width() - $media->margins['left'] - $media->margins['right']) / $media->pixels;
global $g_pt_scale;
$g_pt_scale = $g_px_scale * 1.43;
$pipeline->process($baseurl, $media);
}
convert_to_pdf($new_file, '../pdf_out/'.$userid.'-'.$datetime.'.pdf');
return $pdf_path = array('../pdf_out/'.$userid.'-'.$datetime.'.pdf',$fact_nummer);
}
?>
Betekend het nu dat ik op mijn pagina verzendbrief.php een include moet maken naar dit bestand met de 2 variable erin?
Dus :
$path_to_html=("verzendbrief.php");
$path_to_pdf=("c:\files");
include("pdf.php");
of begrijp ik het verkeerd?
alvast bedankt
als ik dit doe en verzendbrief.php aanroep krijg ik de volgende foutmelding
Parse error: parse error, unexpected '}' in C:\Documents and Settings\nvw\Bureaublad\programms\xampp\htdocs\pdf.php on line 88
Gewijzigd op 01/01/1970 01:00:00 door Nils
Je roept eerst het bestand aan waar de Class in staat.
require_once(pdf.php)
Dan creeer en/of extend(dit als je functies wilt aanpassen) je de class.
Dan voer je de functie uit convert_to_pdf.
Het is voor mij ook al een tijdje geleden dat ik deze geimplementeerd heb, maar de documentatie heeft mij toen erg geholpen...
Ik begrijp jou code ook niet helemaal. Als je het pdf.php script aanroept dan voer je toch ook gelijk de convert uit ??
en de class wat bedoel je daar precies mee?
www.php.net en lees de handleiding, als je dat doorhebt kun je al een hoop :)
verdiep je eens in 'functies'.. Quote:
ja ik heb de documentatie ook doorgelezen maar daar begreep ik eigenlijk niet veel van.
1) Begin opnieuw met lezen
2) Ga testen met de voorbeelden (vergeet dus even wat jouw huidige doel is)
3) Ga begrijpen wat er allemaal gebeurt en wat je nodig hebt
4) Ga terug naar jouw doel en ga e.e.a. zo maken dat jouw systeem er mee over weg kan.
Maar begin dus met leren.