Examples of Chunk


Examples of com.lowagie.text.Chunk

                // offsets the y co-ordinate by 15 units
                float y = -im.getScaledHeight() + 15;

                x = x + (signatureRect.getWidth() - im.getScaledWidth()) / 2;
                y = y - (signatureRect.getHeight() - im.getScaledHeight()) / 2;
                p.add(new Chunk(im, x + (signatureRect.getWidth() - im.getScaledWidth()) / 2, y, false));
                ct2.addElement(p);
                ct2.go();
            }
           
            if (size <= 0) {
View Full Code Here

Examples of com.lowagie.text.Chunk

  public Chunk createChunk(String text, ChainedProperties props) {
    Font font = getFont(props);
    float size = font.getSize();
    size /= 2;
    Chunk ck = new Chunk(text, font);
    if (props.hasProperty("sub"))
      ck.setTextRise(-size);
    else if (props.hasProperty("sup"))
      ck.setTextRise(size);
    ck.setHyphenation(getHyphenation(props));
    return ck;
  }
View Full Code Here

Examples of com.lowagie.text.Chunk

          cprops.removeChain(tag);
          if (currentParagraph == null) {
            currentParagraph = FactoryProperties
                .createParagraph(cprops);
          }
          currentParagraph.add(new Chunk(img, 0, 0));
        }
        return;
      }
      endElement("p");
      if (tag.equals("h1") || tag.equals("h2") || tag.equals("h3")
View Full Code Here

Examples of com.lowagie.text.Chunk

          String href = cprops.getProperty("href");
          if (href != null) {
            ArrayList chunks = currentParagraph.getChunks();
            int size = chunks.size();
            for (int k = 0; k < size; ++k) {
              Chunk ck = (Chunk) chunks.get(k);
              ck.setAnchor(href);
            }
          }
        }
        Paragraph tmp = (Paragraph) stack.pop();
        Phrase tmp2 = new Phrase();
View Full Code Here

Examples of com.lowagie.text.Chunk

    String content = str;
    if (isPRE) {
      if (currentParagraph == null) {
        currentParagraph = FactoryProperties.createParagraph(cprops);
      }
      Chunk chunk = factoryProperties.createChunk(content, cprops);
      currentParagraph.add(chunk);
      return;
    }
    if (content.trim().length() == 0 && content.indexOf(' ') < 0) {
      return;
    }

    StringBuffer buf = new StringBuffer();
    int len = content.length();
    char character;
    boolean newline = false;
    for (int i = 0; i < len; i++) {
      switch (character = content.charAt(i)) {
      case ' ':
        if (!newline) {
          buf.append(character);
        }
        break;
      case '\n':
        if (i > 0) {
          newline = true;
          buf.append(' ');
        }
        break;
      case '\r':
        break;
      case '\t':
        break;
      default:
        newline = false;
        buf.append(character);
      }
    }
    if (currentParagraph == null) {
      currentParagraph = FactoryProperties.createParagraph(cprops);
    }
    Chunk chunk = factoryProperties.createChunk(buf.toString(), cprops);
    currentParagraph.add(chunk);
  }
View Full Code Here

Examples of com.lowagie.text.Chunk

            setPadding(borderWidth / 2);
        }
        else {
            borderWidth = 0.5f;
            border = BOX;
            column.addText(this.phrase = new Phrase(new Chunk(image, 0, 0)));
            column.setLeading(0, 1);
            setPadding(0);
        }
    }
View Full Code Here

Examples of com.lowagie.text.Chunk

      final BaseFontFontMetrics fontMetrics = metaData.getBaseFontFontMetrics
          (fontName, fontSize, bold, italic, "utf-8", false, false);
      final BaseFont baseFont = fontMetrics.getBaseFont();
      final Font font = new Font(baseFont, (float) fontSize, style, textColor);
      final Chunk c = new Chunk(text, font);
      if (backgroundColor != null)
      {
        c.setBackground(backgroundColor);
      }
      target.add(c);
    }
View Full Code Here

