KR20200032492A - 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체 - Google Patents

필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체 Download PDF

Info

Publication number
KR20200032492A
KR20200032492A KR1020180111580A KR20180111580A KR20200032492A KR 20200032492 A KR20200032492 A KR 20200032492A KR 1020180111580 A KR1020180111580 A KR 1020180111580A KR 20180111580 A KR20180111580 A KR 20180111580A KR 20200032492 A KR20200032492 A KR 20200032492A
Authority
KR
South Korea
Prior art keywords
characteristic value
handwritten characters
electronic device
font characteristic
handwritten
Prior art date
Application number
KR1020180111580A
Other languages
English (en)
Other versions
KR102468082B1 (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 KR1020180111580A priority Critical patent/KR102468082B1/ko
Priority to PCT/KR2019/011926 priority patent/WO2020060121A1/ko
Publication of KR20200032492A publication Critical patent/KR20200032492A/ko
Application granted granted Critical
Publication of KR102468082B1 publication Critical patent/KR102468082B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06K9/00402
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/226Character recognition characterised by the type of writing of cursive writing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06K2209/01

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

다양한 실시 예들에 따르면, 전자 장치는, 디스플레이, 프로세서 및 상기 디스플레이 및 상기 프로세서에 작동적으로 연결되고, 복수의 기준 서체 특성값들을 저장하도록 구성된 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하고, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하고, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하고, 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하여 상기 디스플레이에 표시하도록 하는 인스트럭션들을 저장할 수 있다. 다른 실시 예가 가능하다.

Description

필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체{CORRECTION METHOD FOR HANDWRITING INPUT, ELECTRONIC DEVICE AND STORAGE MEDIUM THEREFOR}
본 발명의 다양한 실시 예들은 필기 입력에 대한 보정 방법 및 이를 위한 전자 장치에 관한 것이다.
최근 스마트 폰, 태블릿 PC 또는 웨어러블 디바이스와 같은 휴대가 용이한 전자 장치의 사용이 증가하고 있으며, 사용자는 다양한 입력 수단 예를 들어, 손가락뿐만 아니라 스타일러스 펜과 같은 입력 도구를 이용하여 다양한 기능을 이용할 수 있다.
스타일러스 펜을 이용한 입력 방식은 손가락을 이용한 터치 입력 방식에 비해, 보다 정밀한 터치 입력이 가능하므로 메모 또는 스케치와 같은 어플리케이션 수행 시에 보다 유용하게 적용될 수 있다. 또한 필기 입력을 통한 컨텐츠 작성 방식은 내용 작성의 자유도가 높으며, 보다 직관적이며 신속한 입력이 가능하고, 필기한 내용에 대한 문자 인식 기술의 향상으로 인해, 그 활용성도 크게 높아지고 있다.
사용자가 필기한 글씨는 스마트 폰과 같은 전자 장치의 특성상 크기와 표면의 특성 또는 사용자의 상황에 따라 많은 오차를 가질 수 있다. 또한, 사용자가 스타일러스 펜을 통해 입력한 필기 글자들은 크기, 자간, 또는 기울기가 달라서 가독성이 떨어질 수 있으며, 획의 불균형, 문장 내 단어 또는 글자의 비균일성으로 인해 오차가 발생할 수 있다. 따라서 필기 입력을 통한 컨텐츠 작성 방식의 활용을 위해 오차에 대한 보정과 미려화 방식에 대한 기술 개발이 이루어지고 있다.
일반적인 필기 보정의 경우 대체적으로 시스템에서 정한 한가지 크기 및 위치를 기준으로 보정이 이루어지며, 기준이 되는 서체 파일 예컨대, 서체 이미지가 필요한 경우가 대부분이다.
이러한 경우 기준 서체 이미지를 저장하기 위한 데이터베이스 형태의 메모리 공간이 요구되며, 필기 입력에 해당하는 필기 글자를 이미지 파일로 처리하기 위한 서체 렌더링으로 인해 많은 리소스가 요구될 수 밖에 없다. 게다가 사용자에 의한 필기 입력은 사용자 고유의 필체를 내포하고 있으나 보정을 통해서는 필체 특성이 손실되거나 필체에 어울리지 않는 보정이 이루어질 수 있다.
이에 따라 사용자의 필체를 유지하면서도 사용자에게 보다 깔끔하게 정렬된 필기 글자들을 간단한 보정을 통해 효과적으로 제공할 수 있는 기술이 요구되고 있다.
다양한 실시 예들에 따르면, 전자 장치는, 디스플레이, 프로세서 및 상기 디스플레이 및 상기 프로세서에 작동적으로 연결되고, 복수의 기준 서체 특성값들을 저장하도록 구성된 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하고, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하고, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하고, 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하여 상기 디스플레이에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시 예들에 따르면, 전자 장치에서 필기 입력에 대한 보정 방법은, 상기 전자 장치의 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작, 상기 전자 장치의 메모리에 저장된 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작 및 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하며, 상기 보정된 필기 글자들을 상기 전자 장치의 디스플레이에 표시하는 동작을 포함할 수 있다.
다양한 실시 예들에 따르면, 명령들을 저장하고 복수의 기준 서체 특성값들을 저장하고 있는 저장 매체는, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 전자 장치의 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작 및 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 보정하며, 상기 보정된 필기 글자들을 상기 디스플레이에 표시하는 동작을 포함을 포함할 수 있다.
다양한 실시 예들에서는, 사용자의 필체를 유지하면서도 사용자에게 보다 깔끔하게 정렬된 필기 글자들을 간단한 보정을 통해 효과적으로 제공할 수 있다.
또한 다양한 실시 예들에서는, 필기 입력을 보정함에 있어, 서체 특성값에 대응하는 가장 유사한 기준 특성값에 따른 위치 및 크기에 기반함으로써, 빠른 보정이 가능할 수 있다.
또한, 다양한 실시 예들에서는 필기 입력을 보정함에 있어, 메모리 리소스를 효율적으로 사용하고, 빠른 보정을 제공할 수 있다.
도 1은 본 발명의 다양한 실시 예들에 따른 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 블록도이다.
도 3은 일 실시 예에 따른 전자 장치의 전면의 사시도이다.
도 4는 도 3의 전자 장치의 후면의 사시도이다.
도 5는 도 3의 전자 장치의 전개 사시도이다.
도 6은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 동작 방법을 나타내는 흐름도이다.
도 7은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 상세 동작 방법을 나타내는 흐름도이다.
도 8은 본 발명의 다양한 실시 예에 따른 서체 특성값을 설명하기 위한 예시도이다.
도 9는 본 발명의 다양한 실시 예에 따른 기준 서체 특성값을 설명하기 위한 예시도이다.
도 10은 본 발명의 다양한 실시 예에 따른 필기 글자의 기울기를 보정하는 방법을 설명하기 위한 예시도이다.
도 11은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 서체 특성값을 확인하는 방법을 설명하기 위한 예시도이다.
도 12는 본 발명의 다양한 실시 예에 따른 기준 서체 특성값에 대한 선택 방법을 설명하기 위한 예시도이다.
도 13a 및 도 13b는 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 단위별 보정 방법을 설명하기 위한 예시도이다.
도 14는 본 발명의 다양한 실시 예에 따른 입력되는 필기 글자들에 대한 보정에 따른 화면 예시도이다.
도 15는 본 발명의 다양한 실시 예에 따른 입력창을 통해 입력되는 필기 글자들에 대한 보정에 따른 화면 예시도이다.
도 16은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 되돌리기 방법을 설명하기 위한 흐름도이다.
도 17은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 되돌리기에 따른 화면 예시도이다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의된 용어들은 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미를 가지는 것으로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 발명의 실시 예들을 배제하도록 해석될 수 없다.
도 1은, 다양한 실시 예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시 예에서는, 이 구성 요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시 예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성 요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성 요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)은, 예를 들면, 마이크, 마우스, 키보드, 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)는, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102) (예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시 예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시 예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시 예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시 예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시 예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일 실시 예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다.
이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시 예에 따르면, 안테나 모듈은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 하나의 안테나를 포함할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 복수의 안테나들을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시 예에 따르면, 방사체 이외에 다른 부품(예: RFIC)이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시 예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104) 간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, or 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치(101)의 블록도(200)이다. 도 2를 참조하면, 다양한 실시 예에 따른 전자 장치(101)는 사용자의 필기 입력에 대응하여 어플리케이션을 실행하는 장치(예: 스마트 폰, 또는 태블릿 컴퓨터)로서, 프로세서(120), 메모리(130) 및 표시 장치(160)를 포함할 수 있다. 여기서, 도 2에 도시된 모든 구성 요소가 전자 장치(101)의 필수 구성 요소인 것은 아니며, 도 2에 도시된 구성 요소보다 많거나 적은 구성 요소에 의해 전자 장치(101)가 구현될 수도 있다.
도 2를 참조하면, 일 실시 예에서, 전자 장치(101)의 사용자는 표시 장치(160)를 통해 필기 글자들을 입력할 수 있으며, 표시 장치(160)의 화면(예: 디스플레이(210)) 상에 사용자에 의해 입력된 필기 글자들이 표시될 수 있다. 예를 들어, 필기 글자들은 사용자가 직접 수기로 작성한 글자들이기 때문에 필기 글자들의 크기, 배열, 자간, 또는 줄 간격이 일정하지 않을 수 있다.
일 실시 예에 따르면, 프로세서(120)는 입력된 필기 데이터를 인식하여 인식된 필기 글자들을 지정된 보정 단위 예컨대, 문장 단위, 어간 단위, 또는 글자 단위 중 어느 하나의 보정 단위로 보정할 수 있다. 예를 들어, 프로세서(120)는 필기 글자들을 구성하는 각 획(또는 스트로크)을 분석함으로써, 필기 글자에 대한 서체 특성값을 확인할 수 있으며, 필기 글자들의 크기, 위치, 또는 자간을 변경할 수 있다.
이와 같이 프로세서(120)는 필기 글자들의 크기, 위치, 또는 자간을 보정함으로써 필기 글자들을 정렬(arrange)할 수 있으며, 정렬된 필기 글자들을 표시 장치(160)의 화면 상에 표시할 수 있다.
표시 장치(160)는 사용자에 의해 입력된 필기 글자들을 표시할 수 있으며, 프로세서(120)에 의해 보정된 필기 글자들을 표시할 수 있다. 또한 표시 장치(160)는 사용자에 의해 입력되는 필체에 대해 컬러, 흑백, 깊이, 또는 돌출과 같은 다양한 시각적 효과를 적용한 필기 글자들을 표시할 수도 있다.
도 2에 도시된 바와 같이, 표시 장치(160)는 디스플레이(210), 및 이를 제어하기 위한 디스플레이 드라이버 IC(DDI, display driver IC(integrated circuit))(230)를 포함할 수 있다. DDI(230)는 인터페이스 모듈(231), 메모리(233)(예: 버퍼 메모리), 이미지 처리 모듈(235), 또는 맵핑 모듈(237)을 포함할 수 있다. DDI(230)는, 예를 들면, 영상 데이터, 또는 상기 영상 데이터를 제어하기 위한 명령에 대응하는 영상 제어 신호를 포함하는 영상 정보를 인터페이스 모듈(231)을 통해 전자 장치(101)의 다른 구성요소로부터 수신할 수 있다. 예를 들면, 일 실시 예에 따르면, 영상 정보는 프로세서(120)(예: 도 1의 메인 프로세서(121)(예: 어플리케이션 프로세서) 또는 메인 프로세서(121)의 기능과 독립적으로 운영되는 도 1의 보조 프로세서(123)(예: 그래픽 처리 장치)로부터 수신될 수 있다.
DDI(230)는 터치 회로(250) 또는 센서 모듈(176)과 상기 인터페이스 모듈(231)을 통하여 커뮤니케이션할 수 있다. 또한, DDI(230)는 상기 수신된 영상 정보 중 적어도 일부를 메모리(233)에, 예를 들면, 프레임 단위로 저장할 수 있다.
이미지 처리 모듈(235)은, 예를 들면, 상기 영상 데이터의 적어도 일부를 상기 영상 데이터의 특성 또는 디스플레이(210)의 특성에 적어도 기반하여 전처리 또는 후처리(예: 해상도, 밝기, 또는 크기 조정)를 수행할 수 있다.
맵핑 모듈(237)은 이미지 처리 모듈(235)을 통해 전처리 또는 후처리된 상기 영상 데이터에 대응하는 전압 값 또는 전류 값을 생성할 수 있다. 일 실시 예에 따르면, 전압 값 또는 전류 값의 생성은 예를 들면, 디스플레이(210)의 픽셀들의 속성(예: 픽셀들의 배열(RGB stripe 또는 pentile 구조), 또는 서브 픽셀들 각각의 크기)에 적어도 일부 기반하여 수행될 수 있다. 디스플레이(210)의 적어도 일부 픽셀들은, 예를 들면, 상기 전압 값 또는 전류 값에 적어도 일부 기반하여 구동됨으로써 상기 영상 데이터에 대응하는 시각적 정보(예: 텍스트, 이미지, 또는 아이콘)가 디스플레이(210)를 통해 표시될 수 있다.
일 실시 예에 따르면, 표시 장치(160)는 터치 회로(250)를 더 포함할 수 있다. 터치 회로(250)는 터치 센서(251) 및 이를 제어하기 위한 터치 센서 IC(253)를 포함할 수 있다. 터치 센서 IC(253)는, 예를 들면, 디스플레이(210)의 특정 위치에 대한 터치 입력 또는 호버링 입력을 감지하기 위해 터치 센서(251)를 제어할 수 있다. 예를 들면, 터치 센서 IC(253)는 디스플레이(210)의 특정 위치에 대한 신호(예: 전압, 광량, 저항, 또는 전하량)의 변화를 측정함으로써 터치 입력 또는 호버링 입력을 감지할 수 있다. 터치 센서 IC(253)는 감지된 터치 입력 또는 호버링 입력에 관한 정보(예: 위치, 면적, 압력, 또는 시간)를 프로세서(120)에 제공할 수 있다. 일 실시 예에 따르면, 터치 회로(250)의 적어도 일부(예: 터치 센서 IC(253))는 디스플레이 드라이버 IC(230), 또는 디스플레이(210)의 일부로, 또는 표시 장치(160)의 외부에 배치된 다른 구성요소(예: 도 1의 보조 프로세서(123))의 일부로 포함될 수 있다.
일 실시 예에 따르면, 표시 장치(160)는 센서 모듈(176)의 적어도 하나의 센서(예: 지문 센서, 홍채 센서, 압력 센서 또는 조도 센서), 또는 이에 대한 제어 회로를 더 포함할 수 있다. 이 경우, 상기 적어도 하나의 센서 또는 이에 대한 제어 회로는 표시 장치(160)의 일부(예: 디스플레이(210) 또는 DDI(230)) 또는 터치 회로(250)의 일부에 임베디드될 수 있다. 예를 들면, 표시 장치(160)에 임베디드된 센서 모듈(176)이 생체 센서(예: 지문 센서)를 포함할 경우, 상기 생체 센서는 디스플레이(210)의 일부 영역을 통해 터치 입력과 연관된 생체 정보(예: 지문 이미지)를 획득할 수 있다. 다른 예를 들면, 표시 장치(160)에 임베디드된 센서 모듈(176)이 압력 센서를 포함할 경우, 상기 압력 센서는 디스플레이(210)의 일부 또는 전체 영역을 통해 터치 입력과 연관된 압력 정보를 획득할 수 있다. 일 실시 예에 따르면, 터치 센서(251) 또는 센서 모듈(176)은 디스플레이(210)의 픽셀 레이어의 픽셀들 사이에, 또는 상기 픽셀 레이어의 위에 또는 아래에 배치될 수 있다.
상기한 바와 같이 표시 장치(160)는 터치패드가 레이어 구조를 이루어 터치스크린으로 구성되는 경우, 출력 장치뿐만 아니라 입력 장치로도 사용될 수 있다.
일 실시 예에 따르면, 표시 장치(160)를 통해 전자 장치(101)와 연동되는 펜 입력 장치 또는 사용자의 손가락을 이용하여 필기 데이터가 입력됨에 따라 프로세서(120)는 필기 데이터에 대한 정보 예컨대, 글자, 문단, 문장에 대한 정보를 필기 데이터의 비트맵과 함께 획에 대한 필속, 위치, 크기, 또는 패스 정보 중 적어도 하나를 이용하여 확인할 수 있다.
일 실시 예에 따르면, 프로세서(220)는 필기 데이터에 대한 문맥적 분석을 위해 인식을 수행하고, 필기 데이터에 대한 보정, 편집, 저장 및 출력에 대한 제어를 수행할 수 있다. 프로세서(120)는 표시 장치(160)를 제어하여, 보정 및 편집된 결과를 표시 장치(160)의 화면 상에 출력할 수 있다.
일 실시 예에 따르면, 필기 글자들의 크기, 위치, 또는 자간과 같은 필기 글자들에 대한 보정(또는 정렬)의 기준을 정하기 위해 인식된 필기 글자에 대한 서체 특성값이 이용될 수 있다.
본 발명의 다양한 실시 예에 따르면, 필기 글자들을 보정하기 위해서는 보정의 기준이 되는 서체 대조군들의 서체(글꼴) 메트릭(metric) 정보가 필요할 수 있다. 여기서 메트릭 정보는 다양한 서체를 통해 획득된 값들로 메모리(130)에 미리 테이블 또는 데이터베이스 형태로 저장될 수 있다. 메트릭 정보는 서체 파일이 아닌 서체 자체에 대한 특성값을 의미할 수 있다. 일반적으로 서체 파일은 화면에 나타나는 글자의 모양을 점의 집합이 아닌 글자를 구성하는 각 선분이나 곡선 요소의 모임으로 기억하는 벡터 정보를 가진 데이터 집합을 나타내는 것인 반면, 서체 자체에 대한 특성값은 모든 글자에 공통적으로 적용되는 메트릭을 나타낼 수 있다. 예를 들어, 서체는 이엠스퀘어(em-square)(또는 units per em)라는 1000 ~ 2048 사이의 값을 한 변으로 하는 사각형 글자 영역에서 디자인되고, 서체 특성값은 사각형 글자 영역 안에서 정의되기 때문에 그 사각형 글자 영역에 대한 값들을 이용한다면 특정 서체 사이즈에서의 상대적인 특성값도 알 수 있다.
일 실시 예에 따르면, 프로세서(120)에서 필기 데이터에 대응하는 필기 글자들에 대한 일부 서체 특성값만 확인한다면, 서체의 모양 예를 들어, 실제 디자인을 몰라도 글자가 배치되는 사각형 영역을 나타내는 디자인 기준값을 알 수 있다. 상기한 바와 같이 서체 파일은 벡터 방식의 데이터 집합이기 때문에 전자 장치(101) 입장에서는 높은 해상도를 필요로 할 뿐만 아니라 복잡한 연산을 거쳐야 하므로 처리 속도가 느린데 반해, 본 발명의 다양한 실시 예에 따른 서체 특성값은 서체 파일 자체나 글자 각각에 대한 정보가 필요 없기 때문에 메모리 리소스 측면에서 효율적일 수 있다.
본 발명의 다양한 실시 예에 따르면, 다양한 서체를 통해 수집되는 메트릭 정보들 예를 들면, 복수의 기준 서체 특성값들은 수직 특성값을 기준으로 보정될 수 있으며, 메모리(130)는 필기 글자들의 크기, 위치, 또는 자간과 같은 정렬의 기준이 되는 복수의 기준 서체 특성값들을 저장할 수 있다. 일 실시 예에서, 전자 장치(101)는 서버(예: 서버(108))를 통하여 새로운 기준 서체를 다운로드 하거나 또는 저장된 서체를 업데이트 할 수 있다. 기준 서체 특성값들 각각은 캡 하이트(cap height), 엑스 하이트(x-height), 디센더(descender) 중 적어도 하나의 수직 특성값을 포함할 수 있다. 사용자별로 다양한 필체가 존재하듯이 서체별로도 캡 하이트, 엑스 하이트, 또는 디센더와 같은 값들이 서로 다를 수 있다. 동일한 서체 예를 들어, 동일한 모양의 글자이더라도 사용자가 필기한 글자의 폭, 또는 크기에 따라 특성값이 달라질 수 있다.
만일 시스템에서 정해진 서체 예를 들어, 'Times New Roman' 서체와 'Arial' 서체의 경우 글자 모양은 다를지라도 대문자의 높이를 나타내는 캡 하이트, 소문자의 높이를 나타내는 엑스 하이트, 또는 디센더가 동일할 경우 동일한 서체 특성값을 가질 수 있다. 상기한 바와 같이 복수의 기준 서체 특성값 각각은 서체 모양에 상관없이 적어도 하나의 수직 특성값이 서로 다른 것들로 구성된 기준값을 의미할 수 있다.
본 발명의 다양한 실시 예에 따르면, 프로세서(120)는 사용자가 입력한 필기 데이터를 인식한 필기 글자의 특성값이 메모리(130)에 저장된 복수의 특성값들 중 어떠한 특성값에 해당하는지를 결정하고, 결정된 특성값을 기준으로 필기 글자의 위치, 크기, 또는 자간 중 적어도 일부를 변경하여 보정 및/또는 정렬할 수 있다.
메모리(130)는, 실행 시에, 프로세서(120)가 각종 동작들을 수행하도록 제어하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시 예에 따르면, 전자 장치(101)는 디스플레이(예: 표시 장치(160)), 프로세서(120) 및 상기 디스플레이(예: 표시 장치(160)) 및 상기 프로세서(120)에 작동적으로 연결되고, 복수의 기준 서체 특성값들을 저장하도록 구성된 메모리(130)를 포함하며, 상기 메모리(130)는, 실행 시에, 상기 프로세서(120)가, 상기 디스플레이(예: 표시 장치(160))를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하고, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하고, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하고, 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하여 상기 디스플레이(예: 표시 장치(160))에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하도록 설정될 수 있다.
일 실시 예에 따르면, 상기 확인된 서체 특성값은, 상기 필기 글자에 대한 캡 하이트, 엑스 하이트, 또는 디센더 중 적어도 하나의 수직 특성값을 포함할 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 확인된 서체 특성값에 포함된 적어도 하나의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 적어도 하나의 수직 특성값 간의 적어도 일부를 비교하도록 설정될 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택하도록 설정될 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 인식된 필기 글자들에 대한 보정 단위를 확인하고, 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정하도록 설정될 수 있다. 일 실시 예에 따르면, 상기 보정 단위는 문장 단위, 어간 단위 또는 글자 단위 중 적어도 하나를 포함할 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정한 후 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하도록 하며, 상기 확인된 보정 단위로 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조절하도록 설정될 수 있다.
일 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 보정된 필기 글자들이 표시되는 상태에서 되돌리기 요청이 수신되면, 상기 되돌리기 요청에 대응하여 상기 보정된 필기 글자들이 표시되기 전 상태 또는 상기 필기 데이터 입력 전 상태에 대응하는 화면을 상기 디스플레이(예: 표시 장치(160))에 출력하도록 설정될 수 있다.
도 3은 일 실시 예에 따른 전자 장치의 전면의 사시도이다. 도 4는 도 3의 전자 장치의 후면의 사시도이다.
도 3 및 도 4를 참조하면, 일 실시 예에 따른 전자 장치(300)(예: 도 1 및 도 2의 전자 장치(101))는, 제 1 면(또는 전면)(310A), 제 2 면(또는 후면)(310B), 및 제 1 면(310A) 및 제 2 면(310B) 사이의 공간을 둘러싸는 측면(310C)을 포함하는 하우징(310)을 포함할 수 있다. 다른 실시 예(미도시)에서는, 하우징은, 도 3의 제 1 면(310A), 제 2 면(310B) 및 측면(310C)들 중 일부를 형성하는 구조를 지칭할 수도 있다. 일 실시 예에 따르면, 제 1 면(310A)은 적어도 일부분이 실질적으로 투명한 전면 플레이트(302)(예: 다양한 코팅 레이어들을 포함하는 글라스 플레이트, 또는 폴리머 플레이트)에 의하여 형성될 수 있다. 제 2 면(310B)은 실질적으로 불투명한 후면 플레이트(311)에 의하여 형성될 수 있다. 상기 후면 플레이트(311)는, 예를 들어, 코팅 또는 착색된 유리, 세라믹, 폴리머, 금속(예: 알루미늄, 스테인레스 스틸(STS), 또는 마그네슘) 중 적어도 하나, 또는 상기 물질들 중 적어도 둘의 조합에 의하여 형성될 수 있다. 상기 측면(310C)은, 전면 플레이트(302) 및 후면 플레이트(311)와 결합하며, 금속 및/또는 폴리머를 포함하는 측면 베젤 구조 (또는 "측면 부재")(318)에 의하여 형성될 수 있다. 어떤 실시예에서는, 후면 플레이트(311) 및 측면 베젤 구조(318)는 일체로 형성되고 동일한 물질(예: 알루미늄과 같은 금속 물질)을 포함할 수 있다.
도시된 실시예에서는, 상기 전면 플레이트(302)는, 상기 제 1 면(310A)으로부터 상기 후면 플레이트(311) 쪽으로 휘어져 심리스하게(seamless) 연장된 2개의 제 1 영역(310D)들을, 상기 전면 플레이트(302)의 긴 엣지(long edge) 양단에 포함할 수 있다. 도시된 실시예(도 4 참조)에서, 상기 후면 플레이트(311)는, 상기 제 2 면(310B)으로부터 상기 전면 플레이트(302) 쪽으로 휘어져 심리스하게 연장된 2개의 제 2 영역(310E)들을 긴 엣지 양단에 포함할 수 있다. 어떤 실시 예에서는, 상기 전면 플레이트(302)(또는 상기 후면 플레이트(311))가 상기 제 1 영역(310D)들(또는 상기 제 2 영역(310E)들) 중 하나만을 포함할 수 있다. 다른 실시 예에서는, 상기 제 1 영역(310D)들 또는 제 2 영역(310E)들 중 일부가 포함되지 않을 수 있다. 상기 실시 예들에서, 상기 전자 장치(300)의 측면에서 볼 때, 측면 베젤 구조(318)는, 상기와 같은 제 1 영역(310D)들 또는 제 2 영역(310E)들이 포함되지 않는 측면 쪽에서는 제 1 두께(또는 폭)을 가지고, 상기 제 1 영역(310D)들 또는 제 2 영역(310E)들을 포함한 측면 쪽에서는 상기 제 1 두께보다 얇은 제 2 두께를 가질 수 있다.
일 실시 예에 따르면, 전자 장치(300)는, 디스플레이(301), 오디오 모듈(303, 307, 314), 센서 모듈(304, 316, 319), 카메라 모듈(305, 312, 313), 키 입력 장치(317), 발광 소자(306), 펜 입력 장치(320) 및 커넥터 홀(308, 309) 중 적어도 하나 이상을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(300)는, 구성요소들 중 적어도 하나(예: 키 입력 장치(317), 또는 발광 소자(306))를 생략하거나 다른 구성요소를 추가적으로 포함할 수 있다.
디스플레이(301)는, 예를 들어, 전면 플레이트(302)의 상당 부분을 통하여 노출될 수 있다. 어떤 실시 예에서는, 상기 제 1 면(310A), 및 상기 측면(310C)의 제 1 영역(310D)들을 형성하는 전면 플레이트(302)를 통하여 상기 디스플레이(301)의 적어도 일부가 노출될 수 있다. 어떤 실시 예에서는, 디스플레이(301)의 모서리를 상기 전면 플레이트(302)의 인접한 외곽 형상과 대체로 동일하게 형성할 수 있다. 다른 실시 예(미도시)에서는, 디스플레이(301)가 노출되는 면적을 확장하기 위하여, 디스플레이(301)의 외곽과 전면 플레이트(302)의 외곽간의 간격이 대체로 동일하게 형성될 수 있다.
다른 실시 예(미도시)에서는, 디스플레이(301)의 화면 표시 영역의 일부에 리세스 또는 개구부(opening)을 형성하고, 상기 리세스 또는 상기 개구부(opening)와 정렬되는 오디오 모듈(314), 센서 모듈(304), 카메라 모듈(305), 및 발광 소자(306) 중 적어도 하나 이상을 포함할 수 있다. 다른 실시 예(미도시)에서는, 디스플레이(301)의 화면 표시 영역의 배면에, 오디오 모듈(314), 센서 모듈(304), 카메라 모듈(305), 지문 센서(316), 및 발광 소자(306) 중 적어도 하나 이상을 포함할 수 있다. 다른 실시 예(미도시)에서는, 디스플레이(301)는, 터치 감지 회로, 터치의 세기(압력)를 측정할 수 있는 압력 센서, 및/또는 자기장 방식의 스타일러스 펜을 검출하는 디지타이저와 결합되거나 인접하여 배치될 수 있다. 어떤 실시예에서는, 상기 센서 모듈(304, 319)의 적어도 일부, 및/또는 키 입력 장치(317)의 적어도 일부가, 상기 제 1 영역(310D)들, 및/또는 상기 제 2 영역(310E)들에 배치될 수 있다.
오디오 모듈(303, 307, 314)은, 마이크 홀(303) 및 스피커 홀(307, 314)을 포함할 수 있다. 마이크 홀(303)은 외부의 소리를 획득하기 위한 마이크가 내부에 배치될 수 있고, 어떤 실시 예에서는 소리의 방향을 감지할 수 있도록 복수개의 마이크가 배치될 수 있다. 스피커 홀(307, 314)은, 외부 스피커 홀(307) 및 통화용 리시버 홀(314)을 포함할 수 있다. 어떤 실시 예에서는 스피커 홀(307, 314)과 마이크 홀(303)이 하나의 홀로 구현 되거나, 스피커 홀(307, 314) 없이 스피커가 포함될 수 있다(예: 피에조 스피커).
센서 모듈(304, 316, 319)은, 전자 장치(300)의 내부의 작동 상태, 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(304, 316, 319)은, 예를 들어, 하우징(310)의 제 1 면(310A)에 배치된 제 1 센서 모듈(304)(예: 근접 센서) 및/또는 제 2 센서 모듈(미도시)(예: 지문 센서), 및/또는 상기 하우징(310)의 제 2 면(310B)에 배치된 제 3 센서 모듈(319)(예: HRM(heart rate monitoring) 센서) 및/또는 제 4 센서 모듈(316) (예: 지문 센서)을 포함할 수 있다. 상기 지문 센서는 하우징(310)의 제 1면(310A)(예: 디스플레이(301)뿐만 아니라 제 2면(310B)에 배치될 수 있다. 전자 장치(300)는, 도시되지 않은 센서 모듈, 예를 들어, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서(304) 중 적어도 하나를 더 포함할 수 있다.
카메라 모듈(305, 312, 313)은, 전자 장치(300)의 제 1 면(310A)에 배치된 제 1 카메라 장치(305), 및 제 2 면(310B)에 배치된 제 2 카메라 장치(312), 및/또는 플래시(313)를 포함할 수 있다. 상기 카메라 장치들(305, 312)은, 하나 또는 복수의 렌즈들, 이미지 센서, 및/또는 이미지 시그널 프로세서를 포함할 수 있다. 플래시(313)는, 예를 들어, 발광 다이오드 또는 제논 램프(xenon lamp)를 포함할 수 있다. 어떤 실시 예에서는, 2개 이상의 렌즈들(적외선 카메라, 광각 및 망원 렌즈) 및 이미지 센서들이 전자 장치(300)의 한 면에 배치될 수 있다.
키 입력 장치(317)는, 하우징(310)의 측면(310C)에 배치될 수 있다. 다른 실시 예에서는, 전자 장치(300)는 상기 언급된 키 입력 장치(317) 중 일부 또는 전부를 포함하지 않을 수 있고 포함되지 않은 키 입력 장치(317)는 디스플레이(301) 상에 소프트 키와 같은 다른 형태로 구현될 수 있다. 어떤 실시 예에서, 키 입력 장치는 하우징(310)의 제 2면(310B)에 배치된 센서 모듈(316)을 포함할 수 있다.
발광 소자(306)는, 예를 들어, 하우징(310)의 제 1 면(310A)에 배치될 수 있다. 발광 소자(306)는, 예를 들어, 전자 장치(300)의 상태 정보를 광 형태로 제공할 수 있다. 다른 실시 예에서는, 발광 소자(306)는, 예를 들어, 카메라 모듈(305)의 동작과 연동되는 광원을 제공할 수 있다. 발광 소자(306)는, 예를 들어, LED, IR LED 및 제논 램프를 포함할 수 있다.
커넥터 홀(308, 309)은, 외부 전자 장치와 전력 및/또는 데이터를 송수신하기 위한 커넥터(예를 들어, USB 커넥터)를 수용할 수 있는 제 1 커넥터 홀(308), 및/또는 외부 전자 장치와 오디오 신호를 송수신하기 위한 커넥터를 수용할 수 있는 제 2 커넥터 홀(예를 들어, 이어폰 잭)(309)을 포함할 수 있다.
펜 입력 장치(320)(예: 스타일러스(stylus) 펜)는, 하우징(310)의 측면에 형성된 홀(321)을 통해 하우징(310)의 내부로 안내되어 삽입되거나 탈착될 수 있고, 탈착을 용이하게 하기 위한 버튼을 포함할 수 있다. 펜 입력 장치(320)에는 별도의 공진 회로가 내장되어 상기 전자 장치(300)에 포함된 전자기 유도 패널(예: 디지타이저(digitizer))과 연동될 수 있다. 펜 입력 장치(320)는 EMR(electro-magnetic resonance)방식, AES(active electrical stylus) 및 ECR(electric coupled resonance) 방식을 포함할 수 있다.
도 5는 도 3의 전자 장치의 전개 사시도이다.
도 5를 참조하면, 전자 장치(500)(예: 도 1 및 도 2의 전자 장치(101))는, 측면 베젤 구조(510), 제 1 지지부재(511)(예: 브라켓), 전면 플레이트(520), 디스플레이(530), 인쇄 회로 기판(540), 배터리(550), 제 2 지지부재(560)(예: 리어 케이스), 안테나(570), 후면 플레이트(580), 전자기 유도 패널(590) 및 펜 입력 장치(320)를 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(500)는, 구성요소들 중 적어도 하나(예: 제 1 지지부재(511), 또는 제 2 지지부재(560))를 생략하거나 다른 구성요소를 추가적으로 포함할 수 있다. 전자 장치(500)의 구성요소들 중 적어도 하나는, 도 3, 또는 도 4의 전자 장치(300)의 구성요소들 중 적어도 하나와 동일, 또는 유사할 수 있으며, 중복되는 설명은 이하 생략한다. 또한 도 3 내지 도 5는 도 1의 전자 장치(101)의 외관을 예시하고 있으나 이는 한 실시 예일 뿐, 전자 장치의 외관은 이에 한정되지 않을 수 있다.
전자기 유도 패널(590)(예: 디지타이저(digitizer))은 펜 입력 장치(320)의 입력을 감지하기 위한 패널일 수 있다. 예를 들어, 전자기 유도 패널(590)은 인쇄회로기판(PCB)(예: 연성 인쇄회로기판(FPCB, flexible printed circuit board))과 차폐시트를 포함할 수 있다. 차폐시트는 전자 장치(500) 내에 포함된 컴포넌트들(예: 디스플레이 모듈, 인쇄회로기판, 또는 전자기 유도 패널)로부터 발생된 전자기장에 의한 상기 컴포넌트들 상호 간의 간섭을 방지할 수 있다. 차폐시트는 컴포넌트들로부터 발생된 전자기장을 차단함으로써, 펜 입력 장치(320)로부터의 입력이 전자기 유도 패널(590)에 포함된 코일에 정확하게 전달되도록 할 수 있다. 다양한 실시 예에 따른 전자기 유도 패널(590)은 전자 장치(500)에 실장된 생체 센서에 대응하는 적어도 일부 영역에 형성된 개구부를 포함할 수 있다.
제 1지지부재(511)는, 전자 장치(500) 내부에 배치되어 측면 베젤 구조(510)와 연결될 수 있거나, 측면 베젤 구조(510)와 일체로 형성될 수 있다. 제 1지지부재(511)는, 예를 들어, 금속 재질 및/또는 비금속(예: 폴리머) 재질로 형성될 수 있다. 제 1지지부재(511)는, 일면에 디스플레이(530)가 결합되고 타면에 인쇄 회로 기판(540)이 결합될 수 있다. 인쇄 회로 기판(540)에는, 프로세서, 메모리, 및/또는 인터페이스가 장착될 수 있다. 프로세서는, 예를 들어, 중앙처리장치, 어플리케이션 프로세서, 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서 중 하나 또는 그 이상을 포함할 수 있다.
메모리는, 예를 들어, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.
인터페이스는, 예를 들어, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 및/또는 오디오 인터페이스를 포함할 수 있다. 인터페이스는, 예를 들어, 전자 장치(500)를 외부 전자 장치와 전기적 또는 물리적으로 연결시킬 수 있으며, USB 커넥터, SD 카드/MMC 커넥터, 또는 오디오 커넥터를 포함할 수 있다.
배터리(550)는 전자 장치(500)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 또는 재충전 가능한 2차 전지, 또는 연료 전지를 포함할 수 있다. 배터리(550)의 적어도 일부는, 예를 들어, 인쇄 회로 기판(540)과 실질적으로 동일 평면 상에 배치될 수 있다. 배터리(550)는 전자 장치(500) 내부에 일체로 배치될 수 있고, 전자 장치(500)와 탈부착 가능하게 배치될 수도 있다.
안테나(570)는, 후면 플레이트(580)와 배터리(550) 사이에 배치될 수 있다. 안테나(570)는, 예를 들어, NFC(near field communication) 안테나, 무선 충전 안테나, 및/또는 MST(magnetic secure transmission) 안테나를 포함할 수 있다. 안테나(570)는, 예를 들어, 외부 장치와 근거리 통신을 하거나, 충전에 필요한 전력을 무선으로 송수신 할 수 있다. 다른 실시 예에서는, 측면 베젤 구조(510) 및/또는 상기 제 1 지지부재(511)의 일부 또는 그 조합에 의하여 안테나 구조가 형성될 수 있다.
도 6은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 동작 방법을 나타내는 흐름도(600)이다. 동작 방법은 605 내지 620 동작들을 포함할 수 있다. 동작 방법의 각 단계/동작은, 전자 장치(예: 도 1 및 도 2의 전자 장치(101), 전자 장치의 적어도 하나의 프로세서(예: 도 1 및 도 2의 프로세서(120)) 중 적어도 하나에 의해 수행될 수 있다. 한 실시 예에서, 605 내지 620 동작들 중 적어도 하나가 생략되거나, 일부 동작들의 순서가 바뀌거나, 다른 동작이 추가될 수 있다.
전자 장치는 사용자로부터 디스플레이(예: 도 1 및 도 2의 표시 장치(160))를 통해 필기 데이터를 입력받을 수 있으며, 필기 데이터는 전자 장치와 연동되는 펜 입력 장치(예: 펜 입력 장치(320)) 또는 사용자의 손가락을 이용하여 입력될 수 있다.
동작 605에서, 전자 장치는 사용자가 입력한 필기 데이터에 대응하는 필기 글자들을 인식할 수 있다. 일 실시 예에 따르면, 전자 장치는 디스플레이를 통해 입력되는 필기 데이터를 인식할 때 획에 대한 정보와 위치를 저장할 수 있다. 전자 장치는 저장된 획에 대한 정보와 위치를 기반으로 인식 알고리즘(또는 인식 엔진)을 이용하여 사용자에 의해 그려지는 필기 글자들을 인식할 수 있다. 예를 들어, 사용자가 직접 필기하는 경우에는 대체적으로 흘림체 형태로 글자를 쓰기 때문에 여러 개의 획들이 이어져서 글자들을 형성할 수 있어 전자 장치에서는 필기 데이터가 어떠한 글자를 나타내는 것인지를 알아야 할 필요가 있다. 이를 위해 전자 장치는 사용자에 의해 그려지는 획과, 실제 글자가 가지고 있는 고유의 획을 비교하여 필기 데이터가 실제 글자인지 아닌지를 식별할 수 있다. 예를 들어, 사용자에 의해 그려지는 필기 데이터를 구성하는 하나 이상의 스트로크(stroke)를 식별하고 해석함으로써 필기 글자를 인식할 수 있다.
동작 610에서, 전자 장치는 인식된 필기 글자들에 대한 서체 특성값을 확인할 수 있다. 일 실시 예에 따르면, 상기 확인된 서체 특성값은 상기 필기 글자에 대한 캡 하이트, 엑스 하이트, 또는 디센더 중 적어도 하나의 수직 특성값을 포함할 수 있다. 또한 확인된 서체 특성값은 상기한 수직 특성값 이외에 어센더와 같은 서체에 대한 사각형 영역을 형성하는 데 사용되는 값이면 모두 가능할 수 있다.
동작 615에서 전자 장치는 복수의 기준 서체 특성값들 중 확인된 서체 특성값과 가장 유사한 기준 서체 특성값을 선택할 수 있다. 일 실시 예에 따르면, 전자 장치는 상기 확인된 서체 특성값에 포함된 적어도 하나의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 적어도 하나의 수직 특성값 간의 적어도 일부를 비교할 수 있다.
예를 들어, 전자 장치는 확인된 서체 특성값의 캡 하이트, 엑스 하이트, 디센더를 상기 복수의 기준 서체 특성값들 각각에 포함된 캡 하이트, 엑스 하이트, 디센더를 서로 각각 비교할 수도 있지만, 확인된 서체 특성값의 캡 하이트, 엑스 하이트, 디센더 중 일부와 상기 복수의 기준 서체 특성값들 각각에 포함된 캡 하이트, 엑스 하이트, 디센더 중 일부만을 서로 비교할 수도 있다. 예를 들어, 전자 장치는 복수의 서체 특성값들 중 적어도 일부인 캡 하이트, 엑스 하이트만을 서로 비교할 수도 있다.
일 실시 예에 따르면, 전자 장치는 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택할 수 있다. 예를 들어, 확인된 서체 특성값의 캡 하이트가 3.8이며, 엑스 하이트가 4.2이며, 디센더가 2라고 할 경우, 복수의 기준 서체 특성값들 중 3.8과 가장 차이가 적은 캡 하이트, 4.2와 가장 차이가 적은 엑스 하이트, 2와 가장 차이가 적은 디센더 중 적어도 일부를 만족하는 서체 특성값을 가지는 기준 서체 선택값을 상기 확인된 서체 특성값에 대응하는 기준값으로 선택할 수 있다.
동작 620에서 전자 장치는 선택된 기준 서체 특성값에 기반하여 글자 영역에 상기 필기 글자들을 보정할 수 있다. 글자 영역은 기준 서체 특성값에 의해 형성되는 영역으로 예를 들어, 입력된 필기 데이터의 평균에 기반한 기준선에 기준 서체의 크기를 기준으로 생성되는 영역일 수 있다. 예를 들어, 글자 영역의 형태는 기준선을 한 변으로 하는 필기 글자들을 둘러싸는 사각형일 수 있다. 일 실시 예에 따르면, 전자 장치는 상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 보정하도록 제어할 수 있다. 이때, 보정된 필기 글자들은 표시 장치(160) 상의 화면을 통해 표시될 수 있다.
한편, 기준 서체 특성값에 대응하는 글자 영역에 필기 글자들이 정렬될 때, 인식된 필기 글자에 대해 정해진 보정 단위로 보정 및/또는 정렬이 수행될 수 있다. 예를 들어, 보정 단위인 문장 단위, 어절 단위, 또는 글자 단위 중 어느 하나의 보정 단위로 필기 글자들이 보정될 수 있으며, 이에 대한 구체적인 설명은 후술하기로 한다.
본 발명의 다양한 실시 예에 따른 필기 입력에 대한 보정 방법은, 전자 장치(예: 도 1 및 도 2의 전자 장치(101))의 디스플레이(예: 표시 장치(160))를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작, 상기 전자 장치의 메모리에 저장된 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작 및 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하며, 상기 보정된 필기 글자들을 상기 전자 장치(예: 도 1 및 도 2의 전자 장치(101))의 디스플레이(예: 표시 장치(160))에 표시하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 필기 글자들을 보정하는 동작은, 상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 확인된 서체 특성값은, 상기 필기 글자에 대한 캡 하이트(cap height), 엑스 하이트(x-height), 또는 디센더(descender) 중 적어도 하나의 수직 특성값을 포함할 수 있다.
일 실시 예에 따르면, 상기 기준 서체 특성값을 선택하는 동작은, 상기 확인된 서체 특성값에 포함된 적어도 하나의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 적어도 하나의 수직 특성값 간의 적어도 일부를 비교하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 기준 서체 특성값을 선택하는 동작은, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 방법은, 상기 인식된 필기 글자들에 대한 보정 단위를 확인하는 동작 및 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정하는 동작을 더 포함할 수 있다.
일 실시 예에 따르면, 상기 보정 단위는, 문장 단위, 어간 단위 또는 글자 단위 중 적어도 하나를 포함할 수 있다.
일 실시 예에 따르면, 상기 필기 글자들을 보정하는 동작은, 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정한 후 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작 및 상기 확인된 보정 단위로 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 방법은, 상기 보정된 필기 글자들이 표시되는 상태에서 되돌리기 요청이 수신되면, 상기 되돌리기 요청에 대응하여 상기 보정된 필기 글자들이 표시되기 전 상태 또는 상기 필기 데이터 입력 전 상태에 대응하는 화면을 상기 디스플레이에 표시하는 동작을 더 포함할 수 있다.
도 7은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 상세 동작 방법을 나타내는 흐름도(700)이다. 도 7에서는 전자 장치에서의 필기 글자에 대한 상세 보정의 동작 방법을 예시하고 있으며, 동작 방법은 705 내지 745 동작들을 포함할 수 있다. 동작 방법의 각 단계/동작은, 전자 장치(예: 도 1 및 도 2의 전자 장치(101), 전자 장치의 적어도 하나의 프로세서(예: 도 1 및 도 2의 프로세서(120)) 중 적어도 하나에 의해 수행될 수 있다. 한 실시 예에서, 705 내지 745 동작들 중 적어도 하나가 생략되거나, 일부 동작들의 순서가 바뀌거나, 다른 동작이 추가될 수 있다.
동작 705에서, 전자 장치는 사용자로부터 필기 데이터 입력을 수신할 수 있다. 상기 필기 데이터는 전자 장치의 디스플레이를 통해 사용자의 손가락 또는 펜 입력 장치를 이용하여 입력될 수 있다.
동작 710에서, 전자 장치는 입력된 필기 데이터를 인식할 수 있다. 상기 인식 동작은 도 6의 605 동작과 동일하며, 인식 동작을 통해 전자 장치는 인식된 필기 글자들에 대한 획 분류를 수행할 수 있다. 예를 들어, 전자 장치는 획의 시작, 또는 획의 끝과 같은 획 분류를 수행함으로써 획에 대한 정보와 위치를 획득할 수 있으며, 획득된 획에 대한 정보와 위치를 기반으로 사용자가 입력한 필기가 어떠한 글자에 해당하는지를 인식할 수 있다. 예를 들어, 전자 장치는 필기 글자를 구성하는 하나 이상의 획을 나타내는 스트로크(stroke)를 식별하고 해석함으로써 하나의 글자를 인식할 수 있다. 스트로크는 사용자가 손가락 또는 펜 입력 장치를 이용하여 화면을 터치 다운하고 드래그하고 터치 업 하기까지 사용자 입력에 의해 생성되는 복수의 점들을 나타내는 데이터일 수 있다. 일 실시 예에 따르면, 전자 장치는 화면 상의 픽셀들 중에서 필기 글자를 나타내는 픽셀들의 위치 예를 들어, 좌표 값을 획득함으로써 필기 글자를 인식할 수 있으며, 필기 글자를 인식하는 방법은 이에 한정되지 않을 수 있다.
동작 720에서, 전자 장치는 인식된 필기 글자들에 대한 보정을 위해 지정된(또는 특정된) 보정 단위를 확인할 수 있다. 보정 단위는 문장 단위, 어절 단위, 또는 글자 단위 중 적어도 하나를 포함할 수 있다. 어절 단위는 띄어쓰기(또는 공백)를 기준으로 한 보정 단위일 수 있다. 문장 단위는 마침표와 같은 문장 부호, 또는 펜 입력 장치(예: 펜 입력 장치(320))를 이용한 필기 입력의 해제와 같은 경우를 기준으로 한 보정 단위일 수 있다. 글자 단위는 하나의 필기 글자를 기준으로 한 보정 단위일 수 있다.
동작 725에서, 전자 장치는 인식된 필기 글자들에 대해 확인된 보정 단위로 기울기를 보정할 수 있다. 여기서, 기울기 보정은 단어나 글자에 따라 불균형하게 위치가 맞지 않거나 기울기가 어긋난 경우 레이아웃을 균일하게 하는 보정에 해당할 수 있다. 따라서 기울기 보정은 정해진 보정 단위 예컨대, 문장 단위, 어절 단위, 또는 글자 단위에 따라 기울기를 균일하게 하는 동작에 해당할 수 있다. 예를 들어, 문장 단위의 경우 인식된 필기 글자 전체를 상대적인 기준선(baseline)을 기준으로 상기 필기 글자 전체를 둘러싸는 영역의 기울기가 상기 기준선과 나란해지도록 필기 글자들에 대한 기울기를 보정할 수 있다. 다른 예를 들어, 어절 단위의 경우는 필기 글자들 사이의 여백을 기준으로 어절을 분리하고, 분리된 어절에 따른 필기 글자들 각각의 묶음 예를 들어, 단어를 둘러싸는 영역의 기울기를 상기 상대적인 기준선과 비교하여 필기 글자들 각각의 묶음에 대한 기울기를 보정할 수 있다. 일 실시 예에서, 필기 글자의 기울기 보정을 위해 회전시켰을 때 획이 깨지거나 그 필기 글자의 모양에 영향을 주는 경우에는 기울기 보정을 하지 않을 수 있다. 따라서 전자 장치에서는 기울기 보정 시 필기 글자의 획과 모양을 고려하여 기울기 보정 여부를 고려할 수 있다.
동작 730에서, 전자 장치는 인식된 필기 글자들에 대한 서체 특성값을 확인할 수 있다. 서체 특성값을 확인하는 동작은 사용자의 필체 특성을 파악하는 동작으로, 기준선을 기준으로 보정 단위 내의 필기 글자들에 대한 캡 하이트, 엑스 하이트, 또는 디센더를 산출함으로써 인식된 필기 글자들에 대한 서체 특성값이 정해질 수 있다. 일 실시 예에 따르면, 전자 장치는 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정한 후 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하도록 하며, 상기 확인된 보정 단위로 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조절할 수 있다. 이때, 전자 장치는 상기 필기 글자들의 위치 및 크기 조절을 위해 기준이 되는 서체 특성값을 결정할 수 있으며, 기준 서체 특성값은 상기 확인된 서체 특성값에 대응하여 결정될 수 있다.
동작 735에서, 전자 장치는 복수의 기준 서체 특성값들 중 확인된 서체 특성값과 가장 유사한 기준 서체 특성값을 선택할 수 있다. 일 실시 예에 따르면, 전자 장치는 상기 확인된 서체 특성값에 포함된 복수의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 복수의 수직 특성값 간의 적어도 일부를 비교할 수 있다. 또한 일 실시 예에 따르면, 전자 장치는 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택할 수 있다.
동작 740에서, 전자 장치는 선택된 기준 서체 특성값에 기초하여 필기 글자들을 보정할 수 있다. 일 실시 예에 따르면, 전자 장치는 상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 정렬할 수 있다. 상기한 바에서는 보정 단위로 필기 문자들에 대한 기울기를 보정한 후 필기 글자들의 위치, 크기, 자간 또는 글자 폭 중 적어도 하나를 정렬하는 보정을 수행하는 경우를 설명하였으나, 보정 단위를 기준으로 필기 글자들의 기울기, 위치, 크기, 자간 또는 글자 폭을 정렬하는 보정을 동시에 또는 순서에 상관없이 수행할 수도 있다.
동작 745에서, 전자 장치는 보정된 필기 글자들을 표시할 수 있다. 예를 들어, 선택된 기준 서체 특성값에 의해 형성되는 사각형의 글자 영역에 필기 글자가 포함되도록 정렬될 수 있으며, 상기 사각형의 글자 영역의 크기를 갖도록 필기 글자의 크기도 조절될 수 있다. 따라서 글자 단위의 보정의 경우, 선택된 기준 서체 특성값에 의해 형성되는 사각형의 각 글자 영역마다 각 글자 영역의 크기에 맞도록 필기 글자들이 각각 배치되어 표시될 수 있다. 이에 따라 본 발명의 다양한 실시 예에 따르면, 사용자에 의해 입력된 필기체를 최대한 유지하면서도 선택된 기준 서체 특성값에 의해 형성되는 각 글자 영역에 맞도록 필기 글자들이 배열될 수 있다. 따라서 사용자 입장에서는 라인을 기준으로 상하, 자간, 또는 크기가 불균일한 필기 데이터를 입력하더라도 보정을 통해 보다 균일한 크기 및 위치에 배치되는 깔끔하게 정렬된 필기 글씨를 볼 수 있다.
일 실시 예에 따르면, 보정 동작은 실시간으로 또는 일괄적으로 수행될 수 있다. 예를 들어, 실시간 보정의 경우 사용자가 손가락 또는 펜 입력 장치를 이용하여 화면을 터치 다운하고 드래그하고 터치 업 할 때마다 입력된 필기 글자들에 대한 보정이 수행될 수 있다. 예를 들어, 보정 단위가 어절 단위일 경우 화면의 입력 창에 어절 단위에 대한 보정이 수행될 때마다 일부 필기 글자들이 실시간으로 표시될 수 있다.
일 실시 예에 따르면, 일괄 보정의 경우 사용자가 필기를 하고 있더라도 실제 그려지는 필기만이 표시될 뿐 화면의 입력 창에는 어떠한 필기 글자도 표시되지 않다가 일괄 보정을 통해 보정이 수행된 필기 문자들이 표시될 수도 있다. 여기서, 일괄 보정은 사용자가 문장의 마침표와 같은 부호를 입력하거나 필기 입력의 완료를 나타내는 입력을 할 경우와 같은 다양한 마침 동작에 의해 수행될 수 있다.
도 8은 본 발명의 다양한 실시 예에 따른, 서체 특성값을 설명하기 위한 예시도(800)이다.
도 8을 참조하면, 캡 하이트(cap height)(810)는 대문자의 높이를 나타내며, 대문자 밑변의 기준선(base line)에서 대문자의 머리선(cap line)까지의 거리를 의미할 수 있다.
엑스 하이트(x-height)(815)는 소문자 'x'의 높이를 나타내며, 기준선(base line)(820)에서 소문자 x의 윗변(mean line)까지의 거리로 x자는 아래 위 끝부분의 높이가 기준선과 일치하기 때문에 기준으로 사용할 수 있다. 엑스 하이트는 글자 몸 전체 높이나 글자 형태의 중요한 요소의 높이를 나타내며, 엑스 하이트의 크기는 같은 포인트의 활자에서도 서체에 따라 다를 수 있다.
디센더(descender)(또는 디센더 하이트(descender height))(825)는 구문활자에서 소문자의 자체가 나란한 수평선보다 아래로 삐쳐 나온 부분을 나타내며, 바로 g, j, p, q, y의 5문자가 디센더를 가질 수 있다. 서체에 따라 디센더의 길이가 다른데, 밑변에 가상의 디센더 라인을 만들어 사용될 수 있다.
상기한 바 이외에 어센더(ascender)(또는 어센더 하이트(ascender height))(805)는 알파벳 소문자의 엑스하이트 위로 올라가는 기둥 줄기를 나타내며, 예를 들어, b, d, h, 또는 l과 같이 x 높이보다 위쪽으로 뻗은 소문자의 윗부분이 해당될 수 있다.
일 실시 예에서, 서체 특성값 추출 시 일부 예외 처리해야 하는 문자(letter)들이 있을 수 있다. 개인마다 서체의 특성이 매우 다양하지만 일부 문자들의 경우 개인 특성이 더욱 크게 나타나는 경향이 있으므로, 이러한 일부 문자들에 대해서는 예외 처리를 할 수 있다.
예를 들어, 라틴어(Latin)의 경우 'Q', 'R'의 아래 획이 튀어나오게 작성하는 경우가 있는데, 이러한 경우 캡 하이트(cap height)를 고려하지 않을 수 있다. 또한, 'i'의 경우에는 글자 몸 전체 높이가 엑스 하이트(x-height)를 넘어서는 경우가 대부분이어서 엑스 하이트(x-height)를 고려하지 않을 수 있다. 또한, 't'와 'f'는 개인마다 매우 다르게 그려지는 문자들 중의 하나로, 'f'의 경우에는 필기체로 적는 경우 디센더(descender) 위치까지 내려서 그려지는 경우가 대부분이기 때문에 예외 처리하는 문자로 고려할 수 있다. 전술한 바에서는 영문을 예로 들어 설명하였지만 본 발명은 이에 한정되지 않을 수 있다. 예를 들어, 한국어, 중국어, 라틴어 또는 러시아어와 같은 다양한 언어도 적용될 수 있다.
한 실시 예에 따르면, 다국어의 경우 표의적인 위치(ideographic position)를 특징으로 추출할 수 있다. 추출된 특징은 탑(top), 센터(center), 또는 보텀(bottom) 중 적어도 하나를 포함할 수 있다. 예를 들어, 라틴어(Latin)의 경우 글자를 '헤드(head), '터미(tummies)', 또는 '테일(tails)'의 그룹으로 묶어서 그룹별로 탑, 또는 보텀을 추출하여 서체 특성값으로 사용할 수 있다. 또한 한국어(Korean)의 경우 '초성 + 중성', 또는 '초성 + 중성 + 받침'의 그룹으로 묶을 수 있다. 또한 아랍어(Arabic)의 경우 '어센더(ascender)', '루프 하이트(loop height)', 투스 하이트(tooth height)', 또는 '디센더1(descender 1)','디센더2(descender 2)'의 그룹으로 묶을 수 있다. 상기와 같이 각 언어에 대해 필기 글자를 그룹으로 묶은 후, 그룹별 탑, 또는 보텀을 추출하여 서체 특성으로 사용할 수 있다.
도 9는 본 발명의 다양한 실시 예에 따른 기준 서체 특성값을 설명하기 위한 예시도(900)이다.
도 9에서는 메모리(예: 메모리(130, 230))에 저장된 복수의 기준 서체 특성값들을 예시하고 있다. 도 9에 도시된 바와 같이 다양한 서체를 통해 획득된 특성값들은 메모리에 미리 테이블 또는 데이터베이스 형태(910, 920, 930, 940, 950)로 저장될 수 있다.
본 발명의 다양한 실시 예에 따르면, 메모리(예: 메모리(130, 230))에는 서체 이미지 파일이 저장되는 것이 아니라 서체 자체에 대한 특징인 기준 서체 특성값들(915, 925, 935, 945 및 955)이 저장될 수 있다. 예를 들어, 기준 서체 특성값들(915, 925, 935, 945 및 955) 각각은 캡 하이트(cap height), 엑스 하이트(x-height), 또는 디센더(descender) 중 적어도 하나의 수직 특성값을 포함할 수 있다. 여기서, 기준 서체 특성값들은 사용자에 의해 필기된 필기 글자를 정렬하기 위해 기준이 되는 값들로, 기준 서체 특성값에 의해 형성되는 글자의 영역 및 크기에 기초하여, 필기 글자들이 그 글자의 영역 및 크기에 맞게 배치될 수 있다.
예를 들어, 서체는 이엠스퀘어(em-square)(또는 units per em)라는 1000 ~ 2048 사이의 값을 한 변으로 하는 사각형 글자 영역에서 디자인되고, 서체 특성값은 사각형 글자 영역 안에서 정의되기 때문에 그 사각형 글자 영역에 대한 값들을 이용한다면 특정 서체 사이즈에서의 상대적인 특성값도 알 수 있다. 따라서 전자 장치는 메모리(예: 메모리(130))에 저장된 복수의 기준 서체 특성값들 중에서 필기 데이터에 대응하는 필기 글자들에 대한 일부 서체 특성값만 확인한다면, 서체의 모양 예를 들어, 실제 디자인을 몰라도 글자가 배치되는 사각형 영역을 나타내는 디자인 기준값을 결정할 수 있다.
본 발명의 다양한 실시 예에 따르면, 다양한 서체를 통해 수집되는 복수의 기준 서체 특성값들은 수직 특성값을 기준으로 정렬될 수 있으며, 메모리(예: 메모리(130))는 필기 글자들의 크기, 위치, 또는 자간의 정렬의 기준이 되는 복수의 기준 서체 특성값들을 저장할 수 있다. 사용자별로 다양한 필체가 존재하듯이 서체별로도 캡 하이트, 엑스 하이트, 또는 디센더와 같은 값들이 서로 다를 수 있다. 동일한 서체 예를 들어, 동일한 모양의 글자이더라도 사용자가 필기한 글자의 폭, 또는 크기에 따라 특성값이 달라질 수 있다.
도 9에 도시된 바와 같이 제1 기준 서체 특성값(915)의 경우 제1 서체(911)와 제2 서체(912)의 굵기, 모양, 또는 디자인이 서로 다를지라도 대문자의 높이를 나타내는 캡 하이트가 4, 소문자의 높이를 나타내는 엑스 하이트가 4, 디센더가 2로 동일할 경우 제1 기준 서체 특성값(915)에 해당할 수 있다. 이와 마찬가지로 제2 기준 서체 특성값(925)의 경우에도 제3 서체(921)와 제4 서체(922)의 모양에 상관없이 수직 특성값들이 같은 경우를 예시하고 있으며, 각 기준 서체 특성값(935, 945 및 955)에 서로 다른 서체들(931, 932, 941, 942, 951 및 952)이 굵기, 모양, 디자인에 상관없이 속할 수 있다.
상기한 바와 같이 복수의 기준 서체 특성값 각각은 서체 모양에 상관없이 적어도 하나의 수직 특성값이 서로 다른 것들로 구성된 기준값을 의미할 수 있다.
한편, 본 발명의 다양한 실시 예에 따르면, 사용자 필기 입력에 대응하여 인식된 필기 글자에 대해 보정이 이루어진 이후에도 사용자의 필체가 그대로 유지될 수 있지만, 도 9의 도시된 바와 같이 사용자 필체에 대응하는 기준 서체 특성값이 정해지면, 그 기준 서체 특성값에 속하는 다른 서체의 모양으로 대체되도록 설정될 수도 있다. 예를 들어, 사용자에 의해 입력되는 필체가 제1 서체(911)와 유사한 경우 보정을 통해 제2 서체(912)로 변경되어 표시될 수도 있다.
이를 위해 시스템의 폰트 렌더링을 이용하는 방법이 사용될 수 있다. 폰트 렌더링 방법은 시스템의 폰트 렌더러에 접근할 수 있는 권한이 있을 때 적용 가능한 방법으로, 전자 장치는 상위의 보정 단계에서 얻은 획 및 서체 특성값으로 보정된 위치와 크기 정보를 사용하여 시스템이 사용하는 글자 데이터를 얻을 수 있다. 여기서, 글자 데이터에 대한 정보는 경로 데이터(path data), 최대 진행 폭 (advance x/y), 글자의 크기 및 위치를 포함할 수 있으며, 추가적인 정보도 있을 수 있다.
전자 장치에서는 생성된 글자 데이터를 시스템의 폰트 렌더러에 전달하여 텍스트를 그릴 경우, 필기 렌더링을 위한 별도의 구성부가 필요하지 않을 뿐만 아니라 시스템이 제공하는 다양한 효과를 적용할 수 있다. 예를 들면, 시스템에 설정된 글자 획이 특정 웨이트(weight)를 가져 두껍거나 가늘게 설정된 경우 필기 글자에도 적용 할 수 있으며 감마 보정(gamma correction)도 텍스트뷰(text view)의 값과 동일하게 적용될 수 있다. 이에 따라 그림자나 돌출과 같은 폰트 효과(font effect)도 사용할 수 있다.
도 10은 본 발명의 다양한 실시 예에 따른 필기 글자의 기울기를 보정하는 방법을 설명하기 위한 예시도이다.
도 10에 도시된 바와 같이 사용자가 의해 입력된 필기 글자(1005)의 경우 단어나 글자에 따라 불균형하게 위치가 맞지 않거나 기울기가 어긋날 수 있다. 이러한 경우 전자 장치는 기울기 보정을 통해 레이아웃을 균일하게 하는 보정을 수행할 수 있다. 일 실시 예에 따르면 기울기 보정은 정해진 보정 단위 예컨대, 문장 단위, 어절 단위, 또는 글자 단위에 따라 기울기를 균일하게 하는 동작에 해당할 수 있는데, 도 10에서는 어절 단위로 기울기가 보정된 필기 글자(1010)를 예시하고 있다.
예를 들어, 문장 단위의 경우 인식된 필기 글자 전체를 상대적인 기준선(baseline)을 기준으로 상기 필기 글자 전체를 둘러싸는 영역의 기울기가 상기 기준선과 나란해지도록 필기 글자들에 대한 기울기를 보정할 수 있다. 마찬가지로 어절 단위의 경우에도 필기 글자들 사이의 여백을 기준으로 어절을 분리하고, 분리된 어절에 따른 필기 글자들 각각의 묶음 예를 들어, 단어를 둘러싸는 영역의 기울기를 상기 상대적인 기준선과 비교하여 필기 글자들 각각의 묶음에 대한 기울기를 보정할 수 있다.
도 11은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 서체 특성값을 확인하는 방법을 설명하기 위한 예시도이다.
정해진 보정 단위로 필기 글자들에 대한 기울기 보정을 하게 되면 도 11에 도시된 바와 같이 기준선(1115)을 기준으로 기울기가 보정된 필기 글자들(1110)을 획득할 수 있다. 이때, 전자 장치는 기울기가 보정된 필기 글자들(1110)에 대해 서체 특성값을 파악할 수 있는데, 대문자의 높이를 나타내는 캡 하이트(1105)와 소문자의 높이를 나타내는 엑스 하이트(1110)를 비롯하여 디센더를 확인할 수 있다. 상기한 바와 같이 기준선(1115)을 기준으로 보정 단위 내의 필기 글자들에 대한 캡 하이트(1105), 또는 엑스 하이트(1110)와 같은 수직 특성값을 확인하게 되면, 확인된 수직 특성값에 어떠한 기준 서체 특성값이 매칭되는지를 판단할 수 있다. 이를 구체적으로 설명하기 위해 도 12를 참조할 수 있다.
도 12는 본 발명의 다양한 실시 예에 따른 기준 서체 특성값에 대한 선택 방법을 설명하기 위한 예시도이다. 도 12에 도시된 바와 같이 필기 문자(1200)에 대한 서체 특성값(1205)의 캡 하이트가 3.8이며, 엑스 하이트가 4.2이며, 디센더가 2라고 판단되면, 복수의 기준 서체 특성값들(1210, 1215, 1220, 1225 및 1230) 중 필기 문자(1200)에 대한 서체 특성값(1205)과 가장 차이가 적은 기준 서체 특성값(1210)이 선택될 수 있다.
도 13a 및 도 13b는 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 단위별 보정 방법을 설명하기 위한 예시도이다.
도 13a에서는 보정 단위별 필기 글자에 대한 보정 방법을 예시하고 있는데, 일 실시 예에서, 어절 단위별 보정의 경우 각 필기 글자들 사이의 띄어쓰기(또는 공백)를 기준으로 필기 글자들에 대한 보정 단위(1306, 1307, 및 1308)가 정해질 수 있다. 따라서 어절 보정 전의 필기 글자들(1305)에 대한 보정이 수행되면 기준선을 기준으로 정렬된 필기 글자들(1310)이 화면에 표시될 수 있다.
다른 실시 예에서, 글자 단위별 보정의 경우 하나의 필기 글자들 각각(1316, 내지 1326)을 기준으로 한 보정으로, 글자 단위 보정 전의 필기 글자들(1315)에 대한 보정이 수행되면 기준선을 기준으로 정렬된 필기 글자들(1320)이 화면에 표시될 수 있다. 사용자가 직접 수기로 작성한 필기 글자들이기 때문에 필기 글자들의 각 글자 크기, 자간, 배열, 또는 줄 간격이 일정하기 않을 수 있는데, 도 13a에 도시된 바와 같이 어절 단위별 또는 글자 단위별로 필기 글자들의 크기, 자간, 또는 상하 위치를 조절하여 정렬함으로써 사용자의 필체를 최대한 유지하면서도 깔끔하게 정렬된 필기 글자들을 표시할 수 있다. 필기 입력의 경우 흘림체뿐만 아니라 글자를 연속해서 이어 쓰는 경우가 있을 수 있다. 글자 단위 보정 전의 필기 글자들(1315)을 예로 들어 설명하면, 만일 사용자가 'h'(1317)와 'e'(1318)를 끊김 없이 이어서 필기한 경우 인식 동작을 통해 전자 장치는 'he'를 'h'와 'e'라는 글자로 인식하지 못하는 상황이 발생할 수도 있기 때문에 어절 단위의 보정 정확도가 글자 단위의 보정 정확도가 높을 수 있다.
또 다른 실시 예에서, 도 13b에서와 같이 필기 글자들(1330)에 대한 위치 및 크기뿐만 아니라 기울기도 함께 보정될 수 있다. 예를 들어, 사용자에 의해 그려진 'the'(1331)와 'quick'(1332)라는 글자의 경우 'the'(1331)와 'quick'(1332) 라는 두 단어의 크기가 서로 다르므로 보정을 통해 'the quick'(1340)에서와 같이 크기가 조절될 수 있으며, 크기가 조절된 필기 글자들이 화면에 표시될 수 있다. 게다가 'the'(1331)의 경우 'the'(1331)를 둘러싸는 영역의 기울기가 상대적인 기준선과 비교하여 기울어져 있으므로, 'the'(1331)에 대한 기울기를 보정한 후 the'(1331)와 'quick'(1332)에 대한 위치, 크기와 같은 보정이 수행될 수 있다.
일 실시 예에 따르면, 확인된 서체 특성값에 의해 형성되는 글자 영역의 상하 크기를 기준으로 두 단어의 크기는 조정될 수 있다. 이와 유사한 방식으로 두 단어의 크기뿐만 아니라 위치 보정도 수행될 수 있다. 여기서, 필기 글자의 크기 또는 위치를 조정하기 전에 기울기에 대한 보정이 우선 수행되어야 글자 영역의 위치 및 크기를 결정하기 위한 기준선이 정해질 수 있다.
이와 같이 두 단어의 크기 또는 위치가 조정되더라도 사용자의 필체는 그대로 유지되어 사용자에게 보다 깔끔하게 정렬된 필기 글자들을 효과적으로 보여줄 수 있다. 전술한 바에서는 필기 글자들의 기울기, 위치 및/또는 크기를 조정하는 경우를 예로 들어 설명하였으나, 필기 글자들의 자간, 글자 폭도 함께 조정될 수 있다.
도 14는 본 발명의 다양한 실시 예에 따른 입력되는 필기 글자들에 대한 보정에 따른 화면 예시도이다. 도 14를 참조하면, 필기 입력이나 스케치와 관련된 어플리케이션 수행에 따른 화면을 예시하고 있다. 첫 번째 화면(1405)에서는 필기 입력 화면 내에 줄이 없는 경우를 예시하고 있으며, 두 번째 화면(1410)에서와 같이 사용자에 의해 필기 문자(1411)가 입력되면, 보정을 통해 세 번째 화면(1415)에서, 필기 글자의 기울기, 위치, 또는 크기가 정렬된 필기 글자(1416)가 표시될 수 있다.
도 15는 본 발명의 다양한 실시 예에 따른 입력창을 통해 입력되는 필기 글자들에 대한 보정에 따른 화면 예시도이다. 도 15를 참조하면, 필기 입력이나 스케치와 관련된 어플리케이션이 실행되면 필기 입력 전의 첫 번째 화면(1505)이 표시될 수 있다. 첫 번째 화면(1505)은 별도의 필기 입력창(1508)이 표시되며, 필기 글자가 표시될 위치를 나타내는 커서 역할의 블록(1507)이 표시 영역 상에 표시되는 경우를 예시하고 있다.
두 번째 화면(1510)에서와 같이 사용자가 필기 입력창(1508)을 통해 필기 글자(1511)를 입력하게 되면, 표시 영역 내에 보정된 필기 글자(1512)가 표시될 수 있다. 필기 입력창(1508)을 통해 입력하는 필기 글자의 크기 및 상하 위치가 균일하지 않더라도 보정을 통해 필기 글자의 크기, 상하 위치가 정렬되어 표시될 수 있다.
전술한 두 번째 화면(1510)에서는 필기 글자의 크기, 상하 위치가 정렬되는 경우를 예시하고 있으나 기울기, 자간, 각 글자 폭, 줄 간격과 같은 다양한 요소를 조정하여 정렬할 수 있으며, 세 번째 화면(1515)에서는 크기 및 기울기 보정의 경우를 예시하고 있다.
예를 들어, 세 번째 화면(1515)에서와 같이 사용자가 필기 입력창(1508)을 통해 입력한 필기 글자(1513)의 기울기, 또는 크기가 균일하지 않더라도 보정을 통해 필기 글자의 크기, 또는 기울기가 정렬되어 표시 영역 내에 보정된 필기 글자(1514)가 표시될 수 있다. 도 14 및 도 15에서는 사용자가 입력한 필기 글자의 필체가 최대한 유지되면서 그 크기, 자간, 상하 위치, 또는 기울기가 보정된 경우를 예시하고 있으나, 폰트 렌더링을 통해 시스템에서 정한 명도, 조도, 획 두께, 스타일 적용, 또는 폰트 효과 적용과 같은 다양한 효과를 적용한 필기 글자를 표시할 수도 있다.
도 16은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 되돌리기 방법을 설명하기 위한 흐름도(1600)이다. 동작 방법은 1605 내지 1645 동작들을 포함할 수 있다. 동작 방법의 각 단계/동작은, 전자 장치(예: 도 1 또는 도 2의 전자 장치(101)), 전자 장치의 적어도 하나의 프로세서(예: 도 1 또는 도 2의 프로세서(120)) 중 적어도 하나에 의해 수행될 수 있다. 한 실시 예에서, 1605 내지 1645 동작들 중 적어도 하나가 생략되거나, 일부 동작들의 순서가 바뀌거나, 다른 동작이 추가될 수 있다.
도 16을 참조하면, 사용자는 필기 입력에 대한 보정을 취소하기 위해 되돌리기를 사용할 수도 있고, 필기 입력 작성 자체를 취소하기 위해 되돌리기를 사용할 수도 있다. 만일 필기 입력에 대한 보정을 취소하는 경우에는 보정 후의 필기 입력에 따른 데이터와 보정 전의 필기 입력에 따른 데이터 모두를 임시로 저장해야 함과 동시에 그에 따른 히스토리 데이터도 필요하게 되므로, 필기 입력에 대한 보정이 없는 경우에 비해 2배의 히스토리 데이터가 필요할 수 있다. 또한 필기 입력 자체를 처음으로 되돌리고 싶은 경우 예를 들어, 필기 작성 자체를 취소하고 싶은 경우에는 사용자는 되돌리기를 2회 선택해야 하며, 전자 장치 입장에서는 2회의 되돌리기 선택에 따른 연산을 수행해야 하므로, 불필요한 리소스 소모가 발생할 수 있다.
본 발명의 다양한 실시 예에 따르면, 연산에 따른 리소스 소모를 최소화하기 위해 보정에 대한 히스토리는 가장 최근의 보정 데이터 예를 들어, 마지막 보정 데이터를 제외한 나머지 모든 보정 데이터를 삭제할 수 있다. 일 실시 예에 따르면, 보정에 대한 히스토리는 가장 최근의 1개 또는 N개만 저장할 수 있으며, 그 히스토리의 수는 시스템에 고정 변수로 설정할 수 있다.
이를 구체적으로 설명하기 위해 도 16을 참조하면, 동작 1605에서, 전자 장치는 필기 데이터가 입력되는지를 판단할 수 있다. 만일 필기 데이터가 입력되면, 동작 1610에서, 전자 장치는 입력되는 필기 데이터에 대한 히스토리를 저장할 수 있다.
동작 1615에서, 전자 장치는 입력된 필기 데이터에 대응하는 필기 글자들을 인식 후 보정을 수행할 수 있다. 여기서, 동작 1605 내지 1615에서의 각 기능은 도 6의 동작 605 내지 620 또는 도 7의 동작 705 내지 745와 동일하므로, 그 구체적인 설명은 생략하기로 한다.
동작 1620에서, 전자 장치는 보정에 따른 히스토리 데이터가 둘 이상인지를 판단할 수 있다. 예를 들어, 사용자가 손가락 또는 펜 입력 장치를 이용하여 화면을 터치 다운하고 드래그하고 터치 업 하는 동작을 1번 했을 경우 필기 글자들이 보정될 수 있다. 따라서 이러한 동작을 반복하게 되면 순차적으로 보정된 필기 글자들이 표시될 수 있으며, 이에 따라 보정에 따른 히스토리 데이터도 둘 이상이 될 수 있다. 예를 들어, 사용자가 한 글자씩 필기할 때마다 글자 단위로 보정이 수행될 수도 있으며, 이에 대응하여 한 글자씩 보정된 필기 글자가 순차적으로 표시될 수 있다.
일 실시 예에서, 보정에 따른 히스토리 데이터가 둘 이상인 경우 전자 장치는 동작 1625에서, 마지막 히스토리 데이터를 제외한 나머지 히스토리 데이터를 삭제할 수 있다. 일 실시 예에 따르면, 마지막 히스토리 데이터 예를 들어, 1개의 히스토리 데이터만 남도록 나머지 히스토리 데이터를 삭제할 수도 있으나, 시스템에서 정한 히스토리 데이터의 수(예: N개)가 있는 경우 N개의 히스토리 데이터를 제외한 나머지 히스토리 데이터를 삭제할 수도 있다.
반면, 보정에 따른 히스토리 데이터가 둘 이상이 아닌 경우 예를 들어, 보정에 따른 히스토리 데이터가 없는 경우에 해당할 경우 삭제할 데이터가 없는 상태이므로, 동작 1630에서 되돌리기 요청이 입력되는지를 판단할 수 있다. 되돌리기 요청은 예를 들어, 언두(undo) 요청, 또는 실행 취소 요청으로 지칭할 수 있다.
만일 되돌리기 요청이 입력되면, 동작 1635에서 전자 장치는 보정에 따른 히스토리 데이터가 있는지를 판단할 수 있다. 만일 보정에 따른 히스토리 데이터가 없는 경우에는 동작 1645에서 필기 입력 전으로 되돌리기를 수행할 수 있다. 반면 보정에 따른 히스토리 데이터가 있는 경우에는 동작 1640에서 보정 전으로 되돌리기를 수행할 수 있다. 이를 구체적으로 설명하기 위해 도 17을 참조할 수 있다.
도 17은 본 발명의 다양한 실시 예에 따른 필기 글자에 대한 보정 되돌리기에 따른 화면 예시도이다. 도 17에서는 필기 입력이나 스케치와 관련된 어플리케이션 수행에 따른 화면을 예시하고 있다. 첫 번째 화면(1705)에서는 필기 입력에 대응하여 보정된 필기 글자들(1707)이 표시되는 경우를 예시하고 있으며, 사용자가 되돌리기에 해당하는 아이템(1706)을 선택하면, 두 번째 화면(1710)에서와 같이 보정 전의 필기 글자들(1711)이 표시될 수 있다. 또한 사용자가 되돌리기에 해당하는 아이템(1706)을 2회 선택한 경우에는 세 번째 화면(1715)에서와 같이 필기 입력 전의 빈 영역(1716)을 가지는 화면이 표시될 수 있다. 이때, 되돌리기 요청의 횟수에 대응하여 두 번째 화면(1710)에서 세 번째 화면(1715)으로 순차적으로 되돌리기 동작에 따른 화면으로 변경될 수도 있으나, 다르게는 첫 번째 화면(1705)에서 바로 세 번째 화면(1715)으로 변경될 수도 있다.
상기한 바와 같이 필기 작성 후 첫 번째 되돌리기 동작은 보정 단위(예: 문장 단위, 어절 단위, 또는 글자 단위)에 대한 보정 취소로 동작할 수 있으며, 다음 되돌리기 동작은 필기 작성 자체에 대한 취소로 동작할 수 있다. 또한, 이후의 되돌리기 동작은 시스템에 설정된 1 ~ N 개까지 상기와 동일하게 동작하고, 그 1 ~ N개 이후의 되돌리기 동작은 필기 입력 자체에 대한 되돌리기로 동작할 수 있다.
한편 전술한 바에서는 보정된 필기 글자들에 대한 되돌리기 요청의 입력에 대응하여, 보정되기 이전의 필기 글자들을 표시하거나 최초 필기 입력 이전의 화면이 표시되는 경우를 설명하였으나, 되돌리기 요청과는 반대로 되돌리기 자체를 취소할 수 있다. 되돌리기의 취소는 예를 들어, 리두(redo), 또는 되돌리기 복구와 같은 경우를 지칭할 수 있으며, 되돌리기의 취소 요청이 입력되는 경우 필기 입력이 복구되거나 필기 글자에 대한 보정으로 복구될 수 있다. 예를 들어, 되돌리기 취소의 경우 가장 최근에 입력된 필기 데이터를 기준으로 설정된 되돌리기 취소 가능 횟수만큼 필기 입력의 복구로부터 보정 복구의 순으로 순차적으로 복구될 수 있으며, 이에 대응하는 복구 화면이 표시될 수 있다.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시 예들로 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나" 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
다양한 실시 예에 따르면, 명령들을 저장하고 복수의 기준 서체 특성값들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 전자 장치(예: 도 1 및 도 2의 전자 장치(101))의 디스플레이(예: 표시 장치(160))를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작, 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작, 상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작 및 상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 보정하며, 상기 보정된 필기 글자들을 상기 디스플레이(예: 표시 장치(160))에 표시하는 동작을 포함할 수 있다. 일 실시 예에 따르면, 상기 필기 글자들을 보정하는 동작은, 상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함할 수 있다.
그리고 본 명세서와 도면에 발명된 본 발명의 실시 예들은 본 발명의 실시 예에 따른 기술 내용을 쉽게 설명하고 본 발명의 실시 예의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 실시 예의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 다양한 실시 예의 범위는 여기에 발명된 실시 예들 이외에도 본 발명의 다양한 실시 예의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 다양한 실시 예의 범위에 포함되는 것으로 해석되어야 한다.
101: 전자 장치, 120: 프로세서, 130: 메모리, 150: 입력 장치, 160: 표시 장치, 190: 통신 모듈

Claims (20)

  1. 전자 장치에 있어서,
    디스플레이;
    프로세서; 및
    상기 디스플레이 및 상기 프로세서에 작동적으로 연결되고, 복수의 기준 서체 특성값들을 저장하도록 구성된 메모리를 포함하며,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하고,
    상기 인식된 필기 글자들에 대한 서체 특성값을 확인하고,
    상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하고,
    상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하여 상기 디스플레이에 표시하도록 하는 인스트럭션들을 저장하는 전자 장치.
  2. 제 1항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하도록 설정된 전자 장치.
  3. 제 1항에 있어서, 상기 확인된 서체 특성값은,
    상기 필기 글자에 대한 캡 하이트(cap height), 엑스 하이트(x-height), 또는 디센더(descender) 중 적어도 하나의 수직 특성값을 포함하는 전자 장치.
  4. 제 3항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 확인된 서체 특성값에 포함된 적어도 하나의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 적어도 하나의 수직 특성값 간의 적어도 일부를 비교하도록 설정된 전자 장치.
  5. 제 3항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택하도록 설정된 전자 장치.
  6. 제 1항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 인식된 필기 글자들에 대한 보정 단위를 확인하고, 상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정하도록 설정된 전자 장치.
  7. 제 6항에 있어서, 상기 보정 단위는,
    문장 단위, 어간 단위 또는 글자 단위 중 적어도 하나를 포함하는 전자 장치.
  8. 제 7항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정한 후 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하도록 하며, 상기 확인된 보정 단위로 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조절하도록 설정된 전자 장치.
  9. 제 1항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 보정된 필기 글자들이 표시되는 상태에서 되돌리기 요청이 수신되면, 상기 되돌리기 요청에 대응하여 상기 보정된 필기 글자들이 표시되기 전 상태 또는 상기 필기 데이터 입력 전 상태에 대응하는 화면을 상기 디스플레이에 출력하도록 설정된 전자 장치.
  10. 전자 장치에서 필기 입력에 대한 보정 방법에 있어서,
    상기 전자 장치의 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작;
    상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작;
    상기 전자 장치의 메모리에 저장된 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작; 및
    상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들을 보정하며, 상기 보정된 필기 글자들을 상기 전자 장치의 디스플레이에 표시하는 동작을 포함하는 필기 입력에 대한 보정 방법.
  11. 제 10항에 있어서, 상기 필기 글자들을 보정하는 동작은,
    상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함하는 필기 입력에 대한 보정 방법.
  12. 제 10항에 있어서, 상기 확인된 서체 특성값은,
    상기 필기 글자에 대한 캡 하이트(cap height), 엑스 하이트(x-height), 또는 디센더(descender) 중 적어도 하나의 수직 특성값을 포함하는 필기 입력에 대한 보정 방법.
  13. 제 12항에 있어서, 상기 기준 서체 특성값을 선택하는 동작은,
    상기 확인된 서체 특성값에 포함된 적어도 하나의 수직 특성값과, 상기 복수의 기준 서체 특성값들 각각에 포함된 적어도 하나의 수직 특성값 간의 적어도 일부를 비교하는 동작을 포함하는 필기 입력에 대한 보정 방법.
  14. 제 12항에 있어서, 상기 기준 서체 특성값을 선택하는 동작은,
    상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값과의 차이가 가장 적은 특성값을 갖는 기준 서체 특성값을 선택하는 동작을 포함하는 필기 입력에 대한 보정 방법.
  15. 제 10항에 있어서,
    상기 인식된 필기 글자들에 대한 보정 단위를 확인하는 동작; 및
    상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정하는 동작을 더 포함하는 필기 입력에 대한 보정 방법.
  16. 제 15항에 있어서, 상기 보정 단위는,
    문장 단위, 어간 단위 또는 글자 단위 중 적어도 하나를 포함하는 필기 입력에 대한 보정 방법.
  17. 제 16항에 있어서, 상기 필기 글자들을 보정하는 동작은,
    상기 확인된 보정 단위로 상기 인식된 필기 글자들에 대한 기울기를 보정한 후 상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작; 및
    상기 확인된 보정 단위로 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함하는 필기 입력에 대한 보정 방법.
  18. 제 10항에 있어서,
    상기 보정된 필기 글자들이 표시되는 상태에서 되돌리기 요청이 수신되면, 상기 되돌리기 요청에 대응하여 상기 보정된 필기 글자들이 표시되기 전 상태 또는 상기 필기 데이터 입력 전 상태에 대응하는 화면을 상기 디스플레이에 표시하는 동작을 더 포함하는 필기 입력에 대한 보정 방법.
  19. 명령들을 저장하고 복수의 기준 서체 특성값들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은,
    전자 장치의 디스플레이를 통한 필기 데이터 입력 시, 상기 입력된 필기 데이터에 대응하는 필기 글자들을 인식하는 동작;
    상기 인식된 필기 글자들에 대한 서체 특성값을 확인하는 동작;
    상기 복수의 기준 서체 특성값들 중 상기 확인된 서체 특성값에 대응되는 기준 서체 특성값을 선택하는 동작; 및
    상기 선택된 기준 서체 특성값에 기반하여 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 보정하며, 상기 보정된 필기 글자들을 상기 디스플레이에 표시하는 동작을 포함하는, 저장 매체.
  20. 제 19항에 있어서, 상기 필기 글자들을 보정하는 동작은,
    상기 선택된 기준 서체 특성값에 의해 형성되는 글자 영역의 위치 및 크기에 기초하여, 상기 필기 글자들의 위치, 크기, 자간, 또는 글자 폭 중 적어도 하나를 조정하는 동작을 포함하는 저장 매체.
KR1020180111580A 2018-09-18 2018-09-18 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체 KR102468082B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180111580A KR102468082B1 (ko) 2018-09-18 2018-09-18 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체
PCT/KR2019/011926 WO2020060121A1 (ko) 2018-09-18 2019-09-16 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180111580A KR102468082B1 (ko) 2018-09-18 2018-09-18 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체

Publications (2)

Publication Number Publication Date
KR20200032492A true KR20200032492A (ko) 2020-03-26
KR102468082B1 KR102468082B1 (ko) 2022-11-18

Family

ID=69887602

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180111580A KR102468082B1 (ko) 2018-09-18 2018-09-18 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체

Country Status (2)

Country Link
KR (1) KR102468082B1 (ko)
WO (1) WO2020060121A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022030933A1 (ko) * 2020-08-04 2022-02-10 삼성전자 주식회사 전자 장치 및 그의 필기 입력을 처리하는 방법
US12026850B2 (en) 2020-08-04 2024-07-02 Samsung Electronics Co., Ltd. Electronic device, and method for processing writing input thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130128681A (ko) * 2012-05-17 2013-11-27 삼성전자주식회사 서체 보정을 수행하도록 하기 위한 방법 및 그 전자 장치
KR20160062566A (ko) * 2014-11-25 2016-06-02 삼성전자주식회사 필기 문자를 보정하는 디바이스 및 방법
KR20180089640A (ko) * 2017-02-01 2018-08-09 국민대학교산학협력단 전자펜 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9423485B2 (en) * 2011-12-16 2016-08-23 Qualcomm Incorporated Systems and methods for predicting an expected blockage of a signal path of an ultrasound signal
KR101967632B1 (ko) * 2012-02-13 2019-04-11 삼성전자주식회사 사용자 인터페이스를 가진 태블릿
KR20160102811A (ko) * 2015-02-23 2016-08-31 엘지전자 주식회사 손목착용형 디바이스를 착용한 손의 제스처를 통해 필기관련 기능을 제어할 수 있는 이동 단말기 및 그 제어방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130128681A (ko) * 2012-05-17 2013-11-27 삼성전자주식회사 서체 보정을 수행하도록 하기 위한 방법 및 그 전자 장치
KR20160062566A (ko) * 2014-11-25 2016-06-02 삼성전자주식회사 필기 문자를 보정하는 디바이스 및 방법
KR20180089640A (ko) * 2017-02-01 2018-08-09 국민대학교산학협력단 전자펜 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022030933A1 (ko) * 2020-08-04 2022-02-10 삼성전자 주식회사 전자 장치 및 그의 필기 입력을 처리하는 방법
US12026850B2 (en) 2020-08-04 2024-07-02 Samsung Electronics Co., Ltd. Electronic device, and method for processing writing input thereof

Also Published As

Publication number Publication date
KR102468082B1 (ko) 2022-11-18
WO2020060121A1 (ko) 2020-03-26

Similar Documents

Publication Publication Date Title
KR102457894B1 (ko) 디스플레이에 표시된 텍스트를 번역하는 방법 및 장치
KR102496531B1 (ko) 지문 인식을 위한 방법, 전자 장치 및 저장 매체
EP2937813A2 (en) Method of processing content and electronic device using the same
KR20200101481A (ko) 전자 장치 및 그의 필체 보정 방법
US10248652B1 (en) Visual writing aid tool for a mobile writing device
US20200117308A1 (en) Electronic device and method for determining touch input conditions based on type of touch input
US20240029461A1 (en) Electronic device for processing handwriting input on basis of learning, operation method thereof, and storage medium
US12008233B2 (en) Electronic device and method for generating a user-customized keypad based on usage characteristics
KR102621809B1 (ko) 저전력 상태에서 디스플레이를 통해 화면을 표시하기 위한 전자 장치 및 그의 동작 방법
US20230394721A1 (en) Information processing apparatus, program, and system
KR102468082B1 (ko) 필기 입력에 대한 보정 방법, 이를 위한 전자 장치 및 저장 매체
EP4177727A1 (en) Electronic device, and method for processing writing input thereof
KR20200102838A (ko) 이미지를 이용하여 콘텐트를 검색하기 위한 장치 및 그 제어 방법
US11372498B2 (en) Electronic device for supporting user input and control method of electronic device
US11586352B2 (en) Method for setting layout for physical keyboard by electronic device, and device therefor
CN115187987A (zh) 特殊区域外文本识别方法、装置、电子设备及存储介质
CN115188001A (zh) 手写文本的识别方法、装置、电子设备及存储介质
KR102656963B1 (ko) 전자 장치 및 전자 장치의 제어 방법
KR20220017290A (ko) 손글씨 정렬 방법 및 장치
KR20220006237A (ko) 손글씨를 텍스트로 변환하기 위한 전자 장치 및 그에 관한 방법
KR102353919B1 (ko) 터치의 압력에 응답하여 지정된 동작을 수행하는 전자 장치 및 방법
US12026850B2 (en) Electronic device, and method for processing writing input thereof
US11995308B2 (en) Method and device for providing handwriting input in electronic device
US20240020996A1 (en) Electronic device and method for identifying sentence indicated by strokes
US12019861B2 (en) Electronic apparatus and the method for controlling thereof

Legal Events

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