Package org.apache.poi.hslf.model.textproperties

Examples of org.apache.poi.hslf.model.textproperties.TextProp


   * Returns -1 if that TextProp isn't present.
   * If the TextProp isn't present, the value from the appropriate
   *  Master Sheet will apply.
   */
  private int getParaTextPropVal(String propName) {
        TextProp prop = null;
        if (paragraphStyle != null){
            prop = paragraphStyle.findByName(propName);
        }
        if (prop == null){
            Sheet sheet = parentRun.getSheet();
            int txtype = parentRun.getRunType();
            MasterSheet master = sheet.getMasterSheet();
            if (master != null)
                prop = master.getStyleAttribute(txtype, getIndentLevel(), propName, false);
        }

    return prop == null ? -1 : prop.getValue();
  }
View Full Code Here


    if(paragraphStyle == null) {
      parentRun.ensureStyleAtomPresent();
      // paragraphStyle will now be defined
    }
   
    TextProp tp = fetchOrAddTextProp(paragraphStyle, propName);
    tp.setValue(val);
  }
View Full Code Here

    if(characterStyle == null) {
      parentRun.ensureStyleAtomPresent();
      // characterStyle will now be defined
    }
   
    TextProp tp = fetchOrAddTextProp(characterStyle, propName);
    tp.setValue(val);
  }
View Full Code Here

        out.append("Paragraph properties\n");
        for (Iterator it1 = getParagraphStyles().iterator(); it1.hasNext();) {
            TextPropCollection pr = (TextPropCollection)it1.next();
            out.append("  chars covered: " + pr.getCharactersCovered() + "\n");
            for (Iterator it2 = pr.getTextPropList().iterator(); it2.hasNext(); ) {
                TextProp p = (TextProp)it2.next();
                out.append("    " + p.getName() + " = " + p.getValue() + "\n");
            }
        }

        out.append("Character properties\n");
        for (Iterator it1 = getCharacterStyles().iterator(); it1.hasNext();) {
            TextPropCollection pr = (TextPropCollection)it1.next();
            out.append("  chars covered: " + pr.getCharactersCovered() + "\n");
            for (Iterator it2 = pr.getTextPropList().iterator(); it2.hasNext(); ) {
                TextProp p = (TextProp)it2.next();
                out.append("    " + p.getName() + " = " + p.getValue() + "\n");
            }
        }

        return out.toString();
    }
