KR20150055600A - 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체 - Google Patents

전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체 Download PDF

Info

Publication number
KR20150055600A
KR20150055600A KR1020147021518A KR20147021518A KR20150055600A KR 20150055600 A KR20150055600 A KR 20150055600A KR 1020147021518 A KR1020147021518 A KR 1020147021518A KR 20147021518 A KR20147021518 A KR 20147021518A KR 20150055600 A KR20150055600 A KR 20150055600A
Authority
KR
South Korea
Prior art keywords
segment
information
data
end point
layout
Prior art date
Application number
KR1020147021518A
Other languages
English (en)
Inventor
지아팡 장
레이 장
Original Assignee
시아오미 아이엔씨.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 시아오미 아이엔씨. filed Critical 시아오미 아이엔씨.
Publication of KR20150055600A publication Critical patent/KR20150055600A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/189Automatic justification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams

Abstract

본 발명의 실시예는 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체를 공개하였는 바, 상기 방법은 전자책 문서를 획득하는 단계, 미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하는 단계, 상기 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계, 상기 세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하는 단계, 상기 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 단계, 상기 레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계를 포함한다. 매번 전자책을 작동할 시, 단지 전자책 문서 중의 하나의 세그멘트만 분석되고, 매번 작동 과정에서 처리해야 할 데이터량은 단지 하나의 세그멘트의 데이터량이므로 데이터 처리효율이 제고되었고, 나아가 전자책을 판독하는 시간을 단축하였다. 또한, 이동 단말기가 전자책 문서의 하나의 세그멘트를 처리할 시, 분석 동작이든지, 후속되는 페이지 이미지 생성 동작이든지를 막론하고, 처리해야 할 데이터량이 모두 상대적으로 작기에, 전자책의 이동 단말기에 대한 메모리 점유가 감소하였다.

Description

