자바 모방 라 이브 러 리 의 기본 방법(openoffice+swftools+flexPaper)

자바 모방 라 이브 러 리 의 기본 방법
기본 단계:
    1.보 여줄 office 파일 을 PDF 로 변환,  도구 사용 openoffice 
    2.PDF 파일 을 swf 로 변환 하고 유 틸 리 티 swftools
    3.flexPaper 를 사용 하여 변 환 된 swf 파일 을 표시 합 니 다.
기본 코드:검사 하지 않 음
1.openoffice 변환 pdf
다운로드 주소:https://www.openoffice.org/zh-cn/
유 틸 리 티:  jodconverter-2.2.2   필요 한 jar 를 도입 하여 모든 jar 를 던 져 넣 었 습 니 다.

우선,openOffice 소프트웨어 를 다운로드 하고 설치 하 며 dos 명령 으로 서 비 스 를 시작 하면 cmd 입 니 다.저 는 CD 에 설 치 했 습 니 다.
명령 은 다음 과 같 습 니 다:실행 효과
C:\Program Files (x86)\OpenOffice 4\program>soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard 
시작 후 다음 명령 을 수행 합 니 다.    doc 파일 을 원본 파일 로 pdf 로 변환 합 니 다.

File inputFile = new File("D:\\      .doc"); 
 File outputFile = new File("D:\\      .pdf"); 
 OpenOfficeConnection connection = new SocketOpenOfficeConnection( 
   "127.0.0.1", 8100); 
  connection.connect(); 
 
  // convert 
 DocumentConverter converter = new OpenOfficeDocumentConverter( 
   connection); 
 converter.convert(inputFile, outputFile); 
 
 // close the connection 
 connection.disconnect(); 

2,swftools PDF 변환 swf
다운로드 주소:http://www.swftools.org/download.html
    먼저 swftools 도 구 를 설치 합 니 다.저 는 windows 에서 exe 파일 을 다운로드 하고 직접 설치 합 니 다.
    주:폴 더 에 빈 칸 이 없 으 면 안 됩 니 다.빈 칸 이 있 으 면 인식 되 지 않 습 니 다.  ...와 같다  program file  폴 더 가 잘 안 돼 요.
    나 는 D 디스크 루트 디 렉 터 리 에 설치 되 어 있 었 다.이 방법 은 인터넷 에서 유래 되 었 고 자 료 를 너무 많이 찾 아서 어떤 협객 이 어디서 복사 되 었 는 지 기억 나 지 않 는 다.
    다음 코드 가 windows 명령 으로 바 뀌 었 으 니 Liux 가 유효 하지 않 습 니 다.

public static int convertPDF2SWF(String sourcePath, String destPath, String fileName) throws IOException { 
  //                
  File dest = new File(destPath);  
  if (!dest.exists()) dest.mkdirs();    
  //           
  File source = new File(sourcePath);  
  if (!source.exists()) return 0;    
  //  pdf2swf        
  String command = "D:\\SWFTools\\pdf2swf.exe " + sourcePath + " -o " + destPath + fileName + " -f -T 9 " ; 
  System.out.println(command); 
  Process pro = Runtime.getRuntime().exec(command);    
  BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(pro.getInputStream()));  
  while (bufferedReader.readLine() != null);    
  try {   
  pro.waitFor();  
  } catch (InterruptedException e) {   
   // TODO Auto-generated catch block   
   e.printStackTrace();  
   }    
  return pro.exitValue();   
  } 


4.flexPaper 디 스 플레이 swf
    다운로드 주소:http://static.devaldi.com/GPL/FlexPaper_2.2.4.zip
    jsp 코드 는 다음 과 같 습 니 다.
    이 파일:FlexPaperViewer.swf

<!--     jquery     js        --> 
<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/flexpaper_flash.js"></script> 
<script type="text/javascript" src="js/flexpaper_flash_debug.js"></script> 
본문 은 아래 와 같 습 니 다.  

 <div style="position:absolute;left:10px;top:10px;"> 
  <a id="viewerPlaceHolder" style="width:1260px;height:780px;display:block"></a>  
  <script type="text/javascript"> 
  var fp = new FlexPaperViewer( 
    'FlexPaperViewer', 
    'viewerPlaceHolder', <!--   a    id--> 
    { config : { 
    SwfFile : decodeURI('aaa.swf'), <!--   swf  ,decodeURI          --> 
    Scale : 0.6, 
    ZoomTransition : 'easeOut', 
    ZoomTime : 0.5, 
    ZoomInterval : 0.2, 
    FitPageOnLoad : true, 
    FitWidthOnLoad : false, 
    PrintEnabled : true, 
    FullScreenAsMaxWindow : false, 
    ProgressiveLoading : false, 
    MinZoomSize : 0.2, 
    MaxZoomSize : 5, 
    SearchMatchAll : false, 
    InitViewMode : 'Portrait', 
    
    ViewModeToolsVisible : true, 
    ZoomToolsVisible : true, 
    NavToolsVisible : true, 
    CursorToolsVisible : true, 
    SearchToolsVisible : true, 
    localeChain: 'zh_CN' <!--        --> 
    }}); 
  </script> 
 </div> 
실행 효과:

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기