2013-05-07 6 views
0

struts2를 사용하여 개발 한 응용 프로그램이 있습니다. 내 웹 페이지 중 하나에는 Google지도 API를 사용하여 만든 세계지도가 표시되는 div가 있습니다. 버튼을 클릭하면이지도를 서버 위치의 이미지로 저장하려고합니다. 나는 ROBOT 클래스를 사용하여 이것을 시도했지만 이것이 작동하지 않습니다. 내 응용 프로그램은 IE8을 지원합니다. 아래는 내가 쓴 코드는 다음과 같습니다 웹 페이지를 이미지로 저장하는 자바 코드

Dimension screenDim = Toolkit.getDefaultToolkit().getScreenSize(); 
Rectangle rect = new Rectangle(screenDim); 
Robot rob = new Robot(); 
BufferedImage img = rob.createScreenCapture(rect); 
String FileName="D:\\SP_Maps\\Map.png"; 
ImageIO.write(img, "png", new File(FileName)); 

는 기본적으로 나는 버튼의 클릭에 페이지의 스크린 샷을하고 이미지로 저장했습니다. 이것은 내 로컬 호스트에서 잘 작동하지만, 이것을 내 서버에 배포하고 스크린 샷을 얻으려고하면 검정 페이지가 png 이미지로 저장됩니다.

+1

이 * casper.js을 사용할 수 있습니다, 버튼 클릭과 같은 사용자 작업을 수행하려면 "이 로봇 클래스를 사용하지만이 작동하지 않습니다 했어요."* 당신의 시도를 보여주십시오. 당신은 무엇을 기대 했습니까? 대신에 무슨 일이 일어난거야? –

+0

여기에 사용 된 코드는 "Dimension screenDim = Toolkit.getDefaultToolkit(). getScreenSize(); Rectangle = new Rectangle (screenDim); Robot rob = 새 Robot(); BufferedImage img = rob.createScreenCapture (rect); String FileName = "D : \\ Maps \\ Map.png"; ImageIO.write (img, "png", 새 파일 (FileName)); " 버튼을 클릭하면 바탕 화면의 스크린 샷을 찍어 서버 컴퓨터의 이미지로 저장하려고했습니다. 이것은 내 로컬 호스트에서 잘 작동하지만, 내 서버에 동일한 것을 배포하면 그냥 검은 페이지를 제공합니다. – Pri

+0

@ user2134620 질문을 편집하고 그 주석을 잘 정돈 할 수 있습니다. – A4L

답변

0

당신이 관심이 있다면 당신은 자바 스크립트를 사용할 수있는 웹 응용 프로그램을 개발하는 동안 ..

이 스크린 샷을 얻을 당신이 PhantomJS

PhantomJS is a headless WebKit scriptable with a JavaScript API. It has fast 
and native support for various web standards: DOM handling, CSS selector, 
JSON, Canvas, and SVG. 

확인하는 예제를 사용할 수있는 형식으로 저장하려면 PhantomJS 작성 :

https://github.com/ariya/phantomjs/wiki/Examples

는 또한이 튜토리얼을 확인,210

튜토리얼은

0

당신은 명확 사용 사례를 설명 할 수 ...이 당신을 도와줍니다 등이

희망 ... 웹 이미지 촬영 및 JPEG, PNG, PDF로 저장에 관한 것입니다? 올바르게 이해했다면 사용자 작업시 화면 캡처 기능을 가진 웹 응용 프로그램이 있습니까? 이상적으로 Java Robot 유틸리티는 Java 응용 프로그램의 자동화 된 테스트를 수행하는 데 사용해야합니다. 문서 별

로봇의 주된 목적은 Java 플랫폼 구현의 자동화 된 테스트를 용이하게하는 것입니다.

아마도 phantomjs를 사용해 볼 수 있습니다. 예를

var page = require('webpage').create(); 
page.open('http://google.com', function() { 
    page.render('google.png'); 
    phantom.exit(); 
}); 

https://github.com/ariya/phantomjs/wiki/Quick-Start

당신이 http://casperjs.org/quickstart.html

관련 문제