Thread Image::Magick Warnungen beim Lesen von PDF (12 answers)
Opened by clms at 2015-04-14 00:46

clms
 2015-04-15 01:26
#180673 #180673
User since
2010-08-29
373 Artikel
BenutzerIn
[default_avatar]
Der Code, den ich zum Lesen und Konvertieren verwende ist doch geringfügig komplexer, las ich es in Erinnerung hatte:
Code (perl): (dl )
1
2
3
4
5
6
7
my $img = new Image::Magick;
$img->Read(filename => "orig/$path/$base.$ext")
        and die("Kann Original-Bild nicht lesen: $!");
$img->Set(compression => "JPEG");
$img->Set(magick => 'jpg');
$img->Set(quality => 90);
$img->Write(filename => "target/$path/$base.jpg"); 
sollte aber keinen großen Unterschied machen.

In der Praxis wird meist noch ein $img->Resize(...) und $img->Sharpen(...) gemacht, aber das Problem tritt auch auf, wenn man die weglässt.

Ich habe jetzt kleine Fortschritte gemacht:
Mit CPAN:Capture::Tiny kann ich die Warnungen von $img->Read(...) abfangen und so die problematischen PDFs zumindest detektieren.

Außerdem habe ich festgestellt, das mit ImageMagick 6.9 zwar noch die Warnungen kommen, das erzeugte Bild mit Safari aber nicht mehr schwarz sondern recht passabel aussieht. Leider ist auf dem Server, auf dem das Skript läuft, ImageMagick 6.7 installiert :-(. Da tritt das Problem noch auf.

2015-04-14T11:44:56 GwenDragon
Was das PDF-Einlesen anbelangt, kann es sein, dass vielleicht das PDF nicht nach Norm erstellt ist? Wie wurde das erzeugt?

Das kann gut sein - siehe die Warnungen die $img->Read() nach STDERR rausschreibt aus meinem Ursprungspost. Wie das PDF genau erstellt wurde, kann ich aber nicht sagen. Wir bekommen die PDFs aus verschiedenen, externen Quellen. Meist ist es Pressematerial. Fast alles dürfte von professionellen Grafikern erstellt worden sein.

View full thread Image::Magick Warnungen beim Lesen von PDF