Re: Convertion fichier .docx était: [CBLX] fichier.xlsx |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/carrefourblinux Archives
]
Salut Dominique,
From: Dominique Asselineau <asseline@xxxxxxxxxxxxxxxxxxxx>
Subject: Re: Convertion fichier .docx était: [CBLX] fichier.xlsx
Date: Thu, 18 Jun 2015 22:40:34 +0200
> Pierre Lorenzon wrote on Thu, Jun 18, 2015 at 04:26:45AM +0200
> En effet, ça marche, et c'est très rudimentaire. xsltproc est par
> défaut fait pour transformer du XML en XML et lorsqu'on veut produire
> autre chose en l'occurrence du LaTeX donc du texte, il faut le
> préciser dans une directive <xsl:output> qui manque ici. Ça ne peut
> guère marcher pour du français puisqu'il manque le package LaTeX
> inputenc pour indiquer l'encodage des caractères, accentués notamment.
> Il manque aussi le paquet pour la typographie française. Il semble
> n'apparaître dans le code LaTeX produit aucune commande de mise en
> page. Dans les cas que j'ai regardés, peut-être que les docx ont été
> composés « à l'oeil » et sans commande de structure justement. On ne
> retrouve donc dans le code LaTeX, que du texte en vrac. Il y a bien
> les commandes de mises en caractères gras mais pour la mise en page,
> ça ne suffit pas. Du coup, il serait illusoire de convertir ensuite
> le LaTeX en PDF puis de faire un pdftotext -layout pour espérer
> récupérer un document propre et à peu près conforme. Disons que ça
> aide à voir de quoi il s'agit.
Le gus qui a écrit la feuille de style n'a jamais prétendu
que ça fasse mieux. Donc on ne peut pas lui reprocher que son
truc soit rudimentaire. D'ailleurs quand on regarde ladite
feuille de style on voit vite qu'elle n'est pas très
conséquente et que du coup il y a peut de chance qu'elle
entre dans toutes les subtilités de la mise en page LaTeX.
Je ne me suis servi de cet outil que pour prendre conaissance
de fichier docx qu'on m'avait adressés et pour ça c'est
suffisant.
>
>> mais on peut parfaitement la modifier.
>
> c(est juste mais ça n'est pas à la portée du premier utilisateur venu.
> Il faut connaître le XSL et fort probablement le docx et là, c'est du
> lourd.
Incontestablement. Sans compter que comme je le disais
ailleurs je ne suis pas sûr que le xsl soit vraiment assez
performant pour implémenter des choses très subtiles :
Exemple : J'ai voulu convertir du html en LaTeX. Soient deux
caractères qui se suivent le premier en 12px le suivant en
9px. On se dit que le deuxième est vraisemblablement en
indice (ou en exposant) du premier. Mais en math savoir s'il
est en indice ou en exposant, ça peut avoir son importance !
alors on peut regarder l'atribut top du div dans lequel est
contenu chaque caractère. Sauf que le top donne une position
absolue dont on se contrefiche et ce qui compte c'est la
position relative des deux caractères pour déterminer si le
second est plutôt en hauteur ou plutôt plus bas que le
premier. C'est donc la différence des deux top qu'il faut
calculer. Et ben ça en xsl je n'y suis pas arriver parce que
soit je n'ai rien compris au stocage des variables soit ça
n'est pas possible de stoquer une variable pour ensuite la
réutiliser dans un test. Je ne me souviens plus exactement
des difficultés que j'ai eues parce que ça fait un
moment. J'ai trouvé un convertisseur en python mais qui
n'était pas un projet abouti et ne traitait justement pas les
cas particuliers fins qui m'intéressaient. Du coup j'ai écrit
un convertisseur en elisp puisque emacs a la bonne idée
d'intégrer libxml2 et qu'on est déjà débarasser de la
programmation de la phase parsing qui est particulièrement
pénible. Après on "n'a plus qu'à" travailler sur un arbre qui
est quand-même une structure de donnée assez agréable.
Pierre
>
> dom
>
> --
>
> --
> CBLX - CarrefourBLinuX MailingListe
> Pour obtenir de l'aide, envoyez le sujet help à:
> carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
> Archives:
> http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
> ou
> http://www.mail-archive.com/carrefourblinux@xxxxxxxxxxxxxxxxxxx/
>
--
CBLX - CarrefourBLinuX MailingListe
Pour obtenir de l'aide, envoyez le sujet help à:
carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
Archives:
http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
ou
http://www.mail-archive.com/carrefourblinux@xxxxxxxxxxxxxxxxxxx/