M 주요 목표는 일련의 .eps 파일을 가져 와서 ImageMagick 및 GhostScript를 사용하여 .jpg로 변환하는 것입니다. ImageMagick과 GhostScript가 모두 Windows 환경에 설치되어 있습니다. ImageMagick의 변환 명령을 Java에서 Process with no luck을 사용하여 참조하고 있습니다. \ 프로그램 파일 \ ImageMagick를-6.8.9-Q16을하고 다음 명령을 사용 : 윈도우의 cmd
도구를 사용하여, 나는이 성공적으로 C로 이동하여 JPEG에 EPS를 변환 자바에서ImageMagick의 EPS가 JPEG로 변환되지 않습니다.
convert Raw\R_GiftcardSizeNew3x5.eps Converted\R_GiftcardSizeNew3x5.jpg
을, 나는 거의 사용 \ 프로그램 파일 \ ImageMagick를-6.8.9-Q16 \ 벌거 벗은 와인 \ 원시 와 목적지 나는 변환하고 다음 코드에서 동일한 명령 : C 를 내 파일을 잡으려고 노력 메신저
public void convertEPStoJPG()
{ //commands
ArrayList<String> cmds = new ArrayList<String>();
//absolute file paths of eps files retrieved using a helper method
ArrayList<String> filePaths = this.getFilePaths();
//beginning cmd line calls
cmds.add("cmd.exe");
cmds.add("/c");
cmds.add("cd C:\\Program Files\\ImageMagick-6.8.9-Q16\\");
for (int i = 0; i < filePaths.size(); i++)
{
//conversion calls
String tempPath = filePaths.get(i);
//shortening path name
tempPath = tempPath.substring(tempPath.lastIndexOf("\\") + 1, tempPath.length());
//adding command of "convert Raw\\image.eps Converted\\image.jpg"
cmds.add("convert \\Naked Wines\\Raw\\" + tempPath + " \\Naked Wines\\Converted\\" +
tempPath.substring(0,tempPath.length() - 3) + "jpg");
}
//building process with commands
ProcessBuilder pb = new ProcessBuilder(cmds);
Process process;
try {
pb.redirectErrorStream(true);
//executing commands
process = pb.start();
BufferedReader r = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) { break; }
//print output from command execution
System.out.println(line);
}
} catch (Exception e) {
e.printStackTrace();
}
}
은 to는 입니다. C : \ Program Fi les \ ImageMagick-6.8.9-Q16 \ Naked Wines \ Convert.
"지정한 경로를 찾을 수 없습니다"라는 오류 메시지가 나타납니다.. How to override Windows' convert command by ImageMagick's one?과 같이 이전에 대답 한 질문을 보면 사람들은 Windows convert
명령을 무시해야한다고 제안합니다. 이것이 오류의 원인이 될 것인가, 또는 내가 누락 된 것이 있습니까? 나는 ImageMagick을 처음 접했고 뭔가를 놓쳤거나 오해했을 수도있다.