本文整理匯總了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類代碼示例相关推荐

  1. java uiautomation_Java UiAutomation類代碼示例

    本文整理匯總了Java中android.app.UiAutomation類的典型用法代碼示例.如果您正苦於以下問題:Java UiAutomation類的具體用法?Java UiAutomation怎 ...

  2. java nifty_Java NiftyDialogBuilder類代碼示例

    本文整理匯總了Java中com.gitonway.lee.niftymodaldialogeffects.NiftyDialogBuilder類的典型用法代碼示例.如果您正苦於以下問題:Java Ni ...

  3. java intfunction_Java IntFunction類代碼示例

    本文整理匯總了Java中java.util.function.IntFunction類的典型用法代碼示例.如果您正苦於以下問題:Java IntFunction類的具體用法?Java IntFunct ...

  4. java sentence_Java Sentence類代碼示例

    本文整理匯總了Java中aima.core.logic.propositional.parsing.ast.Sentence類的典型用法代碼示例.如果您正苦於以下問題:Java Sentence類的具 ...

  5. java scene_Java Scene類代碼示例

    本文整理匯總了Java中com.sun.j3d.loaders.Scene類的典型用法代碼示例.如果您正苦於以下問題:Java Scene類的具體用法?Java Scene怎麽用?Java Scene ...

  6. java notifier_Java Notifier類代碼示例

    本文整理匯總了Java中org.apache.maven.model.Notifier類的典型用法代碼示例.如果您正苦於以下問題:Java Notifier類的具體用法?Java Notifier怎麽 ...

  7. java linest_Java STLineSpacingRule類代碼示例

    本文整理匯總了Java中org.docx4j.wml.STLineSpacingRule類的典型用法代碼示例.如果您正苦於以下問題:Java STLineSpacingRule類的具體用法?Java ...

  8. java datarow_Java DataRow類代碼示例

    本文整理匯總了Java中org.apache.cayenne.DataRow類的典型用法代碼示例.如果您正苦於以下問題:Java DataRow類的具體用法?Java DataRow怎麽用?Java ...

  9. java hessian2_Java Hessian2Output類代碼示例

    本文整理匯總了Java中com.caucho.hessian.io.Hessian2Output類的典型用法代碼示例.如果您正苦於以下問題:Java Hessian2Output類的具體用法?Java ...

最新文章

  1. qq满屏飞吻代码_教你用微信隐藏代码表白!各种微信技巧
  2. Windows phone 8 学习笔记(5) 图块与通知
  3. BC#29A:GTY's math problem(math) B:GTY's birthday gift(矩阵快速幂)
  4. 人工智能必看的 45 篇论文(附下载地址)
  5. c语言中函数调用的原理
  6. springboot整合mybatisplus中@Mapper与@MapperScan的使用
  7. Vue 项目部署出现css样式失效的解决方案
  8. linux-redis
  9. ruby nokogiri 数据抓取
  10. C#:String.Format数字格式化输出 {0:N2} {0:D2} {0:C2}...
  11. PLSQL使用常用技巧
  12. lcms质谱仪_常用质谱的优缺点_液质联用(LCMS)仪器社区_仪器信息网论坛
  13. win7计算机里不显示摄像头,win7系统不显示摄像头的解决方法
  14. 铁路基因的传承与创新
  15. tophat以及cufflinks的使用
  16. 完整正则表达式语法列表
  17. 关于地下管线探测技术发展的思考
  18. 论文 | 导航 | 2022年亚利桑那州立大学硕士论文《图神经网络与优势Actor-Critic强化学习算法用于多智能体导航》
  19. html网页加减乘除代码,html+js实现简单的计算器代码(加减乘除)
  20. 淘宝API应用调用官方买家信息数据

热门文章

  1. 计算机ip地址在哪找,如何查ip地址,电脑ip地址在哪看
  2. Flask懒加载时 moles.py 无法运行
  3. 零散专题32 生成PDF
  4. 设计师常用的10种平面设计风格,你知道几个?
  5. 开机hidl报错修改
  6. win10搭FTP与单片机通信:配置+编程实现的完整流程
  7. Zalando在疫情中成为赢家,甚至超越了亚马逊
  8. sapmto生产模式配置及操作详解_SAP生产模式和计划策略
  9. 游戏3D美术设计就业前景如何?现在饱和了吗
  10. 做自己想做的工作,你也可以