`
vtrtbb
  • 浏览: 365902 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 阅读器分页读取字数

    博客分类:
  • java
 
阅读更多

// 本方法 分行又分页
public static ArrayList<ArrayList<String>> getPageContentStringInfo(
    Paint m_paint, String content, int pageLines, float pageWidth) {

   char ch;
   int w = 0;
   int istart = 0;
   int lineNum = 0;
   ArrayList<ArrayList<String>> contentList = new ArrayList<ArrayList<String>>();
   ArrayList<String> cl = null;
   // 内容长度
   for (int i = 0; i < content.length(); i++) {
    if (cl == null)
     cl = new ArrayList<String>();
    ch = content.charAt(i);
    float[] widths = new float[1];
    String srt = String.valueOf(ch);
    m_paint.getTextWidths(srt, widths);
    if (ch == '\n') {
     // 如果遇到断行符
     lineNum++;
     cl.add(content.substring(istart, i));
     istart = i + 1;
     w = 0;
    } else {
     // 遇到字符
     w += (int) (Math.ceil(widths[0]));
     // 当长度小于宽度时
     if (w > pageWidth) {
      lineNum++;
      cl.add(content.substring(istart, i));
      istart = i;
      i--;
      w = 0;
     } else {
      if (i == (content.length() - 1)) {
       lineNum++;
       cl.add(content.substring(istart, content.length()));
      }
     }
    }
    if (lineNum == pageLines || i == (content.length() - 1)) {
     contentList.add(cl);
     System.out.println(cl.toString());
     cl = null;
     // 当最后一个字符时的行数
     lines = lineNum;
     lineNum = 0;
    }
   }
   return contentList;
 }
 
分享到:
评论

相关推荐

    电子书TXT分页

    "电子书TXT分页"是指将TXT文件中的文本内容按照一定的规则进行分割,以便于在电子阅读器或者手机、平板等设备上进行分页阅读。这种分页处理对于提高阅读体验和方便用户浏览长篇内容至关重要。 分页通常有以下几种...

    android翻页效果

    本项目标题“android翻页效果”暗示了我们将在Android应用中创建一个能够翻页显示本地TXT文件的阅读器。下面将详细阐述实现这个功能所需的关键知识点。 1. **文本文件读取**: - Android提供了`java.io`和`java....

    cmd-bat-批处理-脚本-rimraf.zip

    cmd-bat-批处理-脚本-rimraf.zip

    ADS官网的混频器仿真教程

    该资源文件详细介绍了如何在ADS软件中进行混频器仿真,内容涵盖了仿真设置、参数调整、结果分析等多个方面。

    cmd-bat-批处理-脚本-Messagebox_Cancel_TryAgain_Continue.zip

    cmd-bat-批处理-脚本-Messagebox_Cancel_TryAgain_Continue.zip

    基于C#的OpcUa通讯实现:KEPserverEX服务器远程连接与测试工具UaExpert的应用 OpcUa

    内容概要:本文详细介绍了如何使用C#客户端实现OpcUa通讯,具体包括远程连接KEPserverEX服务器的方法及其应用。文中不仅提供了详细的环境准备工作指导,还给出了具体的代码示例用于创建会话和连接服务器,最后通过UaExpert测试工具验证了整个流程的有效性。这是一套亲测稳定高效的解决方案,适用于工业自动化领域的数据传输和控制。 适合人群:从事工业自动化领域的研发人员和技术爱好者,尤其是那些有C#编程经验并对OpcUa通讯感兴趣的开发者。 使用场景及目标:①帮助开发者掌握C#客户端连接KEPserverEX服务器的具体方法;②提供实用的代码示例和测试工具使用指南,便于快速上手;③确保数据传输的安全性和稳定性,提高工作效率。 其他说明:文章强调了环境准备的重要性,包括安装必要的开发工具和库,同时也指出了可能遇到的问题及解决办法。此外,还提到了UaExpert作为一款优秀的测试工具,在验证连接和数据交互方面的优势。

    人工智能中的自动逻辑推理.zip

    人工智能中的自动逻辑推理.zip

    cmd-bat-批处理-脚本-os2_cid_install.zip

    cmd-bat-批处理-脚本-os2_cid_install.zip

    C++实现贝塞尔法大地主题正算与反算

    在武汉大学大地测量学基础的编程作业中,我已完成相关任务。通过使用教材中的算例进行验证,程序运行结果的误差极小,这充分证明了程序的准确性和可靠性。在公式推导过程中,我严格遵循步骤,确保每一步都清晰严谨,从而保证了最终结果的高精度。作业中还提供了灵活的选择,用户可以根据自己的需求选择正算或反算操作,并且可以手动输入任意坐标,方便进行多样化的计算和验证。

    警 院指挥教学数字训练系统设计-公 安院校电子沙盘教学系统设计.zip

    警 院指挥教学数字训练系统设计——公 安院校电子沙盘教学系统设计.zip

    cmd-bat-批处理-脚本-un-java.zip

    cmd-bat-批处理-脚本-un-java.zip

    cmd-bat-批处理-脚本-SetForegroundWindow.zip

    cmd-bat-批处理-脚本-SetForegroundWindow.zip

    GSP软件在航空发动机及燃气轮机模型设计中的应用:稳态与瞬态性能仿真 瞬态性能

    内容概要:本文详细介绍了GSP软件在航空发动机和燃气轮机模型设计中的应用。首先,讨论了如何利用GSP软件构建不同类型的航空发动机(如涡扇、涡喷、涡轴)和燃气轮机模型,涵盖了从进气道到涡轮各组成部分的建模。接着,阐述了稳态特性的循环计算方法,包括空气、燃油、燃气等组分的变换及其能量转换和物质交换的计算。最后,探讨了瞬态性能计算和部件性能衰退降级仿真,通过时间序列分析和动态仿真模块,模拟发动机在不同工况下的瞬态响应和故障数据,从而全面评估发动机的性能。 适合人群:从事航空发动机和燃气轮机研究的设计工程师、研究人员和技术专家。 使用场景及目标:适用于需要深入了解航空发动机和燃气轮机构造、稳态和瞬态性能的研究和开发项目。目标是提高对发动机工作原理的理解,优化设计流程,提升性能预测精度。 其他说明:文中提到的技术手段不仅限于理论分析,还包括实际操作层面的代码实现,帮助读者掌握具体的建模和仿真技巧。

    cmd-bat-批处理-脚本-installtrusted.zip

    cmd-bat-批处理-脚本-installtrusted.zip

    用MATLAB编写的二维动态破裂建模的BIEM代码,.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    威布尔杂波下扩展目标检测.zip

    威布尔杂波下扩展目标检测.zip

    remotesensing-13-04370-v2.pdf

    remotesensing-13-04370-v2.pdf

    二十四节气之霜降介绍.pptx

    二十四节气之霜降介绍.pptx

    2025年网络安全技术漏洞扫描.docx

    2025年网络安全技术漏洞扫描.docx

    cmd-bat-批处理-脚本-virtualcam-uninstall.zip

    cmd-bat-批处理-脚本-virtualcam-uninstall.zip

Global site tag (gtag.js) - Google Analytics