View Full Code Here

  public static void showTextProps(TextPropCollection tpc) {
    LinkedList textProps = tpc.getTextPropList();
    System.out.println("    Contains " + textProps.size() + " TextProps");
    for(int i=0; i<textProps.size(); i++) {
      TextProp tp = (TextProp)textProps.get(i);
      System.out.println("      " + i + " - " + tp.getName());
      System.out.println("          = " + tp.getValue());
      System.out.println("          @ " + tp.getMask());

      if(tp instanceof BitMaskTextProp) {
        BitMaskTextProp bmtp = (BitMaskTextProp)tp;
        String[] subPropNames = bmtp.getSubPropNames();
        boolean[] subPropMatches = bmtp.getSubPropMatches();
View Full Code Here

    TextPropCollection b_ch_3 = (TextPropCollection)b_ch_l.get(2);
    TextPropCollection b_ch_4 = (TextPropCollection)b_ch_l.get(3);
   
    // In first set, we get a CharFlagsTextProp and a font.size
    assertEquals(2,b_ch_1.getTextPropList().size());
    TextProp tp_1_1 = (TextProp)b_ch_1.getTextPropList().get(0);
    TextProp tp_1_2 = (TextProp)b_ch_1.getTextPropList().get(1);
    assertEquals(true, tp_1_1 instanceof CharFlagsTextProp);
    assertEquals(true, tp_1_2 instanceof TextProp);
    assertEquals("font.size", tp_1_2.getName());
    assertEquals(20, tp_1_2.getValue());
   
    // In second set, we get a CharFlagsTextProp and a font.size and a font.color
    assertEquals(3,b_ch_2.getTextPropList().size());
    TextProp tp_2_1 = (TextProp)b_ch_2.getTextPropList().get(0);
    TextProp tp_2_2 = (TextProp)b_ch_2.getTextPropList().get(1);
    TextProp tp_2_3 = (TextProp)b_ch_2.getTextPropList().get(2);
    assertEquals(true, tp_2_1 instanceof CharFlagsTextProp);
    assertEquals(true, tp_2_2 instanceof TextProp);
    assertEquals(true, tp_2_3 instanceof TextProp);
    assertEquals("font.size", tp_2_2.getName());
    assertEquals("font.color", tp_2_3.getName());
    assertEquals(20, tp_2_2.getValue());
   
    // In third set, it's just a font.size and a font.color
    assertEquals(2,b_ch_3.getTextPropList().size());
    TextProp tp_3_1 = (TextProp)b_ch_3.getTextPropList().get(0);
    TextProp tp_3_2 = (TextProp)b_ch_3.getTextPropList().get(1);
    assertEquals(true, tp_3_1 instanceof TextProp);
    assertEquals(true, tp_3_2 instanceof TextProp);
    assertEquals("font.size", tp_3_1.getName());
    assertEquals("font.color", tp_3_2.getName());
    assertEquals(20, tp_3_1.getValue());
   
    // In fourth set, we get a CharFlagsTextProp and a font.index and a font.size
    assertEquals(3,b_ch_4.getTextPropList().size());
    TextProp tp_4_1 = (TextProp)b_ch_4.getTextPropList().get(0);
    TextProp tp_4_2 = (TextProp)b_ch_4.getTextPropList().get(1);
    TextProp tp_4_3 = (TextProp)b_ch_4.getTextPropList().get(2);
    assertEquals(true, tp_4_1 instanceof CharFlagsTextProp);
    assertEquals(true, tp_4_2 instanceof TextProp);
    assertEquals(true, tp_4_3 instanceof TextProp);
    assertEquals("font.index", tp_4_2.getName());
    assertEquals("font.size", tp_4_3.getName());
    assertEquals(24, tp_4_3.getValue());
  }
View Full Code Here

    TextPropCollection b_p_3 = (TextPropCollection)b_p_l.get(2);
    TextPropCollection b_p_4 = (TextPropCollection)b_p_l.get(3);
   
    // 1st is left aligned + normal line spacing
    assertEquals(2,b_p_1.getTextPropList().size());
    TextProp tp_1_1 = (TextProp)b_p_1.getTextPropList().get(0);
    TextProp tp_1_2 = (TextProp)b_p_1.getTextPropList().get(1);
    assertEquals(true, tp_1_1 instanceof TextProp);
    assertEquals(true, tp_1_2 instanceof TextProp);
    assertEquals("alignment", tp_1_1.getName());
    assertEquals("linespacing", tp_1_2.getName());
    assertEquals(0, tp_1_1.getValue());
    assertEquals(80, tp_1_2.getValue());
   
    // 2nd is centre aligned (default) + normal line spacing
    assertEquals(1,b_p_2.getTextPropList().size());
    TextProp tp_2_1 = (TextProp)b_p_2.getTextPropList().get(0);
    assertEquals(true, tp_2_1 instanceof TextProp);
    assertEquals(true, tp_1_2 instanceof TextProp);
    assertEquals("linespacing", tp_2_1.getName());
    assertEquals(80, tp_2_1.getValue());
   
    // 3rd is right aligned + normal line spacing
    assertEquals(2,b_p_3.getTextPropList().size());
    TextProp tp_3_1 = (TextProp)b_p_3.getTextPropList().get(0);
    TextProp tp_3_2 = (TextProp)b_p_3.getTextPropList().get(1);
    assertEquals(true, tp_3_1 instanceof TextProp);
    assertEquals(true, tp_3_2 instanceof TextProp);
    assertEquals("alignment", tp_3_1.getName());
    assertEquals("linespacing", tp_3_2.getName());
    assertEquals(2, tp_3_1.getValue());
    assertEquals(80, tp_3_2.getValue());
   
    // 4st is left aligned + normal line spacing (despite differing font)
    assertEquals(2,b_p_4.getTextPropList().size());
    TextProp tp_4_1 = (TextProp)b_p_4.getTextPropList().get(0);
    TextProp tp_4_2 = (TextProp)b_p_4.getTextPropList().get(1);
    assertEquals(true, tp_4_1 instanceof TextProp);
    assertEquals(true, tp_4_2 instanceof TextProp);
    assertEquals("alignment", tp_4_1.getName());
    assertEquals("linespacing", tp_4_2.getName());
    assertEquals(0, tp_4_1.getValue());
    assertEquals(80, tp_4_2.getValue());
  }
View Full Code Here

    assertNull(b_ch_3.findByName("char_flags"));
    assertNotNull(b_ch_4.findByName("char_flags"));
   
    // Now add in on 3, should go to front
    assertEquals(2, b_ch_3.getTextPropList().size());
    TextProp new_cftp = b_ch_3.addWithName("char_flags");
    assertEquals(3, b_ch_3.getTextPropList().size());
    assertEquals(new_cftp, b_ch_3.getTextPropList().get(0));
   
    // alignment: 1 does have, 2 doesn't
    assertNotNull(b_p_1.findByName("alignment"));
    assertNull(b_p_2.findByName("alignment"));
   
    // Now add in on 2, should go to the front
    assertEquals(1, b_p_2.getTextPropList().size());
    TextProp new_al = b_p_2.addWithName("alignment");
    assertEquals(2, b_p_2.getTextPropList().size());
    assertEquals(new_al, b_p_2.getTextPropList().get(0));
   
    // This should go at the end
    TextProp new_sa = b_p_2.addWithName("spaceafter");
    assertEquals(3, b_p_2.getTextPropList().size());
    assertEquals(new_sa, b_p_2.getTextPropList().get(2));
   
    // Check we get an error with a made up one
    try {
View Full Code Here

    TextPropCollection tpca = (TextPropCollection)cs.get(0);
    tpca.updateTextSize(21);
   
    // Second char style is coloured, 00 00 00 05, and 17 long
    TextPropCollection tpcb = stpa.addCharacterTextPropCollection(17);
    TextProp tpb = tpcb.addWithName("font.color");
    tpb.setValue(0x05000000);
   
    // Third char style is coloured, FF 33 00 FE, and 16 long
    TextPropCollection tpcc = stpa.addCharacterTextPropCollection(16);
    TextProp tpc = tpcc.addWithName("font.color");
    tpc.setValue(0xFE0033FF);
   
    // Should now be the same as data_a
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    stpa.writeOut(baos);
    byte[] b = baos.toByteArray();
View Full Code Here

   
    // First is 30 long, left aligned, normal spacing
    TextPropCollection tppa = (TextPropCollection)ps.get(0);
    tppa.updateTextSize(30);
   
    TextProp tp = tppa.addWithName("alignment");
    tp.setValue(0);
    tp = tppa.addWithName("linespacing");
    tp.setValue(80);

    // Second is 28 long, centre aligned and normal spacing
    TextPropCollection tppb = stpa.addParagraphTextPropCollection(28);
   
    tp = tppb.addWithName("linespacing");
    tp.setValue(80);
   
    // Third is 25 long, right aligned and normal spacing
    TextPropCollection tppc = stpa.addParagraphTextPropCollection(25);
   
    tp = tppc.addWithName("alignment");
    tp.setValue(2);
    tp = tppc.addWithName("linespacing");
    tp.setValue(80);
   
    // Forth is left aligned + normal line spacing (despite differing font)
    TextPropCollection tppd = stpa.addParagraphTextPropCollection(97);
   
    tp = tppd.addWithName("alignment");
    tp.setValue(0);
    tp = tppd.addWithName("linespacing");
    tp.setValue(80);
   
   
    // Now do 4 character styles
    LinkedList cs = stpa.getCharacterStyles();
   
    // First is 30 long, bold and font size
    TextPropCollection tpca = (TextPropCollection)cs.get(0);
    tpca.updateTextSize(30);
   
    tp = tpca.addWithName("font.size");
    tp.setValue(20);
    CharFlagsTextProp cftp = (CharFlagsTextProp)
      tpca.addWithName("char_flags");
    assertEquals(0, cftp.getValue());
    cftp.setSubValue(true, CharFlagsTextProp.BOLD_IDX);
    assertEquals(1, cftp.getValue());
   
    // Second is 28 long, blue and italic
    TextPropCollection tpcb = stpa.addCharacterTextPropCollection(28);
   
    tp = tpcb.addWithName("font.size");
    tp.setValue(20);
    tp = tpcb.addWithName("font.color");
    tp.setValue(0x05000000);
    cftp = (CharFlagsTextProp)tpcb.addWithName("char_flags");
    cftp.setSubValue(true, CharFlagsTextProp.ITALIC_IDX);
    assertEquals(2, cftp.getValue());
   
    // Third is 25 long and red
    TextPropCollection tpcc = stpa.addCharacterTextPropCollection(25);
   
    tp = tpcc.addWithName("font.size");
    tp.setValue(20);
    tp = tpcc.addWithName("font.color");
    tp.setValue(0xfe0033ff);
   
    // Fourth is 96 long, underlined and different+bigger font
    TextPropCollection tpcd = stpa.addCharacterTextPropCollection(96);
   
    tp = tpcd.addWithName("font.size");
    tp.setValue(24);
    tp = tpcd.addWithName("font.index");
    tp.setValue(1);
    cftp = (CharFlagsTextProp)tpcd.addWithName("char_flags");
    cftp.setSubValue(true, CharFlagsTextProp.UNDERLINE_IDX);
    assertEquals(4, cftp.getValue());
   
    // Fifth is 1 long, underlined and different+bigger font + red
    TextPropCollection tpce = stpa.addCharacterTextPropCollection(1);
   
    tp = tpce.addWithName("font.size");
    tp.setValue(24);
    tp = tpce.addWithName("font.index");
    tp.setValue(1);
    tp = tpce.addWithName("font.color");
    tp.setValue(0xfe0033ff);
    cftp = (CharFlagsTextProp)tpce.addWithName("char_flags");
    cftp.setSubValue(true, CharFlagsTextProp.UNDERLINE_IDX);
    assertEquals(4, cftp.getValue());
   
   
    // Check it's as expected
    assertEquals(4, stpa.getParagraphStyles().size());
    assertEquals(5, stpa.getCharacterStyles().size());
   
    // Compare in detail to b
    StyleTextPropAtom stpb = new StyleTextPropAtom(data_b,0,data_b.length);
    stpb.setParentTextSize(data_b_text_len);
    LinkedList psb = stpb.getParagraphStyles();
    LinkedList csb = stpb.getCharacterStyles();
   
    assertEquals(psb.size(), ps.size());
    assertEquals(csb.size(), cs.size());
   
    // Ensure Paragraph Character styles match
    for(int z=0; z<2; z++) {
      LinkedList lla = cs;
      LinkedList llb = csb;
      int upto = 5;
      if(z == 1) {
        lla = ps;
        llb = psb;
        upto = 4;
      }
     
      for(int i=0; i<upto; i++) {
        TextPropCollection ca = (TextPropCollection)lla.get(i);
        TextPropCollection cb = (TextPropCollection)llb.get(i);
       
        assertEquals(ca.getCharactersCovered(), cb.getCharactersCovered());
        assertEquals(ca.getTextPropList().size(), cb.getTextPropList().size());
       
        for(int j=0; j<ca.getTextPropList().size(); j++) {
          TextProp tpa = (TextProp)ca.getTextPropList().get(j);
          TextProp tpb = (TextProp)cb.getTextPropList().get(j);
          //System.out.println("TP " + i + " " + j + " " + tpa.getName() + "\t" + tpa.getValue() );
          assertEquals(tpa.getName(), tpb.getName());
          assertEquals(tpa.getMask(), tpb.getMask());
          assertEquals(tpa.getWriteMask(), tpb.getWriteMask());
          assertEquals(tpa.getValue(), tpb.getValue());
        }
       
        ByteArrayOutputStream ba = new ByteArrayOutputStream();
        ByteArrayOutputStream bb = new ByteArrayOutputStream();
       
View Full Code Here

TOP

Related Classes of org.apache.poi.hslf.model.textproperties.TextProp

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.