2017-05-22 17 views
0
내가 CM하는 픽셀을 변환 할 이미지를 dpi 싶어

를 포함하지 않는, 그래서 나는이를 얻을 수 ImageInfo.java를 사용ImageInfo는 유효한 값

ImageInfo myMapInfo = new ImageInfo(); 
      try { 
       File testFile = new File(fileNameString); 
       InputStream myMapStream = new FileInputStream(testFile); 
       myMapInfo.setInput(myMapStream); 
       myMapInfo.setDetermineImageNumber(true); 
       myMapInfo.setCollectComments(true); 

      } catch (FileNotFoundException e) { 
       e.printStackTrace(); 
      } 

      x = myMapInfo.getPhysicalWidthInch(); 
      y = myMapInfo.getPhysicalHeightInch(); 

을하지만 불행히도 내가 -1 얻을 -1 in (x, y)! 당신이 당신의 myMapInfo 변수의 check() 메소드를 호출 할 필요가 ImageInfo의 소스 코드를 찾고에서 ImageInfo.java

+0

필자는 sanselan jar 라이브러리를 사용 했으므로 ... –

답변

0

및이 통과하면 당신은 당신이 필요로하는 어떤 정보를 얻기 위해 다양한 getXxX() 방법을 사용할 수 있습니다 :이 클래스를 사용합니다. 덧붙여 말하면 -1을 얻는 것은 정보를 사용할 수 없다는 것을 의미하지만, 그럴 가능성이 가장 높습니다. check() 메서드를 호출하지 않기 때문입니다.

+0

'check()'메소드를 사용하는 것을 의미합니까 :'boolean sth = myMapInfo.check()'? , 그것을 사용하고'sth'는 참 값을 가지고 있지만 오류는 남아 있습니다 ... –

+0

입력을 설정 하고ImageNumber 등을 결정한 후에는 myMapInfo.check()를 호출해야합니다. 이렇게하면 myMapInfo에 사용 가능한 정보가 채워지게됩니다. ImageInfo.java (main 메소드가 있고 콘솔 어플리케이션으로 사용할 수 있음)를 직접 실행하고 테스트 파일을 입력으로 제공하면 작동하는지 확인할 수 있습니다. –

+0

테스트 후에 myMapInfo.getFormatName() 및 myMapInfo.getMimeType()이 잘 작동하지만'myMapInfo.getPhysicalWidthInch()'또는'myMapInfo.getPhysicalWidthDpi()'는'-1 '! –