전자책 문서 처리방법, 단말기 및 전자기기{METHOD, TERMINAL AND ELECTRONIC DEVICE FOR PROCESSING E-BOOK DOCUMENT}
본원 발명은 출원번호가 CN201310485775.8이고, 출원일자가 2013년 10월 16일인 중국 특허 출원에 기반하여 제출하였고, 상기 중국 특허 출원의 우선권을 주장하는 바, 상기 중국 특허 출원의 전부 내용은 참조로서 본원 발명에 원용된다.본 발명은 데이터 처리 분야에 관한 것으로, 구체적으로, 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체에 관한 것이다.
이동 단말기가 날따라 보급됨에 따라, 이동 단말기에서 전자책을 읽고 편집하는 것도 점점 보급되고 있다. 어떤 상황에서는, 일부 전자책이 이미 종이 도서를 대체하여 일상생활의 주요한 열독수단으로 되었다. 전자책을 열람하기 위한 이동 단말기는 아주 많은 바, 예를 들면 스마트 폰, 태블릿 PC 또는 전자책 리더기 등등이다.
현재, 전자책 문서는 주요하게 HTML(Hypertext Markup Language, 하이퍼텍스트 마크업 언어)를 사용하여 편집하는 바, HTML을 사용하여 편집한 전자책 문서를 HTML 문서라고 약칭할 수 있다. 사용자가 이동 단말기를 통하여 전자책을 펼친 후, 이동 단말기는 전자책의 HTML 문서를 판독하여 메모리에 저장하고, HTML 문서를 번역한 후 전자책을 사용자가 이동 단말기를 통하여 볼 수 있는 페이지 이미지로 전환시킨다. 상기 번역 과정은 주요하게 분석 단계, 풀 페이지네이션(full pagination) 단계, 페이지 객체 생성 단계, 페이지 이미지 생성 단계 등을 포함한다.
연구와 실천 과정에서, 발명자는 상기 전자책 처리 방식에 적어도 하기와 같은 문제가 존재한다는 것을 발견하였다.
통상적으로, 이동 단말기의 저장능력과 계산 능력은 모두 한정되어 있다. 만약, 전자책의 용량이 상대적으로 크면, 이동 단말기가 전자책을 판독할 때 처리되는 데이터가 상당히 많은 저장 자원을 점유하게 됨으로써 전자책 문서를 판독할 시, 분석과 풀 페이지네이션 단계의 운행효율이 하강되고, 이동 단말기가 전자책을 판독하는 시간을 연장시키게 된다. 또한, 전자책의 용량이 클수록, 분석 단계와 풀 페이지네이션 단계에서 너무 많은 메모리 자원을 소모하는 것을 초래할 가능성이 크기에, 이동 단말기의 운행효율이 하강하게 되고, 심각한 경우 이동 단말기가 렉(lag)이 걸리거나 다운되는 등 현상이 나타날 수 있다.
따라서, 판독 시간이 짧고, 메모리 점유가 낮은 전자책 고효율 처리 방법을 어떻게 제공하겠는가 하는 것이 현재 시급히 해결해야 할 문제이다.
기술적 과제
이를 감안하여, 본 발명의 목적은 이동 단말기가 전자책을 판독할 시, 판독 시간을 단축할 수 있고, 메모리 점유를 감소할 수 있는 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체를 제공하는데 있다.
과제 해결 수단
본 발명의 실시예의 제1측면에 따르면, 본 발명의 실시예는
전자책 문서를 획득하는 단계,
미리 설정된 분할방식에 따라 전자책 문서의 내용을 복수의 세그멘트로 분할하는단계,
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계,
세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하는 단계,
현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 단계,
레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계를 포함하는 전자책 문서 처리방법을 제공한다.
본 발명의 실시예에서, 전자책을 복수의 세그멘트로 나누고, 매번 전자책을 작동할 시, 단지 전자책 문서 중의 하나의 세그멘트만 분석하고, 상기 세그멘트가 생성한 레이아웃 데이터를 이용하여 페이지 이미지를 생성하기에, 매번 작동 과정에서 처리해야 할 데이터량은 단지 하나의 세그멘트의 데이터량이므로 이동 단말기가 전자책 문서를 판독할 시, 데이터 처리효율이 제고되었고, 나아가 전자책을 판독하는 시간을 단축하였다. 또한, 분할동작은 전자책 문서에 대하여 배치(batch)방식으로 처리하는 것을 실현하였고, 이동 단말기가 전자책 문서의 하나의 세그멘트를 처리할 시, 분석 동작이든지, 후속되는 페이지 이미지 생성 동작이든지를 막론하고, 처리해야 할 데이터량이 모두 상대적으로 작기에, 전자책이 이동 단말기에 대한 메모리 점유를 감소하였다.
일 실시예에서, 레이아웃 데이터를 생성하는 단계 이후에, 방법은
세그멘트 그룹에서의 현재 세그멘트의 위치 정보를 기록하는 단계,
레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하고, 만약 데이터량이 미리 설정된 값보다 작으면 위치 정보에 의하여 현재 세그멘트의 다음 세그멘트를 선택하고, 다음 세그멘트를 현재 세그멘트로서 사용하고, 현재 세그멘트 내의 내용을 분석하는 단계로 되돌아가는 단계를 더 포함한다.
본 해결수단은 레이아웃 데이터의 데이터량이 페이지 이미지를 충분히 생성하도록 확보하는 것을 실현하였다.
일 실시예에서, 미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하는 단계는
세그멘트 크기를 결정하는 단계,
전자책 문서의 내용을 세그멘트 크기와 동일한 크기의 복수의 세그멘트로 분할하는 단계를 포함한다.
본 해결수단은 구체적인 분할방식을 실현하였다.
일 실시예에서, 방법은
세그멘트의 시작점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 세그멘트의 시작점에서 이전 세그멘트로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 시작점과 이전 세그멘트의 끝점으로서 사용하는 단계를 더 포함한다.
본 해결수단은 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하고, 나아가 세그멘트의 시작점과 끝점을 정밀하게 구분하도록 한다.
일 실시예에서, 방법은
세그멘트의 시작점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 세그멘트의 시작점에서 세그멘트의 끝점쪽으로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 시작점과 이전 세그멘트의 끝점으로서 사용하는 단계를 더 포함한다.
본 해결수단은 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하고, 나아가 세그멘트의 시작점과 끝점을 정밀하게 구분하도록 한다.
일 실시예에서, 방법은
세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 세그멘트의 끝점에서 다음 세그멘트로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하는 단계를 더 포함한다.
본 해결수단은 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하고, 나아가 세그멘트의 시작점과 끝점을 정밀하게 구분하도록 한다.
일 실시예에서, 방법은
세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 세그멘트의 끝점에서 세그멘트의 시작점쪽으로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하는 단계를 더 포함한다.
본 해결수단은 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하고, 나아가 세그멘트의 시작점과 끝점을 정밀하게 구분하도록 한다.
일 실시예에서, 방법은
레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되는지를 판정하고, 만약 사용되지 않는다면, 레이아웃 원자 데이터를 삭제하는 단계를 더 포함한다.
본 해결수단은 이동 단말기의 메모리를 절약하는 것을 실현한다.
일 실시예에서, 방법은
레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 점유한 메모리가미리 설정된 값보다 큰지를 판정하고, 만약 상기 메모리가 미리 설정된 값보다 크면 레이아웃 원자 데이터를 삭제하는 단계를 더 포함한다.
본 해결수단은 이동 단말기의 메모리를 절약하는 것을 실현한다.
본 발명의 실시예의 제2측면에 따르면, 본 발명의 실시예는
전자책 문서를 획득하기 위한 획득 모듈,
미리 설정된 분할방식에 따라 전자책 문서의 내용을 복수의 세그멘트로 분할하기 위한 분할 모듈,
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈,
세그멘트 그룹중에서 하나의 세그멘트를 세그멘트를 현재 세그멘트로 선택하기 위한 선택 모듈,
현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈,
레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈을 포함하는 단말기를 제공한다.
일 실시예에서, 단말기는
세그멘트 그룹에서의 현재 세그멘트의 위치 정보를 기록하기 위한 기록 모듈,
레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하기 위한 제1 판정 모듈,
데이터량이 미리 설정된 값보다 작을 시, 위치 정보에 의하여 현재 세그멘트의 다음 세그멘트를 선택하고, 다음 세그멘트를 현재 세그멘트로서 사용하고,상기 분석 모듈을 실행하도록 되돌아가기 위한 제1 실행 모듈을 더 포함한다.
일 실시예에서, 분할 모듈은
세그멘트 크기를 결정하기 위한 세그멘트 크기 결정 유닛,
전자책 문서의 내용을 세그멘트 크기와 동일한 크기의 복수의 세그멘트로 분할하기 위한 분할 유닛을 포함한다.
일 실시예에서, 단말기는
세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제2 판정 모듈,
세그멘트의 시작점 부분의 정보가 완전하지 않을 시, 세그멘트의 시작점에서 앞으로 이동하여 레이블의 시작점을 결정하고, 레이블의 시작점을 세그멘트의 시작점으로서 사용하기 위한 제2 실행 모듈을 더 포함한다.
일 실시예에서, 단말기는
세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제3 판정 모듈,
세그멘트의 시작점 부분의 정보가 완전하지 않을 시, 세그멘트의 시작점에서 세그멘트의 끝점쪽으로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 시작점과 이전 세그멘트의 끝점으로서 사용하기 위한 제3 실행 모듈을 더 포함한다.
일 실시예에서, 단말기는
세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제4 판정 모듈,
세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 세그멘트의 끝점에서 다음 세그멘트로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하기 위한 제4 실행 모듈을 더 포함한다.
일 실시예에서, 단말기는
세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제5 판정 모듈,
세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 세그멘트의 끝점을 세그멘트의 시작점쪽으로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하기 위한 제5 실행 모듈을 더 포함한다.
일 실시예에서, 단말기는
레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되었는지를 판정하기 위한 제6 판정 모듈,
레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되지 않았을 시, 레이아웃 원자 데이터를 삭제하기 위한 제6 실행 모듈을 더 포함한다.
일 실시예에서, 단말기는
레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 점유한 메모리가 미리 설정된 값보다 큰지를 판정하기 위한 제7 판정 모듈,
레이아웃 원자 데이터가 점유한 메모리가 미리 설정된 값보다 클 시, 레이아웃 원자 데이터를 삭제하기 위한 제7 실행 모듈을 더 포함한다.
본 발명의 실시예의 제3측면에 따르면, 본 발명의 실시예는
메모리 및 메모리에 저장되어 하나 이상의 프로세서에 의해 실행되는 하나 이상의 프로그램을 포함하고, 하나 이상의 프로세서로 하나 이상의 프로그램을 수행하여,
전자책 문서를 획득하는 동작,
미리 설정된 분할방식에 따라 전자책 문서의 내용을 복수의 세그멘트로 분할하는 동작,
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 동작,
세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하는 동작,
현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 동작,
레이아웃 데이터에 의하여 페이지 이미지를 생성하는 것을 수행하는 명령어를 포함하도록 배치되는 전자기기를 더 제공한다.
본 발명의 실시예의 제4측면에 따르면, 본 발명의 실시예는
프로세서에 의해 실행되는 것을 통하여 상기 전자책 문서 처리방법을 실현하는 프로그램을 제공한다.
본 발명의 실시예의 제5측면에 따르면, 본 발명의 실시예는
상기 프로그램이 기록된 기록매체를 제공한다.
본 발명의 기타 특징과 장점은 후속되는 명세서에서 설명될 것이고, 또한 부분적으로 명세서에서 자명하게 개변되거나, 또는 본 발명을 실시하는 것을 통해 이해될 것이다. 본 발명의 목적과 기타 장점은 기재된 명세서, 특허청구범위, 및 첨부도면중에서 특별히 제기된 구조에 의해 실현 및 획득된다.
상기 일반적인 설명과 후술할 세부사항에 대한 설명은 단지 예시적인 것일 뿐 본 발명을 제한하는 것이 아님을 이해해야 할 것이다.
이하 첨부도면과 실시예를 통해 본 발명의 기술적 해결방법에 대해 추가로 상세하게 설명하기로 한다.
아래의 도면은 명세서의 일부분으로서 명세서 전체를 구성하며 본 발명에 맞는 실시예를 예시하여 본 발명의 원리를 분석하기 위한 것이다.
도1은 본 발명의 실시예에 의해 제공되는 전자책 문서 처리방법의 예시적 흐름도이다.
도2는 본 발명의 실시예에 의해 제공되는 다른 전자책 문서 처리방법의 예시적 흐름도이다.
도3은 본 발명의 실시예에 의해 제공되는 또 다른 전자책 문서 처리방법의 예시적 흐름도이다.
도4는 본 발명의 실시예에 의해 제공되는 다른 HTML 문서 처리방법의 예시적 흐름 블록도이다.
도5는 본 발명의 실시예에 의해 제공되는 단말기의 모듈 설명도이다.
도6은 본 발명의 실시예에 의해 제공되는 분할 모듈의 모듈 설명도이다.
도7은 본 발명의 실시예에 의해 제공되는 다른 단말기의 모듈 설명도이다.
도8은 본 발명의 실시예에 의해 제공되는 또 다른 단말기의 모듈 설명도이다.
도9는 본 발명의 실시예에 의해 제공되는 또 다른 단말기의 모듈 설명도이다.
도10은 본 발명의 실시예에 의해 제공되는 전자기기의 구조 설명도이다.
현재, 이동 단말기가 전자책 문서를 판독하는 과정은 주요하게 이동 단말기가 전자책 문서를 레이아웃 데이터로 분석하는 분석 단계, 상기 레이아웃 데이터에 대하여 풀 페이지네이션 처리를 진행하여 페이지 프레임(page frame)을 얻는 풀 페이지네이션 단계, 페이지 프레임과 레이아웃 데이터를 이용하여 대응되는 페이지 대상을 생성하는 페이지 대상 생성 단계, 페이지 대상을 렌더링(rendering)시켜 페이지 이미지를 생성하는 페이지 이미지 생성 단계를 포함한다. 상기 단계 처리를 거쳐, 사용자는 이동 단말기를 통하여 전자책의 페이지 이미지를 볼 수 있다.
이동 단말기가 전자책 문서를 더욱 잘 판독하게 하기 위하여, 본 발명의 실시예는 이동 단말기가 전자책을 판독하는 시간을 단축하고, 메모리 점유를 감소하는 전자책 문서 처리방법, 단말기 및 전자기기를 제공한다. 상기 전자책 문서 처리방법, 단말기 및 전자기기의 구체적인 실시예는 여러가지 방식이 존재하므로, 이하 구체적인 실시예를 통하여 상세히 설명하기로 한다.
도1을 참조하면, 도1은 전자책 문서 처리방법을 도시하는 바, 상기 방법은 하기와 같은 단계를 포함할 수 있다.
전자책 문서를 획득하는 단계101를 포함한다.
여기서, 사용자가 이동 단말기를 통하여 전자책을 펼친 후, 이동 단말기는 전자책 문서를 판독하여 메모리에 저장하게 되는데, 이때, 이동 단말기는 이미 전자책 문서를 획득하였다.
본 발명의 실시예에서, 전자책 문서는 스트리밍 전자책 문서일 수 있는 바, 여기서 상기 스트리밍 전자책 문서는 묘사한 문자, 사진 등 정보에 고정된 레이아웃위치가 없고, 레이아웃 파라미터(예를 들면, 레이아웃의 너비, 글자 크기, 행 간격 등)에 변화가 발생했을 때 레이아웃에 대하여 다시 레이아웃을 진행하여 새로운 레이아웃 파라미터에 적응하도록 해야 하는 전자책 문서를 의미한다. 상기 스트리밍 전자책 문서는 HTML 문서와 같은 문서를 포함하고, HTML 문서는 레이블로 구성되기에, 이동 단말기가 전자책의 HTML 문서를 획득하는 동시에 HTML 문서를 구성하는 레이블도 획득하게 된다.
미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하는 단계102를 포함한다.
여기서, 미리 설정된 분할방식에는 여러가지 구현 형식이 있을 수 있는 바, 예를 들면, 세그멘트 크기를 결정하고, 전자책 문서의 내용을 세그멘트 크기의 크기와 동일한 복수의 세그멘트로 분할하는 것이다. 구체적으로, 세그멘트 크기는 전자책 문서를 분할한 후 각각의 세그멘트의 크기를 나타내기에 세그멘트 크기는 미리 설정할 수 있고, 이동 단말기 사용자가 자가적으로 설정할 수도 있으며, 실험에 의하여 계산해 낼 수도 있다.
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계103를 포함한다.
여기서, 상기 단계를 거쳐 전자책 문서를 분할한 후, 전자책 문서는 복수의세그멘트로 분할된다. 원래 전자책 문서 내용의 순서에 따라 데이터를 처리하는 것을 확보하기 위하여, 세그멘트와 세그멘트 사이의 연계를 구축하여, 이런 세그멘트가 원래의 순서에 따라 하나의 세그멘트 그룹을 구성하도록 해야 한다.
세그멘트 그룹 중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하는 단계104를 포함한다.
여기서, 사용자의 요구에 의하여 세그멘트 그룹에서 그 중의 임의의 하나의 세그멘트를 선택하여, 후속되는 단계에서 선택된 세그멘트를 처리하기 편리하도록 한다.
현재 세그멘트 내의 내용을 분석하여 레이아웃 데이터를 생성하는 단계105를 포함한다.
여기서, 어느 세그멘트의 내용은 단지 완전한 전자책 문서 내용의 일부분이고, 분석해야 할 데이터는 완전한 전자책 문서의 내용에 비하여 매우 적으므로, 분석 속도는 현저히 빨라지고, 데이터량은 감소됨으로써 메모리의 점유도 대대적으로 감소된다.
이 밖에, 레이아웃 데이터가 생성된 후, 이동 단말기의 메모리를 절약하기 위하여, 레이아웃 데이터 중에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되었는지를 판정하고, 만약 사용되지 않았다면, 레이아웃 원자 데이터를 삭제하는 단계를 더 포함할 수 있다. 여기서, 만약 상기 레이아웃 데이터가 오랫동안 사용되지 않았다면, 상기 레이아웃 데이터가 점유하는 메모리를 절약하기 위하여, 먼저 상기 레이아웃 원자 데이터를 삭제할 수 있고, 만약 이후에 필요하면 다시 상기 레이아웃 원자 데이터를 생성할 수 있다.
이 밖에, 레이아웃 데이터가 생성된 후, 이동 단말기의 메모리를 절약하기 위하여, 레이아웃 데이터 중에 포함된 레이아웃 원자(atomic) 데이터가 점유한 메모리의 메모리 점유용량이 미리 설정된 값보다 큰지를 판정하고, 만약 크면 레이아웃 원자 데이터를 삭제하는 단계를 더 포함한다. 여기서, 만약 레이아웃 데이터가 너무 많으면, 후속되는 단계의 처리속도가 너무 늦게 되므로, 전체 레이아웃 데이터를 삭제하거나, 소정의 수량의 레이아웃 데이터를 삭제할 수 있다.
레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계106를 포함한다.
여기서, 레이아웃 데이터의 데이터량은 하나의 세그멘트에 의하여 생성되고, 레이아웃 데이터의 데이터량은 상대적으로 적으며, 페이지 이미지를 생성하는 과정에서, 시간의 점유와메모리의 점유 모두 큰 폭으로 감소된다.
단계106에서, 구체적으로 1. 레이아웃 데이터를 페이징(paging) 처리하여 페이지 레이아웃 프레임을 생성하는 단계, 2. 페이지 레이아웃 프레임과 레이아웃 데이터에 의하여 페이지 대상을 생성하는 단계, 3. 페이지 대상을 렌더링시켜 페이지 이미지를 생성하는 단계를 포함할 수 있다.
도1에 도시된 실시예에서, 전자책을 복수의 세그멘트로 나누고, 매번 전자책을 작동할 시, 단지 전자책 문서 중의 하나의 세그멘트만 분석하고, 상기 세그멘트가 생성한 레이아웃 데이터를 이용하여 페이지 이미지를 생성하기에, 매번 작동 과정에서 처리해야 할 데이터량은 단지 하나의 세그멘트의 데이터량이므로 이동 단말기가 전자책 문서를 판독할 시, 데이터 처리효율이 제고되었고, 나아가 전자책을 판독하는 시간을 단축하였다. 또한, 분할동작은 전자책 문서에 대하여 배치(batch)방식으로 처리하는 것을 실현하였고, 이동 단말기가 전자책 문서의 하나의 세그멘트를 처리할 시, 분석 동작이든지, 후속되는 페이지 이미지 생성 동작이든지를 막론하고, 처리해야 할 데이터량이 모두 상대적으로 작기에, 전자책이 이동 단말기에 대한 메모리 점유를 감소하였다.
도2를 참조하면, 도2는 다른 전자책 문서 처리방법을 도시하는 바, 상기 방법은 하기와 같은 단계를 포함한다.
전자책 문서를 획득하는 단계201를 포함한다.
여기서, 사용자가 이동 단말기를 통하여 전자책을 펼친 후, 이동 단말기는 전자책 문서를 판독하여 메모리에 저장하게 되는데, 이때, 이동 단말기는 이미 전자책 문서를 획득하였다. 본 발명의 실시예에서, 전자책 문서는 HTML 문서일 수 있는 바, HTML 문서는 레이블로 구성되기에, 이동 단말기가 전자책의 HTML 문서를 획득하는 동시에 HTML 문서를 구성하는 레이블도 획득하게 된다.
미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하는 단계202를 포함한다.
여기서, 미리 설정된 분할방식에는 여러가지 실현 형식이 있을 수 있는 바, 하기에서 한가지 분할 방법을 소개하기로 한다. 상기 방법은, 세그멘트 크기를 결정하는 단계, 전자책 문서의 내용을 세그멘트 크기의 크기와 동일한 복수의 세그멘트로 분할하는 단계를 포함한다. 구체적으로, 세그멘트 크기는 전자책 문서를 분할한 후 각각의 세그멘트의 크기를 나타내기에 세그멘트 크기는 미리 설정할 수 있고, 이동 단말기 사용자가 자가적으로 설정할 수도 있으며, 실험에 의하여 계산해 낼 수도 있다.
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계203를 포함한다.
여기서, 상기 단계를 거쳐 전자책 문서를 분할한 후, 전자책 문서는 복수의세그멘트로 분할된다. 원래 전자책 문서 내용의 순서에 따라 데이터를 처리하는 것을 확보하기 위하여, 세그멘트와 세그멘트 사이의 연계를 구축하여, 이런 세그멘트가 원래의 순서에 따라 하나의 세그멘트 그룹을 구성하도록 해야 한다.
세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하는 단계204를 포함한다.
여기서, 사용자의 요구에 의하여 세그멘트 그룹에서 그 중의 임의의 하나의 세그멘트를 선택하여, 후속되는 단계에서 선택된 세그멘트를 처리하기 편리하도록 한다.
현재 세그멘트 내의 내용을 분석하여 레이아웃 데이터를 생성하는 단계205를 포함한다.
여기서, 어느 세그멘트의 내용은 단지 완전한 전자책 문서 내용의 일부분이고, 분석해야 할 데이터는 완전한 전자책 문서의 내용에 비하여 매우 적으므로, 분석 속도는 현저히 빨라지고, 데이터량은 감소함으로써 메모리의 점유도 대대적으로 감소된다.
세그멘트 그룹에서의 현재 세그멘트의 위치 정보를 기록하는 단계206을 포함한다.
여기서, 위치 정보의 구체적인 실현에는 여러가지 방식이 존재하는 바, 예를 들면, 바이트(byte)를 사용하여 위치 정보를 기록할 수 있고, 마크(mark)를 사용하여 위치 정보를 기록하는 등등일 수도 있다. 전자책 문서가 HTML 문서일 경우, 바이트 오프셋 방식을 사용하여 세그멘트의 위치 정보를 기록할 수 있는 바, 바이트 오프셋의 단위는 바이트이다. 위치 정보에 있어서는 구체적으로 한정하지 않는 바, 세그멘트 그룹에서의 세그멘트의 위치를 기록할 수 있기만 하면 본 발명의 해결수단의 보호범위에 속한다.
레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하고, 작으면 단계208을 실행하고, 작지 않으면 단계209를 실행하는 단계207을 포함한다.
여기서, 레이아웃 데이터는 현재 세그멘트로 분석되어 생성된 것인 바, 각각의세그멘트가 분석되어 생성한 레이아웃 데이터의 데이터 량은 일정하다. 만약 이미 생성된 레이아웃 데이터의 데이터량이 페이지 이미지를 충분히 생성할 수 있으면, 상기 레이아웃 데이터를 이용하여 페이지 이미지를 생성하고, 만약 이미 생성된 레이아웃 데이터의 데이터량이 페이지 이미지를 충분히 생성할 수 없으면, 다음 세그멘트를 분석하여 레이아웃 데이터를 생성하고, 이전에 남은 레이아웃 데이터와 다음 세그멘트가 생성한 레이아웃 데이터를 같이 병합하여 페이지 이미지를 생성하여야 한다.
위치 정보에 의하여, 현재 세그멘트의 다음 세그멘트를 선택하여, 다음 세그멘트를 현재 세그멘트로 하고, 단계205로 되돌아가는 단계208을 포함한다.
여기서, 단계206에서 이미 현재 세그멘트의 위치 정보를 기록하였기에 현재 세그멘트의 위치 정보를 통하여 다음 세그멘트의 위치 정보를 결정할 수 있으므로 다음 세그멘트 중의 내용을 선택할 수 있다. 그후, 다음 세그멘트를 현재 처리해야 할 세그멘트로 한 후, 단계205로 되돌아간다.
레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계209를 포함한다.
여기서, 레이아웃 데이터의 데이터량은 하나의 세그멘트로 생성되기에, 레이아웃 데이터의 데이터량은 상대적으로 적으므로, 페이지 이미지를 생성하는 과정에서, 시간의 점유와메모리의 점유모두 큰 폭으로 감소된다.
도2에 도시된 실시예에서, 도1에 도시된 실시예와 다른 점은 하기와 같다. 이미 생성된 레이아웃 데이터의 데이터량이 페이지 이미지를 충분히 생성할 수 있는지를 판정하고, 만약 충분하면 기존 레이아웃 데이터로 페이지 이미지를 생성하고, 충분하지 않으면 다음 세그멘트를 분석하여 기존 레이아웃 데이터와 다음 세그멘트가 생성한 레이아웃 데이터를 병합하여 페이지 이미지를 생성한다.
상기 실시예에 기반해보면, 복수의 세그멘트를 생성하는 단계 이후에 추가로세그멘트의 시작점과 끝점을 정밀히 구분하는 단계를 진행할 수 있다. 예를 들면, 전자책 문서가 구체적으로 HTML 문서일 시, 세그멘트의 시작점은 세그멘트가 시작되는 위치이고, 세그멘트의 끝점은 세그멘트가 끝나는 위치이며, HTML 문서는 주요하게 레이블로 이루어지고 레이블은 두개의 꺾쇠 괄호(angle brackets)로 구성되며, 즉 레이블은 왼쪽 꺾쇠 괄호 “<”와 오른쪽 꺾쇠 괄호 “>”로 구성되며, 두개의 꺾쇠 괄호 사이는 레이블의 내용이다. HTML 문법 정의에 따르면, 레이블은 반드시 왼쪽 꺾쇠 괄호 “<”와 오른쪽 꺾쇠 괄호 “>”를 포함하여야만 레이블이 완전하다고 할 수 있다. 따라서, 분할 후, 어느 세그멘트가 왼쪽 꺾쇠 괄호만 포함하거나 오른쪽 꺾쇠 괄호만 포함하는 대응되지 않는 상황이 존재하는 것을 허락하지 않는다. 만약 존재하면, 하나의 레이블이 두개의 세그멘트로 분할되었다는 것을 설명하고, 이러면 후속과정에서 상기 레이블에 대하여 분석을 진행할 수 없다. 추가로세그멘트 시작점과 끝점을 구분하기 위하여, 도3에 도시된 실시예를 참조하기 바란다.
도3을 참조하면, 도3은 전자책 문서 처리방법을 도시하는 바, 상기 방법은 하기와 같은 단계를 포함한다.
전자책 문서를 획득하는 단계301을 포함한다.
여기서, 사용자가 이동 단말기를 통하여 전자책을 펼친 후, 이동 단말기는 전자책 문서를 판독하여 메모리에 저장하게 되는데, 이때, 이동 단말기는 이미 전자책 문서를 획득하였다. 본 발명의 실시예에서, 전자책 문서는 HTML 문서일 수 있는 바, HTML 문서는 레이블로 구성되기에, 이동 단말기가 전자책의 HTML 문서를 획득하는 동시에 HTML 문서를 구성하는 레이블도 획득하게 된다.
미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하는 단계302를 포함한다.
여기서, 미리 설정된 분할방식에는 여러가지 실현 형식이 있을 수 있는 바, 하기에서 한가지 분할 방법을 소개하기로 한다. 상기 방법은, 세그멘트 크기를 결정하는 단계, 전자책 문서의 내용을 세그멘트 크기의 크기와 동일한 복수의 세그멘트로 분할하는 단계를 포함한다. 구체적으로, 세그멘트 크기는 전자책 문서를 분할한 후 매개 세그멘트의 크기를 나타내기에 세그멘트 크기는 미리 설정할 수 있고, 이동 단말기 사용자가 자가적으로 설정할 수도 있으며, 실험에 의하여 계산해 낼 수도 있다.
세그멘트의 시작점 부분의 정보가 완전한지를 판정하고, 완전하면 단계305를 실행하고, 완전하지 않으면 단계304를 실행하는 단계303을 포함한다.
여기서, 분할 후에, 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하기 위하여, 세그멘트의 시작점 부분의 정보가 완전한지를 판정하여야 한다. 만약 완전하지 않으면, 세그멘트의 시작점과 끝점에 대하여 일정한 미세 조절을 진행하여 매개 세그멘트 내의 정보가 모두 완전하도록 확보하여야 한다.
세그멘트의 시작점에서 이전 세그멘트로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 시작점과 이전 세그멘트의 끝점으로 하는 단계304를 포함한다.
여기서, 만약 세그멘트의 시작점 부분의 정보가 완전하지 않으면, 상기 정보의 전반부분이 이전 세그멘트에 분할되고, 상기 정보의 후반부분이 상기 세그멘트의 시작점 부분에 남아 있다는 것을 설명한다. 상기 정보의 완전함을 확보하기 위하여, 사실 여러가지 실현방식이 존재하는 바, 그중 하나의 실현방식이 바로 단계304의 조절방식이다. 즉 이전 세그멘트의 상기 정보의 전반부분을 삭제하고, 상기 정보의 전반부분을 상기 세그멘트의 시작점 부분에 보충하여, 상기 세그멘트의 시작점과 이전 세그멘트의 끝점이 동일한 점이 되도록 한다. 두번째 실현방식은 구체적으로, 세그멘트의 시작점에서 상기 세그멘트의 끝점쪽으로 이동하여 상기 정보의 끝점을 결정하고, 상기 정보의 끝점을 상기 세그멘트의 시작점과 이전 세그멘트의 끝점으로 하는 것이다. 두번째 방식은 상기 세그멘트 중 상기 정보의 후반부분을 삭제하고, 상기 정보의 후반부분을 이전 세그멘트의 끝점 위치에 보충하는 것이다. 상기 두가지 방식은 모두 각각의 세그멘트의 시작점과 끝점 위치를 미세하게 조절하여 매개 세그멘트 중의 모든 정보가 모두 완전한 것을 실현한다.
물론, 세그멘트의 정보의 완전함을 실현하기 위하여 단계304의 방식을 사용할 수 있을 뿐만 아니라 기타 정보의 시작점을 상기 세그멘트의 시작점과 이전 세그멘트의 끝점으로 결정할 수 있다. 비록 이런 방식의 세그멘트의 시작점 또는 끝점 오프셋이 너무 많지만 마찬가지로 정보 완전에 관한 문제를 해결할 수 있기에 본 발명이 제공한 실시예는 단계304의 방식에 의하여 한정되는 것이 아니라 정보를 완전하게 하는 목적을 실현할 수 있기만 하면 기타 단계304의 원리와 동일한 방법은 모두 가능하며 여기서는 구체적으로 한정하지 않는다.
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계305를 포함한다.
여기서, 상기 단계를 거쳐 전자책 문서를 분할한 후, 전자책 문서는 아주 많은 세그멘트로 분할된다. 원래 전자책 문서 내용의 순서에 따라 데이터를 처리하는 것을 확보하기 위하여, 세그멘트과 세그멘트 사이의 연계를 구축하여, 이런 세그멘트가 원래의 순서에 따라 하나의 세그멘트 그룹을 구성하도록 해야 한다.
세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하는 단계306을 포함한다.
여기서, 사용자의 요구에 의하여 세그멘트 그룹에서 그 중의 임의의 하나의 세그멘트를 선택하여, 후속되는 단계에서 선택된 세그멘트를 처리하기 편리하도록 한다.
현재 세그멘트 내의 내용을 분석하여 레이아웃 데이터를 생성하는 단계307을 포함한다.
여기서, 어떤 세그멘트의 내용은 단지 완전한 전자책 문서 내용의 일부분이고, 분석해야 할 데이터는 완전한 전자책 문서에 비하여 많이 적은 내용이므로, 분석 속도는 현저히 빨라지고, 데이터량은 감소함으로써 메모리의 점유도 대대적으로 감소된다.
레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계308을 포함한다.
여기서, 레이아웃 데이터의 데이터량은 하나의 세그멘트로 생성되기에, 레이아웃 데이터의 데이터량은 상대적으로 적으므로, 페이지 이미지를 생성하는 과정에서, 시간의 점유와 메모리의 점유 모두 큰 폭으로 감소된다.
도3에 도시된 실시예에서, 완전한 정보가 분할되는 것을 방지하기 위하여, 끝점 부분의 정보가 완전한지를 판정할 수도 있는 바, 구체적으로 두가지 실현 방법이 있다. 첫번째 방법은, 세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 완전하지 않으면 세그멘트의 끝점에서 다음 세그멘트로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로 한다. 두번째 방법은 세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 완전하지 않으면 세그멘트의 끝점에서 세그멘트의 시작점쪽으로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로 한다. 그 원리는 단계303과 단계304와 비슷하므로, 구체적인 분석은 단계303과 단계304를 참조하고, 여기서는 더이상 설명하지 않기로 한다.
도3에 도시된 실시예에서, 도1에 도시된 실시예와 다른 점은 하기와 같다. 하나의 완전한 정보가 두개의 세그멘트로 분할되는 것을 방지하기 위하여 추가로세그멘트의 시작점과 끝점에 대하여 정밀한 구분을 진행한다.
도4를 참조하면, 도4는 본 발명이 제공하는 구체적인 응용예이다. 본 응용예는 전자책 문서가 HTML 문서(1)일 때의 구체적인 처리방법을 소개하는 바, 상기 HTML 문서(1)의 처리방법은 하기와 같은 단계를 포함한다.
HTML 문서(1)를 획득하는 1단계를 포함한다.
미리 설정된 분할방식에 의하여 HTML 문서(1)의 내용을 분할하여, 복수의 HTML 세그멘트를 생성하는 2단계를 포함한다.
2단계에서, HTML 문서(1) 분석과정의 제일 큰 특징은 HTML 세그멘트를 분석하는 것인 바, 하나의 작은 HTML 세그멘트를 분석하는데 소모되는 시간은 즉 허용가능한 범위에 있고, 만약 매번의 분석과정에서 단지 하나의 작은 HTML 세그멘트만 처리하면, 1번의 분석시간을 단축할 수 있기에 여기서 HTML를 분할하여 분석한다.
우선 세그멘트의 크기값(m)(단위: B(바이트))을 결정하고, 상기 m값에 의하여 크기가 n(단위: B(바이트))인 HTML 문서(1) 등을 n/m개로 나누어 (n/m-1) 개의 중지점(break point)을 얻으며, 비시작점에서 시작한 HTML 문서(1) 분석은 반드시 HTML 문서(1) 내의 레이블의 완전성을 확보하여야 하기 때문에 절반의 레이블이 HTML 세그멘트에 나타나는 것을 방지해야 하므로 재차 상기 (n/m-1) 중의 매개 중지점이 HTML레이블 내부에 존재하지 않는 지를 순차적으로 검사해야 한다. HTML문법 정의에 따르면, 레이블은 반드시 왼쪽 꺾쇠 괄호 “<”와 오른쪽 꺾쇠 괄호 “>”로 묶여야 하고, 길이는 일반적으로 1024B 이내이다. 상기 한정에 의하여, 상기 (n/m-1) 중의 매개 점의 앞으로 또는 뒤로 일정한 바이트를 조회하여 HTML레이블 내부에 존재하지 않는 요구를 만족시켜야 한다.
구체적으로, 세그멘트의 크기값(m)을 결정하는 방식은 여러가지가 있는 바, 예를 들면, 인위적으로 설정한 방식 또는 계산된 방식 등이 있다. 이하, 세그멘트의 크기값(m)을 결정하는 계산 방식에 대하여 중점적으로 소개하기로 한다.
1. 이론 분석
HTML 문서(1)의 분석시간은HTML의 노드(node) 수에 의하여 직접적으로 결정되기 때문에, HTML 문서(1)가 점차 커짐에 따라, HTML 노드의 수량도 따라서 많아지고, 노드의 깊이 순회(depth traversal) 소모 시간도 점차 많아진다. 이로부터 알 수 있는 바와 같이, HTML 문서(1)의 분석시간은 HTML 문서(1)의 크기의 변화 곡선에 따라 정방향으로 점차 커지는 곡선이어야 한다. 일반적인 상황하에서, HTML 문서(1)가 비교적 작을 시, HTML 노드의 수량도 비교적 작고, 현대 컴퓨터에 있어서, HTML 문서(1) 분석 능력은 아주 짧은 시간 내에 깊이 순회(예를 들면, 10K와 50K의 HTML 문서(1)에 있어서, 그 분석시간은 큰 차이가 없음)를 완성할 수 있지만, HTML 문서(1)의 규모가 일정한 정도에 도달했을 시, HTML 노드의 수량은 비선형적인 급격한 증가를 나타낼 수 있다. 이러면 HTML 문서(1)의 분석시간도 비선형적으로 증가될 수 있다. 앞의 분석을 종합하면, HTML 문서(1)의 분석시간은 HTML 문서(1)의 변화에 따라 필연적으로 먼저 늦고 후에 빨라지는 과정이므로 곡선에는 반드시 하나의 변곡점(inflection point)이 존재한다. HTML 문서(1)의 크기가 상기 변곡점에 도달한 후, HTML 문서(1)의 분석효율은 급격하게 낮아진다.
2. 이론 검증
일부 상용적인 성능 분석수단을 사용하여 이미 준비된 몇개 군의 HTML 물리 공간에 대하여 분석 성능 테스트를 진행하고, 매 군의 테스트 결과를 기록하였다. 가시적 도구를 통하여 HTML 문서 분석시간이 HTML 문서(1) 크기에 따른 변화 곡선을 그려, 상기 이론 분석을 검증하였다.
3. HTML 문서(1) 분석 성능 변곡점 찾기
이론 검증 후의 HTML 문서(1) 분석시간이 HTML 문서(1) 크기의 변화에 따른 곡선을 통하여, HTML 문서(1)의 크기가 어느 한 수치 M 이하일 때 HTML 문서 분석시간은 기본상에서 큰 변화가 없고, HTML 물리공간의 크기가 어느 한 수치 N을 초과할 시, HTML 문서 분석시간은 급격하게 증가한다는 것을 결정할 수 있다. 따라서, HTML 문서(1) 분석 성능 변곡점에 대응되는 HTML 문서(1)의 크기는 구간[M, N] 내에 있다는 것을 결정할 수 있다. 구간[M, N] 내에서 분석을 진행하되, 이때 두가지 고려해야 할 규칙이 있다. a) HTML 문서(1) 분할은 너무 많아서는 안되며, 그렇지 아니할 경우 세그먼트 관리의 복잡성이 증가되고, 즉,세그멘트의 크기값 m이 너무 작아서는 안되며, b) 단일한 HTML 세그멘트의 분석시간은 너무 길어서는 안되며, 그렇지 아니할 경우 사용자의 대기시간이 너무 긴 등 단점이 나타나고, 즉, 세그먼트의 크기값 m이 너무 커서는 안된다. 이상의 두가지 규칙에 의하여 먼저 구간[M, N]내의 최소값 M과 최대값 N를 소거하여 새로운 구간을 얻은 뒤, 상기 두개의 규칙에 의하여 새로운 구간의 최대값과 최소값을 소거하며, 이렇게 순차적으로 순환해 나간다. 만약 마지막에 하나의 값이 남으면, 그 값이 바로 성능 변곡점에 대응되는 HTML 문서(1)의 크기, 즉 세그멘트의 크기값 m이다. 만약 마지막에 두개의 숫자가 남으면, 두개 수의 중간값을 취하여 성능 변곡점에 대응되는 HTML 문서(1)의 크기로 하고, 즉 세그멘트의 크기값 m이다.
복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 3단계를 포함한다.
분석과정의 제일 큰 단점은 되돌아갈 수 없다는 것인 바, 즉 분석은 반드시 HTML 문서(1)의 물리적 순서에 따라 실행해야 한다. 만약 HTML 문서(1)가 비시작점에서 분석이 시작되면, HTML 문서(1) 문맥 관계가 완전하지 않은 문제가 존재하여, 레이블 노드가 유실되는 등 문제를 초래할 수 있다. 따라서, 여기서 HTML 문서(1)의 분석상태 구간(2)을 사용하여 상기 문제를 극복한다.
1. HTML 문서(1)의 분석이기를 새로 만들되, 이때 상기 분석이기의 상태는 어떠한 HTML 문서(1) 분석도 거치지 않은 상태이므로 최초 분석상태라고 하고, 최초 분석상태는 구체적인 HTML 문서(1)와 관계가 없으며, 임의의 새로 만들어진 HTML 문서(1)의 분석이기의 상태는 모두 최초 상태일 수 있다.
2. HTML 문서(1)의 분석상태는 위치한 HTML 문서(1)의 바이트 오프셋을 기록하기 때문에, HTML 문서(1)의 분할 결과도 바이트 오프셋을 사용하여 설명하므로, 이런 바이트 오프셋의 대응관계에 따라 HTML 세그멘트가 분석구간까지 일일이 대응되도록 완성한다. 따라서, 첫번째 HTML 세그멘트는 첫번째 분석구간에 대응되고, 그 분석시작상태(위치한 바이트 오프셋은 첫번째 세그멘트의 시작임)는 최초 분석상태를 취하고, 그 분석결과상태는 첫번째 HTML 세그멘트의 분석이 종료된 상태(위치한 바이트 오프셋은 제1단의 끝임)이다.
3. 첫번째 HTML 세그멘트 후의 매개 HTML 세그멘트에 대응되는 분석구간에 있어서, 그 분석시작상태는 이전 분석구간에서의 분석종료상태를 계승하고, 그 분석종료상태는 상기 HTML 세그멘트의 분석이 종료된 상태이다. 여기의 분석상태 계승은 분석상태의 클론(clone) 과정, 즉 하나의 분석상태가 위치한 HTML 문서(1)의 바이트 오프셋(분석상태가 HTML 문서(1)에서의 현재 위치를 기록하기 위한 것), HTML레이블 부노드(father node)의 스택 정보(Stack information)(분석상태가 HTML 문서(1)에서 지나간 경로를 기록하기 위한 것), 분석할 때의 문맥 관계(분석상태가 HTML 문서(1)의 텍스트 노드 내에 있는 전후문 관계를 기록하기 위한 것)등을 원래 그대로 다른 하나의 분석상태에 복사하는 것을 의미한다.
이런 해결수단에 따라 매개 HTML 세그멘트가 HTML 문서(1) 분석과정에 참여함에 있어서 모두 이전 HTML 세그멘트에서 분석상태를 계승하고, 즉 이전 HTML 세그멘트의 문맥 관계를 계승해 내려오기에, 즉 상하관계가 완전하지 않아 발생하는 문제를 극복하였다.
세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하는 4단계를 포함한다.
현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 5단계를 포함한다.
레이아웃 구동과정은 하기와 같다.
1. 레이아웃 엔진을 시동하고, 현재 HTML 세그멘트에 대응되는 레이아웃 원자 데이터(31)가 빈것을 발견할 시, 현재 레이아웃의 점에 대응되는 HTML 문서(1)의 오프셋에 의하여 위치한 HTML 세그멘트를 찾고, 대응하는 HTML 문서(1)의 분석구간을 각성시키며, 대응하는 HTML 세그멘트에 대하여 번역을 진행하고, 대응하는 레이블 노드 데이터(32)와 레이아웃 원자 데이터(31)를 생성한다. 레이블 노드 데이터(32)에 있어서, 레이아웃 원자 데이터(31)는 레이블 노드 데이터(32)의 양식 정보에 의존해야 하므로, 레이아웃 원자 데이터(31)의 분석에 따라 레이블 노드 데이터(32)를 분석한다. 레이블 노드 데이터(32)는 1부씩만 저장하면 되고, 만약 상기 HTML 세그멘트에 대응되는 레이블 노드 데이터(32)가 이미 존재한다는 것을 발견하면, 분석과정에서 대응하는 레이블 노드 데이터(32)를 더이상 추가하지 않는다.
2. 레이아웃을 진행하여 페이징 또는 페이지 대상의 생성을 완성한다. 아울러, 현재 저장 자원의 사용상황을 모니터링하고, 만약 정의된 임계치(예를 들면, 안드로이드(android) 플랫폼에서 애플리케이션애플리케이션 메모리는 일반적으로 24MB 이내로 한정하고, 아이오에스(IOS) 플랫폼의 애플리케이션애플리케이션은 일반적으로 20MB 이내로 한정한다)를 초과하면, 잠시 사용하지 않는 HTML 세그멘트에 대응되는 레이아웃 원자 데이터(31)를 삭제한다.
레이아웃 데이터(3)에 의하여 페이지 이미지를 생성하는 6단계를 포함한다.
HTML 풀 페이지네이션 과정은 다음과 같다.
풀 페이지네이션 과정은 HTML 물리공간에서 처음 시작하여 처리하는 바, 앞에서 뒤로 가면서 순차적으로 매개 HTML 세그멘트에 대하여 레이아웃 구동과정을 호출하고, 매개 HTML 세그멘트에 있어서, 페이징 과정이 상기 세그멘트의 마지막 페이지에 도달했을 시, 반 페이지인 상황이 나타날 수 있는데, 현재 세그멘트의 마지막 페이지와 다음 세그멘트가 연속되는 것을 확보하기 위하여 이때 즉시 다음 세그멘트의 HTML 데이터를 분석하고, 다시 현재 세그멘트의 마지막 페이지의 시작점에서 페이징을 진행하고, 만약 레이아웃 원자가 부족한 것이 발견되면 다음 세그멘트의 레이아웃 원자를 사용하여 세그멘트 사이의 분리 문제를 방지한다.
페이지 객체 생성 과정은 다음과 같다.
1. HTML 문서(1)의 바이트 오프셋(이하, “요청점”이라고 함)을 통하여 그 대응되는 HTML 페이지 공간(4) 중의 페이지 번호(HTML 페이지의 시작점과 끝점은 물리적 HTML 중의 이들의 바이트 오프셋을 기록함)를 결정하고, 이때 페이지 번호를 획득하거나 페이지 번호를 획득하지 못하는 두가지 상황이 있을 수 있다. 만약 페이지 번호를 획득했으면 풀 페이지네이션 과정이 이미 요청점에 도달했다는 것을 설명하고, 페이지 번호에 대응되는 풀 페이지네이션 결과를 사용하며, 만약 페이지 번호를 획득하지 못했으면, 풀 페이지네이션 과정이 아직 요청점에 도달하지 못했다는 것을 설명하고, 이때 임시 분석과정을 시작하여 요청점에 대응되는 페이지 결과를 획득한다.
2. 상기 획득한 페이지 결과에 의하여, 레이아웃 구동 과정을 호출하여, 페이지 대상의 생성을 완성한다.
임시 분석과정은 다음과 같다.
1. 요청점에 의하여 위치한 HTML 세그멘트(이하, “요청 세그멘트”이라고 함)을 판정하고, HTML 문서(1)의 분석상태 구간(2)을 새로 만들고, 그 분석 시작 상태를 최초 분석상태로 취하고, 그 분석결과를 분석초기상태를 사용하여 요청 세그멘트의 분석을 끝낸 후의 상태로 취한다.
2. 레이아웃 구동 과정을 호출하여, 강제적으로 상기 단계 중의 분석상태 구간(2)을 사용하여 요청 세그멘트에 대하여 페이징을 진행하고, 임시 분석 페이지 공간(4)을 생성한다.
3. 요청점에 의하여, 임시 분석 페이지 공간(4)에서의 페이지 번호를 결정하고, 상기 페이지 번호에 의하여 임시 분석 페이지 결과를 획득한다.
주의: 풀 페이지네이션 과정이 필요한 페이지가 위치한 구간에 도달하지 않았을 시, 임시 분석과정을 사용하여 필요한 페이지를 획득하고, 이때 비록 완전한 HTML 문맥 관계를 사용하지 않았지만 풀 페이지네이션 과정이 필요한 페이지에 도달한 후 풀 페이지네이션 결과로 되돌아가 비시작점에서부터 HTML분석할 때 존재하는 문제를 분석한다. HTML 풀 페이지네이션 과정이 종료되지 않았을 시, 페이지 번호를 통하여 건너 뛰기를 할 수 없으며, 그 원인은 페이지 번호가 풀 페이지네이션 과정에 이미 페이징한 수를 초과할 수 있기 때문이다. 이때, HTML 물리 공간의 크기의 백분율에 의하여 건너 뛰기를 할 수 있는 바, 풀 페이지네이션이 끝난 후 페이지 번호를 통하여 건너 뛰기를 할 수 있다.
본 발명이 제공한 해결수단은 큰 크기의 HTML 문서(1)가 풀 페이지네이션 과정에서 더욱 작은 저장공간을 소모하게 하고, HTML 문서(1)에서 앞부분에 접근하는 풀 페이지네이션 결과의 획득시간을 단축하고, 풀 페이지네이션이 도달하기 전 임시 분석을 통하여 HTML 건너 뛰기의 성능이 제고되게 하며, 풀 페이지네이션이 도달한 후 임시 분석 중에 존재할 수 있는 문제를 수정한다.
이로써, 사용자 체험에 있어서 하기와 같은 유리한 효과를 가져온다.
1. HTML 문서(1)의 분석시간과 풀 페이지네이션 시간을 매개 HTML 세그멘트에 할당함으로써, 사용자가 처음 큰 크기의 HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 첫 페이지의 대기시간을 현저히 단축하였다.
2. 풀 페이지네이션이 요청점에 도달한 후 풀 페이지네이션 결과를 사용함으로써, 사용자가 큰 크기의 HTML 문서(1)를 메인으로 하는 전자책을 열람할 때 서적의 양식 구조가 파괴되지 않도록 하여 원래 책의 형식을 최대한 중히 여기면서 내용을 사용자에게 보여준다.
3. 더욱 작은 저장공간을 소모함으로써, 사용자가 이동 단말기 등 저장자원이 비교적 작은 설비에서 큰 크기의HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 다운되는 확률을 현저히 감소하였다.
4. 더욱 작은 저장공간을 소모함으로써, 사용자가 큰 크기의HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 열람 소프트웨어의 운행이 더욱 원활하게 하여 사용자의 작동 원활성을 제고하였다.
5. 임시 분석과정을 사용함으로써, 사용자가 큰 크기의HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 열람 진도를 동기화하는 대기시간을 현저히 단축하였다.
6. 임시 분석과정을 사용함으로써, 사용자가 큰 크기의HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 목록 건너 뛰기 대기시간을 현저히 감소하였다.
7. 임시 분석과정을 사용함으로써, 사용자가 큰 크기의HTML 문서(1)를 메인으로 하는 전자책을 펼칠 때 앞으로 감기, 뒤로 감기의 대기시간을 현저히 감소하였다.
도5를 참조하면, 도5는 단말기를 도시하는 바, 상기 단말기는 전자책 문서를 획득하기 위한 획득 모듈(11), 미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하기 위한 분할 모듈(12), 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈(13), 세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하기 위한 선택 모듈(14), 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈(15), 레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈(16)을 포함한다. 여기서, 도6을 참조하면, 도6은 분할 모듈(12)의 구체적인 구조를 도시하는 바, 분할 모듈(12)은 세그멘트 크기를 결정하기 위한 세그멘트 크기 결정 유닛(121), 전자책 문서의 내용을 세그멘트 크기의 크기와 동일한 복수의 세그멘트로 분할하기 위한 분할 유닛(122)을 포함한다.
도5에 도시된 실시예에서, 분할 모듈(12)을 이용하여 전자책을 복수의 세그멘트로 나누고, 매번 전자책을 작동할 시, 분석 모듈은(15)은 단지 전자책 문서 중의 하나의 세그멘트만 분석하고, 생성 모듈(16)은 상기 세그멘트가 생성한 레이아웃 데이터를 이용하여 페이지 이미지를 생성하기에, 매번 작동 과정에서 처리해야 할 데이터량은 단지 하나의 세그멘트의 데이터량이므로 이동 단말기가 전자책 문서를 판독할 시, 데이터 처리효율이 제고되었고, 나아가 전자책을 판독하는 시간을 단축하였다. 또한, 분할동작은 전자책 문서에 대하여 배치하는 방식으로 처리하는 것을 실현하였고, 이동 단말기가 전자책 문서의 하나의 세그멘트를 처리할 시, 분석 동작이든지, 후속되는 페이지 이미지 생성 동작이든지를 막론하고, 처리해야 할 데이터량이 모두 상대적으로 작기에, 전자책이 이동 단말기에 대한 메모리 점유를 감소하였다.
도6에 도시된 실시예에서, 세그멘트 크기 결정 유닛(121)으로 얻은 세그멘트 크기는 전자책 문서가 분할된 후 매개 세그멘트의 크기를 나타내기에 세그멘트 크기는 미리 설정할 수 있고, 이동 단말기 사용자가 자가적으로 설정할 수도 있으며, 실험에 의하여 계산해 낼 수도 있다. 다음, 분할 유닛(122)을 이용하여 얻은 세그멘트 크기에 의하여 전자책 문서를 분할한다.
도7을 참조하면, 도7이 도시한 것은 다른 단말기인 바, 상기 단말기는 전자책 문서를 획득하기 위한 획득 모듈(21), 미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하기 위한 분할 모듈(22), 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈(23), 세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하기 위한 선택 모듈(24), 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈(25), 세그멘트 그룹에서의 현재 세그멘트의 위치 정보를 기록하기 위한 기록 모듈(26), 레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하기 위한 제1 판정 모듈(27), 데이터량이 미리 설정된 값보다 작을 시, 위치 정보에 의하여 현재 세그멘트의 다음 세그멘트를 선택하고, 다음 세그멘트를 현재 세그멘트로 한 후, 되돌아가 분석 모듈(25)을 실행하기 위한 제1 실행 모듈(28), 레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈(29)을 포함한다.
도7에 도시된 실시예에서, 도6에 도시된 실시예와 다른 점은 하기와 같다. 제1 판정모듈(27)을 통하여 이미 생성된 레이아웃 데이터의 데이터량이 페이지 이미지를 충분히 생성할 수 있는지를 판정하고, 만약 충분히 생성할 수 있으면, 기존 상기 레이아웃 데이터를 이용하여 페이지 이미지를 생성하고, 만약 충분히 생성할 수 없으면, 다음 세그멘트를 분석하고 기존 레이아웃 데이터와 다음 세그멘트가 생성한 레이아웃 데이터를 병합하여 페이지 이미지를 생성한다.
도8을 참조하면, 도8은 또 다른 단말기를 도시하는 바, 상기 단말기는 전자책 문서를 획득하기 위한 획득 모듈(31), 미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하기 위한 분할 모듈(32), 세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제2 판정 모듈(33), 세그멘트의 시작점 부분의 정보가 완전하지 않을 시, 세그멘트의 시작점에서 앞으로 이동하여 레이블의 시작점을 결정하고, 레이블의 시작점을 세그멘트의 시작점으로 하기 위한 제2 실행 모듈(34), 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈(35), 세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하기 위한 선택 모듈(36), 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈(37), 레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈(38)을 포함한다.
도8에 도시된 실시예에서, 도5에 도시된 실시예와 다른 점은 하기와 같다. 하나의 완전한 정보가 두개의 세그멘트에 분할되는 것을 방지하기 위하여, 추가로세그멘트의 시작점과 끝점에 대하여 정밀한 구분을 진행한다.
도8에 도시된 실시예에서, 세가지 실현방식이 상기 제2 판정 모듈(33)과 제2 실행 모듈(34)의 기능을 동등하게 대체할 수 있는 바, 하기에서 이 세가지 실현방식에 대하여 간단히 소개하기로 한다. 첫번째 대체방식은, 제3 판정 모듈로 제2 판정 모듈(33)을 대체하고, 제3 실행 모듈로 제2 실행 모듈(34)을 대체하는바, 구체적으로, 세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제3 판정 모듈, 세그멘트의 시작점 부분의 정보가 완전하지 않을 시, 세그멘트의 시작점에서 세그멘트의 끝점쪽으로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 시작점과 이전 세그멘트의 끝점으로 하기 위한 제3 실행 모듈이다. 두번째 대체방식은, 제4 판정 모듈로 제2 판정 모듈(33)을 대체하고, 제4 실행 모듈로 제2 실행 모듈(34)을 대체하는바, 구체적으로, 세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제4 판정 모듈, 세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 세그멘트의 끝점에서 다음 세그멘트로 이동하여 정보의 끝점을 결정하고, 정보의 끝점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로 하기 위한 제4 실행 모듈이다. 세번째 대체방식은, 제5 판정 모듈로 제2 판정 모듈(33)을 대체하고, 제5 실행 모듈로 제2 실행 모듈(34)을 대체하는바, 구체적으로, 세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제5 판정 모듈, 세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 세그멘트의 끝점에서 세그멘트의 시작점쪽으로 이동하여 정보의 시작점을 결정하고, 정보의 시작점을 세그멘트의 끝점과 다음 세그멘트의 시작점으로 하기 위한 제5 실행 모듈이다.
도8에 도시된 실시예에서, 세그멘트 중의 정보의 완전함을 확보하기 위하여, 제2 판정 모듈(33)과 제2 실행 모듈(34)의 기능을 사용할 수 있을 뿐만 아니라, 기타 정보의 시작점을 상기 세그멘트의 시작점 또는 이전 세그멘트의 끝점으로 결정할 수도 있다. 비록 이런 방식의 세그멘트의 시작점 또는 끝점의 오프셋이 너무 많지만, 마찬가지로 정보의 완전함에 관한 문제를 해결할 수 있기에 본 발명이 제공한 실시예는 도8에 도시된 방식에 의하여 한정되는 것이 아니라 정보를 완전하게 하는 목적을 실현할 수 있기만 하면 기타 제2 판정 모듈(33)과 제2 실행 모듈(34)의 기능 원리와 동일한 모듈은 모두 가능하며 여기서는 구체적으로 한정하지 않는다.
도9를 참조하면, 도9는 또 다른 단말기를 도시하는 바, 상기 단말기는 전자책 문서를 획득하기 위한 획득 모듈(41), 미리 설정된 분할방식에 따라 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하기 위한 분할 모듈(42), 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈(43), 세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 세그멘트를 현재 세그멘트로 하기 위한 선택 모듈(44), 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈(45), 레이아웃 데이터 중에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되었는지를 판정하기 위한 제6 판정 모듈(46), 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되지 않았을 시, 레이아웃 원자 데이터를 삭제하기 위한 제6 실행 모듈(47), 레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈(48)을 포함한다.
도9에 도시된 실시예에서, 분석 모듈(45)이 레이아웃 데이터를 생성한 후, 이동 단말기의 메모리를 절약하기 위하여, 제6 판정 모듈(46)과 제6 실행 모듈(47)을 이용하여 이를 실현할 수 있다. 여기서, 만약 상기 레이아웃 데이터가 오랫동안 사용되지 않았다면, 상기 레이아웃 데이터가 점유하는 메모리를 절약하기 위하여, 먼저 상기 레이아웃 원자 데이터를 삭제할 수 있고, 만약 이후에 필요하면 다시 상기 레이아웃 원자 데이터를 생성할 수 있다.
도9에 도시된 실시예에서, 분석 모듈(45)이 레이아웃 데이터를 생성한 후, 이동 단말기의 메모리를 절약하기 위하여, 제7 판정 모듈로 제6 판정 모듈(46)을 대체하고, 제7 실행 모듈로 제6 실행 모듈(47)을 대체할 수 있다. 구체적으로, 제7 판정 모듈은 레이아웃 데이터 중에 포함된 레이아웃 원자 데이터가 점유한 메모리의 메모리 점유용량이 미리 설정된 값보다 큰지를 판정하기 위한 것이고, 제7 실행 모듈은 레이아웃 원자 데이터가 점유한 메모리의 메모리 점유용량이 미리 설정된 값보다 클 시, 레이아웃 원자 데이터를 삭제하기 위한 것이다. 여기서, 만약 레이아웃 데이터가 너무 많으면, 후속되는 단계의 처리속도가 너무 늦게 되므로, 전부의 레이아웃 데이터를 삭제하거나, 소정의 수량의 레이아웃 데이터를 삭제할 수 있다. 이로써 이동 단말기 메모리를 절약하는 목적을 실현한다.
도 10에서 도시된 바와 같이, 본 발명의 실시예에 의해 전자 장치가 또한 제공된다. 전자 장치는 상기 실시예에서 제공된 전자책 문서 처리방법을 실시하는데 사용된다. 전자 장치는 이하에서 구제적으로 설명된다.전자 장치(1300)는 통신유닛(1310), 컴퓨터 판독가능기록매체를 하나 이상 포함하는 메모리(1320), 입력유닛(1330), 표시유닛(1340), 센서(1350), 오디오회로(1360), 무선통신유닛(1370), 하나 이상의 처리 코어를 구비하는 프로세서(1380) 및 전원(1390) 등 부품을 포함한다. 당업자는 도 13에 도시된 전자 장치의 구성이 전자 장치에 대한 한정이 아니며 당해 전자 장치가 도시된 부품보다 많은 수량 또는 적은 수량의 부품을 구비해도 되고 혹은 몇개의 부품의 조합 또는 상이한 부품 배치를 구비해도 됨을 이해해야 한다.
여기에서, 통신유닛(1310)은 정보를 송수신하거나 통화중에 신호를 수신하고 송신하기 위한 것이다. 당해 통신유닛(1310)은 RF(Radio Frequency)회로, 라우터, 모뎀 등의 네트워크 통신장치여도 된다. 특히, 통신유닛(1310)이 RF회로일 경우 기지국으로부터의 다운링크 정보를 수신한 후 하나 또는 하나 이상의 프로세서(1380)에 전송하여 처리하게 한다. 또한, 업링크 데이터를 기지국에 송신한다. 일반적으로 통신유닛으로서의 RF회로는 안테나, 적어도 하나의 앰프, 튜너, 하나 또는 복수의 발진기, 가입자인증모듈(SIM)카드, 송수신기, 커플러, LNA(Low Noise Amplifier, 저 노이즈 앰프), 듀플렉서 등을 포함하지만 이에 한정되지 않는다. 그리고 통신유닛(1310)은 무선통신에 의해 네트워크 및 기타 장치와 통신할 수 있다. 상기 무선통신으로서 GSM(Global System of Mobile communication), GPRS(General Packet Radio Service), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), LTE(Long Term Evolution), 전자메일, SMS(Short Messaging Service) 등을 포함하는 임의의 통신규격 또는 프로토콜을 이용해도 되지만 이에 한정되지 않는다.
메모리(1320)는 소프트웨어 프로그램 및 모듈을 저장하기 위한 것이며 프로세서(1380)는 메모리(1320)에 저장되어 있는 소프트웨어 프로그램 및 모듈을 실행하는 것을 통하여 각종 기능의 애플리케이션 및 데이터 처리를 실행한다. 메모리(1320)는 주로 프로그램 저장영역과 데이터 저장영역을 구비한다. 프로그램 저장영역에는 OS, 적어도 하나의 기능을 실행하는 애플리케이션(예를 들면 음성재생기능, 화상재생기능 등) 등이 저장된다. 데이터 저장영역에는 전자 장치(1300)의 사용에 의해 작성된 데이터(예를 들면 오디오 데이터, 전화부 등) 등이 저장된다. 또한, 메모리(1320)는 고속RAM(Random Access Memory)를 포함해도 되고 예를 들면 적어도 하나의 자기 디스크 메모리, 플래시 메모리 등 비휘발성 메모리 또는 기타 휘발성 SSD(solid state drive) 메모리를 포함해도 된다. 그리고 메모리(1320)는 프로세서(1380) 및 입력유닛(1330)이 메모리(1320)에 액세스할 수 있도록 메모리 제어기를 추가로포함해도 된다.
입력유닛(1330)은 숫자 또는 캐릭터 정보의 입력을 받고 사용자 설정 및 기능 제어에 관한 키보드, 마우스, 조이 스틱, 광학 볼이나 트랙 볼에 의한 신호입력을 발생하기 위한 것이다. 입력유닛(1330)은 터치센시티브표면(131) 및 기타 입력장치(132)를 포함해도 된다. 터치센시티브표면(131)은 터치 패널 또는 터치 패드라고도 불리우며 사용자가 그 표면위나 부근에 대한 터치 조작(예를 들면 사용자가 손가락이나 터치팬 등의 임의의 적합한 물건이나 부속품을 사용하여 터치센시티브표면(131) 위 혹은 터치센시티브표면(131) 부근에 대하여 진행하는 조작)을 수집함과 동시에 미리 설정된 프로그램에 따라 관련된 접속장치를 구동한다. 터치센시티브표면(131)은 선택적으로 터치 검출수단 및 터치 제어기 이 2 개의 부분을 포함해도 된다. 여기에서, 터치 검출수단은 사용자의 터치 위치를 검출함과 동시에 터치 조작에 의한 신호를 검출하고 그 터치 정보를 터치 제어기에 송신한다. 터치 제어기는 터치 검출수단으로부터 터치 정보를 수신하고 당해 정보를 접촉점 좌표로 변환하여 프로세서(1380)에 송신함과 동시에 프로세서(1380)로부터의 커맨드를 수신하여 실행한다. 또한, 저항식, 용량식, 적외선식 및 표면 탄성파식 등의 각종 방식으로 터치센시티브표면(131)을 실현할 수 있다. 입력유닛(1330)은 터치센시티브표면(131) 외에 기타 입력장치(132)를 추가로 포함해도 된다. 기타 입력장치(132)는 물리적인 키보드, 기능키(예를 들면 볼륨버튼, 스위치버튼 등), 트랙 볼, 마우스, 조이 스틱 등 중의 하나 또는 복수를 포함해도 되지만 이에 한정되지 않는다.
표시유닛(1340)은 사용자가 입력한 정보나 사용자에게 제공하는 정보 및 전자 장치(1300)의 각종 그래픽 사용자 인터페이스(GUI)를 표시하기 위한 것이며 이러한 그래픽 사용자 인터페이스는 도형, 텍스트, 아이콘, 비디오 및 그들의 임의의 조합으로 구성될 수 있다. 표시유닛(1340)은 표시패널(141)을 포함할 수 있다. 선택적으로 표시패널(141)은 LCD(Liquid Crystal Display), OLED(Organic Light-Emitting Diode) 등 형태로 구성되어도 된다. 또한, 터치센시티브표면(131)이 표시패널(141)을 덮게끔 설치되고 터치센시티브표면(131)이 그 표면 또는 부근에 대한 터치조작을 검출하면 그 검출 결과를 프로세서(1380)에 전송하여 터치 이벤트의 타입을 확인하게 하고 그 후 프로세서(1380)가 터치 이벤트의 타입에 근거하여 표시패널(141) 상에 대응되는 시각적 출력을 제공하도록 구성되어도 된다. 도 10에 있어서, 터치센시티브표면(131)과 표시패널(141)은 2 개의 독립적인 부품으로서 출력 및 입력 기능을 실현하게끔 구성되어 있지만 터치센시티브표면(131)과 표시패널(141)을 집적 구성하여 입력 및 출력 기능을 실현하는 실시예도 가능하다.
전자 장치(1300)는 예를 들면 광센서, 모션센서 및 기타 센서 등 적어도 하나의 센서(1350)를 추가로 포함해도 된다. 광센서는 주변광센서와 근접센서를 포함해도 되는데 주변광센서는 주변광의 밝기에 근거하여 표시패널(141)의 휘도를 조절할 수 있고 근접센서는 전자 장치(1300)가 귓가까지 이동하면 표시패널(141) 및/또는 백라이트를 오프시킨다. 모션센서의 일종으로서의 중력가속도센서는 각 방향(일반적으로 3축)에서의 가속도의 크기를 검출할 수 있고 정지상태에서는 중력의 크기 및 그 방향을 검출할 수 있으므로 휴대폰의 자세를 인식하는 애플리케이션(예를 들면 화면의 횡종방향의 변환, 게임, 자력계의 자세교정), 진동인식에 관한 기능(예를 들면 보수계, 타격) 등에 사용된다. 전자 장치(1300)는 자이로스코프, 기압계, 습도계, 온도계, 적외선센서 등의 기타 센서를 추가로 구비해도 되는데 여기에서 그 구체적인 설명은 생략한다.
오디오회로(1360), 스피커(161), 마이크(162)는 사용자와 전자 장치(1300) 간의 오디오 인터페이스를 제공한다. 오디오회로(1360)는 수신한 오디오 데이터로부터 변환된 전기 신호를 스피커(161)에 전송하고 스피커(161)에 의하여 음성 신호로 변환하여 출력한다. 반면, 마이크(162)는 수집한 음성 신호를 전기 신호로 변환하고 오디오회로(1360)가 당해 전기 신호를 수신한 후 오디오 데이터로 변환하고 오디오 데이터를 프로세서(1380)에 전송하여 처리한 후 RF회로(110)를 경유하여 예를 들면 기타 단말기에 전송하거나 또는 오디오 데이터를 메모리(1320)에 송신하여 추가로 처리하도록 한다. 오디오회로(1360)는 전자 장치(1300)가 외부의 이어폰과 통신할 수 있도록 이어플러그 잭을 추가로 포함해도 된다.
당해 전자 장치는 무선통신을 실현하기 위하여 무선통신유닛(1370)을 구비해도 된다. 당해 무선통신유닛(1370)은 WiFi(Wireless Fidelity)모듈이여도 된다. WiFi는 근거리 무선통신기술에 속하며 사용자에게 무선 광대역 인터넷 액세스를 제공하므로 사용자는 전자 장치(1300)의 무선통신유닛(1370)을 이용하여 전자메일의 송수신, 웹 사이트의 열람, 스트리밍 미디어의 액세스 등을 진행할 수 있다. 비록 도 10에서 무선통신유닛(1370)을 도시하고 있지만 당해 무선통신유닛(1370)은 전자 장치(1300)에 있어서 불가결의 구성이 아니며 본 발명의 취지를 변경하지 않는 범위내에서 수요에 따라 생략할 수 있음을 이해해야 한다.
프로세서(1380)는 전자 장치(1300)의 제어 센터이며 각종 인터페이스 및 회로를 경유하여 휴대폰 전체의 각 부분에 접속되며 메모리(1320) 내에 저장된 소프트웨어 프로그램 및/또는 모듈을 실행 또는 작동시킴과 동시에 메모리(1320) 내에 저장되어 있는 데이터를 호출하는 것을 통하여 전자 장치(1300)의 각종 기능의 실행 및 데이터의 처리를 실현하며 따라서 휴대폰 전체를 제어한다. 선택적으로 프로세서(1380)는 하나 또는 복수의 처리 코어를 포함해도 되고 애플리케이션 프로세서와 모뎀 프로세서를 집적하여 구성되어도 된다. 여기에서 애플리케이션 프로세서는 주로 OS, 사용자 인터페이스 및 애플리케이션 등을 처리하고 모뎀 프로세서는 주로 무선통신을 처리한다. 그리고 상기 모뎀 프로세서가 프로세서(1380)에 집적되지 않아도 됨을 이해해야 한다.
전자 장치(1300)는 각 부분에 전력을 공급하는 전원(1390)(예를 들면 배터리)를 추가로 포함하고 당해 전원(1390)은 전원관리시스템을 통하여 프로세서(1380)에 논리적으로 접속되어 전원관리시스템을 통하여 충전?방전관리 및 전력관리 등 기능을 실현할 수 있다. 전원(1390)은 하나 또는 하나 이상의 직류 또는 교류 전원, 재충전시스템, 전원고장검출회로, 전원 컨버터 또는 인버터, 전원상태 인티케이터 등 임의의 어셈블리를 추가로 포함해도 된다.
전자 장치(1300)는 비록 도시되지는 않았지만 카메라, 블루투스모듈 등을 추가로 포함해도 되며 여기에서 그 구체적인 설명은 생략한다.
전자기기(1300)는 메모리 및 메모리에 저장되는 하나 이상의 프로그램을 포함하고, 하나 이상의 프로세서로 수행하도록 배치된다. 상기 하나 이상의 프로그램에 포함된 명령어는 전자책 문서 처리방법을 실행하기 위한 것인 바,
전자책 문서를 획득하는 동작,
미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을 분할하여, 복수의 세그멘트를 생성하는 동작,
상기 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 동작,
상기 세그멘트 그룹중에서 하나의 세그멘트를 선택하여, 상기 세그멘트를 현재 세그멘트로 하는 동작,
상기 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 동작,
상기 레이아웃 데이터에 의하여 페이지 이미지를 생성하는 동작을 진행하는 명령어를 포함한다.
상기 방법과 관련된 구체적인 실현방식은 상기 방법 부분을 참조할 수 있기에 여기서는 더이상 설명하지 않는다.
설명해야 할 것은, 도1 내지 도10에 도시된 실시예는 단지 본 발명에 의해 소개된 바람직한 실시예일 뿐, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자들은 이에 기초하여 더욱 많은 실시예를 완전히 설계해 낼 수 있기에, 여기서 더이상 설명하지 않기로 한다.
본 명세서에서, 각각의 실시예들은 점차적으로 서술하는 방식으로 설명하였는 바, 매개 실시예들은 중점적으로 설명한 부분은 모두 기타 실시예들과 다른 점이고, 각각의 실시예 사이의 동일하거나 유사한 부분으로서 참조하면 된다. 실시예가 공개한 장치에 있어서, 기타 실시예가 공개한 방법과 서로 대응되므로, 비교적 간단하게 설명하였지만 관련된 부분은 방법 부분의 설명을 참조하면 된다.
본 기술분야의 통상의 지식을 가진 자들에게 있어서, 많은 상이한 공법과 기술 중의 임의의 하나를 사용하여 정보, 메시지 또는 신호를 표시할 수 있다는 것을 이해할 것이다. 예를 들면, 상기 설명 중에서 언급한 메시지, 정보는 모두 전압, 전류, 전자파, 자기장 또는 자성입자, 라이트 필드(light field) 또는 이상의 임의의 조합일 수 있다.
당업자는 본 발명에 기재된 각종 예시적인 논리 블럭, 모듈, 회로 및 알고리즘 스텝이 전자 하드웨어, 컴퓨터 소프트웨어 또는 양자의 조합에 의해 실현가능함을 이해해야 한다. 하드웨어와 소프트웨어 간의 이러한 호환성을 명확히 설명하기 위하여 각종 예시적인 컴포넌트, 블럭, 모듈, 회로 및 단계의 기능에 관하여 상기에서 통상적인 설명을 진행했다. 이러한 기능을 소프트웨어에 의해 실현할지 아니면 하드웨어에 의해 실현할지는 구체적인 애플리케이션 및 시스템 전체에 대한 설계 상의 제약에 의해 선택한다. 당업자는 구체적인 애플리케이션 각각에 있어서 각종 방식을 선택하여 상기 기능을 실현해도 되며 이러한 선택을 본 발명의 범위를 벗어나는 것으로 분석해서는 안된다.
이상의 개시 내용과 결부하여 설명하는 방법 또는 알고리즘 단계는 하드웨어, 프로세서에 의해 실행되는 소프트웨어모듈 또는 이 양자의 조합에 직접 포함되어도 된다. 소프트웨어모듈은 RAM메모리, 플래시 메모리, ROM메모리, EPROM메모리, EEPROM메모리, 레지스터, 하드디스크, 리무버블 디스크, CD-ROM 또는 당해 분야의 공지의 기타 형태로 존재하는 임의의 기억매체에 저장되어도 된다.
공개된 실시예의 상기 설명에 있어서, 본 기술분야의 통상의 지식을 가진 자들이 본 발명을 실현 또는 사용하도록 하기 위한 것이다.
이런 실시예에 대한 여러가지 수정은 본 기술분야의 통상의 지식을 가진 자에게 있어서 자명한 것이므로, 본문에서 정의한 일반적인 원리는 본 발명의 사상 또는 범위를 벗어나지 않는 상황하에서, 기타 실시예에서 실현될 수 있다. 따라서, 본 발명은 본문에 따른 이런 실시예에 의해 한정되는 것이 아니라, 본문에서 공개된 원리와 신규특징과 일치하는 제일 넓은 범위에 부합되어야 할 것이다.

