Example usage for org.apache.poi.xwpf.usermodel XWPFDocument XWPFDocument

List of usage examples for org.apache.poi.xwpf.usermodel XWPFDocument XWPFDocument

Introduction

In this page you can find the example usage for org.apache.poi.xwpf.usermodel XWPFDocument XWPFDocument.

Prototype

public XWPFDocument() 

Source Link

Usage

From source file:Utils.FileHandler.java

public void createReport(String designerName, String projectName, File crossSectionImg, File img1, File img2,
        File img3, Model model, DSMCalcs dsm)
        throws FileNotFoundException, IOException, InvalidFormatException {

    //Start of document
    XWPFDocument doc = new XWPFDocument();

    XWPFTable poiTable = doc.createTable(1, 3);

    //Paragraph 1
    XWPFParagraph p1 = poiTable.getRow(0).getCell(0).getParagraphs().get(0);
    p1.setAlignment(ParagraphAlignment.CENTER);
    p1.setVerticalAlignment(TextAlignment.CENTER);
    p1.setSpacingAfter(0);//from  ww  w .  j av  a  2s . c o m

    boldText(p1, "Designer: ");
    text(p1, designerName);

    //Project
    XWPFParagraph p8 = poiTable.getRow(0).getCell(1).getParagraphs().get(0);
    p8.setAlignment(ParagraphAlignment.CENTER);
    p8.setVerticalAlignment(TextAlignment.CENTER);
    p8.setSpacingAfter(0);
    boldText(p8, "Project: ");
    text(p8, projectName);

    XWPFParagraph p9 = poiTable.getRow(0).getCell(2).getParagraphs().get(0);
    p9.setAlignment(ParagraphAlignment.CENTER);
    p9.setVerticalAlignment(TextAlignment.CENTER);
    p9.setSpacingAfter(0);

    boldText(p9, "Date: ");

    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    Date date = new Date();

    text(p9, dateFormat.format(date));

    CTTbl table = poiTable.getCTTbl();
    CTTblPr pr = table.getTblPr();
    CTTblWidth tblW = pr.getTblW();
    tblW.setW(BigInteger.valueOf(5000));
    tblW.setType(STTblWidth.PCT);
    pr.setTblW(tblW);
    table.setTblPr(pr);

    XWPFParagraph modelParagraph = doc.createParagraph();
    modelParagraph.setAlignment(ParagraphAlignment.LEFT);
    lineBreak(modelParagraph);
    boldText(modelParagraph, "Model Properties:", true);
    lineBreak(modelParagraph);
    boldText(modelParagraph, "File Path: ");
    text(modelParagraph, "C:\\Users\\SJ\\Documents\\NetBeansProjects\\Stripper");
    lineBreak(modelParagraph);
    boldText(modelParagraph, "Maximum allowable stress: ");
    text(modelParagraph, Double.toString(model.getAllowableStress()));
    lineBreak(modelParagraph);
    boldText(modelParagraph, "Cross-sectional Area: ");
    text(modelParagraph, Double.toString(model.getCrossSectionalArea()));
    lineBreak(modelParagraph);

    boldText(modelParagraph, "Ixx: ");
    text(modelParagraph, Double.toString(model.getIxx()));
    lineBreak(modelParagraph);

    boldText(modelParagraph, "Ixx (principal): ");
    text(modelParagraph, Double.toString(model.getIxxPrincipal()));
    lineBreak(modelParagraph);

    boldText(modelParagraph, "Izz: ");
    text(modelParagraph, Double.toString(model.getIzz()));
    lineBreak(modelParagraph);

    boldText(modelParagraph, "Izz (principal): ");
    text(modelParagraph, Double.toString(model.getIzzPrincipal()));

    XWPFParagraph materialParagraph = doc.createParagraph();
    materialParagraph.setAlignment(ParagraphAlignment.LEFT);
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Material Properties: ", true);
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Material name: ");
    text(materialParagraph, model.getModelMaterial().getName());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Young's Modulus (Ex): ");
    text(materialParagraph, "" + model.getModelMaterial().getEx());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Young's Modulus (Ey): ");
    text(materialParagraph, "" + model.getModelMaterial().getEy());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Poisson Ratio (vx): ");
    text(materialParagraph, "" + model.getModelMaterial().getVx());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Poisson Ratio (vy): ");
    text(materialParagraph, "" + model.getModelMaterial().getVy());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Shear Modulus (G): ");
    text(materialParagraph, "" + model.getModelMaterial().getG());
    lineBreak(materialParagraph);
    boldText(materialParagraph, "Yield Stress: ");
    text(materialParagraph, "" + model.getModelMaterial().getFy());
    lineBreak(materialParagraph);

    if (crossSectionImg != null) {
        boldText(doc.createParagraph(), "Cross-Section: ", true);
        fullWidthPicture(doc, crossSectionImg);
    }
    pageBreak(doc.createParagraph());

    if (img1 != null) {
        XWPFParagraph p = doc.createParagraph();
        boldText(p, "Local Buckling Factor chosen by user: ", true);
        p.setSpacingAfter(0);
        lineBreak(p);
        fullWidthPicture(doc, img1);
    }

    if (img2 != null) {
        XWPFParagraph p = doc.createParagraph();
        boldText(p, "Distortional Buckling Factor chosen by user: ", true);
        p.setSpacingAfter(0);
        lineBreak(p);
        fullWidthPicture(doc, img2);
    }

    if (img3 != null) {
        XWPFParagraph p = doc.createParagraph();
        boldText(p, "Global Buckling Factor chosen by user: ", true);
        p.setSpacingAfter(0);
        lineBreak(p);
        fullWidthPicture(doc, img3);
    }
    pageBreak(doc.createParagraph());

    String type = "None";
    String local = "";
    String distortional = "";
    String global = "";
    String yield = "";
    double l = 0;
    double d = 0;
    double g = 0;
    double y = 0;

    if (dsm.getAnalysisType() == DSMCalcs.analysisType.BEAM) {
        type = "Beam";
        local = "Mcrl";
        distortional = "Mcrd";
        global = "Mcrd";
        yield = "My";
        l = dsm.getMcrl();
        d = dsm.getMcrd();
        g = dsm.getMcre();
        y = dsm.getMy();

    }
    if (dsm.getAnalysisType() == DSMCalcs.analysisType.COLUMN) {
        type = "Column";
        local = "Pcrl";
        distortional = "Pcrd";
        global = "Pcre";
        yield = "Py";
        l = dsm.getPcrl();
        d = dsm.getPcrd();
        g = dsm.getPcre();
        y = dsm.getPy();
    }

    XWPFParagraph inputParagraph = doc.createParagraph();
    boldText(inputParagraph, "DSM Input: ", true);
    lineBreak(inputParagraph);
    text(inputParagraph, "Analysis type: " + type);
    lineBreak(inputParagraph);
    text(inputParagraph, yield + " = " + y);
    lineBreak(inputParagraph);
    text(inputParagraph, local + " = " + l);
    lineBreak(inputParagraph);
    text(inputParagraph, distortional + " = " + d);
    lineBreak(inputParagraph);
    text(inputParagraph, global + " = " + g);

    String[] calcs = dsm.getTextArea().getText().split("\n");
    XWPFParagraph calcParagraph = doc.createParagraph();
    boldText(calcParagraph, "DSM Calculations: ", true);
    lineBreak(calcParagraph);
    for (int i = 0; i < calcs.length; i++) {
        text(calcParagraph, calcs[i]);
        lineBreak(calcParagraph);
    }

    fileDialog.getExtensionFilters().add(new ExtensionFilter("MS Word", "*.docx"));
    File file = fileDialog.showSaveDialog(null);

    FileOutputStream out = new FileOutputStream(file);
    doc.write(out);
    out.close();
    fileDialog.getExtensionFilters().clear();

}

From source file:UtilsPackage.MakeRapport.java

public void createNewDocument(File file, ObservableList<ModelNice> oNices) {
    FileOutputStream out = null;/*from   www . j ava 2 s . c om*/
    try {
        //Blank Document
        document = new XWPFDocument();
        //Write the Document in file system
        out = new FileOutputStream(file);

        // creation du rapport
        this.createRapport(oNices);

        document.write(out);
        out.close();

    } catch (FileNotFoundException ex) {
        Logger.getLogger(MakeRapport.class.getName()).log(Level.SEVERE, null, ex);
    } catch (IOException ex) {
        Logger.getLogger(MakeRapport.class.getName()).log(Level.SEVERE, null, ex);
    } finally {
        try {
            out.close();
        } catch (IOException ex) {
            Logger.getLogger(MakeRapport.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}