I also was not able to install ps using PEAR. Here are the steps I took to getting it installed:
1. you may need to install the perl module XML::Parser (http://search.cpan.org/~msergeant/XML-Parser/Parser.pm) to get pslib to install
2. install pslib (http://pslib.sourceforge.net/)
3. install ps (http://pecl.php.net/package/ps) using the instructions from (http://www.php.net/manual/en/install.pecl.phpize.php)
4. copy the ps.so file created by to the php extensions directory (not automatically done)
5. edit php.ini to include the ps extension (not automatically done)
If you are running FreeBSD, this link may help you with problems installing pslib (http://www.freebsd.org/cgi/query-pr.cgi?pr=84406).
Note that pslib (the library) and ps (the php extension) are not the same.
CXXVI. Création de document PostScript
Introduction
Ce module permet de créer des documents PostScript. Il a beaucoup de similarités avec l'extension pdf. Actuellement, cet API est pratiquement identique et dans la plupart des cas, seuls les préfixes de chaque fonction sont remplacés de pdf_ par ps_. Cela fonctionne aussi pour les fonctions qui n'ont pas de signification dans le document PostScript (par exemple, l'ajout d'hyperliens) mais aura un effet si le document est converti en PDF.
Les documents créés par cette extension sont parfois même supérieurs aux documents créés avec l'extension pdf, parce que les fonctions de rendement de texte de pslib peuvent gérer le crénage, la coupure de mot et les ligatures qui résultent à un bien meilleur affichage de boîte texte.
Pré-requis
Vous devez au moins PHP 4.3.0 et pslib >= 0.1.12. La bibliothèque ps (pslib) est disponible à http://pslib.sourceforge.net/.
Installation
Une courte note pour l'installation : tapez seulement
$ pecl install ps |
Configuration à l'exécution
Cette extension ne définit aucune directive de configuration.
Constantes pré-définies
Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.
Les deux tables suivantes listent toutes les constantes définies par l'extension ps.
Contact Information
Si vous avez des commentaires, résolutions de bogues, améliorations pour soit cette extension ou pslib alors laissez moi un message à steinm@php.net. Toute aide est la bienvenue.
- Table des matières
- ps_add_bookmark -- Ajoute un signet à la page courante
- ps_add_launchlink -- Ajoute un lien qui démarre un fichier
- ps_add_locallink -- Ajoute un lien à une page dans le même document
- ps_add_note -- Ajoute une note à la page courante
- ps_add_pdflink -- Ajoute un lien à une page à un second document pdf
- ps_add_weblink -- Ajoute un lien à un emplacement web
- ps_arc -- Dessine un arc dans le sens contraire des aiguilles d'une montre
- ps_arcn -- Dessine un arc dans le sens des aiguilles d'une montre
- ps_begin_page -- Démarre une nouvelle page
- ps_begin_pattern -- Démarre un nouveau motif
- ps_begin_template -- Démarre un nouveau modèle
- ps_circle -- Dessine un cercle
- ps_clip -- Attache le dessin au chemin courant
- ps_close_image -- Ferme l'image et libère la mémoire
- ps_close -- Ferme le document PostScript
- ps_closepath_stroke -- Ferme et trace un chemin
- ps_closepath -- Ferme un chemin
- ps_continue_text -- Continue un texte à la ligne suivante
- ps_curveto -- Dessine une courbe
- ps_delete -- Supprime toutes les ressources d'un document PostScript
- ps_end_page -- Termine une page
- ps_end_pattern -- Termine un motif
- ps_end_template -- Termine un modèle
- ps_fill_stroke -- Remplit et trace le chemin courant
- ps_fill -- Remplit le chemin courant
- ps_findfont -- Charge une police
- ps_get_buffer -- Récupère le tampon complet contenant les données PS générées
- ps_get_parameter -- Récupère certains paramètres
- ps_get_value -- Récupère certaines valeurs
- ps_hyphenate -- Relie un mot
- ps_lineto -- Dessine une ligne
- ps_makespotcolor -- Crée une tache de couleur
- ps_moveto -- Fixe le point courant
- ps_new -- Crée un nouvel objet document PostScript
- ps_open_file -- Ouvre un fichier pour écriture
- ps_open_image_file -- Ouvre une iamge à partir d'un fichier
- ps_open_image -- Lit une image pour placement futur
- ps_place_image -- Place une image sur la page
- ps_rect -- Dessine un rectangle
- ps_restore -- Restaure un contexte précédemment sauvegardé
- ps_rotate -- Fixe le facteur de rotation
- ps_save -- Sauvegarde le contexte courant
- ps_scale -- Fixe le facteur de redimensionnement
- ps_set_border_color -- Fixe la couleur des bordures pour les commentaires
- ps_set_border_dash -- Fixe la grandeur des tirets pour les bordures des commentaires
- ps_set_border_style -- Fixe le style de bordure des commentaires
- ps_set_info -- Fixe les champs d'informations d'un document
- ps_set_parameter -- Fixe certains paramètres
- ps_set_text_pos -- Fixe la position l'écriture du texte
- ps_set_value -- Fixe certaines valeurs
- ps_setcolor -- Fixe la couleur courante
- ps_setdash -- Fixe l'apparence d'une ligne pointillée
- ps_setflat -- Fixe la position à plat
- ps_setfont -- Fixe la police à utiliser pour la prochaine écriture
- ps_setgray -- Fixe la valeur de gris
- ps_setlinecap -- Fixe l'apparence des fins de ligne
- ps_setlinejoin -- Fixe comment les lignes connectés sont jointes
- ps_setlinewidth -- Fixe la largeur d'une ligne
- ps_setmiterlimit -- Fixe les limites de l'anglet
- ps_setpolydash -- Fixe l'apparence d'une ligne pointillée
- ps_shading_pattern -- Crée un motif basé sur le ton
- ps_shading -- Crée un ton pour usage futur
- ps_shfill -- Remplit un espace avec un ton
- ps_show_boxed -- Écriture de texte dans une boîte
- ps_show_xy -- Écrit du texte à la position donnée
- ps_show -- Écrit du texte
- ps_string_geometry -- Récupère les géométries d'une chaîne de caractères
- ps_stringwidth -- Récupère la largeur d'une chaîne de caractères
- ps_stroke -- Dessine le chemin courant
- ps_symbol_name -- Récupère le nom d'un glyphe
- ps_symbol_width -- Récupère la largeur d'un glyphe
- ps_symbol -- Écrit un glyphe
- ps_translate -- Fixe une translation
OK, OK, the previous note helped get me started, but really, it took me most of the day to figure out how to get this "pear install ps" to work. At first, it seemed geared for PHP4. Hopefully, I can save someone the day I just spent. (Don't get me wrong, I learned something new).
If the above statement doesn't work try this because it worked for me using PHP5 and Apache.
1. Forget the "pear install ps", it doesn't work. Whoever wrote that should get punched.
2. Make sure you've got PHP5 and Apache working as you like.
3. Go to http://pecl.php.net/package/ps and download the latest release.
4. Decompress the contents into its own directory somewhere.
5. Read http://www.php.net/manual/en/install.pecl.phpize.php which tells you what to do with what you just decompressed.
6. Move the final result (a shared object file) into the directory specified by your php.ini file's "extension_dir".
7. Create an entry in you php.ini (along with other similar statements that should already be there) that says "extension=ps.so"
8. For giggles, restart apache
Worked for me, hope it works for you...
For everybody who is frustrated by the not working of 'pear install ps' command under most likely SuSE, at www.hipersonik.com/php_ps_pslib.html is a possible way to get it working. It is also possible to use these instructions under other distributions.
If 'pear install ps' works fine from the start (pslib etc is installed), but ps does not work yet, use dl('ps.so'); This will save you a lot of time.
