Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 26 апр 2024, 19:54

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 19 авг 2012, 17:54 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Доброго дня!
Совсем недавно реализовал выгрузку в PDF с помощью замечательной библиотеки mPDF. Это был не kohana, и структура создания файла была следующей:
Код:
require_once ('mpdf/mpdf.php'); # подцепляем главный файл mPDF
$mpdf = new mPDF('utf-8', 'A4', '8', '', 10, 10, 7, 7, 10, 10); #задаем формат, отступы и.т.д.
$mpdf->charset_in = 'utf8'; #не забываем про русский
$stylesheet = file_get_contents('css/style.css'); # подцепляем стили
$mpdf->WriteHTML($stylesheet,1);
$html = 'Это текст, который отобразиться в PDF-файле';
$mpdf->list_indent_first_level = 0;
$mpdf->WriteHTML($html,2,TRUE, TRUE); /*формируем pdf*/
$mpdf->Output('actDoer.pdf', 'I');


На кохане я решил сделать след. образом:
в экшн контроллера я вставил след:
Код:
public function action_print_act() {
        require Kohana::find_file('views', 'plugin/mpdf/mpdf');
        $mpdf = new mPDF('utf-8', 'A4', '8', '', 10, 10, 7, 7, 10, 10); /*задаем формат, отступы и.т.д.*/
        $mpdf->charset_in = 'utf8'; /*не забываем про русский*/
        $stylesheet = Kohana::find_file('views', 'css/style.css');
        $mpdf->WriteHTML($stylesheet,1);
        $html = 'Это текст, который отобразиться в PDF-файле';
        $mpdf->list_indent_first_level = 0;
        $mpdf->WriteHTML($html,2,TRUE, TRUE); /*формируем pdf*/
        $mpdf->Output('actDoer.pdf', 'I');
}


В ответ мне приходит ответ:
Цитата:
%PDF-1.4
%����
3 0 obj
<</Type /Page
/Parent 1 0 R
/MediaBox [0 0 595.280 841.890]
/TrimBox [0.000 0.000 595.280 841.890]
/Resources 2 0 R
/Group << /Type /Group /S /Transparency /CS /DeviceRGB >>
/Contents 4 0 R>>
endobj
4 0 obj
<</Filter /FlateDecode /Length 105>>
stream
x�S0R��2�353W(�r
Q�w3T��300PISp
�2�ӹ
 ,�"# =c3 Cc=K#s��
C#c�T�jW�hs��4��+:V�@!� ��'
endstream
и т.д.


Не могу понять в чем дело, гугль по этому поводу молчит((


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 19 авг 2012, 21:20 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
А что тут понимать?
Заголовки передаваемые серверу в данный момент покажите


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 06:58 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Код:
[b]Заголовки ответа[/b]
Cache-Control   public, must-revalidate, max-age=0
Connection   Keep-Alive
Content-Disposition   inline; filename="actDoer.pdf"
Content-Encoding   gzip
Content-Length   13201
Content-Type   text/html; charset=utf-8
Date   Mon, 20 Aug 2012 01:51:49 GMT
Expires   Sat, 26 Jul 1997 05:00:00 GMT
Keep-Alive   timeout=5, max=96
Last-Modified   Mon, 20 Aug 2012 01:51:50 GMT
Pragma   public
Server   Apache/2.2.22 (Ubuntu)
Vary   Accept-Encoding
X-Powered-By   PHP/5.3.10-1ubuntu3.2


Код:
[b]Заголовки запроса[/b]
Accept   */*
Accept-Encoding   gzip, deflate
Accept-Language   ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Connection   keep-alive
Content-Length   8
Content-Type   application/x-www-form-urlencoded; charset=UTF-8
Cookie   session=hulguene3o0n8r2lp5emaljak2
Host   localhost:5060
Referer   http://localhost:5060/page
User-Agent   Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1
X-Requested-With   XMLHttpRequest


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 13:40 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
Ну. Всё ещё не понятно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 14:14 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Нет к сожалению(
Направь меня в верном направлении, если не затруднит...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 15:07 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
$this->request->headers('Content-Type', 'application/pdf');

http://kohanaframework.org/3.2/guide/ap ... st#headers


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 21:51 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Посмотрел документацию... сделал как ты сказал. Получил в ответе:
Заголовки ответа
Код:
Cache-Control   public, must-revalidate, max-age=0
Connection   Keep-Alive
Content-Disposition   inline; filename="actDoer.pdf"
Content-Type   application/pdf
Date   Mon, 20 Aug 2012 16:45:25 GMT
Expires   Sat, 26 Jul 1997 05:00:00 GMT
Keep-Alive   timeout=5, max=97
Last-Modified   Mon, 20 Aug 2012 16:45:25 GMT
Pragma   public
Server   Apache/2.2.22 (Ubuntu)
Transfer-Encoding   chunked
X-Powered-By   PHP/5.3.10-1ubuntu3.2


"Content-Type" теперь тот, что надо, но pdf файл все равно не формируется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 20 авг 2012, 22:03 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
А чё на выходе получается?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 21 авг 2012, 01:20 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Да ответ приходит тот же:
Код:
%PDF-1.4
%����
3 0 obj
<</Type /Page
/Parent 1 0 R
...
...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выгрузка в PDF с помощью MPDF
СообщениеДобавлено: 24 авг 2012, 11:02 
Не в сети
Зеленый

Зарегистрирован: 19 авг 2012, 17:43
Сообщения: 7
Интересно, а может быть причиной сему то, что я pdf формирую посредством ajax?
Т.е. по сути я к экшену контроллера, который формирует мне pdf, обращаюсь ассинхронно. Т.е по сути ответ мне должен придти в определенное место html-разметки. И возможно потому и приходит в таком виде.
Как думаете? просто не смог накопать в интернете...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group