Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / html2fpdf и его функция WriteHTML / 17 сообщений из 17, страница 1 из 1
18.06.2009, 13:07
    #36048161
Полуламер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Здравствуйте, знатоки PHP ! Интересно было бы узнать ваше мнение по поводу одной проблемы. На днях впервые познакомился с интересным инструментом, именуемом FPDF, а следовательно с не менее интресными модулями fpdf.php и html2fpdf.php. Собственно, только с их помощью и получилось сотворить PDF-файл по нажатии кнопки на форме, который более-менее отражает содержимое текущей страницы. Но - как всегда при пользовании бесплатного сыра возникают проблемы, это логично. В моем скрипте, по которому выполняется действие, такие строчки

Код: plaintext
1.
2.
$strContent=$_POST['foo']; // этот контент - исходный текст текущей страницы, передан из TEXTAREA
$pdf->WriteHTML($strContent);
$pdf->Output("sample.pdf");

Файл создается где положено, но выглядит он весьма и весьма криво: таблица в таблице не понимаются, всякие colspan/rowspan наглым образом игнорируются, картинки все сдвинуты влево, ни o каких шрифтах или стилях и речи нет и т.д. и т.п. Все понятно, есть куча команд, есть русский хелп для FPDF, но допустим, что у меня уже есть готовая страничка и нет никакого желания вносить элементы по отдельности? Ведь для чего-то в модуле html2fpdf.php прописали эту функцию WriteHTML, или это так, баловство и демонстрация, и ничего тут уже не изменишь? А ведь страница моя по содержанию не самая сложная. Можете поделиться своим мнением?
...
Рейтинг: 0 / 0
26.06.2009, 17:28
    #36062206
Полуламер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Неужто никому не интересно? Поделитесь хотя бы мнением, господа. Или все игнорируют темку, поскольку в начале [РНР] не написал? :=0 Ну извините, первый раз в этой ветке.
...
Рейтинг: 0 / 0
28.06.2009, 00:50
    #36063037
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Попробуйте посмотреть в сторону tcpdf, это более продвинутя ветка на основе fpdf. За WriteHTML не скажу ничего, не пробовал его юзать.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
27.09.2009, 13:45
    #36219214
Малефик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
css не поддерживается потомучто!
...
Рейтинг: 0 / 0
27.09.2009, 16:40
    #36219311
Frenzy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Zend_Pdf

_______________________________________
2pro4U :: твиттер
...
Рейтинг: 0 / 0
27.09.2009, 16:57
    #36219320
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Посмотрите dompdf: http://www.digitaljunkies.ca/dompdf

И ещё есть на питоне xhtml2pdf. Хорошо работает с таблицами и стилями. Без особых проблем можно запустить как GGI-скрипт (сама прога в принципе собирается в домашней директории с привилегиями пользователя). Ссылка: http://www.xhtml2pdf.com/
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
09.10.2014, 23:37
    #38772439
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Frenzy,

Не могу разобраться в английском на сайте Zend_pdf
У меня задача из страницы по кнопке сделать пдф файл, у кого уже получилось? Хелп
...
Рейтинг: 0 / 0
10.10.2014, 09:22
    #38772642
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
mPDF поддерживает css и довольно легкая в освоении.
...
Рейтинг: 0 / 0
10.10.2014, 16:24
    #38773448
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Ребят я недавно програмирую, поэтому всех тонкостей не знаю, пробую работать в mPDF только вот не пойму что на вход должно идти ? пробовал через форму что то отправлять - > мимо, в идеале по курсачу надо чтобы пользователь мог свою личную страницу за pdf-ить, типа страничку вк к примеру, если бы я програмировал сайт вк.

ТОБИШЬ:
У нас будет сайт где у пользователя есть личная страница, в которой есть некая инфа о нем его рейтинг график его резутьтатов. вот эту страничку, с графиками! и рейтингами. он должен иметь возможность экспортировать в pdf


Код: html
1.
2.
3.
4.
5.
6.
7.
<html>
 <form action="pdf.php" method="post">
    <p><b>Введите ваш отзыв:</b></p>
    <p><textarea rows="10" cols="45" name="text"></textarea></p>
    <p><input type="submit" value="Отправить"></p>
  </form>
</html>




Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<?php
$html = $_POST['submit']; 

include("mpdf.php");

$mpdf = new mPDF('utf-8', 'A4', '8', '', 10, 10, 7, 7, 10, 10); /*задаем формат, отступы и.т.д.*/
$mpdf->charset_in = 'cp1251'; /*не забываем про русский*/

$stylesheet = file_get_contents('style.css'); /*подключаем css*/
$mpdf->WriteHTML($stylesheet, 1);

$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($html, 2); /*формируем pdf*/
$mpdf->Output('mpdf.pdf', 'I');
?>
...
Рейтинг: 0 / 0
10.10.2014, 16:37
    #38773474
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Код: php
1.
$html = file_get_contents(<url страницы сользователя>); 
...
Рейтинг: 0 / 0
10.10.2014, 17:01
    #38773545
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Спасибо, что то вырисовывается в голове)

