之前寫小說類相關的應用,需要電子書閱讀器,在網上找了很久,覺得還是https://github.com/GGGHub/Reader 同學的最好用,所以就拿這個用了。
不過后來發現里面的書簽,筆記的定位功能,以及字體變化等功能有點問題,造成閱讀者的不愉快,所以特意Fork了一個版本做了相應的修改,大家如果有類似的問題,可以試試我修改后的版本,在這里
https://github.com/Inspirelife96/Reader
如果大家有更好的閱讀器,請推薦給我,萬份感謝:)
Reader
基于Core Text
實現的iOS客戶端的電子書閱讀器
。</br>
支持ePub與text格式
2016.10.02 更新 (我做的修改)
針對text小說的bug fix。
- 當字體變化時,小說有時候不會自動調整界面。
- 當字體變化時,還有小說的書簽,筆記定位不準確,甚至程序崩潰。3.
大概思路:
- 當字體變化時,所有小說的章節都會基于新的字體重新調整,分頁等。
- 記錄筆記/書簽文字開始位置的在整個章節中的下標位置,筆記/書簽定位時,基于當前的字體分頁,看當前的下標位置是否坐落在哪一頁中,然后跳轉到那一頁。
2016.06.16 更新 (以下都是LiSiYuan寫的,非常好的庫,我自認為沒有他的水平,大家可以好好學習)
添加對ePub格式的支持
部分功能實現效果
Paste_Image.png
Paste_Image.png
關于Reader</br>
- 可以自動提取章節并生成目錄
- 選取一段文字可進行復制,做筆記等功能
- 保存閱讀進度,即使退出應用也可以繼續之前的閱讀
- 更改字體大小,進度跳轉,主題更換等功能
- 支持
txt
與ePub
格式的電子書文件
安裝與使用
安裝
- 將
Reader
目錄下的所有文件都添加到工程中</br> - 由于解壓
ePub
文件,需要用到開源的.c文件
用于解壓縮。所以使用時如果項目中有.pch文件
參考本項目中.pch
文件寫法</br>
#ifdef __OBJC__
//在.pch中這里寫引用的.h文件與宏
#endif
3.需要導入libz.tbd
庫
使用
text文件</br>
LSYReadPageViewController *pageView = [[LSYReadPageViewController alloc] init];
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"mdjyml"withExtension:@"txt"];
pageView.resourceURL = fileURL; //文件位置
pageView.model = [LSYReadModel getLocalModelWithURL:fileURL]; //閱讀模型
[self presentViewController:pageView animated:YES completion:nil];
ePub文件</br>
LSYReadPageViewController *pageView = [[LSYReadPageViewController alloc] init];
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"細說明朝"withExtension:@"epub"];
pageView.resourceURL = fileURL; //文件位置
pageView.model = [LSYReadModel getLocalModelWithURL:fileURL]; //閱讀模型
[self presentViewController:pageView animated:YES completion:nil];
提示
之前安裝過的下載最新版,應把之前安裝的卸載后再安裝
說明
對于有圖片和定制樣式的epub文件只顯示純文本信息,因為對epub每個章節的html文件直接轉成字符串來處理,css樣式與epub自帶的本地圖片沒有做處理。