Faster3ck / Converseen

Converseen is a batch image converter and resizer
https://converseen.fasterland.net/
GNU General Public License v3.0
424 stars 32 forks source link

WMF cannot be converted (error: non-conforming drawing primitive definition 'O' @ error/draw.c/DrawImage/3182) #21

Open computer-enthusiastic opened 8 years ago

computer-enthusiastic commented 8 years ago

WMF files cannot be converted to any other format using Debian version of the packages.

The program prompts the error: "non-conforming drawing primitive definition 'O' @ error/draw.c/DrawImage/3182".

This has been tested with versions 0.8.4 (Debian Jessie) and 0.9.2 (Debian Stretch).

The test image is attached to this report (in zip format) as follows: Antelope.wmf.zip.

The following C++ code has been able to correctly convert the WMF file (it use the same functions of converseen code), so it looks like it's a converseen issue:

#include <Magick++.h> 
#include <iostream> 
#include <string>
#include <QString>
#include <QCoreApplication>
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) 
{ 
  InitializeMagick(*argv);

  QString in  = "/home/amluongo/Scaricati/debianizzati/junker/other/Antelope.wmf",
          out = "/home/amluongo/Scaricati/debianizzati/junker/Antelope.jpg";

  Image image;
  try { 
    // Read a file into image object 
    image.read( in.toStdString() );

    // Write the image to a file 
    image.write( out.toStdString() ); 
  } 
  catch( Exception &error_ ) 
    { 
      cout << "Caught exception: " << error_.what() << endl; 
      return 1; 
    } 
  return 0; 
}

[Uploading Antelope.wmf.zip…]()