目录

一、有声小说书屋软件功能

1、界面介绍

2、听书功能

1)点击上册工具栏的  喇叭,可实现听书功能,

2)生成网页,借助 edge浏览器的听书功能

3、 扩展书屋

二、所用技术介绍

1、导入小说,自动分章节功能

2、显示技术

3、XML存储技术

4、本地网站技术


这是我历经十来年,一直坚持开发的一个软件,可以把网络上的公版TXT小说,直接转换为本地藏书,并提供多种阅读、听书方式,目前已经比较完善了。

一、有声小说书屋软件功能

1、界面介绍

左侧是树形列表, 代表着书籍、章节

右侧是显示, 显示章节内容

2、听书功能

1)点击上册工具栏的  喇叭,可实现听书功能,

使用的是微软的TTS技术,不过目前的TTS 还是很机械声,听书效果一般

2)生成网页,借助 edge浏览器的听书功能

左侧,树形列表中,选中某本书,然后右键点击 出现菜单

选择生成本地网站

这样就生成 本地网页版


默认edge浏览器打开,

右键 选择 大声朗读功能,  即可用比较好的自然语音 阅读

3、 扩展书屋

首先,在竖形列表中,选中一个目录,比如四大名著,然后将TXT格式小说或epub格式小说,拖入到左侧竖形列表中,就可以自动往书屋中,添加新书了。

二、所用技术介绍

总体框架使用的VC的 SDI 单文档程序 框架

1、导入小说,自动分章节功能

这里使用线程才实现导入分章节模块

//导入小说线程
UINT ImportXiaoshuoThread(LPVOID parm)
{CMainFrame *pMainFrm=m_XiaoshuoParam.pFram;CImportTreeView *pView=m_XiaoshuoParam.pView;CTreeCtrl &nTreeCtrl=*m_XiaoshuoParam.pTreeCtrl;pMainFrm->beginImport(m_XiaoshuoParam.pFram,m_XiaoshuoParam.hDrop,m_XiaoshuoParam.pView,m_XiaoshuoParam.pImportView,nTreeCtrl,m_XiaoshuoParam.hItem);return 1;
}
     AfxBeginThread(ImportXiaoshuoThread,NULL);

1)、epub格式小说

对于epub格式,有专门的处理方式,网上有个好像是华为的epub格式库,借鉴它的方法进行解析的

2)、txt格式小说

这是使用最广的格式了,

解析的策略是,读取小说,然后按照 关键字进行章节的划分,如:章、回、节、卷等,实在没有找到关键字的,则按字数划分

2、显示技术

派生 CScrollView 类,实现自己的显示视图界面。

按照BODY、 段落 、行、字,进行数据结构设计, 然后进行显示算法设计等

3、XML存储技术

导入后的小说章节,采用XML格式进行存储。

网上有开源的XML读写类,可以使用

4、本地网站技术

先使用VUE,打造本地网站

客户端生成网站,实际上就是写文件

void CMyView::ToGenMyHtml()
{CString htmlStr;htmlStr=L"<html  lang=\"zh-cn\">\n\<head>\n\<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\">\n\<title>古典小说-听小说</title>\n\<link rel=\"stylesheet\" href=\"HTML/js/element_lib/theme-chalk/index.css\">\n\<link rel='stylesheet' href='http://gudianxiaoshuo.com/js/myCss/gudianxiaoshuo.css'>\n\<script src=\"HTML/js/vue.js\"  type=\"text/javascript\"  charset=\"utf-8\"></script>\n\";CString jsFile;if (pMain->BExistFile(L"gudian.txt")){jsFile = L"<script type=\"text/javascript\" src=\"http://gudianxiaoshuo.com/js/myHeader_gudian.js\"  charset=\"utf-8\"></script>\n";}else if (pMain->BExistFile(L"web.txt")){jsFile = L"<script type=\"text/javascript\" src=\"http://gudianxiaoshuo.com/js/myHeader.js\"  charset=\"utf-8\"></script>\n";}else{jsFile = L"<script type=\"text/javascript\" src=\"http://gudianxiaoshuo.com/js/myHeader_yousheng.js\"  charset=\"utf-8\"></script>\n";}jsFile += L"<script type=\"text/javascript\" src=\"http://gudianxiaoshuo.com/js/comp/comp_headBtns.js\"  charset=\"utf-8\"></script>\n";htmlStr += jsFile;htmlStr += L"</head>\n";CFile nFile_Save;CString strFile=g_strPath+_T("听小说.html");nFile_Save.Open(strFile,CFile::modeCreate|CFile::modeWrite);WORD sign=0xfeff;  //保存为UNICODE格式  否则的话 中文可能出现乱码nFile_Save.Write(&sign,2);nFile_Save.Write(htmlStr,htmlStr.GetLength()*2);    // 直接将数据保存到文档中, ASCII 方式存储, 其中 ASC为0的 不显示  效果与空格相同,但ASC吗不同  空格为0x20  nFile_Save.Close();g_curWebTitle = L"古典小说-听小说";//ShellExecute(NULL,NULL,strFile,NULL,NULL,SW_NORMAL);OpenUrlWithEdge(strFile.GetBuffer());strFile.ReleaseBuffer();}

