Bonjour,
J'ai un petit souci car je ne trouve pas la solution.
J'ai un fichier XML de teste qui ressemble à ça :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <?xml version="1.0" encoding="ISO-8859-1"?> <paragraph> Ce tutoriel Perl a pour but de vous expliquer en quelques lignes comment concevoir un plugin <b>Nagios</b> respectant les normes <b>Nagios</b> avec <b>Perl</b>.<br/> </paragraph>
Je souhaiterais le convertir en fichier OpenOffice odt et le contenu du fichier devrait être formaté et donné le résultat suivant :
Mon but est d'utiliser le module XML:Twig et ODF::lpOD, mais je coince pour le formatage du texte en gras. Si quelqu'un a une idée, je suis preneur .Ce tutoriel Perl a pour but de vous expliquer en quelques lignes comment concevoir un plugin Nagios respectant les normes Nagios avec Perl
Voici un exemple de programme, mais je ne sais pas comment appliquer le gras.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 #!/usr/bin/perl use warnings; use strict; use ODF::lpOD; use XML::Twig; # Création virtuelle du fichier odt my $doc = ODF::lpOD::Document->create('text'); my $contexte = $doc->get_body; my $twig = new XML::Twig( Twig_handlers => { 'paragraph' => \&xml_paragraph, 'b' => \&xml_style, }, ); # Création d'un objet twig $twig->parsefile('test.xml'); # Sauvegarde du document $doc->save( target => 'test.odt' ); system ('test.odt'); sub xml_paragraph { my ( $twig, $twig_paragraph ) = @_; my $paragraphe = odf_paragraph->create( text => $twig_paragraph->text, ); $contexte->insert_element($paragraphe); return; } sub xml_style { my ( $twig, $twig_style ) = @_; my $style = $twig_style->name; my $texte = $twig_style->text; return; }
Partager