Enemy Action

Gazette Linux n°180 — novembre 2010

par Henry Grebler (Copyright © 2010) henrygrebler CHEZ optusnet POINT com POINT au>

traduction par Elisabeth Long (tous droits réservés) ellong18 CHEZ gmail POINT com>

relecture


"Once is happenstance. Twice is coincidence. Three times is 
enemy action." 
	    - Ian Fleming (prononcé par Auric Goldfinger)
	  

La première fois

Il m'arrive parfois d'acheter des billets sur Internet. Il y a un mois, j'ai acheté des billets pour un match de football. Plusieurs options m'étaient proposés, mais j'ai choisi de recevoir les billets par email sous format PDF. Je n'avais aucune idée de ce que les agences de billets faisaient, mais je ne faisais visiblement pas parti de leurs utilisateurs habituels.

J'avais prévu d'y aller avec un ami, Jeremy, qui supporte l'équipe adverse. Jeremy est un employé payé, alors que je suis actuellement "entre plusieurs contrats". Il avait prévu de venir au stade à vélo alors que je prendrai le train. On s'était mis d'accord pour se rejoindre à l'intérieur du stade.

Le problème c'est que je dois encore lui obtenir son billet.

Parfois les billets me sont envoyés en fichiers PDF séparés, mais cette fois ils était tous les deux dans un seul fichier PDF. J'ai lutté sans réfléchir pendant un certain temps et j'ai finalement envoyé à Jeremy une image de 6.5 MB au format .ppm ! Heureusement, je n'ai pas eu de problème à l'archiver sous format gzip pour lui envoyer un email de moins de 350 KB.

La deuxième fois

Récemment, j'ai acheté d'autres billets pour des matchs de football. Encore une fois, je les ai reçu dans un seul fichier PDF. Cette fois je voulais envoyer les billets à Mark et Matt.

Je suis allé dans mon répertoire d'aide pour voir ce que j'avais fait la fois précédente. Rien. Aussi discipliné que j'essaie de l'être, je reste malheureusement humain.

Tant pis. J'ai vécu assez longtemps pour savoir ce que je vaux. Je sais maintenant qu'il y a deux facettes de ma personnalité. J'ai appris à vivre avec l'incompétence désespéré du Mauvais Henry. Après tout, qu'est ce que je peux y faire ?

Alors, j'ai cherché (encore une fois !) à savoir comment séparer un fichier PDF en plusieurs pages. Entre la première et la deuxième fois, je suis parti en voyage à Adélaïde pendant dix jours. Avant de partir j'ai éteint mon ordinateur. Et mon cerveau aussi.

Cette fois ma solution impliquait l'utilisation des fichiers PostScript. J'en ai fait un compte rendu (le Bon Henry s'est occupé de ça). Ensuite, pour compléter tout ça (le Bon Henry peut parfois être pointilleux), j'ai reconstitué ce que j'avais probablement fait la première fois et je l'ai ajouté à mon compte rendu.

	Crypté:      oui (impression:oui copie:non modification:non ajouterNotes:non)

La troisième fois

Aujourd'hui il m'est arrivé le même problème. La nuit dernière j'ai réservé des billets de théâtre (Vous voyez ? Je ne m'intéresse pas seulement au football). Quand j'ai regardé les billets, j'ai trouvé un seul fichier PDF avec 4 billets : deux pour moi et ma femme, deux autres pour Peter et sa femme Barbara.

Et ce qui devait arriver arriva, j'ai fini par piquer une crise. J'ai essayé Adobe Acrobat, xpdf, et evince. Mais ils ont tous le même problème : aucun moyen de faire quoi que ce soit à cause des restrictions inclus dans le PDF du type "aucune copie".

Pensez donc à ça. Comment est-ce que c'est possible ? Si j'avais x.pdf, peu importe ce qu'un crétin aurait pu inclure dans le fichier, rien n'aurait pu m'empêcher de faire ceci :

	cp x.pdf x2.pdf

Donc qu'est-ce qui a été accompli par la restriction ? Les paroles d'une chanson au sujet des intérêts de la guerre me viennent à l'esprit : absolument rien ! Et je suis tenté de le redire encore une fois : absolument rien.

[ Actuellement, il y a tellement de façons de supprimer/contourner/éliminer/ignorer cette soi-disant « protection » -e.g., ensode.net's online "unlocker" - que c'est en effet insensé. -- Ben ]

Donc disons que j'ai envoyé à Jeremy, Mark ou Matt une copie de l'intégralité du fichier PDF. Ce qui m'inquiète c'est qu'ils pourraient par inadvertance imprimer le mauvais billet. Bien sur, dans l'email je dirai à chacun quel billet lui appartient. Mais… depuis que chaque billet a son propre code barre, peut-être que les contrôles du stade vérifient et risquent de protester si on tente de présenter le même billet. C'est plutôt embarrassant.

