PDF-документы

PDF-функции позволяют PHP создавать PDF-файлы с помощью библиотеки PDF, созданной Томасом Мерзем (http://www.pdflib.com/ pdflib/index.html); также могут потребоваться библиотеки JPEG (ftp:// ftp.uu.net/graphics/jpeg/) и TIFF (http://www.libtiff.org/).
С pdflib поставляется хорошая документация, описывающая возможности библиотеки. Имена функций и аргументы идентичны в библиотеке и РНР. Размеры и координаты измеряются в единицах Postscript (72 на дюйм), но это зависит от выбранного разрешения.
Аналогом библиотеки является ClibPDF (см. ниже).
Версии ниже 3.0 pdflib не поддерживаются в РНР 4. Для компиляции РНР с библиотекой pdflib используйте параметр — enable-shared-pdftib.
<?php $fp = fopenC'test.pdf". "w"):
$pdf = pdf_open($fp):
pdf_set_info($pdf. "Author". "Uwe Steinmann").
pdf_set_info($pdf. "Title". "Test for PHP PDFlib");
pdf_set_info($pdf. "Creator". "See Author"):
pdf_set_info($pdf. "Subject". "Testing");
pdf_begin_page(*pdf. 595. 842):
pdf_add_outline($pdf. "Page 1").
pdf_set_font($pdf. "Times-Roman". 30. "host").
pdf_set_value($pdf. "textrendenng". 1):
pdf_show_xy($pdf. "Times Roman outlined". 50. 750);
pdf_moveto($pdf. EO. 740); .
pdf_hneto($pdf. 330. 740).
pdf_stroke($pdf). pdf_end_page($pdf):
pdf_close($pdf): fclose($fp):
echo "<A HRFF=getpdf.php>finished</A>":
<?php // сценарий getpdf.php.
просто возвращает документ pdf '
$fp = fopenC'test.pdf". "r")
headert"Content-type: applncation/pdf").
fpassthru(Sfp); fclose($fp): ?>
Пример из комплекта pdflib создает документ, состоящий из страниц с изображением часов (каждая страница показывает текущее время создания):
<?php $pdffilename = "clock.pdf": // имя файла
Sradius = 200: // радиус циферблата
Smargin =20: // поля страницы
Spagecount =40; // число страниц
$fp = fopen($pdffilename. "w"). $pdf = pdf_open($fp);
while($pagecount-- > 0) {
pdf_begin_page($pdf. 2 * (Sradius + Smargin).
2 * (Sradius + Smargin)):
pdf_set_parameter($pdf. "transition", "wipe"):
pdf_set_value($pdf. "duration". 0.5).
pdf_translate(Spdf. $radius + Smargin. Sradius + Smargin):
pdf_save(Spdf): pdf_setrgbcolor($pdf. 0.0 0 0. 1.0):
/* минутные метки */ pdf_cetlinewidth($pdf. 2 0):
for (.«alpha - 0: Salpha < 360: Salpha += 6) {
pdf_rotate($pdf. 6.0): pdf_moveto($pdf. Sradius. 0.0):
pdf_lineto($pdf. Sradius-Smargin/3. 0.0):
pdf_stroke(Spdf): } pdf_restore($pdf): pdf_save($pdf):
/* 5 минутные метки */ pdf_setlinewidth($pdf. 3.0):
for (Salpha - 0: Salpha < 360: Salpha += 30) {
pdf_rotate($pdf. 30.0):
pdf_moveto(Spdf. Sradius. 0.0):
L pdf_11neto($pdf. $radius-$margin. 0.0).
pdf_stroke(Spdf): $ltime = getdate():
/* часовая стрелка */ pdf_save($pdf):
pdf_rotate($pdf.-((SItime['minutes']/60.0)+
ntfme['hours']-3.Q)*30.0): pdf_moveto
($pdf. -Sradius/10. -Sradius/20):
pdf_lineto($pdf. $radius/2. 0.0):
pdf_lineto($pdf. -Sradius/10. Sradius/20):
pdf_closepath($pdf). pdf_fill($pdf): pdf_restore(Spdf):
/* минутная стрелка */ pdf_save(Spdf):
paf_rotate($pdf.(($ltime['seconds']/60 0)+
SltimeC'rmnjtes'MS.): pdf_moveto
($pdf. -$radius.'10. -$radius/20); pdf_lineto
($pdf. Sradius * 0.8. 0 0): pdf_lineto(
$pdf. -$radius/i(). $radius/20): pdf_closepath($pdf):
pdf_fi)l($pdf); pdf_restore($pdf):
/* секундная стрелка */
pdf_setrgbcolor($pdf. 1.0. 0.0. 0.0);
pdf_setlinewidth($pdf. 2): pdf_save($pdf):
pdf_rotate($pdf. -((SltTmei'seconds'] - 15.0) *6.0)):
pdf_moveto($pdf. -$radius/5. 0.0).
pdf_lineto($pdf. Sradius. 0.0);
pdf_stroke($odf); pdf_restore($pdf):
/* центр */ pdf_circle($pdf. 0. 0. $radius/30):
pdf_fnH$pdf): pdf_restore($pdf);
pdf_end_page($pdf); } $pdf - pdf_close($pdf):
fclose($fp): $fp = fopen($pdffilename. "r");
header("Content - type: appli cati on/pdf");
fpassthru($fp): fclose($fp): ?>
pdf_set_info
Заполнение поля информации документа
void pdf set_info (int pdf_document. string fieldname, string value)
Возможные поля fieldname: «Subject», «Title», «Creator», «Author», «Keywords» и одно, определяемое пользователем. Функция должна вызываться до создания страниц.
<?рhр $fd = fopent"test.pdf". "w"):
Spdfdoc - pdf open($fd).
pdf_set_1nfo($pdfdoc. "Author". "Имя автора");
pdf_setjnfo($pdfdoc. "Creator". "Название создателя");
pdf set info($pdfdoc. "Title", "Заголовок");
pdf_set_mfo($pdfdoc. "Subject". "Тема");
pdf_set_info($pdfdoc. "Keywords". "Ключевые, слова");
pdf_set_info($pdfdoc. "CustomField".
"Чего-то еще"); pdf_beg-in_page($pdfdoc. 595. 842);
pdf_end_page($pdfdoc). pdf_close($pdfdoc); ?>
Эта функция заменяет собой pdf_set_infoj<;e.ywords(), pdf_set_info_ title(), pdf_set_info_subject(), pdf_set_info_creator(), pdf_set_info_ sybject().
pdf_open
Открытие нового документа pdf 'int pdf_open (int file)
Функция делает файл, открытый функцией fopen(), документом pdf. Если не указывать дескриптор файла, он создается в памяти и затем может выводиться на стандартный поток вывода или отсылаться браузеру. Функция возвращает дескриптор документа, который следует указывать в последующих pdf-функциях.
См. также: fopen(), pdf_close().
pdf_close
Закрытие документа pdf
void pdf_close (int pdf_document)
См. также: pdf_open(), fclose().
pdf begin_page
Начало новой страницы
void pdf_begin_page (int pdf_document, double width, double height)
Аргументы height и width задают высоту и ширину страницы. После внесения на страницу информации ее следует закрыть функцией pdf_end_page().
См. также pdf_end_page().
pdf_end_page
Завершение страницы
void pdf_end_page (int pdf_docuraent)
После этого модификация этой страницы невозможна.
См. также pdf_begin_page().
pdf_show
Вывод текста в текущую позицию
void pdf_show (int pdf_document, string text)
Для вывода используются текущая позиция и текущий шрифт.
См. также: pdf_show_xy(), pdf_show_boxed(), pdf_set_text_pos(), pdf_set_ font().
pdf_show_boxed
Вывод текста в прямоугольную область
int pdf_show_boxed (int pdfjJocument, string text, double x, double y. double width, double height, string mode [, string feature])
Левый нижний угол области вывода задается (х,у); высота и ширина — height, width. Аргумент mode определяет выравнивание текста: если высота и ширина равна нулю, то возможны значения: «left», «right» или «center», если они не равны нулю, то — «justify» или «full justify».
Если аргумент feature содержит значение «blind», текст не отображается.
Возвращает число символов, которые не поместились в указанный прямоугольник.
См. также: pdf_show(), pdf_show_xy().
pdf_show_xy
Вывод текста в указанную позицию
void pdf_show_xy (int pdf_doc, string text, double x, double y)
См. также: pdf_show(), pdf_show_boxed().
pdf_set_font
Выбор шрифта, его размера и кодировки
void pdf_set_font (int pdf_document, string fontjiame, double size, string encoding [, int embed])
Аргумент вида кодировки encoding может принимать значения: «win-ansi» (по умолчанию), <-builtin», «host», «macroman» и т. п. Если для последнего аргумента задано значение 1, шрифт будет внедрен в документ pdf (иначе, нет). Если шрифт распространен, внедрять его не следует из-за увеличения размера документа.
Функция должна вызываться после pdf_begin_page().
pdf_ set_ leading
Установка промежутка между строками текста void pdf_set_leading (int pdf_document, double distance) Используется при выводе текста функцией pdf_continue_text().
См. также pdf continue text().
pdf_set_parameter
Установка строкового значения параметра pdflib
void pdf_set_parameter (Int pdf_document, string name, string value)
См. также: pdf_get_value(), pdf_set_value(), pdf_get_parameter().
pdf_get_parameter
Получение строкового значения параметра pdflib
string pdf_get_parameter (int pdf_doc, string name [, double modifier])
Аргумент modifier используется при необходимости.
См. также: pdf_get_value(), pdf_set_value(), pdf_set_parameter().
pdf_set_value
Установка численного значения параметра pdflib
void pdf_set_value (int pdf_document, string name, double value)
См. также: pdf_get_value(), pdf_get_parameter(), pdf_set_parameter().
pdf_get_value
Получение численного значения параметра pdflib
double pdf_get_value (int pdf_document, string name [, double modifier])
Аргумент modifier используется при необходимости.
См. также: pdf_set_value(), pdf_get_parameter(), pdf_set_parameter().
pdf_set_text_rendering
Установка метода вывода текста
void pdf_set_text_rendering (int pdf_document, int mode)
Устарела, используйте PDF_set_value().
pdf_set_horiz_scaling
Установка масштабирования текста по горизонтали
void pdf_set_horiz_scaling (int pdf_document, double scale)
pdf_set_text_rise
Установка подъема текста
void pdf_set_text_rise (int pdf_document, double rise)
pdf_set_text_matrix
Установка матрицы преобразования шрифта
void pdf_set_text_matrix (Int pdf_document, array matrix)
Начиная с версии pdflib 2.3 эта функция недоступна.
pdf_set_text_pos
Установка позиции текста
void pdf_set_text_pos (int pdf_document, double x-coor, double y-coor)
Устанавливает позицию вывода текста последующим вызовом pdf_ show().
См. также: pdf_show(), pdf_show_xy().
pdf_set_char_spacing
Установка интервала между символами
void pdf_set_char_spacing (int pdf_document, double space)
Устарела, используйте PDF_set_value().
См. также: pdf_set_word_spacing(), pdf_set_leading().
pdf_set_word_spacing
Установка интервала между символами
void pdf_set_word_spacing (int pdf_document, double space)
Устарела, используйте PDF_set_value().
См. также: pdf_set_char_spacing(), pdf_set_leading().
pdf_skew
Поворот системы координат
void pdf_skew (int pdf_document, double alpha, double beta) \
Угол поворота в градусах указывается относительно осей alpha (x) и beta (у). Углы не могут принимать значения 90 или 270 градусов.
pdf_continue_text
Вывод текста со следующей строки
void pdf_continue_text (int pdf_docuraent, string text)
Расстояние между строками может быть установлено функцией pdf_set_leading().
См. также: pdf_show_xy(), pdf_set_leading(), pdf_set_text_pos().
pdf_stringwidth
Вычисление ширины текста
double pdf strnngwidth (int pdf document, string text)
При вычислении длины строки используется текущий шрифт. Предварительно шрифт должен быть установлен с помощью pdf_set_font().
См. также pdf_set_font().
pdf_save
Сохранение текущих установок
void pdf_save (int pdf_document)
Действует подобно команде postscript gsave. Полезна при необходимости масштабировать или развернуть объект, не воздействуя на другие объекты. pdf_save() требует, чтобы затем была вызвана функция pdf_restore().
См. также pdf_restore().
pdf_restore
Восстановление ранее сохраненных установок
void pdf_restore (int pdf_document)
Восстанавливает установки, сохраненные pdf_save(). Действует подобно команде postscript grestore.
<?php rdf_save($pdf):
// всякие вращения и трансформации ...
pdf_reitore($pdf) ?>
См. также pdf_save().
pdf_translate
Установка начала системы координат
j void pdf_translate (int pdf_document, double x, double y) Координаты указываются относительно текущей точки отсчета. Затем, до начала рисования объектов, требуется установить текущую точку.
<?php pdf_moveto($pdf. 0. 0). pdf_lireto
($pdf. 100. 100). pdf_stn>ke($pd*):
pdfJranslateOpdf. 100. 100): pdf_mweto($pdf. 0. 0);
pdfjireto($pdf. 100. 100): pdf_stroke($pdf): ?>
pdf_scale
Установка масштабирования
void pdf_scale (int pdf_document, double x_scale, double y_scale)
<?pho pdf_scale($pdf. 72 0, 72.0).
pdf_llneto($pdf. l. 1): // дюйм
pdf_stroke($pdf). ?>
pdf_rotate
Установка угла вращения в градусах
void pdf_rotate (int pdf_document, double angle)
pdf_setflat
Установка равномерности
void pdf_setflat (int pdf_document, double value)
Возможные значения параметра — от 0 до 100.
pdf_setlinejoin
Установка параметра linejoin
void pdf_setlinejoin (int pdf_document. long value)
Возможные значения параметра — от 0 до 2.
pdf_setlinecap
Установка параметра linecap
void pdf_setlinecap (int pdf document, int value)
Возможные значения параметра — от 0 до 2.
pdf_setmiterlimit
Установка параметра miter limit
void pdf_setmiterlimit (int pdf_document. double value)
Возможные значения параметра — 1 и более.
pdf_setlinewidth
Установка ширины строк
void pdf_setlinewidth (int pdf_document. double width)
pdf_setdash
Установка вида штриховки
void pdf_setdash (int pdf_document. double white, double black)
Устанавливает размер белых и черных полос. Если оба аргумента равны 0, то линия будет непрерывной.
pdf_moveto
Установка текущей точки
void pdfjnoveto (int pdf_document, double x, double y)
pdf_curveto
Черчение кривой
void pdf_curveto (int pdf_document, double xl, double yl, double x2, double y2, double x3, double y3)
Чертит кривую Безьс от текущей точки до (хЗ.уЗ), используя точки (xl.yl) и (х2,у2) как ориентирующие.
См. также: pdfjnoveto(), pdf_lineto(), pdf_stroke().
pdf_lineto
Черчение отрезка
void pdfjineto (int pdf_document, double x, double y)
Чертит линию от текущей точки до указанной (х,у).
См. также: pdf_moveto(), pdf_curveto(), pdf_stroke().
pdf_circle
Черчение окружности
void pdf_circle (int pdf_document, double x, double y, double radius)
См. также: pdf_arc(), pdf_stroke().
pdf_arc
Черчение дуги
void pdf_arc (int pdf_document, double x, double y, double radius, double start, double end)
Начальный и конечный угол задаются start и end.
См. также: pdf_circle(), pdf_stroke().
pdf_rect
Черчение прямоугольника
void pdf_rect (int pdf_document, double x, double y, double width, double height)
Левый нижний угол задается (х,у); высота и ширина — height, width.
См. также pdf_stroke().
pdf_closepath
Завершение текущего пути
void pdf_closepath (int pdf_document)
Чертит линию от текущей точки до точки, где начиналась первая линия. Многие функции, например pdfjnovetoO, pdf_circle(), pdf_rect(), начинают новый путь.
pdf_stroke
Заштриховка пути
void pdf_stroke (int pdf_document)
Текущий путь — это совокупность всех линий. Без этой функции линии начерчены не будут.
См. также: pdf_closepath(), pdf_c1osepath_stroke().
pdf_closepath_stroke
Черчение и закрытие пути
void pdf_closepath_stroke (int pdf_document)
Это комбинация pdf_closepath() и pdf_stroke().
См. также: pdf_closepath(), pdf_stroke().
pdf_fill
Заполнение пути цветом
void pdf_fill (int pdf_document)
См. также: pdf_closepath(), pdf_stroke(), pdf_setgray_fill(), pdf_setgray(), pdf_setrgbcolor_fiTl (), pdf_setrgbcolor().
pdf_fill_stroke
Заполнение пути цветом и закрытие его
void pdf_fill_stroke (int pdf_document)
См. также: pdf_closepath(), pdf_stroke(), pdf_fill(), pdf_setgray_fill(), pdf_setgray(), pdf_setrgbcolor_fill(), pdf_setrgbcolor().
pdf_closepath_fill_stroke
Черчение, закрашивание и закрытие пути
void pdf_dosepath_fin_stroke (int pdfjjocument)
См. также: pdf_closepath(), pdf_stroke(), pdf_fill(), pdf_setgray_fill()) pdf_setgray(), pdf_setrgbcolor_fiTI(), pdf_setrgbcolor().
pdf_endpath
Завершение пути без его закрытия void pdf_endpath (int pdf_document)
См. также pdf_dosepath().
pdf_clip
Прикрепление всех линий к текущему пути
void pdf_c!ip (int pdf_docuraent)
pdf_setgray_fill
Установка заполнения серым цветом
void pdf_setgray_fill (int pdfjjocument, double gray_value)
См. также pdf_setrgbcolor_fill ().
pdf_setgray_stroke
Установка штриховки серым цветом
void pdf_setgray_stroke (int pdf_document, double gray_value)
См. также pdf_setrgbcolor_stroke().
pdf_setgray
Установка заполнения и штриховки серым цветом
void pdf_setgray (int pdf_document, double grayj/alue)
См. также: pdf_setrgbcolor_stroke(), pdf_setrgbcolor_fill().
pdf_setrgbcolor_fill
Установка заполнения цветом rgb
void pdf_setrgbcolor_fill (int pdf_document, double red_value, double green_value, double blue_value)
См. также pdf_setrgbcolor_fill().
pdf_setrgbcolor_stroke
Установка штриховки цветом rgb
void pdf_setrgbcolor_stroke (int pdfjjocument, double red_value, double green_value, double blue_value)
См. также pdf_setrgbcolor_stroke().
pdf_setrgbcolor
Установка заполнения и штриховки серым цветом rgb
void pdf_setrgbcolor (int pdf_document, double red_value, double green_value, double blue_value)
См. также: pdf_setrgbcolor_stroke(), pdf_setrgbcolor_fill().
pdf_add_outline
Добавление закладки для текущей страницы
int pdf_add_outline (int pdf_ document, string text [, int parent [, int open]])
Название закладки определяется аргументом text. Она становится дочерним объектом объекта parent и по умолчанию открыта (если аргумент open не равен 0). Возвращается идентификатор закладки, который может использоваться как родительский для других закладок.
pdf_set_transition
Установка режима перехода между страницами
void pdf_set_transition (int pdf_document, int transition)
Используйте функцию PDF_set_parameter() с параметром «transition».
См. также pdf_set_duration().
pdfset_duration
Установка интервала между страницами
void pdf_set_duration (int pdfjiocument, double duration)
См. также pdf_set_transition().
pdf_open_gif
Открытие рисунка GIF
int pdf_open_gif (int pdf_document, string filename)
Используйте функцию pdf_open_image_file().
<?php $im = pdf_open_gif($pdf. "test.gif"):
pdf_place_image($pdf. $im. 100. 100. 1):
pdf_close_image($pdf. Sim): ?> "
pdfopen_png
Открытие рисунка PNG
int pdf_open_png (int pdf, string png_file)
Используйте функцию pdf_open_image_file().
pdf_openjpeg
Открытие рисунка JPEG
int pdf_ppen_jpeg (int pdf_document, string filename)
Используйте функцию pdf_open_image_file().
pdf_open_tiff
Открытие рисунка TIFF
int pdf_open_tiff (int PDF-document, string filename)
Используйте функцию pdf_open_image_file().
pdf_open_image_file
Чтение рисунка из файла
int pdf_open_image_file (int PDF_document, string format, string filename)
Загружает рисунок формата format из файла filename и возвращает его идентификатор. Возможные форматы: PNG, TIFF, JPEG и GIF.
<?php $pim = pdf_open_image_file
($pdf. "png". "picture.png");
pdf place_image($pdf. $plm. 100, 100. 1):
pdf_close_image($pdf. Spim); ?>
Функция заменяет pdf_open_jpeg(), pdf_open_gif(), pdf_open_tiff(), pdf_ open_png().
См. также: pdf_close_image(), pdf_execute_image(), pdf_place_image(), pdf_ put_image().
pdf_open_memory_image
Открытие рисунка, созданного графическими функциями PHP
int pdf_open_memory_image (int pdfjJocument, int image)
Функция принимает дескриптор рисунка, созданного PHP, и делает его доступным для документа pdf. Функция возвращает идентификатор рисунка pdf.
<?php // Example: Including a memory image
$im = ImageCreateClOO. 100);
$col = ImageColorAllocate($im. 80. 45. 190);
ImageFiimim. 10. 10, $col);
$pim = pdf_open_memory_image($pdf. $im):
ImageDestroy($im):
pdf_place_image($pdf. $pim. 100. 100, 1);
pdf_close_image($pdf. Spim): ?>
См. также: pdf_clo.scjmage(), pdf_executejmage(), pdf_place_image(), pdf_ put_iraage().
pdf_closejmage
Закрытие рисунка
void pdf_close_image (int image)
Закрывает рисунок, открытый функциями pdf_open_ ().
См. также: pdf_open_jpeg(), pdf_open_gif(), pdf_open_memory_image().
pdf_get_image_height
Установка высоты рисунка в пикселах
string pdf_get_image_height (int pdf_document, int image)
См. также: pdf_open_image_file(), pdf_open_memory_image(), pdf_get_image_ width().
pdf_get_image_width
Установка ширины рисунка в пикселах
string pdf_get_image_width (int pdf_document. int image)
См. также: pdf_open_itnage_file(), pdf_openjnemory_image(), pdf_get_image_ height().
pdf_placejmage
Размещение рисунка на странице
void pdf_p!ace_image (int pdf_doc, int image, double x, double y, double scale)
Позиция размещения задается (х,у); масштаб — scale.
См. также pdf_put_image().
pdf_put_image
Сохранение рисунка в PDF для дальнейшего использования
void pdf_put_inage (int pdf_document, int image)
Внедряет рисунок в документ без его отображения. Затем рисунок может быть размещен на странице функцией pdf_execute_image() необходимое число раз. Полезно при многократной вставке рисунка (уменьшается размер файла).
Начиная с версии 2.01 pdflib функция бесполезна и выводит только предупреждение.
См. также: pdf_place_image(), pdf_execute_image().
pdf_execute_image
Размещение сохраненного рисунка на странице
void pdf_execute_image (int pdf_document, int image, double x, double y, double scale) :
Отображает рисунок, внедренный функцией pdf_put_image().
Начиная с версии 2.01 pdflib функция бесполезна и выводит только предупреждение.
Example I. Multiple show of an image
<?php
Sim = ImageCreatedOO. 100);
Scoll = ImageColorAllocate($im. 80. 45. 190);
ImageFill($im. 10. 10. Scoll):
$pim = pdf_open_memory_image($pdf. Sim);
pdf_put_image($pdf. $pim);
pdf_execute_image($pdf, $pim. 100. 100. 1);
pdf_execute_image($pdf. $pim. 200. 200. 2); // 200 %
pdf_close_image($pdf. $pim); ?>
pdf__add_annotation
Добавление примечания
void pdf_add_annotation (int pdf_document, double llx. double lly, double urx. double ury, string title, string content)
Примечание располагается в левом нижнем углу (Их, Пу), верхний правый угол (urx. ury).
pdf_set_border_style
Установка стиля обрамления примечаний и гиперссылок
void pdf_set_border_style (int pdf_document. string style, double width)
Аргумент style может принимать значения «solid» или «dashed». Ширина задастся аргументом width.
См. также: pdf_set_border_color(). pdf_set_border_dash().
pdf_set_border_color
Установка цвета обрамления ссылок и примечаний
void pdf_set_border_color (int pdf_document, double red, double green, double blue)
Три компонента цвета могут принимать значения из диапазона от 0.0 до 1.0.
См. также: pdf_set_border_style(), pdf_set_border_dash().
pdf_set_border_dash
Установка стиля окантовки ссылок и примечаний
void pdf_set_border_dash (int pdf_document. double black, double white)
Устанавливает длину черных и белых полос прерывистых линий.
См. также: pdf_set_border_style(), pdf_set_border_color().
ClibPDF
Библиотека ClibPDF позволяет PHP создавать документы PDF. Она не является полностью свободно распространяемой. Библиотека действует подобно pdflib, но создает документы меньшего размера с большей скоростью.
При необходимости воспользуйтесь документацией, поставляемой с ClibPDF.
Все функции, за исключением cpdf_open(), принимают в качестве своего первого аргумента дескриптор открытого документа.
В настоящее время ClibPDF, в отличие от pdflib, не позволяет одновременно работать с несколькими документами. Но она способна создавать документы в памяти, не используя временный файл. Возможно также модифицировать любую страницу.
<?php defineC'PPM". 2.83464566929):
// пойнтов в миллиметре Scpdf = cpdf_open(0)
cpdf_page_imt($cpdf. 1. 0. 595. 842. PPM);
cpdf_add_outlт netScpdf. 0. 0. 0. 1. "Page 1"):
cpdf_begin_text(Scpdf).
cpdf_set_font($cpdf. "Times-Roman" 30.
"WinAnsiEncoding"); cpdf_set_text_rendering($cpdf. 1):
cpdf_text($cpdf. "Times Roman outlined". 50. /50).
cpdf_end_text(Scpdf): cpdf_moveto(Scpdf. 50. 740).
cpdf_11neto(Scpdf. 330. 740). cpdf_stroke(Scpdf):
cpdf_final1ze($cpdf);
Header("Content-type: application/pdf"):
cpdf_output_buffer(Scpdf):
cpdf_close(Scpdf); ?>
Пример из комплекта pdflib можно использовать для сравнения двух библиотек.

