2016-09-20 1 views
0

아래의 코드를 사용하여 화면의 스냅 샷을 찍은 다음 워드 파일에 저장합니다 .. 이 코드는 버튼으로 사용됩니다 ... 기존 파일을 대체하는 스크린 샷을 얻으십시오. 어떻게이 ..pls를 추가하면 미리 감사드립니다. 이 파일을 덮어 쓰는 대신 새 (빈) XWPFDocument마다자바를 사용하여 여러 이미지를 워드로 삽입 할 때 워드 문서를 추가 할 수 없습니다

XWPFDocument doc = new XWPFDocument(); 

을 생성하기 때문에 추가 및이를 사용하여 저장하는 것

private void btnmanActionPerformed(java.awt.event.ActionEvent evt) { 
    setVisible(false); 

    if (btnman.getText().equals("Quick ScreenShot")) { 

     try { 
      Calendar now = Calendar.getInstance(); 
      Robot robot = new Robot(); 
      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
      Rectangle captureRect = new Rectangle(0, 0, 1430, 840); 
      BufferedImage screenFullImage = robot.createScreenCapture(captureRect); 

      ImageIO.write(screenFullImage, "JPG", new File(path.getText() + formatter.format(now.getTime()) + ".jpg")); 
      img = path.getText() + formatter.format(now.getTime()) + ".jpg"; 
      System.out.println(img); 
      setVisible(true); 
     } catch (Exception es) { 
      System.out.println("not done"); 
     } 
    } else { 

     try { 
      Calendar now = Calendar.getInstance(); 
      Robot robot = new Robot(); 
      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
      Rectangle captureRect = new Rectangle(0, 0, 1400, 850); 
      BufferedImage screenFullImage = robot.createScreenCapture(captureRect); 

      ImageIO.write(screenFullImage, "JPG", new File("E:\\" + formatter.format(now.getTime()) + ".jpg")); 
      img = "E:\\" + formatter.format(now.getTime()) + ".jpg"; 
      System.out.println(img); 
      setVisible(true); 
     } catch (Exception es) { 
      System.out.println("not done"); 
     } 


     XWPFDocument doc = new XWPFDocument(); 

     XWPFParagraph title = doc.createParagraph(); 
     XWPFRun run = title.createRun(); 
     run.setText(path.getText()); 
     run.setBold(true); 
     title.setAlignment(ParagraphAlignment.CENTER); 
     try { 
      is = new FileInputStream(img); 

      //run.addBreak(); 
      run.addPicture(is, XWPFDocument.PICTURE_TYPE_JPEG, img, Units.toEMU(500), Units.toEMU(600)); 

      //is.close(); 
      System.out.println(img); 
      System.out.print(path.getText()); 

      FileOutputStream fos = new FileOutputStream(path.getText()); 


      doc.write(fos); 
      fos.close(); 
      System.out.println("Enterd successfully"); 

     } catch (Exception es) { 
      System.err.println("es"); 
     } 


    } 
} 

답변

1

: 경로를 (내가 있으리라 믿고있어).

FileOutputStream fos = new FileOutputStream(path.getText()); 
doc.write(fos); 

그러면 파일이 대체됩니다. 사용하는 대신

보십시오 등이 이미 존재하는 경우

XWPFDocument doc = new XWPFDocument(new FileInputStream(path.getText())); 

이전 문서를 엽니 다.

+0

Alex가 너무나 고마워요. –

관련 문제