SharuPoNemnogu
Код: php
1.
$html = file_get_contents(<url страницы сользователя>); 
...
Рейтинг: 0 / 0
13.10.2014, 23:30
    #38775721
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Что получалось но как только вставил график highcharts
Все перестало в PDF выводиться, точнее выводится белый лист((


КОД СТРАНИЦЫ КОТОРУЮ НУЖНО ВЫВЕСТИ В ПДФ
Код: 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.
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>Highcharts Example</title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
		<style type="text/css">
${demo.css}
		</style>
		<script type="text/javascript">
$(function () {
    $('#container').highcharts({
        title: {
            text: 'Monthly Average Temperature',
            x: -20 //center
        },
        subtitle: {
            text: 'Source: WorldClimate.com',
            x: -20
        },
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
                'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },
        yAxis: {
            title: {
                text: 'Temperature (°C)'
            },
            plotLines: [{
                value: 0,
                width: 1,
                color: '#808080'
            }]
        },
        tooltip: {
            valueSuffix: '°C'
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
        },
        series: [{
            name: 'Tokyo',
            data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
        }, {
            name: 'New York',
            data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]
        }, {
            name: 'Berlin',
            data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
        }, {
            name: 'London',
            data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
        }]
    });
});
		</script>
	</head>
	<body>
  <p><img src="images/weekendy.png" alt="Письма мастера дзен"></p>
<script src="../../js/highcharts.js"></script>
<script src="../../js/modules/exporting.js"></script>
<div id="container" style="width: 510px; height: 400px; margin: 0 auto"></div>
	</body>
<div onclick="javascript:document.location.href='pdf.php'"> ПЕРЕВЕСТИ В PDF </div>
<video width="320" height="240" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
</html>









СТРАНИЦА ОБРАБОТКИ
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<?php
$html = file_get_contents("video.php");

include("mpdf.php");

$mpdf = new mPDF('utf-8', 'A4', '8', '', 10, 10, 7, 7, 10, 10); /*задаем формат, отступы и.т.д.*/
$mpdf->charset_in = 'cp1251'; /*не забываем про русский*/

$stylesheet = file_get_contents('style.css'); /*подключаем css*/
$mpdf->WriteHTML($stylesheet, 1);

$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($html, 2); /*формируем pdf*/
$mpdf->Output('mpdf.pdf', 'I');
?>
...
Рейтинг: 0 / 0
13.10.2014, 23:42
    #38775725
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Так, картинки выводятся теперь, ошибка была в коде) папки images не было))

но с граффиками пока бяда, работаю, над жтим если есть у кого советы, кто уже пробовал, напишите!



MALAY1Что получалось но как только вставил график highcharts
Все перестало в PDF выводиться, точнее выводится белый лист((


КОД СТРАНИЦЫ КОТОРУЮ НУЖНО ВЫВЕСТИ В ПДФ
Код: 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.
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>Highcharts Example</title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
		<style type="text/css">
${demo.css}
		</style>
		<script type="text/javascript">
$(function () {
    $('#container').highcharts({
        title: {
            text: 'Monthly Average Temperature',
            x: -20 //center
        },
        subtitle: {
            text: 'Source: WorldClimate.com',
            x: -20
        },
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
                'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },
        yAxis: {
            title: {
                text: 'Temperature (°C)'
            },
            plotLines: [{
                value: 0,
                width: 1,
                color: '#808080'
            }]
        },
        tooltip: {
            valueSuffix: '°C'
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
        },
        series: [{
            name: 'Tokyo',
            data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
        }, {
            name: 'New York',
            data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]
        }, {
            name: 'Berlin',
            data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
        }, {
            name: 'London',
            data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
        }]
    });
});
		</script>
	</head>
	<body>
  <p><img src="images/weekendy.png" alt="Письма мастера дзен"></p>
<script src="../../js/highcharts.js"></script>
<script src="../../js/modules/exporting.js"></script>
<div id="container" style="width: 510px; height: 400px; margin: 0 auto"></div>
	</body>
<div onclick="javascript:document.location.href='pdf.php'"> ПЕРЕВЕСТИ В PDF </div>
<video width="320" height="240" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
</html>









СТРАНИЦА ОБРАБОТКИ
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<?php
$html = file_get_contents("video.php");

include("mpdf.php");

$mpdf = new mPDF('utf-8', 'A4', '8', '', 10, 10, 7, 7, 10, 10); /*задаем формат, отступы и.т.д.*/
$mpdf->charset_in = 'cp1251'; /*не забываем про русский*/

$stylesheet = file_get_contents('style.css'); /*подключаем css*/
$mpdf->WriteHTML($stylesheet, 1);

$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($html, 2); /*формируем pdf*/
$mpdf->Output('mpdf.pdf', 'I');
?>
...
Рейтинг: 0 / 0
14.10.2014, 00:46
    #38775745
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
А вот так выглядит страница до обработки PDF
...
Рейтинг: 0 / 0
14.10.2014, 09:36
    #38775844
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Так у вас график формируется через JS, или вы хотите чтобы mpdf и js вам отрабатывал.
Тут либо делать скриншот страницы и выводить в pdf, либо брать сгенерированный js'ом кусок html со стилями и его пробовать выгружать в pdf.
...
Рейтинг: 0 / 0
14.10.2014, 12:28
    #38776078
MALAY1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
Хорошо, тогда подскажите как скрин вывести?

SharuPoNemnoguТак у вас график формируется через JS, или вы хотите чтобы mpdf и js вам отрабатывал.
Тут либо делать скриншот страницы и выводить в pdf, либо брать сгенерированный js'ом кусок html со стилями и его пробовать выгружать в pdf.
...
Рейтинг: 0 / 0
14.10.2014, 13:20
    #38776171
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
html2fpdf и его функция WriteHTML
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / html2fpdf и его функция WriteHTML / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]