KR102073262B1 - 전자책 제작 방법 및 장치 - Google Patents

전자책 제작 방법 및 장치 Download PDF

Info

Publication number
KR102073262B1
KR102073262B1 KR1020190067273A KR20190067273A KR102073262B1 KR 102073262 B1 KR102073262 B1 KR 102073262B1 KR 1020190067273 A KR1020190067273 A KR 1020190067273A KR 20190067273 A KR20190067273 A KR 20190067273A KR 102073262 B1 KR102073262 B1 KR 102073262B1
Authority
KR
South Korea
Prior art keywords
difficulty
book
text
specific
age group
Prior art date
Application number
KR1020190067273A
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 (주)이루미에듀테크
Priority to KR1020190067273A priority Critical patent/KR102073262B1/ko
Application granted granted Critical
Publication of KR102073262B1 publication Critical patent/KR102073262B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

전자책 제작 방법 및 장치가 개시된다. 일실시예에 따른 전자책 제작 방법은 전자책에 포함될 텍스트 및 이미지들을 입력받는 단계; 입력된 상기 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하는 단계; 및 상기 전자책의 난이도에 기초하여, 상기 텍스트 및 상기 이미지들이 상기 전자책에 배치되는 레이아웃을 미리 설정된 표준에 따라 자동 설정하는 단계를 포함할 수 있다.

Description

