2011-02-08 15 views
5

Mi objetivo es convertir formatos de archivo emf, wmf a otros formatos de archivo de imagen.conversión de fem a jpg

que se encontraban Jar image4java y trataron de convertir mi archivo EMF a otros formatos como JPG, PNG .. usando el siguiente código:

import org.im4java.core.ConvertCmd; 
import org.im4java.core.IMOperation; 
import java.io.File; 
public class im4java { 
    public static void main(String arg[]) 
    { 
     File input=new File("src/image.emf"); 
     File output=new File("src/output.jpg"); 
     convertemf2png(input,output); 
    } 
    public static void convertemf2png(File input,File output) 
    { 
     try{ 
     IMOperation img=new IMOperation(); 
     img.addImage(); 
     img.addImage(); 
     ConvertCmd convert=new ConvertCmd(); 
     convert.run(img,new Object[]{input,output}); 
     } 
     catch(Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } 
} 

mientras yo ejecuto, me dieron el error como

  1. cuando se utiliza simplemente convert.run(img,new Object[]{input,output}); tengo

    java.lang.IllegalArgumentException: java.io.File is an unsupported image-type

     at org.im4java.core.ImageCommand.resolveImages(ImageCommand.java:289) 
         at org.im4java.core.ImageCommand.prepareArguments(ImageCommand.java:189) 
         at org.im4java.core.ImageCommand.run(ImageCommand.java:208) 
         at im4java.convertemf2png(im4java.java:27) 
         at im4java.main(im4java.java:18) 
    

cuando uso, `convert.run (img, nuevo Object [] {input.getAbsolutePath(), output.getAbsolutePath()}); llegué,

org.im4java.core.CommandException: org.im4java.core.CommandException: Invalid Parameter - C:\vignesh\im4java\src\output.jpg 
     at org.im4java.core.ImageCommand.run(ImageCommand.java:215) 
     at im4java.convertemf2png(im4java.java:27) 
     at im4java.main(im4java.java:18) 
Caused by: org.im4java.core.CommandException: Invalid Parameter - C:\vignesh\im4java\src\output.jpg 
     at org.im4java.core.ImageCommand.finished(ImageCommand.java:247) 
     at org.im4java.process.ProcessStarter.run(ProcessStarter.java:314) 
     at org.im4java.core.ImageCommand.run(ImageCommand.java:211) 

alguien por favor me ayude en fizing este tema o cualquier otra forma de convertir una imagen formatt fem a otros formats..Thanks con antelación.

+0

configurando la variable de entorno 'IM4JAVA_TOOLPATH' (solo' PATH' no es suficiente) me ayudó en una situación similar –

Respuesta

3

También es necesario añadir estas líneas antes de usar los comandos im4java:

String myPath="PATH\TO\ImageMagick"; 
ProcessStarter.setGlobalSearchPath(myPath); 
0

Ponga sus imágenes en Cuerdas. Asegúrese de establecer la variable de entorno IM4JAVA_TOOLPATH en su ruta de imagemagick.

import org.im4java.core.ConvertCmd; 
import org.im4java.core.IMOperation; 

public class im4java { 
    public static void main(String arg[]) 
    { 
     String input = "src/image.emf"; 
     String output = "src/output.jpg"; 
     convertemf2png(input,output); 
    } 
    public static void convertemf2png(String input,String output) 
    { 
     try{ 
     IMOperation img=new IMOperation(); 
     img.addImage(); 
     img.addImage(); 
     ConvertCmd convert=new ConvertCmd(); 
     convert.run(img,input,output); 
     } 
     catch(Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } 
}