KR20170043292A - 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치 - Google Patents

복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치 Download PDF

Info

Publication number
KR20170043292A
KR20170043292A KR1020150142869A KR20150142869A KR20170043292A KR 20170043292 A KR20170043292 A KR 20170043292A KR 1020150142869 A KR1020150142869 A KR 1020150142869A KR 20150142869 A KR20150142869 A KR 20150142869A KR 20170043292 A KR20170043292 A KR 20170043292A
Authority
KR
South Korea
Prior art keywords
unit
text
data
tts
electronic document
Prior art date
Application number
KR1020150142869A
Other languages
English (en)
Other versions
KR102602836B1 (ko
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 KR1020150142869A priority Critical patent/KR102602836B1/ko
Publication of KR20170043292A publication Critical patent/KR20170043292A/ko
Application granted granted Critical
Publication of KR102602836B1 publication Critical patent/KR102602836B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F9/00Methods or devices for treatment of the eyes; Devices for putting-in contact lenses; Devices to correct squinting; Apparatus to guide the blind; Protective devices for the eyes, carried on the body or in the hand
    • A61F9/08Devices or methods enabling eye-patients to replace direct visual perception by another kind of perception
    • G06F17/21
    • G06F17/248
    • G06F17/30067
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Tourism & Hospitality (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Animal Behavior & Ethology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Machine Translation (AREA)
  • Software Systems (AREA)
  • Vascular Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Biomedical Technology (AREA)
  • Ophthalmology & Optometry (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 발명은 복잡한 다단 구조의 레이아웃으로 구성된 전자책 또는 전자문서의 음성 합성 방법 및 장치에 관한 것이다.
본 발명은 텍스트가 입력된 텍스트 프레임의 레이어를 낭독될 순서대로 최하위 레이어부터 최상위 레이어까지 순서대로 정렬하여 디자인을 완성시켜 PDF로 변환하여 저장후 웹서버로 업로드하는 DTP부(102), PDF를 다운로드 받아 최하위 레이어부터 최상위 레이어까지 순서대로 좌표값과 텍스트 데이터를 추출 및 병합하여 XML포멧과 같은 파일로 저장하여 웹서버로 업로드하거나 또는 웹서버의 데이터베이스에 저장하는 제작부(103), 웹서버에 업로드된 XML포멧과 같은 파일을 열거나 또는 데이터베이스에 접근하여 데이터베이스 파일을 열어서 낭독할 텍스트 데이터를 추출한후 변수에 저장하여, 문장 종결부호로 구분된 문장 단위로 낭독할때는 변수를 파라미터로 하여 TTS부의 TTS함수를 호출하여 음성 낭독하거나 또는 메시지 박스 또는 HTML형태로 디스플레이부에 출력하여 TTS부에서 음성 합성하여 음성 출력부로 음성 낭독하는 열람부(104)가 인터넷 통신망을 포함한 유.무선 네트웍(100)으로 연결됨으로써 구현될 수 있다.
본 발명에 따르면 비장애인을 위한 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서를 별도의 시간과 노력과 비용을 들여 시각장애인 전용의 매체로 재가공하지 않아도 시각장애인들로 하여금 문맥 파악이 용이하고, 그 뜻을 이해하기 쉽도록 TTS부에서 문장을 순서대로 음성으로 낭독할 수 있다.

Description

복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치{Method and apparatus of speech synthesis for e-book and e-document data structured layout with complex multi layers}
본 발명은 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서를 낭독하는 방법 및 장치에 관련이 되어 있다. 보다 구체적으로는 하루에도 수 없
이 많이 쏟아져 나오는 비장애인을 위한 복잡한 다단 구조의 레이아웃으로 구
성된 전자책 및 전자문서를 별도의 시간과 노력과 비용을 들여 시각장애인 전
용의 매체로 재가공하지 않아도 TTS(Text To Speech)프로그램과 연동하여 시각
장애인들이 문맥을 쉽게 파악할 수 있고, 그 뜻을 이해하기 쉽도록 음성으로
낭독하기 위한 방법 및 장치에 관한 것이다.
비장애인들을 위해서는 하루에도 수많은 인쇄 출판물들이 쏟아져 나오
고 있고, 비장애인들은 어려서부터 다양한 분야의 수많은 책을 읽을 수 있
어서 진학과 취업에 있어 매우 자유롭다. 그러나 시각장애인들은 비장애인들
의 인쇄 출판물들 중에서 극소수를 선별하여 오디오 북 또는 점자 또는 시각장
애인 전용의 Daisy 포멧의 매체로 제작하여 읽을 수밖에 없으며, 이러한 시각
장애인 전용의 매체로 제작하기 위해서는 많은 시간과 노력과 비용이 수반되기
때문에 독서의 폭과 질과 양적인 면에서 매우 제한적일 수밖에 없으며, 성장
후의 진로에도 많은 영향을 미치고 있다. 이를 극복하기 위해 비장애인들의 전
자책 및 전자문서를 TTS프로그램과 연동하여 시각장애인들로 하여금 음성낭독
을 통해 읽을 수 있도록 하는 방안이 대두 되고 있으며, 미국 마이크로소프트사
에서는 윈도즈 (Windows)10과 에지 (Edge)브라우저를 출시하면서 TTS프로그램
이 탑재된 스크린 리더를 기본 제공하고 있지만, 종래의 기술로는 복잡한 다단
구조의 레이아웃으로 구성된 전자책 또는 전자문서를 시각장애인들이 그 뜻을
쉽게 이해할 수 있도록 순서대로 낭독하는 것에 한계가 있어 왔다.
즉, 종래의 기술로서, 「전자책 데이터 음성 합성 장치 및 그 방법(특허출원번
호10-2012-0061585)」이 있는데, 이는 좌표값에 기초하여 문장 단위로 음성 합
성하는 기술이다. 그러나 이미지와 텍스트가 혼용된 복잡한 구조의 레이아웃에
서는 좌표값만으로는 어떤 문장을 먼저 낭독해야 할지 정확히 구분할 수 없다.
즉, 삽입된 이미지가 크고 텍스트가 인접한 단에 좌표상으로 더 가까울 경우
좌표만으로 구별하는 종래의 기술로는 인접한 단과의 구별이 용이하지 않게 되
고, 종국에는 시각장애인들로서는 그 뜻을 정확히 이해할 수 없는 형태로 음성
낭독이 되게 된다. 특히 디자인 및 편집 과정에서 [도 3] 과같이 타이틀을 강조
하기 위해 "긍정적인 마인드 키우는 6가지 방법"이란 타이틀을 중간 위치로 디
자인하는 경우가 실무적으로는 매우 많기 때문에 좌표값만으로 낭독할 순서를
결정하는 것은 시각장애인들에게 큰 혼란을 야기하게 된다.
국내등록특허 제1401427호 (2014.05.20)
본 발명은 전술한 문제점을 해결하기 위한 것으로, 복잡한 다단 구조의 레이아웃으로 구성된 전자책 또는 전자문서의 음성 합성에 있어서, DTP부에서 텍스트가 삽입된 텍스트 프레임의 레이어를 낭독될 순서대로 최하위 레이어부터 최상위 레이어까지 순서대로 정렬하여 디자인을 완성해 PDF로 변환하여 저장 후 웹서버부로 업로드하고, 제작부에서는 PDF를 다운로드 받아 최하위 레이어부터 최상위 레이어까지 순서대로 좌표값과 텍스트 데이터를 추출 및 병합하여 XML 포멧과 같은 파일로 저장하여 웹서버로 업로드하거나 또는 웹서버의 데이터베이스에 저장하고, 열람부에서는 웹서버에 업로드 된 XML 포멧과 같은 파일을 열거나 또는 데이터베이스에 접근하여 데이터베이스 파일을 열어서 낭독할 텍스트 데이터를 추출한 후 변수에 저장하여, 문장 종결부호로 구분된 문장 단위로 낭독할 때는 변수를 파라미터로 하여 TTS부의 TTS 함수를 호출하여 음성 낭독하거나 또는 메시지 박스 또는 HTML 형태로 디스플레이 부에 출력하여 TTS부에서 음성 합성하여 음성 출력부로 음성 낭독한다. 또한 장(Chapter) 제목, 절 제목, 소제목, 각주, 주석처럼 음성으로 낭독될 때 종결부호가 없어서 뒷 문장과 붙어서 매우 부자연스럽게 낭독되는 문제를 해결하기 위해 디스플레이 부에서는 비 표시되도록 종결부호를 배경색상과 같게 하여 DTP부에서 텍스트 프레임에 추가하거나, 사진 또는 이미지의 설명문과 같이 비장애인에게는 불필요한 문자열은 디스플레이 부에서 비 표시되도록 하지만 TTS부에서는 음성 합성되도록 DTP부에서 텍스트 프레임 상위에 이미지 프레임을 중첩시켜 비 표시하거나 또는 배경색상과 같도록 텍스트 프레임에 입력된 텍스트의 색상을 변경하고, 표(Table)의 경우에는 DTP부에서 배경 색상과 같은 색상으로 행과 열의 개수를 포함하는 시작 표식어와 종료 표식어를 삽입하고, 표(Table)의 각 셀(Cell)에 들어 있는 문자열을 종결어와 조합시켜서 시각장애인들로 하여금 문맥 파악이 용이하고, 그 뜻을 이해하기 쉽도록 음성 낭독한다.
상기 목적을 달성하기 위한 본 발명에 따른 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서는 Adobe사의 inDesign과 같은 중첩 레이어 기능을 제공하는 DTP(Desktop Publishing) 프로그램으로 디자인 및 편집한다.
디자이너는 DTP(Desktop Publishing) 프로그램으로 디자인할 때 하나의 페이지를 디자인하는 과정에서 사진, 이미지, 일러스트 등을 이미지 프레임에 삽입하거나 그려 넣기도 하고 텍스트를 텍스트 프레임에 입력하여 넣거나 텍스트 파일에서 불러와서 붙여 넣기 하여 디자인을 완성 시키고, 다수의 텍스트 프레임의 텍스트를 TTS부에서 순서대로 음성 합성하여 낭독시키기 위해서 텍스트 프레임의 레이어를 낭독될 순서대로 최하위 레이어에서 최상위 레이어까지 정렬하여 저장하고, 최종적으로 PDF로 변환한다. 변환된 PDF로부터 텍스트 데이터와 좌표 등을 텍스트 프레임의 최하위 레이어 부터 최상위 레이어까지 순차적으로 추출하여 XML형태로 구성하고, XML로 부터 텍스트를 추출하여 TTS프로그램과 연동하여 음성 낭독한다.
본 발명의 일 실시 예에 따르면, 텍스트 데이터는 텍스트와 좌표값으로 구성된다. 좀 더 상세하게는 텍스트 프레임은 한 개 또는 여러 개의 텍스트 라인으로 구성되며, 텍스트의 최소 요소는 텍스트 프레임의 한 개 라인 단위로 하되, 레이어가 다른 경우에는 같은 라인이라 하더라도 다른 텍스트 요소로 구분하며, 하나의 텍스트 요소는 텍스트, 텍스트 라인의 시작점 좌표, 텍스트 라인의 너비, 텍스트 라인의 높이, 텍스트 라인의 끝점 좌표로 구성되고, 폰트 및 폰트 색상, 배경색 등이 추가될 수 있으며, 페이지의 하단에 주로 표시되는 페이지 번호나 상단에 반복적으로 표시되는 장 제목 또는 절 제목 등 음성낭독으로 인해 오히려 시각장애인들에게 혼란을 줄 수 있는 텍스트는 제외시키고 음성낭독이 되도록 한다.
하루에도 수없이 많이 쏟아져 나오는 비장애인을 위한 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서를 별도의 시간과 노력과 비용을 들여 시각장애인 전용의 매체로 재가공하지 않아도 시각장애인들로 하여금 문맥 파악이 용이하고, 그 뜻을 이해하기 쉽도록 TTS(Text To Speech)프로그램과 연동하여 문장을 순서대로 음성으로 낭독함으로써 시각장애인들의 교육과 취업에 필요한 다양한 종류의 전자책 또는 전자문서를 제공할 수 있어 시각장애인들의 정보격차를 해소하고, 삶의 질을 높이는 효과가 있다.
도 1은 본 발명에 따른 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 시스템의 구성 예시도.
도 2는 본문 텍스트 파일의 일 실시 예.
도 3은 복잡한 다단 구조의 레이아웃의 일 실시 예.
도 4는 inDesin에서 텍스트 프레임에 텍스트를 넣고 남은 텍스트의 일 실시 예.
도 5는 남은 텍스트를 다른 텍스트 프레임에 넣은 일 실시 예.
도 6은 텍스트 본문을 순서대로 낭독하지 못 하는 일 실시 예.
도 7은 텍스트 프레임을 낭독될 순서대로 정렬한 일 실시 예.
도 8은 inDesign에서 텍스트 프레임을 낭독될 순서대로 정렬해도 순서대로 낭독하지 못 하는 일 실시 예.
도 9는 inDesign에서 집필 패널에 낭독될 순서대로 테스트 프레임을 등록한 일 실시 예.
도 10은 inDesign에서 집필 패널에 낭독될 순서대로 테스트 프레임을 등록하여 순서대로 낭독하는 일 실시 예.
도11은 본 발명에 따른 텍스트 프레임을 정렬하여 낭독될 순서대로 메시지 박스에 출력한 일 실시 예.
도 12는 전자책 뷰어에서 낭독될 순서대로 메시지 박스에 출력한 일 실시 예.
도 13 내지 도 28은 본 발명의 일 실시 예를 설명하는 흐름도.
도 29는 전자책 뷰어에서 1행의 표(Table)를 낭독될 순서대로 메시지 박스에 출력한 일 실시 예.
도 30은 8행 4열의 표(Table)의 일 실시 예.
도 31은 8행 3열의 표(Table)의 일 실시 예.
전술한 기술적 과제를 달성하기 위해서, 본 발명은 텍스트 데이터를 추출하는 데이터 추출부(106), 추출된 문자 데이터를 생성하는 문자 데이터 생성부(107), 데이터를 저장하는 저장부(108), 데이터를 데이터베이스에 저장하는 데이터베이스부(109), 음성 합성하기 위한 텍스트를 변수에 저장하고 TTS 함수에서 변수를 파라미터로서 호출하여 음성 합성하는 TTS부(110)를 구비한 서버(105)로 구성된 웹서버부(101), 디자이너가 중첩 레이어 기능을 제공하는 DTP(Desktop Publishing) 프로그램을 사용하여 전자책 및 전자문서를 디자인하는 과정에서 이미지를 삽입하는 이미지 프레임부(112), 텍스트를 입력하는 텍스트 프레임부(113), TTS프로그램을 통해 텍스트를 음성으로 낭독할 때 그 순서를 설정하는 레이어부(114), 디자인을 완료한 후 이를 PDF 등의 포멧으로 저장하는 저장부(115), 저장부(115)에 저장된 데이터를 웹서버부(101)의 저장부(108)에 업로드하는 서버 업로드부(116)로 구성된 DTP부(102), 텍스트 데이터를 추출하는 데이터 추출부(118), 추출된 문자 데이터를 생성하는 문자 데이터 생성부(119), 텍스트 데이터를 저장 또는 문자 데이터 생성부(119)에서 생성된 데이터를 저장하는 저장부(120), 데이터를 웹서버부(101)의 저장부(108)에 업로드하는 서버 업로드부(121)로 구성되는 제작부(103), 스마트폰 및 태블렛을 포함하는 휴대용 단말기(122) 또는 PC 및 단말기(123)에서 웹 브라우저부(127)상에 웹 브라우저 기반의 뷰어를 다운로드하여 전자책 및 전자문서를 열람하기 위해 웹서버부(101)로 부터 다운로드 받아 저장부(125)에 저장하는 웹 브라우저 기반 뷰어부(124), 단락(Paragraph)의 그룹으로 구성된 데이터를 메시지 박스 형태 또는 HTML형태로 출력하는 디스플레이부(128), 디스플레이부(128)에 출력된 메시지 박스 또는 HTML의 텍스트 또는 문장별 낭독을 위한 문장을 음성 합성하는 TTS부(126), TTS부(126)에서 음성 합성하여 음성으로 출력하는 음성 출력부(129), 스마트폰 및 태블렛을 포함하는 휴대용 단말기(130)에 전자책 또는 전자문서의 열람을 위한 앱(App)을 웹서버부(101)로 부터 다운로드 받아 저장부(132)에 저장 및 설치한 앱기반 뷰어부(131), 단락(Paragraph)의 그룹으로 구성된 데이터를 메시지 박스 형태 또는 HTML형태로 출력하는 디스플레이부(134), 디스플레이부(134)에 출력된 메시지 박스 또는 HTML의 텍스트 또는 문장별 낭독을 위한 문장을 음성 합성하는 TTS부(133), TTS부(133)에서 음성 합성하여 음성으로 출력하는 음성 출력부(135)로 구성되는 열람부(104)가 인터넷 통신망을 포함한 유.무선 네트웍(100)으로 연결되어 문장들을 순서대로 낭독할 수 있도록 음성 합성하는 장치를 제공한다.
또한 상기 음성 합성하는 방법은 하기와 같은 단계를 포함할 수 있다.
DTP부(102)에서 복잡한 다단 구조의 레이아웃으로 구성된 전자책 또는 전자문서를 디자인 및 편집하기 위해 Adobe사의 inDesign과 같은 중첩 레이어 기능을 제공하는 DTP(Desktop Publishing) 툴(Tool)을 사용하여 디자인 및 편집한다. 이때 사진이나 이미지에 대한 설명글을 열람부(104)의 TTS부(126, 133)에서 음성 합성하여 음성출력부(129, 135)에서 음성으로 낭독하지만, 디스플레이부(128,134)에서는 비 표시되도록 하기 위해 [도 14]에서 사진이나 이미지에 대한 설명글을 텍스트 프레임부(113)에 입력(213)하고 사진이나 이미지를 이미지 프레임부(112)에 삽입(216)한 후, 텍스트 프레임부(113)의 레이어 위에 이미지 프레임부(112)의 레이어를 중첩시켜 비 표시하거나(220), 또는 설명글을 배경색상과 같은 색상으로 변경하여 비 표시(222)하는 설명글 입력 단계(212-223), [도 15]에서 본문 텍스트를 입력할 때 텍스트 프레임을 선택(224)하여 텍스트를 입력(226)하거나 또는 파일에 저장되어 있는 텍스트를 가져 오기할지를 판단(227)하여 가져 오기할 것이면 텍스트 파일을 가져 와서(228), 하나 또는 여러 개의 텍스트 프레임부(113)에 채워 넣는(229) 본문 입력 단계(224-230), 종결부호 입력을 판단(202)하여 [도 16]에서 문장이 평서문과 명령문의 경우에는 마침표(.)와 한칸을 입력(233)하고, 감탄문과 기원문의 경우에는 느낌표(!)와 한칸을 입력(235)하고, 의문문의 경우에는 물음표(?)와 한칸을 입력(237)하고, 줄임표를 입력해야 하는 경우에는 줄임표(...)와 한칸을 입력(239)하고, 색상을 배경색상과 같은 색상으로 변경(240)하여 디스플레이부(128,134)에 비 표시되는 종결부호 입력 단계(232-241), 텍스트가 입력되어 있는 텍스트 프레임부(113)의 레이어를 최하위 레이어 부터 최상위 레이어까지 시각장애인들이 문맥을 쉽게 파악할 수 있는 순서대로 텍스트 프레임부(113)의 레이어를 정렬하는 텍스트 프레임의 레이어 정렬 단계(203), [도 17]에서 표(Table)를 입력하는 표 입력 단계(242-255), 디자인을 종료할지를 판단(206)하여 종료할 것이면 PDF 등의 포멧으로 데이터를 저장하는 데이터 저장 단계(207), 웹서버부 (101)의 저장부(108)에 PDF 등의 포멧으로 제작부(103)의 저장부(120)에 저장되어 있는 데이터를 웹서버부(101)의 저장부(108)에 업로드하는 서버 업로드 단계(208-211)를 포함할 수 있다. 또한 제작부(103)에서 수행 되어지는 단계로서, [도 18]에서 웹 서버부 (101)의 저장부(108)에 접근하기 위해 서버에 접속(256)하여 로그인 정보를 입력(257)하여 로그인(258)하는 서버 로그인 단계(256-258), 웹서버부(101)에서 가공할지 또는 제작부(103)에서 가공할지를 판단(259)하여 웹서버부(101)에서 가공하는 경우에는 가공 프로그램을 실행(261)하고, 그렇지 않으면 웹서버부(101)의 저장부(108)에 저장되어 있는 가공 프로그램을 제작부(103)의 저장부(120)로 다운로드 및 설치(260)하여 프로그램을 실행(261)하는 프로그램 실행 단계(259-261), 파일을 열어 최하위 레이어 부터 최상위 레이어까지 순차적으로 텍스트 데이터를 추출하는 데이터 추출 단계 (262-363), [도 26]에서 추출된 데이터를 데이터베이스에 저장할지를 판단(364)하여 데이터베이스에 저장하는 경우에는 데이터베이스에 저장(365)하고, 그렇지 않으면 파일에 저장(366)하여 웹서버부(101)의 저장부(108)로 업로드하는 서버 업로드 단계(367)를 포함할 수 있다. 또한 열람부(104)에서 수행되어지는 단계로서, 웹브라우저상에서의 열람인지 또는 앱(App)상에서의 열람인지를 판단(368)하여 웹브라우저상에서의 열람일 경우에는 웹브라우저 기반 뷰어를 다운로드 및 설치(370)하고, 앱(App)상에서의 열람일 경우에는 앱(App)을 다운로드하여 설치(369)하는 뷰어 다운로드 및 설치 단계(368-370), 문장종결부호를 기준으로 한 문장별로 낭독할지를 판단(371)하여 참이면 현재 페이지 번호를 추출(372)하고, 현재 페이지만 낭독할지를 판단(373)하여 참이면 현재 페이지 번호를 추출(374)하고, 몇 페이지 부터 몇 페이지까지의 구간을 낭독할지를 판단(375)하여 참이면 시작 페이지와 종료 페이지 번호를 입력(376)하고, 현재 페이지 부터 마지막 페이지까지 낭독할지를 판단(377)하여 참이면 현재 페이지 번호와 마지막 페이지 번호를 추출(378)하는 페이지 번호 입력 및 추출 단계(371-378), [도 27]에서 데이터 파일이 서버의 데이터베이스에 저장되어 있는지를 판단(379)하여 참이면 데이터베이스에 접속(380)하여 데이터베이스 파일을 열고(381), 그렇지 않고 서버의 저장부에 파일 형태로 저장되어 있는 경우에는 데이터 파일을 다운로드(383)하여 열거나(384) 또는 AJAX(Asynchronous JavaScript and XML) 웹 개발 기법을 사용하여 다운로드 하지 않고 웹서버부(101)의 저장부(108)에 저장되어 있는 데이터 파일을 여는 파일 열기 단계(379-384), 낭독할 텍스트 데이터 추출 및 저장하는 데이터 추출 단계(385-388), 문장종결어로 구분된 문장(Sentence)별로 낭독할지, 또는 단락(Paragraph)과 단락이 모인 단락의 그룹을 낭독할지를 판단(389)하여 문장별로 낭독하는 경우에는 문장별로 낭독하는 문장별 낭독 루틴(390), 단락(Paragraph)의 그룹을 낭독하는 경우에는 단락(Paragraph)의 그룹으로 구성된 데이터를 메시지 박스 형태로 열람부(104)의 디스플레이부(128, 134)에 출력(403)하거나 또는 HTML문을 생성(401)하여 열람부(104)의 디스플레이부(128, 134)에 HTML 형태로 출력(402) 하여 TTS부(126, 133)에서 음성 합성하여 음성 출력부(129, 135)를 통해 낭독하는 음성 낭독 단계(389-404), 낭독을 종료할지를 판단(405)하여 참이면 열려져 있던 파일을 닫고, 접속해 있던 데이터베이스의 접속을 종료하는 낭독 종료 단계(405-406)를 포함할 수 있다. 또한 웹서버부(101)에서 수행되어 지는 단계로서, DTP부에서 디자인을 완료한 후 PDF 등의 포멧으로 데이터를 웹서버의 저장부에 업로드(211)하거나, 또는 제작부에서 PDF로 부터 데이터 추출 루틴(265)을 통해 추출된 데이터를 데이터베이스에 저장(365)하거나 또는 저장부에 저장(366)하거나, 웹서버부(101)의 서버(105)에서 PDF로 부터 데이터를 추출하기 위해 가공 프로그램을 실행(261)하여 PDF 포멧 등의 파일을 여는 파일 열기 단계(262), 최하위 레이어 부터 최상위 레이어까지 순차적으로 텍스트 데이터를 데이터 추출 루틴(265)을 통해 추출하여, 데이터베이스에 저장(365)하거나 또는 파일에 저장(366)하는 서버상에서의 데이터 추출 단계(262-363)를 포함할 수 있다. 상기 표 입력 단계(242-255)는 하기와 같은 단계를 포함할 수 있다. 즉, 표가 [도 30]과 같이 8행4열이고, [도 17]에서 열부터 낭독한다면 "TBstart_8_4_C", 행부터 낭독한다면 "TBstart_8_4_R"과 같은 형태의 표의 시작표식어를 삽입(242)하고, "TB_end_종결어"와 같은 형태의 표의 종료 표식어를 삽입(247)하고, 보조사 또는 체언을 수식하는 수식어 등의 추가어구를 삽입(251)한다. 즉, [도 29]에서 본 발명에 따른 바람직한 음성 낭독 일 실시 예는 "주요 구성장비는, 발사대, 유도탄, 조준기, 야간조준기, 피아식별기입니다."인데, 여기서의 "는(은)"과 같은 보조사, 또는 [도 30]의 3행2열의 본 발명에 따른 바람직한 음성 낭독 일 실시 예는 "미스트랄(프랑스)의 유효사거리는 5Km입니다."인데, 여기서 "의"와 같은 "관형격 조사로서 체언을 수식하는 수식어를 필요할 때마다 추가어구로 통칭하여 추가한다.
삽입한 시작표식어와 종료 표식어와 추가어구는 열람부(104)의 디스플레이부(128, 134)에 비 표시 되도록 배경색상과 같은 색상으로 변경(248, 252)하여 비 표시하고, 텍스트가 입력되어 있는 텍스트 프레임의 레이어를 낭독될 순서대로 최하위에서 최상위 레이어 방향으로 레이어를 정렬(254)시키는 표의 표식어 삽입 단계(242-255)를 포함할 수 있다. 상기 표의 시작 표식어는 "TBstart"에 행과 열의 개수, 낭독할 우선 순위가 열방향이면 "C", 행방향이면 "R"을 조합하여 구성할 수 있으며 필요에 따라 "TB"와 같은 이름과 파라미터를 추가 및 변경할 수 있다. 또한 실무적으로는 [도 31]과 같은 형태의 표가 널리 사용 되어지고 있는데, 이러한 표는 여러개의 텍스트 라인을 하나의 텍스트 라인으로 조합하여 여러개의 행에 중복적으로 사용되는 형태로서 이와 같은 형태의 표를 낭독할 수 있도록 하기 위해 [도 31]에서의 "광진정보 도서관 문화등 영화음악 감상실 (160석)"의 6개의 텍스트 라인을 하나의 텍스트 라인으로 조합하기 위해 라인 개수와 표식어를 결합한 표의 결합 표식어를 삽입하는 표의 결합 표식어 삽입 단계(246), 또는 8행3열의 표중에서 2행3열, 3행3열, 4행3열, 5행3열, 6행3열, 7행3열, 8행3열에서 동일하게 음성 낭독될 수 있도록 행의 개수와 표식어를 조합한 표의 복사 표식어를 삽입하는 표의 복사 표식어 삽입 단계(244)를 포함할 수 있다. 본 발명에 따른 일 실시예로서 결합 표식어는 "TB"에 텍스트 라인의 개수를 결합시킨 "TBcombine_6"과 같은 형태로 구성될 수 있으며, 표의 복사 표식어는 복사할 행의 개수에 "TBcopy"를 결합한 "TBcopy_7"과 같은 형태로 구성될 수 있다. 또한 [도 19]의 데이터 추출 루틴(데이터 추출-RTN)은 변수를 초기화(266-267)하고, 좌표와 텍스트를 추출(268)해서 변수에 저장(269)하고, 문자열을 분리(272)하여 "TB"가 포함된 문자열의 경우에는 "TB"가 포함된 문자열을 변수 T2에 저장(273)하고, 행의 개수와 열의 개수, 행열구분, 문자열을 추출하여 변수에 저장(274)하고, "TBstart"로 시작하는 문자열중, 첫번째로 검출된 경우에는 행과 열의 개수대로 배열을 선언하여 생성(277)하고, 그렇지 않은 경우에는 행열구분에 따라 문자열을 배열에 저장하는 문자열 배열 저장 루틴(279), 문자열이 "TBend"이면 배열에 저장되어 있는 문자열과 종결어를 조합하여 TTS부(126, 133)에서 낭독될 완전한 문장으로 변수에 저장하는 문장 생성 루틴(297), [도 22]에서 문자열이 "TBinit"이고, [도 23]에서 행의 개수가 1인지를 판단(320)하여 1이면 배열중 1행의 모든 열에 추가어를 저장(321-325)하고, 행의 개수가 1이 아닌지를 판단(320)하여 1이 아니고, 낭독할때 열을 먼저 낭독할 것인지를 판단(326)하여 참이면 행과 열의 개수를 바꾸고(327), 그렇지 않으면 배열의 행의 첫번째 열과 열의 첫번째 행에 추가어를 저장(328-336)하는 추가어 배열담기 루틴(319), [도 22]에서 문자열이 "TBcombine"인지를 판단(349)하여 참이면, [도 25]에서 문자열을 분리(351)하여 반복횟수를 추출하여 변수에 저장(352)하고 문자열을 저장할 변수를 초기화(353)하여 반복 횟수만큼 문자열을 추출하여 첫번째 추출된 문자열과 마지막 문자열의 직전 문자열의 뒤에 콤마(,)를 추가(358)하여 누적(361)시키는 문자열 결합 루틴(351-361), [도 22]에서 문자열이 "TBcopy"인지를 판단(337)하여 참이면 [도 24]에서 문자열을 분리(340)하여 반복횟수를 추출하여 변수에 저장(340)하고, 문자열을 저장할 변수를 초기화(341) 하여 반복 횟수만큼 첫번째 문자열을 배열에 저장(344)하고, 첫번째 문자열을 반복 횟수만큼 복사(342-347)하여 변수에 누적(346)시키고, 최종적으로 낭독될 문자열에 누적(348)시키는 문자열 복사 루틴(339-348)을 포함할 수 있다.
또한 열람부(104)에서 수행되어지는 단계로서, [도 28]에서 변수를 초기화(395)하고, 낭독할 텍스트 데이터를 변수 T8에 저장(392)하고, 문자열을 종결부호로 분리(393)하여, 분리된 종결부호의 앞부분만을 변수 T9에 저장(394)하고, 나머지를 T8에 저장하면서 문장종결부호가 T8인지를 판단(399)하여 문장종결부호 이전까지의 문자열을 TTS부(110, 126, 133)의 TTS함수를 호출하여 문자열이 끝날때까지 반복하여 낭독하는 문장별 낭독 루틴(391-399)을 포함할 수 있다.
상술한 구성요소는 하나의 실시예에 불과하며 본 발명의 본질인 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서의 문장들을 순서대로 낭독할 수 있도록 음성 합성하는 방법 및 장치에 영향을 주지 않는 이상 여러 형태의 변형실시가 가능하다고 할 수 있다. 예를 들어 웹서버부(101)와 제작부(103)의 그 기능의 유사성으로 인해 하나로 통합되어도 본 발명의 본질을 해하지 않으며, 웹서버부(101)와 제작부(103)의 일부 기능인 파일 열기 단계(262)와 최하위 레이어 부터 최상위 레이어까지 순차적으로 텍스트 데이터를추출하는 데이터 추출 단계(262-363)가 열람부(104)의 웹브라우저 기반 뷰어부(123) 또는 앱기반 뷰어부(128)에 통합되어 그 위치를 달리하여 존재하여도 문제될 것이 없다고 할 수 있으며, 웹서버부(101), DTP부(102), 제작부(103), 열람부(104)가 하나로 통합되어도 문제될 것이 없으며, 전자책 및 전자문서의 문장들을 순서대로 낭독할 수 있도록 음성 합성하는 방법 및 장치에 영향을 주지 않는 이상 여러 형태의 변형실시가 가능하다고 할 수 있다. 즉, 웹서버부(101)와 제작부(103)의 그 기능의 유사성으로 인해 하나로 통합되어도 본 발명의 본질을 해하지 않으며, 웹서버부(101)와 제작부(103)의 일부 기능인 파일 열기 단계(262)와 최하위 레이어 부터 최상위 레이어까지 순차적으로 텍스트 데이터를 추출하는 데이터 추출 단계(262-363)가 열람부(104)의 웹브라우저 기반 뷰어부(123) 또는 앱기반 뷰어부(128)에 통합되어 그 위치를 달리하여 존재하여도 문제될 것이 없다고 할 수 있다.
이하 본 발명에 의한 음성 합성에 대한 실시 예를 도면과 함께 상세히 설명한다.
[도 1]에 개시한 바와 같이, 본 발명은 디자이너가 중첩 레이어 기능을 제공하는 DTP(Desktop Publishing) 프로그램을 사용하여 이미지 프레임부(112)에 이미지를 삽입하거나, 텍스트 프레임부에 텍스트(Text)를 입력하거나 표(Table)를 삽입하고, 레이어부(114)에서 텍스트 프레임의 레이어를 낭독될 순서대로 최하위 레이어에서 부터 최상위 레이어까지 정렬하여 PDF로 변환 및 저장하는 DTP부(102), DTP부(102)에서 생성된 PDF로 부터 좌표값과 텍스트 데이터를 추출 및 가공하는 제작부(103), 데이터베이스부(109)와 저장부(108)를 구비한 웹서버부(101), 스마트폰 및 태블렛을 포함하는 휴대용 단말기(122) 또는 PC 및 단말기(123)를 통해 열람하는 열람부(104)간에서 인터넷을 포함한 유.무선 네트웍(100) 환경을 기반으로 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치를 제공할 수 있도록 구성할 수 있다.
본문 텍스트를 입력할 때 텍스트 프레임을 선택(224)하여 텍스트를 입력(226)하거나 또는 파일에 저장되어 있는 텍스트를 하나 또는 여러개의 텍스트 프레임에 채워 넣는(229) 본문 입력 단계(224-230)와 텍스트 프레임의 레이어를 정렬하는 텍스트 프레임의 레이어 정렬 단계(203)를 [도 2-도13, 도15]와 함께 상세히 설명한다.
전 세계적으로 인쇄.출판 디자인 업무는 미국 Adobe사의 DTP(Desk Top Publishing)프로그램인 inDesign에서 주로 행해지고 있으며, 디자이너에게 주어진 원시 텍스트 데이터로서 [도 2]와 같은 문장이 있을때, 디자인하는 과정에서 사진, 이미지, 일러스트 등을 이미지 프레임부(112)에 삽입(216)하거나 그려 넣기도 하며 텍스트를 본문으로서 텍스트 프레임부(113)를 선택(224)하여 텍스트를 타이핑하여 입력(226)하기도 한다. 또한 디자인 실무에서는 본문 텍스트를 키보드를 통해 타이핑하기보다 [도 2]와 같이 파일에 저장되어 있는 텍스트를 '가져오기'하여 하나 또는 여러개의 텍스트 프레임부(113)에 채워 넣기도(229) 한다. 즉, [도 3]과 같이 복잡한 형태의 다단 구조로 구성된 레이아웃의 텍스트 프레임부(113)에 텍스트를 넣게 되는데, [도 4]와 같이 디자이너가 하나의 텍스트 프레임부(113)에 채우고 남는 텍스트를 [도 5]와 같이 다른 텍스트 프레임부(113)를 선택하여 채워 넣고, 사진이나 이미지 또는 일러스트를 삽입하거나 그려 넣기도 하고, 별도의 텍스트 프레임부(113)를 추가하여 타이틀로서 텍스트를 넣기도 하면서 디자인을 완성 시킨다. 이때 하나의 텍스트 파일의 텍스트가 여러개의 텍스트 프레임부(113)에 연결되어 사용되는 경우, 하나의 텍스트 프레임부(113)에 들어 있는 텍스트를 수정할 때 텍스트가 해당 텍스트 프레임부(113)의 크기를 넘치게 되면 넘치는 텍스트는 자동적으로 다음 텍스트 프레임부(113)로 이동하고, 반대로 텍스트의 양이 줄 경우에는 다음 텍스트 프레임부(113)의 텍스트가 자동적으로 이동해 오기도 하기 때문에 실무적으로 널리 이용되고 있다. 그러나 디자인을 완성하여 inDesign에서 HTML로 '내보내기'하여 변환해 보면 [도 6]과 같이 텍스트 본문을 순서대로 낭독하지 못 하는 문제가 있다. 또한 텍스트 프레임부(113)의 레이어를 [도 7]과 같이 변경하여 낭독될 순서대로 텍스트 프레임부(113)의 레이어를 최하위에서 최상위까지 순서대로 정렬한 후, 다시 HTML로 변환해 보아도 [도 8]과 같이 텍스트 본문을 순서대로 낭독하지 못 하는 문제가 있어 결국 본 발명과는 상이함을 확인할 수 있다.
또한 미국 Adobe사에서는 DTP(Desk Top Publishing)프로그램인 inDesign에서 각 페이지를 디자인한 후, ePub과 HTML로 변환하는 경우 음성낭독이 순서대로 될 수 있도록 하기 위해 집필패널(Article Panel)에 텍스트 프레임을 낭독되는 순서대로 등록한 후, ePub 또는 HTML로 출력하는 방법을 제공하고 있다.
즉, [도 9]와 같이 집필패널 (Article Panel)에 낭독하고자 하는 텍스트 프레임을 순서대로 등록하고, 이를 HTML로 '내보내기'하여 확인해 보면 [도 10]과 같이 순서대로 낭독하는 것을 확인할 수 있다. 그러나 [도 9]와 같이 집필패널 (Article Panel)에 등록된 연결되어 있는 텍스트 프레임의 경우 집필패널 (Article Panel)에 보이는 집필(Article)이 모두 같은 텍스트로 보이게 되는 문제가 있다. 즉, [도 9]에서 집필패널 (Article Panel)의 "방법1"과 "방법2"의 맨 하위의 텍스트 프레임의 텍스트는 같은 텍스트인 "옛 사람들은 말에..."라고 똑 같이 보이게 된다. 이는 페이지 수가 많아지고 수정이 여러 차례 반복되다 보면 어느 것이 어디에 해당되는 것인지 알 수 없는 문제가 될 수밖에 없다. 결국 텍스트 프레임을 등록 및 수정 관리한다는 것은 매우 번거로운 이중 삼중의 작업이 되며, 시간에 ?i기는 디자이너에게는 과도한 업무가 되어 결국 디자인 비용을 상승시키는 요인이 되고, 실무적으로 시각장애인들을 위해 사용할 수 없는 문제에 봉착하게 된다.
이러한 문제를 해결하기 위한 본 발명의 일 실시 예에 따르면, 순서대로 문장을 낭독할 수 있도록 하기 위해 [도 7]과 같이 텍스트 프레임의 레이어를 낭독 순서대로 최하위 레이어 부터 최상위 레이어까지 정렬하여 PDF로 변환하여 저장한 후, 상기의 레이어가 정렬된 PDF를 [도 17]의 최하위 레이어 부터 최상위 레이어까지 순차적으로 낭독될 텍스트 데이터를 추출하여 [도 11]과 같이 메시지 박스 형태로 열람부(104)의 디스플레이부(128, 134)에 출력(406)함으로써 TTS부(126, 133)에서 이를 음성 합성하여 음성 출력부(129, 135)를 통해 시각장애인들로 하여금 문맥 파악이 용이하고 그 뜻을 이해하기 쉽도록 순서대로 문장을 음성 낭독한다.
즉, [도 11]에서 2개의 텍스트 프레임부(113)중에서 우측의 텍스트 프레임부(11-1)에는 "겸손과 자기 비하는....사고의 기초다"라는 텍스트가 [도 2]의 텍스트 파일로 부터 '가져오기'하여 삽입되어 있는데, [도 2]의 레이어 판넬에는 정상적으로 "겸손과 자기 비하는 ..."이라고 표시(11-3)되고 있는 반면에, 집필 판넬에는 [도 11]의 좌측 텍스트 프레임부(11-4)의 텍스트인 "옛 라람들은 말에는 힘이 깃들어 있다..."가 집필2에도 똑 같이 표시(11-5)되고 있어 텍스트 프레임이 다수 존재하는 경우에는 어느 집필이 어느 텍스트 프레임에 해당하는 것인지 혼란을 초래하게 되는 문제가 있다. 특히 PDF 자체를 통사의 TTS 프로그램으로 음성 낭독하는 경우에는 집필 판넬에 설정된 순서대로 낭독하지 못 하고, 중구난방식으로 낭독함으로써 시각장애인들이 PDF를 읽을 때 문맥 파악이 어렵고 그 뜻을 정확히 알 수 없는 문제가 발생한다. 그러나 데이터 추출 단계 (265)에서 데이터 추출 루틴(266-362)을 통해 낭독될 텍스트 데이터를 추출하여 [도 11]과 같이 메시지 박스(11-6) 형태로 열람부(104)의 디스플레이부(128, 134)에 출력(402)하여 TTS부(126, 133)에서 이를 음성 합성한 경우에는 시각장애인들이 문맥 파악이 용이하도록 처음 부터 순서대로 낭독하는 것을 [도 12]를 통해 확인할 수 있다.
[도 20-21]를 통해 표(Table)의 각 셀(Cell)의 텍스트 데이터를 추출하여 배열에 저장하는 문자열 배열 저장 루틴(279), 배열에 저장된 텍스트 데이터를 합성하고, 문장 종결어를 추가하여 완전한 문장으로 생성하는 표의 문장 생성 루틴(297)에 대해 상세히 설명한다.
[도 20]에서 행의 개수가 1인지를 판단(280)하여, [도 29]의 1행5열 같이 행이 1일때는 변수 m에 -1을 저장하여 초기화(281)하고, 문자열이 "TBstart" 인지를 판단(282)하여, 참이면 변수 m에 1을 누적시키고, 그렇지 않으면 문자열을 배열에 저장(283)하고, m에 누적시켜서 열의 개수까지 반복 실행하여 1행으로 구성된 표(Table)의 각 셀(Cell)의 문자열을 배열에 저장한다.
[도 30]과 같이 행이 여러개, 즉 행의 개수가 1이 아닌 경우를 판단(280)하여 여러개이면, TTS부(110, 126, 133)에서 음성 합성하여 낭독할때 행부터 낭독할지를 판단(286)하여 참이면 행과 열의 개수를 바꾸고(287), 변수 n과 m을 초기화(288, 289)하고, 문자열이 "TBstart"가 아닌지를 판단(290)하여 참이면 문자열을 2차원 배열에 누적(291)시키고, 마지막인지를 판단(293, 295)하여 마지막까지 반복하여 실행하여 2차원 배열에 문자열을 저장한다.
표(Table)의 각 셀(Cell)에 있는 문자열을 배열에 저장한후에는 행부터 낭독하게 할 것인지 또는 열부터 낭독하게 할 것인지에 따라 배열에서 문자열을 불러와서 조합하여 완전한 문장으로 변수 T4에 누적시킨다.
즉, 열부터 낭독하는 경우에는 [도 30]의 3행2열의 경우, "미스트랄(프랑스)의 유효사거리는 5Km입니다."와 같이 배열에 저장되어 있는 문자열을 불러와서 조합하고, 행부터 낭독하는 경우에는 [도 31]의 2행2열의 경우 "바다쪽으로 한뼘 더의 상영일시는 6월7일 11:00입니다."와 같이 조합시킨다.
이때 행과 열중 어느쪽을 먼저 낭독할 것인지는 DTP부(102)에서 디자이너가 표(Table)를 디자인 및 편집할때 결정되어질 수 있으며, 표의 시작 표식어를 삽입(242)할때 수행되어 지며, 형식은 [도 30]에서 처럼 열부터 낭독하는 경우에는 "TBstart_8_4_C"로 구성하며, [도 31]에서 처럼 행부터 낭독하는 경우에는 "TBstart_8_3_R"과 같은 형식으로 구성한다.
[도 21]에서 변수를 초기화(298)하고, "TBend_종결어"에서 문자열을 분리(299)하여 종결어를 T7에 저장(300)한다.
변수 s와 t를 초기화(301, 302)하고, 행부터 낭독할 것인지를 판단(303)하여 열부터 낭독하는 경우에는 문자열을 배열로 부터 불러와서 T4에 누적(305-308)시키고, 행부터 낭독하는 경우에는 문자열을 배열로 부터 불러와서 T4에 누적(309-311)하고, 행과 열의 마지막까지 누적한 후, 최종적으로 종결어를 누적(316)시킨다.
이제까지 본 발명에 대하여 그 바람직한 실시 예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 이미 상술한 몇몇 변형 예는 차치하고, 본 발명을 실시하면서 비본질적인 부분에서 얼마든지 변형된 실시가 가능하며, 웹서버부(101), DTP부(102), 제작부(103), 열람부(104)간의 상호 연동, 이전 또는 기능상의 통합 등은 본 발명의 본질을 해하지 않는 범위에서는 용인되어야 할 것이며, 특히 실시예상의 변수들과 그 변수에 저장되는 각종 값과 같은 구성요소들은 필요에 따라 가감하거나 또는 변경할 수 있다고 보아야 할 것이다. 그러므로 본 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 유무선 네트웍 101: 웹서버부 DTP부: 102 103: 제작부 104: 열람부
105: 서버 111: 디자인 클라이언트 117: 제작 클라이언트
123, 122, 130: 열람 클라이언트 106, 118: 데이터 추출부
107, 119: 문자 데이터 생성부 108, 115, 120, 125: 저장부
109: 데이터베이스부 110, 126, 133: TTS부 112, : 이미지 프레임부
113: 텍스트 프레임부 114: 레이어부 116, 121: 서버 업로드부
124: 웹브라우저 기반 뷰어부 127: 웹브라우저부 128, 134: 디스플레이부
129, 135: 음성 출력부 131: 앱기반 뷰어부

Claims (13)

  1. 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법에 있어서,
    a) 중첩 레이어 기능을 가진 DTP(Desktop Publishing) 툴(Tool)을 이용하여 디자인 및 편집하는 단계;
    b) 텍스트가 들어 있는 텍스트 프레임부의 레이어를 최하위 부터 최상위까지 낭독 순서대로 정렬하는 단계;
    c) 디자인 및 편집이 완료되면 DTP부(102)의 저장부(115)에 저장된 PDF 파일을 웹서버부(101)의 저장부(108)에 업로드하는 업로드 단계;
    d) 제작부(103)의 제작 클라이언트(117)에서 서버 접속 및 로그인 단계;
    e) 서버에서 가공할지를 판단하여 서버부(101)에서 가공하는 경우에는 서버부(101)의 저장부(108)에 저장된 가공 프로그램을 실행하고, 제작부(103)의 제작 클라이언트(117)에서 가공하는 경우에는 가공 프로그램을 다운로드 및 설치후 실행하는 단계;
    f) 상기 PDF 파일을 열어서 최하위 레이어 부터 최상위 레이어까지 텍스트를 추출하는 단계(262-363);
    g) 추출한 데이터를 웹서버부(101)의 데이터베이스부(109)에 저장(365)하거나 또는 저장부(108)에 파일로 저장(366)한후, 웹서버부(101)의 저장부(108)에 업로드하는 단계(364-367);
    h) 웹서버부(101)의 저장부(108)에 저장되어 있는 웹 브라우저 기반 뷰어 또는 앱기반 뷰어를 열람부(104)의 열람 클라이언트(123, 122, 130)에 다운로드하여 설치하고, 열람 옵션별 파라미터를 추출하는 단계(368-378);
    i) 웹서버부(101)의 데이터베이스 접속(380)후 데이터베이스 파일을 열거나(381) 또는 웹서버부(101)의 저장부(108)에 저장되어 있는 파일을 다운로드(383)한후 열어서(384) 낭독할 텍스트 데이터를 추출하여 변수에 저장하는 단계(379-388);
    j) 텍스트 데이터가 저장된 변수를 메시지 박스에 출력(403)하거나, 또는 HTML문을 생성(401)하여 출력(402)하고, TTS부(110, 126, 133)에서 음성 합성하여 낭독하는 단계(400-404);를 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  2. 제1항에 있어서 상기 a)단계는 사진, 이미지, 일러스트 등을 이미지 프레임부(112)에 삽입할때, 텍스트 프레임부(113)에 설명글을 입력한후, 열람부(104)에서 설명글을 비 표시하기 위해 이미지 프레임부(112)를 텍스트 프레임부(113)에 중첩(220)시키거나 또는 설명글을 배경 색상과 같은 색상으로 변경(222)하여 비 표시하는 단계;를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  3. 제1항에 있어서 상기 a)단계는 음성으로 낭독될 때 종결부호가 없어서 뒷 문장과 붙어서 매우 부자연스럽게 낭독되는 타이틀, 장(Chapter) 제목, 절 제목, 소제목, 각주, 주석 등의 뒤에 문장 종결부호를 텍스트 프레임부(113)에 삽입(233-239)하고, 색상을 배경색상과 같은 색상으로 변경(240)하여 디스플레이부(128,134)에 비 표시되는 종결부호 입력 단계(232-241);를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  4. 제1항에 있어서 상기 a)단계는 표(Table)의 경우 텍스트 프레임부(113)에 표의 시작 표식어를 삽입(242)하고, 표의 종료 표식어를 삽입(247)하고, 색상을 배경색상과 같은 색상으로 변경하여 비 표시(248)하고, 추가어구를 삽입(251)하고 색상을 배경 색상과 같은 색상으로 변경하여 비 표시(252)하고, 낭독될 순서대로 텍스트 레이어부(113)의 레이어를 정렬하는 표 입력 단계(242-255);를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  5. 제1항에 있어서 상기 a)단계는 반복 횟수와 표식어를 조합한 표의 복사 표식어를 삽입하는 단계(243-244);를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  6. 제1항에 있어서 상기 a)단계는 반복 횟수와 표식어를 조합한 표의 결합 표식어를 삽입하는 단계(345-246);를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  7. 제1항에 있어서 상기 c)단계는 DTP부(102)에서 제작부(103)로 디자인 결과 데이터를 전달하는 수단으로서, 이메일에 의한 전달, 웹하드 또는 클라우드 서버, 무선 휴대용 단말기를 통한 전달, USB 또는 외장 하드 디스크나 CD 또는 DVD를 이용한 전달 단계;를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  8. 제1항에 있어서 상기 j)단계는 문장별 낭독일때는 텍스트 데이터가 저장된 변수를 파라미터로 TTS부(110, 126, 133)의 TTS함수를 호출하여 음성으로 낭독하는 단계(391-399);를 더 포함하는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법.
  9. 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치에 있어서, 텍스트 데이터를 추출하는 데이터 추출부(106), 추출된 문자 데이터를 생성하는 문자 데이터 생성부(107), 데이터를 저장하는 저장부(108), 데이터를 데이터베이스에 저장하는 데이터베이스부(109), 음성 합성하기 위한 텍스트를 변수에 저장하고 TTS함수에서 변수를 파라미터로서 호출하여 음성 합성하는 TTS부(110)를 구비한 서버(105)로 구성된 웹서버부(101), 디자이너가 중첩 레이어 기능을 제공하는 DTP(Desktop Publishing)프로그램을 사용하여 전자책 및 전자문서를 디자인하는 과정에서 이미지를 삽입하는 이미지 프레임부(112), 텍스트를 입력하는 텍스트 프레임부(113), TTS프로그램을 통해 텍스트를 음성으로 낭독할 때 그 순서를 설정하는 레이어부(114), 디자인을 완료한후 이를 PDF 등의 포멧으로 저장하는 저장부(115), 저장부(115)에 저장된 데이터를 웹서버부(101)의 저장부(108)에 업로드하는 서버 업로드부(116)로 구성된 DTP부(102), 텍스트 데이터를 추출하는 데이터 추출부(118), 추출된 문자 데이터를 생성하는 문자 데이터 생성부(119), 텍스트 데이터를 저장 또는 문자 데이터 생성부(119)에서 생성된 데이터를 저장하는 저장부(120), 데이터를 웹서버부(101)의 저장부(108)에 업로드하는 서버 업로드부(121)로 구성되는 제작부(103), 스마트폰 및 태블렛을 포함하는 휴대용 단말기(122) 또는 PC 및 단말기(123)에서 웹브라우저부(127)상에 웹 브라우저 기반의 뷰어를 다운로드하여 전자책 및 전자문서를 열람하기 위해 웹서버부(101)로 부터 다운로드 받아 저장부(125)에 저장하는 웹브라우저 기반 뷰어부(124), 단락(Paragraph)의 그룹으로 구성된 데이터를 메시지박스 형태 또는 HTML형태로 출력하는 디스플레이부(128), 디스플레이부(128)에 출력된 메시지 박스 또는 HTML의 텍스트 또는 문장별 낭독을 위한 문장을 음성 합성하는 TTS부(126), TTS부(126)에서 음성 합성하여 음성으로 출력하는 음성 출력부(129), 스마트폰 및 태블렛을 포함하는 휴대용 단말기(130)에 전자책 또는 전자문서의 열람을 위한 앱(App)을 웹서버부(101)로 부터 다운로드 받아 저장부(132)에 저장 및 설치한 앱기반 뷰어부(131), 단락(Paragraph)의 그룹으로 구성된 데이터를 메시지 박스 형태 또는 HTML형태로 출력하는 디스플레이부(134), 디스플레이부(134)에 출력된 메시지 박스 또는 HTML의 텍스트 또는 문장별 낭독을 위한 문장을 음성 합성하는 TTS부(133), TTS부(133)에서 음성 합성하여 음성으로 출력하는 음성 출력부(135)로 구성되는 열람부(104)가 인터넷 통신망을 포함한 유.무선 네트웍(100)으로 연결되어 있는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치.
  10. 제 9항에 있어서, 상기 웹서버부(101)와 제작부(103)가 하나로 통합되는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치.
  11. 제 9항에 있어서, 상기 DTP부(102)와 제작부(103)가 하나로 통합되는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치.
  12. 제 9항에 있어서, 상기 웹서버부(101)와 DTP부(102)와 제작부(103)가 하나로 통합되는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치.
  13. 제 9항에 있어서, 상기 제작부(103)와 열람부(104)가 하나로 통합되는 것을 특징으로 하는 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 장치.
