java使用itext操作pdf


public void GenerateAllParts() {
        Document document = new Document();
        
        try {
            PdfWriter.getInstance(document, new FileOutputStream("d:\\all.pdf"));
            
            // 生成字體
            BaseFont bfChinese = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H", false);
            // 標題字體
            Font f30 = new Font(bfChinese, 30, Font.NORMAL, Color.BLACK);
            // 正文字體
            Font f12 = new Font(bfChinese, 12, Font.NORMAL, Color.BLACK);
            Font f6 = new Font(bfChinese, 6, Font.NORMAL, Color.BLACK);
            Font f8 = new Font(bfChinese, 8, Font.NORMAL, Color.BLACK);
            
            document.open();
            
            // 標題
            document.add(new Paragraph("報表實例", f30));
            // 換行
            document.add(new Chunk("\n\n"));
            // 
            document.add(
                    new Paragraph(
                    new Chunk(".......................點擊查看報表", f12)
                    .setLocalGoto("table")));
            // 換行
            document.add(new Chunk("\n\n"));
            document.add(
                    new Paragraph(
                    new Chunk(".......................點擊查看圖片", f12)
                    .setLocalGoto("image")));
            document.add(new Chunk("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"));
            
            ///////////////////////////////////////////////////
            // 報表位置
            document.add(new Chunk("報表實例", f12).setLocalDestination("table"));
            // 添加table實例
            PdfPTable table = new PdfPTable(5);
            table.setWidthPercentage(100);
            table.setHorizontalAlignment(PdfPTable.ALIGN_LEFT);
            PdfPCell cell = new PdfPCell();
            cell.setBackgroundColor(new Color(213, 141, 69));
            cell.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            
            // 表格標題
            cell.setPhrase(new Paragraph("標題一", f8));
            table.addCell(cell);
            cell.setPhrase(new Paragraph("標題二", f8));
            table.addCell(cell);
            cell.setPhrase(new Paragraph("標題三", f8));
            table.addCell(cell);
            cell.setPhrase(new Paragraph("標題四", f8));
            table.addCell(cell);
            cell.setPhrase(new Paragraph("標題五", f8));
            table.addCell(cell);
            
            // 表格數據
            PdfPCell newcell = new PdfPCell();
            newcell.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            newcell.setPhrase(new Paragraph("數據一", f8));
            table.addCell(newcell);
            newcell.setPhrase(new Paragraph("數據二", f8));
            table.addCell(newcell);
            newcell.setPhrase(new Paragraph("數據三", f8));
            table.addCell(newcell);
            newcell.setPhrase(new Paragraph("數據四", f8));
            table.addCell(newcell);
            newcell.setPhrase(new Paragraph("數據五", f8));
            table.addCell(newcell);
            
            document.add(table);
            ////////////////////////////////////////////////////////
            
            //////////////////////////////////////////////////////////
            // 添加連接
            document.add(new Chunk("圖片實例", f12).setLocalDestination("image"));
            Image jpg = Image.getInstance("d:\\3.jpg");
            document.add(jpg);
            //////////////////////////////////////////////////////////
            
            document.close();
        } catch (Exception e) {
            // TODO: handle exception
        }
    }
復制代碼

 

下面這個例子演示如何將將word轉換成pdf,這里使用的是openoffice來實現的,參考:http://www.javaeye.com/topic/352103

 

3. 實現代碼:

     /**

復制代碼
     * 完成word2pdf的轉換
     */
    public void GeneratePdfFromWord() {
        Date date = new Date();
        
        OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
        
        try {
            connection.connect();    
             DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
                converter.convert(new File("d:\\test.doc"), new File("d:\\word2pdf.pdf"));
                
        } catch (Exception e) {
            // TODO: handle exception
        } finally {
            if(connection!=null){
                connection.disconnect();
                connection = null;
            }

        }
    }
復制代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM