FB3-Convert
view release on metacpan or search on metacpan
bin/fb3_to_fb2.pl view on Meta::CPAN
my (%LinkRels);
foreach my $Img (@Img) {
print "Processing img ".$Img->{'Id'}."\n" if $OPT{'verbose'};
my $ImgType;
my $ImgContent = $FB3Package->PartContents($Img->{'TargetFullName'});
my $ImgType = $FB3Package->PartContentType($Img->{'TargetFullName'});
#SVG конвеÑÑим в PNG
if ( $ImgType eq 'image/svg' || $ImgType eq 'image/svg+xml' || $Img->{'TargetFullName'} =~ /\.svg$/ ) {
$ImgContent = Svg2Png($ImgContent);
$ImgType = 'image/png';
$Img->{'TargetFullName'} = SvgUnique($Img->{'TargetFullName'}, \@Img);
} else {
$ImgType = 'image/png' if $Img->{'TargetFullName'} =~ /\.png$/;
$ImgType = 'image/jpeg' if $Img->{'TargetFullName'} =~ /\.(jpg|jpeg)$/;
$ImgType = 'image/gif' if $Img->{'TargetFullName'} =~ /\.gif$/;
}
my $NewImgId = $Img->{'TargetFullName'};
$NewImgId = URI::Escape::uri_unescape($NewImgId);
bin/fb3_to_fb2.pl view on Meta::CPAN
}
#копиÑÑем Ñайлд-нодÑ
foreach my $Child ($Node->childNodes){
$El->appendChild( CopyNode($Child) );
}
return $El;
}
sub Svg2Png {
my $Img = shift;
my $Rsvg = new Image::LibRSVG();
my $Formats = $Rsvg->getSupportedFormats();
die "can't convert svg to png or jpeg. librsvg not supported PNG" unless $Rsvg->isFormatSupported("png");
$Rsvg->loadImageFromString($Img);
my ($TmpFH, $TmpFile) = File::Temp::tempfile(UNLINK => 1);
t/examples/fb2/hell_example_133321.fb2 view on Meta::CPAN
</title><p><strong>[ÐÑÐµÐ½Ñ Ð´Ð»Ð¸Ð½Ð½Ñй комменÑаÑий (6 абзаÑев)] </strong>Фаза Ñвободна. СоглаÑно даннÑм Фонда "ÐбÑеÑÑвенное мнение", ÑÑÑеÑиÑеÑкое воздейÑÑв...
<p>Фонон оÑнован на. СÑимÑлиÑование коммÑÑниÑи Ð´Ð°ÐµÑ Ð¸Ð½Ð´Ð¸ÐºÐ°ÑоÑ, оÑознав маÑкеÑинг как ÑаÑÑÑ Ð¿ÑоизводÑÑва. ÐÑе в ÑанниÑ
ÑабоÑаÑ
Ð.Ð.ÐÐ°Ð½Ð´Ð°Ñ Ð...
<p>ÐÐ¾Ð¼Ð¿Ð»ÐµÐºÑ Ð°Ð³ÑеÑÑивноÑÑи опÑеделÑÐµÑ Ð·ÐµÐ½Ð¸Ñ, Ñ
оÑÑ, напÑимеÑ, ÑаÑÐ¸ÐºÐ¾Ð²Ð°Ñ ÑÑÑка, пÑодаÑÑаÑÑÑ Ð² ТаÑÑÑе Ñ Ð¸Ð·Ð¾Ð±Ñажением ÑÑÑажников ТаÑÑÑа и памÑ...
<p>Ð ÑооÑвеÑÑÑвии Ñ Ð·Ð°ÐºÐ¾Ð½Ð°Ð¼Ð¸ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ ÑнеÑгии, воздейÑÑвие повÑÑÐ°ÐµÑ ÑкваÑоÑиалÑнÑй пÑÐµÐ´Ð¼ÐµÑ Ð´ÐµÑÑелÑноÑÑи, вне завиÑимоÑÑи Ð¾Ñ Ð¿ÑедÑказÐ...
<p>ÐовоÑÑÑ Ñакже о ÑакÑÑÑе, ÑипиÑной Ð´Ð»Ñ ÑеÑ
или инÑÑ
жанÑов ("ÑакÑÑÑа поÑ
одного маÑÑа", "ÑакÑÑÑа валÑÑа" и пÑ.), и здеÑÑ Ð¼Ñ Ð²Ð¸Ð´Ð¸Ð¼, ÑÑо ÑпÑавлÐ...
<p>СÑиÑ
иÑпаÑÑÐµÑ ÑаÑпÑоÑÑÑаненнÑй ÑекламнÑй блок, оÑÑиÑÐ°Ñ Ð¾Ñевидное. РиÑмоединиÑа, как Ð±Ñ ÑÑо ни казалоÑÑ Ð¿Ð°ÑадокÑалÑнÑм, ÑонеÑиÑеÑки ÑÑ...
</section> <section id="c_6"><title><p>6</p>
</title><p><strong>[ÐомменÑаÑий] </strong>Ðаже еÑли ÑÑеÑÑÑ ÑазÑеженнÑй газ, заполнÑÑÑий пÑоÑÑÑанÑÑво Ð¼ÐµÐ¶Ð´Ñ Ð·Ð²ÐµÐ·Ð´Ð°Ð¼Ð¸, Ñо вÑе Ñавно Южное полÑÑаÑие неÑ...
</section> <section id="c_7"><title><p>7</p>
</title><p><strong>[ÐомменÑаÑий] </strong>ÐÑлÑминаÑÐ¸Ñ Ð´Ð¸ÑкÑеÑно пÑедÑÑавлÑÐµÑ Ñобой агÑобиогеоÑеноз, но еÑли Ð±Ñ Ð¿ÐµÑен бÑло Ñаз в пÑÑÑ Ð¼ÐµÐ½ÑÑе, бÑло Ð±Ñ Ð...
</section> </section> </body> <binary content-type="image/jpeg" id="_1001000.jpg">/9j/4AAQSkZJRgABAQEAeAB4AAD/4QEARXhpZgAATU0AKgAAAAgABQEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAAExAAIAAAASAAAAWodpAAQAAAABAAAAbAAAAAAAAAB4AAAAAQAAAHgAAAABUGFpbnQu...
( run in 0.431 second using v1.01-cache-2.11-cpan-0a6323c29d9 )