<?php Sradius - 200-
Smargin - 20: Spagecount * 40.
$pdf -= cpdf_open(0):
cpdf_set_creator(Spdf. "pdf_clock.php3");
cpdf_set_title(Spdf. "Analog Clock").
while(Spagecount-- > 0) {
cpdf_page_imt(Spdf. $pagecount+l. 0. 2 *
(Sradius + Smargin). 2 * (Sradius * Smargin). 1.0).
cpdf_set_page_ammation($pdf. 4. 0 5. 0. 0. 0); /* wipe */
cpdf_translate
(Spdf. Sradius + Smargin. Sradius + Smargin):
cpdf_save(Spdf); cpdf_setrgbcolor(Spdf. 0.0. 0.0. 10):
/* minute strokes */ cpdf_setl-mew1dth($pdf. 2.0):
for ($alpha = 0: $alpha < 360: $alpha += 6) {
pdf_rotate($pdf. 60). cpdf_moveto($pdf. Sradius. 0 0).
cpdf_lineto($pdf. $radius-$margin/3. 0.0):
cpdf_stroke($pdf): }
cpdf_restore($pdf): cpdf_save($pdf):
/* 5 minute strokes */ cpdf_setlinewidth($pdf. 3.0):
for (Salpha = 0: $alpha < 360: $alpha += 30) {
cpdf_rotate($pdf. 30.0): cpdf_moveto($pdf. $radius. 0.0):
cpdf_lineto($pdf. $radius-$margin. 0 0):

cpdf_stroke($pdf); } Sltime -= getdatet):
/* draw hour hand */ cpdf_save($pdf):
cpdf_rotate($pdf. -(($ltime['minutes']/60 0)
+ $ltime['hours'] - 3.0) * 30.0): cpdf_moveto
($pdf. -$radius/10. -$radius/20): cpdfjineto
($pdf. $radius/2. 0 0): cpdf_hneto
($pdf. -$radius/10. $radius/20): cpdf_closepath
($pdf): cpdf_filK$pdf): cpdf_restore($pdf):
/* draw minute hand */ cpdf_save($pdf):
cpdf_rotate($pdf. -(($ltime['seconds']/60 0)
+ $ltime['minutes'] - 15.0) * 6.0): cpdf_moveto
($pdf. -$radius/10. -$radius/20). cpdf_lineto
($pdf. Sradius * 0.8. 0.0): cpdf_lineto
($pdf. -$radius/10. $radius/20): cpdf_closepath($pdf).
cpdf_fill($pdf): cpdf_restore($pdf):
/* draw second hand */ cpdf_setrgbcolor($pdf. 1.0. 0.0. 0.0):
cpdf_setlmewidth($pdf. 2): cpdf_save($pdf).
cpdf_rotate($pdf. -((Sltimefseconds'] - 15.0) * 6.0)):
cpdf_moveto($pdf. -$radius/5. 0.0): cpdf_lineto($pdf. Sradius. 0.0):
cpdf_stroke($pdf): cpdf_restore($pdf):
/* draw little circle at center
*/ cpdf_circle($pdf. 0. 0. $radius/30): cpdf_fill($pdf):
cpdf_restore(Spdf); cpdf_finalize_page($pdf. $pagecount+l); }
cpdf_finalize($pdf):
cpdf_save_to_file($pdf."e:\\clock.pdf"); cpdf_close($pdf): ?>
cpdf_global_set_document_limits
Установка ограничения для всех документов
void cpd8f_global_set_document_limits (int maxpages. int maxfonts, int maximages, int raaxannotations. int maxobjects)
Функцию следует вызывать до cpdf_open().
См. также cpdf_open().
cpdf_set_creator
Заполнение поля «создатель документа»
void cpdf_set_creator (string creator)
См. также: cpdf_set_subject(), cpdf_set_title(), cpdf_set_keywords().
cpdf_set_title
Заполнение поля «заголовок документа»
void cpdf_set_title (string title)
См. также: cpdf_set_subject(), cpdf_set_creator(), cpdf_set_keywords().
cpdf_set_subject
Заполнение поля «тема документа»
void cpdf_set subject (string subject)
См. также: cpdf_set_title(), cpdf_set_creator(), cpdf_set_keywords().
cpdf_set_keywords
Заполнение поля «ключевые слова документа»
void cpdf_set_keywords (string keywords)
См. также: cpdf_set_tit!e(), cpdf_set_creator(), cpdf_set_subject().
cpdf_open
Открытие нового документа
int cpdf_open (int compression [, string filename])
Первым аргументом можно указать необходимость сжатия документа (если он не равен 0). Если указывается второй аргумент, то документ будет создаваться в файле, а не в памяти. Имя файла «-» указывает на стандартный поток вывода (это пока не работает с Apache).
Возвращаемый дескриптор используется всеми после/чующими функциями.
См. также: cpdf_close(), cpdf_output_buffer(), cpdf_save_to_file().
cpdf_close
Закрытие документа pdf
void cpdf_close (int pdfjJocument)
Эту функцию следует вызывать последней, даже после cpdf_finalize(), cpdf_output_buffer() или cpdf_save_to_file().
См. также cpdf_open().
cpdf_page_init
Начало новой страницы
void cpdf_page_init (int pdf_document, int pagejiumber, int orientation, double height, double width [, double unit])
Параметры новой страницы: page_number — ее номер, orientation — ориентация (0 — вертикальная, 1 — горизонтальная), высота height и ширина width; необязательный аргумент unit указывает разрешение в точках на дюйм (по умолчанию — 72).
См. также cpdf_set_current_page().
cpdf_finalize_page
Завершение указанной страницы
void cpdf_finalize_page (int pdf_document, int page_number) После этого страница не может модифицироваться.
См. также cpdf_page_init().
cpdf_finalize
Завершение документа
void cpdf_fina!ize (int pdf_document)
После этого необходимо вызвать cpdf_close().
См. также cpdf_close().
cpdf_output_buffer
Вывод документа из буфера памяти
void cpdf_output_buffer (int pdf_document)
Выводит документ на стандартный поток вывода (отсылает браузеру). Для этого документ должен быть создан в памяти (а не в файле).
См. также cpdf_open().
cpdf_save_to_file
Запись документа в файл
void cpdf save_to_file (int pdf_document, string filename)
Функция не требуется, если документ изначально создавался в файле.
См. также: cpdf_output_buffer(), cpdf_open().
cpdf_set_current_page
Установка текущей страницы
void cpdf_set_current_page (int pdf_document, int page number)
Все последующие операции будут проводиться на данной странице. Между страницами можно переключаться до вызова cpdf_fina1ize_ page().
См. также cpdf_finalize_page().
cpdf_begin_text
Начало текстового раздела
void cpdf_begin_text (int pdf_document)
Раздел должен быть завершен функцией cpdf_end_text().
<?php cpdf_begi n_text($pdf);
cpdf_set_font($pdf. 16. "Helvetica". "WinAnsiEncoding"):
cpdf_text($pdf, 100. 100. "Some text"): cpdf_end_text($pdf) ?>
См. также cpdf_end_text().
cpdf_end_text
Завершение текстового раздела
void cpdf_end_text (int pdf_document) Завершает раздел, начатый cpdf_begin_text().
См. также cpdf_begin_text().
cpdf_show
Вывод текста в текущую позицию
void cpdf_show (int pdf_document, string text)
См. также: cpdf_text(), cpdf_begin_text(), cpdf_end_text().
cpdf_show_xy
Вывод текста в указанную позицию
void cpdf_show_xy (int pdfjjoc, string, text, double x, double у [, int mode])
Аргументом mode можно указать используемое разрешение (если указывается 0, то используется разрешение по умолчанию).
Функция идентична cpdf_text() без необязательных аргументов.
См. также cpdf_text().
cpdf_text
Вывод текста с параметрами
void cpdf_text (int pdf_document, string text, double x, double у [, int mode [, double orientation [, int alignmode]]])
Параметр orientation задает вращение строки в градусах, a alignmode — выравнивание текста.
См. документацию ClibPdf относительно возможных значений.
См. также cpdf_show_xy().
cpdf_set_font
Выбор текущего шрифта
void cpdf_set_font (int pdf_doc, string font_name, double size, string encoding)
Выбирает текущий шрифт, его размер и кодировку. В настоящее время поддерживаются только стандартные шрифты postscript. Кодировка может быть указана значениями «MacRomanEncoding», «Mac-ExpertEncoding», «WinAnsiEncoding» и «NULL» (использовать встроенную).
См. также документацию ClibPDF.
cpdf_set_leading
Установка межстрочного расстояния
void cpdf_set leading (int pdf_document, double distance) Используется при выводе текста функцией cpdf_continue_text().
См. также cpdf_continue_text().
cpdf_set_text_rendering
Установка режима вывода текста
void cpdf_set_text_rendering (int pdfjJocument, int mode)
Возможные значения аргумента mode: 0 (текст с заполнением), 1 (контурный текст), 2 (заполненный контурный текст), 3 (невидимый), 4 (заполненный текст, прикрепленный к пути), 5 (контурный текст, прикрепленный к пути), 6 (заполненный контурный текст, прикрепленный к пути), 7 (текст, прикрепленный к пути).
cpdf_set_horiz_scaling
Установка горизонтального разрешения
void cpdf_set_horiz_scaling (int pdfjJocument, double scale)
cpdf_set_text_rise
Установка подъема текста
void cpdf_set_text_rise (int pdf_document, double value)
cpdf_set_text_matrix
Установка матрицы преобразования шрифта
void cpdf_set_text_matrix (int pdfjJocument, array matrix)
cpdf_set_text_pos
Установка позиции текста
void cpdf_set_text_pos (int pdfjJocument, double x, double у [, int mode])
Устанавливает позицию вывода текста последующим вызовом cpdf_ show().
Параметром mode можно указать разрешение.
См. также: cpdf_show(), cpdf_text().
cpdf_set_char_spacing
Установка межсимвольного интервала
void cpdf_set_char_spacing (int pdf_document, double space)
См. также: cpdf_set_word_spacing(), cpdf_set_leading().
cpdf_set_word_spacing
Установка интервала между словами
void cpdf_set_word_spacing (int pdf_document, double space)
См. также: cpdf_set_char_spacing(), cpdf_set_leading().
cpdf_continue_text
Вывод текста со следующей строки
void cpdf_continue_text (int pdf_document, string text)
См. также: cpdf_show_xy(), cpdf_text(), cpdf_set_leading(), cpdf_set_text_ pos().
cpdf_stringwidth
Вычисление ширины строки с использованием текущего шрифта
double cpdf_stringwidth (int pdf_document, string text)
См. также cpdf_set_font().
cpdf_save
Сохранение текущих установок
void cpdf_save (int pdfjjocument)
См. также cpdf_restore().
cpdf_restore
Восстановление ранее сохраненных установок
void cpdf restore (int pdf document)
Восстанавливает установки, сохраненные cpdf_save().
<?php cpdf_save($pdf);
// всякие вращения и трансформации ...
cpdf_restore($pdf) ?>
См. также cpdf_save().
cpdf_translate
Установка начала системы координат
void cpdf_translate (int pdf_doc. double x, double у [. int mode])
cpdf_scale
Установка масштабирования
void cpdf_scale (int pdf_document, double x-scale, double-scale)
cpdf_rotate
Установка угла вращения в градусах
void cpdfj-otate (int pdf_document, double angle)
cpdf_setflat
Установка равномерности
void cpdf_setflat (int pdfjlocument. double value)
Возможные значения параметра — от 0 до 100.
cpdf_setlinejoin
Установка параметра linejoin
void cpdf_setlinejoin (int pdf_document, long value)
Возможные значения параметра — от 0 до 2 (0 = miter, 1 = round, 2 = bevel).
cpdf_setlinecap
Установка параметра linecap
void cpdf_setlinecap (int pdf_document, int value)
Возможные значения параметра — от 0 до 2 (0 = butt end, I = round, 2 = projecting square).
cpdf_setmiterlimit
Установка параметра miter limit
void cpdf_setmiterlimit (int pdf_document, double value)
Возможные значения параметра — 1 и более.
cpdf_setlinewidth
Установка ширины строк
void cpdf_setlinewidth (int pdf_document, double width)
cpdf_setdash
Установка вида штриховки
void cpdf_setdash (int pdf_document, double white, double black)
Устанавливает размер белых и черных полос. Если оба аргумента равны 0, то линия будет непрерывной.
cpdf_newpath
Начало нового пути
void cpdf_newpath (int pdfjjocument)
cpdf_moveto
Установка текущей точки
void cpdfjraveto (int pdf_document, double x. double у [, int mode])
cpdf_rmoveto
Смещение текущей точки
void cpdf_rmoveto (int pdf_doc, double x, double у [, int mode])
См. также cpdf_moveto().
cpdf_curveto
Черчение кривой
void cpdf_curveto (int pdf_document. double xl, double yl. double x2, double y2, double x3, double y3 [, int mode])
Чертит кривую Безье от текущей точки до (хЗ.уЗ), используя точки (xl.yl) и (х2,у2) как ориентирующие.
См. также: cpdf_moveto(), cpdf_rmoveto(), cpdf_rlineto(), cpdf_lineto().
cpdf_lineto
Черчение линии
void cpdf_lineto (int pdf_document, double x, double у [, int mode])
Чертит линию от текущей точки до указанной (х,у).
См. также: cpdf_moveto(), cpdf_rmoveto(), cpdf_curveto().
cpdf_rlineto
Черчение отрезка
void cpdf_rlineto (int pdf_document. double x, double у [, int mode]) Координаты (х,у) указываются относительно текущей точки.
См. также: cpdf_moveto(), cpdf_rmoveto(), cpdf_curveto().
cpdf_circle
Черчение окружности
void cpdf_circle (int pdf_document, double x, double y, double radius [, int mode])
См. также cpdf_arc().
cpdf_arc
Черчение дуги
void cpdf_arc (int pdf_document, double x-соог, double y-coor. double radius, double start, double end [, int mode])
Начальный и конечный угол задаются start и end.
См. также cpdf_circle().
cpdf_rect
Черчение прямоугольника
void cpdf_rect (int pdf_document, double x, double y, double width, double height [, int mode])
Левый нижний угол задается (х,у); высота и ширина — height, width.
cpdf_closepath
Завершение текущего пути
void cpdf_closepath (int pdfjiocument)
cpdf_stroke
Заштриховывание пути
void cpdf_stroke (int pdfjiocument)
См. также: cpdf_closepath(), cpdf_closepath_stroke().
cpdf_closepath_stroke
Черчение и закрытие пути
void cpdf_closepath_stroke (int pdf_document)
Это комбинация cpdf_closepath() и cpdf_stroke().
См. также: cpdf_closepath(), cpdf_stroke().
cpdf_fill
Заполнение пути текущим цветом
void cpdfjfin (int pdf_document)
См. также: cpdf closepath(), cpdf_stroke(), cpdf_setgray_fill(), cpdf_ setgray(), cpdf_setrgbcolor_fill(), cpdf_setrgbcolor().
cpdf_fill_ stroke
Заполнение пути цветом и закрытие его
void cpdf_fill_stroke (int pdf_document)
См. также: cpdf_closepath(), cpdf_stroke(), cpdf_fill(), cpdf_setgray_ fill(), cpdf_setgray(), cpdf_setrgbcolor_fill(), cpdf_setrgbcolor().
cpdf_closepath_fill_stroke
Черчение, закрашивание и закрытие пути
void cpdf_closepath_fill_stroke (int pdf_document)
См. также: cpdf_closepath(). cpdf_stroke(), cpdf_fill(), cpdf_setgray_ fill(), cpdf_setgray(), cpdf_setrgbcolor_fill(), cpdf_setrgbcolor().
cpdf_clip
Прикрепление всех линий к текущему пути
void cpdf clip (int pdfjiocument)
pdf_setgray_fill
Установка заполнения серым цветом
old cpdf_setgray_fill (int pdf_document, double value)
См. также cpdf_setrgbcol or_fill ().
pdf_setgray_stroke
Установка штриховки серым цветом
poid cpdf_setgray_stroke (int pdf_document, double gray value)
См. также cpdf_setrgbcolor_stroke().
pdf_setgray
Установка заполнения и штриховки серым цветом
old cpdf_setgray (int pdf_document, double gray value)
См. также: cpdf_setrgbcolor_stroke(), cpdf setrgbcolor fill().
pdf_setrgbcolor_fill
Установка заполнения цветом rgb
oid cpdf_setrgbcolor_fill (int pdf_doc, double red, double green, double blue)
См. также: cpdf_setrgbcolor_stroke(), cpdf_setrgbcolor().
pdf_setrgbcolor_stroke
Установка штриховки цветом rgb
oid cpdf_setrgbcolor_stroke (int pdf_document, double red value, double green value, double blue value)
См. также: cpdf_setrgbcolor_fill(), cpdf_setrgbcolor().
pdf_setrgbcolor
Установка заполнения и штриховки серым цветом rgb
oid cpdf_setrgbcolor (int pdf_document, double red_value, double green_value, double blue_value)
См. также: cpdf_setrgbcolor_stroke(), cpdf_setrgbcolor_fill().
pdf_add_outline
Добавление закладки для текущей страницы
oid cpdf_add_outline (int pdf_document, string text)
Название закладки определяется аргументом text.
?php :pdf = cpdf_open(0).
3dfj>agejmt($cpdf. 1. 0. 595. 842):
3df_add_outline($cpdf. 0. 0. 0. 1. "Page 1"):
// ... /' some drawing // ... cpdf_f i nalт ze($cpdf):
Header("Content-type: application/pdf"):
cpdf_output_buf*?er($cpdf):
cpdf_close($cpdf). ?>
cpdf_set_page_animation
Установка режима перехода между страницами
void cpdf_set_page_animation (int pdf_document, int transition. double duration)
Аргумент transition определяет метод перехода, a duration — его длительность в секундах.
cpdf_Import_jpeg
Открытие рисунка JPEG
int cpdfjmportjpeg (int pdf_doc. string filename, double x, double y. double angle, double width, double height. double x-scale, double y-scale [, int mode])
Открывает рисунок из файла filename и размещает его в позиции (х,у) на текущей странице. Для рисунка можно указать угол поворота в градусах и масштабирование.
См. также cpdf_placejnlinejmage().
cpdf_place_inlinejmage
Размещение сгенерированного рисунка на странице
void cpdf_plасеJnlineJmage (int pdf_document, int image, double x, double y, double angle, double width, double height [, int mode])
Внедряет рисунок, созданный графическими функциями PHP.
См. также cpdfJmportJpeg().
cpdf_add_annotation
Добавление примечания
void cpdf_add_annotation (int pdf_document, double Их, double lly, double urx, double ury. string title, string content [, int mode])
Примечание располагается в левом нижнем углу (Их, Ну), верхний правый угол — (urx. ury).
Forms Data Format
Функции форматирования данных форм (Forms Data Format, PDF) предназначены для работы с формами PDF-документов. Для предварительной информации ознакомьтесь с документом http://partners. adobe.com/asn/developer/acrosdk/forms.html.
Основная идея FDF сходна с формами HTML. Отличие состоит в передаче (отправке) данных, поскольку передаются как сами данные (FDF), так и документ формы (PDF). В обычном случае PDF-форма с данными создается на основе PDF-документа, используемого как шаблон формы. То есть сначала создается FDF-документ (fdf_create()) и устанавливаются значения для каждого ноля ввода (fdf_set_ value()), а затем ассоциируется форма PDF (fdf_set_file()). После этого происходит отправка PDF-формы браузеру (с заголовком: MiraeType appllcation/vnd.fdf). Надстройка браузера (Acrobat reader plugin) распознает MimeType и загружает ассоциированную PDF-форму, заполняя ее данными PDF-документа.
Следующий пример иллюстрирует обработку данных формы.
<?php // Save the FDF data into a temp file
$fdffp = fopenC'test.fdf". "w"):
fwnte($fdffp. $HTTP_FDF_DATA. strlen($HTTP_FDF_DATA));
fclose($fdffp);
// Open temp file and evaluate data
// pdf form содержит значения полей:
date, comment. // publisher, и checkbox: show_publisner.
$fdf = fdf_open("test.fdf"): $date = fdf_get_value($fdf. "date").
echo "The date field has the value '<B>$date</B>'<BR>":
Scomment = fdf_get_value($fdf, "comment");
echo "The comment field has the value ''e>$comment</B>
'<BR>";
if(fdf_get_value($fdf. "show_publisher")
== "On") { Spublisher = fdf_get_value($fdf. "publisher"):
echo "The publisher field has the value '<B>$publisher</B>
'<BR>": } else
echo "Publisher shall not be shown.<BR>":
fdf_close($fdf); ?>
fdf_open
Открытие документа PDF
int fdf_open (string filename)
Открываемый файл должен содержать данные, возвращенные формой PDF. В настоящее время файл необходимо создавать вручную, используя fopen() и записывая данные HTTP_FDF_DATA функцией fwrite().
<?php // Save the PDF data into a temp file
Sfdffp = fopen("test.fdf". "w"):
fwnte($fdffp, $HTTP_FDF_DATA. strlen($HTTP_FDF_DATA)):
fclose($fdffp):
// Open temp file and evaluate data $fdf = fdf_open("test fdf").
fdf_close($fdf): ?>
См. также fdf_close().
fdf_close
Закрытие документа FDF
boolean fdf_close (int fdf_document)
См. также fdf_open().
fdf_create
Создание нового документа FDF
int fdf_create (void )
Функция необходима для установки значений полей.
<?рhр Soutfdf = fdf_create();
fdf_set_value($outfdf. "volume". Svolume. 0):
fdf set_file($outfdf. "http /testfdf/resultlabel.pdf"):
fdf_save($outfdf. "outtest.fdf").
fdf_close($outfdf):
Header("Content-type: application/vnd.fdf");
$fp = fopen("outtest fdf". "r"):
fpassthru(Sfp);
unlinkC'outtest.fdf"): ?>
См. также: fdf_close(), fdf_save(), fdf_open().
fdf_save
Сохранение документа PDF
int fdf_save (string filename)
Если имя файла указано как «.», то документ будет выводиться на стандартный поток вывода (отсылаться браузеру). Это не действует, если РНР является модулем apache (для вывода используйте fpassthru()).
См. также: fdf_close() и пример в fdf_create().
fdf_get_value
Получение значения поля
string fdf_get_value (int fdfjJocument, string fieldname)
См. также fdf_set_value().
fdf_set_value
Установка значения поля
bool fdf_set_value (int fdf_document, string fieldname, string value, int isName)
Последний аргумент определяет, будет ли значение поля преобразовываться в PDF Name (isName = 1) или в PDF String (isName = 0).
См. также fdf get value().
fdf_next_field_name
Получение имени следующего поля
string fdf_next_field_name (int fdf_document, string fieldname)
Возвращает имя первого поля (если аргумент fieldname имеет значение NULL) или имя поля, следующего за полем fieldname.
См. также: fdf_set_field(). fdf_get_field().
fdf_set_ap
Установка отображения поля
bool fdf_set_ap (int fdf_document. string field_name, int face, string filename, int page_number)
Устанавливается значение ключа АР. Возможные значения аргумента face: l=FDFNormalAP, 2=FDFRolloverAP, 3=FDFDownAP.
fdf_set_status
Установка ключа STATUS
bool fdf_set_status (int fdf_document, string status)
См. также fdf_get_status().
fdf_get_status
Получение значения ключа STATUS
string fdf_get_status (int fdf_document)
См. также fdf_set_status().
fdf_set_file
Назначение документа формы, установка ключа /F
boo! fdf_set_file (int fdf_document, string filename)
Ключ /F — это ссылка на документ PDF, который заполняется данными, обычно задаваемый URL (например: http:/testfdf/resuttlabel.pdf).
См. также: fdf_get_file() и пример в fdf_create().
fdf_get_file
Получение значения ключа /F
string fdf_get_file (int fdf_document)
См. также fdf_set_file().
fdf_set_flags
Установка флага поля
boo! fdf_set_flags (int fdf_doc, string fieldname, int whichFlags, int newFlags)
См. также fdf_set_opt().
fdf_set_opt
Установка параметра поля
bool fdf_set_opt (int fdf_document. string fieldname, int element, string strl, string str2)
См. также fdf_set_flags().
fdf_set_submit_form_action
Установка действия javascript для формы
bool fdf_set_submit_form_action (int fdf_document, string fieldname, int trigger, string script, int flags)
См. также fdf_set_javascript_action().
fdf_setjavascript_action
Установка действия javascript для поля
bool fdf_set_javascript_action (int fdf_document, string fieldname, int trigger, string script)

См. также fdf_set_submit_form_action().


 
На главную | Содержание | < Назад....Вперёд >
С вопросами и предложениями можно обращаться по nicivas@bk.ru. 2013 г. Яндекс.Метрика