Claims (19)

  1. 전자책 문서를 획득하는 단계와,
    미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을, 복수의 세그멘트로 분할하는 단계와,
    상기 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 단계와,
    상기 세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하는 단계와,
    상기 현재 세그멘트의 내용을 분석하여 레이아웃(layout) 데이터를 생성하는 단계와,
    상기 레이아웃 데이터에 의하여 페이지 이미지를 생성하는 단계를 포함하는
    전자책 문서 처리방법.
  2. 제 1 항에 있어서,
    레이아웃 데이터를 생성하는 단계 이후에,
    상기 세그멘트 그룹에서의 상기 현재 세그멘트의 위치 정보를 기록하는 단계와,
    상기 레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하고, 만약 상기 데이터량이 상기 미리 설정된 값보다 작으면 상기 위치 정보에 의하여 상기 현재 세그멘트의 다음 세그멘트를 선택하고, 상기 다음 세그멘트를 현재 세그멘트로서 사용하고, 상기 현재 세그멘트의 내용을 분석하는 단계로 되돌아 가는 단계를 더 포함하는
    전자책 문서 처리방법.
  3. 제 1 항에 있어서,
    상기 미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을 분할하는 단계는
    세그멘트 크기를 결정하는 단계와,
    상기 전자책 문서의 내용을 상기 세그멘트 크기와 동일한 크기의 복수의 세그멘트로 분할하는 단계를 포함하는
    전자책 문서 처리방법.
  4. 제 1 항에 있어서,
    상기 세그멘트의 시작점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 상기 세그멘트의 시작점에서 이전 세그멘트로 이동하여 상기 정보의 시작점을 결정하고, 상기 정보의 시작점을 상기 세그멘트의 시작점과 상기 이전 세그멘트의 끝점으로서 사용하는 단계를 더 포함하는
    전자책 문서 처리방법.
  5. 제 1 항에 있어서,
    상기 세그멘트의 시작점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 상기 세그멘트의 시작점에서 상기 세그멘트의 끝점쪽으로 이동하여 상기 정보의 끝점을 결정하고, 상기 정보의 끝점을 상기 세그멘트의 시작점과 이전 세그멘트의 끝점으로서 사용하는 단계를 더 포함하는
    전자책 문서 처리방법.
  6. 제 1 항에 있어서,
    상기 세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 상기 세그멘트의 끝점에서 다음 세그멘트로 이동하여 상기 정보의 끝점을 결정하고, 상기 정보의 끝점을 상기 세그멘트의 끝점과 상기 다음 세그멘트의 시작점으로서 사용하는 단계를 더 포함하는
    전자책 문서 처리방법.
  7. 제 1 항에 있어서,
    상기 세그멘트의 끝점 부분의 정보가 완전한지를 판정하고, 만약 완전하지 않으면 상기 세그멘트의 끝점에서 상기 세그멘트의 시작점쪽으로 이동하여 상기 정보의 시작점을 결정하고, 상기 정보의 시작점을 상기 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하는 단계를 더 포함하는
    전자책 문서 처리방법.
  8. 제 1 항에 있어서,
    상기 레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되는지를 판정하고, 만약 사용되지 않는다면, 상기 레이아웃 원자 데이터를 삭제하는 단계를 더 포함하는
    전자책 문서 처리방법.
  9. 제 1 항에 있어서,
    상기 레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 점유한 메모리가 미리 설정된 값보다 큰지를 판정하고, 만약 상기 메모리가 미리 설정된 값보다 크면 상기 레이아웃 원자 데이터를 삭제하는 단계를 더 포함하는
    전자책 문서 처리방법.
  10. 전자책 문서를 획득하기 위한 획득 모듈과,
    미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을 복수의 세그멘트로 분할하기 위한 분할 모듈과,
    상기 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하기 위한 구성 모듈과,
    상기 세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하기 위한 선택 모듈과,
    상기 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하기 위한 분석 모듈과,
    상기 레이아웃 데이터에 의하여 페이지 이미지를 생성하기 위한 생성 모듈을 포함하는
    단말기.
  11. 제 10 항에 있어서,
    상기 세그멘트 그룹에서의 상기 현재 세그멘트의 위치 정보를 기록하기 위한 기록 모듈과,
    상기 레이아웃 데이터의 데이터량이 미리 설정된 값보다 작은지를 판정하기 위한 제1 판정 모듈과,
    상기 데이터량이 미리 설정된 값보다 작을 시, 상기 위치 정보에 의하여 상기 현재 세그멘트의 다음 세그멘트를 선택하고, 상기 다음 세그멘트를 현재 세그멘트로서 사용하고, 상기 분석 모듈을 실행하도록 되돌아가기 위한 제1 실행 모듈을 더 포함하는
    단말기.
  12. 제 10 항에 있어서,
    상기 분할 모듈은
    세그멘트 크기를 결정하기 위한 세그멘트 크기 결정 유닛과,
    상기 전자책 문서의 내용을 상기 세그멘트 크기와 동일한 크기의 복수의 세그멘트로 분할하기 위한 분할 유닛을 포함하는
    단말기.
  13. 제 10 항에 있어서,
    상기 세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제2 판정 모듈과,
    상기 세그멘트의 시작점 부분의 정보가 완전하지 않을 시, 상기 세그멘트의 시작점에서 앞으로 이동하여 레이블의 시작점을 결정하고, 상기 레이블의 시작점을 상기 세그멘트의 시작점으로서 사용하기 위한 제2 실행 모듈을 더 포함하는
    단말기.
  14. 제 10 항에 있어서,
    상기 세그멘트의 시작점 부분의 정보가 완전한지를 판정하기 위한 제3 판정 모듈과,
    상기 세그멘트의 시작점 부분의 정보가 완전하지 않다고 판정되었을 시, 상기 세그멘트의 시작점에서 상기 세그멘트의 끝점쪽으로 이동하여 상기 정보의 끝점을 결정하고, 상기 정보의 끝점을 상기 세그멘트의 시작점과 이전 세그멘트의 끝점으로서 사용하기 위한 제3 실행 모듈을 더 포함하는
    단말기.
  15. 제 10 항에 있어서,
    상기 세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제4 판정 모듈과,
    상기 세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 상기 세그멘트의 끝점에서 다음 세그멘트로 이동하여 상기 정보의 끝점을 결정하고, 상기 정보의 끝점을 상기 세그멘트의 끝점과 상기 다음 세그멘트의 시작점으로서 사용하기 위한 제4 실행 모듈을 더 포함하는
    단말기.
  16. 제 10 항에 있어서,
    상기 세그멘트의 끝점 부분의 정보가 완전한지를 판정하기 위한 제5 판정 모듈과,
    상기 세그멘트의 끝점 부분의 정보가 완전하지 않을 시, 상기 세그멘트의 끝점에서 상기 세그멘트의 시작점쪽으로 이동하여 상기 정보의 시작점을 결정하고, 상기 정보의 시작점을 상기 세그멘트의 끝점과 다음 세그멘트의 시작점으로서 사용하기 위한 제5 실행 모듈을 더 포함하는
    단말기.
  17. 제 10 항에 있어서,
    상기 레이아웃 데이터 중에 포함된 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되었는지를 판정하기 위한 제6 판정 모듈과,
    상기 레이아웃 원자 데이터가 미리 설정된 시간 내에 사용되지 않았을 시, 상기 레이아웃 원자 데이터를 삭제하기 위한 제6 실행 모듈을 더 포함하는
    단말기.
  18. 제 10 항에 있어서,
    상기 레이아웃 데이터 내에 포함된 레이아웃 원자 데이터가 점유한 메모리가 미리 설정된 값보다 큰지를 판정하기 위한 제7 판정 모듈과,
    상기 레이아웃 원자 데이터가 점유한 메모리가 미리 설정된 값보다 클 시, 상기 레이아웃 원자 데이터를 삭제하기 위한 제7 실행 모듈을 더 포함하는
    단말기.
  19. 메모리, 및
    상기 메모리에 저장되어 하나 이상의 프로세서에 의해 실행되는 하나 이상의 프로그램을 포함하고,
    상기 하나 이상의 프로그램은
    전자책 문서를 획득하는 것과,
    미리 설정된 분할방식에 따라 상기 전자책 문서의 내용을 복수의 세그멘트로 분할하는 것과,
    상기 복수의 세그멘트로 하나의 순서화된 세그멘트 그룹을 구성하는 것과,
    상기 세그멘트 그룹중에서 하나의 세그멘트를 현재 세그멘트로서 선택하는 것과,
    상기 현재 세그멘트의 내용을 분석하여 레이아웃 데이터를 생성하는 것과,
    상기 레이아웃 데이터에 의하여 페이지 이미지를 생성하는 것을 수행하기 위한 명령어를 포함하는
    전자기기.
