电子书签标记方法和装置.pdf

上传人:111****11 文档编号:996563 上传时间:2018-03-24 格式:PDF 页数:11 大小:687.44KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010105047.6

申请日:

2010.02.02

公开号:

CN101751476A

公开日:

2010.06.23

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20100202|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

汉王科技股份有限公司

发明人:

胡竹芬; 兰宦泽

地址:

100193 北京市海淀区东北旺西路8号5号楼三层

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明提供了一种电子书签标记方法和装置,属于信息显示领域。所述方法包括:步骤1:建立书签模板;步骤2:根据书签模板建立书签库;步骤3:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。采用了统一的书签管理机制,把所有的书签归类到同一个集合中,使用户在看到书签的时候就能看到读物的信息,并通过书签直接跳转到标记读物的当前阅读位置,达到了快速到达的功能,比现有的书签具有方便快捷优势,比传统的书签更便于管理。同时还可以在形式上,实现个性化。本发明将索引对应的书名和页码在阅读前显示,通过调用索引选择对应书签,直接到达指定书目指定页面,一次完成两项准确查找,在快捷性方面大大提高。

权利要求书

1.  一种电子书签标记方法,其特征在于,包括如下步骤:
步骤1:建立书签模板;
步骤2:根据书签模板建立书签库;
步骤3:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。

2.
  根据权利要求1所述的方法,其特征在于:所述步骤1中建立书签模板时,书签模板的属性中包括图片、书籍标识、页码、隐藏位和索引。

3.
  根据权利要求2所述的方法,其特征在于:所述书签模板中的图片由图片类型的文件和/或手写轨迹形成。

4.
  根据权利要求2所述的方法,其特征在于:所述书签模板中的隐藏位表示书签在页面上的显示状态,隐藏位有效时,书签在页面上最小化显示,反之书签全部显示在页面上。

5.
  根据权利要求2所述的方法,其特征在于:所述书签模板中的索引在阅读前显示,通过调用索引选择对应书签,并读取该书签对应的页码和书籍标识,按照页码和书籍标识对应的书名对页面进行显示。

6.
  根据权利要求1所述的方法,其特征在于:所述步骤2中,选择书签对文档中的页面进行标记时,如果该文档已标记过书签,且用户未从书签库中选择书签对该页面进行标记,则从该文档中已标记过的书签中调用一个,并修改该书签的页码的值为当前显示页面的页码;否则从书签库中选择书签对文档中的页面进行标记。

7.
  根据权利要求1所述的方法,其特征在于:所述从书签库中选择书签对文档中的页面进行标记时,页码的值为当前显示页面的页码,书籍标识的值为当前阅读文档的书名所对应的书籍标识。

8.
  一种电子书签标记装置,其特征在于,包括如下模块:
书签模块,建立书签模板;
建库模块,根据书签模板建立书签库;
标记模块,打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。

说明书