전자책 제작 방법 및 장치{METHOD AND APPARATUS OF PRODUCING EBOOKS}
아래 실시예들은 전자책을 제작하는 기술에 관한 것이다.
종이책으로 제공되던 텍스트, 이미지, 및 문제 등으로 이루어진 콘텐츠들이 최근에 전자책으로 제공 및 대체되고 있다. 독자들은 PC, iMac, 노트북, MacBook, 태블릿, iPad, e북 리더, 아마존의 Kindle 등의 장치에서 전자책 뷰어 소프트웨어를 통해 전자책을 감상할 수 있다. 전자책의 파일 형식으로는 ePUB(electronic publication), PDF(portable document format), AZW(Amazon Word), Amazon Kindle Format 등이 있다.
이 중에서, ePUB는 국제 디지털 출판 포럼(IDPF, International Digital Publishing Forum)에서 전자출판물의 표준화된 규격을 공개하면서 제시된, 전 세계적으로 많이 사용되는 개방형 자유 전자서적 표준이다. ePUB은 웹(web) 표준을 기반으로 하고 있으므로, ePUB 표준 규격에 따라 전자책을 제작하는 주체는 웹페이지 구성을 표현하는 언어인 HTML(Hypertext Markup Language); 웹페이지를 디자인하는 언어인 CSS(Cascading Style Sheets); 객체 기반의 스크립트 프로그래밍 언어 Javascript 등을 이용하여 텍스트; 이미지; 하이퍼링크; 소리; 동영상 등 웹페이지를 만드는데 사용되는 기술들을 전자책 제작에 그대로 적용할 수 있다.
특히, 전자책의 제작과 관련하여, 기존의 종이책 제작 방식에서는 활용할 수 없었던 기술들을 이용하여, 보다 수월하게 책을 제작하면서도, 책에 보다 양질의 콘텐츠를 담을 수 있는 전자책 제작 기술에 대한 수요가 증가하고 있다. 즉, 종래에는 저자들이 자신의 경험이나 전문 지식에 의존하여 종이책의 텍스트와 더불어 포함될 이미지들을 선별하고 종이책의 레이아웃을 디자인했었다. 그러나 최근에는 저자의 사용자 단말과 전자책 제작을 도와줄 수 있는 서버가 서로 연동되어, 저자가 전자책을 제작하는데 필요한 다양한 지원을 받을 수 있다. 특히, 대용량 데이터베이스 및 고성능 처리 장치를 구비한 서버는 빅데이터, 인공 신경망 등을 활용하여 저자의 전자책 제작을 보다 효율적으로 도울 수 있다. 이러한 점에 기인하여, 서버의 빅데이터 및 인공 신경망의 지원을 바탕으로 보다 양질의 레이아웃과 콘텐츠를 포함하는 전자책을 보다 수월하게 제작할 수 있는 방법들이 점차 요청되고 있다.
실시예들은 전자책에 포함될 텍스트를 기초로, 향후 완성될 전자책의 난이도를 측정하고, 전자책의 난이도와 일대일 대응관계를 가지는 레이아웃을 작성된 텍스트 및 업로드된 이미지들에 자동으로 설정함으로써, 향후 완성될 전자책의 레이아웃을 전자책의 난이도에 맞추어 자동으로 설정해주는 과정을 제공하고자 한다.
또한, 실시예들은 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 서버로부터 획득하고, 작성된 문단들 중에서 획득한 단어들 또는 획득한 숙어들이 판별 조건 이상으로 포함된 문단을 판별하여, 해당 문단의 이해를 돕는 이미지를 인공 신경망으로부터 추천 받는 과정을 제공하고자 한다.
나아가, 실시예들은 상기 배경 기술에서 언급한 과제들 및 본 명세서에서 드러나는 해당 기술 분야의 과제들을 해결하기 위한 전자책 제작 방법 및 장치를 제공하고자 한다.
일실시예에 따른 방법은 전자책에 포함될 텍스트 및 이미지들을 획득하는 단계; 상기 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하는 단계; 및 상기 전자책의 난이도에 기초하여, 상기 텍스트 및 상기 이미지들이 상기 전자책에 배치되는 레이아웃을 미리 설정된 표준에 따라 자동 설정하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 레이아웃을 자동 설정하는 단계는, 상기 미리 설정된 표준에 따라 상기 텍스트의 글자 크기, 글자 간격, 줄 당 최대 글자 수, 줄 간격, 페이지 당 최대 글자 수, 페이지 당 최대 줄 수 중 적어도 하나 이상을 자동 설정하는 단계; 및 상기 미리 설정된 표준에 따라 상기 이미지들의 위치, 크기, 및 페이지 당 최대 이미지 수 중 적어도 하나 이상을 자동 설정하는 단계를 포함할 수 있다.
일실시예에 따르면, 전자책의 난이도를 결정하는 단계는, 전자책의 타겟 연령층을 획득하는 단계; 미리 데이터베이스화된 단어들과 일치하는 상기 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 상기 텍스트 내 숙어들 중 적어도 하나를 기초로 생성한 텍스트의 판별 값을 획득하는 단계를 포함하고, 상기 미리 설정된 결정 기준은 상기 텍스트의 판별 값이 미리 설정된 임계 범위에 포함되는 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 적합한 난이도라고 결정하고, 상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최대값을 초과할 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 어려운 난이도라고 결정하고, 상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최소값보다 미만일 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 쉬운 난이도라고 결정하는 기준일 수 있다.
일실시예에 따르면, 상기 미리 데이터베이스화된 단어들 및 상기 미리 데이터베이스화된 숙어들 각각은 연령층별로 독자들이 해당 단어 또는 해당 숙어를 어려워하는 정도를 기초로 생성한 연령층별 난이도 값을 가지며, 연령층별로 독자들이 특정 단어 또는 특정 숙어를 어려워하는 정도를 판단하는 과정은 미리 정의된 판단법에 따라 이루어질 수 있다.
일실시예에 따르면, 상기 미리 데이터베이스화된 단어들 중 특정 단어 또는 상기 미리 데이터베이스화된 숙어들 중 특정 숙어가 가지는 특정 연령층의 난이도 값은, 상기 특정 연령층의 독자들의 20% 이상 40% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 1; 상기 특정 연령층의 독자들의 40% 이상 60% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 2; 상기 특정 연령층의 독자들의 60% 이상 80% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 3; 상기 특정 연령층의 독자들의 80% 이상 90% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 4; 상기 특정 연령층의 독자들의 90% 이상이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 5; 상기 특정 연령층의 독자들의 20% 미만만 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 없거나 0일 수 있다.
일실시예에 따르면, 상기 텍스트의 판별 값은 텍스트 내 문단들의 판별 값을 합산한 값이며, 특정 문단의 판별 값은 상기 특정 문단에서 상기 미리 데이터베이스화된 단어들과 일치하는 단어들 및 상기 미리 데이터베이스화된 숙어들과 일치하는 숙어들 각각의 상기 특정 문단에서 반복된 횟수와 상기 타겟 연령층의 난이도 값을 곱한 값을 합산한 값일 수 있다.
일실시예에 따른 방법은, 상기 텍스트에서 적어도 하나 이상의 문단을 획득하는 단계; 미리 데이터베이스화된 단어들과 일치하는 획득한 문단 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 획득한 문단 내 숙어들 중 적어도 하나를 기초로 생성한 문단의 판별 값을 획득하는 단계; 상기 문단의 판별 값이 미리 설정된 판별 조건을 만족할 경우, 상기 문단을 포함하는 미리 설정된 영역에 이미지가 포함되어 있는지 여부를 확인하는 단계; 및 상기 미리 설정된 영역에 이미지가 포함되지 않은 것으로 확인된 경우, 상기 미리 설정된 영역에 이미지를 추가할 것을 알리고, 추천 이미지를 출력하는 단계를 더 포함할 수 있다.
일실시예에 따르면, 상기 추천 이미지는 상기 문단을 입력 받은 미리 학습된 인공 신경망을 통해 출력될 수 있다.
일실시예에 따른 장치는 하드웨어와 결합되어 상술한 방법들 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램에 의해 제어될 수 있다.
일실시예에 따른 장치는 전자책에 포함될 텍스트 및 이미지들을 획득하고, 상기 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하고, 상기 전자책의 난이도에 기초하여, 상기 텍스트 및 상기 이미지들이 상기 전자책에 배치되는 레이아웃을 자동 설정하는 프로세서를 포함할 수 있다.
실시예들은 전자책에 포함될 텍스트를 기초로, 향후 완성될 전자책의 난이도를 측정하고, 전자책의 난이도와 일대일 대응관계를 가지는 레이아웃을 작성된 텍스트 및 업로드된 이미지들에 자동으로 설정함으로써, 향후 완성될 전자책의 레이아웃을 전자책의 난이도에 맞추어 자동으로 설정해주는 과정을 제공할 수 있다.
이를 통해, 사용자는 향후 완성될 전자책의 레이아웃을 페이지별로 일일이 수동으로 설정할 필요 없이, 전자책의 전체 레이아웃을 자동으로 설정할 수 있으므로, 효율적으로 전자책을 제작할 수 있다. 나아가, 자동으로 설정되는 레이아웃은 텍스트의 난이도 수준에 맞추어 자동으로 설정되므로, 사용자들은 타겟 연령층의 독자들이 보다 읽기 좋은 전자책을 제작할 수 있다.
실시예들은 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 서버로부터 획득하고, 작성된 문단들 중에서 획득한 단어들 또는 획득한 숙어들이 판별 조건 이상으로 포함된 문단을 판별하여, 해당 문단의 이해를 돕는 이미지를 인공 신경망으로부터 추천 받는 과정을 제공할 수 있다.
이를 통해, 사용자들은 타겟 연령층의 독자들이 보다 이해하기 용이한 전자책을 제작할 수 있다.
한편, 실시예들에 따른 효과는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일실시예에 따른 서버 및 사용자 단말을 설명하기 위한 도면이다.
도 2 내지 4는 일실시예에 따른 사용자 단말의 GUI를 설명하기 위한 도면들이다.
도 5는 일실시예에 따른 레이아웃을 자동 설정하는 동작을 설명하기 위한 순서도이다.
도 6은 일실시예에 따른 전자책의 난이도를 결정하는 동작을 설명하기 위한 순서도이다.
도 7은 일실시예에 따른 데이터베이스화된 단어들 및 숙어들을 설명하기 위한 도면이다.
도 8은 일실시예에 따른 레이아웃을 설명하기 위한 도면이다.
도 9는 일실시예에 따른 이미지 추천 동작을 설명하기 위한 순서도이다.
도 10은 일실시예에 따른 인공 신경망의 학습 과정을 설명하기 위한 흐름도이다.
도 11은 일실시예에 따른 장치의 구성의 예시도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.
도 1은 일실시예에 따른 서버 및 사용자 단말을 설명하기 위한 도면이다.
서버(100)는 하드웨어 및 소프트웨어의 조합으로, 서버(100)를 운영하는 주체의 자체 서버 또는 대형 클라우드 서버(cloud server)의 일부의 형태로 구현될 수 있다. 서버는 도 7과 같은 모습으로 단어들 및 숙어들을 미리 데이터베이스화하여 저장하고 있을 수 있다. 미리 데이터베이스화된 단어들 및 숙어들은 각각 연령층별로 독자들이 해당 단어 또는 해당 숙어를 어려워하는 정도를 나타내는 연령층별 난이도 값을 가지고 있을 수 있다. 미리 데이터베이스화된 단어들 및 숙어들은 사용자 단말(110)의 사용자가 제작할 전자책의 난이도를 판별하는 자료로 사용될 수 있으며, 사용자가 작성한 텍스트의 각 문단의 난이도를 판별하는 자료로도 사용될 수 있다.
서버(100)는 사용자 단말(110)과 통신할 수 있다. 서버100)를 운영하는 주체는 서버(100)를 통해 사용자가 작성한 텍스트 및 이미지를 기초로 전자책의 레이아웃을 자동 설정해주는 서비스를 제공할 수 있으며, 또한, 사용자가 작성한 텍스트 내의 특정 문단에서 특정 연령층의 독자들이 어려워하는 단어들 및 숙어들이 많이 포함된 경우, 해당 문단의 난이도 있는 단어들 및 숙어들을 설명할 수 있는 이미지를 추천하는 서비스를 제공할 수 있다. 즉, 사용자 단말(110)의 사용자는 서버(100)를 운영하는 주체가 제공하는 서비스를 통해, 타겟 연령층의 독자들이 내용을 이해하기 용이한 전자책을 효율적으로 제작할 수 있다.
사용자 단말(110)은 하드웨어와 소프트웨어의 조합으로, 하드웨어는 직업, 교육, 또는 취미의 목적으로 전자책을 제작할 수 있는 컴퓨터 장치일 수 있으며, 구체적인 형태, 종류, 크기, 제조사 등에는 구애됨이 없다. 구체적으로, 사용자 단말(110)은 데스크탑 PC, iMac, 노트북, MacBook, 태블릿 등일 수 있다. 사용자 단말(110)에는 서버(100)를 운영하는 주체가 배포한 어플리케이션이 설치될 수 있다.
사용자 단말(110)은 자체적으로 또는 서버(100)를 운영하는 주체가 배포한 어플리케이션을 통해 서버(100)와 통신할 수 있다. 사용자 단말(110)은 서버(100)와 연동하여 또는 단독으로, 사용자가 작성한 텍스트 및 업로드한 이미지들을 위한 전자책 레이아웃을 자동으로 설정해 줄 수 있다. 또한, 향후 완성될 전자책의 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들이 많이 포함된 문단 내의 해당 단어들 및 해당 숙어들을 설명할 수 있는 추천 이미지를 획득할 수 있다. 또한, 추천 이미지가 도움이 됐는지를 여부에 대한 평가를 서버(100)로 전송할 수 있다. 즉, 사용자는 사용자 단말(110)을 사용함으로써 타겟 연령층의 독자들이 내용을 이해하기 용이한 전자책을 효율적으로 제작할 수 있다.
서버(100) 및 사용자 단말(110)은 기능들의 일부를 수행하도록 인공 신경망(artificial neural network)을 포함할 수 있다. 서버(100) 및 사용자 단말(110)은 인공 신경망의 연산 처리를 위해 CNN 가속기, NPU(Neural Processing Unit) 또는 VPU(Vision Processing Unit) 등을 포함할 수 있다. 서버(100) 및 사용자 단말(110)은 위 부재들을 통해 인공 신경망의 연산을 수행함으로써, 인공 신경망의 처리에서 요구되는 데이터 로드 횟수, 연산 횟수(예를 들어, MAC의 연산 횟수)를 줄여 메모리를 절감하고 처리 속도를 높일 수 있으므로, 제한된 리소스를 사용하는 환경에 적합할 수 있다.
한편, 서버(100) 및 사용자 단말(110)은 유선 또는 무선 인터넷 환경, LAN, LTE, 5G, WiFi 등을 비롯한 다양한 네트워크를 이용해 데이터를 주거나 받을 수 있다. 서버(100) 및 사용자 단말(110)은 유무선 네트워크를 위한 통신 안테나; 통신 단자; 하드웨어; 소프트웨어; 및 이들의 조합을 포함할 수 있으며, 유무선 네트워크를 위한 표준 통신 기술 및/또는 프로토콜들을 사용할 수 있다.
이하에서, 서버(100) 또는 사용자 단말(110)의 개별 동작을 중심으로 실시예들이 기술되지만, 실시예들은 주체나 양상에 의해 제한되지 않고 다양한 응용예가 채용될 수 있다. 이하, 도 2 내지 4를 참조하여, 사용자 단말(110)의 GUI(graphical user interface)와 관련된 실시예들이 설명된다. 도 5를 참조하여, 레이아웃을 자동 설정하는 동작과 관련된 실시예가 설명된다. 도 6을 참조하여, 전자책의 난이도를 결정하는 동작과 관련된 실시예가 설명된다. 도 7을 참조하여, 데이터베이스화된 단어들 및 숙어들과 관련된 실시예가 설명된다. 도 8을 참조하여, 레이아웃과 관련된 실시예가 설명된다. 도 9를 참조하여, 이미지 추천 동작과 관련된 실시예가 설명된다. 도 10을 참조하여, 인공 신경망의 학습 과정과 관련된 실시예가 설명된다.
도 2는 일실시예에 따른 사용자 단말(110)의 GUI 중에서 정보 입력창(200)을 설명하기 위한 도면이다.
우선, 사용자 단말(110)에는 서버(100)를 운영하는 주체가 배포한 어플리케이션이 설치될 수 있다. 서버(100)를 운영하는 주체가 배포한 어플리케이션을 통해, 사용자 단말(110)은 전자책 제작을 위한 기능들을 사용자들에게 제공할 수 있다. 본 명세서에 별도로 언급되지 않은 전자책 제작에 필요한 기본적, 필수적, 일반적인 기능들의 구현은 통상의 전자책 제작 기술들, 가령 ePUB 표준 기술들을 차용하여 이루어질 수 있다.
사용자 단말(110)에 표시되는 정보 입력창(200)에서, 지문 입력부(210)는 사용자로부터 전자책에 포함될 텍스트를 입력 받을 수 있고; 도서 요약 지문 입력부(220)는 사용자로부터 전자책의 소개 및 홍보 용도로 사용되는 도서 요약 지문을 입력 받을 수 있고; ISBN 정보 입력부(230)는 사용자로부터 전자책의 고유 ISBN 정보를 입력 받을 수 있고; 문단 분석 버튼들(240)은 사용자의 입력에 따라 도 9를 참조하여 후술되는 일실시예에 따른 이미지 추천 동작을 실행시킬 수 있다.
지문 입력부(210)는 키보드의 엔터(enter) 키 또는 리턴(return) 키의 입력에 따라 향후 제작될 전자책의 텍스트 내의 문단들을 구분시킬 수 있다. 또한, 사용자 단말(110)은 지문 입력부(210)에서 문단이 구분되는 위치들에 엔터 기호(211, 212, 223, 214, 215, 216)들이 표시되도록 함으로써, 사용자가 전자책에 포함될 텍스트를 작성하는 중에 문단을 구분하도록 할 수 있다.
도 2에서는 지문 입력부(210)가 별도의 양식이 없는 창의 형태로 도시되어 있으나, 지문 입력부(210)는 다른 형태로도 구현될 수 있다. 예를 들어, 지문 입력부(210)는 배경에 노트줄이 그어져 있는 형태 또는 원고지 형태로 구현될 수 있다.
여기에 더하여, 지문 입력부(210)에는 맞춤법 검사기와 문법 검사기 기능이 구현될 수 있다. 맞춤법 및 문법 검사 기능을 통해, 사용자가 전자책을 제작함에 있어 사용편의성이 향상될 수 있다. 맞춤법 검사기와 문법 검사기의 구현은 통상의 맞춤법 검사 알고리즘 및 문법 검사 알고리즘을 차용하여 이루어질 수 있다.
한편, 사용자는 도 4의 이미지 적용창(400)을 통해 전자책의 레이아웃을 수동으로 설정할 수도 있고, 도 5 및 도 6을 참조하여 설명되는 방법을 통해 전자책의 레이아웃을 자동으로 설정되도록 할 수도 있다. 레이아웃이 설정된 경우, 지문 입력부(210)는 레이아웃에 맞추어 페이지 또는 문단에 입력 가능한 남은 글자 수를 계산해 줄 수 있다. 레이아웃에 따라 페이지 또는 문단에 허용되는 글자 수를 채우지 못하거나 글자 수를 초과한 경우, 사용자 단말(110)은 레이아웃을 수동으로 변경하거나 글자 수를 조정하라는 알림을 표시할 수 있다. 이를 통해, 사용자가 전자책의 텍스트를 제작함에 있어 사용편의성이 향상될 수 있다.
나아가, 도 2에는 도시되지 않았지만, 향후 완성될 전자책의 타겟 연령층을 입력하는 타겟 연령층 입력부(미도시)가 정보 입력창(200) 또는 제 3의 창에 포함되어 있을 수 있다. 타겟 연령층 입력부(미도시)에 입력된 타겟 연령층은 서버(100)로 전송될 수 있다. 타겟 연령층은 도 6을 참조하여 설명되는 텍스트의 판별 값 및 도 6 및 9를 참조하여 설명되는 문단의 판별 값을 생성하는데 사용될 수 있다.
도 3은 일실시예에 따른 사용자 단말의 GUI 중에서 문제 입력창(300)을 설명하기 위한 도면이다.
사용자 단말(110)에 표시되는 문제 입력창(300)에서, 객관식 문제 입력부(310)는 사용자로부터 전자책에 포함될 객관식 문제를 입력 받을 수 있고; 표현 문제 입력부(320)는 사용자로부터 전자책에 포함될 주관식 문제를 입력 받을 수 있고; 정답 입력부(330)는 문제의 정답을 입력할 수 있는 팝업창 등을 띄워 줄 수 있다.
객관식 문제 입력부(310)에서, 문항 선택부(311)는 사용자의 입력에 따라 사용자가 문제와 보기를 입력하길 희망하는 객관식 문항을 활성화시켜주고; 문제 입력부(312)는 선택된 문항의 문제를 사용자로부터 입력 받을 수 있고; 보기 입력부(313)는 선택된 문항의 문제의 객관식 보기들을 사용자로부터 입력 받을 수 있다.
도 3에서는 객관식 문제 입력부(310와 표현 문제 입력부(320)가 별도의 양식이 없는 창의 형태로 도시되어 있으나, 객관식 문제 입력부(310)와 표현 문제 입력부(320)는 다른 형태로도 구현될 수 있다. 예를 들어, 객관식 문제 입력부(310)와 표현 문제 입력부(320)는 배경에 노트줄이 그어져 있는 형태 또는 원고지 형태로 구현될 수 있다.
여기에 더하여, 객관식 문제 입력부(310)와 표현 문제 입력부(320)에는 맞춤법 검사기와 문법 검사기 기능이 구현될 수 있다. 맞춤법 및 문법 검사 기능을 통해, 사용자가 전자책을 제작함에 있어 사용편의성이 향상될 수 있다. 맞춤법 검사기와 문법 검사기의 구현은 통상의 맞춤법 검사 알고리즘 및 문법 검사 알고리즘을 차용하여 이루어질 수 있다.
한편, 사용자는 도 4의 이미지 적용창(400)을 통해 전자책의 레이아웃을 수동으로 설정할 수도 있고, 도 5 및 도 6을 참조하여 설명되는 방법을 통해 전자책의 레이아웃을 자동으로 설정되도록 할 수도 있다. 레이아웃이 설정된 경우, 객관식 문제 입력부(310)와 표현 문제 입력부(320)는 레이아웃에 맞추어 입력 가능한 남은 글자 수를 계산해 줄 수 있다. 레이아웃에 따라 허용되는 글자 수를 채우지 못하거나 글자 수를 초과한 경우, 사용자 단말(110)은 레이아웃을 수동으로 변경하거나 글자 수를 조정하라는 알림을 표시할 수 있다. 이를 통해, 사용자가 전자책에 포함되는 문제들을 제작함에 있어 사용편의성이 향상될 수 있다.
도 4는 일실시예에 따른 사용자 단말의 GUI 중에서 이미지 적용창(400)을 설명하기 위한 도면이다.
사용자 단말(110)에 표시되는 이미지 적용창(400)에서, 레이아웃 설정부(410)는 사용자의 입력에 따라 향후 완성될 전자책의 페이지별 레이아웃을 수동으로 설정해 줄 수 있고; 레이아웃 표시부(411)는 사용자가 수동으로 설정한 레이아웃 또는 도 5 및 6을 참조하여 후술되는 자동으로 설정된 레이아웃들을 표시해 줄 수 있고; 이미지 추가부(420)는 사용자의 입력에 따라 향후 완성될 전자책의 특정 페이지의 특정 영역에 포함될 이미지를 추가해 줄 수 있고; 이미지 표시부(421)는 사용자가 특정 페이지의 특정에 영역에 포함시키겠다고 추가한 이미지들을 표시해 줄 수 있고; 도서 미리보기부(430)는 사용자의 입력에 따라 도 5 및 6을 참조하여 후술되는 텍스트 및 이미지들을 위한 레이아웃을 자동으로 설정하는 동작을 실행시킬 수 있다.
레이아웃 설정부(410)에는 수동으로 설정할 수 있는 템플릿 레이아웃들이 미리 저장되어 있을 수 있다. 사용자는 미리 저장된 템플릿 레이아웃 중 하나를 선택함으로써 향후 완성될 전자책의 특정 페이지의 레이아웃을 설정할 수 있다. 사용자는 도 5 및 6을 참조하여 후술되는 레이아웃 자동 설정 기능을 통해 일차적으로 전자책의 모든 페이지의 레이아웃들을 설정한 후, 특정한 몇몇의 페이지에 대해서만 수동으로 템플릿 레이아웃을 선택해 주는 식으로 전자책의 레이아웃을 설정할 수 있다. 템플릿 레이아웃들의 구현은 통상의 전자책 레이아웃 제작 기술들, 가령 ePUB 표준 기술들을 차용하여 이루어질 수 있다.
한편, 도서 미리보기부(430)를 선택함으로써, 향후 완성될 전자책에 포함될 모든 텍스트 및 모든 이미지들을 위한 레이아웃이 자동으로 설정될 수 있다. 즉, 사용자가 도서 미리보기부(430)를 선택하면, 사용자 단말(110) 또는 사용자 단말(110)과 연결된 서버(100)는 현재까지 작성한 텍스트 및 현재까지 업로드한 이미지들을 위한 자동 레이아웃을 설정하는 프로세스를 수행할 수 있다.
레이아웃을 자동으로 설정하는 프로세스가 수행되고 나면, 텍스트 및 이미지들은 자동 설정된 레이아웃에 맞추어 사용자 단말(110)의 화면에 미리보기 창 등의 형태로 표시될 수 있다. 미리보기 창에는 “자동 설정된 레이아웃이 만족스러우십니까?”와 같은 질문이 표시될 수 있고, 사용자가 질문에 “예”라는 답변을 선택할 경우, 자동 설정된 레이아웃은 향후 완성될 전자책의 레이아웃으로 저장되며, 레이아웃 표시부(411)에 저장된 레이아웃이 표시될 수 있다. 레이아웃의 자동 설정에 관한 보다 구체적인 사항은 도 5 및 도 6을 참조하여 후술된다.
한편, 레이아웃이 설정된 경우, 지문 입력부(210); 객관식 문제 입력부(310); 및 표현 문제 입력부(320)에는 레이아웃에 따라 입력 가능한 남은 글자 수가 계산될 수 있다. 레이아웃에 따라 허용되는 글자 수를 채우지 못하거나 글자 수를 초과한 경우, 사용자 단말(110)은 레이아웃을 변경하거나 글자 수를 조정하라는 알림을 표시할 수 있다. 이를 통해, 사용자가 전자책에 포함되는 텍스트 및 문제들을 제작함에 있어 사용편의성이 향상될 수 있다
도 5는 일실시예에 따른 레이아웃을 자동 설정하는 동작을 설명하기 위한 순서도이다.
우선, 서버(100) 또는 사용자 단말(110)은 전자책에 포함될 텍스트 및 이미지들을 획득할 수 있다(510). 사용자 단말(110)의 경우, 사용자가 도 4의 도서 미리보기부(430)를 선택하면, 도 2의 지문 입력부(210)에 현재까지 작성한 텍스트 및 도 4의 이미지 추가부(420)에 현재까지 업로드한 이미지들을 획득할 수 있다. 서버(100)의 경우, 사용자 단말(110)이 획득한 텍스트 및 이미지들을 전송받음으로써, 전자책에 포함될 텍스트 및 이미지들을 획득할 수 있다.
다음으로, 서버(100) 또는 사용자 단말(110)은 획득한 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정할 수 있다(520). 도 4의 도서 미리보기부(430)에 사용자의 입력이 입력되면, 서버(100) 또는 사용자 단말(110)에서는 획득한 텍스트에 기초하여 전자책의 난이도를 결정하는 프로세스가 시작될 수 있다. 전자책의 난이도가 결정되고 나면, 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라 텍스트 및 이미지들을 위한 레이아웃이 자동 설정될 수 있다. 텍스트 및 이미지들은 자동 설정된 레이아웃에 맞추어 사용자 단말(110)에 미리보기 창 등의 형태로 표시될 수 있다.
여기서, 전자책의 난이도는 타겟 연령층을 중심으로 결정될 수 있다. 예를 들어, 타겟 연령층이 8~9세인 경우, 전자책의 난이도는 “8~9세가 읽기 어려움”; “8~9세가 읽기 적합함”; “8~9세가 읽기 쉬움” 등의 식으로 결정될 수 있다. 타겟 연령층은 도 2의 정보 입력창(200) 또는 제 3의 창에 포함된 타겟 연령층 입력부(미도시)를 통해 획득할 수 있다. 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하는 보다 구체적인 과정은 도 6을 참조하여 후술된다.
이어서, 서버(100) 또는 사용자 단말(110)은 전자책의 난이도에 기초하여, 텍스트 및 이미지들이 전자책에 배치되는 레이아웃을 미리 설정된 표준에 따라 자동 설정할 수 있다(530). 레이아웃은 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라 자동 설정될 수 있다. 가령, 타겟 연령층이 8~9세인 경우, 레이아웃은 전자책의 난이도에 따라, “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”; “8~9세가 읽기 적합한 난이도의 전자책을 위한 표준 레이아웃 설정”; “8~9세가 읽기 쉬운 난이도의 전자책을 위한 표준 레이아웃 설정” 등의 표준이 미리 준비되어 있을 수 있다. 각각의 표준은, 텍스트의 글자 크기; 글자 간격; 줄 당 최대 글자 수; 줄 간격; 페이지 당 최대 글자 수; 페이지 당 최대 줄 수 등의 규격을 정의하며, 이미지들의 위치; 크기; 및 페이지 당 최대 이미지 수 등의 규격을 정의한다. 텍스트 및 이미지들은 적용되는 표준 레이아웃 설정에 의해 전자책에서의 배치 및 모습이 달라질 수 있다.
예를 들어, 도 8에서, “8~9세가 읽기 적합한 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들이 배치된 모습은 레이아웃 A(800)와 같을 수 있고; “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들이 배치된 모습은 레이아웃 B(801)와 같을 수 있고; “8~9세가 읽기 쉬운 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들이 배치된 모습은 레이아웃 C(802)와 같을 수 있다.
도 8의 레이아웃 B(801); 레이아웃 A(800); 레이아웃 C(802)를 순서대로 참고하면, 동일한 타겟 연령층(8~9세)에 대하여, 전자책의 난이도가 올라갈수록, 텍스트의 크기 및 간격 등은 넓어지므로, 독자들이 어려운 책을 읽을 때 가독성이 높은 독서 환경을 제공할 수 있고, 이미지들의 크기 등은 커지므로, 독자들이 어려운 책을 읽을 때 텍스트를 설명하는 이미지들의 도움을 많이 받을 수 있는 독서 환경을 제공할 수 있다.
보다 구체적으로, 서버(100) 또는 사용자 단말(110)은 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라, 텍스트의 글자 크기; 글자 간격; 줄 당 최대 글자 수; 줄 간격; 페이지 당 최대 글자 수; 페이지 당 최대 줄 수 등의 레이아웃 사항을 자동으로 설정할 수 있다. 이때, 동일한 타겟 연령층에 대하여, 전자책의 난이도가 올라갈수록 텍스트의 글자 크기는 커지고; 글자 간격은 넓어지고; 줄 당 최대 글자 수는 줄어들고; 줄 간격은 늘어나고; 페이지 당 최대 글자 수는 작아지고; 페이지 당 최대 줄 수는 작아질 수 있다. 이를 통해, 어려운 난이도의 전자책을 읽을 때, 독자들의 가독성이 높아질 수 있다.
또한, 서버(100) 또는 사용자 단말(110)은 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라, 이미지들의 위치; 크기; 페이지 당 최대 이미지 수 등의 레이아웃 사항을 자동으로 설정할 수 있다. 이때, 동일한 타겟 연령층에 대하여, 전자책의 난이도가 올라갈수록 이미지들의 위치는 페이지 전면을 차지하거나 페이지 상단에 위치하고; 이미지들의 크기는 커지고; 페이지 당 최대 이미지 수는 증가할 수 있다. 이를 통해, 어려운 난이도의 전자책을 읽을 때, 독자들은 이미지를 통해 텍스트를 이해하는데 도움을 얻을 수 있다.
이상을 정리하면, 사용자가 도 4의 도서 미리보기부(430)를 선택함으로써, 서버(100) 또는 사용자 단말(110)은 현재까지 작성된 텍스트 및 현재까지 업로드된 이미지들을 획득할 수 있다. 이어서, 획득한 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정할 수 있다. 다음으로, 결정된 전자책의 난이도에 기초하여, 텍스트 및 이미지들의 레이아웃을 미리 설정된 표준에 따라 자동 설정할 수 있으며, 서버(100)의 경우, 자동 설정된 레이아웃 양식을 사용자 단말(110)로 전송할 수 있다. 텍스트 및 이미지들은 자동 설정된 레이아웃에 맞추어 사용자 단말(110)의 화면에 미리보기 창 등의 형태로 표시될 수 있다.
예를 들어, 전자책의 난이도가 “8~9세가 읽기 적합함”으로 결정되었다면, 텍스트 및 이미지들은 “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”에 맞추어 사용자 단말(110)의 화면에 미리보기 창 등의 형태로 표시되며, 이때 레이아웃의 모습은 레이아웃 A(800)와 같을 수 있다. 한편, 미리보기 창에는 “자동 설정된 레이아웃이 만족스러우십니까?”와 같은 질문이 표시될 수 있고, 사용자가 질문에 “예”라는 답변을 선택할 경우, 자동 설정된 레이아웃은 향후 완성될 전자책의 레이아웃으로 저장되며, 레이아웃 표시부(411)에 저장된 레이아웃의 모습이 표시될 수 있다.
위와 같은 과정을 통해, 사용자 단말(110)의 사용자는 향후 완성될 전자책의 레이아웃을 페이지별로 일일이 수동으로 설정할 필요 없이, 전자책의 전체 레이아웃을 자동으로 설정할 수 있으므로, 효율적으로 전자책을 제작할 수 있다. 나아가, 자동으로 설정되는 레이아웃은 텍스트의 난이도 수준에 맞추어 자동으로 설정된다. 이를 통해, 사용자 단말(110)의 사용자들은 타겟 연령층의 독자들이 보다 용이하게 이해할 수 있는 전자책을 제작할 수 있다.
도 6은 일실시예에 따른 전자책의 난이도를 결정하는 동작을 설명하기 위한 순서도이다.
먼저, 서버(100) 또는 사용자 단말(110)은 전자책의 타겟 연령층을 획득할 수 있다(521). 사용자 단말(110)의 경우, 사용자가 정보 입력창(200) 또는 제 3의 창에 포함된 타겟 연령층 입력부(미도시)에 타겟 연령층을 입력함으로써, 전자책의 타겟 연령층을 획득할 수 있다. 서버(100)의 경우, 사용자 단말(110)이 입력 받은 타겟 연령층을 전송받음으로써, 전자책의 타겟 연령층을 획득할 수 있다.
예를 들어, 사용자는 타겟 연령층 입력부(미도시)에 “8~9세”로 타겟 연령층을 입력할 수 있다. 이 경우, 서버(100) 및 사용자 단말(110)은 “8~9세”를 전자책의 타겟 연령층으로 획득할 수 있다.
이후, 서버(100) 또는 사용자 단말은(110)은 미리 데이터베이스화된 단어들과 일치하는 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 텍스트 내 숙어들 중 적어도 하나를 기초로 생성한 텍스트의 판별 값을 획득할 수 있다(522).
서버(100)는 도 7과 같이 연령층별 난이도 값을 가지는 단어들 및 숙어들을 미리 데이터베이스화하여 저장하고 있을 수 있다. 미리 데이터베이스화된 단어들 및 숙어들의 구체적인 구성은 도 7을 참조하여 후술된다. 서버(100)는 사용자 단말(110)로부터 획득한 텍스트를 기초로, 미리 데이터베이스화된 단어들과 일치하는 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 텍스트 내 숙어들 중 적어도 하나를 기초로 판별 값을 생성하여 획득할 수 있다. 서버(100)는 생성한 판별 값을 사용자 단말(110)로 전송할 수 있다.
사용자 단말(110)의 경우, 서버(100)가 전송한 판별 값을 획득할 수 있다. 또는, 사용자 단말(110)은 서버(100)로부터 미리 데이터베이스화된 단어들과 숙어들을 전부 또는 일부 다운로드 받을 수 있다. 이후, 사용자 단말(110)은 입력 받은 텍스트를 기초로, 미리 데이터베이스화된 단어들과 일치하는 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 텍스트 내 숙어들 중 적어도 하나를 기초로 판별 값을 생성하여 획득할 수 있다.
이하에서는, 전자책의 타겟 연령층이 “8~9세”인 경우, 서버(100) 또는 사용자 단말(110)이 도 2의 지문 입력부(210)에 예시적으로 도시된 텍스트의 판별 값을 생성하는 과정을 설명한다. 물론, 도2의 지문 입력부(210)에 도시된 텍스트만으로 전자책의 내용이 완성되지는 않지만, 편의상 도 2의 지문 입력부(210)에 도시된 텍스트로 이루어진 전자책(또는 전자책의 특정 단원)을 만드는 상황을 가정하고, 서버(100) 또는 사용자 단말(110)이 판별 값을 생성하는 과정을 설명한다.
먼저, 사용자가 도 4의 도서 미리보기부(430)를 선택함으로써, 현재까지 작성된 텍스트 및 현재까지 업로드된 이미지들이 획득되고, 이어서, 전자책의 난이도를 결정하는 과정이 시작될 수 있다. 전자책의 난이도를 결정하기 위해, 텍스트의 판별 값을 구하는 과정이 수행되며, 텍스트의 판별 값을 구하기 위해, 각 문단의 판별 값을 구하는 과정이 수행된다. 이때, 문단의 판별 값은 문단에서 미리 데이터베이스화된 단어들과 일치하는 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 숙어들 각각의 문단에서 반복된 횟수에 각각의 타겟 연령층에 대응하는 난이도 값을 곱한 값을 합산한 값일 수 있다. 또한, 텍스트의 판별 값은, 각각의 문단의 판별 값을 합산한 값일 수 있다.
구체적으로, 도 2의 지문 입력부(210)에 도시된 텍스트에서, 엔터 기호(213)와 대응하는 <강희는…일쑤였지요.>라는 문단의 판별 값을 구하는 과정은 다음과 같을 수 있다. 우선, <강희는…일쑤였지요.>라는 문단에서, 미리 데이터베이스화된 단어들과 일치하는 단어들로는 “전달”, “식은땀”이 있을 수 있고, 미리 데이터베이스화된 숙어들과 일치하는 숙어로는 “어깨가(는) 움츠러들다”가 있을 수 있다. 이때, 도 7에서 확인할 수 있듯이, “전달”이라는 단어는 8~9세의 연령층에 대응하는 난이도 값으로 2를; “식은땀”이라는 단어는 8~9세의 연령층에 대응하는 난이도 값으로 5를; “어깨가(는) 움츠러들다”라는 숙어는 8~9세의 연령층에 대응하는 난이도 값으로 4를 가지고 있을 수 있다. 한편, <강희는…일쑤였지요.>라는 문단에서 단어 “전달”, “식은땀”은 각각 1회씩 반복되고, 숙어 “어깨가(는) 움츠러들다” 역시 1회 반복되므로, 엔터 기호(213)에 대응하는 문단의 판별 값은 [수학식 1]과 같을 수 있다.
Figure 112019058289051-pat00001
다음으로, 엔터 기호(213)에 대응하는 문단의 판별 값을 계산한 과정과 동일한 과정을 거쳐, 서버(100) 또는 사용자 단말(110)은 엔터 기호(211); 엔터 기호(212); 엔터 기호(214); 엔터 기호(215); 및 엔터 기호(216)와 대응하는 문단들의 판별 값을 각각 구할 수 있다. 예를 들어, 엔터 기호(211)에 대응하는 문단의 판별 값은 5; 엔터 기호(212)에 대응하는 문단의 판별 값은 0; 엔터 기호(214)에 대응하는 문단의 판별 값은 3; 엔터 기호(215)에 대응하는 문단의 판별 값은 9; 및 엔터 기호(211)에 대응하는 문단의 판별 값은 4로 계산될 수 있다.
이어서, 문단들의 판별 값을 합산하여, 텍스트의 판별 값을 구할 수 있다. 도 2의 지문 입력부(210)에 도시된 텍스트는 엔터 기호(211); 엔터 기호(212); 엔터 기호(213); 엔터 기호(214); 엔터 기호(215); 및 엔터 기호(216)에 대응하는 문단들로 구성되므로, 텍스트의 판별 값은 [수학식 2]와 같을 수 있다.
Figure 112019058289051-pat00002
이와 같이 텍스트의 판별 값을 구한 후, 서버(100) 또는 사용자 단말(110)은 텍스트의 판별 값을 기초로 미리 설정된 기준에 따라 향후 완성될 전자책의 난이도를 결정할 수 있다. 이때, 미리 설정된 결정 기준은, 텍스트의 판별 값이 미리 설정된 임계 범위에 포함되는 경우, 전자책의 난이도를 타겟 연령층이 읽기 적합한 난이도라고 결정하고; 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최대값을 초과할 경우, 전자책의 난이도를 타겟 연령층이 읽기 어려운 난이도라고 결정하고; 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최소값보다 미만일 경우, 전자책의 난이도를 타겟 연령층이 읽기 쉬운 난이도라고 결정하는 기준일 수 있다.
예를 들어, 임계 범위는 “최소값 30 최대값 50”일 수 있다. 한편, 임계 범위의 최소값과 최대값은 전자책의 난이도가 어렵거나 분량이 길수록, 일반적으로 큰 숫자들로 표현될 것이다.
앞서 예시를 이어나가 설명하면, 텍스트의 판별 값은 32였고, 임계 범위는 “최소값 30 최대값 50”이므로, 도2의 지문 입력부(210)에 도시된 텍스트의 판별 값은 임계 범위에 포함된다. 따라서, 도2의 지문 입력부(210)에 도시된 텍스트로 이루어지는 전자책의 난이도는 “8~9세가 읽기 적합함”으로 결정될 수 있다.
한편, 도 5를 참조하여 전술된 과정에 따라, 서버(100) 또는 사용자 단말(110)은 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라, 텍스트 및 이미지들을 위한 레이아웃을 자동으로 설정한다. 앞서 설명한 예시를 이어 나가면, 전자책의 난이도는 “8~9세가 읽기 적합함”으로 결정됐으므로, 텍스트 및 이미지들은 “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”에 맞추어 사용자 단말(110)의 화면에 미리보기 창 등의 형태로 표시될 것이며, 이때 레이아웃의 모습은 레이아웃 A(800)와 같을 수 있다.
도 7은 일실시예에 따른 데이터베이스화된 단어들 및 숙어들을 설명하기 위한 도면이다.
서버(100)는 연령층별로 독자들이 어려워하는 단어들 및 숙어들을 종합하여, 연령층별 난이도 값을 가지는 단어들 및 숙어들을 생성하여 데이터베이스화 할 수 있다. 미리 데이터베이스화된 단어들 및 숙어들은 도 6을 참조하여 설명된 과정처럼 전자책의 난이도를 판별하는 자료로 사용될 수 있으며, 도 6 및 9를 참조하여 설명된 과정들처럼 사용자가 작성한 텍스트의 각 문단의 난이도를 판별하는 자료로도 사용될 수 있다.
구체적으로, 특정 연령층의 독자들의 20% 이상 40% 미만이 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 1; 특정 연령층의 독자들의 40% 이상 60% 미만이 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 2; 특정 연령층의 독자들의 60% 이상 80% 미만이 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 3; 특정 연령층의 독자들의 80% 이상 90% 미만이 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 4; 특정 연령층의 독자들의 90% 이상이 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 5일 수 있다. 특정 연령층의 독자들의 20% 미만만 해당 단어 또는 해당 숙어를 어려워하면, 해당 단어 또는 해당 숙어의 해당 연령층에 대응하는 난이도 값은 없을 수 있다(또는 0이라는 난이도 값을 가진다고 생각할 수 있다).
이때, 연령층별로 독자들이 특정 단어 또는 특정 숙어를 어려워하는지 여부 및 연령층별로 독자들이 특정 단어 또는 특정 숙어를 어려워하는 정도를 판단하는 과정은, 미리 정의된 판단법에 따라 이루어질 수 있다.
미리 정의된 판단법은, 가령, 아이 트래커(eye tracker)를 통해 전자책을 읽는 연령층별 독자들의 눈동자 움직임을 측정하고, 측정된 눈동자 움직임을 미리 학습된 인공 신경망에 적용하여, 인공 신경망이 눈동자 움직임이 느려지는 영역; 눈동자 움직임이 반복되는 구간; 눈동자 움직임이 멈추는 지점 등의 눈동자 움직임 패턴을 기초로 독자들이 전자책에서 어려워하는 단어들 및 숙어들을 판단한 후, 이러한 과정을 반복하여 종합된 데이터를 기초로 연령층별로 독자들이 어려워하는 단어들 또는 숙어들의 정도 내지 비율을 판단하는 것일 수 있다.
또는, 미리 정의된 판단법은, 교육학 분야에서 적립된 학년별로 구분된 학교 필수/선택/심화 단어 및 숙어를 해당 학년이 어려워하는 단어 또는 숙어로 판단한 후, 각각의 학교 필수/선택/심화 단어 및 숙어에 대하여, 언어 시험 및 학습 데이터를 기반으로 각 학년의 학생들이 해당 단어 또는 해당 숙어를 이해하고 있는 비율에 대한 축적된 통계치를 획득하여 가공함으로써 연령층별로 독자들이 특정 단어 또는 특정 숙어를 어려워하는 정도 내지 비율을 판단한 것일 수 있다.
다시 도 7을 참고하면, 서버(100)는 가령, “전달”, “식은땀” 등의 단어와, “어깨가(는) 움츠러들다” 등의 숙어를 미리 데이터베이스화 할 수 있다. 또한, 서버(100)는 단어 “전달”, “식은땀”, 및 숙어 “어깨가(는) 움츠러들다”를 어려워하는 연령층별 독자들의 비율에 입각하여, 각각의 단어 및 숙어의 연령층별 난이도 값을 기록해 둘 수 있다.“어깨가(는) 움츠러들다”라는 숙어를 예로 들면, 서버(100)는 8~9세에 속한 독자들의 80% 이상 90% 미만이 해당 숙어를 어려워할 경우, 해당 숙어의 8~9세의 연령층에 대응하는 난이도 값을 4; 10~11세에 속한 독자들의 40% 이상 60% 미만이 해당 숙어를 어려워할 경우, 해당 숙어의 10~11세의 연령층에 대응하는 난이도 값을 2; 12세에 속한 독자들의 20% 미만이 해당 숙어를 어려워할 경우, 해당 숙어의 12세의 연령층에 대응하는 난이도 값을 “없음”으로 기록해둘 수 있다.
위와 같은 과정을 거쳐, 서버(100)는 단어 “전달”, “식은땀”의 각각의 연령층에 대응하는 난이도 값도 기록해둘 수 있으며, 나아가, 다른 단어 및 숙어들도 각각의 연령층에 대응하는 난이도 값을 기록해 둘 수 있다. 이와 같은 과정을 통해 서버(100)는 연령층별 난이도 값을 가지는 단어들 및 숙어들을 미리 데이터베이스화 해 둘 수 있다. 미리 데이터베이스화된 단어들 및 숙어들은 도 6을 참조하여 설명된 과정처럼 전자책의 난이도를 판별하는 자료로 사용될 수 있으며, 도 6 및 9를 참조하여 설명된 과정들처럼 사용자가 작성한 텍스트의 각 문단의 난이도를 판별하는 자료로도 사용될 수 있다.
도 8은 일실시예에 따른 레이아웃을 설명하기 위한 도면이다.
텍스트 및 이미지들에 적용될 레이아웃은 전자책의 난이도와 일대일 대응관계를 가지는 미리 설정된 표준에 따라 자동 설정될 수 있다. 가령, 타겟 연령층이 8~9세인 경우, 레이아웃은 전자책의 난이도에 따라, “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”; “8~9세가 읽기 적합한 난이도의 전자책을 위한 표준 레이아웃 설정”; “8~9세가 읽기 쉬운 난이도의 전자책을 위한 표준 레이아웃 설정” 등의 표준이 미리 준비되어 있을 수 있다. 각각의 표준은, 텍스트의 글자 크기; 글자 간격; 줄 당 최대 글자 수; 줄 간격; 페이지 당 최대 글자 수; 페이지 당 최대 줄 수 등의 규격을 정의하며, 이미지들의 위치; 크기; 및 페이지 당 최대 이미지 수 등의 규격을 정의한다. 텍스트 및 이미지들은 적용되는 표준 레이아웃 설정에 의해 배치 및 모습이 달라질 수 있다.
예를 들어, 도 8에서, “8~9세가 읽기 적합한 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들의 레이아웃이 자동 설정된 모습은 레이아웃 A(800)와 같을 수 있고; “8~9세가 읽기 어려운 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들의 레이아웃이 자동 설정된 모습은 레이아웃 B(801)와 같을 수 있고; “8~9세가 읽기 쉬운 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 텍스트 및 이미지들의 레이아웃이 자동 설정된 모습은 레이아웃 C(802)와 같을 수 있다.
도 8의 레이아웃 B(801); 레이아웃 A(800); 레이아웃 C(802)를 순서대로 참고하면, 동일한 타겟 연령층(8~9세)에 대하여, 전자책의 난이도가 올라갈수록, 텍스트의 크기 및 간격 등은 넓어지므로, 이를 통해 독자들이 어려운 책을 읽을 때 가독성이 높은 독서 환경을 제공할 수 있고, 이미지들의 크기 등은 커지므로, 이를 통해 독자들이 어려운 책을 읽을 때 텍스트를 설명하는 이미지들의 도움을 많이 받을 수 있는 독서 환경을 제공할 수 있다.
한편, 서버(100) 또는 사용자 단말(110)은 독자가 향후 완성될 전자책을 읽을 때, 전자책이 너무 쉽거나 어렵다고 느낄 경우, 향후 독자의 수동 입력에 따라 또는 향후 독자가 자동 변경 설정을 허용했는지 여부에 따라 레이아웃이 변경될 수 있도록 레이아웃을 반응형으로 설정할 수 있다.
예를 들면, 도 5 및 6을 참조하여 설명된 과정을 통해 제작된 전자책 X의 난이도는 “8~9세가 읽기 적합함”일 수 있다. 이 때, 전자책 X의 레이아웃은 전자책 X의 난이도와 일대일 대응관계를 가지는 “8~9세가 읽기 적합한 난이도의 전자책을 위한 표준 레이아웃 설정”에 따라 설정될 수 있다. 해당 레이아웃이 설정된 전자책 X의 모습은 레이아웃 A(800)와 같을 수 있다.
독자가 전자책 X를 다운로드 했을 때, 독자의 단말에 표시되는 전자책 X는 기본적으로 레이아웃 A(800)의 모습으로 제공될 수 있다. 이때, 서버(100) 또는 사용자 단말(110)은 레이아웃이 독자의 수동 입력에 따라 변경될 수 있도록 레이아웃을 반응형으로 설정할 수 있다. 나아가, 서버(100) 또는 사용자 단말(110)은 레이아웃이 독자의 설정에 따라 자동으로 변경될 수 있도록 레이아웃을 반응형으로 설정할 수 있다. 즉, 서버(100) 또는 사용자 단말(110)은 전자책 X의 레이아웃이 기본 설정인 레이아웃 A(800)뿐만 아니라, 레이아웃 B(810) 또는 레이아웃 C(820) 등으로도 제공될 수 있도록, 레이아웃을 반응형으로 설정할 수 있다.
레이아웃이 수동 입력에 따라 변경되는 경우를 살펴보면, 독자는 전자책을 읽을 수 있는 어플리케이션 내에서 전자책의 레이아웃을 변경하는 버튼이나 아이콘 등을 선택할 수 있다. 독자가 다운로드 받은 전자책 X가 너무 어렵다고 느끼는 경우, 독자는 전자책 X의 레이아웃을 레이아웃 A(800)에서 레이아웃 B(801)로 변경할 수 있다. 이를 통해, 독자는 어렵다고 느껴지는 전자책 X를 보다 가독성 있는 텍스트로 읽을 수 있으며, 텍스트의 의미를 설명하는 이미지들의 도움을 많이 받으면서 텍스트를 읽을 수 있는 독서 환경을 제공받을 수 있다. 한편, 독자가 다운로드 받은 전자책 X가 너무 쉽다고 느끼는 경우, 독자는 전자책 X의 레이아웃을 레이아웃 A(800)에서 레이아웃 C(802)로 변경할 수 있다. 이를 통해, 독자는 쉽다고 느껴지는 전자책 X를 보다 컴팩트한 텍스트로 읽을 수 있으며, 이미지들의 도움을 최소로 받으면서 텍스트에만 집중해서 읽을 수 있는 독서 환경을 제공받을 수 있다.
레이아웃이 자동으로 변경되는 경우를 살펴보면, 독자는 전자책을 읽을 수 있는 어플리케이션 내에 자신의 독서 레벨이 미리 설정된 기준에 따라 평가되어 미리 기록되어 있을 수 있으며, 자신의 독서 레벨에 맞추어 전자책의 레이아웃이 자동으로 변경되도록 허용하는 옵션을 선택했을 수 있다. 독자의 독서 레벨이 “8~9세에게 쉬운 전자책을 읽을 수 있는 레벨”이면, 독자는 “8~9세가 읽기 적합함”이라는 난이도를 가지는 전자책 X를 어렵다고 느낄 것이므로, 서버(100) 또는 사용자 단말(110)에서 설계된 사항에 따라 전자책 X의 레이아웃은 레이아웃 A(800)에서 레이아웃 B(801)로 변경될 수 있다. 이를 통해, 독자는 어렵다고 느껴지는 전자책 X를 보다 가독성 있는 텍스트로 읽을 수 있으며, 텍스트의 의미를 설명하는 이미지들의 도움을 많이 받으면서 텍스트를 읽을 수 있는 독서 환경을 제공받을 수 있다. 한편, 독자의 독서 레벨이 “8~9세에게 어려운 전자책을 읽을 수 있는 레벨”이면, 독자는 전자책 X를 쉽다고 느낄 것이므로, 서버(100) 또는 사용자 단말(110)에서 설계된 사항에 따라 전자책 X의 레이아웃은 레이아웃 A(800)에서 레이아웃 C(802)로 변경될 수 있다. 이를 통해, 독자는 쉽다고 느껴지는 전자책 X를 보다 컴팩트한 텍스트로 읽을 수 있으며, 이미지들의 도움을 최소로 받으면서 텍스트에만 집중해서 읽을 수 있는 독서 환경을 제공받을 수 있다.
도 9는 일실시예에 따른 이미지 추천 동작을 설명하기 위한 순서도이다.
서버(100) 또는 사용자 단말(110)은 텍스트 및 이미지들의 레이아웃을 자동으로 설정하는 과정과 더불어, 텍스트 내 특정 문단에 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들이 많이 포함되어 있는지 여부를 판별할 수 있다. 특정 문단에 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들이 많이 포함되어 있다고 판별된 경우, 해당 단어들 및 해당 숙어들을 설명해 줄 수 있는 이미지를 추천하는 과정이 이루어질 수 있다. 추천 이미지는 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들을 이해할 수 있도록 설명해주는 이미지이므로, 추천 이미지가 전자책에 포함될 경우, 타겟 연령층의 독자들은 어려운 문단을 독서할 때 도움을 얻을 수 있다. 즉, 전자책의 난이도에 맞추어 자동으로 설정된 레이아웃과 더불어, 추천 이미지를 포함시킨 전자책은, 독자들이 내용을 보다 용이하게 이해할 수 있다는 장점을 가진다.
상기의 효과를 달성하기 위하여, 우선, 서버(100) 또는 사용자 단말(110)은 텍스트에서 적어도 하나 이상의 문단을 획득할 수 있다(541). 사용자 단말(110)의 경우, 도 2의 문단 분석 버튼들(240) 중에서 문단 선택 모드 버튼(241)에 사용자의 입력이 입력됨으로써 문단을 획득할 수 있다. 구체적으로, 사용자가 문단 선택 모드 버튼(241)을 선택하면, 사용자 단말(110)은 사용자가 정보 입력창(200)의 지문 입력부(210)에 작성된 문단들을 선택할 수 있는 모드로 돌입할 수 있다. 이 때, 사용자는 지문 입력부(210)의 엔터 기호들(211, 212, 213, 214, 215, 216)을 클릭하거나 탭(tap)하는 등의 방식으로 취사 선택하여, 문단을 획득할 수 있다. 문단은 하나만 획득할 수도 있고; 하나 이상의 문단을 획득할 수도 있고; 문단들 전부를 획득할 수도 있다. 서버(100)의 경우, 후술의 문단 분석 시작 버튼(242)에 사용자의 입력이 입력되면, 사용자 단말(110)에서 선택된 문단들이 서버(100)로 전송됨으로써, 적어도 하나 이상의 문단을 획득할 수 있다.
이어서, 서버(100) 또는 사용자 단말(110)은 미리 데이터베이스화된 단어들과 일치하는 획득한 문단 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 획득한 문단 내 숙어들 중 적어도 하나를 기초로 생성한 문단의 판별 값을 획득할 수 있다(542). 구체적으로, 도 2의 문단 분석 시작 버튼(242)에 사용자의 입력이 입력되면, 획득한 문단의 판별 값을 생성하는 과정이 시작될 수 있다. 문단의 판별 값은 획득한 문단에서 미리 데이터베이스화된 단어들과 일치하는 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 숙어들 각각의 획득된 문단에서 반복된 횟수에 각각의 타겟 연령층에 대응하는 난이도 값을 곱한 값을 합산한 값일 수 있다. 이때, 타겟 연령층은 도 6을 참조하여 설명된 과정(521)을 통해서 미리 획득될 수 있다.
예를 들어, 타겟 연령층은 “8~9세”일 수 있고, 사용자 단말(110)의 사용자는 도 2의 문단 선택 모드 버튼(241)을 선택한 후, 지문 입력부(210)에서 작성된 문단들에서 엔터 기호(213)를 선택하여 <강희는…일쑤였지요.>라는 문단을 선택할 수 있다. 이후, 사용자가 문단 분석 시작 버튼(242)을 선택하면, 서버(100) 또는 사용자 단말(110)은 <강희는…일쑤였지요.>라는 문단의 판별 값을 생성할 수 있다. <강희는…일쑤였지요.>라는 문단의 판별 값은, 앞서 설명한 [수학식 1]에 따라 (1*2) + (1*5) + (1*4) = 11이라는 값을 가질 수 있다.
다음으로, 서버(100) 또는 사용자 단말(110)은 판별 값이 미리 설정된 판별 조건을 만족할 경우, 획득한 문단을 포함하는 미리 설정된 영역에 이미지가 포함되어 있는지 여부를 확인할 수 있다(543).
여기서 미리 설정된 판별 조건은, 선택된 문단의 판별 값이 미리 설정된 임계 값 이상인 경우 판별 조건을 만족한다고 판별하는 조건일 수 있다.
또한, 미리 설정된 영역은, 가령, 도 4의 이미지 적용창(400)에서 수동 또는 자동으로 설정된 레이아웃을 기준으로, 선택된 문단이 포함된 페이지; 선택된 문단이 포함된 페이지 및 해당 페이지의 바로 앞 페이지; 선택된 문단이 포함된 페이지 및 해당 페이지의 바로 뒤 페이지; 또는 선택된 문단이 포함된 페이지 및 해당 페이지의 바로 앞 페이지 및 바로 뒤 페이지 등일 수 있다.
앞서 설명한 예시를 이어 나가면, 미리 설정된 판별 조건은, 가령, 선택된 문단의 판별 값이 미리 설정된 임계 값인 10 이상인 경우 판별 조건을 만족한다고 판별하는 조건일 수 있다. 이때, <강희는…일쑤였지요.>라는 문단은 판별 값이 11로 10 이상의 값이므로, 서버(100) 또는 사용자 단말(110)은 <강희는…일쑤였지요.>라는 문단이 미리 설정된 판별 조건을 만족했다고 판별할 수 있다.
서버(100) 또는 사용자 단말(110)은 <강희는…일쑤였지요.>라는 문단이 판별 조건을 만족한 것으로 확인한 후, <강희는…일쑤였지요.>라는 문단을 포함하는 미리 설정된 영역에 이미지가 포함되어 있는지 여부를 확인할 수 있다. 구체적으로, 미리 설정된 영역은 선택된 문단이 포함된 페이지일 수 있다. 이때, 서버(100) 또는 사용자 단말(110)은 <강희는…일쑤였지요.>라는 문단이 포함된 페이지, 가령, p.6에 이미지가 포함되어 있는지 여부를 확인할 수 있다.
이후, 서버(100) 또는 사용자 단말(110)은 미리 설정된 영역에 이미지가 포함되지 않은 것으로 확인된 경우, 미리 설정된 영역에 이미지를 추가할 것을 알리고, 추천 이미지를 출력할 수 있다(544).
사용자 단말(110)의 경우, 화면에 팝업창을 띄우는 형식으로, 미리 설정된 영역에 포함된 문단에 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들이 포함되어 있으나, 미리 설정된 영역에 이미지가 추가되어 있지 않으므로, 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들을 설명할 수 있는 이미지를 추가할 것을 알릴 수 있다. 서버(100)의 경우, 사용자 단말(110)에게 위에서 설명한 팝업창을 띄울 것을 알리는 명령을 전송할 수 있다.
나아가, 서버(100)의 미리 학습된 인공 신경망 또는 사용자 단말(110)의 미리 학습된 인공 신경망은 판별 값이 판별 조건을 만족하는 문단을 입력 받은 후, 문단에서 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 설명할 수 있는 추천 이미지를 출력할 수 있고, 출력된 추천 이미지는 사용자 단말(110)의 화면에 표시될 수 있다. 이와 더불어, 사용자 단말(110)은 추천 이미지가 타겟 연령층의 독자들이 어려워하는 단어들 및 숙어들을 설명하는 데 도움이 됐는지 여부를 평가해달라는 설문을 화면에 표시할 수 있다. 서버(100) 또는 인공 신경망(110은 설문의 평가를 기초로 인공 신경망을 갱신할 수 있다. 보다 구체적인 인공 신경망의 학습 과정은 도 10을 참조하여 후술된다.
앞서 설명한 예시를 이어 나가면, 도 4의 레이아웃 표시부(411)에서 확인할 수 있듯이, <강희는…일쑤였지요.>라는 문단을 포함하는 페이지인 p.6에는, 이미지가 포함되어 있지 않을 수 있다. 이 경우, 사용자 단말(110)은 화면에 팝업창을 띄우는 형식으로, p.6에 포함된 <강희는…일쑤였지요.>라는 문단에 8~9세의 독자들이 어려워하는 단어들인 “전달”, “식은땀” 및 숙어 “어깨가(는) 움츠러들다”가 포함되어 있으나, p.6에 이미지가 추가되어 있지 않으므로, 8~9세의 독자들이 어려워하는 “전달”, “식은땀”, “어깨가(는) 움츠러들다”를 설명할 수 있는 이미지를 추가할 것을 알릴 수 있다.
나아가, 사용자 단말(110)은 상기의 팝업창과 더불어, 인공 신경망이 추천한 “전달”, “식은땀”, “어깨가(는) 움츠러들다”라는 단어들 및 숙어를 설명할 수 있는 추천 이미지를 출력하여 화면에 표시해 줄 수 있고, 이와 더불어, 추천 이미지가 8~9세의 독자들이 어려워하는 단어들 및 숙어들을 설명하는 데 도움이 됐는지 여부를 평가해달라는 설문을 화면에 표시할 수 있다.
이상과 같이 도 9를 참조하여 설명된 과정을 통해, 사용자 단말(110)은 획득한 문단에 타겟 연령층의 독자들이 이해하기 어려워하는 단어들 및 숙어들이 판별 조건을 만족시킬 정도로 많이 포함되어 있다고 판별한 경우, 해당 문단의 단어들 및 숙어들의 이해를 돕는 추천 이미지를 제공할 수 있다. 이를 통해, 사용자 단말(110)의 사용자는 타겟 연령층이 보다 이해하기 용이한 전자책을 제작할 수 있다.
도 10은 일실시예에 따른 인공 신경망의 학습 과정을 설명하기 위한 흐름도이다.
인공 신경망은 판별 값이 판별 조건을 만족하는 문단을 입력 받은 후, 문단에서 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 설명할 수 있는 이미지를 출력하는 알고리즘일 수 있다. 인공 신경망은 서버(100) 또는 사용자 단말(110)에 포함되는 구성일 수 있으며, 서버(100), 사용자 단말(110), 또는 별도의 학습 장치를 통해서 학습될 수 있다. 이하에서는 서버(100)에 포함된 인공 신경망이 학습되는 과정을 설명한다.
우선, 서버(100)는 사용자 단말(110)로부터 획득한 문단으로부터 입력을 생성할 수 있다(1010). 구체적으로, 사용자 단말(110)은 도 8의 과정(541) 내지 과정(544)을 통해, 판별 값이 미리 설정된 판별 조건을 만족한 문단을 서버(100)로 전송할 수 있다. 서버(100)는 획득한 문단을 서버(100)에 포함된 인공 신경망의 입력으로 그대로 사용하거나, 문단에서 불필요한 정보를 제거하는 통상의 처리를 거쳐 입력을 생성할 수 있다.
다음으로, 서버(100)는 입력을 인공 신경망에 적용할 수 있다(1020). 서버에 포함된 인공 신경망은 강화 학습(reinforcement learning)에 따라 학습되는 인공 신경망일 수 있다. 이를 통해, 인공 신경망은 사용자 단말(110)의 사용자들의 평가를 반영하여 갱신 및 최적화될 수 있다. 또한, 인공 신경망은 강화 학습을 통해 텍스트에 해당하는 입력을 기초로 추상화된 정보를 추출하여 이미지를 검색하여 출력하는데 적합한 Q-Network, DQN(Depp Q-Network), 또는 관계형 네트워크(relation network, RL)일 수 있다.
이어서, 서버(100)는 인공 신경망으로부터 출력을 획득하여 사용자 단말(110)로 전송할 수 있다(1030). 인공 신경망의 출력은, 획득한 문단에서 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 설명할 수 있는 이미지일 수 있다. 이미지는 서버(100)의 데이터베이스에 미리 저장되어 있던 이미지일 수도 있고, 서버(100)가 인공 신경망의 제어에 따라 웹 상에서 검색한 이미지일 수도 있다. 서버(100)는 인공 신경망의 출력을 획득한 후 사용자 단말(110)로 전송할 수 있다.
이후, 서버(100)는 사용자 단말(110)로부터 출력의 평가를 획득할 수 있다(1040). 출력의 평가는 서버(100)에서 전송한 이미지가 사용자에게 전자책을 제작하는데 도움이 됐는지 여부에 대한 평가일 수 있다. 예를 들어, 서버(100)는 인공 신경망의 출력인 이미지와 더불어 “추천 이미지가 해당 문단에서 타겟 연령층의 독자들이 어려워하는 단어 또는 숙어들을 설명하는데 도움이 됐습니까?”와 같은 종류의 질문을 전송할 수 있고, 위 질문에 사용자 단말(110)의 사용자는 “도움이 많이 됐습니다”; “도움이 어느 정도 됐습니다”; “도움이 되지 않았습니다”와 같은 답변을 입력함으로써 평가가 이루어질 수 있다. 사용자 단말(110)은 사용자의 평가를 서버(100)로 전송할 수 있다.
다음으로, 서버(100)는 획득한 평가를 기초로 인공 신경망을 갱신할 수 있다(1050). 구체적으로, 서버(100)는 인공 신경망이 획득한 문단을 기초로 데이터베이스 또는 웹 상에서 추천 이미지를 검색하는 환경(environment)에서, 보상(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 인공 신경망을 갱신할 수 있다.
이때, 보상들은 사용자 단말(110)들이 전송한 평가들로부터 수여될 수 있다. 예를 들어, 사용자 단말(110)이 전송한 평가가 “도움이 많이 됐습니다”라면 보상(reward)으로 100점이 수여될 수 있고; 전송한 평가가 “도움이 어느 정도 됐습니다”라면 보상(reward)으로 50점이 수여될 수 있고; 전송한 평가가 “도움이 되지 않았습니다”라면 보상으로 0점이 수여될 수 있다. 보상 기준은 평가 항목에 따라 더 세분화되거나 단순화될 수 있다.
한편, 정책을 최적화하는 과정은 보상들의 합의 기대값의 최대값 또는 Q-함수의 최대값을 추정하거나, Q-함수의 손실 함수(loss function)의 최소값을 추정하는 과정을 통해 이루어질 수 있다. 손실함수의 최소값의 추정은 확률적 경사하강법(stochastic gradient descent, SGD) 등을 통해 이루어질 수 있다. 그러나, 정책을 최적화하는 과정은 이에 제한되는 것은 아니며, 강화 학습에서 사용하는 다양한 최적화 알고리즘들이 이용될 수 있다.
서버(100)는 일정 기간에 걸쳐 일정 사용자 단말(110)들과 통신하며 상기와 같은 인공 신경망의 학습 과정을 반복함으로써, 인공 신경망을 점진적으로 갱신시킬 수 있다. 이를 통해, 서버(100)는 사용자 단말(110)을 사용하는 사용자들이 전자책을 제작하는데 도움이 되는 추천 이미지를 제공하는 인공 신경망을 구비할 수 있다. 이를 통해, 사용자 단말(110)들의 사용자들은 향후 완성될 전자책의 타겟 연령층에게 어려운 단어들 및 숙어들이 포함된 문단을 작성한 경우, 서버(100)로부터 해당 단어들 또는 숙어들을 설명하는 추천 이미지를 제공받을 수 있다. 이를 통해, 사용자 단말(110)들의 사용자들은 향후 완성될 전자책들에 타겟 연령층에게 어려운 단어들 또는 숙어들을 설명할 수 있는 이미지를 보다 용이하게 포함시킬 수 있다. 이를 통해, 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들이 전자책에 많이 포함되더라도, 사용자 단말(110)의 사용자들은 타겟 연령층에 대응하는 난이도 값을 가지는 단어들 및 숙어들을 설명해줄 수 있는 이미지를 전자책에 용이하게 포함시킬 수 있게 된다. 이를 통해, 사용자 단말(110)의 사용자들은 타겟 연령층의 독자들이 보다 용이하게 이해할 수 있는 전자책을 제작할 수 있다.
도 11은 일실시예에 따른 장치의 구성의 예시도이다.
일실시예에 따른 장치(1101)는 프로세서(1102) 및 메모리(1103)를 포함한다. 일실시예에 따른 장치(1101)는 상술한 서버(100) 또는 사용자 단말(110)일 수 있다. 프로세서는 도 1 내지 도 10을 통하여 전술한 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 10을 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 메모리(1103)는 상술한 방법과 관련된 정보를 저장하거나 상술한 방법이 구현된 프로그램을 저장할 수 있다. 메모리(1103)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(1102)는 프로그램을 실행하고, 장치(1101)를 제어할 수 있다. 프로세서(1102)에 의하여 실행되는 프로그램의 코드는 메모리(1103)에 저장될 수 있다. 장치(801)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (10)

  1. 서버와 통신할 수 있는 사용자 단말을 통해 수행되는 전자책 제작 방법에 있어서,
    전자책에 포함될 텍스트 및 이미지들을 획득하는 단계;
    상기 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하는 단계; 및
    상기 전자책의 난이도에 기초하여, 상기 텍스트 및 상기 이미지들이 상기 전자책에 배치되는 레이아웃을 미리 설정된 표준에 따라 자동 설정하는 단계;
    를 포함하며,
    상기 전자책의 난이도를 결정하는 단계는,
    전자책의 타겟 연령층을 획득하는 단계; 및
    미리 데이터베이스화된 단어들과 일치하는 상기 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 상기 텍스트 내 숙어들 중 적어도 하나를 기초로 생성한 텍스트의 판별 값을 획득하는 단계;
    를 포함하고,
    상기 미리 설정된 결정 기준은
    상기 텍스트의 판별 값이 미리 설정된 임계 범위에 포함되는 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 적합한 난이도라고 결정하고,
    상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최대값을 초과할 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 어려운 난이도라고 결정하고,
    상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최소값보다 미만일 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 쉬운 난이도라고 결정하는 기준인,
    전자책 제작 방법.
  2. 제 1항에 있어서,
    상기 레이아웃을 자동 설정하는 단계는,
    상기 미리 설정된 표준에 따라 상기 텍스트의 글자 크기, 글자 간격, 줄 당 최대 글자 수, 줄 간격, 페이지 당 최대 글자 수, 페이지 당 최대 줄 수 중 적어도 하나 이상을 자동 설정하는 단계; 및
    상기 미리 설정된 표준에 따라 상기 이미지들의 위치, 크기, 및 페이지 당 최대 이미지 수 중 적어도 하나 이상을 자동 설정하는 단계;
    를 포함하는,
    전자책 제작 방법.
  3. 삭제
  4. 제 2항에 있어서,
    상기 미리 데이터베이스화된 단어들 및 상기 미리 데이터베이스화된 숙어들 각각은 연령층별로 독자들이 해당 단어 또는 해당 숙어를 어려워하는 정도를 기초로 생성한 연령층별 난이도 값을 가지며,
    연령층별로 독자들이 특정 단어 또는 특정 숙어를 어려워하는 정도를 판단하는 과정은 미리 정의된 판단법에 따라 이루어지는,
    전자책 제작 방법.
  5. 제 4항에 있어서,
    상기 미리 데이터베이스화된 단어들 중 특정 단어 또는 상기 미리 데이터베이스화된 숙어들 중 특정 숙어가 가지는 특정 연령층의 난이도 값은,
    상기 특정 연령층의 독자들의 20% 이상 40% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 1;
    상기 특정 연령층의 독자들의 40% 이상 60% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 2;
    상기 특정 연령층의 독자들의 60% 이상 80% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 3;
    상기 특정 연령층의 독자들의 80% 이상 90% 미만이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 4;
    상기 특정 연령층의 독자들의 90% 이상이 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 5;
    상기 특정 연령층의 독자들의 20% 미만만 상기 특정 단어 또는 상기 특정 숙어를 어려워하는 것으로 판단된 경우, 상기 특정 단어 또는 상기 특정 숙어의 상기 특정 연령층의 난이도 값은 없거나 0인;
    전자책 제작 방법.
  6. 제 5항에 있어서,
    상기 텍스트의 판별 값은 텍스트 내 문단들의 판별 값을 합산한 값이며,
    특정 문단의 판별 값은 상기 특정 문단에서 상기 미리 데이터베이스화된 단어들과 일치하는 단어들 및 상기 미리 데이터베이스화된 숙어들과 일치하는 숙어들 각각의 상기 특정 문단에서 반복된 횟수와 상기 타겟 연령층의 난이도 값을 곱한 값을 합산한 값인,
    전자책 제작 방법.
  7. 제 6항에 있어서,
    상기 텍스트에서 적어도 하나 이상의 문단을 획득하는 단계;
    상기 미리 데이터베이스화된 단어들과 일치하는 상기 문단 내 단어들 및 상기 미리 데이터베이스화된 숙어들과 일치하는 상기 문단 내 숙어들 중 적어도 하나를 기초로 상기 문단의 판별 값을 생성하여 획득하는 단계;
    상기 문단의 판별 값이 미리 설정된 판별 조건을 만족할 경우, 상기 문단을 포함하는 미리 설정된 영역에 이미지가 포함되어 있는지 여부를 확인하는 단계; 및
    상기 미리 설정된 영역에 이미지가 포함되지 않은 것으로 확인된 경우, 상기 미리 설정된 영역에 이미지를 추가할 것을 알리고, 추천 이미지를 출력하는 단계;
    를 더 포함하는
    전자책 제작 방법.
  8. 제 7항에 있어서,
    상기 추천 이미지는 상기 문단을 입력 받은 미리 학습된 인공 신경망을 통해 출력되는
    전자책 제작 방법.
  9. 하드웨어와 결합되어 제1항 또는 제2항 또는 제4항 내지 제8항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  10. 전자책에 포함될 텍스트 및 이미지들을 획득하고,
    상기 텍스트에 기초하여, 미리 설정된 결정 기준에 따라 전자책의 난이도를 결정하고,
    상기 전자책의 난이도에 기초하여, 상기 텍스트 및 상기 이미지들이 상기 전자책에 배치되는 레이아웃을 자동 설정하는 프로세서
    를 포함하며,
    상기 프로세서는
    상기 전자책의 난이도를 결정함에 있어서,
    전자책의 타겟 연령층을 획득하고,
    미리 데이터베이스화된 단어들과 일치하는 상기 텍스트 내 단어들 및 미리 데이터베이스화된 숙어들과 일치하는 상기 텍스트 내 숙어들 중 적어도 하나를 기초로 생성한 텍스트의 판별 값을 획득하고,
    상기 미리 설정된 결정 기준은
    상기 텍스트의 판별 값이 미리 설정된 임계 범위에 포함되는 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 적합한 난이도라고 결정하고,
    상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최대값을 초과할 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 어려운 난이도라고 결정하고,
    상기 텍스트의 판별 값이 상기 미리 설정된 임계 범위의 최소값보다 미만일 경우, 상기 전자책의 난이도를 타겟 연령층이 읽기 쉬운 난이도라고 결정하는 기준인,
    전자책 제작 장치.


KR1020190067273A 2019-06-07 2019-06-07 전자책 제작 방법 및 장치 KR102073262B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190067273A KR102073262B1 (ko) 2019-06-07 2019-06-07 전자책 제작 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190067273A KR102073262B1 (ko) 2019-06-07 2019-06-07 전자책 제작 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102073262B1 true KR102073262B1 (ko) 2020-03-02

Family

ID=69805558

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190067273A KR102073262B1 (ko) 2019-06-07 2019-06-07 전자책 제작 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102073262B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230069374A (ko) * 2021-11-12 2023-05-19 (주)키출판사 어도비 인디자인 전자편집(dtp) 프로그램을 이용한 이미지 자동배치 및 실행방법
KR102636391B1 (ko) * 2023-04-10 2024-02-13 박진태 적응형 템플릿 디자인 생성 플랫폼 운영 서버 및 그 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305598A (ja) * 1996-05-13 1997-11-28 Sanyo Electric Co Ltd 文書レイアウト編集装置、文書レイアウト編集方法、記憶媒体
KR20050122571A (ko) * 2004-06-24 2005-12-29 김기형 어휘의 난이도 정보와 시소러스를 활용한 도서지수 부여시스템
KR20120063718A (ko) * 2010-12-08 2012-06-18 주식회사 펀진 언어 학습을 위한 단어장 생성 방법
KR101781458B1 (ko) * 2016-04-29 2017-09-26 (주)웅진컴퍼스 언어 학습 서비스 제공 시스템 및 언어 학습 서비스 제공 방법
KR20190037907A (ko) * 2017-09-29 2019-04-08 주식회사 투블루 카드뉴스 제작서비스 제공방법 및 애플리케이션

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305598A (ja) * 1996-05-13 1997-11-28 Sanyo Electric Co Ltd 文書レイアウト編集装置、文書レイアウト編集方法、記憶媒体
KR20050122571A (ko) * 2004-06-24 2005-12-29 김기형 어휘의 난이도 정보와 시소러스를 활용한 도서지수 부여시스템
KR20120063718A (ko) * 2010-12-08 2012-06-18 주식회사 펀진 언어 학습을 위한 단어장 생성 방법
KR101781458B1 (ko) * 2016-04-29 2017-09-26 (주)웅진컴퍼스 언어 학습 서비스 제공 시스템 및 언어 학습 서비스 제공 방법
KR20190037907A (ko) * 2017-09-29 2019-04-08 주식회사 투블루 카드뉴스 제작서비스 제공방법 및 애플리케이션

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230069374A (ko) * 2021-11-12 2023-05-19 (주)키출판사 어도비 인디자인 전자편집(dtp) 프로그램을 이용한 이미지 자동배치 및 실행방법
KR102649627B1 (ko) 2021-11-12 2024-03-20 (주)키출판사 어도비 인디자인 전자편집(dtp) 프로그램을 이용한 이미지 자동배치 및 실행방법
KR102636391B1 (ko) * 2023-04-10 2024-02-13 박진태 적응형 템플릿 디자인 생성 플랫폼 운영 서버 및 그 동작 방법

Similar Documents

Publication Publication Date Title
Rakedzon et al. Automatic jargon identifier for scientists engaging with the public and science communication educators
CN109800386B (zh) 突出显示文档内文本的关键部分
Ferretti et al. Automatic web content personalization through reinforcement learning
Almeida et al. The Role of Responsive Design in Web Development.
US11194958B2 (en) Fact replacement and style consistency tool
Bunt et al. Supporting interface customization using a mixed-initiative approach
US9384183B2 (en) Method and system for reporting web standard non-compliance of web pages
AU2018205185B2 (en) Scalable font pairing with asymmetric metric learning
US20200142545A1 (en) Document contribution management system
US10984027B2 (en) Techniques for user-centric document summarization
Todi et al. Familiarisation: Restructuring layouts with visual learning models
CN109426658A (zh) 使用基于文本分析的智能特征建议进行文档美化
KR102073262B1 (ko) 전자책 제작 방법 및 장치
US20170098281A1 (en) Educational content management apparatus and method
KR102099313B1 (ko) 아트 폰트를 생성하기 위한 방법, 장치 및 이를 수행하는 프로그램
Bartalesi et al. An enriched ePub eBook for screen reader users
Trapp et al. App icon similarity and its impact on visual search efficiency on mobile touch devices
Król et al. Local government website usability on mobile devices: test results and recommendations
Danylyk et al. Detecting items with the biggest weight based on neural network and machine learning methods
US9424107B1 (en) Content enhancement techniques
US9830636B1 (en) Multi-format content recommendations to improve format fluency
Baker et al. The item characteristic curve
Bratić et al. Readability Evaluation of Variable Handwritten Fonts on Different Screen Sizes Using Fuzzy Logic.
US11113082B2 (en) Help content based application page analysis
TW201610846A (zh) 用於增強文件生產力的個體辨認

Legal Events

Date Code Title Description
GRNT Written decision to grant