KR1020147021518A 2013-10-16 2014-05-14 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체 KR20150055600A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310485775.8A CN103593333B (zh) 2013-10-16 2013-10-16 一种电子书文档的处理方法、终端及电子设备
CN201310485775.8 2013-10-16
PCT/CN2014/077413 WO2015055002A1 (zh) 2013-10-16 2014-05-14 一种电子书文档的处理方法、终端及电子设备

Publications (1)

Publication Number Publication Date
KR20150055600A true KR20150055600A (ko) 2015-05-21

Family

ID=50083483

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147021518A KR20150055600A (ko) 2013-10-16 2014-05-14 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체

Country Status (8)

Country Link
EP (1) EP2863320B1 (ko)
JP (1) JP6118418B2 (ko)
KR (1) KR20150055600A (ko)
CN (1) CN103593333B (ko)
BR (1) BR112014018483A8 (ko)
MX (1) MX2014009068A (ko)
RU (1) RU2617388C2 (ko)
WO (1) WO2015055002A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593333B (zh) * 2013-10-16 2017-09-22 小米科技有限责任公司 一种电子书文档的处理方法、终端及电子设备
CN105224540A (zh) * 2014-05-29 2016-01-06 广州市动景计算机科技有限公司 页面排版方法及装置
CN107464011A (zh) * 2017-07-04 2017-12-12 林聪发 一种石板排版方法、装置、终端设备及可读存储介质
CN107861935A (zh) * 2017-11-13 2018-03-30 掌阅科技股份有限公司 躲避手指按压位置的文字重排方法、终端及存储介质
CN107967243A (zh) * 2017-11-22 2018-04-27 语联网(武汉)信息技术有限公司 一种支持用户自主断句的处理方法
CN109597980A (zh) * 2018-12-07 2019-04-09 万兴科技股份有限公司 Pdf文档分割方法、装置及电子设备
CN111191418B (zh) * 2019-12-06 2024-01-12 腾讯科技(深圳)有限公司 在线文档处理方法、装置、电子设备及计算机存储介质
CN112100176B (zh) * 2020-09-03 2024-01-19 北京得到信息科技有限公司 一种电子书阅读进度计算方法及系统
CN113515928B (zh) * 2021-07-13 2023-03-28 抖音视界有限公司 电子文本生成方法、装置、设备及介质
CN113946774B (zh) * 2021-10-26 2022-04-08 掌阅科技股份有限公司 书籍网页的跳转方法、计算设备及计算机存储介质
CN115146608A (zh) * 2022-05-13 2022-10-04 北京字节跳动网络技术有限公司 内容排版方法、装置、设备和存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0612411A (ja) * 1992-06-25 1994-01-21 Sanyo Electric Co Ltd 文書処理装置
US5623679A (en) * 1993-11-19 1997-04-22 Waverley Holdings, Inc. System and method for creating and manipulating notes each containing multiple sub-notes, and linking the sub-notes to portions of data objects
US7143181B2 (en) * 2000-08-31 2006-11-28 Yohoo! Inc. System and method of sending chunks of data over wireless devices
JP2004280278A (ja) * 2003-03-13 2004-10-07 Sharp Corp データ処理装置、データ処理方法、データ処理プログラム、および、記録媒体
JP3905851B2 (ja) * 2003-03-24 2007-04-18 株式会社東芝 構造化文書の分割方法及びプログラム
US8977603B2 (en) * 2005-11-22 2015-03-10 Ebay Inc. System and method for managing shared collections
US20080301545A1 (en) * 2007-06-01 2008-12-04 Jia Zhang Method and system for the intelligent adaption of web content for mobile and handheld access
WO2010063070A1 (en) * 2008-12-03 2010-06-10 Ozmiz Pty. Ltd. Method and system for displaying data on a mobile terminal
CN102096674B (zh) * 2009-12-11 2014-01-01 华为技术有限公司 电子书发布和下载的方法、设备及系统
CN102214441A (zh) * 2010-04-01 2011-10-12 上海易狄欧电子科技有限公司 在电子书阅读器上打开文本格式电子书的方法
US9069754B2 (en) * 2010-09-29 2015-06-30 Rhonda Enterprises, Llc Method, system, and computer readable medium for detecting related subgroups of text in an electronic document
CN102045388B (zh) * 2010-11-25 2013-05-29 汉王科技股份有限公司 在线阅读装置及在线阅读方法
RU118085U1 (ru) * 2012-01-19 2012-07-10 Плеадес Паблишинг, Лтд. Электронная книга
CN102682093B (zh) * 2012-04-25 2014-09-17 广州市动景计算机科技有限公司 一种移动浏览器网页分段加载方法及系统
CN102750086A (zh) * 2012-05-31 2012-10-24 上海必邦信息科技有限公司 电子设备间实现无线分享显示页面控制的方法
CN103593333B (zh) * 2013-10-16 2017-09-22 小米科技有限责任公司 一种电子书文档的处理方法、终端及电子设备

