Class SWFFont4Description.FTESubsetCompletionIterator

  • All Implemented Interfaces:
    Iterator<Integer>
    Enclosing class:
    SWFFont4Description

    public static final class SWFFont4Description.FTESubsetCompletionIterator
    extends Object
    implements Iterator<Integer>
    Expands the characters in an iteration set to include those that are needed by TLE/CTS. The expansion includes mirroring (for LTR scripts), character substitutions used by TLE/CTS, and Unicode character composition. It does not handle any casing of any kind. If various cases need to be in the resultant subset then the codepoints for those cases must be included in the original iterator supplied to this class during construction.
    • Constructor Detail

      • FTESubsetCompletionIterator

        public FTESubsetCompletionIterator​(Iterator<Integer> cpIter)
        Construct an iterator for subset completion.
        Parameters:
        cpIter - An iterator returning Integers that are the Unicode codepoints to be embedded in the font.
    • Method Detail

      • hasNext

        public boolean hasNext()
        Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)
        Specified by:
        hasNext in interface Iterator<Integer>
        Returns:
        true if the iterator has more elements.
      • next

        public Integer next()
        Returns the next element in the iteration. Calling this method repeatedly until the hasNext() method returns false will return each element in the underlying collection exactly once.
        Specified by:
        next in interface Iterator<Integer>
        Returns:
        the next element in the iteration.
        Throws:
        NoSuchElementException - iteration has no more elements.
      • remove

        public void remove()
        Removes from the underlying collection the last element returned by the iterator (optional operation). This method can be called only once per call to next. The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method.
        Specified by:
        remove in interface Iterator<Integer>
        Throws:
        IllegalStateException - if the next method has not yet been called, or the remove method has already been called after the last call to the next method.