2013-10-09 105 views
0

當用戶使用我的應用程序進一步使用時,他必須拍攝應用程序的屏幕截圖。當我點擊按鈕時,應用程序屏幕截圖需要被採取並且存儲它在png或pdf文件。任何人都可以告訴我從哪裏開始。 我照了很多..但我沒有得到任何適當的樣本。我嘗試使用http://html2canvas.hertzen.com /但未能從聽到開始。打印圖像到pdf文件

幫助真的感激..

+0

看看這有助於:http://stackoverflow.com/questions/ 17825782/how-to-convert-html-to-pdf-using-itext –

+0

你不覺得你試圖通過打印屏幕破解用戶桌面信息嗎? :) – gyan

+0

其不是桌面.....我想在我的應用程序中使用...當我們點擊打印按鈕..我的應用程序屏幕截圖需要完成 – Navyah

回答

-1

對於桌面Swing應用程序,代碼可能會被(從here拍攝)

import java.awt.Robot; 
import java.awt.Rectangle; 
import java.awt.Toolkit; 
import java.awt.Canvas; 
import java.awt.Graphics; 

import java.awt.image.BufferedImage; 

import javax.swing.JFrame; 

public class CaptureScreen extends Canvas 
{ 
Rectangle screenRectangle=new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()); 

Robot myRobot; 

BufferedImage screenImage; 

public CaptureScreen() 
{ 
try 
{ 
myRobot=new Robot(); 
} 
catch(Exception exception) 
{ 
exception.printStackTrace(); 
} 

screenImage=myRobot.createScreenCapture(screenRectangle); 

JFrame myFrame=new JFrame("Capture Screen"); 

myFrame.add(this); 

myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
myFrame.setSize(Toolkit.getDefaultToolkit().getScreenSize().width,Toolkit.getDefaultToolkit().getScreenSize().height); 
myFrame.setVisible(true); 
} 

public void paint(Graphics g) 
{ 
g.drawImage(screenImage,0,0,this); 
} 

public static void main(String[]args) 
{ 
CaptureScreen cs=new CaptureScreen(); 
} 
} 
+0

嗨吉安,我想用客戶端..不是從Java代碼..我在我的應用程序中使用彈簧 – Navyah

+0

客戶端屏幕捕獲是不可能的,我猜是因爲你需要與客戶端機器特定的庫和硬件進行交互,這是java安全架構師根本不允許從web上的任何代碼執行的。這就是swing應用程序可以這樣做的原因,因爲它是用戶在桌面上安裝的受信任的應用程序,但不適用於Web應用程序。 – gyan

+0

嗨吉安,但我的應用程序是一個Web應用程序,當我點擊打印按鈕時,我需要截取我的應用程序的屏幕截圖。我不想使用鞦韆概念 – Navyah