Dear all,
Thank you for sharing you opinion and about this issue and giving ideas how to tackle this issue. The problem is that, printing what is outside the roots I have no control of (or at least I haven't found a good method). What I mean is that for the roots I can write a handler that will modify the output in whatever way I want (e.g., what @kcott suggest). This I cannot do for the outside of the root.
Furthermore, if I implement a handler that reads the style (which is what is actually outside of the the roots and I don't what to deal with) and simply prints it, it will be just fine.
Here is a sample input:
<style type="text/css">
@font-face {
font-family: 'MyFont';
src: url('http://mywebsite/fonts/MyFont.otf');
}
</style>
<div>
This is a test. Let's go. This is a brand name: 'D&G'. And this is
+ "a test".
</div>
Here are the two example scripts and output:
my $t= XML::Twig->new( twig_print_outside_roots => 1,
twig_roots => {'div' => sub {
my ( $t, $e ) = @_;
print STDOUT $e->text;
$t->purge;
},
'style' => sub {
my ( $t, $e ) = @_;
$e->print();
$t->purge;
}
},
keep_atts_order => 1,
);
and
my $t= XML::Twig->new( twig_print_outside_roots => 1,
twig_roots => {'div' => sub {
my ( $t, $e ) = @_;
print STDOUT $e->text;
$t->purge;
},
},
keep_atts_order => 1,
);
And this is the output from the first and then from the second version of the script.
<html><head></head><body>´╗┐<style type="text/css">
@font-face {
font-family: 'MyFont';
src: url('http://mywebsite/fonts/MyFont.otf');
}
</style>
This is a test. Let's go. This is a brand name: 'D&G'. And thi
+s is "a test".
</body></html>
And
<html><head></head><body>´╗┐<style type="text/css">
@font-face {
font-family: 'MyFont';
src: url('http://mywebsite/fonts/MyFont.otf');
}
</style>
This is a test. Let's go. This is a brand name: 'D&G'. And thi
+s is "a test".
</body></html>
Than's a lot. Greetings, Dimitar |