Examples of com.lowagie.text.Chunk

  }


  protected void writePageAnchor(int pageIndex) throws DocumentException {
    Map pdfFontAttrs = getDefaultPdfFontAttributes();
    Chunk chunk;
    if (pdfFontAttrs == null)
    {
      chunk = new Chunk(" ");
    }
    else
    {
      // no underline or strikethrough
      Font pdfFont = getFont(pdfFontAttrs, getLocale(), false);
      chunk = new Chunk(" ", pdfFont);
    }
   
    chunk.setLocalDestination(JR_PAGE_ANCHOR_PREFIX + reportIndex + "_" + (pageIndex + 1));

    tagHelper.startPageAnchor();
   
    ColumnText colText = new ColumnText(pdfContentByte);
    colText.setSimpleColumn(
View Full Code Here

Examples of com.lowagie.text.Chunk

    if (renderer != null)
    {
      int xoffset = 0;
      int yoffset = 0;

      Chunk chunk = null;

      float scaledWidth = availableImageWidth;
      float scaledHeight = availableImageHeight;

      if (renderer.getType() == JRRenderable.TYPE_IMAGE)
      {
        com.lowagie.text.Image image = null;

        float xalignFactor = getXAlignFactor(printImage);
        float yalignFactor = getYAlignFactor(printImage);

        switch(printImage.getScaleImageValue())
        {
          case CLIP :
          {
            // Image load might fail, from given image data.
            // Better to test and replace the renderer now, in case of lazy load error.
            renderer =
              JRImageRenderer.getOnErrorRendererForDimension(
                renderer,
                printImage.getOnErrorTypeValue()
                );
            if (renderer == null)
            {
              break;
            }
           
            int normalWidth = availableImageWidth;
            int normalHeight = availableImageHeight;

            Dimension2D dimension = renderer.getDimension();
            if (dimension != null)
            {
              normalWidth = (int)dimension.getWidth();
              normalHeight = (int)dimension.getHeight();
            }

            xoffset = (int)(xalignFactor * (availableImageWidth - normalWidth));
            yoffset = (int)(yalignFactor * (availableImageHeight - normalHeight));

            int minWidth = Math.min(normalWidth, availableImageWidth);
            int minHeight = Math.min(normalHeight, availableImageHeight);

            BufferedImage bi =
              new BufferedImage(minWidth, minHeight, BufferedImage.TYPE_INT_ARGB);

            Graphics2D g = bi.createGraphics();
            if (printImage.getModeValue() == ModeEnum.OPAQUE)
            {
              g.setColor(printImage.getBackcolor());
              g.fillRect(0, 0, minWidth, minHeight);
            }
            renderer.render(
              g,
              new java.awt.Rectangle(
                (xoffset > 0 ? 0 : xoffset),
                (yoffset > 0 ? 0 : yoffset),
                normalWidth,
                normalHeight
                )
              );
            g.dispose();

            xoffset = (xoffset < 0 ? 0 : xoffset);
            yoffset = (yoffset < 0 ? 0 : yoffset);

            //awtImage = bi.getSubimage(0, 0, minWidth, minHeight);

            //image = com.lowagie.text.Image.getInstance(awtImage, printImage.getBackcolor());
            image = com.lowagie.text.Image.getInstance(bi, null);

            break;
          }
          case FILL_FRAME :
          {
            if (printImage.isUsingCache() && loadedImagesMap.containsKey(renderer))
            {
              image = (com.lowagie.text.Image)loadedImagesMap.get(renderer);
            }
            else
            {
              try
              {
                image = com.lowagie.text.Image.getInstance(renderer.getImageData());
                imageTesterPdfContentByte.addImage(image, 10, 0, 0, 10, 0, 0);
              }
              catch(Exception e)
              {
                JRImageRenderer tmpRenderer =
                  JRImageRenderer.getOnErrorRendererForImage(
                    JRImageRenderer.getInstance(renderer.getImageData()),
                    printImage.getOnErrorTypeValue()
                    );
                if (tmpRenderer == null)
                {
                  break;
                }
                java.awt.Image awtImage = tmpRenderer.getImage();
                image = com.lowagie.text.Image.getInstance(awtImage, null);
              }

              if (printImage.isUsingCache())
              {
                loadedImagesMap.put(renderer, image);
              }
            }

            image.scaleAbsolute(availableImageWidth, availableImageHeight);
            break;
          }
          case RETAIN_SHAPE :
          default :
          {
            if (printImage.isUsingCache() && loadedImagesMap.containsKey(renderer))
            {
              image = (com.lowagie.text.Image)loadedImagesMap.get(renderer);
            }
            else
            {
              try
              {
                image = com.lowagie.text.Image.getInstance(renderer.getImageData());
                imageTesterPdfContentByte.addImage(image, 10, 0, 0, 10, 0, 0);
              }
              catch(Exception e)
              {
                JRImageRenderer tmpRenderer =
                  JRImageRenderer.getOnErrorRendererForImage(
                    JRImageRenderer.getInstance(renderer.getImageData()),
                    printImage.getOnErrorTypeValue()
                    );
                if (tmpRenderer == null)
                {
                  break;
                }
                java.awt.Image awtImage = tmpRenderer.getImage();
                image = com.lowagie.text.Image.getInstance(awtImage, null);
              }

              if (printImage.isUsingCache())
              {
                loadedImagesMap.put(renderer, image);
              }
            }

            image.scaleToFit(availableImageWidth, availableImageHeight);

            xoffset = (int)(xalignFactor * (availableImageWidth - image.getPlainWidth()));
            yoffset = (int)(yalignFactor * (availableImageHeight - image.getPlainHeight()));

            xoffset = (xoffset < 0 ? 0 : xoffset);
            yoffset = (yoffset < 0 ? 0 : yoffset);

            break;
          }
        }

        if (image != null)
        {
          chunk = new Chunk(image, 0, 0);

          scaledWidth = image.getScaledWidth();
          scaledHeight = image.getScaledHeight();
        }
      }
      else
      {
        double normalWidth = availableImageWidth;
        double normalHeight = availableImageHeight;

        double displayWidth = availableImageWidth;
        double displayHeight = availableImageHeight;

        double ratioX = 1f;
        double ratioY = 1f;
       
        Rectangle2D clip = null;

        Dimension2D dimension = renderer.getDimension();
        if (dimension != null)
        {
          normalWidth = dimension.getWidth();
          normalHeight = dimension.getHeight();
          displayWidth = normalWidth;
          displayHeight = normalHeight;
         
          float xalignFactor = getXAlignFactor(printImage);
          float yalignFactor = getYAlignFactor(printImage);

          switch (printImage.getScaleImageValue())
          {
            case CLIP:
            {
              xoffset = (int) (xalignFactor * (availableImageWidth - normalWidth));
              yoffset = (int) (yalignFactor * (availableImageHeight - normalHeight));
              clip =
                new Rectangle2D.Double(
                  - xoffset,
                  - yoffset,
                  availableImageWidth,
                  availableImageHeight
                  );
              break;
            }
            case FILL_FRAME:
            {
              ratioX = availableImageWidth / normalWidth;
              ratioY = availableImageHeight / normalHeight;
              normalWidth *= ratioX;
              normalHeight *= ratioY;
              xoffset = 0;
              yoffset = 0;
              break;
            }
            case RETAIN_SHAPE:
            default:
            {
              ratioX = availableImageWidth / normalWidth;
              ratioY = availableImageHeight / normalHeight;
              ratioX = ratioX < ratioY ? ratioX : ratioY;
              ratioY = ratioX;
              normalWidth *= ratioX;
              normalHeight *= ratioY;
              xoffset = (int) (xalignFactor * (availableImageWidth - normalWidth));
              yoffset = (int) (yalignFactor * (availableImageHeight - normalHeight));
              break;
            }
          }
        }

        PdfTemplate template = pdfContentByte.createTemplate((float)displayWidth, (float)displayHeight);

        Graphics2D g = forceSvgShapes
          ? template.createGraphicsShapes((float)displayWidth, (float)displayHeight)
          : template.createGraphics(availableImageWidth, availableImageHeight, new LocalFontMapper());

        if (clip != null)
        {
          g.setClip(clip);
        }
       
        if (printImage.getModeValue() == ModeEnum.OPAQUE)
        {
          g.setColor(printImage.getBackcolor());
          g.fillRect(0, 0, (int)displayWidth, (int)displayHeight);
        }

        Rectangle2D rectangle = new Rectangle2D.Double(0, 0, displayWidth, displayHeight);

        renderer.render(g, rectangle);
        g.dispose();

        pdfContentByte.saveState();
        pdfContentByte.addTemplate(
          template,
          (float)ratioX, 0f, 0f, (float)ratioY,
          printImage.getX() + getOffsetX() + xoffset,
          jasperPrint.getPageHeight()
            - printImage.getY() - getOffsetY()
            - (int)normalHeight
            - yoffset
          );
        pdfContentByte.restoreState();

        Image image = getPxImage();
        image.scaleAbsolute(availableImageWidth, availableImageHeight);
        chunk = new Chunk(image, 0, 0);
      }

      /*
      image.setAbsolutePosition(
        printImage.getX() + offsetX + borderOffset,
View Full Code Here

Examples of com.lowagie.text.Chunk

    
    boolean firstChunk = true;
    while(runLimit < text.length() && (runLimit = iterator.getRunLimit()) <= text.length())
    {
      Map attributes = iterator.getAttributes();
      Chunk chunk = getChunk(attributes, text.substring(iterator.getIndex(), runLimit), locale);
     
      if (firstChunk)
      {
        // only set anchor + bookmark for the first chunk in the text
        setAnchor(chunk, textElement, textElement);
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.