KR1020150142869A 2015-10-13 2015-10-13 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치 KR102602836B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150142869A KR102602836B1 (ko) 2015-10-13 2015-10-13 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150142869A KR102602836B1 (ko) 2015-10-13 2015-10-13 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20170043292A true KR20170043292A (ko) 2017-04-21
KR102602836B1 KR102602836B1 (ko) 2023-11-16

Family

ID=58705422

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150142869A KR102602836B1 (ko) 2015-10-13 2015-10-13 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102602836B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020091994A1 (en) * 2018-10-29 2020-05-07 Microsoft Technology Licensing, Llc Exposing annotations in a document
KR20200102310A (ko) * 2019-02-21 2020-08-31 한국전자통신연구원 전자책 변환 저작 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007102605A (ja) * 2005-10-06 2007-04-19 Ntt Data Corp 文書データ読み上げ装置及びそのコンピュータプログラム
KR100867199B1 (ko) * 2008-03-11 2008-11-06 유니닥스주식회사 Pdf 기반의 사용자 지향적 스크랩 출판 시스템
JP2009075625A (ja) * 2007-07-20 2009-04-09 Hidemi Yamamoto 情報処理システム及びプログラム
KR20120136313A (ko) * 2011-06-08 2012-12-18 이해성 전자책 데이터 음성 합성 장치 및 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007102605A (ja) * 2005-10-06 2007-04-19 Ntt Data Corp 文書データ読み上げ装置及びそのコンピュータプログラム
JP2009075625A (ja) * 2007-07-20 2009-04-09 Hidemi Yamamoto 情報処理システム及びプログラム
KR100867199B1 (ko) * 2008-03-11 2008-11-06 유니닥스주식회사 Pdf 기반의 사용자 지향적 스크랩 출판 시스템
KR20120136313A (ko) * 2011-06-08 2012-12-18 이해성 전자책 데이터 음성 합성 장치 및 그 방법
KR101401427B1 (ko) 2011-06-08 2014-06-02 이해성 전자책 데이터 음성 합성 장치 및 그 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020091994A1 (en) * 2018-10-29 2020-05-07 Microsoft Technology Licensing, Llc Exposing annotations in a document
US11182542B2 (en) 2018-10-29 2021-11-23 Microsoft Technology Licensing, Llc Exposing annotations in a document
KR20200102310A (ko) * 2019-02-21 2020-08-31 한국전자통신연구원 전자책 변환 저작 시스템

