I thought my earlier commit preserved font size info for TMW->ACIP/Wylie
conversions. It was only at a very coarse level. The feature is now truly here.
This commit is contained in:
parent
8ccf57dccb
commit
14fb449f95
6 changed files with 383 additions and 142 deletions
61
source/org/thdl/tib/text/TranslitTuple.java
Normal file
61
source/org/thdl/tib/text/TranslitTuple.java
Normal file
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
The contents of this file are subject to the THDL Open Community License
|
||||
Version 1.0 (the "License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License on the THDL web site
|
||||
(http://www.thdl.org/).
|
||||
|
||||
Software distributed under the License is distributed on an "AS IS" basis,
|
||||
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
|
||||
License for the specific terms governing rights and limitations under the
|
||||
License.
|
||||
|
||||
The Initial Developer of this software is the Tibetan and Himalayan Digital
|
||||
Library (THDL). Portions created by the THDL are Copyright 2004 THDL.
|
||||
All Rights Reserved.
|
||||
|
||||
Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
package org.thdl.tib.text;
|
||||
|
||||
import java.util.Vector;
|
||||
|
||||
/**
|
||||
* A stretch of Roman transliteration all in a certain font size.
|
||||
*
|
||||
* @author David Chandler */
|
||||
class TranslitTuple {
|
||||
private final StringBuffer sb;
|
||||
private final int sz;
|
||||
|
||||
/** Creates a TranslitTuple representing the transliteration s,
|
||||
which has font size sz. */
|
||||
public TranslitTuple(String s, int sz) {
|
||||
this.sb = new StringBuffer(s);
|
||||
this.sz = sz;
|
||||
// FIXME: assert(s.length() > 0);
|
||||
}
|
||||
|
||||
/** Appends the transliteration s to this tuple and returns this
|
||||
tuple if sz, the font size for s, is the same as this tuple's
|
||||
font size. Returns a new tuple for s otherwise. */
|
||||
public TranslitTuple getPossiblyCombinedTranslitTuple(String s, int sz) {
|
||||
if (this.sz == sz) {
|
||||
sb.append(s);
|
||||
return this;
|
||||
} else {
|
||||
return new TranslitTuple(s, sz);
|
||||
}
|
||||
}
|
||||
|
||||
/** Returns the stretch of Roman transliteration. */
|
||||
public String getTranslit() { return sb.toString(); }
|
||||
|
||||
/** Returns the font size of the Roman transliteration. */
|
||||
public int getFontSize() { return sz; }
|
||||
|
||||
/** Do not call this -- it throws an error. */
|
||||
public String toString() {
|
||||
throw new Error("There was a bug where this was called, so don't call this.");
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue