290 lines
14 KiB
HTML
290 lines
14 KiB
HTML
|
||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
<HTML><HEAD><TITLE>Man page of filter</TITLE>
|
||
</HEAD><BODY>
|
||
<H1>filter</H1>
|
||
Section: Apple Inc. (7)<BR>Updated: CUPS<BR><A HREF="#index">Index</A>
|
||
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
|
||
|
||
<A NAME="lbAB"> </A>
|
||
<H2>NOM</H2>
|
||
|
||
filter - Interface pour des filtres de conversion de fichiers pour CUPS.
|
||
<A NAME="lbAC"> </A>
|
||
<H2>SYNOPSIS</H2>
|
||
|
||
<B>filter</B> <I>travail</I> <I>utilisateur</I> <I>titre</I> <I>nombre_copies</I> <I>options</I>[
|
||
<I>nom_fichier</I> ]
|
||
<PRE>
|
||
|
||
<B>#include <<A HREF="file:///usr/include/cups/cups.h">cups/cups.h</A>></B>
|
||
|
||
<B>ssize_t cupsBackChannelRead</B>(<B>char *</B><I>tampon</I>, <B>size_t </B><I>octets</I>,
|
||
<B>double </B><I>délai</I>);
|
||
|
||
<B>cups_sc_status_t cupsSideChannelDoRequest</B>(<B>cups_sc_command_t </B><I>commande</I>,
|
||
<B>char *</B><I>données</I>, <B>int *</B><I>taille_données</I>,
|
||
<B>double </B><I>délai</I>);
|
||
|
||
<B>#include <<A HREF="file:///usr/include/cups/ppd.h">cups/ppd.h</A>></B>
|
||
|
||
<B>const char *cupsGetOption</B>(<B>const char *</B><I>nom</I>, <B>int </B><I>nombre_options</I>,
|
||
<B>cups_option_t *</B><I>options</I>);
|
||
|
||
<B>int cupsMarkOptions</B>(<B>ppd_file_t *</B><I>ppd</I>, <B>int </B><I>nombre_options</I>,
|
||
<B>cups_option_t *</B><I>options</I>);
|
||
|
||
<B>int cupsParseOptions</B>(<B>const char *</B><I>arg</I>, <B>int </B><I>nombre_options</I>,
|
||
<B>cups_option_t **</B><I>options</I>);
|
||
|
||
<B>ppd_choice_t *ppdFindMarkedChoice</B>(<B>ppd_file_t *</B><I>ppd</I>, <B>const char *</B><I>mot_clef</I>);
|
||
|
||
<B>void ppdMarkDefaults</B>(<B>ppd_file_t *</B><I>ppd</I>);
|
||
|
||
<B>ppd_file_t *ppdOpenFile</B>(<B>const char *</B><I>fichier</I>);
|
||
</PRE>
|
||
|
||
<A NAME="lbAD"> </A>
|
||
<H2>DESCRIPTION</H2>
|
||
|
||
L’interface de filtres CUPS offre une méthode standard de prise en charge
|
||
par CUPS de nouveaux types de documents ou d’imprimantes. Chaque filtre est
|
||
capable de convertir des fichiers de différents formats dans un autre format
|
||
qui est soit imprimable directement, soit envoyé dans un autre filtre afin
|
||
de le rendre imprimable.
|
||
<P>
|
||
|
||
Les filtres <B>doivent</B> être capables de lire depuis un nom de fichier fourni
|
||
sur la ligne de commande, ou depuis l'entrée standard en copiant l'entrée
|
||
standard vers un fichier temporaire si nécessaire pour ce format de
|
||
fichier. Toutes les sorties <B>doivent</B> être envoyées sur la sortie
|
||
standard. Les filtres <B>ne doivent pas</B> essayer de communiquer directement
|
||
avec l’imprimante, d’autres processus ou d’autres services.
|
||
<P>
|
||
|
||
Le nom de la commande (<I>argv</I>[0]) vaut le nom de l'imprimante de
|
||
destination, mais est également disponible dans la variable d'environnement
|
||
<B>PRINTER</B>.
|
||
<A NAME="lbAE"> </A>
|
||
<H2>OPTIONS</H2>
|
||
|
||
Les options sont passées dans <I>argv[5]</I> et sont encodées à partir des
|
||
attributs IPP correspondants utilisés lors de soumission du
|
||
travail. Utilisez la fonction <B>cupsParseOptions</B>() pour charger les options
|
||
dans le tableau <B>cups_option_t</B> et la fonction <B>cupsGetOption</B>() pour
|
||
obtenir la valeur d’un certain attribut. Soyez attentif à rechercher les
|
||
alias courants des attributs IPP tels que « lansdscape » pour l’attribut
|
||
« orientation-requested ».
|
||
<P>
|
||
|
||
Les options passées sur la ligne de commande habituellement n’incluent pas
|
||
les choix par défaut du fichier PPD de l’imprimante. Utilisez les fonctions
|
||
<B>ppdMarkDefaults</B>() et <B>cupsMarkOptions</B>() de la bibliothèque CUPS pour
|
||
appliquer les options pour PPD par défaut et lier tout attribut IPP à
|
||
l’option PPD correspondante. Utilisez la fonction <B>ppdFindMarkedChoice</B>()
|
||
pour obtenir le choix de l’utilisateur sélectionné pour une option PPD. Par
|
||
exemple, un filtre peut utiliser le code suivant pour déterminer la valeur
|
||
actuelle de l’option PPD <B>Duplex</B> :
|
||
<PRE>
|
||
|
||
ppd_file_t *ppd = ppdOpenFile(getenv("PPD"));
|
||
cups_option_t *options = NULL;
|
||
int num_options = cupsParseOptions(argv[5], 0, &options);
|
||
|
||
ppdMarkDefaults(ppd);
|
||
cupsMarkOptions(ppd, num_options, options);
|
||
|
||
ppd_choice_t *choice = ppdFindMarkedChoice(ppd, "Duplex");
|
||
</PRE>
|
||
|
||
<P>
|
||
|
||
Les filtres matriciels devraient utiliser le choix d’options passées par
|
||
l’en-tête de la page matricielle, puisque celles-ci renvoient les options
|
||
utilisées sur une page donnée. Les options passées sur la ligne de commande
|
||
déterminent les valeurs par défaut pour le travail en entier, et peuvent
|
||
être outrepassées en les définissant page par page.
|
||
<A NAME="lbAF"> </A>
|
||
<H2>MESSAGES JOURNALISÉS</H2>
|
||
|
||
Les messages envoyés à la sortie d'erreur sont généralement enregistrés dans
|
||
l'attribut « printer-state-message » et dans le journal <I>ErrorLog</I>
|
||
actuel. Chaque ligne commence par un préfixe standard :
|
||
<DL COMPACT>
|
||
<DT id="1"><B>ALERT: </B><I>message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« alert ».
|
||
<DT id="2"><B>ATTR: </B><I>attribut=valeur </I>[ <I>... attribut=valeur</I>]<DD>
|
||
Définir la tâche nommée ou la(es) propriété(s) de l'imprimante. La propriété
|
||
de travail suivante peut être paramétrée : « job-media-progress ». Les
|
||
propriétés d'imprimante suivantes peuvent être paramétrées :
|
||
« auth-info-required », « marker-colors », « marker-high-levels »,
|
||
« marker-levels », « marker-low-levels », « marker-message »,
|
||
« marker-names », « marker-types », « printer-alert » et
|
||
« printer-alert-description ».
|
||
<DT id="3"><B>CRIT: </B><I>message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« critical ».
|
||
<DT id="4"><B>DEBUG: </B><I>message</I><DD>
|
||
Ajouter le message indiqué au fichier actuel <I>ErrorLog</I> en utilisant le
|
||
niveau de journalisation « debug ». Les messages <B>DEBUG</B> ne sont jamais
|
||
stockés dans l’attribut « printer-state-message ».
|
||
<DT id="5"><B>DEBUG2: </B><I>message</I><DD>
|
||
<BR>
|
||
|
||
Ajouter le message indiqué au fichier actuel <I>ErrorLog</I> en utilisant le
|
||
niveau de journalisation « debug2 ». Les messages <B>DEBUG2</B> ne sont jamais
|
||
stockés dans l’attribut « printer-state-message ».
|
||
<DT id="6"><B>EMERG: </B><I>message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« emergency ».
|
||
<DT id="7"><B>ERROR:</B><I> message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« error ».
|
||
<DT id="8"><B>INFO:</B><I> message</I><DD>
|
||
Définir l'attribut « printer-state-message ». Si <B>LogLevel</B> vaut
|
||
« debug2 », le message est également ajouté au journal actuel <I>ErrorLog</I> en
|
||
utilisant le niveau de journalisation « info ».
|
||
<DT id="9"><B>NOTICE:</B><I> message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« notice ».
|
||
<DT id="10"><B>PAGE:</B><I> numéro_page #-copies</I><DD>
|
||
<DT id="11"><B>PAGE:</B><I> total #-pages</I><DD>
|
||
Ajouter une entrée au fichier <I>PageLog</I> actuel. La première forme ajoute le
|
||
nombre de copies à l'attribut « job-media-sheets-completed ». La seconde
|
||
forme définit l'attribut « job-media-sheets-completed » au nombre de pages.
|
||
<DT id="12"><B>PPD:</B><I> Mot_clef=Valeur</I> [ <I>... Mot_clefN=Valeur</I> ]<DD>
|
||
Définir les mots-clefs dans le fichier PPD de l'imprimante. Cela est
|
||
généralement utilisé pour mettre à jour les options de mots-clefs par défaut
|
||
telles que <B>DefaultPageSize</B> et les nombreuses options insérables dans le
|
||
fichier PPD.
|
||
<DT id="13"><B>STATE:</B><I> raison-état-imprimante</I> [ <I>... raison-état-imprimante</I>]<DD>
|
||
<DT id="14"><B>STATE: +</B><I> raison-état-imprimante</I>[ <I>... raison-état-imprimante</I> ]<DD>
|
||
<DT id="15"><B>STATE: -</B><I> raison-état-imprimante</I>[ <I>...raison-état-imprimante</I>]<DD>
|
||
Définir, ajouter ou retirer des mots-clefs « raison-état-imprimante » de la
|
||
file d'attente en cours. C'est utilisé généralement pour indiquer l'état du
|
||
média, de l'encre et de l'encre en poudre (toner) d'une imprimante.
|
||
<DT id="16"><B>WARNING:</B><I> message</I><DD>
|
||
Définir l'attribut « printer-state-message » et ajouter le message donné au
|
||
journal <I>ErrorLog</I> actuel en utilisant le niveau de journalisation
|
||
« warning ».
|
||
</DL>
|
||
<A NAME="lbAG"> </A>
|
||
<H2>VARIABLES D'ENVIRONNEMENT</H2>
|
||
|
||
Les variables d'environnement suivantes sont définies par le serveur CUPS
|
||
pour l'exécution des filtres :
|
||
<DL COMPACT>
|
||
<DT id="17"><B>CHARSET</B><DD>
|
||
Définir le jeu de caractères par défaut à utiliser pour les textes,
|
||
généralement « utf-8 ».
|
||
<DT id="18"><B>CLASS</B><DD>
|
||
Quand un travail est soumis à une classe d'imprimantes, elle contient le nom
|
||
de la classe d'imprimante concernée. Sinon, cette variable d'environnement
|
||
n'est pas définie.
|
||
<DT id="19"><B>CONTENT_TYPE</B><DD>
|
||
Le type MIME de média associé au fichier de travail soumis, par exemple
|
||
« application/postscript ».
|
||
<DT id="20"><B>CUPS_CACHEDIR</B><DD>
|
||
Le répertoire où peuvent se trouver et être stockés les fichiers cache
|
||
semi-persistants.
|
||
<DT id="21"><B>CUPS_DATADIR</B><DD>
|
||
Le répertoire où se trouvent les fichiers de données.
|
||
<DT id="22"><B>CUPS_FILETYPE</B><DD>
|
||
Le type du fichier en cours d'impression : « job-sheet » pour une page avec
|
||
bannière et « document » pour un fichier d’impression normal.
|
||
<DT id="23"><B>CUPS_MAX_MESSAGE</B><DD>
|
||
La taille maximale d'un message envoyé à la sortie d'erreur, incluant
|
||
n'importe quel préfixe et le caractère de nouvelle ligne.
|
||
<DT id="24"><B>CUPS_SERVERROOT</B><DD>
|
||
Le répertoire racine du serveur.
|
||
<DT id="25"><B>FINAL_CONTENT_TYPE</B><DD>
|
||
Le type MIME de média associé à la sortie prévue pour l'imprimante, par
|
||
exemple « application/vnd.cups-postscript ».
|
||
<DT id="26"><B>LANG</B><DD>
|
||
La locale de langue par défaut (généralement <B>C</B> ou <B>en</B>).
|
||
<DT id="27"><B>PATH</B><DD>
|
||
Le chemin d'exécution standard pour les programmes externes qui peuvent être
|
||
exécutés par le filtre.
|
||
<DT id="28"><B>PPD</B><DD>
|
||
Le chemin complet du fichier PPD (« PostScript Printer Description ») de
|
||
cette imprimante.
|
||
<DT id="29"><B>PRINTER</B><DD>
|
||
Le nom de l'imprimante.
|
||
<DT id="30"><B>RIP_CACHE</B><DD>
|
||
La quantité de mémoire recommandée pour les RIP (« Raster Image
|
||
Processors »).
|
||
<DT id="31"><B>SOFTWARE</B><DD>
|
||
Le nom et le numéro de version du serveur (par exemple
|
||
CUPS/<I>majeur.mineur</I>).
|
||
<DT id="32"><B>TZ</B><DD>
|
||
Le fuseau horaire du serveur
|
||
<DT id="33"><B>USER</B><DD>
|
||
L'utilisateur qui exécute le filtre, généralement « lp » ou « root » ;
|
||
consultez le fichier <I>cups-files.conf</I> pour le paramétrage actuel.
|
||
</DL>
|
||
<A NAME="lbAH"> </A>
|
||
<H2>CONFORMITÉ</H2>
|
||
|
||
Alors que l’interface de filtre est compatible avec les scripts d’interface
|
||
de System V, CUPS lui-même ne les gère pas.
|
||
<A NAME="lbAI"> </A>
|
||
<H2>NOTES</H2>
|
||
|
||
CUPS printer drivers and backends are deprecated and will no longer be
|
||
supported in a future feature release of CUPS. Printers that do not support
|
||
IPP can be supported using applications such as <B><A HREF="/cgi-bin/man/man2html?1+ippeveprinter">ippeveprinter</A></B>(1).
|
||
<P>
|
||
|
||
Les filtres CUPS ne sont pas faits pour être lancés directement par
|
||
l'utilisateur. À côté des problèmes liés à l'ancienne interface System V
|
||
(<I>argv[0]</I> est le nom de l'imprimante), les filtres de CUPS attendent
|
||
également des variables d'environnement et descripteurs de fichiers
|
||
spécifiques, et sont généralement lancés dans une session utilisateur qui
|
||
(sous macOS) possèdent des restrictions supplémentaires qui affectent la
|
||
façon dont ils fonctionnent. À moins que vous ne soyez un développeur ou que
|
||
vous sachiez ce que vous faites, veuillez ne pas lancer les filtres
|
||
directement. À la place veuillez utiliser le programme <B><A HREF="/cgi-bin/man/man2html?8+cupsfilter">cupsfilter</A>(8)</B> pour
|
||
utiliser les filtres adéquats pour effectuer la conversion dont vous avez
|
||
besoin.
|
||
<A NAME="lbAJ"> </A>
|
||
<H2>VOIR AUSSI</H2>
|
||
|
||
<B><A HREF="/cgi-bin/man/man2html?7+backend">backend</A></B>(7), <B><A HREF="/cgi-bin/man/man2html?1+cups">cups</A></B>(1), <B><A HREF="/cgi-bin/man/man2html?5+cups-files.conf">cups-files.conf</A></B>(5), <B><A HREF="/cgi-bin/man/man2html?8+cupsd">cupsd</A></B>(8),
|
||
<B><A HREF="/cgi-bin/man/man2html?8+cupsfilter">cupsfilter</A></B>(8),
|
||
<BR>
|
||
|
||
Aide en ligne de CUPS : <URL:<I><A HREF="http://localhost:631/help">http://localhost:631/help</A></I>>
|
||
<A NAME="lbAK"> </A>
|
||
<H2>COPYRIGHT</H2>
|
||
|
||
Copyright 2007-2019 par Apple Inc.
|
||
<P>
|
||
|
||
<HR>
|
||
<A NAME="index"> </A><H2>Index</H2>
|
||
<DL>
|
||
<DT id="34"><A HREF="#lbAB">NOM</A><DD>
|
||
<DT id="35"><A HREF="#lbAC">SYNOPSIS</A><DD>
|
||
<DT id="36"><A HREF="#lbAD">DESCRIPTION</A><DD>
|
||
<DT id="37"><A HREF="#lbAE">OPTIONS</A><DD>
|
||
<DT id="38"><A HREF="#lbAF">MESSAGES JOURNALISÉS</A><DD>
|
||
<DT id="39"><A HREF="#lbAG">VARIABLES D'ENVIRONNEMENT</A><DD>
|
||
<DT id="40"><A HREF="#lbAH">CONFORMITÉ</A><DD>
|
||
<DT id="41"><A HREF="#lbAI">NOTES</A><DD>
|
||
<DT id="42"><A HREF="#lbAJ">VOIR AUSSI</A><DD>
|
||
<DT id="43"><A HREF="#lbAK">COPYRIGHT</A><DD>
|
||
</DL>
|
||
<HR>
|
||
This document was created by
|
||
<A HREF="/cgi-bin/man/man2html">man2html</A>,
|
||
using the manual pages.<BR>
|
||
Time: 00:05:02 GMT, March 31, 2021
|
||
</BODY>
|
||
</HTML>
|