<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JoPa.Fr &#187; Code barre</title>
	<atom:link href="http://www.jopa.fr/index.php/tag/code-barre/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jopa.fr</link>
	<description>001100010BIDOUILLE11101010111100010LIBRE1000100111100101</description>
	<lastBuildDate>Tue, 10 Jan 2012 21:59:31 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>QR Codes et encodage (qrencode)</title>
		<link>http://www.jopa.fr/index.php/2009/08/26/qr-codes-et-encodage-qrencode/</link>
		<comments>http://www.jopa.fr/index.php/2009/08/26/qr-codes-et-encodage-qrencode/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 22:12:37 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Bidouilles]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Code barre]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels Libres]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1758</guid>
		<description><![CDATA[Pour compléter mon billet sur la génération de codes barres, je vais me pencher sur les codes à 2 dimensions : les QR Codes. Pour reprendre la définition de &#171;&#160;Wikipedia&#160;&#187; : Le code QR ou QR Code (en anglais) est un code-barres en 2 dimensions (code matrice) pouvant stocker jusqu&#8217;à 7089 caractères numériques, 4296 caractères alphanumériques (contrairement au code-barre [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Pour compléter mon billet<a title="generer-codes-barres-lignes-de-commandes-linux-barcode" href="generer-codes-barres-lignes-de-commandes-linux-barcode"> sur la génération de codes barres</a>, je vais me pencher sur les codes à 2 dimensions : les QR Codes.</p>
<p style="text-align: center;"><img class="size-full wp-image-1759 aligncenter" title="jopaqrcode" src="http://www.jopa.fr/wp-content/uploads/2009/08/jopaqrcode.png" alt="jopaqrcode" width="135" height="135" /></p>
<p>Pour reprendre la définition de &laquo;&nbsp;<a title="http://fr.wikipedia.org/wiki/Code_QR" href="http://fr.wikipedia.org/wiki/Code_QR">Wikipedia</a>&nbsp;&raquo; :</p>
<blockquote>
<p style="text-align: justify;">Le <strong>code QR</strong> ou <em><strong>QR Code</strong></em> (en <a style="text-decoration: none; color: #002bb8; background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; background-position: initial initial;" title="Anglais" href="http://fr.wikipedia.org/wiki/Anglais">anglais</a>) est un <a style="text-decoration: none; color: #002bb8; background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; background-position: initial initial;" title="Code-barre" href="http://fr.wikipedia.org/wiki/Code-barre">code-</a><a style="text-decoration: none; color: #002bb8; background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; background-position: initial initial;" title="Code-barre" href="http://fr.wikipedia.org/wiki/Code-barre">barres</a> en 2 dimensions (code matrice) pouvant stocker jusqu&#8217;à 7089 caractères numériques, 4296 caractères alphanumériques (contrairement au code-barre « traditionnel » qui lui ne peut stocker que de 10 à 13 caractères) ou 2953 <a style="text-decoration: none; color: #002bb8; background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; background-position: initial initial;" title="Octet" href="http://fr.wikipedia.org/wiki/Octet">octets</a> . Il a l&#8217;avantage de pouvoir stocker beaucoup d&#8217;informations tout en étant petit et rapide à scanner. Ainsi, le sigle « QR » dérive de « <em>Quick Respons<span style="font-style: normal;"><em>e</em> » car le contenu peut être décodé rapidement.</span></em></p>
<p style="text-align: justify;"><em><span style="font-style: normal;"><br />
</span></em></p></blockquote>
<p style="text-align: justify; "><span id="more-1758"></span></p>
<p style="text-align: justify; ">Ce type de code, par sa capacité, permet de &laquo;&nbsp;stocker&nbsp;&raquo; un petit texte, une adresse e-mail, une url, un numéro de téléphone ou encore une <em><a title="http://fr.wikipedia.org/wiki/Vcard" href="http://fr.wikipedia.org/wiki/Vcard">vcard</a></em> complète. Il présente l&#8217;intérêt de pouvoir être interprété rapidement à partir d&#8217;un PDA ou d&#8217;un téléphone, bien sûr munis d&#8217;un appareil photo et d&#8217;une petite application permettant le décodage. Le contenu, en fonction de son type, peut être, ensuite, traité directement par l&#8217;appareil : pointage du navigateur vers l&#8217;url, création d&#8217;un nouvel email,  import de la <em>vcard </em>dans le carnet d&#8217;adresses, etc&#8230; Un concept qui ravie les adeptes de gadgets mobiles, en permettant, en un shoot, la saisie d&#8217;adresses ou d&#8217;url, pas toujours très pratique, voir fastidieuse sur ce genre d&#8217;appareil.</p>
<p style="text-align: justify; ">
<p style="text-align: justify; ">
<div id="attachment_1786" class="wp-caption alignnone" style="width: 490px"><a href="http://fr.androlib.com/android.application.com-google-zxing-client-android-xzA.aspx"><img class="size-full wp-image-1786" title="Barcode-Scanner-URL-Found" src="http://www.jopa.fr/wp-content/uploads/2009/08/Barcode-Scanner-URL-Found.jpg" alt="Application &quot;Barcode scanner&quot; sur un téléphone Androïd (HTC Hero)" width="480" height="320" /></a><p class="wp-caption-text">Application &quot;Barcode scanner&quot; sur un téléphone Androïd (HTC Hero)</p></div>
<p style="text-align: justify; ">
<p>Pour créer son propre <em>QR Code</em>, il existe de nombreux générateurs en ligne, en voici quelques uns, la liste est loin d&#8217;être exhaustive :</p>
<ul>
<li><a title="http://qrcode.kaywa.com" href="http://qrcode.kaywa.com">http://qrcode.kaywa.com</a>,</li>
<li><a title="http://www.snapmaze.com/" href="http://www.snapmaze.com/">http://www.snapmaze.com</a>,</li>
<li><a title="http://zxing.appspot.com/generator" href="http://zxing.appspot.com/generator">http://zxing.appspot.com/generator</a>.</li>
</ul>
<p>Comme pour les codes barres classiques (1 dimension), ce qui va m&#8217;intéresser, c&#8217;est bien entendu de pouvoir les générer en local&#8230; et si possible en lignes de commandes ( eh oui ! Encore !).</p>
<p>Il existe un petit programme qui fait ça très bien et qui se nomme judicieusement : <a title="http://megaui.net/fukuchi/works/qrencode/index.en.html" href="http://megaui.net/fukuchi/works/qrencode/index.en.html">qrencode</a>.</p>
<p><em>qrencode</em> est intégré dans la majeure partie des distributions, si ce n&#8217;était pas votre cas, vous pouvez toujours télécharger les sources sur le <a title="http://megaui.net/fukuchi/works/qrencode/index.en.html" href="http://megaui.net/fukuchi/works/qrencode/index.en.html">site officiel</a>.</p>
<p>Ce petit outil permet de générer une image au format <em>png</em>, à partir d&#8217;une ou plusieurs chaînes de caractères.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1758code2'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p17582"><td class="code" id="p1758code2"><pre class="sh" style="font-family:monospace;">$ qrencode --help
qrencode version 3.0.3
Copyright (C) 2006, 2007, 2008 Kentaro Fukuchi
Usage: qrencode [OPTION]... [STRING]
Encode input data in a QR Code and save as a PNG image.
&nbsp;
-h           display this message.
--help       display the usage of long options.
-o FILENAME  write PNG image to FILENAME. If '-' is specified, the result
will be output to standard output. If -S is given, structured
symbols are written to FILENAME-01.png, FILENAME-02.png, ...;
if specified, remove a trailing '.png' from FILENAME.
-s NUMBER    specify the size of dot (pixel). (default=3)
-l {LMQH}    specify error collectin level from L (lowest) to H (highest).
(default=L)
-v NUMBER    specify the version of the symbol. (default=auto)
-m NUMBER    specify the width of margin. (default=4)
-S           make structured symbols. Version must be specified.
-k           assume that the input text contains kanji (shift-jis).
-c           encode lower-case alphabet characters in 8-bit mode. (default)
-i           ignore case distinctions and use only upper-case characters.
-8           encode entire data in 8-bit mode. -k, -c and -i will be ignored.
-V           display the version number and copyrights of the qrencode.
[STRING]     input data. If it is not specified, data will be taken from
standard input.</pre></td></tr></table></div>

<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">La plupart des paramètres disposent d&#8217;une valeur par défaut, ce qui simplifie la mise en œuvre pour une utilisation &laquo;&nbsp;classique&nbsp;&raquo;. Il suffit de préciser le nom de fichier en sortie et le contenu à encoder.</p>
<p style="text-align: justify;"><span style="color: #800000;">$ qrencode -o test1.png &laquo;&nbsp;http://www.jopa.fr&nbsp;&raquo;<br />
$ qrencore -o test2.png &lt; test.txt</span></p>
<p style="text-align: justify;">
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/OxFR6r-Dqk4&amp;hl=fr&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/OxFR6r-Dqk4&amp;hl=fr&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
<p style="text-align: justify;">
<p style="text-align: justify;">Pour en savoir plus :</p>
<ul>
<li><a title="http://journal-smala.org/?18-qr-code.html" href="http://journal-smala.org/?18-qr-code.html">QR-code ? Clovis Darrigan répond</a>,</li>
<li><a title="http://fr.wikipedia.org/wiki/Code_QR" href="http://fr.wikipedia.org/wiki/Code_QR">Wikipedia</a>,</li>
<li><a title="http://megaui.net/fukuchi/works/qrencode/index.en.html" href="http://megaui.net/fukuchi/works/qrencode/index.en.html">QrEncode</a>,</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/08/26/qr-codes-et-encodage-qrencode/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Générer des codes barres en lignes de commandes sous Linux (barcode)</title>
		<link>http://www.jopa.fr/index.php/2009/08/24/generer-codes-barres-lignes-de-commandes-linux-barcode/</link>
		<comments>http://www.jopa.fr/index.php/2009/08/24/generer-codes-barres-lignes-de-commandes-linux-barcode/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 22:12:41 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Code barre]]></category>
		<category><![CDATA[Logiciels Libres]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1685</guid>
		<description><![CDATA[Je dispose, à titre professionnel, de quelques lecteurs optiques USB qui prenaient paisiblement la poussière sur un coin d&#8217;étagère. Je souhaitais, depuis un bout de temps, les remettre en service pour pouvoir, par exemple, décoder un code barre client qui serait imprimé sur un courrier, un dossiers ou un formulaire et ainsi automatiser sa recherche [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2009/08/jopafr.jpg"><img class="size-full wp-image-1686 alignright" title="jopafr" src="http://www.jopa.fr/wp-content/uploads/2009/08/jopafr.jpg" alt="jopafr" width="324" height="133" /></a>Je dispose, à titre professionnel, de quelques lecteurs optiques USB qui prenaient paisiblement la poussière sur un coin d&#8217;étagère. Je souhaitais, depuis un bout de temps, les remettre en service pour pouvoir, par exemple, décoder un <a title="http://fr.wikipedia.org/wiki/Code-barres" href="http://fr.wikipedia.org/wiki/Code-barres">code barre</a> client qui serait imprimé sur un courrier, un dossiers ou un formulaire et ainsi automatiser sa recherche dans notre base de données.  J&#8217;imaginais encore, faciliter le fastidieux inventaire du matériel informatique, par la lecture optique d&#8217;étiquettes &laquo;&nbsp;maison&nbsp;&raquo;. Ni les idées, ni le matériel ne me manquaient,  il me restait juste à trouver comment générer et imprimer mes propres <a title="http://fr.wikipedia.org/wiki/Code-barres" href="http://fr.wikipedia.org/wiki/Code-barres">codes barres</a> et si possible en lignes de commandes (c&#8217;est bien plus pratique pour écrire des scripts &#8211; ).</p>
<p style="text-align: justify;"><span id="more-1685"></span></p>
<p style="text-align: justify;">Côté lecture et matériel, aucun problème : le lecteur et reconnu sous <em>Linux </em>comme un périphérique d&#8217;entrée tout ce qu&#8217;il y a de plus classique; les données décodées sont tout simplement envoyées sur l&#8217;entrée standard et récupérables de la même manière que du texte saisi au clavier.  Du vrai <em>Plug&amp;Play</em> !</p>
<p style="text-align: justify;">Côté génération et logiciel, pas de grande difficulté non plus&#8230; Un coup de &laquo;&nbsp;<span style="color: #800000;"><em>aptitude search barcode</em></span>&nbsp;&raquo; (sous Debian)  révèle deux candidats :</p>
<ul style="text-align: justify;">
<li><a title="http://www.gnu.org/software/barcode/" href="http://www.gnu.org/software/barcode/">Barcode </a>: Un outil et ses librairies pour générer des codes barres,</li>
<li><a title="http://www.kbarcode.net/" href="http://www.kbarcode.net/">kbarcode</a> : Un outil graphique de génération de codes barres, (qui est ni plus, ni moins, un front-end amélioré de barcode).</li>
</ul>
<p style="text-align: justify;">D&#8217;après l&#8217;utilisation que je veux en faire (les scripts et tout et tout), c&#8217;est surtout le premier qui va m&#8217;intéresser&#8230;</p>
<h2 style="text-align: justify;">Barcode (Gnu-Barcode)</h2>
<p style="text-align: justify;">Une lecture rapide du <strong>man</strong> m&#8217;apprend que <em>Barcode</em> lit par défaut, une chaîne de caractères sur l&#8217;entrée standard et renvoie du code <a title="http://fr.wikipedia.org/wiki/PostScript" href="http://fr.wikipedia.org/wiki/PostScript">postscript </a>sur la sortie tout aussi standard.</p>
<p style="text-align: justify;">En utilisation très basique, ça donne :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1685code5'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p16855"><td class="code" id="p1685code5"><pre class="sh" style="font-family:monospace;">$ barcode
%!PS-Adobe-2.0
%%Creator: &quot;barcode&quot;, libbarcode sample frontend
%%DocumentPaperSizes: a4
%%EndComments
%%EndProlog
&nbsp;
0123456789
&nbsp;
%%Page: 1 1
&nbsp;
% Printing barcode for &quot;0123456789&quot;, scaled  1.00, encoded using &quot;ISBN&quot;
% The space/bar succession is represented by the following widths (space first):
% 911113123121112322212212141111111113212311114131212131114111
[
%  height  xpos   ypos  width       height  xpos   ypos  width
[75.00  19.50  15.00  0.85]      [75.00  21.50  15.00  0.85]
[70.00  24.50  20.00  2.85]      [70.00  28.00  20.00  1.85]
[70.00  32.50  20.00  0.85]      [70.00  35.50  20.00  0.85]
[70.00  37.50  20.00  0.85]      [70.00  41.50  20.00  2.85]
[70.00  46.00  20.00  1.85]      [70.00  49.50  20.00  0.85]
[70.00  53.00  20.00  1.85]      [70.00  56.00  20.00  1.85]
[70.00  60.00  20.00  3.85]      [70.00  63.50  20.00  0.85]
[75.00  65.50  15.00  0.85]      [75.00  67.50  15.00  0.85]
[70.00  69.50  20.00  0.85]      [70.00  72.50  20.00  2.85]
[70.00  76.50  20.00  0.85]      [70.00  80.50  20.00  2.85]
[70.00  83.50  20.00  0.85]      [70.00  85.50  20.00  0.85]
[70.00  90.50  20.00  0.85]      [70.00  94.50  20.00  0.85]
[70.00  97.50  20.00  0.85]      [70.00 100.50  20.00  0.85]
[70.00 104.50  20.00  0.85]      [70.00 106.50  20.00  0.85]
[75.00 111.50  15.00  0.85]      [75.00 113.50  15.00  0.85]
&nbsp;
]    { {} forall setlinewidth moveto 0 exch rlineto stroke} bind forall
[
%   char    xpos   ypos fontsize
[(9)   10.00  10.00 12.00]
[(7)   22.00  10.00  0.00]
[(8)   29.00  10.00  0.00]
[(0)   36.00  10.00  0.00]
[(1)   43.00  10.00  0.00]
[(2)   50.00  10.00  0.00]
[(3)   57.00  10.00  0.00]
[(4)   69.00  10.00  0.00]
[(5)   76.00  10.00  0.00]
[(6)   83.00  10.00  0.00]
[(7)   90.00  10.00  0.00]
[(8)   97.00  10.00  0.00]
[(6)  104.00  10.00  0.00]
]   { {} forall dup 0.00 ne {
/Helvetica findfont exch scalefont setfont
} {pop} ifelse
moveto show} bind forall
% End barcode for &quot;0123456789&quot;
&nbsp;
showpage</pre></td></tr></table></div>

<p style="text-align: justify;">J&#8217;obtiens bien du code <em>Postscript. </em>Cette sortie peut être envoyé vers un fichier (ou une imprimante) grâce à une redirection classique (&laquo;&nbsp;<strong>&gt;</strong>&laquo;&nbsp;) ou avec l&#8217;option &laquo;&nbsp;<strong>-o</strong>&laquo;&nbsp;<strong> </strong>suivie du nom de fichier.</p>
<p style="text-align: justify;">De même, il est possible de lire la chaîne à encoder depuis un fichier à l&#8217;aide de l&#8217;option &laquo;&nbsp;<strong>-i</strong>&nbsp;&raquo; ou directement depuis un paramètre passé avec l&#8217;option &laquo;&nbsp;<strong>-b</strong>&laquo;&nbsp;.</p>
<p style="text-align: justify;">Enfin, l&#8217;option &laquo;&nbsp;<strong>-e</strong>&nbsp;&raquo; permet de définir le format d&#8217;encodage. Par défaut, c&#8217;est <a title="http://fr.wikipedia.org/wiki/ISBN" href="http://fr.wikipedia.org/wiki/ISBN"><em>ISBN</em></a> qui est utilisé. ( <em>cf le <strong>man</strong> pour les différentes normes</em>).</p>
<p style="text-align: justify;">Les autre options vont permettre d&#8217;affiner la mise en page, mais ne sont pas capitales dans ce cas précis.</p>
<p style="text-align: justify;">Ainsi :</p>
<p style="text-align: justify;"><span style="color: #800000;">$ barcode -b 0123456789 -e 39 -o test.ps</span></p>
<p style="text-align: justify;">Génère un fichier<em> Postscript</em> &laquo;&nbsp;<em>test.ps</em>&nbsp;&raquo; contenant le code barre &laquo;&nbsp;<em>0123456789</em>&nbsp;&raquo; encodé en &laquo;&nbsp;<a title="http://fr.wikipedia.org/wiki/Code_39" href="http://fr.wikipedia.org/wiki/Code_39"><em>code39</em></a>&laquo;&nbsp;.<br />
Le fichier est lisible avec <a title="http://www.ghostscript.com/" href="http://www.ghostscript.com/"><em>Ghostscript</em></a>, ou tout autre logiciel/matériel comprenant le langage <em>Postscript</em>.</p>
<p style="text-align: justify;"><span style="color: #800000;">$ gs test.ps</span></p>
<p style="text-align: center;"><a href="http://www.jopa.fr/wp-content/uploads/2009/08/code_view.jpg"><img class="size-full wp-image-1710 aligncenter" title="code_view" src="http://www.jopa.fr/wp-content/uploads/2009/08/code_view.jpg" alt="code_view" width="446" height="305" /></a></p>
<p style="text-align: justify;">Me voilà avec un beau fichier <em>.ps</em>, alors qu&#8217;une image serait bien plus pratique pour l&#8217;insertion dans un document&#8230; Il va me falloir travailler un peu <a title="http://www.ghostscript.com/" href="http://www.ghostscript.com/"><em>Ghostscript</em></a> pour arriver au résultat attendu.</p>
<h2 style="text-align: justify;">Ghostscript</h2>
<p style="text-align: justify;"><em>Ghostscript</em> va me permettre de retailler la page et de transformer le résultat en image, moyennant le passage de quelques arguments :</p>
<p style="text-align: justify;"><span style="color: #800000;">$ gs -g300x130 -r96x96 -sDEVICE=pbmraw -sOutputFile=test.pbm -sNOPAUSE -q test.ps -c showpage quit</span></p>
<p style="text-align: justify;">Ok, ça quelques explications :</p>
<ul style="text-align: justify;">
<li style="text-align: justify;"><strong>-g300x130 </strong>: Représente la taille de la page à générer. Pour la définir, j&#8217;ai fabriqué un code barre type et mesuré à l&#8217;aide de <a title="http://www.gimp.org/" href="http://www.gimp.org/">Gimp</a>, dans le fichier <em>.ps</em>,  le nombre de pixels en longueur et en largeur occupés par le dessin. Le point d&#8217;origine (0,0) étant le coin bas gauche. ( pile-poil l&#8217;angle où se situe le dessin&#8230; C&#8217;est quand même bien fait !).  Il doit y avoir moyen de récupérer ses informations dans le fichier <em>postscript</em>, mais comme mes codes barres vont avoir tous la même tête, je n&#8217;ai pas jugé utile de creuser dans ce sens,</li>
<li style="text-align: justify;"><strong>-r96x96</strong> : La résolution de sortie&#8230; <em>96&#215;96 dpi</em>, c&#8217;est bien et suffisant pour ce type d&#8217;impression,</li>
<li style="text-align: justify;"><strong>-sDEVICE=<em>pbmraw</em></strong> : C&#8217;est le format de sortie, c&#8217;est à dire le <em>driver</em> à utiliser pour générer l&#8217;image. Il en existe une belle palette (<em>gs &#8211;help</em>), un format d&#8217;image sans trop de compression semble être une bonne option pour éviter les surprises à la lecture,</li>
<li style="text-align: justify;"><strong>-sOutPutFile=<em>test.pbm</em></strong> :  Là, c&#8217;est facile, c&#8217;est le nom du fichier en sortie,</li>
<li style="text-align: justify;"><strong>-sNOPAUSE</strong> : Par défaut, <em>Ghostscript</em> fait une pause entre chaque page, même s&#8217;il n&#8217;y en a qu&#8217;une (un peu comme moi quand je rédige un rapport). Cette option annule cette pause (un peu comme mon chef &#8230;),</li>
<li style="text-align: justify;"><strong>-sBATCH</strong> : Permet à <em>GhostScript</em> de sortir, après avoir terminé son travail (mais seulement après préciserait mon chef  !),</li>
<li style="text-align: justify;"><strong>-q</strong> : (Quiet) &#8211; force le travail en silence (oui&#8230; bon&#8230; J&#8217;arrête avec mon chef&#8230;  ),</li>
<li style="text-align: justify;"><em><strong>test.ps</strong></em> : Le nom du fichier généré par <em>Barcode </em>et donc utilisé en entrée&#8230;</li>
</ul>
<p style="text-align: center;"><a href="http://www.jopa.fr/wp-content/uploads/2009/08/test.jpeg"><img class="size-full wp-image-1718 aligncenter" title="test" src="http://www.jopa.fr/wp-content/uploads/2009/08/test.jpeg" alt="test" width="300" height="130" /></a></p>
<p style="text-align: justify;">Pour finir, voici un exemple de petit script prenant en paramètre les caractères à encoder et générant un code barre dans un fichier image au format <em>jpeg</em>.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1685code6'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p16856"><td class="code" id="p1685code6"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$#</span> <span style="color: #000000; font-weight: bold;">!</span>= <span style="color: #000000;">1</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> Usage  :  genbarcode.sh string_to_encode
    <span style="color: #7a0874; font-weight: bold;">exit</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
barcode <span style="color: #660033;">-b</span> <span style="color: #007800;">$1</span> <span style="color: #660033;">-e</span> <span style="color: #000000;">39</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">gs</span> <span style="color: #660033;">-g300x130</span> <span style="color: #660033;">-r96x96</span> <span style="color: #660033;">-sDEVICE</span>=jpeg <span style="color: #660033;">-sOutputFile</span>=<span style="color: #007800;">$1</span>.jpg <span style="color: #660033;">-sNOPAUSE</span> <span style="color: #660033;">-sBATCH</span> -</pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/08/24/generer-codes-barres-lignes-de-commandes-linux-barcode/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