Also Published As

Publication number Publication date
KR102602836B1 (ko) 2023-11-16

Similar Documents

Publication Publication Date Title
US20140039871A1 (en) Synchronous Texts
US20190196675A1 (en) Platform for educational and interactive ereaders and ebooks
Li et al. Editing spatial layouts through tactile templates for people with visual impairments
Crasborn et al. Sharing sign language data online: Experiences from the ECHO project
US11657725B2 (en) E-reader interface system with audio and highlighting synchronization for digital books
US20110097693A1 (en) Aligning chunk translations for language learners
Turco et al. Edition visualization technology: A simple tool to visualize TEI-based digital editions
US20080097741A1 (en) Text analysis, transliteration and translation method and apparatus for hieroglypic, hieratic, and demotic texts from ancient egyptian
KR20170043292A (ko) 복잡한 다단 구조의 레이아웃으로 구성된 전자책 및 전자문서 데이터의 음성 합성 방법 및 장치
Howe Learn to Code HTML and CSS: Develop and Style Websites
US20120054605A1 (en) Electronic document conversion system
JPWO2015162737A1 (ja) 音訳作業支援装置、音訳作業支援方法及びプログラム
Guolong Textual fluidity and fixity in early Chinese manuscript culture
Bédi et al. Using LARA to create image-based and phonetically annotated multimodal texts for endangered languages
CN104866607B (zh) 一种东巴文释读数据库建立方法
CN102262617B (zh) 一种书版小样处理方法及装置
Roberts A tone orthography typology
Hall Participatory Design in Digital Language Documentation: A Web Platform Approach
Riga et al. An evaluation methodology of math-to-speech in non-English DAISY digital talking books
KR101102212B1 (ko) 사용자전용 전자책 컨텐츠 제작 시스템 및 그 방법
Desmet The Shakespeare Quartos Archive
Nazemi Non-visual representation of complex documents for use in digital talking books
Scharf Linguistic issues and intelligent technological solutions in encoding Sanskrit
Mueller CSS3 for Dummies
Santschi Mapping Late Hokusai Research: Digitizing and Publishing Bilingual Research Data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant