Examples of RichTextRun


Examples of org.apache.poi.hslf.usermodel.RichTextRun

         TextBox txt = new TextBox(group);
         txt.getTextRun().supplySlideShow(group.getSheet().getSlideShow());
         txt.getTextRun().setSheet(group.getSheet());
         txt.setText(string);

         RichTextRun rt = txt.getTextRun().getRichTextRuns()[0];
         rt.setFontSize(font.getSize());
         rt.setFontName(font.getFamily());

        if(getColor() != null) rt.setFontColor(getColor());
        if (font.isBold()) rt.setBold(true);
        if (font.isItalic()) rt.setItalic(true);

         txt.setMarginBottom(0);
         txt.setMarginTop(0);
         txt.setMarginLeft(0);
         txt.setMarginRight(0);
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    }

    // Handle case of no current style, with a default
    if(pStyles.size() == 0 || cStyles.size() == 0) {
      _rtRuns = new RichTextRun[1];
      _rtRuns[0] = new RichTextRun(this, 0, runRawText.length());
    } else {
      // Build up Rich Text Runs, one for each
      //  character/paragraph style pair
      Vector rtrs = new Vector();

      int pos = 0;
     
      int curP = 0;
      int curC = 0;
      int pLenRemain = -1;
      int cLenRemain = -1;
     
      // Build one for each run with the same style
      while(pos <= runRawText.length() && curP < pStyles.size() && curC < cStyles.size()) {
        // Get the Props to use
        TextPropCollection pProps = (TextPropCollection)pStyles.get(curP);
        TextPropCollection cProps = (TextPropCollection)cStyles.get(curC);
       
        int pLen = pProps.getCharactersCovered();
        int cLen = cProps.getCharactersCovered();
       
        // Handle new pass
        boolean freshSet = false;
        if(pLenRemain == -1 && cLenRemain == -1) { freshSet = true; }
        if(pLenRemain == -1) { pLenRemain = pLen; }
        if(cLenRemain == -1) { cLenRemain = cLen; }
       
        // So we know how to build the eventual run
        int runLen = -1;
        boolean pShared = false;
        boolean cShared = false;
       
        // Same size, new styles - neither shared
        if(pLen == cLen && freshSet) {
          runLen = cLen;
          pShared = false;
          cShared = false;
          curP++;
          curC++;
          pLenRemain = -1;
          cLenRemain = -1;
        } else {
          // Some sharing
         
          // See if we are already in a shared block
          if(pLenRemain < pLen) {
            // Existing shared p block
            pShared = true;
           
            // Do we end with the c block, or either side of it?
            if(pLenRemain == cLenRemain) {
              // We end at the same time
              cShared = false;
              runLen = pLenRemain;
              curP++;
              curC++;
              pLenRemain = -1;
              cLenRemain = -1;
            } else if(pLenRemain < cLenRemain) {
              // We end before the c block
              cShared = true;
              runLen = pLenRemain;
              curP++;
              cLenRemain -= pLenRemain;
              pLenRemain = -1;
            } else {
              // We end after the c block
              cShared = false;
              runLen = cLenRemain;
              curC++;
              pLenRemain -= cLenRemain;
              cLenRemain = -1;
            }
          } else if(cLenRemain < cLen) {
            // Existing shared c block
            cShared = true;
           
            // Do we end with the p block, or either side of it?
            if(pLenRemain == cLenRemain) {
              // We end at the same time
              pShared = false;
              runLen = cLenRemain;
              curP++;
              curC++;
              pLenRemain = -1;
              cLenRemain = -1;
            } else if(cLenRemain < pLenRemain) {
              // We end before the p block
              pShared = true;
              runLen = cLenRemain;
              curC++;
              pLenRemain -= cLenRemain;
              cLenRemain = -1;
            } else {
              // We end after the p block
              pShared = false;
              runLen = pLenRemain;
              curP++;
              cLenRemain -= pLenRemain;
              pLenRemain = -1;
            }
          } else {
            // Start of a shared block
            if(pLenRemain < cLenRemain) {
              // Shared c block
              pShared = false;
              cShared = true;
              runLen = pLenRemain;
              curP++;
              cLenRemain -= pLenRemain;
              pLenRemain = -1;
            } else {
              // Shared p block
              pShared = true;
              cShared = false;
              runLen = cLenRemain;
              curC++;
              pLenRemain -= cLenRemain;
              cLenRemain = -1;
            }
          }
        }
       
        // Wind on
        int prevPos = pos;
        pos += runLen;
        // Adjust for end-of-run extra 1 length
        if(pos > runRawText.length()) {
          runLen--;
        }
       
        // Save
        RichTextRun rtr = new RichTextRun(this, prevPos, runLen, pProps, cProps, pShared, cShared);
        rtrs.add(rtr);
      }
     
      // Build the array
      _rtRuns = new RichTextRun[rtrs.size()];
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

   * If you care about styling, do setText on a RichTextRun instead
   */
  public synchronized void setText(String s) {
    // Save the new text to the atoms
    storeText(s);
    RichTextRun fst = _rtRuns[0];

    // Finally, zap and re-do the RichTextRuns
    for(int i=0; i<_rtRuns.length; i++) { _rtRuns[i] = null; }
    _rtRuns = new RichTextRun[1];
        _rtRuns[0] = fst;

    // Now handle record stylings:
    // If there isn't styling
    //  no change, stays with no styling
    // If there is styling:
    //  everthing gets the same style that the first block has
    if(_styleAtom != null) {
      LinkedList pStyles = _styleAtom.getParagraphStyles();
      while(pStyles.size() > 1) { pStyles.removeLast(); }
     
      LinkedList cStyles = _styleAtom.getCharacterStyles();
      while(cStyles.size() > 1) { cStyles.removeLast(); }
     
      _rtRuns[0].setText(s);
    } else {
      // Recreate rich text run with no styling
      _rtRuns[0] = new RichTextRun(this,0,s.length());
    }
  }
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

     * Adjust the size of the TextBox so it encompasses the text inside it.
     */
    public void resizeToFitText(){
        try{
        FontRenderContext frc = new FontRenderContext(null, true, true);
        RichTextRun rt = _txtrun.getRichTextRuns()[0];
        int size = rt.getFontSize();
        int style = 0;
        if (rt.isBold()) style |= Font.BOLD;
        if (rt.isItalic()) style |= Font.ITALIC;
        String fntname = rt.getFontName();
        Font font = new Font(fntname, style, size);

        TextLayout layout = new TextLayout(getText(), font, frc);
        int width = Math.round(layout.getAdvance());
        int height = Math.round(layout.getAscent());
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

        //String filename = dirname + "/with_textbox.ppt";
        //new SlideShow(new HSLFSlideShow(filename));

        SlideShow ppt = new SlideShow();
        Slide sl = ppt.createSlide();
        RichTextRun rt;

        String val = "Hello, World!";

        // Create a new textbox, and give it lots of properties
        TextBox txtbox = new TextBox();
        rt = txtbox.getTextRun().getRichTextRuns()[0];
        txtbox.setText(val);
        rt.setFontSize(42);
        rt.setBold(true);
        rt.setItalic(true);
        rt.setUnderlined(false);
        sl.addShape(txtbox);

        // Check it before save
        rt = txtbox.getTextRun().getRichTextRuns()[0];
        assertEquals(val, rt.getText());
        assertEquals(42, rt.getFontSize());
        assertTrue(rt.isBold());
        assertTrue(rt.isItalic());

        // Serialize and read again
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        ppt.write(out);
        out.close();

        ppt = new SlideShow(new HSLFSlideShow(new ByteArrayInputStream(out.toByteArray())));
        sl = ppt.getSlides()[0];

        txtbox = (TextBox)sl.getShapes()[0];
        rt = txtbox.getTextRun().getRichTextRuns()[0];

        // Check after save
        assertEquals(val, rt.getText());
        assertEquals(42, rt.getFontSize());
        assertTrue(rt.isBold());
        assertTrue(rt.isItalic());
        assertFalse(rt.isUnderlined());
    }
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    TextRun trB = textRuns[1];
   
    assertEquals(1, trA.getRichTextRuns().length);
    assertEquals(1, trB.getRichTextRuns().length);
   
    RichTextRun rtrA = trA.getRichTextRuns()[0];
    RichTextRun rtrB = trB.getRichTextRuns()[0];
   
    assertEquals(trA.getText(), rtrA.getText());
    assertEquals(trB.getText(), rtrB.getText());
   
    assertNull(rtrA._getRawCharacterStyle());
    assertNull(rtrA._getRawParagraphStyle());
    assertNull(rtrB._getRawCharacterStyle());
    assertNull(rtrB._getRawParagraphStyle());
    }
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    TextRun trB = textRuns[1];
   
    assertEquals(1, trA.getRichTextRuns().length);
    assertEquals(3, trB.getRichTextRuns().length);
   
    RichTextRun rtrA = trA.getRichTextRuns()[0];
    RichTextRun rtrB = trB.getRichTextRuns()[0];
    RichTextRun rtrC = trB.getRichTextRuns()[1];
    RichTextRun rtrD = trB.getRichTextRuns()[2];
   
    assertEquals(trA.getText(), rtrA.getText());
   
    assertEquals(trB.getText().substring(0, 30), rtrB.getText());
    assertEquals(trB.getText().substring(30,58), rtrC.getText());
    assertEquals(trB.getText().substring(58,82), rtrD.getText());
   
    assertNull(rtrA._getRawCharacterStyle());
    assertNull(rtrA._getRawParagraphStyle());
    assertNotNull(rtrB._getRawCharacterStyle());
    assertNotNull(rtrB._getRawParagraphStyle());
    assertNotNull(rtrC._getRawCharacterStyle());
    assertNotNull(rtrC._getRawParagraphStyle());
    assertNotNull(rtrD._getRawCharacterStyle());
    assertNotNull(rtrD._getRawParagraphStyle());
   
    // Same paragraph styles
    assertEquals(rtrB._getRawParagraphStyle(), rtrC._getRawParagraphStyle());
    assertEquals(rtrB._getRawParagraphStyle(), rtrD._getRawParagraphStyle());
   
    // Different char styles
    assertFalse( rtrB._getRawCharacterStyle().equals( rtrC._getRawCharacterStyle() ));
    assertFalse( rtrB._getRawCharacterStyle().equals( rtrD._getRawCharacterStyle() ));
    assertFalse( rtrC._getRawCharacterStyle().equals( rtrD._getRawCharacterStyle() ));
    }
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    Slide slideOne = ss.getSlides()[0];
    TextRun[] textRuns = slideOne.getTextRuns();
    TextRun trB = textRuns[1];
    assertEquals(1, trB.getRichTextRuns().length);
   
    RichTextRun rtrB = trB.getRichTextRuns()[0];
    assertEquals(trB.getText(), rtrB.getText());
    assertNull(rtrB._getRawCharacterStyle());
    assertNull(rtrB._getRawParagraphStyle());
   
    // Change text via normal
    trB.setText("Test Foo Test");
    rtrB = trB.getRichTextRuns()[0];
    assertEquals("Test Foo Test", trB.getText());
    assertEquals("Test Foo Test", rtrB.getText());
    assertNull(rtrB._getRawCharacterStyle());
    assertNull(rtrB._getRawParagraphStyle());
    }
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    Slide slideOne = ssRich.getSlides()[0];
    TextRun[] textRuns = slideOne.getTextRuns();
    TextRun trB = textRuns[1];
    assertEquals(3, trB.getRichTextRuns().length);
   
    RichTextRun rtrB = trB.getRichTextRuns()[0];
    RichTextRun rtrC = trB.getRichTextRuns()[1];
    RichTextRun rtrD = trB.getRichTextRuns()[2];
    TextPropCollection tpBP = rtrB._getRawParagraphStyle();
    TextPropCollection tpBC = rtrB._getRawCharacterStyle();
    TextPropCollection tpCP = rtrC._getRawParagraphStyle();
    TextPropCollection tpCC = rtrC._getRawCharacterStyle();
    TextPropCollection tpDP = rtrD._getRawParagraphStyle();
    TextPropCollection tpDC = rtrD._getRawCharacterStyle();
   
    assertEquals(trB.getText().substring(0, 30), rtrB.getText());
    assertNotNull(tpBP);
    assertNotNull(tpBC);
    assertNotNull(tpCP);
View Full Code Here

Examples of org.apache.poi.hslf.usermodel.RichTextRun

    Slide slideOne = ss.getSlides()[0];
    TextRun[] textRuns = slideOne.getTextRuns();
    TextRun trB = textRuns[1];
    assertEquals(1, trB.getRichTextRuns().length);
   
    RichTextRun rtrB = trB.getRichTextRuns()[0];
    assertEquals(trB.getText(), rtrB.getText());
    assertNull(rtrB._getRawCharacterStyle());
    assertNull(rtrB._getRawParagraphStyle());
   
    // Change text via rich
    rtrB.setText("Test Test Test");
    assertEquals("Test Test Test", trB.getText());
    assertEquals("Test Test Test", rtrB.getText());
   
    // Will now have dummy props
    assertNotNull(rtrB._getRawCharacterStyle());
    assertNotNull(rtrB._getRawParagraphStyle());
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.