Also Published As

Publication number Publication date
EP2863320A3 (en) 2015-09-02
MX2014009068A (es) 2015-08-27
BR112014018483A2 (ko) 2017-06-20
WO2015055002A1 (zh) 2015-04-23
RU2015122426A (ru) 2017-01-10
CN103593333A (zh) 2014-02-19
JP2016502716A (ja) 2016-01-28
CN103593333B (zh) 2017-09-22
BR112014018483A8 (pt) 2017-07-11
EP2863320A2 (en) 2015-04-22
JP6118418B2 (ja) 2017-04-19
RU2617388C2 (ru) 2017-04-24
EP2863320B1 (en) 2019-03-27

Similar Documents

Publication Publication Date Title
KR20150055600A (ko) 전자책 문서 처리방법, 단말기, 전자기기, 프로그램 및 기록매체
EP2990930B1 (en) Scraped information providing method and apparatus
CN106775637B (zh) 一种应用程序的页面显示方法和装置
CN103699292B (zh) 一种进入文本选择模式的方法和装置
US10186244B2 (en) Sound effect processing method and device, plug-in unit manager and sound effect plug-in unit
US9740671B2 (en) Method and apparatus of generating a webpage from an original design file comprising layers
CN103543913A (zh) 一种终端设备操作方法、装置和终端设备
US20140365892A1 (en) Method, apparatus and computer readable storage medium for displaying video preview picture
CN103823835A (zh) 一种电子书目录的处理方法、装置及终端设备
KR101600999B1 (ko) 문자를 선택하는 방법, 장치, 단말기장치, 프로그램 및 기록매체
EP2869191A1 (en) Window displaying method of mobile terminal and mobile terminal
CN104102419A (zh) 页面显示方法、装置和终端设备
CN103702297A (zh) 短信增强方法、装置及系统
CN104104711A (zh) 阅读历史处理方法和装置
RU2616173C2 (ru) Способ, устройство и терминальное устройство для адаптации страницы
EP2869604B1 (en) Method, apparatus and device for processing a mobile terminal resource
CN103617164A (zh) 网页预取方法、装置及终端设备
US20170339230A1 (en) Method and apparatus for file management
CN103823851A (zh) 网页显示方法和装置
CN103699571A (zh) 一种文件同步方法、装置及电子设备
EP3043252A1 (en) Method and electronic device for displaying electronic document
US20150106697A1 (en) Method and electronic device for processing e-book document
CN104111864A (zh) 应用操作的录制方法、回放方法及相应的装置
CN114860674B (zh) 文件处理方法、智能终端及存储介质
CN107741839B (zh) 一种基于文本阅读器的文本显示方法和装置

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
AMND Amendment
E601 Decision to refuse application
AMND Amendment