cvs: phpdoc-sk /reference/cpdf reference.xml
[email protected] ("Joseph Drake")
| Newsgroups | php.doc.sk |
|---|---|
| Message-ID | <cvsjoseph1047863464@cvsserver> |
joseph Sun Mar 16 20:11:04 2003 EDT
Added files:
/phpdoc-sk/reference/cpdf reference.xml
Log:
new one
Index: phpdoc-sk/reference/cpdf/reference.xml
+++ phpdoc-sk/reference/cpdf/reference.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.7 Maintainer: joseph Status: ready -->
<reference id="ref.cpdf">
<title>ClibPDF funkcie</title>
<titleabbrev>ClibPDF</titleabbrev>
<partintro>
<section id="cpdf.intro">
&reftitle.intro;
<para>
ClibPDF vám dovoµuje vytvára» PDF dokumenty s PHP. Funkènos» ClibPDF
a API sú podobné ako <link linkend="ref.pdf">PDFlib</link>.
Táto dokumentáciu by ste mali èíta» súèasne s ClibPDF manuálom, nakoµko
vysvetµuje kni¾nicu vo väè¹om detaile.
</para>
<para>
Mnoho funkcií v pôvodnom ClibPDF a PHP module, rovnako ako
<link linkend="ref.pdf">PDFlib</link>, má rovnaké názvy.
V¹etky funkcie okrem <function>cpdf_open</function> majú ako
svoj prvý parameter handle pre dokument.
</para>
<para>
Momentálne sa handle interne nepou¾íva, preto¾e ClibPDF nepodporuje
vytváranie niekoµkých PDF dokumentov naráz. Vlastne by ste to namali
ani skú¹a», výsledky sa nedajú predvída». Nemo¾no prehliadnú» aké sú
následky v prepletenom prostredí. Podµa autora ClibPDF dôjde k zmene
v jednom z ïal¹ích vydaní (v dobe písania tohto dokumentu je
aktuálnou verziou 1.10). Ak túto funkènos» potrebujete, pou¾ite
pdflib modul..
</para>
<para>
Peknou vlastnos»ou ClibPDF (a <link
linkend="ref.pdf">PDFlib</link>) je schopnos» vytvára» celý
pdf dokument v pamäti bez pou¾itia doèasných súborov. Taktie¾
poskytuje schopnos» udáva» súradnice v preddefinovanej jednotke
då¾ky. (Táto vlastnos» sa tie¾ mô¾e simulova» cez
<function>pdf_translate</function> pri pou¾ití <link
linkend="ref.pdf">PDFlib</link> funkcií.)
</para>
<para>
Ïal¹ou skvelou vlastnos»ou ClibPDF je fakt, ¾e ak u¾ bola nová strana
otvorená, iná strana sa mô¾e hocikedy modifikova». Funkcia
<function>cpdf_set_current_page</function> umo¾òuje odlo¾i» aktuálnu
stranu a pou¾i» inú na modifikovanie.
</para>
<para>
Väè¹ina funkcií sa veµmi jednoducho pou¾íva. Naj»a¾¹ia èas» je snáï
len vytváranie veµmi jednoduchého PDF dokumentu. Následujúci príklad
by vám mal pomôc» so zaèatkom. Vytvára dokument s jednou stranou.
Strana obsahuje text "Times-Roman" v obrysovom 30pt fonte. Text
je podèiarknutý.
</para>
</section>
<section id="cpdf.requirements">
&reftitle.required;
<para>
Aby ste ClibPDF funkcie mohli pou¾íva», musíte nain¹talova» balík
ClibPDF. Je mo¾né si ho stiahnú» z <ulink url="&url.fastio;">
FastIO</ulink>, ale vy¾aduje kúpu licencie pre komerèné pou¾itie.
PHP vy¾aduje, aby ste pou¾ívali cpdflib >= 2.
</para>
</section>
&reference.cpdf.configure;
<section id="cpdf.configuration">
&reftitle.runtime;
&no.config;
</section>
&reference.cpdf.constants;
<section id="cpdf.examples">
&reftitle.examples;
<example>
<title>Jednoduchý ClibPDF príklad</title>
<programlisting>
<![CDATA[
<?php
$cpdf = cpdf_open(0);
cpdf_page_init($cpdf, 1, 0, 595, 842, 1.0);
cpdf_add_outline($cpdf, 0, 0, 0, 1, "Page 1");
cpdf_begin_text($cpdf);
cpdf_set_font($cpdf, "Times-Roman", 30, "WinAnsiEncoding");
cpdf_set_text_rendering($cpdf, 1);
cpdf_text($cpdf, "Times Roman outlined", 50, 750);
cpdf_end_text($cpdf);
cpdf_moveto($cpdf, 50, 740);
cpdf_lineto($cpdf, 330, 740);
cpdf_stroke($cpdf);
cpdf_finalize($cpdf);
Header("Content-type: application/pdf");
cpdf_output_buffer($cpdf);
cpdf_close($cpdf);
?>
]]>
</programlisting>
</example>
<para>
pdflib distribúcia obsahuje komplexnej¹í príklad, ktorý vytvára sériu
strán s analógovými hodinami. Tu je príklad skonvertovaný do PHP
pomocou roz¹írenia ClibPDF:
</para>
<example>
<title>pdfclock príklad z pdflib 2.0 distribúcie</title>
<programlisting>
<![CDATA[
<?php
$radius = 200;
$margin = 20;
$pagecount = 40;
$pdf = cpdf_open(0);
cpdf_set_creator($pdf, "pdf_clock.php3");
cpdf_set_title($pdf, "Analogove Hodiny");
while($pagecount-- > 0) {
cpdf_page_init($pdf, $pagecount+1, 0, 2 * ($radius + $margin), 2 * ($radius + $margin), 1.0);
cpdf_set_page_animation($pdf, 4, 0.5, 0, 0, 0); /* wipe */
cpdf_translate($pdf, $radius + $margin, $radius + $margin);
cpdf_save($pdf);
cpdf_setrgbcolor($pdf, 0.0, 0.0, 1.0);
/* posun o minutu */
cpdf_setlinewidth($pdf, 2.0);
for ($alpha = 0; $alpha < 360; $alpha += 6)
{
cpdf_rotate($pdf, 6.0);
cpdf_moveto($pdf, $radius, 0.0);
cpdf_lineto($pdf, $radius-$margin/3, 0.0);
cpdf_stroke($pdf);
}
cpdf_restore($pdf);
cpdf_save($pdf);
/* posun o 5 minut */
cpdf_setlinewidth($pdf, 3.0);
for ($alpha = 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);
}
$ltime = getdate();
/* nakresli hodinovu rucicku */
cpdf_save($pdf);
cpdf_rotate($pdf, -(($ltime['minutes']/60.0) + $ltime['hours'] - 3.0) * 30.0);
cpdf_moveto($pdf, -$radius/10, -$radius/20);
cpdf_lineto($pdf, $radius/2, 0.0);
cpdf_lineto($pdf, -$radius/10, $radius/20);
cpdf_closepath($pdf);
cpdf_fill($pdf);
cpdf_restore($pdf);
/* nakresli minutovu rucicku */
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, $radius * 0.8, 0.0);
cpdf_lineto($pdf, -$radius/10, $radius/20);
cpdf_closepath($pdf);
cpdf_fill($pdf);
cpdf_restore($pdf);
/* nakresli sekundovu rucicku */
cpdf_setrgbcolor($pdf, 1.0, 0.0, 0.0);
cpdf_setlinewidth($pdf, 2);
cpdf_save($pdf);
cpdf_rotate($pdf, -(($ltime['seconds'] - 15.0) * 6.0));
cpdf_moveto($pdf, -$radius/5, 0.0);
cpdf_lineto($pdf, $radius, 0.0);
cpdf_stroke($pdf);
cpdf_restore($pdf);
/* nakresli maly kruh v strede */
cpdf_circle($pdf, 0, 0, $radius/30);
cpdf_fill($pdf);
cpdf_restore($pdf);
cpdf_finalize_page($pdf, $pagecount+1);
}
cpdf_finalize($pdf);
Header("Content-type: application/pdf");
cpdf_output_buffer($pdf);
cpdf_close($pdf);
?>
]]>
</programlisting>
</example>
</section>
<section id="cpdf.seealso">
&reftitle.seealso;
<para>
Tie¾ pozri dokumentáciu <link linkend="ref.pdf">PDFlib</link>
roz¹írenia.
</para>
</section>
</partintro>
&reference.cpdf.functions;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->