Example usage for org.apache.poi.xwpf.usermodel XWPFParagraph setVerticalAlignment

List of usage examples for org.apache.poi.xwpf.usermodel XWPFParagraph setVerticalAlignment

Introduction

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

Prototype

public void setVerticalAlignment(TextAlignment valign) 

Source Link

Document

Specifies the text vertical alignment which shall be applied to text in this paragraph.

Usage

From source file:ro.dabuno.office.integration.SimpleDocument.java

License:Apache License

public static void main(String[] args) throws Exception {
    XWPFDocument doc = new XWPFDocument();

    XWPFParagraph p0 = doc.createParagraph();
    XWPFRun r0 = p0.createRun();/*from  ww  w  . j  a  v  a  2 s . co m*/
    r0.setBold(false);
    r0.setText("Domnule");
    XWPFRun r00 = p0.createRun();
    r00.setBold(true);
    r00.setText(" Ionescu Ion");

    XWPFParagraph p1 = doc.createParagraph();
    p1.setAlignment(ParagraphAlignment.CENTER);
    p1.setBorderBottom(Borders.DOUBLE);
    p1.setBorderTop(Borders.DOUBLE);

    p1.setBorderRight(Borders.DOUBLE);
    p1.setBorderLeft(Borders.DOUBLE);
    p1.setBorderBetween(Borders.SINGLE);

    p1.setVerticalAlignment(TextAlignment.TOP);

    XWPFRun r1 = p1.createRun();
    r1.setBold(true);
    r1.setText("The quick brown fox");
    r1.setBold(true);
    r1.setFontFamily("Courier");
    r1.setUnderline(UnderlinePatterns.DOT_DOT_DASH);
    r1.setTextPosition(100);

    XWPFParagraph p2 = doc.createParagraph();
    p2.setAlignment(ParagraphAlignment.RIGHT);

    //BORDERS
    p2.setBorderBottom(Borders.DOUBLE);
    p2.setBorderTop(Borders.DOUBLE);
    p2.setBorderRight(Borders.DOUBLE);
    p2.setBorderLeft(Borders.DOUBLE);
    p2.setBorderBetween(Borders.SINGLE);

    XWPFRun r2 = p2.createRun();
    r2.setText("jumped over the lazy dog");
    r2.setStrike(true);
    r2.setFontSize(20);

    XWPFRun r3 = p2.createRun();
    r3.setText("and went away");
    r3.setStrike(true);
    r3.setFontSize(20);
    r3.setSubscript(VerticalAlign.SUPERSCRIPT);

    XWPFParagraph p3 = doc.createParagraph();
    p3.setWordWrap(true);
    p3.setPageBreak(true);

    //p3.setAlignment(ParagraphAlignment.DISTRIBUTE);
    p3.setAlignment(ParagraphAlignment.BOTH);
    p3.setSpacingLineRule(LineSpacingRule.EXACT);

    p3.setIndentationFirstLine(600);

    XWPFRun r4 = p3.createRun();
    r4.setTextPosition(20);
    r4.setText("To be, or not to be: that is the question: " + "Whether 'tis nobler in the mind to suffer "
            + "The slings and arrows of outrageous fortune, " + "Or to take arms against a sea of troubles, "
            + "And by opposing end them? To die: to sleep; ");
    r4.addBreak(BreakType.PAGE);
    r4.setText("No more; and by a sleep to say we end " + "The heart-ache and the thousand natural shocks "
            + "That flesh is heir to, 'tis a consummation " + "Devoutly to be wish'd. To die, to sleep; "
            + "To sleep: perchance to dream: ay, there's the rub; " + ".......");
    r4.setItalic(true);
    //This would imply that this break shall be treated as a simple line break, and break the line after that word:

    XWPFRun r5 = p3.createRun();
    r5.setTextPosition(-10);
    r5.setText("For in that sleep of death what dreams may come");
    r5.addCarriageReturn();
    r5.setText("When we have shuffled off this mortal coil," + "Must give us pause: there's the respect"
            + "That makes calamity of so long life;");
    r5.addBreak();
    r5.setText("For who would bear the whips and scorns of time,"
            + "The oppressor's wrong, the proud man's contumely,");

    r5.addBreak(BreakClear.ALL);
    r5.setText("The pangs of despised love, the law's delay," + "The insolence of office and the spurns"
            + ".......");

    FileOutputStream out = new FileOutputStream("simple.docx");
    doc.write(out);
    out.close();

}

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 w ww . j a v a2 s  .com

    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();

}