有声小说书屋阅读软件 功能及技术分析相关推荐

  1. EPUB阅读软件功能评析

    EPUB阅读软件功能评析 电子信息化的迅猛发展催生了了很多新兴事物,这其中就有我们现在常见的电子书,电子书籍使设计对象从静态的印刷品转变为动态.互动的多元化媒介,完美的解决了书籍携带困难,显示效果差的 ...

  2. YOLOV4各个创新功能模块技术分析(三)

    YOLOV4各个创新功能模块技术分析(三) 八.数据增强相关-Stylized-ImageNet 论文名称:ImageNet-trained cnns are biased towards textu ...

  3. YOLOV4各个创新功能模块技术分析(二)

    YOLOV4各个创新功能模块技术分析(二) 四.数据增强相关-GridMask Data Augmentation 论文名称:GridMask Data Augmentation 论文地址:https ...

  4. YOLOV4各个创新功能模块技术分析(一)

    YOLOV4各个创新功能模块技术分析(一) 简 介 yolov4论文:YOLOv4: Optimal Speed and Accuracy of Object Detection arxiv:http ...

  5. 基于墨刀的软件界面原型设计——小说搜索阅读软件

    1. 现实需求 在当下,小说越来越受到各个年龄段的人们喜欢,人们也希望有一个方便的软件来搜索和阅读小说.因此便有了该app,它的操作简洁,界面美观,为用户提供了良好的易用性. 2. 设计思路 一个小说 ...

  6. 阅读软件怎么添加书源_书迷小说|手机阅读软件 千个书源 搜索换源

    点击上方"黑科技专家",设为星标 黑科技软件,第一时间送达 由于公众号改版,现在的公众号消息已经不再按照时间顺序排送了.因此小伙伴们就很容易错过精彩内容.喜欢黑科技的小伙伴,可以将 ...

  7. 一年代码功能点的创新性怎么写_软件功能点技术与应用创新.ppt

    * * 基于功能点的经验公式 8 项目平均人员规模 功能点/150 2014.02 * 基于功能点的经验公式 9 软件维护人员数目 功能点数/750 2014.02 * 基于功能点的经验公式 10 软 ...

  8. 手机小说语音阅读软件,算省省眼睛把

    偶然在手机上翻到一个能把文本读出来的东西,看小说学英语啥的还挺有用的,   叫语音阅读器百度就能搜到, 算了,发一下,  链接:https://pan.baidu.com/s/1Y1r1e9RiRCZ ...

  9. 好用的CAD看图软件功能详解分析

    CAD制图工作中,我们都知道需要查看编辑等很多操作,这里有CAD看图软件,好用的CAD功能详解分享,提供6种基本看图模式,3种三维看图方法,6种CAD图纸编辑功能,加上3种CAD转换功能,且完全免费. ...

最新文章

  1. Python函数中的参数(一)
  2. sublime tex创建可服用的片段
  3. 互联网送给我们的---“平等互助”
  4. vue打包后图片路径错误
  5. django模板系统(下)
  6. id 重启event_windows 2003 R2 系统自动重启了. event ID 6008
  7. 零基础掌握区块链关键概念
  8. go结构体初始化_go语言基础之结构体普通变量初始化
  9. eclipse -xmx -xms_JVM 调优之 Eclipse 启动调优实战
  10. catalina配置参数
  11. 用vue写一个仿简书的轮播图
  12. 使用MS Project创建项目计划
  13. python练手经典100例项目-Python 的练手项目有哪些值得推荐?
  14. Speedoffice(excel)如何自动换行
  15. OpenGL-绘制旋转立方体
  16. 单页面应用(SPA)前端路由hash 模式 VS history 模式
  17. sourcetree的使用方法
  18. python自学-class20-爬取东方财富网股票数据(爬虫)
  19. Simulink根据魔术公式建立轮胎模型
  20. 记录一下需要优化的东西

热门文章

  1. [SARscape] ALOS World 3D 30m DEM 下载
  2. Redis的安装注意事项
  3. PyCharm软件破解使用方法
  4. 【机器人学导论】 第三章.驱动器
  5. Asymptote 学习记录(4) 利用旋转和平移变换画赵爽弦图
  6. 云南计算机一级c类基础知识,计算机一级c类是什么
  7. [转载]田雪松硬笔楷书《千字文》_拔剑-浆糊的传说_新浪博客
  8. 函数:lambda表达式+习题复习
  9. python爬虫+mongodb+matlab彩票抓取
  10. 他们的心声,让无数人温暖一生