电子书签标记方法和装置
技术领域
本发明属于信息显示领域,涉及一种电子书签标记方法和装置。
背景技术
电子阅读器是最近兴起的一种手持电子设备,主要功能是用于阅读各种电子读物。以其环保、低耗、电子读物存量大、重量固定等优势正以很快的速度取代传统的纸张阅读。然而面对动辄上G比特的电子读物,用户就像面对一座图书馆,可能会同时阅读几本书,而且不会一次读完,还可能会标记几本资料,在需要的时候直接找到。这就需要一种快捷方式,方便用户快速查找。
现在,大部分电子阅读器都设置有“电子书签”功能,部分实现了查找功能。但是,目前的“电子书签”的使用必须以“找到这本书”为前提,如果用户无法找到相应的电子读物,就无法找到本读物的阅读进度。虽然现在的电子阅览器也提供一种“最近阅读”记录功能,但这种“记录”只是记录了用户最近翻阅过的书目,无法区分哪些是简单翻阅,哪些是有书签标记的,而且翻阅多了,就会把先前的一些重要书目覆盖掉。所以给阅读带来很大的不便。
在现实生活中,书签能体现读书人的品位和志趣,展示读书人的个性,而目前的“电子书签”缺乏交互性,个性特征,不够亲和,而改进的书签也提供了有效的解决方法。
发明内容
本发明所要解决的问题是提供了一种电子书签标记方法和装置,采用了统一的书签管理机制,通过把所有的书签归类到同一个集合中,使用户在看到书签的时候就能看到读物的信息,并通过书签直接跳转到标记读物的当前阅读位置,实现了快速到达的功能,而不用先找到相应的读物再跳转到当前的阅读进度,相比现有的书签具有方便快捷优势,比传统的书签更便于管理,同时还可以在形式上,实现个性化。
本发明提供了一种电子书签标记方法,包括以下步骤:
步骤1:建立书签模板;
步骤2:根据书签模板建立书签库;
步骤3:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。
所述步骤1中建立书签模板时,书签模板的属性中包括图片、书籍标识、页码、隐藏位、索引。
所述书签模板中的图片由图片类型的文件和/或手写轨迹形成。
所述书签模板中的隐藏位表示书签在页面上的显示状态,隐藏位有效时,书签在页面上最小化显示,反之书签全部显示在页面上。
所述书签模板中的索引在阅读前显示,通过调用索引选择对应书签,并读取该书签对应的页码和书籍标识,按照页码和书籍标识对应的书名对页面进行显示。
所述步骤2中,选择书签对文档中的页面进行标记时,如果该文档已标记过书签,且用户未从书签库中选择书签对该页面进行标记,则从该文档中已标记过的书签中调用一个,并修改该书签的页码的值为当前显示页面的页码;否则从书签库中选择书签对文档中的页面进行标记。
所述从书签库中选择书签对文档中的页面进行标记时,页码的值为当前显示页面的页码,书籍标识的值为当前阅读文档的书名所对应的书籍标识。
本发明还提供了一种电子书签标记装置,包括如下模块:
书签模块,建立书签模板;
建库模块,根据书签模板建立书签库;
标记模块,打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。
本发明电子书签标记方法和装置,优点在于:
1、本发明将索引对应的书名和页码在阅读前显示,通过调用索引选择对应书签,直接到达指定书目指定页面,一次完成两项准确查找,在快捷性方面大大提高。
2、本发明选择书签对文档中的页面进行标记,结合了手写技术,方便了用户的使用,而且可以根据用户的个性化进行设定,具有很好的交互性和亲和力。
附图说明
图1为本发明电子书签标记方法的流程图;
图2为本发明电子书签标记方法的索引对应的书名和页码显示界面;
图3为本发明电子书签标记方法的书签显示界面;
图4为本发明电子书签标记方法的书签上进行轨迹输入后的显示界面。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例用来解释本发明,并不用于限定本发明。
电子书签标记方法,包括以下步骤:
步骤1:建立书签模板;
建立书签模板,书签模板中包括图片、书籍标识、页码、隐藏位,索引。
本实施例中,书签表的字段如下:
ID:本条记录的编号(整数型),同时作为书签表的索引;
BOOK:指向书籍表信息表的外键,作为书籍标识,能调用书籍表,从而获得书籍的相关信息(整数型);
IMAGE:指向个性书签图片的路径,能从这个路径直接打开图片(字符型);
X:图片显示的左上角X坐标(浮点型);
Y:图片显示的左上角Y坐标(浮点型);
PAGE:本书签在读物中的页数(整数型);
TIME:添加或是最后一次修改书签的时间(时间型);
USER:这个书签属于哪个用户,一个读物可以由多个人标记多个书签(字符型);
EXTRA:备注信息(字符型);
HIDED:是否在页面上显示,表示隐藏位(布尔型)。
步骤2:根据书签模板建立书签库;
建立书签库时,本实施例中,采用Windows CE EDB数据库对书签和书籍进行存储,数据库中包括书签表和书籍表。
书籍表的主要字段:
ID:本条记录的编号;(整数型)
PATH:书籍存放的路径;(字符型)
NAME:书名;(字符型)
TIME:书籍上次访问时间。(时间型)
书签表(BookMarkTable)

  ID  BOOK  IMAGE  X  Y  PAGE  TIME  USER  EXTRA  HIDED  1  1  \lan_bm\1_1_223.bmp  10  10  223  121986542  lan  1  2  2  \lan_bm\2_2_15.bmp  10  10  15  121986953  lan  1  3  3  \li_bm\3_3_109.bmp  5  8  109  121983256  li  Hello  1  4  4  \lan_bm\4_4_28.bmp  10  20  28  121974563  lan  Hi  1  5  4  \li_bm\5_4_171.bmp  20  25  171  121987110  li  1  6  5  \lan_bm\6_5_9.bmp  18  6  9  121970265  lan  Good  1

