Работаем с PDF в Delphi
Для этого мы будем использовать компоненты Rave.
Итак, создаем приложение и сразу бросаем на форму 2 компонента с закладки Rave : RvNDRWriter, RvRenderPDF, а также Button(вкладка Standart).
Теперь после ключевого слова private объявляем переменную:
reportdata: TMemoryStream; // Создаем поток данных
Создаем событие OnClick для Button1 и напишем следующее:
reportdata:=tmemorystream.create;
RvNDrWriter1.Stream:=reportdata; {Связываем поток с компонентом}
rvndrWriter1.Execute; // Включаем
RvRenderPdf1.PrintRender(reportdata,'thebest.pdf'); {Связываем с файлом. }
ShellExecute(handle, 'open','thebest.pdf',nil,nil, SW_SHOWNORMAL); // Открываем этот файл
freeandnil(reportdata); // Освободить поток
Теперь переходим к другому компоненту RvNDRWriter и создаем у него событие OnPrint.
Здесь мы будем выполнять все процедуры по рисованию внутри PDF. Я написал следующее:
RvNdrWriter1.SetFont('Arial',16); // Установка шрифта.
RvNdrWriter1.FontColor:=clGreen; // Цвет шрифта
RvNdrWriter1.Print('SourceExpert.Blogspot.Com'); // Вывести строку
RvNdrWriter1.PrintHeader('The Best PDF File: Begin',pjCenter); {Написать вверху и выровнять по центру}
RvNdrWriter1.PrintFooter('The Best PDF File: End',pjCenter); {Написать внизу и выровнять по центру}
А сейчас можно сохранить проект и скомпилировать. При нажании на кнопку должен открываться pdf файл с содержимым, которое мы описали ранее.
Если у вас возникли проблемы, то пишите свой вопрос в комментарии и скачивайте пример.
П.С. Если данная тема кажется вам интересной, то пишите, и я обязательно продолжу эту тему: добавление графических примитивов, рисование, импорт из других файлов и т.д.
А также очень советую почитать, как создавать отчеты в delphi.
А также очень советую почитать, как создавать отчеты в delphi.
Удачи! SourceExpert.Blogspot.com
Спасибо за статью!
ОтветитьУдалитьА есть возможность работы с кириллицей?
Не вставляются текст на русском.