Example #1
0
  public static void parseStyledTextParagraphSettings(
      char key, String value, StyledTextParagraph para) {
    if (value.length() > 0) {

      switch (key) {
        case 'A':
          para.setValign(Integer.parseInt(value));

          break;

        case 'H':
          if (value.endsWith("x")) {
            para.setFontHeight(
                para.getFontHeight() * Double.parseDouble(value.substring(0, value.length() - 1)));
          } else {
            para.setFontHeight(Double.parseDouble(value));
          }

          break;

        case 'Q':
          para.setObliquiAngle(Double.parseDouble(value));

          break;

        case 'W':
          if (value.endsWith("x")) {
            double widthFactor = Double.parseDouble(value.substring(0, value.length() - 1));
            para.setWidth(para.getWidth() * widthFactor);
          } else {
            para.setWidth(Double.parseDouble(value));
          }

          break;

        case 'T':
          para.setCharacterspace(Double.parseDouble(value));

          break;

        case 'f':
          parseFontSettings(value.trim(), para);

          break;

        case 'F':
          para.setFontFile(value.trim());

          break;

        case 'S':

          // TODO handle
          break;

        case 'C':
          Integer colorCode = Integer.valueOf(value);
          String rgbString = Color.getRGBString(colorCode);
          para.setColor(rgbString);

          break;
      }
    }
  }