net.sourceforge.jeuclid.elements.support.text
Class StringUtil

java.lang.Object
  extended by net.sourceforge.jeuclid.elements.support.text.StringUtil

public final class StringUtil
extends Object

Utilities for String handling.

Version:
$Revision: 74b8e95997bf $

Nested Class Summary
static class StringUtil.TextLayoutInfo
          Contains layout information retrieved from a TextLayout.
 
Field Summary
static boolean OSX
          Set to true if we're running under Mac OS X.
 
Method Summary
static AttributedString convertStringtoAttributedString(String inputString, MathVariant baseVariant, float fontSize, LayoutContext context)
          Converts a given String to an attributed string with the proper variants set.
static int countDisplayableCharacters(String s)
          Counts the displayable characters only.
static TextLayout createTextLayoutFromAttributedString(Graphics2D g, AttributedString aString, LayoutContext context)
          Safely creates a Text Layout from an attributed string.
static StringUtil.TextLayoutInfo getTextLayoutInfo(TextLayout textLayout, boolean trim)
          Retrieve the actual layout information from a textLayout.
static float getWidthForTextLayout(TextLayout layout)
          Retrieves the real width from a given text layout.
static AttributedCharacterIterator textContentAsAttributedCharacterIterator(LayoutContext contextNow, JEuclidElement contextElement, Node node, float corrector)
          Provide the text content of the current element as AttributedCharacterIterator.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OSX

public static final boolean OSX
Set to true if we're running under Mac OS X.

Method Detail

convertStringtoAttributedString

public static AttributedString convertStringtoAttributedString(String inputString,
                                                               MathVariant baseVariant,
                                                               float fontSize,
                                                               LayoutContext context)
Converts a given String to an attributed string with the proper variants set.

Parameters:
inputString - the string to convert.
baseVariant - variant to base on for regular characters
fontSize - size of Font to use.
context - Layout Context to use.
Returns:
an attributed string that has Textattribute.FONT set for all characters.

textContentAsAttributedCharacterIterator

public static AttributedCharacterIterator textContentAsAttributedCharacterIterator(LayoutContext contextNow,
                                                                                   JEuclidElement contextElement,
                                                                                   Node node,
                                                                                   float corrector)
Provide the text content of the current element as AttributedCharacterIterator.

Parameters:
contextNow - LayoutContext of the parent element.
contextElement - Parent Element.
node - Current node.
corrector - Font-size corrector.
Returns:
An AttributedCharacterIterator over the text contents.

createTextLayoutFromAttributedString

public static TextLayout createTextLayoutFromAttributedString(Graphics2D g,
                                                              AttributedString aString,
                                                              LayoutContext context)
Safely creates a Text Layout from an attributed string. Unlike the TextLayout constructor, the String here may actually be empty.

Parameters:
g - Graphics context.
aString - an Attributed String
context - Layout Context to use.
Returns:
a TextLayout

getWidthForTextLayout

public static float getWidthForTextLayout(TextLayout layout)
Retrieves the real width from a given text layout.

Parameters:
layout - the textlayout
Returns:
width

getTextLayoutInfo

public static StringUtil.TextLayoutInfo getTextLayoutInfo(TextLayout textLayout,
                                                          boolean trim)
Retrieve the actual layout information from a textLayout. This is different than the values given when calling the functions directly.

Parameters:
textLayout - TextLayout to look at.
trim - Trim to actual content
Returns:
a TextLayoutInfo.

countDisplayableCharacters

public static int countDisplayableCharacters(@Nullable
                                             String s)
Counts the displayable characters only. Counts high-surrogates as one character. Also, ignores combining mark characters.

Parameters:
s - string to count length of.
Returns:
display length of the string.


Copyright © 2002-2010 The JEuclid project. All Rights Reserved.