Создание PDF средствами PHP. Часть 3

Необходимо заметить, что документ сначала создается в буфере и лишь потом, при вызове метода Output(), выводится в браузер. Поэтому общая схема работы с документом следующая: создаем в буфере документ методом Open(), затем добавляем в этот документ страничку методом AddPage(), формируем содержимое документа различными методами типа Cell(), Write(), Image() и, наконец, выводим его из буфера в браузер.

Метод Cell() выводит ячейку (прямоугольная область) с заданными границами, цветом фона и строкой. Верхний левый угол ячейки соответствует текущей позиции. Текст может быть выровнен. После вызова этого метода текущая позиция перемещается вправо или на следующую строку. Возможно задать ссылку на текст.

Cell(float w [, float h [, string txt [, mixed border [, int ln [, string align [, int fill [, mixed link]]]]]]])

Метод Write() выводит текст от текущей позиции. При достижении правой границы (или встрече символа \n) строка обрывается и текст продолжает выводиться с левого края. После выполнения текущая позиция остается в конце текста. Возможно выведение ссылки в тексте.

Write(float h, string txt [, mixed link])

Метод Image() выводит изображение на страницу. Поддерживаемые форматы: JPEG и PNG. Должен быть задан верхний левый угол. Размеры могут быть заданы разными вариантами:

  • прямое задание ширины и высоты изображения (выраженные в единицах, заданных пользователем)
  • один размер задается, а другой будет вычислен автоматически с сохранением пропорций оригинала
  • ни один размер не задается, в этом случае изображение будет выведено с разрешением 72 dpi.
Image(string file, float x, float y [, float w [, float h [, string type [, mixed link]]]])

Метод Ln() выполняет разрыв строки. Текущая абсцисса возвращается к левому краю страницы, а ордината увеличивается на величину, указанную в параметре.

Ln([float h])

Meтод Output() выводит документ в строку, локальный файл или в браузер. Если нужно, то сначала будет вызван метод Close() для закрытия документа.

string Output([string name [, string dest]])

Комментариев: 9

  1. Тарас:

    Спс долго ждал Часть 3 .

  2. Gonobobel:

    Классный сайт много всего тут интересного и позновательного.

  3. flaer:

    спасибо за освещение методов….. наконец-то, я разобрался!!!!!!!!

  4. Nemec:

    Всё очень легко, спасибо…

  5. Другой:

    Код не читаем. Может лучше его сделать разноцветным. Ответьте пожалуйста, я ваш давний читатель. Да и почему так мало стало материалов?

  6. Мышкин:

    Хорошее пособие получилось, респект. Четвертая часть планируется?

  7. Simon:

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

  8. Арнольд:

    Спасибо большое автору,респект автору…Очень много Интересного узнал по этой статье

  9. ygen:

    Хотелось бы увидеть код формирования PDF файла, где данные считываются из базы данных (допустим создание прайс-листа в формате PDF :) ). Надеюсь напишите такую статью, поскольку было бы неплохим дополнением + я не понял, как такое можно реализовать…

Оставьте свой отзыв