java bidi_Java Bidi類代碼示例
本文整理匯總了Java中java.text.Bidi類的典型用法代碼示例。如果您正苦於以下問題:Java Bidi類的具體用法?Java Bidi怎麽用?Java Bidi使用的例子?那麽恭喜您, 這裏精選的類代碼示例或許可以為您提供幫助。
Bidi類屬於java.text包,在下文中一共展示了Bidi類的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於我們的係統推薦出更棒的Java代碼示例。
示例1: makeTextLineOnRange
點讚 3
import java.text.Bidi; //導入依賴的package包/類
private TextLine makeTextLineOnRange(int startPos, int limitPos) {
int[] charsLtoV = null;
byte[] charLevels = null;
if (fBidi != null) {
Bidi lineBidi = fBidi.createLineBidi(startPos, limitPos);
charLevels = BidiUtils.getLevels(lineBidi);
int[] charsVtoL = BidiUtils.createVisualToLogicalMap(charLevels);
charsLtoV = BidiUtils.createInverseMap(charsVtoL);
}
TextLineComponent[] components = makeComponentsOnRange(startPos, limitPos);
return new TextLine(fFrc,
components,
fBaselineOffsets,
fChars,
startPos,
limitPos,
charsLtoV,
charLevels,
fIsDirectionLTR);
}
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:26,
示例2: createLineFromText
點讚 3
import java.text.Bidi; //導入依賴的package包/類
/**
* Create a TextLine from the Font and character data over the
* range. The range is relative to both the StyledParagraph and the
* character array.
*/
public static TextLine createLineFromText(char[] chars,
StyledParagraph styledParagraph,
TextLabelFactory factory,
boolean isDirectionLTR,
float[] baselineOffsets) {
factory.setLineContext(0, chars.length);
Bidi lineBidi = factory.getLineBidi();
int[] charsLtoV = null;
byte[] levels = null;
if (lineBidi != null) {
levels = BidiUtils.getLevels(lineBidi);
int[] charsVtoL = BidiUtils.createVisualToLogicalMap(levels);
charsLtoV = BidiUtils.createInverseMap(charsVtoL);
}
TextLineComponent[] components =
getComponents(styledParagraph, chars, 0, chars.length, charsLtoV, levels, factory);
return new TextLine(factory.getFontRenderContext(), components, baselineOffsets,
chars, 0, chars.length, charsLtoV, levels, isDirectionLTR);
}
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:30,
示例3: standardCreateTextLine
點讚 3
import java.text.Bidi; //導入依賴的package包/類
/**
* Create a TextLine from the text. chars is just the text in the iterator.
*/
public static TextLine standardCreateTextLine(FontRenderContext frc,
AttributedCharacterIterator text,
char[] chars,
float[] baselineOffsets) {
StyledParagraph styledParagraph = new StyledParagraph(text, chars);
Bidi bidi = new Bidi(text);
if (bidi.isLeftToRight()) {
bidi = null;
}
int layoutFlags = 0; // no extra info yet, bidi determines run and line direction
TextLabelFactory factory = new TextLabelFactory(frc, chars, bidi, layoutFlags);
boolean isDirectionLTR = true;
if (bidi != null) {
isDirectionLTR = bidi.baseIsLeftToRight();
}
return createLineFromText(chars, styledParagraph, factory, isDirectionLTR, baselineOffsets);
}
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:23,
示例4: getLevels
點讚 3
import java.text.Bidi; //導入依賴的package包/類
/**
* Return the level of each character into the levels array starting at start.
* This is a convenience method for clients who prefer to use an explicit levels
* array instead of iterating over the runs.
*
* @param levels the array to receive the character levels
* @param start the starting offset into the the array
* @throws IndexOutOfBoundsException if start
is less than 0 or
* start + getLength()
is greater than levels.length
.
*/
public static void getLevels(Bidi bidi, byte[] levels, int start) {
int limit = start + bidi.getLength();
if (start < 0 || limit > levels.length) {
throw new IndexOutOfBoundsException("levels.length = " + levels.length +
" start: " + start + " limit: " + limit);
}
int runCount = bidi.getRunCount();
int p = start;
for (int i = 0; i < runCount; ++i) {
int rlimit = start + bidi.getRunLimit(i);
byte rlevel = (byte)bidi.getRunLevel(i);
while (p < rlimit) {
levels[p++] = rlevel;
}
}
}
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:30,
示例5: getLevels
點讚 3
import java.text.Bidi; //導入依賴的package包/類
/**
* Return the level of each character into the levels array starting at start.
* This is a convenience method for clients who prefer to use an explicit levels
* array instead of iterating over the runs.
*
* @param levels the array to receive the character levels
* @param start the starting offset into the array
* @throws IndexOutOfBoundsException if {@code start} is less than 0 or
* {@code start + getLength()} is greater than {@code levels.length}.
*/
public static void getLevels(Bidi bidi, byte[] levels, int start) {
int limit = start + bidi.getLength();
if (start < 0 || limit > levels.length) {
throw new IndexOutOfBoundsException("levels.length = " + levels.length +
" start: " + start + " limit: " + limit);
}
int runCount = bidi.getRunCount();
int p = start;
for (int i = 0; i < runCount; ++i) {
int rlimit = start + bidi.getRunLimit(i);
byte rlevel = (byte)bidi.getRunLevel(i);
while (p < rlimit) {
levels[p++] = rlevel;
}
}
}
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:30,
示例6: isRTL
點讚 3
import java.text.Bidi; //導入依賴的package包/類
/**
* This method determines if the direction of a substring is right-to-left.
* If the string is empty that determination is based on the default system language
* Locale.getDefault().
* The method can handle invalid substring definitions (start > end etc.), in which case the
* method returns False.
*
* @return True if the text direction is right-to-left, false otherwise.
*/
public static boolean isRTL(CharSequence s, int start, int end) {
if (s == null || s.length() == 0) {
// empty string --> determine the direction from the default language
return isRTL(Locale.getDefault());
}
if (start == end) {
// if no character is selected we need to expand the selection
start = Math.max(0, --start);
if (start == end) {
end = Math.min(s.length(), ++end);
}
}
try {
Bidi bidi = new Bidi(s.subSequence(start, end).toString(), Bidi.DIRECTION_DEFAULT_LEFT_TO_RIGHT);
return ! bidi.baseIsLeftToRight();
}
catch (IndexOutOfBoundsException e) {
return false;
}
}
開發者ID:Ronak-LM,項目名稱:memoir,代碼行數:32,
示例7: makeTextLineOnRange
點讚 3
import java.text.Bidi; //導入依賴的package包/類
private TextLine makeTextLineOnRange(int startPos, int limitPos) {
int[] charsLtoV = null;
byte[] charLevels = null;
if (fBidi != null) {
Bidi lineBidi = fBidi.createLineBidi(startPos, limitPos);
charLevels = BidiUtils.getLevels(lineBidi);
int[] charsVtoL = BidiUtils.createVisualToLogicalMap(charLevels);
charsLtoV = BidiUtils.createInverseMap(charsVtoL);
}
TextLineComponent[] components = makeComponentsOnRange(startPos, limitPos);
return new TextLine(fFrc,
components,
fBaselineOffsets,
fChars,
startPos,
limitPos,
charsLtoV,
charLevels,
fIsDirectionLTR);
}
開發者ID:jgaltidor,項目名稱:VarJ,代碼行數:26,
注:本文中的java.text.Bidi類示例整理自Github/MSDocs等源碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。
java bidi_Java Bidi類代碼示例相关推荐
- java uiautomation_Java UiAutomation類代碼示例
本文整理匯總了Java中android.app.UiAutomation類的典型用法代碼示例.如果您正苦於以下問題:Java UiAutomation類的具體用法?Java UiAutomation怎 ...
- java nifty_Java NiftyDialogBuilder類代碼示例
本文整理匯總了Java中com.gitonway.lee.niftymodaldialogeffects.NiftyDialogBuilder類的典型用法代碼示例.如果您正苦於以下問題:Java Ni ...
- java intfunction_Java IntFunction類代碼示例
本文整理匯總了Java中java.util.function.IntFunction類的典型用法代碼示例.如果您正苦於以下問題:Java IntFunction類的具體用法?Java IntFunct ...
- java sentence_Java Sentence類代碼示例
本文整理匯總了Java中aima.core.logic.propositional.parsing.ast.Sentence類的典型用法代碼示例.如果您正苦於以下問題:Java Sentence類的具 ...
- java scene_Java Scene類代碼示例
本文整理匯總了Java中com.sun.j3d.loaders.Scene類的典型用法代碼示例.如果您正苦於以下問題:Java Scene類的具體用法?Java Scene怎麽用?Java Scene ...
- java notifier_Java Notifier類代碼示例
本文整理匯總了Java中org.apache.maven.model.Notifier類的典型用法代碼示例.如果您正苦於以下問題:Java Notifier類的具體用法?Java Notifier怎麽 ...
- java linest_Java STLineSpacingRule類代碼示例
本文整理匯總了Java中org.docx4j.wml.STLineSpacingRule類的典型用法代碼示例.如果您正苦於以下問題:Java STLineSpacingRule類的具體用法?Java ...
- java datarow_Java DataRow類代碼示例
本文整理匯總了Java中org.apache.cayenne.DataRow類的典型用法代碼示例.如果您正苦於以下問題:Java DataRow類的具體用法?Java DataRow怎麽用?Java ...
- java hessian2_Java Hessian2Output類代碼示例
本文整理匯總了Java中com.caucho.hessian.io.Hessian2Output類的典型用法代碼示例.如果您正苦於以下問題:Java Hessian2Output類的具體用法?Java ...
最新文章
- qq满屏飞吻代码_教你用微信隐藏代码表白!各种微信技巧
- Windows phone 8 学习笔记(5) 图块与通知
- BC#29A:GTY's math problem(math) B:GTY's birthday gift(矩阵快速幂)
- 人工智能必看的 45 篇论文(附下载地址)
- c语言中函数调用的原理
- springboot整合mybatisplus中@Mapper与@MapperScan的使用
- Vue 项目部署出现css样式失效的解决方案
- linux-redis
- ruby nokogiri 数据抓取
- C#:String.Format数字格式化输出 {0:N2} {0:D2} {0:C2}...
- PLSQL使用常用技巧
- lcms质谱仪_常用质谱的优缺点_液质联用(LCMS)仪器社区_仪器信息网论坛
- win7计算机里不显示摄像头,win7系统不显示摄像头的解决方法
- 铁路基因的传承与创新
- tophat以及cufflinks的使用
- 完整正则表达式语法列表
- 关于地下管线探测技术发展的思考
- 论文 | 导航 | 2022年亚利桑那州立大学硕士论文《图神经网络与优势Actor-Critic强化学习算法用于多智能体导航》
- html网页加减乘除代码,html+js实现简单的计算器代码(加减乘除)
- 淘宝API应用调用官方买家信息数据