书籍表(BookTable):
  ID  PATH  NAME  TIME  1  \book\hongloumeng.doc  红楼梦  121856421  2  \book\tangshi.pdf  唐诗三百首  121856536  3  \book\goodwomen.txt  乱世佳人  121895322  4  \book\economy.txt  西方经济学  121856423  5  \book\manager.html  品牌管理学  121856232

图片由图片类型的文件和/或手写轨迹形成,图片可以为阅读器中存储的bmp格式的图片,也可以是使用者通过摄像头拍摄的头像。
本实施例中,把bmp的图像从数据库的书签表的IMAGE字段的路径读出来,然后再通过LoadBitmap函数把BMP图片数据装载到HBITMAP句柄里,然后通过BitBlt函数把图片拷贝到用户区的HDC里,然后显示在窗口上。LoadBitmap为Winuser.h的函数,功能是把BMP图片加载到Windows GDI资源里,图片资源是通过HBITMAP句柄来表示;BitBlt函数为Windows.h里的函数,功能是把一个HDC里的一部分区域拷贝到另一个HDC里;HDC表示一个设备上下文句柄。
当使用者在显示屏上通过电磁笔进行手写,并通过手写的方式对图片进行编辑时,轨迹就在用户区的HDC里用MoveToEx和LineTo函数添加笔迹,如果是添加文字就在HDC上用DrawText函数把文字画上去,实现图片的编辑。MoveToEx和LineTo函数都是Windows.h里的函数,MoveTeEx是确定画线的起始坐标,LineTo是从之前设置的起始坐标画一条直线到当前坐标。
隐藏位HIDED表示书签在页面上的显示状态,隐藏位有效时,书签在页面上最小化显示,不影响用户的正常阅读;隐藏位无效时,书签全部显示在页面上。当使用者根据书签找到了上次阅读到的页面时,书签显示在页面上,表示使用者在上次阅读时添加了该书签。使用者阅读时,可以隐藏该书签,并在阅读结束时将原本隐藏的书签显示出来,进行重新标记。
本实施例中,代码在窗口响应WM_PAINT消息的时候,通过设置一个标识,如BOOL bShowBookMark来控制绘制书签的代码是否执行。如果其值为TRUE,则通过执行StretchBlt函数把书签个性图片通过在StretchBlt最后那个参数使用SRCINVERT来实现将书签图片贴到用户区的HDC里,实现显示在读物文字上面的效果;如果其值为FALSE则执行用这个函数并刷新界面,就没有把书签图片绘制到用户区的HDC里,改变隐藏位HIDED的值,实现书签隐藏。其中,WM_PAINT消息为Win32编程中系统要绘制当前窗口时给当前窗口发的消息。
StretchBlt函数参数HDC1,x1,y1,w1,h1分别表示要拷贝的目标设备上下文的句柄和起始坐标以及要拷贝的宽和高,HDC2,x2,y2,w2,h2表示书签图片所在的设备上下文的句柄和起始坐标以及要拷贝的宽和高。
书签为显示,bShowBookMark为TRUE,x1=5,y1=8,w1=42,h1=125,x1=0,y2=0,w1=42,h1=125,HDC1为窗口的HDC,HDC2为含有从BookMarkTable里读出的\li_bm\3_3_109.bmp图片的HDC,使书签进行显示。
bShowBookMark表示是否显示书签。在case WM_LBUTTONDOWN表示收到点击屏幕的消息,如果点击的点在书签上的隐藏按钮上,就把bShowBookMark的值取反,然后再重绘客户区。
如图2所示,索引对应的书名和页码在阅读前显示,通过调用索引选择对应书签,并读取该书签对应的书名和页码,按照书名和页码对页面进行显示。使用者可以通过特定的书签页将阅读器中的全部书签显示,这些书签记录着使用者阅读过的位置,并通过这些书签可以查找阅读过的对应书籍的特定页面,如图3所示。本实施例中,通过Windows CE中的EDB函数CeReadRecordPropsEx从数据库中读出书签信息,再通过在书签列表窗口响应WM_PAINT消息,调用DrawText函数和StretchBlt把书签信息中的文字和图片显示在窗口相应的置位上,其中StretchBlt作用是把书签图片缩小放画在窗口上。CeReadRecordPropsEx函数为Windbase.h里申明的函数,功能是从一个数据库表里取出一条记录;DrawText函数为Windows.h里申明的函数,功能是把一段文字按照事先设置好格式画在用户区的HDC里。
先调用CeReadRecordPropsEx从书签表(BookMarkTable)和书籍表(BookTable)中读出书签和书籍的信息分别存放在bookMark和book中,然后再用LoadBitmap函数把书签所指向的位置的图片加载到内存里用HBITMAP作为引用句柄,然后通过SelectObject函数把加载的HBITMAP选入HDC里作好数据准备。LoadBitmap函数为Winuser.h中的方法,将BMP图片加载到内存中;SelectObject函数为Windows.h中的方法,将HBITMAP句柄选到HDC里。
在用户窗口响应WM_PAINT消息时,如果当前的书签是目标书签,则在书签周围用Rectangle函数画一个黑色的边框,表示当前书签是焦点书签,如果这时收到用户按下OK键的消息,就打开相应的书签所指向的书籍并翻到书签存储的页数。然后再调用StretchBlt把书签的图片缩小拷贝到用户的HDC里,其中HDC表示用户区的HDC,MEMDC表示含有书签图片的HDC,x3,y3,w1,h1和x4,y4,w2,h2分别表示HDC和MEMDC要操作的矩形大小。然后再通过DrawText函数把书的信息和书签里的页数信息画到用户HDC上,其中HDC,表示用户区的HDC,-1表示把整个字符都画上去,str表示要画的字符串指针,pRect表示要在哪个矩形区里画这个字符,最后使用参数DT_CENTER|DT_VCENTER表示水平垂直剧中画字符串。其中,Rectangle函数为在Windows.h定义,功能是在指定的x1,y1,x2,y2的矩形为边,在指定的HDC上画一个框。
以图2中的乱世佳人的书签条目为例,则是从BookMarkTable中读出第三条数据,所以bookMark的值为:
{33\li_bm\3_3_109.bmp 5 8 109 121983256 liHello},
再通过书签里的BOOK为3,从BookTable中读出乱世佳人这本书的book:
{3\book\goodwomen.txt乱世佳人121895322},
然后把\li_bm\3_3_109.bmp图片加载到内存缩小通过StretchBlt函数画在书签缩略图的位置,这里其参数值为x1=20,y1=4,w1=18,h1=36,x1=0,y2=0,w1=42,h1=125,HDC为窗口的HDC,MEMDC为含有从BookMarkTable里读出的\li_bm\3_3_109.bmp图片的HDC。因为这条为焦点项,所以画了黑框。然后根据书名和所读的页数生成“《乱世佳人》第109页”的字符串,通过DrawText函数画在书签文字的位置。
步骤2:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。
使用者选中要阅读的文档进行阅读,在阅读过程中,如果想在某页面中插入书签,该文档也已标记过书签,使用者有两种标记的方法,一是从书签库中选择一书签进行标记,这样文档中该页面之前书签不会改变;二是如果使用者未从书签库中选择书签对该页面进行标记,则通过弹出的快捷菜单中遍历文档中该页面之前的已标记过的书签,从中调用一个,修改该书签的页码值为当前的页面的页码,这样该书签所对应的原页面则没有了书签,且该书签除了页面属性发生改变之外,图片等属性均不会变化。如果使用者所阅读的文档没有被标记过书签,则从书签库中选择一书签进行标记。
从书签库中选择一书签进行标记时,用户可以通过电磁笔添加轨迹信息,从而编辑书签模板对应的图片,编辑之后对应的图片信息将保存在数据库中。
本实施例中,通过Windows CE GDI函数MoveToEx和LineTo来实现在书签图片所处的HDC里画线,通过DrawText函数实现在书签图片HDC里画文字,然后通过CreateDIBSection函数把HDC的图片信息提取后再写到图片文件中保存起来,实现书签的编辑功能。CreateDIBSection函数为在Windows.h里申明的函数,功能是从HDC获得BMP图像的图像数据。
当系统发来WM_LBOTTUNDOWN消息时,调用MoveToEx函数把画线的开始点定到点x1,y1;当系统发来WM_MOUSEMOVE消息时,调用LineTo函数画线到该点用x1,y1,并把下一次画线的起始点设到x1,y1。WM_MOUSEMOVE消息是Windows系统消息,表示鼠标左键按下或是触屏按下并移动时的消息。
当系统发来WM_CLOSE消息时,通过CreateDIBSection函数从当前的HDC里,按phmi头指定的BMP图片格式获取BMP图片数据,并存放在ppvBits里,最后两个参数MSDN里规定忽略。其中,WM_CLOSE消息为Windows的系统消息,表示当前窗口即将被关闭。
获得BMP图片的数据后,通过WriteFile把数据写到文件,这个文件即为书签的图片,参数HANDLE表示要写入的文件的句柄,LPCVOID表示BMP数据,DWORD表示要写入的字节数,LPWORD表示函数返回来的实际写入数,最后一个参数忽略。
如果图4中的例子,当我们在上面手写一个“兰”字,就是通过MoveToEx和LineTo来实现的,然后在翻书或是退出阅读时把新的图片数据写到\li_bm\3_3_109.bmp这个文件里。
书签库中的书签模板中,书名和页码值均为空。从书签库中选择一书签进行标记时,提取当前显示页面的页码,并作为书签模板中页码的值,提取当前阅读的文档的名称作为书签模板中书名的值,之后进行保存在数据库中。
本实施例中,通过获得当前书的信息和页数信息,组装成一条书签数据库信息并调用Windows CE的EDB接口函数CeWriteRecordProps这个函数把书签信息保存到数据库里,完成对更新信息的保存。CeWriteRecordProps函数为Windbase.h里申明的函数,功能是把一记录数据写到一个数据库表里。
如果书签被改动或是新的书签被创建了,就要把书签写到书签数据库里,调用CeWriteRecordProps函数实现,其参数如下BookMarkTable表示书签数据表,roid表示要写入的ID,如果是书签改变了,就是改变之前的书签ID,写入后覆盖原记录;如果是新建的书签,则为-1表示新写入一条书签记录,Count表示这个书签记录的属性数,在本例中为BookMarkTable的字段数,pPropVal指向书签记录的数据。
如果图4中的修改要被保存,则并更新BookMarkTable的第三条记录值pPropVal为:
{33\li_bm\3_3_109.bmp 5 8 109 121983256 liHello},对应的roid为3,Count为8;
同时更新BookTable的第三条记录值pPropVal为:
{3\book\goodwomen.txt乱世佳人121895322},对应的roid为3,Count为4。
使用者将书签添加完毕后即可继续阅读,直至阅读结束。所添加书签将显示在单独的书签列表中,这些书签记录着使用者阅读过的位置,并通过这些书签可以查找阅读过的对应书籍的特定页面。
本发明还公开了一种电子书签标记装置,包括如下模块:
书签模块:根据既定的书签模板建立书签库,得到书签;
标记模块:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。
本发明采用了统一的书签管理机制,通过把所有的书签归类到同一个集合中,使用户在看到书签的时候就能看到读物的信息,并通过书签直接跳转到标记读物的当前阅读位置,实现了快速到达的功能,而不用先找到相应的读物再跳转到当前的阅读进度,相比起现有的书签具有方便快捷优势,比传统的书签更便于管理。同时还可以在形式上,实现个性化。

电子书签标记方法和装置.pdf_第1页
第1页 / 共11页
电子书签标记方法和装置.pdf_第2页
第2页 / 共11页
电子书签标记方法和装置.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《电子书签标记方法和装置.pdf》由会员分享,可在线阅读,更多相关《电子书签标记方法和装置.pdf(11页珍藏版)》请在专利查询网上搜索。

本发明提供了一种电子书签标记方法和装置,属于信息显示领域。所述方法包括:步骤1:建立书签模板;步骤2:根据书签模板建立书签库;步骤3:打开文档进行阅读,选择书签对文档中的页面进行标记,直至阅读结束。采用了统一的书签管理机制,把所有的书签归类到同一个集合中,使用户在看到书签的时候就能看到读物的信息,并通过书签直接跳转到标记读物的当前阅读位置,达到了快速到达的功能,比现有的书签具有方便快捷优势,比传统。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1