当前位置: 首页 > news >正文

湖南工商网址seo sem 做网站

湖南工商网址,seo sem 做网站,受欢迎的商城网站建设,做漫画视频在线观看网站六个月前在这个YHEpubDemo阅读器的基础上做了一些优化#xff0c;这里做一下记录。 1.首行缩进修复 由于分页的存在#xff0c;新的一页的首行可能是新的一行#xff0c;则应该缩进#xff1b;也可能是前面一页段落的延续#xff0c;这时候不应该缩进。YHEpubDemo基于XDS…六个月前在这个YHEpubDemo阅读器的基础上做了一些优化这里做一下记录。 1.首行缩进修复 由于分页的存在新的一页的首行可能是新的一行则应该缩进也可能是前面一页段落的延续这时候不应该缩进。YHEpubDemo基于XDSReaderXDSReader目前存在新页首行没有缩进的问题。 修复方案如下 原来预排版分页后将每一页的富文本设置给XDSReadView这样就失去了排版的连续性。现在改为将整个章节的富文本设置给XDSReadView并且对该页需要显示的文本范围进行布局。 在XDSReadView.m的reloadView底部加上以下代码 CGRect rect UIEdgeInsetsInsetRect(self.readTextView.bounds, self.readTextView.edgeInsets);DTCoreTextLayoutFrame *layoutFrame [self.readTextView.layouter layoutFrameWithRect:rect range:_pageRange];self.readTextView.layoutFrame layoutFrame; 因为前面我们已经给readTextView设置了整个章节的富文本 self.readTextView.attributedString self.readAttributedContent; 因此我们这里要根据布局区域的大小和布局文本的范围使用layouter来产生一个layout frame。这样产生的布局是具有连续性的。如果仍然使用原来分页的方式的话需要判断当前页第一行开始处是否位于上一页的段落中。如果不在其中而是新的段落就要获取上一页段落的样式中的headIndent将其设置给当前页第一行样式中的firstLineHeadIndent。 2.CSS rem修复 XDSReader基于DTCoreTextDTCoreText有自己的css和HTML解析器但是不支持css的rem特性这样会导致字体大小有问题。由于DTCoreText没有提供root element上下文目前暂时将rem当em处理虽然会有一些误差但不至于字体大小变1pt。 3.树形目录 根据epub规范我们是可以解析获得任意多级的目录的。考虑到目录可以折叠展开当我们获得了树形数据结构后我们可以使用BFS宽度优先遍历来实现目录的打平 - (void)reloadData {self.catalogs [NSMutableArray arrayWithArray:CURRENT_BOOK_MODEL.catalog.children];NSMutableArray *q [NSMutableArray arrayWithArray:CURRENT_BOOK_MODEL.catalog.children];while (q.count 0) {XDSCatalogueModel *top q[0];[q removeObjectAtIndex:0];if(top.isExpand){[q addObjectsFromArray:top.children];NSInteger idx [self.catalogs indexOfObject:top];if(idx NSNotFound){idx -1;}[self.catalogs insertObjects:top.children atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(idx1, top.children.count)]];}}[self.tableView reloadData]; } 首先我们将一级目录节点加入临时数组和结果数组如果当前临时数组数组不为空则取出第一个并且从临时数组中移除。如果这个节点是展开的就把这个节点的子节点加入临时数组。现在我们从结果数组中找到这个节点的位置将它的子节点按顺序插入后面。像这样往复前面的操作直到临时数组为空为止。最终我们得到了一个平坦的列表。 4.增加页码 增加页码就是在预排版和分页时需要记录每一个章节的页码范围每一页的文字范围等然后据此计算页面所在的页码以及页码所在的文字范围等。 5.textblock背景色修复 源码中会给textblock设置一个难看的深蓝色的背景色在我们的修复中会首先尝试获取textblock的背景色没有的话才设置为白色 CGColorRef color [textBlock.backgroundColor CGColor];if(!color){color [[UIColor whiteColor] CGColor];} 6.其他 另外对阅读进度记录添加note也做了一些修复。增加了水平滚动翻页类型。 最终的效果 源码GitHub - Mamong/YHEpubDemo: Epub 阅读器 后续考虑使用Swift重写并将epub解析部分抽取出来。
http://www.dnsts.com.cn/news/11823.html

相关文章:

  • 旅行社网站方案东莞常平隐贤山庄门票多少
  • 易支付做网站接口怎么赚钱小程序制作流程视频
  • 苏州网站建设哪家公司好建设工程敎育网网站
  • 通辽网站设计网站架构设计师工作内容
  • 外国网站 游戏设定图资海网站建设
  • 烟台品牌网站建设企业所得税优惠政策最新2023规定
  • 网站整站优化推广方案wordpress 伪静态 主题失效
  • 台州做网站seo高端培训
  • 公司做网站需要注意些什么问题怎么做招投标网站
  • 网站点击率代码怎么做好网站开发_设计
  • 筹划建设智慧海洋门户网站seo入门黑帽培训教程
  • 网站建设中404什么意思安卓上搭建wordpress
  • asp装修公司网站建服装类网站需要考虑的因素
  • 百度站长电脑版网站多久
  • phpnow 搭建网站广州建网站模板
  • 良精企业网站系统怎么建设
  • 爱链接网如何使用广州网站排名优化费用
  • 福田网站设计wordpress增加下载文件
  • 成都集团网站设计推荐门户网站规划方案
  • 重庆博达建设集团股份有限公司网站如何确定一个网站的关键词
  • 提高网站权重工具网站做水印有没有影响
  • 国内免费产品发布网站青岛企业展厅设计公司
  • 合肥官方网站优化费用html5单页面网站建设
  • 建设网站都需要下载那些软件邦策网站建设
  • 个性个人网站模板吉林长春建设工程信息网站
  • 提供哈尔滨网站建设服务三门峡设计公司官网
  • 小说网站开发 小说网站源码做网站需要的法律知识
  • 静态网站怎么容易做百度app小程序
  • 昆明seocn整站优化手机网址全部出来
  • 校园网站建设方案模板下载WordPress 微信登录 免费