Vous remarquerez que je ne fais rien d'illégal ou de sournois. Je n'essaie pas de violer les droits numériques de certains crétins. Je ne cherche pas à causer du tord à quiconque. J'essaie juste d'obtenir un billet pour un ami ; un billet que j'ai légitimement acheté ; un billet dont non seulement j'ai le droit, mais la nécessité d'imprimer. Je suppose qu'ils veulent que j'envoie un fax à mon ami. Mais est-ce que ça ne revient pas à faire une copie ? Est-ce qu'ils s'attendent à ce que je traverse la ville pour lui donner son billet ?

Il me semble incroyable que je sois le seul à vouloir que ce soit possible. A chaque fois que je cherche sur mon ordinateur (apropos) ou ailleurs (Internet), je n'ai jamais trouvé de solution appropriée. Désormais j'ai une solution (voir section plus bas), mais il s'agit en réalité d'un appel à l'aide. Quelqu'un peut-il me suggérer quelque chose de plus élégant que ce que je propose ?

2-Cent Tip

C'est le meilleur moyen que j'ai trouvé pour extraire une page ou plusieurs pages qui se suivent depuis un seul fichier PDF en plusieurs fichiers séparés.

	gs -dSAFER -sDEVICE=pdfwrite -dNOPAUSE -dBATCH \
		-dFirstPage=3 -dLastPage=4 \
		-sOutputFile=PeterAndBarbara.pdf Tickets.pdf

En gros cette commande extrait les pages 3 et 4 du fichier Ticket.pdf et les ajoute dans PeterAndBarbara.pdf. Les premières lignes ne servent qu'à décorer la fenêtre.

Si vous voulez extraire chaque page dans un fichier PDF séparé (pas une mauvaise idée), voici le script :


#! /bin/sh
#       pdfsplit.sh - extrait chaque page d'un PDF dans un fichier séparé

        myname=`basename $0`

#----------------------------------------------------------------------#
Usage () {
        cat <<EOF
Usage: $myname file

file est le PDF qu'on cherche à diviser en plusieurs fichiers

Output goes to /tmp/page_n.pdf
EOF
        exit
}

#----------------------------------------------------------------------#
Die () {
        echo $myname: $*
        exit
}

#----------------------------------------------------------------------#
        [ $# -eq 1 ] || Usage

        pages=`pdfinfo $1 | grep Pages | awk '{print $2}'`
        [ "$pages" = '' ] && Die "Aucune page trouvé. $1 n'est peut-être pas un pdf."
        [ "$pages" -eq 1 ] && Die "1 seule page dans $1. Rien à faire."

        jj=1
        while [ $jj -le $pages ]
        do
                gs -dSAFER -sDEVICE=pdfwrite -dNOPAUSE -dBATCH \
                        -dFirstPage=$jj -dLastPage=$jj \
                        -sOutputFile=/tmp/page_$jj.pdf $1
                jj=`expr $jj + 1`
        done


Notes

Regardez à gs(1) pour obtenir un peu d'aide. Pour plus de renseignements, faites ceci :

	gs -h

et regardez à l'avant-dernière ligne. La mienne indique:

	Pour plus d'informations, voir /usr/share/ghostscript/8.15/doc/Use.htm.

J'ai probablement détruit mon système, parce que c'est actuellement dans /usr/share/doc/ghostscript-8.15/Use.htm. Un autre système fait correctement référence à /usr/local/share/ghostscript/8.64/doc/Use.htm.

Vous pouvez utiliser votre navigateur habituel ou bien :

	lynx /usr/share/doc/ghostscript-8.15/Use.htm

Voir aussi pdfinfo(1). Voici un exemple de sa sortie :

pdfinfo Tickets.pdf
Producteur:       Acrobat Distiller 7.0.5 (Windows)
DateCreation:   Tue Mar 16 04:21:58 2010
DateModification:        Tue Mar 16 04:21:58 2010
Etiqueté:         no
Pages:          4
Crypté:      oui (impression:oui copie:oui modification:non ajoutNotes:non)
Taille page:      595 x 842 pts (A4)
Taille fichier:      1290313 bytes
Optimisé:      non
Version PDF:    1.4

Henry Grebler

Henry a passé ses journées à travailler avec des ordinateurs, la plupart du temps pour des fabricants d'ordinateurs ou les développeurs de logiciels. Son expérience en informatique précoce comprend les reliques telles que des cartes perforées, bandes de papier et rubans magnétique. C'est son sombre secret qu'il aie été payé pour faire le genre de choses qu'il aurait versé de l'argent pour être autorisés à le faire. Il suffit de ne pas dire à l'un de ses employeurs.


Adaptation française de la Gazette Linux

L'adaptation française de ce document a été réalisée dans le cadre du Projet de traduction de la Gazette Linux

Cet article est publié selon les termes de la Open Publication License. La Linux Gazette n'est ni produite, ni sponsorisée, ni avalisée par notre hébergeur principal, SSC, Inc.

Vous pourrez lire d'autres articles traduits et en apprendre plus sur ce projet en visitant notre site http://www.traduc.org/Gazette_Linux

Si vous souhaitez apporter votre contribution, n'hésitez pas à nous rejoindre, nous serons heureux de vous accueillir.