KR102417783B1 - 디지털 잉크 식자를 관리하기 위한 시스템 및 방법 - Google Patents
디지털 잉크 식자를 관리하기 위한 시스템 및 방법 Download PDFInfo
- Publication number
- KR102417783B1 KR102417783B1 KR1020197015086A KR20197015086A KR102417783B1 KR 102417783 B1 KR102417783 B1 KR 102417783B1 KR 1020197015086 A KR1020197015086 A KR 1020197015086A KR 20197015086 A KR20197015086 A KR 20197015086A KR 102417783 B1 KR102417783 B1 KR 102417783B1
- Authority
- KR
- South Korea
- Prior art keywords
- text
- ink
- typesetting
- digital ink
- text elements
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 238000004590 computer program Methods 0.000 abstract description 3
- 239000000976 ink Substances 0.000 description 712
- 238000010586 diagram Methods 0.000 description 107
- 238000007726 management method Methods 0.000 description 104
- 238000012545 processing Methods 0.000 description 30
- 238000004364 calculation method Methods 0.000 description 18
- 238000010606 normalization Methods 0.000 description 12
- 230000011218 segmentation Effects 0.000 description 12
- 230000001788 irregular Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000013459 approach Methods 0.000 description 9
- 230000003993 interaction Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000001174 ascending effect Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 229910003460 diamond Inorganic materials 0.000 description 5
- 239000010432 diamond Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004513 sizing Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 241000699666 Mus <mouse, genus> Species 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 229910052799 carbon Inorganic materials 0.000 description 2
- 238000011960 computer-aided design Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 208000007101 Muscle Cramp Diseases 0.000 description 1
- 206010029897 Obsessive thoughts Diseases 0.000 description 1
- NIXOWILDQLNWCW-UHFFFAOYSA-N acrylic acid group Chemical group C(C=C)(=O)O NIXOWILDQLNWCW-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000021615 conjugation Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/171—Editing, e.g. inserting or deleting by use of digital ink
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/22—Character recognition characterised by the type of writing
- G06V30/226—Character recognition characterised by the type of writing of cursive writing
- G06V30/2268—Character recognition characterised by the type of writing of cursive writing using stroke segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/333—Preprocessing; Feature extraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/36—Matching; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
컴퓨팅 디바이스들 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템, 방법 및 컴퓨터 프로그램 제품. 각각의 컴퓨팅 디바이스는 프로세서, 및 그 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 시스템 애플리케이션을 갖는다. 그 시스템 애플리케이션은, 구조화된 콘텐츠의 적어도 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하고, 그 치수 정보의 적어도 일부에 기초하여 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 각각의 식자 잉크 텍스트 엘리먼트에 대한 제 1 폰트 사이즈를 계산하며, 식자 잉크 텍스트 엘리먼트들을 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하고, 각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 제 1 폰트 사이즈에 기초하여 각각의 식자 잉크 텍스트 엘리먼트에 대한 제 2 폰트 사이즈를 결정하며, 그리고, 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 제 2 폰트 사이즈들로 식자 잉크 텍스트 엘리먼트들을 디스플레이한다.
Description
관련 출원들에 대한 상호 참조
이 출원은 2016년 10월 26일자로 출원된 유럽 출원 제 16 290 205.0 호에 대해 우선권을 주장하는, 2017년 3월 22일자로 출원된 미국 특허 출원 제 15/466,346 호에 대해 우선권을 주장하며, 그 전체 내용은 본원에 참조에 의해 통합된다.
기술분야
본 발명은 일반적으로 다양한 그래픽 및 텍스트의 사용자 입력 핸드라이팅을 인식할 수 있는 컴퓨팅 디바이스 인터페이스들의 분야에 관한 것이다. 특히, 본 설명은 핸드라이팅된 입력에 대응하는 디지털 잉크의 식자의 관리에 관한 것이다.
배경
컴퓨팅 디바이스들은 계속해서 일상 생활에서 편재하고 있다. 그 컴퓨팅 디바이스들은 컴퓨터 데스크탑들, 랩탑 컴퓨터들, 태블릿 컴퓨터들, 하이브리드 컴퓨터들 (2-인-1 들), e-북 리더들, 모바일 폰들, 스마트폰들, 웨어러블 컴퓨터들, 글로벌 포지셔닝 시스템 (GPS) 유닛들, 기업용 디지털 보조기들 (EDA들), 개인용 디지털 보조기들 (PDA들), 게임 콘솔들 등의 형태를 취한다. 추가로, 컴퓨팅 디바이스들은 자동차들, 트럭들, 농장 시설, 제조 장비, 건물 환경 제어 (예컨대, 조명, HVAC), 및 가정 및 상업용 어플라이언스들과 같은 차량들 및 장비에 통합되고 있다.
컴퓨팅 디바이스들은 일반적으로, 중앙 프로세싱 유닛 (CPU) 과 같은 적어도 하나의 프로세싱 엘리먼트, 일부 형태의 메모리, 및 입력 및 출력 디바이스들로 구성된다. 다양한 컴퓨팅 디바이스들 및 그것들의 후속 사용들은 다양한 인터페이스들 및 입력 디바이스들을 필요로 한다. 하나의 그러한 입력 디바이스는, 터치 스크린 또는 터치 패드와 같은 터치 감지 표면이며, 여기서 사용자 입력은 사용자의 손가락 또는 펜 또는 스타일러스와 같은 기구와 터치 감지 표면 간의 접촉을 통해 수신된다. 다른 입력 디바이스는 입력 인터페이스 위에서 사용자에 의해 실시된 제스처들을 감지하는 입력 인터페이스이다. 추가의 입력 디바이스는 비접촉 물리적 또는 가상 표면과의 접촉 또는 비접촉 상호작용들의 상대적인 포지션을 검출하는 포지션 검출 시스템이다. 이들 입력 방법들 중 임의의 것은 일반적으로 핸드라이팅된 콘텐츠의 입력을 위해 사용될 수 있다. 사용자의 핸드라이팅 (handwriting) 은 핸드라이팅 인식 시스템 또는 방법을 사용하여 해석된다.
컴퓨팅 디바이스들에서의 핸드라이팅 인식의 하나의 애플리케이션은, 식자된 버전들로 변환될, 컴퓨팅 디바이스 상에서 핸드-드로잉된 다이어그램 (diagram) 들의 생성에서이다. 다이어그램들은 (부분들의) 배열 및 관계들을 설명하거나 나타내는 드로잉 (drawing) 들이다. 다이어그램들은 일반적으로 임의의 또는 특정 의미들을 갖는 형상들 및 이들 형상들에 데한 관계들을 갖는 텍스트를 포함한다. 단지 몇가지만 들어보면, 플로우 차트들, 조직도들, 개념 맵들, 스파이더 맵들, 블록/ 아키텍처 다이어그램들, 마인드 맵들, 블록 다이어그램들, 벤 다이어그램들 및 피라미드와 같은 많은 유형의 다이어그램들이 있다.
일반적으로, 다이어그램들은 텍스트를 포함하는 형상 엘리먼트들을 갖도록 생성된다. 종래의 디지털 (예컨대, 비-핸드라이팅) 다이어그래밍 애플리케이션들에서, 형상 컨테이너들 내의 식자된 텍스트의 사이즈 (예컨대, 폰트 사이즈) 는 사전 설정된 파라미터들에 의해 지배된다. 예를 들어, MICROSOFT® POWERPOINT®, GOOGLE® Drawings 및 GOOGLE® Slides 에서, 형상들 내에 텍스트를 둘러싸거나, 형상이 감소될 때 폰트 사이즈를 감소시키거나, 또는 오버플로우하는 텍스트가 입력될 때 형상을 리사이징하도록 사용자들에 의해 셋팅들이 이루어질 수 있다. 하지만 이러한 동작들을 핸드라이팅된 다이어그램들의 텍스트 및 형상들에 적용하는 것은 문제가 있다.
그 이유는, 다이어그램의 디지털 잉크 (즉, 입력 핸드라이팅의 렌더링된 시각화) 버전에 관해, 핸드라이팅을 왜곡시키지 않고서 디지털 잉크에서 텍스트 및 비-텍스트를 리사이징하는 것은 어렵고, 이는 품질에서의 가능한 감소와 함께 추가적인 사용자 노력이 요구되기 때문에 사용자 경험에 그리고 콘텐츠 그 자체에 부정적으로 영향을 미치기 때문이다. 또한, 이러한 동작들이 디지털 잉크에 대해 수행되지 않고 디지털 잉크의 변환 시에 식자된 콘텐츠에 대해 수행되는 경우에, 다이어그램의 결과적인 식자 버전은 원래 의도된 다이어그램에 대해 매우 상이할 수도 있다.
다이어그램들 내의 계층적 구조들 (예컨대, 트리들) 에 관해 추가적인 이슈들이 존재한다. 즉, 조직도들, 마인드-맵들 등과 같은 많은 다이어그램 타입들은 정보의 레벨들을 가지고, 정보의 각 레벨은 레벨 정도를 시각적으로 나타내는 방식으로 디스플레이된다. 이러한 경우들에서, 다이어그램의 식자 버전에 관해, 계층의 상이한 레벨들은 사용자들에 의한 사전-선택 또는 사후-선택, 스타일 템플릿들 등의 사용, 또는 콘텐츠의 해석을 통해 그 레벨에 대해 특정적인 텍스트 사이즈들 및 형상 사이즈들로 쉽게 렌더링된다.
하지만, 디지털 잉크에서 이러한 계층적 레벨들을 표현하는 것은 어렵고, 그 이유는, 출원인이 발견한 바와 같이, 이러한 상이한 레벨들 없는 그리고 내의 사용자들의 핸드라이팅은 크게 변화하여서 (예를 들어, 사용자들은 이미 그려진 형상들 내에 맞추기 위해 핸드라이팅하는 것에 경련을 일으킴이 주목되었다), 엘리먼트 사이즈에서의 임의의 의도된 차별화는 핸드라이팅 인식 프로세스 그 자체를 통해 해석되기 어렵다. 즉, 식자 시에 디지털 잉크의 높이 (또는 사이즈) 가 직접 폰트 사이즈에 맵핑되는 경우에, 변환된 콘텐츠는 유사한 블록들 (레벨들) 에 대해 많은 상이한 폰트 사이즈들을 가질 수도 있고, 아마도 상이한 레벨들, 예컨대, 더 높은 레벨들에 대한 역전된 폰트 사이즈들은 더 낮은 레벨들보다 더 작은 폰트 사이즈를 갖는다. 이것은 예컨대 블록 또는 메뉴 선택을 통해 사용자들에 의한 개입을 통해 식자 후에 정정될 수 있지만, 이는 사용자 경험 및 생산성을 감소시킨다. 대안적으로, 디폴트 또는 표준 폰트 사이즈는 핸드라이팅된 텍스트 사이즈에 관계 없이 각 레벨에 대해 개별적으로 또는 모든 레벨들에 걸쳐서 적용될 수 있다.
컴퓨팅 디바이스들에서의 핸드라이팅 인식의 다른 애플리케이션은 테이블들의 생성, 콘텐츠 및 데이터의 테이블들, 또는 리스트들과 같은 다른 구조화된 콘텐츠 내로의 입력에서이다. 다이어그램들과 같이, 테이블들은 텍스트를 포함하는 셀들을 정의하는 경계지어진 또는 비-경계지어진 열들 및 행들에 대응하는 '컨테이너들 (containers)' 을 갖도록 생성되고, 테이블의 보디에 폰트 사이즈들 또는 다른 스타일링 차이들을 갖도록 하는 열 및 라인 헤딩들과 같은 계층적 구조를 가질 수도 있다. 이와 같이, 다이어그램들과 같이, 핸드라이팅된 테이블 또는 리스트 입력의 식자 버전의 합리적인 텍스트 및 비-텍스트 사이징을 해석하는 것은 입력 그 자체를 고려할 때 어렵다.
요약
이하에서 본 명세서에서 기술되는 본 개시의 예들은 컴퓨팅 디바이스에 대한 핸드라이팅된 입력의 식자를 관리함에 있어서 사용하기 위한 방법들, 시스템들 및 컴퓨터 프로그램 제품을 제공한다.
일부 예들에서, 본 개시는 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템을 포함한다. 컴퓨팅 디바이스는 프로세서, 및 그 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 (non-transitory) 컴퓨터 판독가능 매체를 포함할 수도 있다. 그 적어도 하나의 비일시적 컴퓨터 판독가능 매체는, 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하고, 그 치수 정보의 적어도 일부에 기초하여 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들 (typeset ink text elements) 의 각각에 대한 제 1 폰트 사이즈를 계산하며, 식자 잉크 텍스트 엘리먼트들을 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하고, 각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 제 1 텍스트 사이즈에 기초하여 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하며, 그리고, 각각의 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 제 2 폰트 사이즈들로 복수의 식자 잉크 텍스트 엘리먼트들의 디스플레이를 야기하도록 구성될 수도 있다. 일부 예들에서, 본 개시는 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템을 포함한다. 그 시스템은 명령들을 포함하는 메모리, 및, 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하고, 그 치수 정보의 적어도 일부에 기초하여 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하며, 식자 잉크 텍스트 엘리먼트들을 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하고, 각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 제 1 텍스트 사이즈에 기초하여 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하며, 그리고, 각각의 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 제 2 폰트 사이즈들로 복수의 식자 잉크 텍스트 엘리먼트들의 디스플레이를 야기하도록 명령들을 실행하도록 구성된 프로세서를 포함할 수도 있다.
식자 잉크 텍스트 엘리먼트들은 대응하는 디지털 잉크 텍스트 엘리먼트들의 치수 정보에 기초하여 분류될 수도 있다.
치수 정보는 디지털 잉크 텍스트 엘리먼트들의 인쇄상의 정보 (typographical information) 를 포함할 수도 있다. 인쇄상의 정보는 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트 (x-height) 를 포함할 수도 있다.
치수 정보는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 구조화된 콘텐츠의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보일 수도 있고, 그 적어도 하나의 비일시적 컴퓨터 판독가능 매체는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하도록 구성될 수도 있다.
치수 정보는 식자 잉크 비-텍스트 엘리먼트들의 기하학적 (geometrical) 정보를 포함할 수도 있다.
디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 디지털 잉크 텍스트 엘리먼트의 적어도 일부는 관련된 디지털 잉크 비-텍스트 엘리먼트 내에 포함될 수도 있고, 대응하는 식자 잉크 텍스트 엘리먼트의 제 1 폰트 사이즈는, 식자 잉크 텍스트 엘리먼트가 대응하는 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산될 수도 있다.
일부 예들에서, 본 개시는 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법을 포함한다. 그 컴퓨팅 디바이스는 프로세서, 및 그 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함할 수도 있다. 그 방법은, 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하는 단계, 그 치수 정보의 적어도 일부에 기초하여 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하는 단계, 식자 잉크 텍스트 엘리먼트들을 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하는 단계, 각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 제 1 텍스트 사이즈에 기초하여 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하는 단계, 및, 각각의 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 제 2 폰트 사이즈들로 복수의 식자 잉크 텍스트 엘리먼트들을 디스플레이하는 단계의 단계들을 포함할 수도 있다.
식자 잉크 텍스트 엘리먼트들은 대응하는 디지털 잉크 텍스트 엘리먼트들의 치수 정보에 기초하여 분류될 수도 있다.
치수 정보는 디지털 잉크 텍스트 엘리먼트들의 인쇄상의 정보를 포함할 수도 있다. 그 인쇄상의 정보는 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트를 포함할 수도 있다.
치수 정보는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 구조화된 콘텐츠의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보일 수도 있고, 메모리는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하는 단계를 포함할 수도 있다.
치수 정보는 식자 잉크 비-텍스트 엘리먼트들의 기하학적 정보를 포함할 수도 있다.
디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 디지털 잉크 텍스트 엘리먼트의 적어도 일부는 관련된 디지털 잉크 비-텍스트 엘리먼트 내에 포함될 수도 있고, 대응하는 식자 잉크 텍스트 엘리먼트의 제 1 폰트 사이즈는, 식자 잉크 텍스트 엘리먼트가 대응하는 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산될 수도 있다.
일부 예들에서, 본 개시는 컴퓨터 판독가능 프로그램 코드가 포함된 비일시적 컴퓨터 판독가능 매체를 포함한다. 그 컴퓨터 판독가능 프로그램 코드는 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법을 구현하기 위해 실행되도록 적응 (adapt) 될 수도 있다. 그 컴퓨팅 디바이스는 프로세서, 및 그 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함할 수도 있다. 그 방법은, 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하는 단계, 그 치수 정보의 적어도 일부에 기초하여 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하는 단계, 식자 잉크 텍스트 엘리먼트들을 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하는 단계, 각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 제 1 텍스트 사이즈에 기초하여 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하는 단계, 및, 각각의 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 제 2 폰트 사이즈들로 복수의 식자 잉크 텍스트 엘리먼트들을 디스플레이하는 단계의 단계들을 포함할 수도 있다.
식자 잉크 텍스트 엘리먼트들은 대응하는 디지털 잉크 텍스트 엘리먼트들의 치수 정보에 기초하여 분류될 수도 있다.
치수 정보는 디지털 잉크 텍스트 엘리먼트들의 인쇄상의 정보를 포함할 수도 있다. 그 인쇄상의 정보는 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트를 포함할 수도 있다.
치수 정보는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 구조화된 콘텐츠의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보일 수도 있고, 메모리는, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하는 단계를 포함할 수도 있다.
치수 정보는 식자 잉크 비-텍스트 엘리먼트들의 기하학적 정보를 포함할 수도 있다.
디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 디지털 잉크 텍스트 엘리먼트의 적어도 일부는 관련된 디지털 잉크 비-텍스트 엘리먼트 내에 포함될 수도 있고, 대응하는 식자 잉크 텍스트 엘리먼트의 제 1 폰트 사이즈는, 식자 잉크 텍스트 엘리먼트가 대응하는 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산될 수도 있다.
본 발명의 시스템 및 방법은 도면들과 함께 취해지는 예들의 이하 상세한 설명으로부터 더 완전히 이해될 것이다. 도면들에 있어서, 동일한 참조 부호들은 동일한 엘리먼트들을 도시한다. 도면들에서:
도 1 은 예시적인 구조화된 디지털 오브젝트 콘텐츠를 컴퓨팅 디바이스의 입력 인터페이스 상에 렌더링되는 식자 잉크 마인드-맵 다이어그램의 형태로 도시한다.
도 2 는 예시적인 구조화된 디지털 잉크 오브젝트 콘텐츠를 컴퓨팅 디바이스의 입력 인터페이스 상에 렌더링되는 디지털 잉크 마인드-맵 다이어그램의 형태로 도시한다.
도 3 은 본 시스템 및 방법의 일 예에 따른 컴퓨팅 디바이스의 블록 다이어그램을 도시한다.
도 4 는 본 시스템 및 방법의 일 예에 따른 핸드라이팅 인식을 위한 시스템의 블록도를 도시한다.
도 5 는 본 시스템 및 방법의 일 예에 따른, 도 4 의 핸드라이팅 인식 시스템의 상세를 나타내는 블록도를 도시한다.
도 6 은 도 2 의 디지털 잉크 마인드-맵 다이어그램으로부터의 식자로서의 일 예시적인 식자 잉크 마인드-맵 다이어그램을 나타낸다.
도 7 은 도 2 의 디지털 잉크 마인드-맵 다이어그램으로부터의 식자로서의 일 예시적인 식자 잉크 마인드-맵 다이어그램을 나타낸다.
도 8 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 9a 는 예시적인 식자 잉크를 위에 가지고 디지털 잉크 치수 정보를 갖는 도 8 의 디지털 잉크를 나타낸다.
도 9b 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보 및 디지털 잉크 치수 정보를 가지고 예시적인 식자 잉크를 위에 갖는 도 8 의 디지털 잉크를 나타낸다.
도 10 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 도 8 의 디지털 잉크와 관련하여 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 추가의 핸드라이팅된 입력을 도시한다.
도 11a 및 도 11b 는 예시적인 식자 잉크를 위에 가지고 디지털 잉크 치수 정보를 갖는 도 10 의 디지털 잉크를 나타낸다.
도 11c 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 10 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 12a 는 식자 잉크에서의 다수의 상이한 형상들을 나타낸다.
도 12b 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 12a 의 형상들을 나타낸다.
도 12c 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 12a 의 형상들을 나타낸다.
도 13 은 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 디지털 잉크에서의 불규칙한 형상을 나타낸다.
도 14 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 15a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크의 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 15b 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 15c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 16 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 17a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크의 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 17b 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 17c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 18 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 19a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈들에서 입력 식자의 다중-라인 텍스트 및 디지털 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19b 는 도 19a 의 높이-기반 폰트 사이즈들 중 하나에서 입력 식자의 다중-라인 텍스트 및 식자 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크의 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19d 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반, 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 20a 는 리사이징 방향들을 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상의 포함된 텍스트를 갖는 식자 잉크 셀로서 렌더링된 예시적인 식자 잉크 콘텐츠를 도시한다.
도 20b 는 본 시스템 및 방법의 일 예에 따라 리사이징된 도 20a 의 식자 잉크 셀을 도시한다.
도 21 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 포함된 텍스트를 갖는 디지털 잉크 컨테이너로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 22a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈들에서 입력 식자의 다중-라인 텍스트 및 디지털 잉크 치수 정보를 갖는 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 22b 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크의 치수 정보를 갖는 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 22c 는 본 시스템 및 방법의 일 예에 따라 정규화된 도 22a 의 높이-기반 폰트 사이즈들 중 하나에서 입력 식자의 다중-라인 텍스트를 갖는 컴퓨팅 디바이스의 입력 인터페이스 상에서의 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 23 은 본 시스템 및 방법의 일 예에 따른 로컬 폰트 사이즈 계산의 플로우 차트를 도시한다.
도 24 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 갖는 도 2 의 예시적인 디지털 잉크 마인드-맵 다이어그램을 나타낸다.
도 25 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 일부의 치수 정보, 디지털 잉크의 일부 위의 예시적인 식자 잉크 및 식자 잉크의 치수 정보를 갖는 도 2 의 예시적인 디지털 잉크 마인드-맵 다이어그램을 나타낸다.
도 1 은 예시적인 구조화된 디지털 오브젝트 콘텐츠를 컴퓨팅 디바이스의 입력 인터페이스 상에 렌더링되는 식자 잉크 마인드-맵 다이어그램의 형태로 도시한다.
도 2 는 예시적인 구조화된 디지털 잉크 오브젝트 콘텐츠를 컴퓨팅 디바이스의 입력 인터페이스 상에 렌더링되는 디지털 잉크 마인드-맵 다이어그램의 형태로 도시한다.
도 3 은 본 시스템 및 방법의 일 예에 따른 컴퓨팅 디바이스의 블록 다이어그램을 도시한다.
도 4 는 본 시스템 및 방법의 일 예에 따른 핸드라이팅 인식을 위한 시스템의 블록도를 도시한다.
도 5 는 본 시스템 및 방법의 일 예에 따른, 도 4 의 핸드라이팅 인식 시스템의 상세를 나타내는 블록도를 도시한다.
도 6 은 도 2 의 디지털 잉크 마인드-맵 다이어그램으로부터의 식자로서의 일 예시적인 식자 잉크 마인드-맵 다이어그램을 나타낸다.
도 7 은 도 2 의 디지털 잉크 마인드-맵 다이어그램으로부터의 식자로서의 일 예시적인 식자 잉크 마인드-맵 다이어그램을 나타낸다.
도 8 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 9a 는 예시적인 식자 잉크를 위에 가지고 디지털 잉크 치수 정보를 갖는 도 8 의 디지털 잉크를 나타낸다.
도 9b 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보 및 디지털 잉크 치수 정보를 가지고 예시적인 식자 잉크를 위에 갖는 도 8 의 디지털 잉크를 나타낸다.
도 10 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 도 8 의 디지털 잉크와 관련하여 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 추가의 핸드라이팅된 입력을 도시한다.
도 11a 및 도 11b 는 예시적인 식자 잉크를 위에 가지고 디지털 잉크 치수 정보를 갖는 도 10 의 디지털 잉크를 나타낸다.
도 11c 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 10 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 12a 는 식자 잉크에서의 다수의 상이한 형상들을 나타낸다.
도 12b 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 12a 의 형상들을 나타낸다.
도 12c 는 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 도 12a 의 형상들을 나타낸다.
도 13 은 본 시스템 및 방법의 일 예에 따라 결정된 식자 잉크의 치수 정보를 갖는 디지털 잉크에서의 불규칙한 형상을 나타낸다.
도 14 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 15a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크의 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 15b 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 15c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 14 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 16 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 17a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크의 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 17b 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 17c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 텍스트 및 식자 잉크 치수 정보를 갖는 도 16 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 18 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 19a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈들에서 입력 식자의 다중-라인 텍스트 및 디지털 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19b 는 도 19a 의 높이-기반 폰트 사이즈들 중 하나에서 입력 식자의 다중-라인 텍스트 및 식자 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19c 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크의 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 19d 는 본 시스템 및 방법의 일 예에 따라 결정된 면적-기반, 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크 치수 정보를 갖는 도 18 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 20a 는 리사이징 방향들을 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상의 포함된 텍스트를 갖는 식자 잉크 셀로서 렌더링된 예시적인 식자 잉크 콘텐츠를 도시한다.
도 20b 는 본 시스템 및 방법의 일 예에 따라 리사이징된 도 20a 의 식자 잉크 셀을 도시한다.
도 21 은 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 나타내는 컴퓨팅 디바이스의 입력 인터페이스 상에서 포함된 텍스트를 갖는 디지털 잉크 컨테이너로서 렌더링된 예시적인 핸드라이팅된 입력을 도시한다.
도 22a 는 본 시스템 및 방법의 일 예에 따라 결정된 높이-기반 폰트 사이즈들에서 입력 식자의 다중-라인 텍스트 및 디지털 잉크 치수 정보를 갖는 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 22b 는 본 시스템 및 방법의 일 예에 따라 결정된 컨테이너-기반 폰트 사이즈에서 입력 식자의 다중-라인 텍스트 및 식자 잉크의 치수 정보를 갖는 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 22c 는 본 시스템 및 방법의 일 예에 따라 정규화된 도 22a 의 높이-기반 폰트 사이즈들 중 하나에서 입력 식자의 다중-라인 텍스트를 갖는 컴퓨팅 디바이스의 입력 인터페이스 상에서의 도 21 의 디지털 잉크로부터의 식자로서의 예시적인 식자 잉크를 나타낸다.
도 23 은 본 시스템 및 방법의 일 예에 따른 로컬 폰트 사이즈 계산의 플로우 차트를 도시한다.
도 24 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 치수 정보를 갖는 도 2 의 예시적인 디지털 잉크 마인드-맵 다이어그램을 나타낸다.
도 25 는 본 시스템 및 방법의 일 예에 따라 결정된 디지털 잉크의 일부의 치수 정보, 디지털 잉크의 일부 위의 예시적인 식자 잉크 및 식자 잉크의 치수 정보를 갖는 도 2 의 예시적인 디지털 잉크 마인드-맵 다이어그램을 나타낸다.
이하 상세한 설명에서, 다양한 특정 세부사항들이 관련된 교시들의 완전한 이해를 제공하기 위해 예들의 방식으로 전개된다. 그러나, 본 교시들은 그러한 세부사항들 없이 실시될 수도 있음이 당업자에게 명백할 것이다. 다른 경우들에 있어서, 널리 공지된 방법들, 절차들, 컴포넌트들, 및/또는 회로부는 본 교시들의 양태들을 불필요하게 모호하게 하는 것을 회피하기 위해 상세없이 상대적으로 하이-레벨로 설명되었다.
상, 하, 위, 아래, 최하, 최고, 수평, 수직 등과 같은 방향성 피처들에 대한 참조 및 그 논의는, 인식될 입력이 행해지는 입력 인터페이스에 적용된 바와 같은 직교 좌표계에 대하여 행해진다. 추가로, 좌 및 우와 같은 용어들은 도면들을 보았을 때 독자의 기준 프레임에 관하여 이루어진다. 더욱이, 본 설명에서의 용어 '텍스트 (text)' 의 사용은 임의의 기록 언어에서의 모든 알파뉴메릭 문자들 및 그 스트링들 및 기록된 텍스트에서 사용된 평범한 비-알파뉴메릭 문자들, 예를 들어, 심볼들을 포괄하는 것으로서 이해된다. 더욱이, 본 설명에서의 용어 '비-텍스트 (non-text)' 는 자유형태의 핸드라이팅되거나 핸드드로잉된 콘텐츠 및 렌더링된 텍스트 및 이미지 데이터 뿐만 아니라, 비-알파뉴메릭 문자들 및 그 스트링들 그리고 비-텍스트 컨텍스트들에서 사용되는 알파뉴메릭 문자들 및 그 스트링들을 포괄하는 것으로서 이해된다. 또한, 이들 도면들에 도시된 예들은 좌-우로 쓰여진 언어 컨텍스트에 있으며, 따라서, 포지션들에 대한 임의의 참조는 상이한 방향성 포맷들을 갖는 쓰여진 언어들에 대해 적응될 수 있다.
본 명세서에서 설명된 다양한 기술들은 일반적으로, 휴대용 및 비-휴대용 컴퓨팅 디바이스들 상의 핸드드로잉되거나 핸드라이팅된 콘텐츠를, 콘텐츠의 입력된 스타일을 유지하면서 그 콘텐츠의 신뢰할만한 식자되거나 미화된 버전으로의 변환을 허용하는 방식으로 캡처하는 것, 프로세싱하는 것 및 관리하는 것과 관련된다. 본 명세서에서 설명된 시스템들 및 방법들은 컴퓨팅 디바이스에 접속된 또는 컴퓨팅 디바이스의 터치 감지 스크린과 같은 입력 인터페이스를 통해 또는 컴퓨팅 디바이스에 접속된 디지털 펜 또는 마우스와 같은 입력 디바이스를 통하거나 위치 검출 시스템에 의해 모니터링된 물리적 또는 가상 표면을 통해, 컴퓨팅 디바이스로 입력된 사용자들의 자연스런 라이팅 (writing) 및 드로잉 (drawing) 스타일들의 인식을 활용할 수도 있다.
다양한 예들이 소위 온라인 인식 기법들을 이용하여 핸드라이팅 입력의 인식에 대하여 설명되지만, 애플리케이션은, 디지털 잉크보다는 이미지들이 인식되는 오프라인 인식과 같은 인식을 위한 다른 형태들의 입력에 대해서도 가능함이 이해된다. 용어들 핸드드로잉 및 핸드라이팅은 디지털 또는 디지털 접속된 매체 상에 직접 손을 사용하는 것을 통해 또는 핸드-헬드 스타일러스와 같은 입력 툴을 통해, 사용자들에 의한 디지털 콘텐츠의 생성을 정의하기 위해 본원에서 상호교환가능하게 사용된다. 용어 "핸드 (hand)" 는 입력 기술들에 대한 간결한 설명을 제공하기 위해 본원에서 사용되지만, 유사한 입력에 대한 사용자의 신체의 다른 부분들, 예컨대 발, 입 및 눈의 사용이 상기 정의에 포함된다. 용어 "디지털 (digital)" 은 종이 및 종이 잉크와 같은 아날로그 미디어 및 콘텐츠와 차별화하여 컴퓨팅 미디어 및 콘텐츠를 정의하기 위해 본 명세서에서 사용된다. 이 용어는 임의의 적용가능한 디바이스들에 의해 사용되는, 예컨대 이진의, 컴퓨팅 프로세싱의 방식을 정의하도록 의도되지 않고, "전자적 (electronic)" 또는 유사한 용어들과 상호교환될 수도 있다.
도 1 은 식자 잉크 텍스트 엘리먼트들 및 식자 잉크 비-텍스트 엘리먼트들을 갖는 구조화된 디지털 오브젝트 콘텐츠의 일 예로서 (계층적) 다이어그램 엘리먼트들을 갖는 마인드-맵 다이어그램 (100) 을 나타낸다. 다이어그램 (100) 은 노드들에서 분포된 다수의 엘리먼트들을 갖는다: (제 1 레벨) 중앙 또는 메인 노드 (102) (노드 "1"), 다수의 (제 2 레벨) 분기된 노드들 (104) (노드 "2") 및 다수의 (제 3 레벨) 분기된 또는 리스트 노드들 (106) (노드 "3"). 다이어그램 (100) 은 추가로, 텍스트, 예컨대, 단어들 "MY MIND-MAP" 을 포함하는 타이틀 엘리먼트 또는 노드 (108) (노드 "0") 를 갖는다.
(제 1 레벨) 노드 (102) 는, 형상 (102a) 이 컨테이너이도록, 텍스트 (102b), 예컨대, 단어들 또는 어구 "Main Concept" 를 포함하는 형상 (102a), 예컨대, 타원형을 포함한다.
형상들이 컨테이너들이도록, 각각, 제 1 (제 2 레벨) 노드 (104) 는 텍스트 (104b), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Idea 1" 를 포함하는 형상 (104a), 예컨대, 타원형을 포함하고, 제 2 (제 2 레벨) 노드 (104) 는 텍스트 (104d), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Idea 2" 를 포함하는 형상 (104c), 예컨대, 타원형을 포함하며, 제 3 (제 2 레벨) 노드 (104) 는 텍스트 (104f), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Idea 3" 를 포함하는 형상 (104e), 예컨대, 타원형을 포함하고, 제 4 (제 2 레벨) 노드 (104) 는 텍스트 (104h), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Idea 4" 를 포함하는 형상 (104g), 예컨대, 타원형을 포함한다.
제 1 (제 3 레벨) 노드 (106) 는 텍스트 (106a), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Item 1" 를 포함하고, 제 2 (제 3 레벨) 노드 (106) 는 텍스트 (106b), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Item 2" 를 포함하며, 제 3 (제 3 레벨) 노드 (106) 는 텍스트 (106c), 예컨대, 단어들 및 숫자들의 조합 또는 어구 "Item 3" 를 포함하며, 이들은 함께 리스트를 형성한다.
추가로, 제 2 레벨 컨테이너들 (104) 은 각각의 커넥터들 (110) 로 제 1 레벨 컨테이너 (102) 에 각각 접속되고, 제 3 레벨 리스트 엘리먼트들 (106) 은 각각의 커넥터들 (112) 로 제 2 레벨 컨테이너들 (104) 중 하나에 각각 접속된다.
예시적인 마인드-맵 다이어그램 (100) 에 관해 계층적 구조의 의미는, 제 2 레벨 엘리먼트들이 제 1 레벨 엘리먼트에 종속하고, 예컨대, "ideas" 는 "main concept" 로부터 형성되는 것들이고, 제 3 레벨 엘리먼트들이 제 2 레벨 엘리먼트들 중 하나에 종속한다는, 예컨대, "items” 은 “ideas” 중 하나에 관련된다는 것이다. 다이어그램 (100) 은 예를 들어 컴퓨팅 디바이스의 스크린 상에, 식자 잉크로 렌더링되거나 포맷팅된다. 즉, 텍스트 (예컨대, 텍스트 문자들 및 숫자들) 및 비-텍스트 (예컨대, 타원형들 및 라인들) 의 다이어그램 엘리먼트들은 디지털 오브젝트들로서 렌더링된다. 이에 따라, 계층적 관계들의 시각화는 이들 엘리먼트들에 대해 상이한 디지털 오브젝트 사이즈들을 이용함으로써 보조된다.
볼 수 있는 바와 같이, 제 1 레벨 노드 (102) 의 형상 (102a) 의 사이즈 및 텍스트 (102b) 의 텍스트 사이즈는 제 2 레벨 노드 (104) 의 형상들 (104a, 104c, 104e 및 104g) 텍스트 (104b, 104d, 104f 및 104h) 의 사이즈들보다 각각 더 크다. 제 2 레벨 노드들 (104) 의 형상들 및 텍스트는 각각 동일한 형상 사이즈 (및 치수들) 및 텍스트 사이즈를 갖는다. 제 3 레벨 노드들 (106) 의 텍스트 (106a, 106b 및 106c) 의 텍스트 사이즈는 서로 동일하고 제 2 레벨 노드들 (104) 의 텍스트 (104b, 104d, 104f 및 104h) 의 사이즈와 동일하다. 추가로, 타이틀 (108) 의 텍스트의 텍스트 사이즈는 모두 중에서 가장 크다. 이러한 방식으로, 다이어그램 (100) 의 상이한 종속적 레벨들이 쉽게 그리고 즉각적으로 시각적으로 식별된다. 이러한 시각적 레벨링을 제공하기 위해, 라인 및 텍스트 컬러, 라인 두께, 컨테이너 음영, 텍스트 하이라이팅, 애니메이션, 데코레이션 등과 같은 다른 포맷팅 및 스타일링이 또한 가능하다.
도 2 는 구조화된 디지털 잉크 오브젝트 콘텐츠의 일 예로서 계층적 다이어그램 엘리먼트들을 갖는 일 예시적인 마인드-맵 다이어그램 (200) 을 나타낸다. 즉, 다이어그램 (200) 은 다음과 같이 예시적인 방식으로 입력의 도식적 관계들을 해석하기 위해 프로세싱된 핸드라이팅 인식인 컴퓨팅 디바이스에 대한 핸드라이팅 입력에 기초하여 디지털 잉크 텍스트 엘리먼트들 및 디지털 잉크 비-텍스트 엘리먼트들을 갖는 디지털 잉크에서 렌더링된다.
도 3 은 예시적인 컴퓨팅 디바이스 (300) 의 블록도를 도시한다. 컴퓨팅 디바이스는 컴퓨터 데스크탑, 랩탑 컴퓨터, 태블릿 컴퓨터, 하이브리드 컴퓨터들 (2-인-1 들), e-북 리더, 모바일 폰, 스마트폰, 웨어러블 컴퓨터, 디지털 워치, 인터랙티브 화이트보드, 글로벌 포지셔닝 시스템 (GPS) 유닛, 기업용 디지털 보조기 (EDA), 개인용 디지털 보조기 (PDA), 게임 콘솔 등일 수도 있다. 컴퓨팅 디바이스 (300) 는 메모리 및 입력 및/또는 출력 (I/O) 디바이스들의 일부 형태로 적어도 하나의 프로세싱 엘리먼트의 컴포넌트들을 포함한다. 컴포넌트들은 커넥터들, 라인들, 버스들, 케이블들, 버퍼들, 전자기 링크들, 네트워크들, 모뎀들, 트랜스듀서들, IR 포트들, 안테나들, 또는 당업자에게 공지된 바와 같은 다른 것들과 같은 입력들 및 출력들을 통해 서로 통신한다.
컴퓨팅 디바이스 (300) 의 도시된 예는 컴퓨팅 디바이스로부터 이미지들, 텍스트, 및 비디오와 같은 데이터를 출력하기 위한 적어도 하나의 디스플레이 (302) 를 갖는다. 디스플레이 (302) 는 LCD, 플라즈마, LED, iOLED, CRT, 또는 당업자에게 공지된 바와 같은 터치 감지식이거나 터치 감지식이 아닌 임의의 다른 적절한 기술을 사용할 수도 있다. 디스플레이 (302) 의 적어도 일부는 적어도 하나의 입력 표면 (304) 과 병치된다. 입력 표면 (304) 은 저항성, 표면 탄성파, 용량성, 적외선 그리드, 적외선 아크릴 프로젝션, 광학 이미징, 분산 신호 기술, 음향 펄스 인식, 또는 당업자에게 공지된 바와 같은 임의의 다른 적절한 기술과 같은 기술을 채용하여 사용자 입력을 수신할 수도 있다. 입력 표면 (304) 은 그 경계들을 명확히 식별하는 영구적인 또는 비디오-생성된 경계에 의해 바운딩될 수도 있다. 온보드 디스플레이 대신에 또는 그에 부가하여, 컴퓨팅 디바이스 (300) 는 투영된 디스플레이 능력을 가질 수도 있다.
컴퓨팅 디바이스 (300) 는 로컬 인터페이스를 통해 통신가능하게 커플링되는 하나 이상의 추가의 I/O 디바이스들 (또는 주변기기들) 을 포함할 수도 있다. 추가의 I/O 디바이스들은 입력 디바이스들, 예컨대, 키보드, 마우스, 스캐너, 마이크로폰, 터치패드들, 바코드 리더들, 레이저 리더들, 무선 주파수 디바이스 리더들, 또는 당업자에게 공지된 임의의 다른 적절한 기술을 포함할 수도 있다. 추가로, I/O 디바이스들은 출력 디바이스들, 예컨대, 프린터, 바코드 프린터들, 또는 당업자에게 공지된 임의의 다른 적절한 기술을 포함할 수도 있다. 더욱이, I/O 디바이스들은 입력들 및 출력들 양자 모두를 통신하는 통신 디바이스들, 예컨대, 변조기/복조기 (모뎀; 다른 디바이스, 시스템, 또는 네트워크로의 액세스용), 무선 주파수 (RF) 또는 다른 트랜시버, 전화 인터페이스, 브릿지, 라우터, 또는 당업자에게 공지된 임의의 다른 적절한 기술을 포함할 수도 있다. 로컬 인터페이스는 통신들을 인에이블하기 위한 추가의 엘리먼트들, 예컨대 제어기들, 버퍼들 (캐시들), 드라이버들, 리피터들, 및 수신기들을 가질 수도 있고, 이들은 간략함을 위해 생략되지만, 당업자에게 알려져 있다. 추가로, 로컬 인터페이스는 다른 컴퓨터 컴포넌트들 중에서 적절한 통신들을 인에이블하기 위해 어드레스, 제어, 및/또는 데이터 접속들을 포함할 수도 있다.
컴퓨팅 디바이스 (300) 는 또한, 소프트웨어, 특히 메모리 (308) 에 저장된 소프트웨어를 실행하기 위한 하드웨어 디바이스인 프로세서 (306) 를 포함한다. 프로세서는 임의의 맞춤 제작되거나 상업적으로 입수가능한 범용 프로세서, 중앙 프로세싱 유닛 (CPU), 반도체 기반 마이크로 프로세서 (마이크로칩 또는 칩셋 형태) 를 포함하는 상업적으로 입수가능한 마이크로프로세서들, 마이크로 제어기, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 별개의 하드웨어 컴포넌트들, 상태 머신, 또는 당업자에게 공지된 소프트웨어 명령들을 실행하기 위해 설계된 이들의 임의의 조합일 수 있다.
메모리 (308) 는 휘발성 메모리 엘리먼트들 (예컨대, 랜덤 액세스 메모리 (DRAM, SRAM, 또는 SDRAM 과 같은 RAM)) 및 비휘발성 메모리 엘리먼트들 (예컨대, ROM, EPROM, 플래시 PROM, EEPROM, 하드 드라이브, 자기 또는 광학 테이프, 메모리 레지스터들, CD-ROM, WORM, DVD, RAID (redundant array of inexpensive disks), 다른 DASD (direct access storage device), 또는 임의의 다른 자기, 저항 또는 상변화 비휘발성 메모리) 중 임의의 하나 또는 그 조합을 포함할 수 있다. 더욱이, 메모리 (308) 는 전자의, 자기의, 광학의, 및/또는 다른 타입들의 저장 매체들을 통합할 수도 있다. 메모리 (308) 는 다양한 컴포넌트들이 서로 원격으로 위치되지만 프로세서 (306) 에 의해 또한 액세스될 수 있는 분산된 아키텍처를 가질 수 있다. 추가로, 메모리 (308) 는, 컴퓨팅 디바이스 (300) 에 의해 원격으로 액세스가능한 서버 또는 클라우드 기반 시스템에서와 같이 디바이스로부터 원격일 수도 있다. 메모리 (308) 는 프로세서 (306) 에 커플링되어, 프로세서 (306) 가 메모리 (308) 로부터 정보를 판독하고, 메모리 (108) 에 정보를 기록할 수 있다. 대안에서, 메모리 (308) 는 프로세서 (306) 에 통합될 수도 있다. 다른 예에서, 프로세서 (306) 및 메모리 (308) 는 양자가 단일 ASIC 또는 다른 집적 회로에 상주할 수도 있다.
메모리 (308) 에서의 소프트웨어는 오퍼레이팅 시스템 (310), 컴퓨터 판독가능 프로그램 코드를 안에 포함한 비일시적 컴퓨터 판독가능 매체의 형태로 잉크 관리 시스템 (312) 및 핸드라이팅 인식 (HWR) 시스템 (314) 을 포함한다. 잉크 관리 시스템 (312) 및 HWR 시스템 (314) 은 하나 이상의 별도의 컴퓨터 프로그램들을 각각 포함할 수도 있다. 이들 각각은 논리 함수들을 구현하기 위한 실행가능 명령들의 순서화된 리스팅을 갖는다. 오퍼레이팅 시스템 (310) 은 잉크 관리기 (312) (및 HWR 시스템 (314)) 의 실행을 제어한다. 오퍼레이팅 시스템 (310) 은 WEBOS, WINDOWS®, MAC 및 IPHONE OS®, LINUX, 및 ANDROID 와 같은 임의의 독점적 오퍼레이팅 시스템 또는 상업적으로 또는 자유롭게 입수가능한 오퍼레이팅 시스템일 수도 있다. 다른 오퍼레이팅 시스템들이 또한 활용될 수도 있음이 이해된다. 대안적으로, 본 시스템 및 방법의 잉크 관리 시스템 (312) 은 오퍼레이팅 시스템을 사용하지 않고 제공 될 수도 있다.
잉크 관리기 시스템 (312) 은 사용자들에 의한 핸드드로잉된 형상들 및 핸드라이팅된 텍스트 입력의 검출, 관리 및 처리에 관련된 하나 이상의 프로세싱 엘리먼트들을 포함한다. 소프트웨어는 또한 핸드라이팅 인식, 다른 기능들, 또는 이들 양자 모두와 관련된 하나 이상의 다른 애플리케이션들을 포함할 수도 있다. 다른 애플리케이션들의 일부 예들은 텍스트 편집기, 전화 다이얼러, 연락처 디렉토리, 인스턴트 메세징 설비, 컴퓨터 보조식 설계 (CAD) 프로그램, 이메일 프로그램, 워드 프로세싱 프로그램, 웹 브라우저, 및 카메라를 포함한다. 잉크 관리 시스템 (312) 및 다른 애플리케이션들은 제조시 컴퓨팅 디바이스 (300) 가 제공받은 프로그램(들)을 포함하고, 제조 이후에 컴퓨팅 디바이스 (300) 에 업로드 또는 다운로드된 프로그램들을 더 포함할 수도 있다.
지원 및 준수 능력들을 갖는 HWR 시스템 (314) 은 소스 프로그램, 실행가능 프로그램 (오브젝트 코드), 스크립트, 애플리케이션, 또는 수행될 명령들의 셋트를 갖는 임의의 다른 엔터티일 수도 있다. 소스 프로그램일 경우, 그 프로그램은, 오퍼레이팅 시스템과 관련하여 적절히 동작하도록, 메모리 내에 포함될 수도 있거나 포함되지 않을 수도 있는 컴파일러, 어셈블러, 인터프리터 등을 통해 번역될 필요가 있다. 더욱이, 지원 및 준수 능력들을 갖는 핸드라이팅 인식 시스템은 (a) 데이터 및 방법들의 클래스들을 갖는 오브젝트 지향 프로그래밍 언어; (b) 예를 들어 C, C++, Pascal, Basic, Fortran, Cobol, Perl, Java, Objective C, Swift 및 Ada 이지만 이에 한정되지 않는 루틴들, 서브루틴들, 및/또는 함수들을 갖는 프로시저 프로그래밍 언어; 또는 (c) Hope, Rex, Common Lisp, Scheme, Clojure, Racket, Erlang, OCaml, Haskell, Prolog, 및 F# 이지만 이에 한정되지 않는 함수형 프로그래밍 언어들로서 쓰여질 수 있다.
대안적으로, HWR 시스템 (314) 은 서버 또는 클라우드 기반 시스템과 같이 디바이스로부터 원격인 핸드라이팅 인식 시스템과의 통신을 위한 방법 또는 시스템일 수도 있지만, 컴퓨팅 디바이스 (300) 의 전술된 통신 I/O 디바이스들을 사용하여 통신 링크들을 통해 컴퓨팅 디바이스 (300) 에 의해 원격으로 액세스가능하다. 추가로, 잉크 관리 시스템 (312) 및 HWR 시스템 (314) 은 함께 동작하거나 단일 시스템 또는 애플리케이션으로서 결합될 수도 있다. 또한, 잉크 관리 시스템 (312) 및/또는 HWR 시스템 (314) 은 오퍼레이팅 시스템 (310) 내에 통합될 수도 있다.
입력 표면 (304) 상으로 또는 입력 인터페이스 (304) 를 통해 입력된 스트로크들은 프로세서 (306) 에 의해 디지털 잉크로서 프로세싱된다. 사용자는 손가락, 또는 입력 인터페이스와의 사용을 위해 적합한 펜 또는 스타일러스와 같은 일부 기구로 스트로크를 입력할 수도 있다. 사용자는 또한, 입력 인터페이스 (304) 부근에서의 모션을 감지하거나 이미징하는 기술이 사용되고 있으면, 입력 인터페이스 (304) 위에서 제스처를 실행함으로써, 또는 마우스 또는 조이스틱과 같이 컴퓨팅 디바이스 (300) 의 주변기기 디바이스로, 또는 수동 평면 표면의 이미지 프로세싱과 같은 투영된 인터페이스를 사용하여 스트로크를 입력하여 스트로크 및 제스처 신호들을 결정할 수도 있다.
스트로크는, 적어도 스트로크 개시 위치, 스트로크 종료 위치, 및 스트로크 개시 및 종료 위치들을 연결하는 경로에 의해 특징지어진다. 경로를 따르는 다수의 샘플 포인트들에서의 타이밍, 압력, 각도와 같은 추가 정보가 캡처되어 스트로크들의 더 자세한 내용을 제공할 수도 있다. 상이한 사용자들이 약간의 변형들로 동일한 오브젝트, 예를 들어, 글자, 형상, 심볼을 자연스럽게 쓸 수도 있기 때문에, HWR 시스템은, 각각의 오브젝트가 입력되면서 정확한 또는 의도된 오브젝트로서 인식될 수도 있는 다양한 방식들을 수용한다.
도 4 는 HWR 시스템 (314) 의 일 예의, 그 로컬 (즉, 디바이스 (300) 상에 로딩된) 형태 또는 원격 (즉, 디바이스 (300) 에 의해 원격으로 액세스가능한) 형태로의 개략도이다. HWR 시스템 (314) 은 프리프로세싱 (316), 인식 (318) 및 출력 (320) 과 같은 스테이지들을 포함한다. 프리프로세싱 스테이지 (316) 는 디지털 잉크를 프로세싱하여 더 큰 정확도를 달성하고, 인식 스테이지 (318) 동안 프로세싱 시간을 감소한다. 이러한 프리프로세싱은, 입력을 평활화하기 위해 B-스플라인 근사와 같은 방법들 및/또는 사이즈 정규화를 적용함으로써, 스트로크 개시 및 종료 위치들을 연결하는 경로를 정규화하는 것을 포함할 수도 있다. 그 후, 프리프로세싱된 스트로크들은 스트로크들을 프로세싱하는 인식 스테이지 (318) 로 전달되어, 이에 의해 형성된 오브젝트들을 인식한다. 그 후, 인식된 오브젝트들은, 일반적으로 핸드라이팅된 입력의 식자 잉크 버전 또는 디지털 잉크로서 디스플레이 (302) 에 출력된다 (320).
인식 스테이지 (318) 는 상이한 프로세싱 엘리먼트들 또는 엑스퍼트들 (experts) 을 포함할 수도 있다. 도 5 는 인식 스테이지 (318) 의 개략적인 상세를 도시한 도 4 의 예의 개략도이다. 출력 (320) 을 생성하기 위해 동적 프로그래밍을 통해 협력하는 3개의 엑스퍼트들, 즉, 세그먼테이션 엑스퍼트 (322), 인식 엑스퍼트 (324), 및 언어 엑스퍼트 (326) 가 예시된다.
세그먼테이션 엑스퍼트 (322) 는 표현들, 예를 들어, 단어들, 수학식들, 또는 형상들의 그룹들을 형성하기 위하여, 입력 스트로크들을 개별 엘리먼트 가설들, 예를 들어, 알파뉴메릭 문자들 및 수학 연산자들, 텍스트 문자들, 개별 형상들, 또는 하위 표현으로 세그먼트화하기 위한 상이한 방식들을 정의한다. 예를 들어, 세그먼테이션 엑스퍼트 (322) 는, 각각의 노드가 적어도 하나의 엘리먼트 가설에 대응하고 그리고 엘리먼트들 간의 인접성 제약들이 노드 연결들에 의해 핸들링되는 세그먼테이션 그래프를 획득하기 위해 원래의 입력의 연속적인 스트로크들을 그룹화함으로써 엘리먼트 가설들을 형성할 수도 있다. 대안적으로, 세그먼테이션 엑스퍼트 (322) 는 텍스트, 드로잉들, 식들, 및 음악 표기와 같은 상이한 입력 타입들에 대해 별도의 엑스퍼트들을 채용할 수도 있다.
인식 엑스퍼트 (324) 는 분류기 (328) 에 의해 추출된 특징들의 분류를 제공하고, 세그먼테이션 그래프의 각 노드에 대한 확률들 또는 인식 스코어들을 갖는 엘리먼트 후보들의 리스트를 출력한다. 이러한 인식 태스크를 어드레싱하는데 사용될 수 있는 다수의 타입들의 분류기들이 존재한다, 예를 들어, 서포트 벡터 머신들, 은닉 마르코프 모델들, 또는 다층 퍼셉트론들, 딥, 컨볼루셔널 또는 회귀 뉴럴 네트워크들과 같은 뉴럴 네트워크들. 선택은 태스크에 대해 요구된 복잡도, 정확도, 및 속도에 의존한다.
언어 엑스퍼트 (326) 는 언어 모델들 (예를 들어, 문법 또는 시맨틱스) 을 사용하여 세그먼테이션 그래프에 있어서 상이한 경로들에 대한 언어적 의미를 생성한다. 그 엑스퍼트 (326) 는 언어 정보 (326) 에 따라 다른 엑스퍼트들에 의해 제안된 후보들을 체크한다. 언어 정보 (330) 는 어휘, 정규 표현 등을 포함할 수 있고, 언어 모델을 실행하기 위해 언어 엑스퍼트 (326) 에 의해 사용되는 모든 정적 데이터에 대한 스토리지이다. 언어 모델은 주어진 언어에 대한 통계 정보에 의존할 수 있다. 언어 정보 (330) 는 인식 및 사용자 상호작용들의 결과들에 따라 적응 (adaption) 을 가지면서 또는 적응 없이 오프라인으로 계산되고, 언어 엑스퍼트 (326) 에게 제공된다. 언어 엑스퍼트 (326) 는 최상의 인식 경로를 발견하는 것을 목적으로 한다. 일 예에 있어서, 언어 엑스퍼트 (326) 는, 언어 정보 (330) 의 내용을 나타내는 최종 상태 오토마톤 (FSA) 과 같은 언어 모델을 탐색함으로써, 이를 수행한다. 어휘 제약에 부가하여, 언어 엑스퍼트 (326) 는, 얼마나 자주 엘리먼트들의 주어진 시퀀스가 명시된 언어에서 나타나는지 또는 특정 사용자에 의해 사용되는지에 대한 통계 정보 모델링을 갖는 언어 모델을 사용하여, 세그먼테이션 그래프의 주어진 경로의 해석의 언어적 가능성을 평가할 수도 있다.
도 2 의 핸드라이팅된 입력에 관해, 식자 잉크 다이어그램 (100) 과 같이, 디지털 잉크 다이어그램 (200) 은 노드들에서 분포된 다수의 엘리먼트들을 갖는다: (제 1 레벨) 중앙 또는 메인 노드 (202), 다수의 제 2 레벨 또는 분기된 노드들 (204) 및 다수의 제 3 레벨 또는 분기된 (또는 리스트) 노드들 (206), 및 타이틀 엘리먼트 또는 노드 (208). 이에 따라, HWR 시스템 (314) 은 다이어그램 (200) 의 텍스트 및 비-텍스트 엘리먼트들을 인식하고, 그들 사이의 도식적 관계들을 해석할 수도 있다. 이러한 해석은 본 출원인 및 양수인의 명칭으로 2015년 10월 10일의 우선일을 주장하면서 출원된 미국 특허 출원 제 14/955,155 호에서 기술된 바와 같이 수행될 수도 있고, 그것의 내용들은 본원에 참조에 의해 통합된다. 간결성의 완전함을 위해, 이러한 해석의 양태들은 이제 다이어그램 (200) 과 관련하여 설명된다.
예시적인 다이어그램 (200) 은 비-텍스트 및 텍스트 양자를 나타내는 다수의 스트로크들의 핸드라이팅 입력을 포함한다. 본 시스템 및 방법은 형상들 (및 다른 비-텍스트) 및 텍스트의 상이한 핸드라이팅된 오브젝트들의 입력을 자동적으로 검출하고 구별하여서, 그것들이 HWR 시스템 (314) 에 의해 적합한 인식 기법들로 프로세싱되도록 한다, 예컨대, 검출된 형상들의 스트로크들은 형상 언어 모델을 이용하여 프로세싱되고, 검출된 텍스트의 스트로크들은 텍스트 언어 모델을 이용하여 프로세싱된다. 하지만, 많은 핸드라이팅된 형상들 및 텍스트 문자들은 공통의 피처들 (예컨대, 원과 "o", 화살표 및 글자 "v") 을 공유할 수 있기 때문에, 사용자들은 사용자 인터페이스 (UI) 등을 이용하여 잘못된 판별 결정들을 정정하기 위한 능력이 제공되고, 및/또는, 이러한 혼란스러운 입력은 하나보다 많은 언어 모델을 이용하여 프로세싱되어 가장 가능성있는 결과를 제공할 수도 있음에 주목한다. HWR 시스템 (314) 의 프로세싱 스테이지 (316) 또는 스테이지들 중의 하나 이상은 렌더링된 디지털 잉크를 상이한 클래스들 또는 카테고리들, 비-텍스트 (예컨대, 형상), 텍스트 및 형상 및 텍스트의 혼합으로 분류함으로써 이러한 모호성해소를 수행하도록 구성될 수도 있다. 분류된 디지털 잉크는 그 다음에, 분류에 따라 적합한 인식 프로세싱을 위해 인식기 (318) 에 파싱된다.
예를 들어, 텍스트로서 분류된 디지털 잉크를 프로세싱할 때, 인식기 (318) 는 세그멘테이션 그래프들을 결정하기 위해 텍스트의 개별 스트로크들을 분할하기 위해 세그멘테이션 엑스퍼트 (322) 를 이용하고, 분류기 (328) 를 이용하여 그래프 노드들에 확률들을 할당하기 위해 인식 엑스퍼트 (324) 를 이용하며, 예를 들어 언어적 정보 (330) 의 텍스트-기반 어휘를 이용하여 그래프들을 통해 최선의 경로를 발견하기 위해 언어 엑스퍼트 (326) 를 이용한다. 다른 한편, 비-텍스트로서 분류된 디지털 잉크를 프로세싱할 때, 인식기 (318) 는 형상의 스트로크들을 분할하기 위해 세그멘테이션 엑스퍼트 (322) 를 이용하고, 분류기 (128) 를 이용하여 세그멘테이션 그래프들을 결정하기 위해 인식 엑스퍼트 (324) 를 이용하며, 예를 들어 언어적 정보 (330) 의 텍스트-기반 어휘를 이용하여 그래프들을 통해 최선의 경로를 발견하기 위해 언어 엑스퍼트 (326) 를 이용한다. 혼합된 콘텐츠 분류는 '정크 (junk)' 로서 처리될 수도 있고, 인식기 (318) 에 파싱될 때 인식의 낮은 가능성을 초래할 것이다.
이와 같이, 본 시스템 및 방법은: 닫힌 형상들 또는 다각형들 (예컨대, 원들, 타원들, 정사각형들, 직사각형들 및 마름모꼴들) 로서, 그리고 열린 형상들 (예컨대, 다각형들의 그림들에서 결합될 수 있는 라인들) 로서, (예컨대, 연관된 커넥터들 또는 텍스트 없이) 단독으로 핸드드로잉된 형상들; 하나 이상의 기존의 비-텍스트 및/또는 텍스트 엘리먼트들을 둘러싸는 (예컨대, 윤곽 또는 컨테이너를 형성하는), 컨테이너들을 형성하는, 그리고 다른 비-텍스트 및 텍스트 엘리먼트들 사이의 커넥터들을 형성하는, 핸드드로잉된 형상들; 기존의 형상들 내의 (예컨대, 컨테이너 내의), 그리고 다른 엘리먼트들 부근의, (예컨대, 윤곽 또는 컨테이너 없는) 단독으로 핸드라이팅된 텍스트; 단일 라인의 텍스트 (하나 또는 수개의 단어들) 또는 (캐리지 리턴, 넘버링된 리스트들, 주제어들 등을 가지거나 가지지 않는) 다수 라인들의 텍스트를 포함하는 텍스트 엘리먼트들을 식별할 수도 있다. 다이어그램 (200) 에 관해, 다양한 비-텍스트 및 텍스트 엘리먼트들은 모호성해소 결과들에 기초하여 다음과 같이 인식된다.
(제 1 레벨) 노드 (202) 는 비-텍스트로서 검출되고 타원형 또는 타원으로서 인식된 단일의 연속적인 스트로크로 핸드드로잉된 형상 (202a), 및 텍스트로서 검출되고 단어들 또는 어구 "Main Concept" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (202b) 를 포함한다. 추가로, 인식된 텍스트 (202b) 가 인식된 형상 (202a) 에 의해 둘러싸이므로, 형상 (202a) 은 컨테이너로서 검출된다.
(제 1 레벨) 노드 (204) 는 비-텍스트로서 검출되고 타원형 또는 타원으로서 인식된 단일의 연속적인 스트로크로 핸드드로잉된 형상 (204a), 및 텍스트로서 검출되고 단어들 또는 어구 "Idea 1" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (204b) 를 포함한다. 추가로, 인식된 텍스트 (204b) 가 인식된 형상 (204a) 에 의해 둘러싸이므로, 형상 (204a) 은 컨테이너로서 검출된다.
(제 2 레벨) 노드 (204) 는 비-텍스트로서 검출되고 타원형 또는 타원으로서 인식된 단일의 연속적인 스트로크로 핸드드로잉된 형상 (204c), 및 텍스트로서 검출되고 단어들 또는 어구 "Idea 2" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (204d) 를 포함한다. 추가로, 인식된 텍스트 (204d) 가 인식된 형상 (204c) 에 의해 둘러싸이므로, 형상 (204c) 은 컨테이너로서 검출된다.
(제 3 레벨) 노드 (204) 는 비-텍스트로서 검출되고 타원형 또는 타원으로서 인식된 단일의 연속적인 스트로크로 핸드드로잉된 형상 (204e), 및 텍스트로서 검출되고 단어들 또는 어구 "Idea 3" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (204f) 를 포함한다. 추가로, 인식된 텍스트 (204f) 가 인식된 형상 (204e) 에 의해 둘러싸이므로, 형상 (204e) 은 컨테이너로서 검출된다.
(제 4 레벨) 노드 (204) 는 비-텍스트로서 검출되고 타원형 또는 타원으로서 인식된 단일의 연속적인 스트로크로 핸드드로잉된 형상 (204g), 및 텍스트로서 검출되고 단어들 또는 어구 "Idea 4" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (204h) 를 포함한다. 추가로, 인식된 텍스트 (204h) 가 인식된 형상 (204g) 에 의해 둘러싸이므로, 형상 (204g) 은 컨테이너로서 검출된다.
제 1 (제 3 레벨) 노드 (206) 는 텍스트로서 검출되고 단어들 및 숫자들의 조합 또는 어구 "Item 1" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (206a) 를 포함한다. 제 2 (제 3 레벨) 노드 (206) 는 텍스트로서 검출되고 단어들 및 숫자들의 조합 또는 어구 "Item 2" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (206b) 를 포함한다. 제 3 (제 3 레벨) 노드 (206) 는 텍스트로서 검출되고 단어들 및 숫자들의 조합 또는 어구 "Item 3" 로서 인식된 다수의 스트로크들로 핸드라이팅된 텍스트 (206c) 를 포함한다. 추가로, 인식된 텍스트 (206a, 206b 및 206c) 가 인접하는 수평 라인들 상에서 제공되므로, 텍스트 (206a, 206b 및 206c) 를 포함하는 '텍스트 블록' 은 리스트로서 검출될 수도 있다.
추가로, 제 2 레벨 컨테이너들 (204) 및 제 1 레벨 컨테이너 (202) 사이에, 비-텍스트로서 검출되고 라인들로서 인식된 단일의 연속적인 스트로크들로 핸드드로잉된 라인들 (210) 이 존재한다. 이에 따라, 라인들 (210) 은 제 1 및 제 2 레벨 컨테이너 (202 및 204) 의 커넥터들로서 검출될 수도 있다. 추가로, 제 3 레벨 리스트 엘리먼트들 (206) 의 각각과 제 1 (제 2 레벨) 컨테이너 (204) 사이에, 비-텍스트로서 검출되고 라인들로서 인식된 단일의 연속적인 스트로크들로 핸드드로잉된 라인들 (212) 이 존재한다. 이에 따라, 라인들 (212) 은 제 2 레벨 컨테이너 (204) 및 제 3 레벨 리스트 엘리먼트들 (206) 의 커넥터들로서 검출될 수도 있다.
또 추가로, 타이틀 엘리먼트 (208) 는 텍스트로서 검출되고 단어들 "MY MIND-MAP” 로서 인식된, 다수의 스트로크들로 핸드라이팅된 텍스트를 포함한다.
핸드라이팅된 다이어그램 (200) 의 이러한 인식 및 해석은 참조에 의해 상기 통합된 미국 특허 출원 제 14/955,155 호에서 기술된 바와 같이, 디지털 잉크 다이어그램을 편집하기 위해 디지털 잉크와 직접 상호작용하기 위한 능력을 포함하는 많은 혜택들을 제공한다. 본 시스템 및 방법에서, 추가적인 혜택은, 다이어그램 생성자의 의도를 포착하고 존중하는 스타일링을 갖는, 다이어그램, 및 다른 텍스트 및 비-텍스트 포함 콘텐츠의 식자 또는 문서 버전을 제공하도록 인식된 그리고 해석된 다이어그램의 식자 변환에 있다.
배경에서 기술된 바와 같이, 식자는 몇가지 명식들로 달성될 수도 있다. 하나의 예에서, 형상들에 대해, 디지털 잉크 형상의 사이즈는 식자 잉크 형상을 정의하기 위해 사용될 수도 있고, 텍스트에 대해, 식자 잉크 텍스트에 대한 단일의 또는 '보통의' 폰트 사이즈는, UI 등과의 사용자 상호작용 등에 의해 미리결정된 및/또는 설정가능한 방식으로 정의되는 바와 같이 사용될 수도 있다. 예를 들어, 보통 폰트 사이즈는 입력으로서 핸드라이팅을 수용하는 문서 프로세싱 애플리케이션에 의해 제공될 수도 있다. 이러한 보통의 또는 디폴트 폰트 사이즈는 예를 들어 본 출원인 및 양수인의 명칭으로 2015년 8월 25일의 우선일을 주장하면서 출원된 미국 특허 출원 제 15/215,716 호에서 기술된 바와 같이, 문서 프로세싱 애플리케이션의 인쇄상의 엘리먼트들과 관련하여 정의될 수도 있고, 그것의 내용들은 본원에 참조에 의해 통합된다.
형상들에 관해, 식자는 디지털 오브젝트들로의 변환을 통해 디지털 잉크 형상들의 "미화 (beautification)" 로서 생각될 수 있다. 본 시스템 및 방법에서, 핸드라이팅된 입력은 본 출원인 및 양수인의 명칭으로 2016년 1월 7일의 우선일을 주장하면서 출원된 미국 특허 출원 제 15/083,195 호에서 기술된 방식으로 잉크 오브젝트들로서 렌더링될 수도 있고, 그것의 내용들은 본원에 참조에 의해 통합된다. 즉, '미가공 (raw)' 또는 입력 잉크 (예컨대, 핸드라이팅된 스트로크들) 는 디지털 잉크 (예컨대, 디스플레이된 잉크) 에 참조되거나 링크될 수도 있어서, HWR 시스템 (314) 에 의해 인식되는 바와 같은 실제 입력과, 디스플레이된 입력 사이의 관계는 잉크 관리 시스템 (312) 에 의해 알려져 있다. 이러한 방식으로, 예를 들어 콘텐츠를 편집하기 위한 디지털 잉크와의 사용자 상호작용은 기저의 인식과 관련하여 수행된다. 인식된 잉크와 디지털 잉크의 '결합 (marrying)' 은 '잉크 오브젝트들 (ink objects)' 을 형성한다. 각 잉크 오브젝트는 디지털 오브젝트들의 것과 유사한 정보를 포함하는 메타데이터를 갖지만 또한 인식 프로세싱과 관련된 추가의 정보도 갖는다. 추가로, 식자를 통한 잉크 오브젝트들의 유지는 디지털 오브젝트들로 변환되기 보다는 디지털 잉크를 식자된 잉크로서 재-렌더링하는 것만으로 수행될 수도 있다. 이러한 방식으로, 식자 잉크와의 상호작용들은 디지털 잉크와의 상호작용들과 유사한 방식으로 잉크 관리 시스템 (312) 에 의해 처리된다. 즉, 유사한 기능성이 제공되도록, 관련된 기본 인식 결과들에 대한 참조가 이루어진다.
도 6 은 이 보통의 또는 보편적인 폰트 사이즈 예에 기초하여 디지털 잉크 다이어그램 (200) 으로부터 식자된 식자 잉크 다이어그램 (600) 을 도시한다. 식자 잉크 다이어그램 (100) 과 같이, 식자 잉크 다이어그램 (600) 은 노드들에서 분포된 다수의 엘리먼트들을 갖는다: (제 1 레벨) 중앙 또는 메인 노드 (602), 다수의 제 2 레벨 또는 분기된 노드들 (604) 및 다수의 제 3 레벨 또는 분기된 노드들 (606), 및 타이틀 엘리먼트 (608).
볼 수 있는 바와 같이, 다이어그램 (200) 의 디지털 잉크 형상들 (202a, 204a, 204c, 204e 및 204g) 의 각각은 식자 잉크 형상들 (602a, 604a, 604c, 604e 및 604g) 로 각각 식자되어서, 제 2 레벨 노드들 (604) 의 식자 잉크 형상들 또는 컨테이너들 (604a, 604c, 604e 및 604g) 의 각각은 제 1 레벨 노드 (602) 의 식자 잉크 형상들 또는 컨테이너 (602a) 보다 비교적 더 작다. 이는, 디지털 잉크 형상들 (204a, 204c, 204e 및 204g) 이 디지털 잉크 형상 (202a) 보다 비교적 더 작기 때문에 생기는 결과들이다. 이에 따라, 마인드-맵 다이어그램의 스타일링은 일반적으로 제 2 레벨 다이어그램 엘리먼트들보다 더 큰 사이즈를 갖는 중앙의 또는 제 1 레벨 다이어그램 엘리먼트들과 관련된다. 하지만, 동일한 계층적 레벨의 식자 잉크 형상 다이어그램 엘리먼트들은 디지털 잉크 형상들이 상이한 사이즈들의 것이므로, 동일한 사이즈의 것이 아니다.
텍스트에 관해, 다이어그램 (200) 의 디지털 잉크 텍스트 (202b, 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 는 식자 잉크 텍스트 (602b, 604b, 604d, 604f, 604h, 606a, 606b, 606c 및 608) 로 각각 식자되었고, 식자 잉크 텍스트의 전부는 정의된 바와 같이 동일한 폰트 사이즈를 갖는다. 이러한 식자 변환은 구현하기가 간단하지만, 결과적인 식자 다이어그램 (600) 은, 식자 다이어그램 (100) 과는 달리, 사용자의 원래의 핸드드로잉된 다이어그램 (200) 에서 사용된 상이한 텍스트 사이즈들을 명확하게 반영하지 않는다. 특히, 비교적 큰 컨테이너들 또는 셀들 (나중에 자세히 정의됨) 은 비교적 작은 텍스트, 즉, 컨테이너 (602) 를 포함하고, 타이틀 (608 은 다이어그램의 텍스트의 나머지에 비해 비교적 작다.
이러한 원하지 않은 결과에 기초하여, 식자 동작은 식자 결과가 사용자의 핸드라이팅된 잉크 입력에 비교적 가까워야 한다는 (제 1) 기준들의 면에서 수행되어야 함이 고려된다. 즉, 펜 및 종이를 사용하여 다이어그램들 및 다른 혼합된 텍스트 및 비-텍스트 콘텐츠의 드로잉에서와 같이, 디지털 다이어그램 등을 그릴 때, 사용자들은 도 2 의 예시적인 다이어그램에서와 같이, 더 큰 손 또는 폰트로 씀으로써, 다이어그램에서 타이틀들 및 중요한 콘텐츠와 같은 특정 엘리먼트들을 강조한다. 이와 같이, 본 시스템 및 방법에서, 핸드라이팅된 텍스트에서의 스케일에서의 차이는 존중되고, 이는 예를 들어 예시된 예의 마인드-맵 다이어그램의 중앙 또는 제 1 레벨 노드와 같이, 계층적 다이어그램 엘리먼트들 및 타이틀들과 같은 텍스트 엘리먼트들에 대해 비교적 더 큰 폰트들을 허용한다.
제 1 기준들에 있어서, 다른 예에서, 형상에 대해, 이전 예와 같이 동일한 정의가 사용되지만, 텍스트에 대해, 디지털 잉크 텍스트의 높이는, (UI 등과의 사용자 상호작용 등에 의해) 미리결정된 및/또는 설정가능한 방식으로 정의된 바와 같이, 연관된 폰트 사이즈, 예컨대, 작은, 보통의, 큰, 특대형의 사이즈를 각각 갖는 식자 잉크 텍스트의 스타일들을 결정하기 위해 사용될 수도 있다. 즉, 각 스타일은 디지털 잉크 텍스트의 연관된 높이 임계치에 의해 정의되어서, 예를 들어, 최저 임계 레벨 미만의 높이를 갖는 디지털 잉크는 '소형' 으로서 분류되고, 임계 레벨들 사이의 높이를 갖는 디지털 잉크는 적절하게 '보통' 또는 '대형' 으로서 분류되며, 최고 임계 레벨 초과의 높이를 갖는 디지털 잉크는 '특대형' 으로서 분류된다.
즉, 보통 사이즈는 이전에 설명된 바와 같이 정의된 보통 폰트 사이즈일 수도 있고, 다른 사이즈들, 예컨대, 소형, 대형 및 특대형의 각각은, 디지털 잉크의 높이에 기초하여 보통 폰트 사이즈로부터, 적절한 사이즈 차이 또는 시프트, 예컨대, 각 레벨 에 대해 약 2pt 내지 약 4pt 로 이 보통 폰트 사이즈에 대해 참조된다. 사용되는 디지털 잉크의 높이는, 예를 들어, HWR 시스템 (314) 에 의해 인식되는 바와 같은 문자들 및 포함된 단어들의 최대 높이, 또는 인식된 소문자 문자들의 최대 높이, 또는 평균 높이 등일 수도 있다. 이러한 디지털 잉크 문자 사이즈 특성들의 결정은 나중에 보다 자세히 논의된다. 대안적으로, 또는 추가적으로, 디지털 잉크의 다른 사이즈 특성들, 예컨대, 폭, 면적이 사용될 수도 있다.
도 7 은 이 사전-정의된 (레벨링된) 폰트 사이즈 셋트 예에 기초하여 디지털 잉크 다이어그램 (200) 으로부터 식자된 식자 잉크 다이어그램 (700) 을 도시한다. 식자 잉크 다이어그램 (100) 과 같이, 식자 잉크 다이어그램 (700) 은 노드들에서 분포된 다수의 엘리먼트들을 갖는다: (제 1 레벨) 중앙 또는 메인 노드 (702), 다수의 제 2 레벨 또는 분기된 노드들 (704) 및 다수의 제 3 레벨 또는 분기된 노드들 (706), 및 타이틀 엘리먼트 (708).
볼 수 있는 바와 같이, 다이어그램 (200) 의 디지털 잉크 형상들 (202a, 204a, 204c, 204e 및 204g) 의 각각은, 도 6 의 예에서와 같이, 식자 잉크 형상들 (602a, 604a, 604c, 604e 및 604g) 로 식자되었고, 따라서, 상이한 치수들로 동일한 이슈들을 갖는다.
텍스트에 관해, 다이어그램 (200) 의 디지털 잉크 텍스트 (202b, 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 는 식자 잉크 텍스트 (702a, 704a, 704b, 704c, 704d, 706a, 706b, 706c 및 708) 로 각각 식자되었고, 식자 잉크 텍스트의 전부는 그것이 나타내는 디지털 잉크 텍스트에 의해 정의된 폰트 사이즈를 갖는다. 이것은 나중에 자세히 설명되는 바와 같이 달성될 수도 있다. 결과적인 식자 다이어그램 (700) 은, 식자 다이어그램 (100) 과는 달리, 사용자의 원래의 핸드드로잉된 다이어그램 (200) 에서 사용된 상이한 텍스트 사이즈들을 명확하게 반영하지 않는다. 특히, 계층 내의 동일 레벨들의 텍스트는, 식자 잉크 텍스트 (704a, 704b, 704c 및 704d), 및 식자 잉크 텍스트 (706a, 706b 및 706c) 와 같이, 컨테이너들 또는 셀들에 포함되든지 간에, 상이한 사이즈드의 것이다.
원하지 않은 결과에 기초하여, 식자 동작은 또한, 동일한 식자 잉크 폰트 사이즈는 일반적으로 동일한 스케일로 (예컨대, 동일한 계층적 레벨로) 핸드라이팅된 다이어그램 엘리먼트들에 대해 사용되어야 한다는 (제 2) 기준들에서 수행되어야 한다. 이와 같이, 핸드라이팅된 텍스트에서의 스케일에서의 차이들은 존중되고, 이는, 예를 들어, 도시된 예의 마인드-맵 다이어그램의 분기된 또는 제 2 및 제 3 레벨 노드들과 같은, 계층적 다이어그램 엘리먼트들에 대해 허용한다.
다음의 2 가지 기준들을 충족시킴으로써:
(1) 핸드라이팅된 텍스트에서의 스케일에서의 실질적 차이들이 존중됨,
(2) 대략적으로 동일 스케일로 핸드라이팅된 모든 텍스트 블록들에 대해 동일한 폰트 사이즈가 사용됨,
본 시스템 및 방법의 폰트 사이즈 계산은, 예를 들어 도 1 의 식자 잉크 다이어그램 (100) 이 도 2 의 디지털 잉크 다이어그램 (200) 으로부터 생성되도록, 사용자들의 의도들을 존중하는 의미있는 시각적 콘텐츠를 제공하는 각 텍스트 블록에 대해 폰트 사이즈를 귀속시킨다. 본 시스템 및 방법이 이들 기준들을 고수하는 방식이 이제 설명된다.
본 시스템 및 방법에서, 포함된 또는 비-포함된 텍스트를 포함하는 디지털 잉크 콘텐츠가 식자될 때, 잉크 관리 시스템 (312) 은 다음 3 개의 단계들에서 식자에서 사용될 적절한 폰트 사이즈(들)를 계산한다:
각 텍스트 블록에 대해 최선 맞춤의 폰트 사이즈를 계산
텍스트 블록들은 적어도 그 텍스트의 치수 정보에 기초하여 그룹들로 소팅됨,
폰트 사이즈(들)는 모든 텍스트 블록들을 고려함으로써 콘텐츠에 대해 정규화됨.
이러한 방식으로, 동적 정규화된 폰트 사이즈들은 인식된 및 해석된 디지털 잉크 콘텐츠에 기초하여 계산된다. 본 시스템 및 방법의 폰트 사이즈 계산은, 예들 또는 테이블들의 다이어그램과 같은, 텍스트 및 비-텍스트를 포함하는 핸드라이팅된 콘텐츠 뿐만 아니라, 텍스트만을 포함하는 핸드라이팅된 콘텐츠에도 적용가능하다.
로컬 폰트 사이즈 계산을 위해, 잉크 관리 시스템 (312) 은 컨테이너 또는 셀 내의 텍스트, 라벨로서 커넥터와 연관된 텍스트 또는 텍스트 단독을 갖는 텍스트의 각 블록에 대해 폰트 사이즈를 계산한다. 텍스트 블록에 대한 폰트 사이즈를 결정하기 위해, 잉크 관리 시스템 (312) 은, 인식 결과들과 함께 HWR 시스템 (314) 에 의해 제공되는 바와 같은 입력에 의해 표현되는 문자들의 인식된 또는 미리결정된 피처들, 및/또는 인식 결과들과 함께 HWR 시스템 (314) 에 의해 제공되는 바와 같은 입력에 의해 표현되는 형상들의 인식된 또는 미리결정된 피처들에 기초하여 핸드라이팅된 입력의 치수 피처들에 대한 정보를 이용하도록 구성된다. 즉, 인식 프로세스에서, 인식 엔진 (318) 은 핸드드로잉된 입력의 인식된 형상들의 치수들에 관련된 및/또는 핸드라이팅된 입력의 인식된 문자들의 적어도 각각의 타이포그래피에 관련된 치수 정보를 결정한다.
텍스트 및 구두점 문자들의 타이포그래피 (typography) 는 글자들의 어센더 (ascender) 들 및 디센더 (descender) 들을 포함하는, 텍스트의 엘리먼트들에 관련된 수개의 엘리먼트들을 포함한다. 핸드라이팅된 문자들에 관해, HWR 시스템 (314) 은 각 문자의 하위 및 상위 극치들을 결정한다. 하위 극치는 인식된 문자의 스트로크 또는 스트로크들이 통과하는 최저 포인트이다. 상위 극치는 인식된 문자의 스트로크 또는 스트로크들이 통과하는 최고 포인트이다. 이들 극치들로부터, 문자, 단어 (예컨대, 일련의 문자들), 문장 또는 어구 (예컨대, 일련의 문자들 및/또는 단어들), 및 텍스트 라인 (예컨대, 일련의 문자들, 단어들 및/또는 문장들) 의 레벨들에서의 라이팅 라인들이 결정된다. 라이팅 라인들은 최상위-, 하위-, 베이스- 및 중앙- (또는 중간-) 라인들을 포함한다. 대안적으로, 또는 추가적으로, 잉크 관리 시스템 (312) 은 디지털 잉크로부터 또는 인식 결과들로부터 이들 극치들을 스스로 결정하도록 구성될 수도 있다. 조판을 결정함에 있어서 본 시스템 및 방법에 의해 고려될 수도 있는 텍스트의 다른 엘리먼트들은 예를 들어 문자 폭, 간격, 기울기를 포함할 수도 있다.
개별 문자들에 관해, 타이포그래피 정보는 HWR 시스템 (314) 에 의해 인식된, 또는 그 외에 잉크 관리 시스템 (312) 에 의해 결정된 문자의 타입에 기초하여 적용될 수도 있다. 즉, 대문자화된 글자들, 어센더들을 갖는 글자들 및 특정 구두점 마크들에 대해, 최상위-라인 (또는 어센더 높이 또는 라인) 은 문자의 수평 범위를 가로질러 상위 극치에 관련된 포인트를 통과하는 수평 라인으로서 정의된다. 대문자 글자들에 대해, 타이포그래피는 또한 특정 방어시설들을 허용하기 위해 단어에 대해 최상위-라인과는 상이할 수도 있는 캡-라인 (cap-line) 을 정의할 수도 있다.
즉, 대문자화된 글자들, 어센더들을 갖는 글자들 및 특정 구두점 마크들에 대해, 최상위-라인 (또는 어센더 높이 또는 라인) 은 문자의 수평 범위를 가로질러 상위 극치에 관련된 포인트를 통과하는 수평 라인으로서 정의된다.
베이스-라인은 문자의 수평적 범위를 가로지르는 적어도 하위-라인에 관련된 포인트를 통과하는 수평 라인으로서 정의되고, 중앙-라인 (또는 x-하이트 또는 라인) 은 문자의 수평적 범위를 가로지르는 최상위- 및 베이스-라인들에 관련된 포인트를 통과하는 수평 라인으로서 정의된다. 이들 라인들이 통과하는 포인트들의 결정은 특히 HWR 시스템 (314) 에 의해 사용되는 인식 프로세스 및 언어 모델(들)에 대한 것이다.
디센더들도 어센더들도 갖지 않고 소문자 형태를 갖는 글자들에 대해, 중앙-라인은 최상위-라인으로서 정의되고, 베이스-라인은 하위-라인으로서 정의된다.
대문자화된 글자들, 어센더들을 갖는 글자들 및 특정 구두점 마크들에 대해, 베이스-라인은 하위-라인으로서 정의되고, 중앙-라인은 예를 들어 최상위- 및 베이스-라인들 사이의 중간 거리인 포인트를 통과하는 수평 라인으로서 정의된다.
디센더들을 갖는 글자들 및 특정 구두점 마크들에 대해, 중앙-라인은 최상위-라인으로서 정의되고, 베이스-라인은 중간 거리인, 또는 중앙- 및 하위-라인들 사이의, (스트로크(들) 그 자체의 소정의 기하학적 피처들과 같은) 몇몇 다른 메트릭에 의해 정의되는 포인트를 통과하는 수평 라인으로서 정의된다.
물론, 어떤 문자들은, 언어 및 핸드라이팅된 스타일들에 의존하여, 어센더들 및 디센더들 양자, 또는 (악센트들과 같은) 발음구별부호들을 포함할 수도 있어서, 문자들의 타이포그래피를 정의하기 위해 상술된 관계들의 소정 조합들 또는 가중치들이 사용된다. 또한, 특정 구두점 마크들 및 다른 심볼들은 (마침표들 및 하이픈들과 같은) 타이포그래피 라인들 중 하나보다 더 위에 이르지 않을 수도 있어서, 특정 규칙들이 이러한 문자들에 대해 적용되도록 한다.
텍스트 블록에서의 텍스트 스트링의 모든 문자들에 대해, 각 문자에 대한 각각의 타이포그래피 정보는 전체 텍스트 스트링의 연관된 타이포그래피 정보를 결정하기 위해 결정되고 비교되거나 결합된다. 이것은 텍스트 스트링에서의 텍스트 라인들의 수에 상관 없이 텍스트의 전부에 대해 행해질 수도 있거나, 또는, (나중에 설명되는 바와 같이) 라인 단위로 행해질 수도 있다. 즉, 텍스트의 전부에 대한 최상위-라인은 최고 어센더를 갖는 문자에서 정의될 수도 있고, 텍스트의 전부에 대한 하위-라인은 최저 디센더를 갖는 문자에서 정의될 수도 있으며, 텍스트의 전부에 대한 베이스-라인은 디센더가 아닌 최저 포인트를 갖는 문자(들)에서 정의될 수도 있고 (예컨대, 문자는 텍스트의 라인 아래로 내려가지 않거나 소정 범위만큼 그 아래로 내려가지 않는다), 텍스트의 전부에 대한 중앙-라인은 최상위- 및 하위-라인들 사이의 중앙-포인트에서 정의될 수도 있다. 대안적으로, 이들 라인들의 하나 이상은 텍스트의 전부의 문자들의 평균 또는 중간 포인트에서 정의될 수도 있다. 이러한 평균 또는 중간 결정들을 이용하는 겻은, 문자들이 실질적으로 수평으로 정렬되지 않는 들쭉날쭉한 또는 기울어진 핸드라이팅에 대한 일부 저항성을 제공할 수도 있다.
예를 들어, 도 8 은 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (800) 을 도시한다. 핸드라이팅된 입력 (800) 은 다수의 스트로크들로 핸드라이팅되고, 텍스트로서 검출되며 하나의 라인의 텍스트로 쓰여진 단어 "flower" 로서 인식된다. 볼 수 있는 바와 같이, 핸드라이팅된 입력 (800) 은 어센더 및 디센더 양자를 갖는 문자, 즉, "f", 어센더를 갖는 문자, 즉, "l", 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “o”, “w”, “e” 및 “r” 를 포함한다.
이 예시적인 텍스트 (800) 에 대해, 도시된 바와 같이, 최상위-라인 (TL) 은 글자 "f" 의 어센더의 상위 확장에서 결정될 수도 있고, 하위-라인 (LL) 은 글자 "f" 의 디센더의 하위 확장에서 결정될 수도 있으며, 베이스-라인 (BL) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, 중앙-라인 (ML) 은 최상위-라인 (TL) 과 하위-라인 (LL) 사이의 중앙-포인트에서 결정될 수도 있다.
결정된 타이포그래피 정의들은 로컬 폰트 사이즈 계산을 위한 치수 정보로서 잉크 관리 시스템 (312) 에 의해 사용된다. 최상위-, 하위-, 베이스- 및 중앙-라인들을 포함하는 치수 정보로부터, 잉크 관리 시스템 (312) 은 디지털 잉크의 텍스트 사이즈 특성들을 결정한다. 예를 들어, 도 8 에서 도시된 바와 같이, 잉크 관리 시스템 (312) 은, 면적-기반 디지털 잉크 (제 1) 텍스트 사이즈 특성들로서 (예컨대, 디지털 잉크 (800) 의 처음 및 마지막 포인트들에 의해 수평적으로 그리고 최상위-라인 (TL) 및 하위-라인 (LL) 에 의해 수직으로 정의된 바와 같이) 디지털 잉크 (800) 의 면적 범위에서의 텍스트 바운딩 박스 (802) 및 높이-기반 디지털 잉크 (제 1) 텍스트 사이즈 특성으로서 디지털 잉크 (800) 의 베이스-라인 (BL) 과 중앙-라인 (ML) 사이의 수직 거리로서 텍스트 높이 (또는 엑스-하이트) 를 결정한다. 이들 디지털 잉크 텍스트 사이즈 특성들은 본 예에서 식자 텍스트에 대해 로컬 폰트 사이즈를 계산하기 위해 잉크 관리 시스템 (312) 에 의해 사용된다. 면적을 정의하는 텍스트 높이 및 폭은 처음에 SI 단위들, 즉, 밀리미터로 측정될 수도 있고, 그리고 타이포그래피 단위들, 예컨대, 포인트들 (pt) 로 변환될 수도 있거나, 처음에 pt 로 측정될 수도 있다.
특히, 본 예에서, 식자 잉크에 대한 2 가지 가능한 폰트 사이즈들, 높이-기반 디지털 잉크 텍스트 사이즈 특성에 기초하여 높이-기반 폰트 사이즈 (Sh) 및 면적-기반 디지털 잉크 텍스트 사이즈 특성에 기초하여 면적-기반 폰트 사이즈 (Sa) 가 계산된다. 이들 식자 잉크 폰트 사이즈들은 그 다음에, 폰트 사이즈들 중 어느 것이 고려 하의 텍스트 블록의 디지털 잉크의 식자를 위해 최상인지의 결정의 일부로서 비교되고, 이에 의해, 식자 잉크 텍스트에 대한 로컬 (제 1) 폰트 사이즈를 제공한다.
식자 잉크 텍스트의 비-어센더 및 비-디센더 부분들의 높이가 디지털 잉크 텍스트 높이 (h) 와 동일하도록 높이-기반 폰트 사이즈 (Sh) 가 결정된다. 이에 따라, 디지털 잉크 (800) 의 텍스트 높이 (h) 에 대해, 예를 들어, 72pt 의 높이-기반 폰트 사이즈 (Sh) 가 초래된다. 도 9a 는 72pt 의 높이-기반 폰트 사이즈에서 (예시적 목적을 위해) 그 위에 식자 잉크 (900) 를 갖는 도 8 의 디지털 잉크 (800) 를 도시한다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (900) 는 디지털 잉크 (800) 의 바운딩 박스 (802) 를 오버플로우한다. 이것은 도 8 의 예에서와 같이, 단독인 텍스트 블록의 텍스트에 대해 문제가 되지 않을 수도 있다. 하지만, 다이어그램 또는 태블릿 엘리먼트들과 같은 다른 오브젝트들에 포함되거나 그 외에 링크되는 텍스트에 대해, 이러한 오버플로우는 식자된 텍스트가 그 텍스트를 둘러싸는 식자 잉크 형상을 오버플로우하는 결과를 초래할 수도 있고, 이에 의해 제 3 기준들을 실망시키는 결과를 초래할 수도 있다.
면적-기반 폰트 사이즈 (Sa) 는, 식자 잉크 텍스트의 폭이 디지털 잉크 텍스트의 바운딩 박스와 실질적으로 동일한 폭을 갖도록 결정된다. 이에 따라, 디지털 잉크 (800) 의 바운딩 박스 (800) 에 대해, 예를 들어 62pt 의 면적-기반 폰트 사이즈 (Sa) 가 초래된다. 도 9b 는 62pt 의 면적-기반 폰트 사이즈에서 (예시적 목적을 위해) 그 위에 식자 잉크 (900') 를 갖는 도 8 의 디지털 잉크 (800) 를 도시한다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (900') 는 디지털 잉크 (800) 의 바운딩 박스 (802) 를 오버플로우하지 않는다. 이것은, 면적-기반 폰트 사이즈가 디지털 잉크 텍스트 블록 바운딩 박스의 폭에 기초하여서, 식자될 때, 블록 내의 전체 텍스트 라인 핏들, 예컨대, 식자 잉크 텍스트 (900') 의 바운딩 박스 (902) 가 도시된 바와 같이 디지털 잉크 텍스트 (800) 의 바운딩 박스 (802) 와 실질적으로 동일한 폭을 가지기 때문이다.
본 명세서에서 설명된 폰트 사이즈 계산에서, 비-정수 폰트 사이즈가 계산될 수 있음이 이해된다. 하지만, 워드 프로세싱 애플리케이션들 등과의 양호한 통합을 달성하기 위해서, 디지털 잉크 텍스트 높이 및 바운딩 박스 폭 (및 다른 치수 측정치들) 의 잘라올림 또는 잘라버림이 적절하게 사용되어 정수 폰트 사이즈가 제공될 수도 있다.
식자 잉크 텍스트의 계산된 가능한 높이- 및 면적-기반 폰트 사이즈들에 기초하여, 본 시스템 및 방법의 잉크 관리 시스템 (312) 은 핸드라이팅 입력의 식자를 위해 계산된 폰트 사이즈 중 하나를 선택하도록 구성된다. 텍스트 블록이 단독인 경우에, 즉, 텍스트가 도 8 의 예에서와 같이 형상들로부터 고립된 경우에, 계산된 폰트 사이즈들 중 어느 것도 계산된 로컬 폰트 사이즈를 위해 선택될 수도 있다. 하지만, 다이어그램 또는 다른 텍스트 및 비-텍스트 콘텐츠에 걸친 일관성을 제공하기 위해서, 잉크 관리 시스템 (312) 은, 최소 가능 폰트 사이즈 또는 최대 가능 폰트 사이즈와 같이, 사전-정의된 조건에 기초하여 계산된 폰트 사이즈들 중 하나를 선택하도록 구성될 수도 있다.
본 출원인은, 디지털 잉크의 타이포그래피에 기초하여 디지털 잉크의 식자 잉크로의 변환을 위해 로컬 폰트 사이즈를 선택하기 위한 본 시스템 및 방법의 이러한 메커니즘은, 비-텍스트 콘텐츠에 관련되든지 또는 관련되지 않든지 간에, 고립된 텍스트 콘텐츠에 대해 특히 잘 작용함을 발견하였다. 하지만, 예를 들어, 컨테이너 내에 포함되도록 의도된 텍스트 콘텐츠에 대해, 식자 잉크 텍스트 콘텐츠는 오직 디지털 잉크의 타이포그래피만이 고려될 때 변환 후에 식자 잉크 컨테이너를 오버플로우 (overflow) 할 수도 있음이 가능하다.
예를 들어, 도 10 은 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (1000) 을 갖는 도 8 의 입력 (800) 을 도시한다. 핸드라이팅된 입력 (1000) 은 단일의 연속적인 스트로크로 핸드라이팅되고, 비-텍스트로서 검출되며, 직사각형으로서 인식된다. 추가로, 인식된 텍스트 (800) 가 인식된 형상 (1000) 에 의해 둘러싸이므로, 형상 (1000) 은 컨테이너로서 검출된다.
도 11a 는 72pt 의 높이-기반 폰트 사이즈 (Sh) 에서의 식자 잉크 텍스트 (900) 및 (예시의 목적을 위해) 그 위에 식자 잉크 (1100) 를 갖는 도 10 의 디지털 잉크 형상 (1000) 및 디지털 잉크 텍스트 (800) 를 도시한다. 식자 잉크 (1100) 는 식자 시에 디지털 잉크 직사각형 (1000) 을 나타내는 직사각형이다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (900) 는 식자 잉크 형상 (1100) 을 오버플로우한다. 본 시스템 및 방법에 따른 디지털 잉크 형상들의 식자 변환은 나중에 자세히 논의되는 바와 같이 다양한 고려사항들에 기초하여 다양한 방식들로 수행될 수도 있다. 이 예에서, 식자는, 도 11a 에서 볼 수 있는 바와 같이, 결과적인 식자 잉크 형상이 디지털 잉크 형상의 치수들을 근접하게 나타내는 치수들을 갖도록 수행된다.
도 11b 는 62pt 의 면적-기반 폰트 사이즈 (Sa) 에서의 식자 잉크 텍스트 (900') 및 (예시의 목적을 위해) 그 위에 식자 잉크 (1100) 를 갖는 도 10 의 디지털 잉크 형상 (1000) 및 디지털 잉크 텍스트 (800) 를 도시한다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (900') 는 또한 식자 잉크 형상 (1100) 을 오버플로우한다. 이에 따라, 텍스트 그 자체의 타이포그래피의 사용은 형상 식자 변환을 위한 몇몇 다른 정의 없이 이 포함된 경우에서 만족스러운 결과로 이끌지 못한다.
이에 따라, 식자 동작은 또한, 포함된 텍스트가 존재할 때, 각 컨테이너 (또는 셀) 의 식자 잉크 텍스트가 그 컨테이너를 오버플로우함이 없이 그 컨테이너 내에서 디스플레이되어야 한다는 (제 3) 기준들을 고려하여 수행될 수도 있다. 이와 같이, 핸드라이팅된 텍스트가 그 텍스트를 (부분적으로) 포함하는 핸드라이팅된 형상을 오버플로우하는 경우에도, 인식 결과가 그 텍스트를 컨테이너의 라벨 또는 콘텐츠로서 검출하는 경우에는, 식자 잉크 텍스트의 결과적인 폰트 사이즈는 그 식자 잉크 라벨 또는 콘텐츠가 식자 잉크 컨테이너를 오버플로우하지 않도록 될 필요가 있다.
이와 같이, 기준들은 추가적으로 다음과 같이 정의될 수도 있다:
(1) 핸드라이팅된 텍스트에서의 스케일에서의 실질적 차이들이 존중됨,
(2) 대략적으로 동일 스케일로 핸드라이팅된 모든 텍스트 블록들에 대해 동일한 폰트 사이즈가 사용됨, 및
(3) 각 컨테이너/셀의 텍스트는 오버플로우함이 없이 디스플레이됨.
따라서 제 3 기준들을 만족시키기 위해서 식자 잉크 텍스트가 연관된 식자 잉크 컨테이너에 의해 완전히 포함되는 것을 보장하기 위해, 본 시스템 및 방법은 인식된 컨테이너의 치수 정보를 고려하여 로컬 폰트 사이즈 계산을 수행할 수도 있다. 즉, 이전에 설명된 바와 같이, 핸드드로잉된 입력의 인식된 형상들의 치수들에 관련된 치수 정보가 또한 이 계산을 위해 사용된다. 특히, 폰트 사이즈 선택에 대한 단계적 접근법이 컨테이너 치수 정보에 관해 취해질 수도 있다. 즉, 제 1 단계 또는 스텝으로서, 높이- 및 면적-기반 폰트 사이즈들 (Sh 및 Sa) 은 포함된 텍스트 블록에 대해 계산되고, 이들 폰트 사이즈들의 일방 또는 양방이 연관된 컨테이너 내에 맞는지 여부가 테스트된다. 예를 들어, 텍스트 블록에 대해 계산된 높이- 및 면적-기반 폰트 사이즈들 (Sh 및 Sa) 의 최소 폰트 사이즈는, 식자 잉크 텍스트의 오버플로우가 발생하지 않도록 선택될 수도 있고, 그에 의해, 제 3 기준들을 만족시킨다.
이러한 테스트는, 높이, 폭 및 기하학을 포함하는, 형상에 관련된 몇가지 엘리먼트들을 포함하는, 인식된 형상들의 치수들과 관련하여 수행된다. 핸드라이팅된 형상들에 관해, HWR 시스템 (314) 은 형상들의 통합조정 극치들을 결정한다. 이들 극치들은 형상의 기하학을 정의한다. 예를 들어, 도 12a 는 식자 잉크에서의 다수의 상이한 형상들, 즉, 직사각형 (1200), 타원형 (1201), 원 (1202), (이등변) 삼각형 (1203), 직 (각) 삼각형 (1204), 사다리꼴 (1205), 평행사변형 (사방형) (1206) 및 다이아몬드 (1207) 를 도시한다. 이들 식자 잉크 형상들은 전술된 방식으로 인식된 핸드라이팅된 형상 입력으로부터 HWR 시스템 (314) 에 의해 변환되고, 이러한 변환에서, 식자 잉크 형상들의 치수들이 결정된다.
잉크 관리 시스템 (312) 은 컨테이너-기반 디지털 잉크 (제 2) 텍스트 사이즈 특성으로서 각 컨테이너의 텍스트 격납 엘리먼트들 (text containment elements) 을 결정하기 위해 이들 치수들을 사용한다. 가장 단순한 레벨에서, 컨테이너들 그자신들의 치수들은 텍스트 격납 엘리먼트로서 정의될 수 있다. 하지만, 이것은 식자 텍스트가 연관된 식자 컨테이너의 경계들에 너무 가깝게 되는 결과를 초래할 수도 있고, 이는 유쾌한 시각적 결과를 제공하지 않는다. 이와 같이, 텍스트 격납 엘리먼트들은 예를 들어 '홈들 (gutters)' 을 정의하기 위해 소정 마진에 의해 컨테이너의 극치들 또는 경계들로부터 분리되도록 정의된다. 이러한 방식으로, 텍스트 격납 엘리먼트들은, 텍스트 격납 엘리먼트 또는 펜스 내에 포함되고 따라서 컨테이너들 그자신들 내에 완전히 포함되는 식자 잉크 텍스트가 생성될 수 있도록 컨테이너들보다 치수 (예컨대, 면적) 가 더 작다.
텍스트 펜스는 인식된 컨테이너의 높이 및 폭 그리고 그것의 기하학을 고려함으로써 임의의 형상의 컨테이너 내의 단순한 사전-정의된 형상으로서 결정될 수도 있다. 예를 들어, 도 12b 는 인식된 컨테이너들 내에 직사각형으로서 정의된 각각의 텍스트 펜스들을 갖는 도 12a 에서 묘사된 형상들을 나타낸다. 즉, 직사각형 (1200) 은 직사각형 텍스트 펜스 (1208) 로 정의되고, 타원형 (1201) 은 직사각형 텍스트 펜스 (1209) 로 정의되며, 원 (1202) 은 직사각형 텍스트 펜스 (1210) 로 정의되고, 삼각형 (1203) 은 직사각형 텍스트 펜스 (1211) 로서 정의되고, 직각 삼각형 (1204) 은 직사각형 텍스트 펜스 (1212) 로 정의되고, 사다리꼴 (1205) 은 직사각형 텍스트 펜스 (1213) 로 정의되고, 사방형 (1206) 은 직사각형 텍스트 펜스 (1214) 로 정의되며, 다이아몬드 (1207) 는 직사각형 텍스트 펜스 (1215) 로 정의된다.
둘러싸인 직사각형 텍스트 펜스의 치수들은, 그 직사각형의 면적이 컨테이너 변들로부터 최소 간격 및 마진을 준수하면서 최대화되도록, 컨테이너의 치수들 및 기하학에 기초하여 결정된다. 이 면적 및 간격의 사이징은 예를 들어 UI 메뉴들 등을 통해 설정가능할 수도 있다.
대안적으로, 또는 추가적으로, 텍스트 펜스는 그것의 기하학을 고려함으로써 인식된 컨테이너의 기하학에 대응하도록 결정될 수도 있다. 예를 들어, 도 12c 는 인식된 컨테이너들 내에 대응하는 기하학으로 정의된 각각의 텍스트 펜스들을 갖는 도 12a 에서 묘사된 형상들을 나타낸다. 즉, 직사각형 (1200) 은 직사각형 텍스트 펜스 (1208) 로 정의되고, 타원형 (1201) 은 타원형 텍스트 펜스 (1209') 로 정의되며, 원 (1202) 은 원형 텍스트 펜스 (1210') 로 정의되고, 삼각형 (1203) 은 삼각형 텍스트 펜스 (1211') 로서 정의되고, 직각 삼각형 (1204) 은 직각 삼각형 텍스트 펜스 (1212') 로 정의되고, 사다리꼴 (1205) 은 사다리꼴 텍스트 펜스 (1213') 로 정의되고, 사방형 (1206) 은 사방형 텍스트 펜스 (1214') 로 정의되며, 다이아몬드 (1207) 는 직사각형 텍스트 펜스 (1215') 로 정의된다.
사전-정의된 형상의 펜스와 유사하게, 둘러싸인 기하학적 텍스트 펜스의 치수들은, 그 기하학적 형상의 면적이 컨테이너 변들로부터 최소 간격 및 마진을 준수하면서 최대화되도록, 컨테이너의 치수들에 기초하여 결정된다. 이 면적 및 간격의 사이징은 예를 들어 UI 메뉴들 등을 통해 설정가능할 수도 있다.
잉크 관리 시스템 (312) 은 불규칙한 형상들에 대한 텍스트 펜스들을 유사하게 결정할 수도 있다. 예를 들어, 도 13 은 디지털 잉크 (1300) 에서의 불규칙한 형상을 도시한다. 불규칙한 형상 (1300) 은 구름 형상이고, 따라서, 예를 들어 참조 미국 특허 출원 제 14/955,155 호에 의해 상기 통합된 데서 기술된 바와 같이, 그것은 불규칙한 형상으로서 또는 어휘 밖으로서 인식되므로, HWR 시스템 (314) 에 의해 식자 잉크로 변환되지 않을 수도 있다. 하지만, HWR 시스템 (314) 은 인식된 불규칙한 형상의 치수들을 결정하도록 구성된다. 이에 따라, 잉크 관리 시스템 (312) 은 불규칙한 형상 치수들에 의해 정의된 높이 및 폭을 갖는 불규칙한 형상에 대응하는 규칙적인 형상을 결정할 수도 있다. 예를 들어, 직사각형 (1302) 이 도 13 의 불규칙한 형상 (1300) 에 대해 정의되고, 형상 (1300) 의 높이 극치 및 폭 극치에 의해 정의된다. 이 대표적인 규칙적인 형상에 대해, 포함된 식자 잉크 텍스트가 불규칙한 디지털 (또는 식자) 잉크 형상 내에 포함될 수도 있도록 전술된 바와 같이 텍스트 펜스 (1304) 가 정의된다. 대안적으로, 본 시스템 및 방법은 인식 프로세스를 통해 이러한 불규칙한 형상들을 식자할 수도 있고, 그와 같이 연관된 텍스트 펜스가 결정될 수도 있다.
도 11 의 예로 돌아가서, 도 11c 는 잉크 관리 시스템 (312) 에 의해 결정된 텍스트 펜스 (1102) 를 갖는 식자 잉크 컨테이너 (1100) 를 도시한다. 이 예에서, 텍스트 펜스 (1102) 가 다시 컨테이너 (1100) 보다 더 작으므로, 도 11a 에서 묘사된 바와 같은 높이-기반 폰트 사이즈 (Sh) 및 도 11b 에서 묘사된 바와 같은 면적-기반 폰트 사이즈 (Sa) 양방은 텍스트 펜스 (1102) 에 비해 너무 크다. 따라서, 다음 단계 또는 스텝으로서, 잉크 관리 시스템 (312) 은 식자 잉크에 대한 다른 가능한 폰트 사이즈, 텍스트 펜스 사이즈의 특성에 기초한 컨테이너-기반 폰트 사이즈 (Sc) 를 계산한다.
컨테이너-기반 폰트 사이즈 (Sc) 는, 식자 잉크 텍스트의 폭이 식자 잉크 컨테이너의 텍스트 펜스와 실질적으로 동일한 폭을 가지도록 결정된다. 이에 따라, 텍스트 펜스 (1102) 에 대해, 예를 들어, 50pt 의 컨테이너-기반 폰트 사이즈 (Sc) 가 초래되어서, 도 11c 는 50pt 의 컨테이너-기반 폰트 사이즈에서의 식자 잉크 텍스트 (900'') 를 도시한다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (900'') 는 식자 잉크 컨테이너 (1100) 를 오버플로우하지 않는다. 이것은, 컨테이너-기반 폰트 사이즈가 컨테이너의 상대적으로 더 작은 텍스트 펜스의 폭에 기초하여서 (예컨대, 식자 잉크 텍스트 (900'') 의 바운딩 박스 (902') 는 도시된 바와 같이 식자 잉크 컨테이너 (1100) 의 텍스트 펜스 (1102) 와 실질적으로 동일한 폭을 갖는다), 식자 시에, 전체 텍스트 라인이 블록 내에 맞게 되기 때문이다. 이와 같이, 컨테이너-기반 폰트 사이즈는 컨테이너 (또는 그것의 마진) 그자체에 대해 스케일링되는 로컬 폰트 사이즈로서 계산된다. 이에 따라, 도 10 의 이 예에서의 디지털 잉크 (800) 에 대해, 로컬 폰트 사이즈는 50pt 로서 계산된다.
단계적 접근법을 취함이 없이 제 3 기준들을 만족시키기 위해서 임의의 포함된 텍스트 케이스에서 컨테이너-스케일링된 또는 컨테이너-기반 폰트 사이즈를 계산 및 적응시키도록 잉크 관리 시스템 (312) 을 구성하여서, 그에 의해, 타이포그래피-기반 폰트 사이즈를 무시하거나 계산하지 않는 것이 가능하다. 이것이 성공적으로 적용될 수도 있는 몇몇 포함된 텍스트 케이스들이 있지만, 다른 경우들에서 결과는 바람직하지 못할 수도 있다.
예를 들어, 도 14 및 도 15 는 잉크 관리 시스템 (312) 이 3 가지 가능한 로컬 폰트 사이즈 타입들을 계산하는 것에 대한 일 예를 나타낸다. 도 14 는, 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (1400 및 1402) 을 도시한다. 핸드라이팅된 입력 (1400) 은 다수의 스트로크들로 핸드라이팅되고, 텍스트로서 검출되며 하나의 라인의 텍스트로 쓰여진 단어 및 문법적 (예컨대, 의문) 마크 "Valid?" 로서 인식된다. 볼 수 있는 바와 같이, 핸드라이팅된 입력 (1400) 은 대문자화된 문자, 즉, "V", 어센더를 갖는 문자들, 즉, “l”, “d” 및 “?”, 지연된 스트로크를 갖는 문자들, 즉, “i” 및 “?”, 및 어센더들도 디센더들도 갖지 않는 문자, 예컨대, "a" 를 포함한다. 핸드라이팅된 입력 (1402) 은 단일의 연속적인 스트로크로 핸드라이팅되고, 비-텍스트로서 검출되며, 다이아몬드형으로서 인식된다. 추가로, 인식된 텍스트 (1400) 가 인식된 형상 (1402) 에 의해 둘러싸이므로, 형상 (1402) 은 컨테이너로서 검출된다.
예시적인 디지털 잉크 텍스트 (1400) 에 대해, 최상위-라인 (TL) (미도시) 은 문자 "?" 의 어센더의 상위 확장에서 결정될 수도 있고, 하위-라인 (LL) (미도시) 및 베이스-라인 (BL) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, 중앙-라인 (ML) (도시됨) 은 최상위-라인 (TL) 과 베이스-라인 (BL) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, 텍스트 높이 (h) 는 디지털 잉크 텍스트 (1400) 의 베이스-라인 (BL) 과 중앙-라인 (ML) 사이의 수직 거리로서 정의되고, 텍스트 바운딩 박스 (1404) 는 디지털 잉크 텍스트 (1400) 의 면적 범위로서 정의된다.
앞에서와 같이, 높이-기반 폰트 사이즈 (Sh) 는, 식자 잉크 텍스트의 비-어센더 및 비-디센더 부분들의 높이가 디지털 잉크 텍스트 (1400) 의 텍스트 높이 (h) 와 실질적으로 동일하도록 결정되고, 면적-기반 폰트 사이즈 (Sa) 는 식자 잉크 텍스트의 (바운딩 박스의) 폭이 디지털 잉크 텍스트 (1400) 의 바운딩 박스 (1404) 와 실질적으로 동일한 폭을 가지도록 결정된다. 도 15a 는 높이-기반 폰트 사이즈 (Sh) 에서 디지털 잉크 텍스트 (1400) 에 대응하는 식자 잉크 텍스트 (1500) 및 디지털 잉크 컨테이너 (1402) 에 대응하는 식자 잉크 컨테이너 (1502) 를 도시한다. 도 15b 는 면적-기반 폰트 사이즈 (Sa) 에서 디지털 잉크 텍스트 (1400) 에 대응하는 식자 잉크 텍스트 (1500'), 및 식자 잉크 컨테이너 (1502) 를 도시한다.
도 15a 및 도 15b 는 식자 잉크 컨테이너 (1502) 에 기초하여 잉크 관리 시스템 (312) 에 의해 결정되는 바와 같은 텍스트 펜스 (1504) 를 추가로 도시한다. 볼 수 있는 바와 같이, 높이-기반 폰트 사이즈 (Sh) 에서의 식자 잉크 텍스트 (1500) 는 텍스트 펜스 (1504) 에 포함되지만, 면적-기반 폰트 사이즈 (Sa) 에서의 식자 잉크 텍스트 (1500') 는 텍스트 펜스 (1504) 를 오버플로우한다.
단계적 접근법의 전술된 제 1 단계에 있어서, 잉크 관리 시스템 (312) 은, 그것이 제 3 기준들을 만족하므로 이 시점에서 높이-기반 폰트 사이즈 (Sh) 를 선택할 것이다. 하지만, 미가공 잉크 입력 (1400) 에 기초하여, 높이-기반 폰트 사이즈 (Sh) 에서의 식자 텍스트 (1500) 는 디지털 잉크 컨테이너 (1402) 에 대한 디지털 잉크 텍스트 (1400) 보다 식자 컨테이너 (1502) 에 대해 더 작은 텍스트의 블록을 나타냄을 볼 수 있다. 이러한 결과는, 타이포그래피-기반 폰트 사이즈들이 포함하는 또는 연관된 형상의 치수 정보에 상관 없이 계산되는 것으로서 이해가능하다.
다른 한편, 컨테이너-기반 폰트 사이즈 (Sc) 는, 식자 잉크 텍스트의 (바운딩 박스의) 폭이 식자 잉크 컨테이너 (1502) 의 텍스트 펜스 (1504) 와 실질적으로 동일한 폭을 가지도록, 컨테이너의 치수 정보에 관해 결정된다. 도 15c 는 컨테이너-기반 폰트 사이즈 (Sc) 에서 디지털 잉크 텍스트 (1400) 에 대응하는 식자 잉크 텍스트 (1500''), 및 텍스트 펜스 (1504) 를 갖는 식자 잉크 컨테이너 (1502) 를 도시한다. 볼 수 있는 바와 같이, 컨테이너-기반 폰트 사이즈 (Sc) 에서의 식자 잉크 텍스트 (1500'') 는 높이-기반 폰트 사이즈 (Sh) 에서의 식자 잉크 텍스트 (1500) 와 같이 텍스트 펜스 (1504) 내에 포함되지만, 컨테이너-기반 폰트 사이즈는 높이-기반 폰트 사이즈보다 약간 더 크고, 이와 같이 디지털 잉크 엘리먼트들의 관계에 보다 가깝게 닮아 있다.
이와 같이, 잉크 관리 시스템 (312) 이 식자 텍스트의 격납를 보장하기 위해 디폴트로서 컨테이너-기반 폰트 사이즈를 계산하고 적응시키도록 구성되는 경우에, 식자 결과는 미가공 잉크 입력과 가까운 충실도를 제공하는 것이 가능하다. 하지만, 그러한 간단한 메커니즘은 컨테이너의 사이즈, 그리고 따라서 텍스트 펜스에 기초한 만족스러운 결과들을 제공하지 못할 수도 있다.
예를 들어, 도 16 은 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (1600 및 1602) 을 도시한다. 핸드라이팅된 입력 (1600) 은 다수의 스트로크들로 핸드라이팅되고, 텍스트로서 검출되며 하나의 라인의 텍스트로 쓰여진 단어 "Hello" 로서 인식된다. 볼 수 있는 바와 같이, 핸드라이팅된 입력 (1600) 은 대문자화된 문자, 즉, "H", 어센더를 갖는 문자들, 즉, "l", 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “e” 및 “o” 를 포함한다. 핸드라이팅된 입력 (1602) 은 단일의 연속적인 스트로크로 핸드라이팅되고, 비-텍스트로서 검출되며, 직사각형으로서 인식된다. 추가로, 인식된 텍스트 (1600) 가 인식된 형상 (1602) 에 의해 둘러싸이므로, 형상 (1602) 은 컨테이너로서 검출된다.
예시적인 디지털 잉크 텍스트 (1600) 에 대해, 최상위-라인 (TL) (미도시) 은 글자 "H" 의 어센더의 상위 확장에서 결정될 수도 있고, 하위-라인 (LL) (미도시) 및 베이스-라인 (BL) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, 중앙-라인 (ML) (도시됨) 은 최상위-라인 (TL) 과 베이스-라인 (BL) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, 텍스트 높이 (h) 는 디지털 잉크 텍스트 (1600) 의 베이스-라인 (BL) 과 중앙-라인 (ML) 사이의 수직 거리로서 정의되고, 텍스트 바운딩 박스 (1604) 는 디지털 잉크 텍스트 (1600) 의 면적 범위로서 정의된다.
앞에서와 같이, 높이-기반 폰트 사이즈 (Sh) 는, 식자 잉크 텍스트의 비-어센더 및 비-디센더 부분들의 높이가 디지털 잉크 텍스트 (1600) 의 텍스트 높이 (h) 와 실질적으로 동일하도록 결정되고, 면적-기반 폰트 사이즈 (Sa) 는 식자 잉크 텍스트의 (바운딩 박스의) 폭이 디지털 잉크 텍스트 (1600) 의 바운딩 박스 (1604) 와 실질적으로 동일한 폭을 가지도록 결정된다. 도 17a 는 높이-기반 폰트 사이즈 (Sh) 에서 디지털 잉크 텍스트 (1600) 에 대응하는 식자 잉크 텍스트 (1700) 및 디지털 잉크 컨테이너 (1702) 에 대응하는 식자 잉크 컨테이너 (1702) 를 도시한다. 도 17b 는 면적-기반 폰트 사이즈 (Sa) 에서 디지털 잉크 텍스트 (1600) 에 대응하는 식자 잉크 텍스트 (1700'), 및 식자 잉크 컨테이너 (1702) 를 도시한다.
도 17a 및 도 17b 는 식자 잉크 컨테이너 (1702) 에 기초하여 잉크 관리 시스템 (312) 에 의해 결정되는 바와 같은 텍스트 펜스 (1704) 를 추가로 도시한다. 볼 수 있는 바와 같이, 높이-기반 폰트 사이즈 (Sh) 에서의 식자 잉크 텍스트 (1700) 및 면적-기반 폰트 사이즈 (Sa) 에서의 식자 잉크 텍스트 (1700') 양자는 텍스트 펜스 (1704) 내에 포함된다.
도 17c 는 컨테이너-기반 폰트 사이즈 (Sc) 에서 디지털 잉크 텍스트 (1600) 에 대응하는 식자 잉크 텍스트 (1700''), 및 텍스트 펜스 (1704) 를 갖는 식자 잉크 컨테이너 (1702) 를 도시한다. 컨테이너-기반 폰트 사이즈 (Sc) 는, 식자 잉크 텍스트의 (바운딩 박스의) 폭이 식자 잉크 컨테이너 (1702) 의 텍스트 펜스 (1704) 와 실질적으로 동일한 폭을 가지도록 앞에서와 같이 결정된다. 볼 수 있는 바와 같이, 컨테이너-기반 폰트 사이즈 (Sc) 에서의 식자 잉크 텍스트 (1700'') 는 높이-기반 폰트 사이즈 (Sh)에서의 식자 잉크 텍스트 (1700) 및 면적-기반 폰트 사이즈 (Sa) 에서의 식자 잉크 텍스트 (1700') 와 같이 텍스트 펜스 (1704) 내에 포함된다. 하지만, 컨테이너 (1702) 의 치수들 및 텍스트 펜스 정의에 대한 거리 설정들로 인해, 상대적으로 큰 식자 잉크 텍스트 (1700'') 가 컨테이너 (1702) 를 채우도록 컨테이너-기반 폰트 사이즈 (Sc) 는 비교적 크다.
도 16 에서 도시된 바와 같은 핸드라이팅된 입력 (1600 및 1602) 에 기초하여, 이러한 식자 결과는 명확하게 사용자의 의도가 아니었고, 높이-기반 폰트 사이즈 (Sh) 에서의 식자 잉크 텍스트 (1700) 가 그 의도에 명확하게 더 가깝다. 이에 따라, 본 단일 텍스트 라인 예들에서, 처음 단계로서, 높이- 및 면적-기반 폰트 사이즈들 (Sh 및 Sa) 의 가장 작은 폰트 사이즈를 계산하고 텍스트 격납 엘리먼트에 대해 비교하고, 그 다음에, 가장 작은 폰트 사이즈에서의 단일 텍스트 라인이 텍스트 격납 엘리먼트를 오버플로우하는 경우에, 다음 단계로서, 컨테이너-기반 폰트 사이즈 (Sc) 를 계산하도록, 잉크 관리 시스템 (312) 을 구성하는 것은 제 3 기준들을 만족시키면서 핸드라이팅된 입력을 존중하는 양호한 식자 결과를 제공한다.
이들 예들에서, 높이- 및 면적-기반 폰트 사이즈들 양자가 계산된다. 하지만, 이들 중 오직 하나만이 계산되는 것도 가능하다. 예를 들어, 잉크 관리 시스템 (312) 은 필요한 경우에 오직 높이- 및 컨테이너-기반 폰트 사이즈들 (Sh 및 Sc) 만이 계산되도록, 면적-기반 폰트 사이즈 (Sa) 를 결정하지 않도록 구성될 수도 있다. 대안적으로, 잉크 관리 시스템 (312) 은 오직 면적- 및 컨테이너-기반 폰트 사이즈들 (Sa 및 Sc) 만이 계산되도록, 높이-기반 폰트 사이즈 (Sh) 를 결정하지 않도록 구성될 수도 있다. 대안적으로, 폰트 사이즈들 (Sh, Sa 및 Sc) 의 모두가 계산된다.
가장 작은 폰트 사이즈에의 집착은 하지만 특히 다수 텍스트 라인 예들에 대해 식자 결과에서의 다른 문제점들을 야기할 수도 있다. 이러한 경우들에서, 추가적인 식자 메커니즘들이 이제 도 18 및 도 19 와 관련하여 설명된다. 도 18 은, 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (1800 및 1802) 을 도시한다. 핸드라이팅된 입력 (1800) 은 다수의 스트로크들로 핸드라이팅되고, 텍스트로서 검출되며 다수 라인들의 텍스트 (1800a, 1800b 및 1800c) 로 쓰여진 단어들 및 문법적 마크 "Patient is in the system?" 로서 인식된다. 제 1 텍스트 라인 (1800a) 은 단어들 "Patient is” 을 포함하고, 제 2 텍스트 라인 (1800b) 은 단어들 "in the” 을 포함하며, 제 2 텍스트 라인 (1800c) 은 단어들 및 문법적 마크 "the system?” 을 포함한다. 핸드라이팅된 입력 (1802) 은 단일의 연속적인 스트로크로 핸드라이팅되고, 비-텍스트로서 검출되며, 다이아몬드형으로서 인식된다. 추가로, 인식된 텍스트 (1800) 가 인식된 형상 (1802) 에 의해 둘러싸이므로, 형상 (1802) 은 컨테이너로서 검출된다.
볼 수 있는 바와 같이, 제 1 텍스트 라인 (1800a) 은 대문자화된 문자, 즉, "P", 어센더를 갖는 문자들, 예컨대, “t”, 지연된 스트로크를 갖는 문자들, 예컨대, “i” 및 “t”, 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “a”, “e”, “n” 및 “s” 를 포함하고, 제 2 텍스트 라인 (1800b) 은 어센더를 갖는 문자들, 즉, “t” 및 “h”, 지연된 스트로크를 갖는 문자들, 즉, “i” 및 “t”, 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “n” 및 “e” 를 포함하며, 그리고, 제 3 텍스트 라인 (1800c) 은 어센더를 갖는 문자들, 즉, “t” 및 “?”, 디센더를 갖는 문자, 즉, “y”, 지연된 스트로크를 갖는 문자들, 즉, “t” 및 “?”, 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “s” 및 “e” 를 포함한다.
다수 디지털 잉크 텍스트 라인들을 핸들링함에 있어서, 본 시스템 및 방법은 로컬 폰트 사이즈 계산에서 각각의 텍스트 라인에 대해 대응하는 치수 정보를 결정한다. 추가로, 치수 정보가 문자-레벨에서 결정됨에 따라, 텍스트 라인들 중 일부에서의 다수의 단어들의 존재는 어려움을 나타내지 않는다. 하지만, 치수 정보가 단어-레벨 (또는 문장-, 라인-, 문단- 또는 블록-레벨들) 에서 결정될 수 있을 것이어서, 산술평균들 및 평균들과 같은 임의의 비교 값들이 단어들 사이에 결정되도록 함이 이해된다.
예시적인 (제 1) 디지털 잉크 텍스트 라인 (1800a) 에 대해, (제 1) 최상위-라인 (TLa) (미도시) 은 제 2 글자 "t" 의 어센더의 상위 확장에서 결정될 수도 있고, (제 1) 하위-라인 (LLa) (미도시) 및 (제 1) 베이스-라인 (BLa) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, (제 1) 중앙-라인 (MLa) (도시됨) 은 제 1 최상위-라인 (TLa) 과 제 1 베이스-라인 (BLa) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, (제 1) 텍스트 높이 (ha) 는 제 1 디지털 잉크 텍스트 라인 (1800a) 의 제 1 베이스-라인 (BLa) 과 제 1 중앙-라인 (MLa) 사이의 수직 거리로서 정의된다.
예시적인 (제 2) 디지털 잉크 텍스트 라인 (1800b) 에 대해, (제 2) 최상위-라인 (TLb) (미도시) 은 글자 "h" 의 어센더의 상위 확장에서 결정될 수도 있고, (제 2) 하위-라인 (LLb) (미도시) 및 (제 2) 베이스-라인 (BLb) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, (제 2) 중앙-라인 (MLb) (도시됨) 은 제 2 최상위-라인 (TLb) 과 제 2 베이스-라인 (BLb) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, (제 2) 텍스트 높이 (hb) 는 제 2 디지털 잉크 텍스트 라인 (1800b) 의 제 2 베이스-라인 (BLb) 과 제 2 중앙-라인 (MLb) 사이의 수직 거리로서 정의된다.
예시적인 (제 3) 디지털 잉크 텍스트 라인 (1800c) 에 대해, (제 3) 최상위-라인 (TLc) (미도시) 은 문자 "?" 의 어센더의 상위 확장에서 결정될 수도 있고, (제 3) 하위-라인 (LLc) (미도시) 은 글자 "y" 의 디센더의 하위 확장에서 결정될 수도 있고, (제 3) 베이스-라인 (BLc) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있으며, (제 3) 중앙-라인 (MLc) (도시됨) 은 제 3 최상위-라인 (TLc) 과 제 3 베이스-라인 (BLc) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, (제 3) 텍스트 높이 (hc) 는 제 3 디지털 잉크 텍스트 라인 (1800c) 의 제 3 베이스-라인 (BLc) 과 제 3 하위-라인 (LLc) 사이의 수직 거리로서 정의된다.
잉크 관리 시스템 (312) 은, 식자로 변환할 때 핸드라이팅된 입력의 개별 텍스트 라인들을 존중하도록 구성될 수도 있어서, 개별적으로 결정된 디지털 잉크 텍스트 높이들 (ha, hb 및 hc) 각각으로부터, 높이-기반 폰트 사이즈들 (Sha, Shb 및 Shc) 이 개별 텍스트 라인들에 대해 전술한 방식으로 잉크 관리 시스템 (312) 에 의해 결정된다. 도 19a 는 높이-기반 폰트 사이즈 (Sha) 에서 제 1 디지털 잉크 텍스트 라인 (1800a) 에 대응하는 제 1 식자 잉크 텍스트 라인 (1900a), 높이-기반 폰트 사이즈 (Shb) 에서 제 2 디지털 잉크 텍스트 라인 (1800b) 에 대응하는 제 2 식자 잉크 텍스트 라인 (1900b), 및 높이-기반 폰트 사이즈 (Shc) 에서 제 3 디지털 잉크 텍스트 라인 (1800c) 에 대응하는 제 3 식자 잉크 텍스트 라인 (1900c) 을 갖는 디지털 잉크 텍스트 (1800) 에 대응하는 식자 잉크 텍스트 (1900) 을 도시한다.
도 19a 에서, 핸드라이팅된 텍스트 라인들 (1800a, 1800b 및 1800c) 사이의 간격은 식자 잉크 텍스트 라인들 (1900a, 1900b 및 900c) 에서 실질적으로 보존되지만, 정규화된 간격 또는 디지털 잉크 간격에 기초하여 계산된 다른 간격이 사용될 수도 있다. 추가로, 디지털 잉크 컨테이너 (1802) 에 대응하는 식자 잉크 컨테이너 (1902) 가 도 19a 에서 도시된다.
볼 수 있는 바와 같이, 상이한 디지털 잉크 텍스트 높이들 (ha, hb 및 hc) 에 기초하여, 높이-기반 폰트 사이즈들 (Sha, Shb 및 Shc) 은 서로 상이하다. 이 결과는 명확히 핸드라이팅된 입력 (1800) 에 기초하여 사용자의 의도를 반영하지 않는다. 텍스트 블록에 대해 단일의 폰트 사이즈를 제공하기 위해서, 그 텍스트 블록이 컨테이너와 같이 비-텍스트에 관련되든지 또는 관련되지 않든지 간에, 잉크 관리 시스템 (312) 은 (계산되는 경우) 면적-기반 폰트 사이즈와의 비교를 위해 그 텍스트 블록에 대해 가장 작은 높이-기반 폰트 사이즈를 취하도록 구성된다. 이에 따라, 도 19a 의 예에서, 잉크 관리 시스템 (312) 은 제 3 식자 잉크 텍스트 라인 (1900c) 의 높이-기반 폰트 사이즈 (Shc) 를 취한다. 대안적으로, 제 3 기준들을 고려하여, 가장 큰 값 또는 평균 또는 중간 값이 사용될 수 있을 것이다.
단계적 접근법에 기초하여, 선택된 타이포그래피-기반 폰트 사이즈는 인식된 컨테이너의 텍스트 격납 엘리먼트에 대해 비교된다. 도 19b 는 식자 잉크 컨테이너 (1902) 에 기초하여 잉크 관리 시스템 (312) 에 의해 결정되는 바와 같은 텍스트 펜스 (1904) 를 도시한다. 도 19b 는 추가로, 선택된 (제 3) 높이-기반 폰트 사이즈 (Shc) 에서 각각 디지털 잉크 텍스트 라인들 (1800a, 1800b 및 1800c) 에 각각 대응하는 식자 잉크 텍스트 라인들 (1900’a, 1900’b 및 1900’c) 을 갖는 디지털 잉크 텍스트 (1800) 에 대응하는 식자 잉크 텍스트 (1900') 를 도시한다. 다중-라인 식자 잉크 텍스트 (1900') 는 정규화된 값, 예컨대, 사전-정의된 값 또는 선택된 높이-기반 폰트 사이즈의 퍼센티지로서 계산된 값인 라인 간 간격을 갖는다. 볼 수 있는 바와 같이, 식자 잉크 텍스트 (1900') 는 컨테이너 (1902) 의 텍스트 펜스 (1904) 를 오버플로우한다.
이와 같이, 전술한 단계적 접근법에 기초하여, 본 시스템 및 방법은 그 다음에, 다음 스텝으로서 컨테이너 치수 스케일링된 폰트 사이즈를 계산할 것이다. 하지만, 본 예에서 텍스트의 다수의 라인들이 포함되기 때문에, 컨테이너-기반 폰트 사이즈 (Sc) 가 텍스트 펜스와 실질적으로 동일한 폭에서 식자 잉크 텍스트의 (바운딩 박스의) 폭을 제공함으로써 결정되기보다는, 잉크 관리 시스템 (312) 은, 다수의 텍스트 라인들에 걸친 식자 잉크 텍스트의 높이 (예컨대, 식자 잉크 텍스트 블록의 높이) 가 식자 잉크 컨테이너의 텍스트 펜스와 실질적으로 동등하도록, 컨테이너-기반 폰트 사이즈 (Sc) 를 결정하도록 구성된다.
앞에서와 같이, 잉크 관리 시스템 (312) 은 식자로 변환할 때, 핸드라이팅된 입력의 개별 텍스트 라인들을 존중하도록 구성될 수도 있다. 도 19c 는 컨테이너-기반 폰트 사이즈 (Sc) 에서 제 1 디지털 잉크 텍스트 라인 (1800a) 에 대응하는 제 1 식자 잉크 텍스트 라인 (1900''a), 컨테이너-기반 폰트 사이즈 (Sc) 에서 제 2 디지털 잉크 텍스트 라인 (1800b) 에 대응하는 제 2 식자 잉크 텍스트 라인 (1900''b), 및 컨테이너-기반 폰트 사이즈 (Sc) 에서 제 3 디지털 잉크 텍스트 라인 (1800c) 에 대응하는 제 3 식자 잉크 텍스트 라인 (1900''c) 을 갖는 디지털 잉크 텍스트 (1800) 에 대응하는 식자 잉크 텍스트 (1900'') 를 도시한다. 볼 수 있는 바와 같이, 컨테이너-기반 폰트 사이즈는 정규화된 값, 예컨대, 사전-정의된 값 또는 컨테이너-기반 폰트 사이즈의 퍼센티지로서 계산된 값인 라인 간 간격으로, 컨테이너의 상대적으로 더 작은 텍스트 펜스의 폭에 기초한다 (예컨대, 식자 잉크 텍스트 (1900'') 의 바운딩 박스 (1906) 는 도시된 바와 같이 식자 잉크 컨테이너 (1902) 의 텍스트 펜스 (1904) 와 실질적으로 동일한 폭을 갖는다). 이와 같이, 식자될 때, 다수의 텍스트 라인들을 포함하는 전체 텍스트 블록은 텍스트 펜스 (1904) 에 맞는다.
이와 같이, 컨테이너-기반 폰트 사이즈는 컨테이너의 포함된 텍스트 펜스의 치수들에 기초하여 본 시스템 및 방법에서 계산된다. 즉, 컨테이너-기반 폰트 사이즈는 텍스트 펜스의 폭 또는 높이에 기초하여 계산된다. 대안적으로, 또는 추가적으로, 텍스트 펜스의 폭 및 높이 양자 (즉, 면적) 는 컨테이너-기반 폰트 사이즈의 계산에서 고려될 수도 있다.
하지만 본 예에서, 컨테이너 (1902) 의 치수들 및 텍스트 펜스 정의에 대한 거리 설정들로 인해, 식자 잉크 텍스트 (1900') 가 컨테이너 (1902) 에 비해 상대적으로 작도록, 컨테이너-기반 폰트 사이즈 (Sc) 는 비교적 작다. 도 18 에서 도시된 바와 같은 핸드라이팅된 입력 (1800 및 1802) 에 기초하여, 이러한 식자 결과는 명확하게 사용자의 의도가 아니었고, 도 19b 로부터 알 수 있는 바와 같이, 선택된 높이-기반 폰트 사이즈 (Shc) 는 사용자 의도에 대한 더 가까운 충실도를 제공한다.
이러한 원하지 않은 결과는, 예컨대, 전술한 바와 같이 상이한 치수들 또는 형상의 텍스트 펜스를 이용하도록 잉크 관리 시스템 (312) 을 구성함으로써, 또는, 식자로 변환할 때 핸드라이팅된 입력에서 텍스트 라인들을 존중하지 않음으로써, 예컨대, 인식된 단어들이 수반되는 단어 간 공간들을 갖는 텍스트 라인들 사이에서 이동되도록 하는 식자 잉크 텍스트의 리플로우잉에 의해서, 시정될 수도 있다.
예를 들어, 본 시스템 및 방법은 다수의 텍스트 라인들이 존재할 때 단계적 접근법 내에서 다른 또는 상이한 스텝을 수행할 수도 있다. 즉, 타이포그래피-기반 폰트 사이즈들의 계산 및 텍스트 격납 엘리먼트와의 비교의 초기 단계 후에, 존재하는 경우, 잉크 관리 시스템 (312) 은, 후속 단계에서 그리고 HWR 시스템 (314) 의 인식 결과에 기초하여, 예를 들어, 그 비교가 식자 텍스트가 텍스트 격납 엘리먼트를 오버플로우할 것이라는 결과를 산출하는 경우에, 다수 라인들의 텍스트가 존재하는지 여부를 결정하도록 구성된다. 예를 들어 도 14 및 도 16 의 예들에 대한 결과일 것과 같이, 다수 라인들이 존재하지 않는다고 결정되는 경우에, 컨테이너-스케일링된 폰트 사이즈를 계산하는 다음 단계가 수행된다. 다수 라인들이 존재한다고 결정되는 경우에, 후속 단계는, 오버플로우가 발생하지 않도록 계산된 타이포그래피-기반 폰트 사이즈에서 다수 라인들이 리플로우될 수 있는지 여부를 결정하는 것으로 진행한다. 오버플로우가 여전히 발생하는 경우에는, 다음 단계가 수행된다.
도 19d 는 정규화된 값, 예컨대, 사전-정의된 값 또는 선택된 컨테이너-기반 폰트 사이즈의 퍼센티지로서 계산된 값인 라인 간 간격으로 그리고 허용되는 식자 잉크 텍스트의 인식된 단어들의 리플로우로 높이-기반 폰트 사이즈 (Shc) 에서의 식자 잉크 텍스트 (1900''') 를 도시한다. 따라서, 도 19d 에서 도시된 바와 같이, 식자 잉크 텍스트 (1900''') 는 높이-기반 폰트 사이즈 (Shc) 에서의 제 1 및 제 2 디지털 잉크 텍스트 라인들 (1800a 및 1800b) 의 병합된 콘텐츠에 대응하는 제 1 식자 잉크 텍스트 라인 (1900'''a) 및 높이-기반 폰트 사이즈 (Shc) 에서의 제 3 디지털 잉크 텍스트 라인 (1800c) 에 대응하는 제 2 식자 잉크 텍스트 라인 (1900'''b) 을 갖는다. 즉, 제 2 디지털 잉크 텍스트 라인 (1800b) 으로부터의 단어들 "in the" 은 제 1 디지털 잉크 텍스트 라인 (1800a) 의 단어들 "Patient is" 후에 병합되어서, 제 1 식자 잉크 텍스트 라인 (1900'''a) 은 단어들 "Patient is in the” 을 포함한다.
리플로우 (reflow) 는 텍스트 펜스의 치수들 및 텍스트 라인들에 대한 계산된 가장 작은 높이-기반 (또는 면적-기반) 폰트 사이즈에 기초하여 수행된다. 즉, 잉크 관리 시스템 (312) 은, 텍스트 라인들 (1800a 및 1800b) 의 인식된 단어들에 기초하여, 하이픈넣기, 고립화와 같은 리플로우 규칙들을 가지고 또는 없이, 예컨대, HWR 시스템 (314) 에 의해 식별되는 바와 같이 단어 경계들에서, 리플로우가 발생할 수 있는지 여부를 결정하고, 텍스트의 각 라인이 가장 작은 타이포그래피-기반 폰트 사이즈에서 텍스트 펜스 내에 맞도록, 텍스트 라인들(의 단어들)을 리플로우한다.
이 예에서, 가장 작은 높이-기반 폰트 사이즈 (Shc) 에서의 리플로우된 식자 텍스트는 제 3 기준들이 충족되도록 텍스트 격납 엘리먼트 (1904) 를 오버플로우하지 않는다. 따라서, 컨테이너-스케일링된 폰트 사이즈를 계산할 필요 없이, 높이-기반 폰트 사이즈가 로컬 폰트 사이즈로서 잉크 관리 시스템 (312) 에 의해 선택된다. 이와 같이, 식자 시에, 다수의 텍스트 라인들을 포함하는 전체 텍스트 블록은 핸드라이팅된 입력의 사이즈에 더 가까운 로컬 폰트 사이즈를 제공하면서 텍스트 펜스 (1904) 내에 맞게 된다.
격납된 텍스트를 수반하는 지금까지 설명된 예들에서, 식자 잉크 텍스트는, 예컨대 도 11c, 도 15, 도 17 및 도 19b 내지 도 19d 에서와 같이, 식자 잉크 컨테이너에서 중앙에 온다. 잉크 관리 시스템 (312) 은 격납된 텍스트가 예를 들어 텍스트 셀의 라벨로서 검출될 때 식자된 텍스트를 중앙에 오도록 구성될 수도 있다. 즉, HWR 시스템 (314) 에 의해 인식되는 바와 같이 텍스트 및 컨테이너의 관계는 컨테이너 내의 하나 이상의 텍스트 블록들로서 또는 텍스트 셀로서 해석될 수도 있다. 참조에 의해 상기 통합된 미국 특허 출원 번호 제 14/955,155 호에서 기술된 바와 같이, 컨테이너들은 텍스트 및/또는 비-텍스트 콘텐츠를 포함하는 형상인 것으로서 정의될 수도 있다. 즉, 컨테이너는 하나 이상의 텍스트 블록들, 하나 이상의 형상들 (이는 다시 컨테이너들 또는 셀들일 수도 있다), 또는 이들의 조합을 포함할 수도 있다. 다른 한편, 셀들은 하나 이상의 텍스트 블록들에서 오직 텍스트 콘텐츠만을 포함하는 컨테이너들로서 정의될 수도 있고, 셀 내의 텍스트는 셀의 라벨로서 취급될 수도 있다.
본 시스템 및 방법에서, 식자 잉크 텍스트는 텍스트 셀로서 검출되는 식자 잉크 컨테이너의 텍스트 펜스에 대해 수평으로 그리고 수직으로 양방으로 중앙에 온다. 이러한 방식으로, 텍스트 펜스는 셀 내의 텍스트 라벨의 바운딩 박스로서 처리될 수도 있고, 이와 같이 정규화된 라인 간 간격 및 단락화를 갖는 다수의 텍스트 라인들은 도 19d 의 예에서와 같이, 그 텍스트 '박스' 내의 텍스트 리플로우 또는 랩핑과 함께 지원될 수 있다. 이것은 또한 셀, 그리고 따라서 텍스트 박스의 리사이징이 텍스트 라벨의 폰트 사이즈의 리사이징 없이 수행되도록 허용하고, 이는 선택된 식자 잉크 폰트 사이즈가 셀을 오버플로우하는 식자 잉크 텍스트를 초래하거나, 사용자가 식자 잉크 텍스트가 이에 따라 리플로우될 수도 있도록 선택을 통해 셀의 사이즈를 감소시킬 때 바람직할 수도 있다.
예를 들어, 잉크 관리 시스템 (312) 은 폰트 사이즈 임계치로서 작용하는 (판독성의 목적을 위해) 최소 또는 보통의 식자 잉크 폰트 사이즈를 허용하도록 구성될 수도 있다 (즉, 로컬 폰트 사이즈가 최소 폰트 사이즈 미만인 것으로서 계산되는 경우에, 최소 또는 보통 사이즈는 로컬 폰트 사이즈로 사용되지 않는다). 이러한 경우들에서, 결과적인 식자 잉크 텍스트는 텍스트 펜스 또는 식자 잉크 셀 그 자체를 오버플로우할 수도 있다.
이것은 도 20a 에서 예시되고, 여기서, 식자 잉크 라벨 (2000) 은 식자 잉크 셀 (2002) 에서 중앙에 온다 (중앙은 십자에 의해 도시된다). 명확하게, 예를 들어 대응하는 디지털 잉크로부터 잉크 관리 시스템 (312) 에 의해 결정되는 바와 같은 라벨 (2000) 의 폰트 사이즈는 셀 (2002) 의 오버플로우를 야기한다. 사용자는 셀 (2002) 을 선택하고, 예를 들어 화살표들 (A 및/또는 B) 의 방향으로 리사이징 동작을 수행할 수 있다. 도 20b 는 동일한 폰트 사이즈에서의 식자 잉크 라벨 (2000) 이 그 안에 완전히 표함되고 나머지는 셀 라벨들에 대해 정의된 바와 같이 중앙에 디스플레이되는 리사이징된 식자 잉크 셀 (2002') 을 도시한다. 대안적으로, 본 시스템 및 방법은 최소/보통 폰트 사이즈 및 제 3 기준들 양방이 존중되도록 컨테이너/셀을 자동적으로 리사이징할 수도 있다.
이러한 사전-설정된, 그리고 (UI) 설정가능한, 치수 임계치 너머의 셀의 리사이징은 잉크 관리 시스템 (312) 으로 하여금 예를 들어 셀을 컨테이너로서 재정의하게 할 수도 있다. 이 경우에, 격납된 텍스트는 더 이상 리사이징된 컨테이너에서의 라벨로서 정의되지 않고, 라벨이라기보다는 텍스트 블록으로서 처리된다. 이것은 다른 텍스트 블록들 및 형상들이 리사이징된 컨테이너 내로 쉽게 입력되도록 허용한다. 대안적으로, 또는 추가적으로, 셀 정의의 손실은, HWR 시스템 (314) 이 텍스트를 텍스트 라벨에 자동적으로 링크하지 않는 방식으로 리사이징된 (또는 원래 그려진 사이즈의) 셀 내에서 추가적인 텍스트 또는 형상들이 핸드드로잉될 때 발생할 수도 있다. 컨테이너들을 셀들로서 재정의하기 위해 반대의 조건들이 사용될 수도 있다.
셀들과 달리, 컨테이너 내의 식자 잉크 텍스트는 잉크 관리 시스템 (312) 에 의해 디지털 잉크 텍스트로서 컨테이너 내에 동일한 상대적인 포지션에서 보유될 수도 있다. 이것은 식자 잉크 컨테이너의 텍스트 펜스보다는 디지털 잉크 바운딩 박스와 관련하여 식자 잉크 텍스트를 포지셔닝함으로써 달성된다. 예를 들어, 식자 잉크 텍스트의 중앙은 디지털 잉크 텍스트 블록 바운딩 박스에 관해 수평으로 중앙에 올 수도 있고, 식자 잉크 텍스트의 베이스-라인은 디지털 잉크 텍스트의 베이스-라인 상에서 보유될 수도 있다. 이러한 포지셔닝은 또한, (식자 잉크 텍스트 (900 및 900’) 가 바운딩 박스 (802) 에서 수평으로 중앙에 오고 디지털 잉크 텍스트 (800) 의 베이스-라인 (BL) 상에 있는 도 9a 및 도 9b 의 예들에서와 같이) 고립된 또는 비-포함된 텍스트에 대해, 그리고, 다이어그램 커넥터들과 같이 다른 비-텍스트 엘리먼트들에 관련된 텍스트에 대해 적용가능하다.
도 21 은, 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 상에 디지털 잉크로서 렌더링된 예시적인 핸드라이팅된 입력 (2100 및 2102) 을 도시한다. 핸드라이팅된 입력 (2100) 은 다수의 스트로크들로 핸드라이팅되고, 텍스트로서 검출되며 다수의 라인들의 텍스트 (2100a 및 2100b) 로 쓰여진 단어들 "New Ideas" 로서 인식된다. 제 1 텍스트 라인 (2100a) 은 단어 "New" 를 포함하고, 제 2 텍스트 라인 (2100b) 은 단어 "Ideas" 를 포함한다. 핸드라이팅된 입력 (2102) 은 단일의 연속적인 스트로크로 핸드라이팅되고, 비-텍스트로서 검출되며, 직사각형 (또는 정사각형) 으로서 인식된다. 추가로, 인식된 텍스트 (2100) 가 인식된 형상 (2102) 에 의해 둘러싸이므로, 형상 (2102) 은 컨테이너로서 검출된다.
볼 수 있는 바와 같이, 제 1 텍스트 라인 (2100a) 은 대문자화된 문자, 즉, "N", 어센더들도 디센더들도 갖지 않는 문자들, 즉, “e” 및 “w” 를 포함하고, 제 2 텍스트 라인 (2100b) 은 대문자화된 문자, 즉, "I", 어센더를 갖는 문자, 즉, "d", 및 어센더들도 디센더들도 갖지 않는 문자들, 즉, “e”, “a” 및 “s” 를 포함한다. 다수 디지털 잉크 텍스트 라인들을 핸들링하기 위해, 본 시스템 및 방법은 로컬 폰트 사이즈 계산에서 각각의 텍스트 라인에 대해 대응하는 치수 정보를 결정한다.
예시적인 (제 1) 디지털 잉크 텍스트 라인 (2100a) 에 대해, (제 1) 최상위-라인 (TLa) (미도시) 은 제 2 글자 "N" 의 어센더의 상위 확장에서 결정될 수도 있고, (제 1) 하위-라인 (LLa) (미도시) 및 (제 1) 베이스-라인 (BLa) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, (제 1) 중앙-라인 (MLa) (도시됨) 은 제 1 최상위-라인 (TLa) 과 제 1 베이스-라인 (BLa) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, (제 1) 텍스트 높이 (ha) 는 제 1 디지털 잉크 텍스트 라인 (2100a) 의 제 1 베이스-라인 (BLa) 과 제 1 중앙-라인 (MLa) 사이의 수직 거리로서 정의된다.
예시적인 (제 2) 디지털 잉크 텍스트 라인 (2100b) 에 대해, (제 2) 최상위-라인 (TLb) (미도시) 은 글자 "I" 의 어센더의 상위 확장에서 결정될 수도 있고, (제 2) 하위-라인 (LLb) (미도시) 및 (제 2) 베이스-라인 (BLb) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 결정될 수도 있고, (제 2) 중앙-라인 (MLb) (도시됨) 은 제 2 최상위-라인 (TLb) 과 제 2 베이스-라인 (BLb) 사이의 중앙-포인트에서 결정될 수도 있다. 추가로, 도시된 바와 같이, (제 2) 텍스트 높이 (hb) 는 제 2 디지털 잉크 텍스트 라인 (2100b) 의 제 2 베이스-라인 (BLb) 과 제 2 중앙-라인 (MLb) 사이의 수직 거리로서 정의된다.
추가로, 제 1 및 제 2 디지털 잉크 텍스트 라인들 (2100a 및 2100b) 의 확장들에 기초하여, 잉크 관리 시스템 (312) 은 (예컨대, 제 1 또는 상위 디지털 잉크 텍스트 라인 (2100a) 의 최상위-라인 (TLa) 및 제 2 또는 하위 디지털 잉크 텍스트 라인 (2100b) 의 하위-라인 (LLb) 에 의해 수직으로 정의되고, 디지털 잉크 (2100) 의 처음 및 마지막 포인트들에 의해 수평으로 정의되는 바와 같은) 디지털 잉크 (2100) 의 면적 범위에서 텍스트 바운딩 박스 (2104) 를 결정한다.
디지털 잉크 텍스트의 치수 정보로, HWR 시스템 (314) 은 텍스트 블록 및 비-텍스트 블록, 예컨대, 디지털 잉크 텍스트 (2100) 및 디지털 잉크 컨테이너 (2102) 의 상대적인 포지션들 및 치수들을 검출한다. 잉크 관리 시스템 (312) 은, 디지털 잉크 텍스트 (2100) 가 컨테이너 내의 텍스트 블록 또는 셀에서의 텍스트 라벨인지 여부를 결정하기 위해 (전술한 바와 같이) 사전-설정된, 그리고 (UI) 설정가능한, 포지션 및 치수 임계치들에 대하여, 이들 상대적인 포지션들 및 치수들을 고려하도록 구성될 수도 있다. 예를 들어, 잉크 관리 시스템 (312) 은, 전술한 바와 같이 마진 및 기하학적 설정들에 기초하여, 검출된 컨테이너의 텍스트 펜스를 결정하고, 셀로부터 컨테이너를 구별하기 위해서, 텍스트 바운딩 박스의 변들이 텍스트 펜스의 각각의 변들로부터 소정 거리(들) 또는 임계치(들) 내에 있는지 여부, 또는, 텍스트 블록의 중앙이 텍스트 펜스의 중앙으로부터 소정 거리 또는 임계치 내에 있는지 여부, 또는, 텍스트 바운딩 박스의 면적이 텍스트 펜스의 소정 면적 또는 임계치 내에 있는지 여부를 결정할 수도 있다.
본 예에서, 바운딩 박스 (2104) 의 면적은 컨테이너 (2102) 의 텍스트 펜스의 면적 훨씬 아래로서 고려될 수도 있고, 이와 같이, 잉크 관리 시스템 (312) 은 컨테이너 (2102) 내의 텍스트 블록인 것으로서 디지털 잉크 텍스트 (2100) 를 결정한다. 컨테이너들 내의 텍스트 블록들 (및 고립된 텍스트 및 다른 비-텍스트 엘리먼트들에 관련된 텍스트) 에 대해, 본 시스템 및 방법은, 타이포그래피-기반 폰트 사이즈들, 예컨대, 높이-기반 및 면적-기반 디지털 잉크 텍스트 사이즈 특성들에 기초하여 로컬 폰트 사이즈를 계산할 수도 있고, 디지털 잉크에서와 같이 식자된 컨테이너에 대해 동일한 상대적인 포지션에서 식자된 텍스트 블록을 유지할 수도 있다. 즉, 단계적 접근법의 오직 초기 단계만이 (요망되는 경우에 다중-라인 텍스트에 대해 후속 리플로우 스텝의 수행과 함께 또는 없이) 수행된다. 셀들의 텍스트 라벨들에 대해, 본 시스템 및 방법은, (제 1) 높이-기반 및/또는 면적-기반 폰트 사이즈 특성들, 필요한 경우 컨테이너-기반 폰트 사이즈 특성에 기초하여 로컬 폰트 사이즈를 계산함으로써 필요에 따라 단계적 접근법의 모든 스텝들을 수행하고, 식자된 셀에서 식자된 텍스트 블록을 센터링할 수도 있다. 하지만, 전술된 바와 같이, 이들 디지털 잉크 텍스트 사이즈 특성들의 다양한 조합들이 본 시스템 및 방법에 의해 이용될 수도 있다.
이에 따라, 본 예에서, 높이-기반 디지털 잉크 텍스트 사이즈 특성에 관해, 높이-기반 폰트 사이즈들 (Sha 및 Shb) 이 각각의 디지털 잉크 텍스트 높이들 (Ha 및 Hb) 로부터 잉크 관리 시스템 (312) 에 의해 결정된다. 도 22a 는 높이-기반 폰트 사이즈 (Sha) 에서 제 1 디지털 잉크 텍스트 라인 (2100a) 에 대응하는 제 1 식자 잉크 텍스트 라인 (2200a), 및 높이-기반 폰트 사이즈 (Shb) 에서 제 2 디지털 잉크 텍스트 라인 (2100b) 에 대응하는 제 2 식자 잉크 텍스트 라인 (2200b) 을 갖는 디지털 잉크 텍스트 (2100) 에 대응하는 식자 잉크 텍스트 (2200) 를 도시한다. 도 22a 에서, 핸드라이팅된 텍스트 라인들 (2100a 및 2100b) 사이의 간격은 식자 잉크 텍스트 라인들 (2200a 및 2200b) 에서 실질적으로 보존되지만, 정규화된 간격 또는 디지털 잉크 간격에 기초하여 계산된 다른 간격이 사용될 수도 있다. 추가로, 디지털 잉크 컨테이너 (2102) 에 대응하는 식자 잉크 컨테이너 (2202) 가 도 22a 에서 도시된다.
볼 수 있는 바와 같이, 실질적으로 동일한 디지털 잉크 텍스트 높이들 (ha 및 hb) 에 기초하여, 높이-기반 폰트 사이즈들 (Sha 및 Shb) 은 서로 실질적으로 동일하다. 이에 따라, 도 22a 의 예에서, 잉크 관리 시스템 (312) 은 로컬 폰트 사이즈 계산에 있어서 높이-기반 폰트 사이즈 (Sha 또는 Shb) 를 취한다.
이에 따라, 면적-기반 디지털 잉크 텍스트 사이즈 특성에 관해, 면적-기반 폰트 사이즈 (Sa) 는 잉크 관리 시스템 (312) 에 의해 결정된다. 하지만, 본 예에서 다수 라인들의 텍스트가 포함되기 때문에, 면적-기반 폰트 사이즈 (Sa) 가 디지털 잉크 텍스트의 바운딩 박스와 실질적으로 동일한 폭에서 식자 잉크 텍스트의 바운딩 박스의 폭을 제공함으로써 결정되기보다는, 잉크 관리 시스템 (312) 은, 다수의 텍스트 라인들에 걸친 식자 잉크 텍스트의 높이 및 폭 (예컨대, 식자 잉크 텍스트 블록의 면적) 이 디지털 잉크 텍스트의 바운딩 박스 (예컨대, 디지털 잉크 텍스트 블록의 면적) 와 실질적으로 동등하도록, 면적-기반 폰트 사이즈 (Sa) 를 결정하도록 구성된다.
도 22b 는 면적-기반 폰트 사이즈 (Sa) 에서 제 1 및 제 2 디지털 잉크 텍스트 라인들 (2100a 및 2100b) 에 각각 대응하는 제 1 및 제 2 식자 잉크 텍스트 라인들 (2200’a 및 2200’b) 을 갖는 디지털 잉크 텍스트 (2100) 에 대응하는 식자 잉크 텍스트 (2200') 를 도시한다. 볼 수 있는 바와 같이, 면적-기반 폰트 사이즈는 정규화된 값, 예컨대, 사전-정의된 값 또는 컨테이너-기반 폰트 사이즈의 퍼센티지로서 계산된 값인 라인 간 간격으로, 디지털 잉크 텍스트 블록의 면적에 기초한다 (예컨대, 식자 잉크 텍스트 (2200') 의 바운딩 박스 (2204) 는 도시된 바와 같이 디지털 잉크 텍스트 (2100) 의 바운딩 박스 (2104) 와 실질적으로 동일한 면적을 갖는다). 도 22b 에서, 식자 잉크 텍스트 (2200) 는 바운딩 박스 (2204) 에서 중앙에 오는 것으로 도시되지만, 좌측 정렬, 우측 정렬과 같은 다른 정렬들이 제공될 수도 있고, 또는 디지털 잉크 바운딩 박스에 대한 디지털 잉크의 상대적인 포지션이 보존될 수도 있다.
추가로, 도 22a 및 도 22b 에서 도시된 바와 같이, 식자 잉크 컨테이너 (2202) 내의 식자 잉크 텍스트 블록 (2200 및 2200’) 의 상대적인 포지션은 디지털 잉크 컨테이너 (2102) 내의 디지털 잉크 텍스트 블록 (2100) 의 상대적인 포지션에 관해 실질적으로 유지된다. 이 상대적인 포지션은 잉크 관리 시스템 (312) 에 의한 높이- 및 면적-기반 폰트 사이즈들 중의 가장 작은 것의 선택 시에 유지된다. 본 예에서, 높이-기반 폰트 사이즈 (Sha (또는 Shb)) 는 도 22c 에서 예시된 식자 출력을 초래하는 로컬 폰트 사이즈로서 선택되고, 이 도 22c 는 정규화된 라인 간 간격으로 높이-기반 폰트 사이즈 (Sha) 에서 제 1 및 제 2 디지털 잉크 텍스트 라인들 (2100a 및 2100b) 에 각각 대응하는 제 1 및 제 2 식자 잉크 텍스트 라인들 (2200’’a 및 2200’’b) 을 갖는 디지털 잉크 텍스트 (2100) 에 대응하는 식자 잉크 텍스트 (2200'') 를 도시한다. 추가로, 식자 잉크 텍스트 (2200'') 는 텍스트 블록에서 중앙에 오는 것으로 도시되지만, 좌측 정렬, 우측 정렬과 같은 다른 정렬들이 제공될 수도 있고, 또는 디지털 잉크 바운딩 박스에 대한 디지털 잉크의 상대적인 포지션이 보존될 수도 있다.
대안적으로, 본 시스템 및 방법은, 컨테이너 내에 공간이 있을 때 텍스트 펜스, 그리고 따라서 컨테이너 내에서 텍스트 블록을 센터링하는 것과 같이 컨테이너의 텍스트 펜스에 기초하여 텍스트 블록의 포지션이 조정되게 할 수도 있다.
도 23 은 적어도 텍스트를 포함하는 핸드라이팅된 콘텐츠에 대한 전술된 단계적 접근법의 예시적인 프로세스 (2300) 를 기술하는 본 시스템 및 방법의 로컬 폰트 사이즈 계산의 플로우 차트를 나타낸다. 예시적인 프로세스 (2300) 는 도시된 순서로 잉크 관리 시스템 (312) 에 의해 수행되는 일련의 단계들 (2302 내지 2320) 로 예시된다. 단계들의 수 및 그것들의 순서는 일 예이고, 더 적거나 더 많은 수의 단계들, 단계들의 결합 또는 분할 및/또는 단계들의 상이한 순서가 본 시스템 및 방법에서 가능함이 이해될 것이다. 추가로, 예시적인 프로세스 (2300) 는 예를 들어, HWR 시스템 (314) 에 의해 인식되는 바와 같이, 하나 이상의 텍스트의 라인들을 각각 갖는 하나 이상의 텍스트의 블록들과 관련하여 설명된다. 기술된 단계들은, 예를 들어, 디바이스 (300) 의 입력 인터페이스 (304) 를 통해 사용자로부터 수신된 식자 요구에 응답하여 한번에 모든 텍스트 블록들에 대해 잉크 관리 시스템 (314) 에 의해 수행될 수도 있거나, 또는, 텍스트 및 비-텍스트 콘텐츠가 입력되고 HWR 시스템 (312) 에 의해 해석됨에 따라 (나중에 자세히 설명되는) 온-더-플라이 (on-the-fly) 로 각 텍스트 블록/라인에 대해 차례대로 수행될 수도 있다.
단계 (2302) 에서, 각 텍스트 블록에 대한 면적-기반 폰트 사이즈 (Sa) 및/또는 텍스트의 각 블록의 각 텍스트 라인에 대한 높이-기반 폰트 사이즈 (Sh) 로서 타이포그래피-기반 텍스트 사이즈 특성들을 계산하기 위해 잉크 관리 시스템 (312) 에 의해 디지털 잉크 텍스트의 인쇄상의 정보가 이용된다.
단계 (2304) 에서, 각 텍스트 블록에 대한 면적-기반 폰트 사이즈 (Sa) 및/또는 각 텍스트 라인에 대한 각각의 높이-기반 폰트 사이즈 (Sh) 의 최선의 값은 사전-정의된 조건들에 기초하여 잉크 관리 시스템 (312) 에 의해 선택된다. 예를 들어, 전술된 바와 같이, '최선의 (best)' 값은 그 텍스트 블록 및 그것의 연관된 하나 이상의 텍스트 라인들에 대한 계산된 폰트 사이즈들의 최소, 최대, 평균, 산술평균 등의 폰트 사이즈일 수도 있다.
단계 (2306) 에서, 잉크 관리 시스템 (312) 은 각 텍스트 블록이 형상, 예컨대 컨테이너와 연관되는지 여부를 결정한다. 텍스트 블록이 형상과 연관되지 않는다고, 예컨대, 텍스트 블록이 고립되었다고 결정되는 경우에, 도시된 바와 같이 "아니오" 가 리턴되고, 프로세싱은 단계 (2308) 로 진행하며, 여기서, 면적-기반 폰트 사이즈 (Sa) 및/또는 높이-기반 폰트 사이즈 (Sh) 의 선택된 최선의 값이 그 텍스트 블록에 대한 로컬 폰트 사이즈로서 리턴된다. 텍스트 블록이 형상과 연관된다고, 예컨대, 텍스트 블록이 포함된다고 결정되는 경우에, 도시된 바와 같이 "예" 가 리턴되고, 그 텍스트 블록에 대해 프로세싱은 단계 (2310) 로 진행한다.
단계 (2310) 에서, 각각의 개별 텍스트 블록에 대해, 면적-기반 폰트 사이즈 (Sa) 및/또는 높이-기반 폰트 사이즈 (Sh) 의 선택된 최선의 값에서 연관된 텍스트 블록의 식자 텍스트가 연관된 형상의 텍스트 격납 엘리먼트를 오버플로우하는지 여부를 결정하기 위해, 연관된 식자 인식된 형상의 치수 정보가 잉크 관리 시스템 (312) 에 의해 사용된다. 텍스트 블록의 식자 텍스트가 연관된 형상의 텍스트 격납 엘리먼트를 오버플로우하지 않는다고 결정되는 경우에, 도시된 바와 같이 "아니오" 가 리턴되고, 프로세싱은 단계 (2308) 로 진행하며, 여기서, 면적-기반 폰트 사이즈 (Sa) 및/또는 높이-기반 폰트 사이즈 (Sh) 의 선택된 최선의 값이 그 텍스트 블록에 대한 로컬 폰트 사이즈로서 리턴된다. 텍스트 블록의 식자 텍스트가 연관된 형상의 텍스트 격납 엘리먼트를 오버플로우한다고 결정되는 경우에, 도시된 바와 같이 "예" 가 리턴되고, 프로세싱은 그 텍스트 블록에 대해 단계 (2312) 로 진행한다.
단계 (2312) 에서, 각각의 개별 텍스트 블록에 대해, 각 텍스트 블록에 대해 다수의 텍스트 라인들이 존재하는지를 결정하기 위해 잉크 관리 시스템 (312) 에 의해 디지털 잉크 텍스트의 인쇄상의 정보가 이용된다. 텍스트 블록이 다수의 텍스트 라인들을 갖는다고 결정되는 경우에, 도시된 바와 같이 "예" 가 리턴되고, 그 텍스트 블록에 대해 프로세싱은 단계 (2314) 로 진행한다.
단계 (2314) 에서, 각각의 개별 텍스트 블록에 대해, 잉크 관리 시스템 (312) 은, 단독으로 또는 HWR 시스템 (314) 과 함께, 연관된 형상의 텍스트 격납 엘리먼트 내에 포함되도록, 검출된 다수 라인들의 텍스트는 면적-기반 폰트 사이즈 (Sa) 및/또는 높이-기반 폰트 사이즈 (Sh) 의 선택된 최선의 값에서 식자 텍스트로서 리플로우될 수 있는지 여부를 결정한다. 텍스트 블록의 리플로우된 식자 텍스트가 연관된 형상의 텍스트 격납 엘리먼트를 오버플로우하지 않는다고 결정되는 경우에, 도시된 바와 같이 "아니오" 가 리턴되고, 프로세싱은 단계 (2316) 로 진행하며, 여기서, 면적-기반 폰트 사이즈 (Sa) 및/또는 높이-기반 폰트 사이즈 (Sh) 의 선택된 최선의 값이 리플로우된 식자 텍스트를 갖는 그 텍스트 블록에 대한 로컬 폰트 사이즈로서 리턴된다.
단계 (2314) 에서, 텍스트 블록의 리플로우된 식자 텍스트가 연관된 형상의 텍스트 격납 엘리먼트를 오버플로우한다고 결정되는 경우에, 도시된 바와 같이 "예" 가 리턴되고, 프로세싱은 그 텍스트 블록에 대해 단계 (2318) 로 진행한다. 유사하게, 단계 (2312) 에서, 텍스트 블록이 다수의 텍스트 라인들을 갖지 않는다고 결정되는 경우에, 도시된 바와 같이 "아니오" 가 리턴되고, 그 텍스트 블록에 대해 프로세싱은 단계 (2318) 로 진행한다.
단계 (2318) 에서, 각각의 개별 텍스트 블록에 대해, 텍스트의 각각의 연관된 블록에 대해 컨테이너-기반 폰트 사이즈 (Sc) 로서 치수-기반 텍스트 사이즈 특성을 계산하기 위해 각각의 연관된 식자 인식된 형상의 치수 정보가 잉크 관리 시스템 (312) 에 의해 사용된다. 프로세싱은 그 다음에 단계 (2320) 로 진행하고, 여기서, 컨테이너-기반 폰트 사이즈 (Sc) 는 각각의 연관된 텍스트 블록에 대한 로컬 폰트 사이즈로서 리턴된다.
도 2 의 예로 돌아가서, 잉크 관리 시스템 (312) 에 의해 결정되는 바와 같은 다이어그램 (200) 에 대한 로컬 폰트 사이즈 계산에 관해, 도 24 는 디지털 잉크 텍스트 엘리먼트들 (202b, 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 의 연관된 텍스트 높이 타이포그래피를 도시하고, 도 25 는 디지털 잉크 텍스트 엘리먼트들 (206a, 206b, 206c 및 208) 의 연관된 텍스트 면적 타이포그래피 및 디지털 링크 형상 엘리먼트들 (204a, 204c, 204e 및 204g) 에 대응하는 식자 잉크 형상들의 연관된 텍스트 펜스들을 도시한다. 도 25 에서, 식자 잉크 다이어그램 (100) 의 식자 잉크 컨테이너들 (102a, 104a, 104c, 104e 및 104g) 이 예시의 목적을 위해 디지털 잉크 다이어그램 (200) 의 디지털 잉크 컨테이너들 (202a, 204a, 204c, 204e 및 204g) 위에 각각 도시된다.
이 예의 로컬 폰트 사이즈 계산에서, 격리되도록 결정된 텍스트 블록들에 대해, 높이- 및 면적-기반 텍스트 사이즈 특성 양자가 인쇄상의 정보에 기초하여 측정되고, 예컨대 포함되는 형상과 연관되는 것으로 결정된 텍스트 블록들에 대해, 높이-기반 텍스트 사이즈 특성만이 인쇄상의 정보에 기초하여 측정되고, 필요에 따라 비-리플로우된 또는 리플로우된 방식들로 인식되는 바와 같이 식자 형상의 치수 정보에 대해 비교되며, 그 다음에, 필요한 경우 형상 스케일링된 폰트 사이즈가 계산된다. 이것은 단지 일 예이고, 하지만, 면적-기반 텍스트 사이즈 특성은 로컬 폰트 사이즈 계산에서 모든 텍스트 블록에 대해 측정될 수도 있다.
타이틀 엘리먼트의 텍스트 (208) "MY MIND-MAP" 에 대해, 최상위-라인 (TL8) (미도시) 은 처음 글자 "M" 의 어센더의 상위 확장에 있고, 하위-라인 (LL8) (미도시) 및 베이스-라인 (BL8) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에 있으며, 중앙-라인 (ML8) (도시됨) 은 문자들의 모두가 대문자화됨에 따라 최상위-라인 (TL8) 과 베이스-라인 (BL8) 사이의 사전-정의된 포인트에 있는 캡-라인으로서 정의된다. 이 타이포그래피에 기초하여, 약 11.5 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 33pt 의 높이-기반 폰트 사이즈 (Sh8) 가 (예컨대, 1pt = 0.3528mm 의 변환 및 잘라올림을 이용하여) 계산되도록 한다. 반면에, (고립된) 텍스트 (208) 의 바운딩 박스 (208a) 에 기초하여, 36pt 의 면적-기반 폰트 사이즈 (Sa8) 가 계산된다. 이에 따라, 높이-기반 및 면적-기반 폰트 사이즈들의 최소치가 선택되어서 33pt 의 로컬 폰트 사이즈가 계산되도록 한다.
제 1 레벨 노드 (202) 의 텍스트 (202b) "Main Concept" 에 대해, 도 23 에서 예시된 바와 같이 2 개의 텍스트 라인들 (202ba 및 202bc) 이 존재하므로, 개별 텍스트 라인들의 타이포그래피가 결정되고, 양 라인들에 대한 텍스트 펜스가 결정된다.
이에 따라, 텍스트 라인 (202ba) "Main" 에 대해, 최상위-라인 (TL2ba) (미도시) 은 글자 "M" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL2ba) (미도시) 및 베이스-라인 (BL2ba) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML2ba) (도시됨) 은 최상위-라인 (TL2ba) 과 베이스-라인 (BL2ba) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 4.9 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 14pt 의 높이-기반 폰트 사이즈 (Sh2ba) 가 계산되도록 한다
텍스트 라인 (202bb) "Concept" 에 대해, 최상위-라인 (TL2bb) (미도시) 은 글자 "t" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL2bb) (미도시) 은 글자 "p" 의 디센더의 하위 확장에 있으며, 베이스-라인 (BL2bb) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML2bb) (도시됨) 은 최상위-라인 (TL2bb) 과하위-라인 (LL2bb) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 4.8 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 14pt 의 높이-기반 폰트 사이즈 (Sh2bb) 가 계산되도록 한다.
텍스트 블록 (202b) 의 텍스트 라인들의 각각에 대한 높이-기반 폰트 사이즈들이 동일하므로, 높이-기반 폰트 사이즈는 14pt 로서 선택된다. 식자 잉크 컨테이너 (102a) 에 기초하여, 텍스트 펜스 (2500) 가 정의되고, 14pt 의 높이-기반 폰트 사이즈에서의 식자 텍스트는 텍스트 펜스 (2500) 를 오버플로우하지 않는다고 결정된다. 이와 같이, 높이-기반 폰트 사이즈가 후속 단계에서의 리플로우를 결정할 필요 없이 선택되어서, 14pt 의 로컬 폰트 사이즈를 초래한다. 완전성을 위해서, 컨테이너-기반 폰트 사이즈는 (텍스트 펜스 (2500) 의 면적에 기초하여) 18pt 이고, 이는 어떤 경우에도 높이-기반 폰트 사이즈보다 더 큼에 유의한다.
(제 1) 제 2 레벨 노드 (204) 의 텍스트 블록 (204b) "Idea 1" 에 대해, 최상위-라인 (TL4b) (미도시) 은 글자 "I" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL4b) (미도시) 및 베이스-라인 (BL4b) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML4b) (도시됨) 은 최상위-라인 (TL4b) 과 베이스-라인 (BL4b) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.4 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 10pt 의 높이-기반 폰트 사이즈 (Sh4b) 가 계산되도록 한다. 식자 잉크 컨테이너 (104a) 에 기초하여, 텍스트 펜스 (2502) 가 정의되고, 10pt 의 높이-기반 폰트 사이즈에서의 식자 텍스트는 텍스트 펜스 (2502) 를 오버플로우하지 않는다고 결정된다. 이와 같이, 높이-기반 폰트 사이즈가 컨테이너 스케일링된 폰트 사이즈를 결정할 필요 없이 선택되어서, 10pt 의 로컬 폰트 사이즈를 초래한다. 완전성을 위해서, 컨테이너-기반 폰트 사이즈는 (텍스트 펜스 (2502) 의 폭에 기초하여) 28pt 이고, 이는 어떤 경우에도 높이-기반 폰트 사이즈보다 더 크다.
(제 2) 제 2 레벨 노드 (204) 의 텍스트 블록 (204d) "Idea 2" 에 대해, 최상위-라인 (TL4d) (미도시) 은 글자 "I" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL4d) (미도시) 및 베이스-라인 (BL4d) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML4d) (도시됨) 은 최상위-라인 (TL4d) 과 베이스-라인 (BL4d) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.3 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 9pt 의 높이-기반 폰트 사이즈 (Sh4d) 가 계산되도록 한다. 식자 잉크 컨테이너 (104c) 에 기초하여, 텍스트 펜스 (2504) 가 정의되고, 9pt 의 높이-기반 폰트 사이즈에서의 식자 텍스트는 텍스트 펜스 (2504) 를 오버플로우하지 않는다고 결정된다. 이와 같이, 높이-기반 폰트 사이즈가 컨테이너 스케일링된 폰트 사이즈를 결정할 필요 없이 선택되어서, 9pt 의 로컬 폰트 사이즈를 초래한다. 완전성을 위해서, 컨테이너-기반 폰트 사이즈는 (텍스트 펜스 (2504) 의 폭에 기초하여) 28pt 이고, 이는 어떤 경우에도 높이-기반 폰트 사이즈보다 더 크다.
(제 3) 제 2 레벨 노드 (204) 의 텍스트 (204f) "Idea 3" 에 대해, 최상위-라인 (TL4f) (미도시) 은 글자 "I" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL4f) (미도시) 및 베이스-라인 (BL4f) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML4f) (도시됨) 은 최상위-라인 (TL4f) 과 베이스-라인 (BL4f) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.5 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 10pt 의 높이-기반 폰트 사이즈 (Sh4f) 가 계산되도록 한다. 식자 잉크 컨테이너 (104e) 에 기초하여, 텍스트 펜스 (2506) 가 정의되고, 10pt 의 높이-기반 폰트 사이즈에서의 식자 텍스트는 텍스트 펜스 (2506) 를 오버플로우하지 않는다고 결정된다. 이와 같이, 높이-기반 폰트 사이즈가 컨테이너 스케일링된 폰트 사이즈를 결정할 필요 없이 선택되어서, 10pt 의 로컬 폰트 사이즈를 초래한다. 완전성을 위해서, 컨테이너-기반 폰트 사이즈는 (텍스트 펜스 (2506) 의 폭에 기초하여) 28pt 이고, 이는 어떤 경우에도 높이-기반 폰트 사이즈보다 더 큼에 유의한다.
(제 4) 제 2 레벨 노드 (204) 의 텍스트 블록 (204h) "Idea 4" 에 대해, 최상위-라인 (TL4h) (미도시) 은 글자 "I" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL4h) (미도시) 및 베이스-라인 (BL4h) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML4h) (도시됨) 은 최상위-라인 (TL4h) 과 베이스-라인 (BL4h) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.3 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 9pt 의 높이-기반 폰트 사이즈 (Sh4h) 가 계산되도록 한다. 식자 잉크 컨테이너 (104g) 에 기초하여, 텍스트 펜스 (2508) 가 정의되고, 9pt 의 높이-기반 폰트 사이즈에서의 식자 텍스트는 텍스트 펜스 (2508) 를 오버플로우하지 않는다고 결정된다. 이와 같이, 높이-기반 폰트 사이즈가 컨테이너 스케일링된 폰트 사이즈를 결정할 필요 없이 선택되어서, 9pt 의 로컬 폰트 사이즈를 초래한다. 완전성을 위해서, 컨테이너-기반 폰트 사이즈는 (텍스트 펜스 (2508) 의 폭에 기초하여) 28pt 이고, 이는 어떤 경우에도 높이-기반 폰트 사이즈보다 더 큼에 유의한다.
식자 잉크 컨테이너들 (104a, 104c, 104e 및 104g) 의 각각은 (도 1 에서 도시된 바와 같이) 동일한 치수들을 가져서, 각각의 텍스트 펜스들 (2502, 2504, 2506 및 2508) 은 동일한 치수들을 가짐에 유의한다. 이 결과는, 예를 들어 HWR 시스템 (314), 또는 잉크 관리 시스템 (312) 에 의해 획득될 수도 있고, HWR 시스템 (314) 에 의해 해석되는 바와 같이 동일한 계층적 레벨의 컨테이너들에 대해 검출된 컨테이너 치수들을 정규화한다. 이러한 정규화는, 임의의 포함된 텍스트의 로컬 식자 잉크 폰트 사이즈에 대한 영향을 고려하여, 동일 레벨의 모든 컨테이너들을 최소 또는 최대 컨테이너의 치수들로, 또는 산술평균 또는 평균 컨테이너 치수들로 설정하는 것과 같이 다수의 방식들로 수행될 수 있다. 도시된 예에서, 제 2-레벨 노드들 (204) 의 최대 핸드드로잉된 타원형, 즉, 타원형 (204e) 의 치수들이 취해진다. 이러한 정규화는 원하는 경우 수행되지 않을 수도 있지만, 여전히 제 1 및 제 2 기준들에 대한 충실도를 유지하여서, 도 1 에서의 것보다는 도 6 또는 도 7 에서와 같은 식자 결과가 초래된다.
(제 1) 제 3 레벨 노드 (206) 의 텍스트 (206a) "Item 1" 에 대해, 최상위-라인 (TL6a) (미도시) 은 글자 "t" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL6a) (미도시) 및 베이스-라인 (BL6a) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML6a) (도시됨) 은 최상위-라인 (TL6a) 과 베이스-라인 (BL6a) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.4 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 10pt 의 높이-기반 폰트 사이즈 (Sh6a) 가 계산되도록 한다. 반면에, (고립된) 텍스트 (206a) 의 바운딩 박스 (206aa) 에 기초하여, 20pt 의 면적-기반 폰트 사이즈 (Sa6a) 가 계산된다. 이에 따라, 높이-기반 및 면적-기반 폰트 사이즈들의 최소치가 선택되어서 10pt 의 로컬 폰트 사이즈가 계산되도록 한다.
(제 2) 제 3 레벨 노드 (206) 의 텍스트 (206b) "Item 2" 에 대해, 최상위-라인 (TL6b) (미도시) 은 숫자 "1" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL6b) (미도시) 및 베이스-라인 (BL6b) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML6b) (도시됨) 은 최상위-라인 (TL6b) 과 베이스-라인 (BL6b) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.3 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 9pt 의 높이-기반 폰트 사이즈 (Sh6b) 가 계산되도록 한다. 반면에, (고립된) 텍스트 (206b) 의 바운딩 박스 (206ba) 에 기초하여, 18pt 의 면적-기반 폰트 사이즈 (Sa6b) 가 계산된다. 이에 따라, 높이-기반 및 면적-기반 폰트 사이즈들의 최소치가 선택되어서 9pt 의 로컬 폰트 사이즈가 계산되도록 한다.
(제 3) 제 3 레벨 노드 (206) 의 텍스트 (206c) "Item 3" 에 대해, 최상위-라인 (TL6c) (미도시) 은 글자 "t" 의 어센더의 상위 확장에서 있고, 하위-라인 (LL6c) (미도시) 및 베이스-라인 (BL6c) (도시됨) 은 문자들의 각각의 최저 비-디센더 포인트들의 평균에서 있고, 중앙-라인 (ML6c) (도시됨) 은 최상위-라인 (TL6c) 과 베이스-라인 (BL6c) 사이의 중앙-포인트에 있다. 이 타이포그래피에 기초하여, 약 3.1 mm 의 텍스트 높이 (h) 가 잉크 관리 시스템 (312) 에 의해 측정되어서, 9pt 의 높이-기반 폰트 사이즈 (Sh6c) 가 계산되도록 한다. 반면에, (고립된) 텍스트 (206c) 의 바운딩 박스 (206ca) 에 기초하여, 14pt 의 면적-기반 폰트 사이즈 (Sa6c) 가 계산된다. 이에 따라, 높이-기반 및 면적-기반 폰트 사이즈들의 최소치가 선택되어서 9pt 의 로컬 폰트 사이즈가 계산되도록 한다.
따라서, 다이어그램 텍스트 블록 엘리먼트들에 대한 이들 상이한 계산된 로컬 폰트 사이즈들에 기초하여 디지털 잉크 다이어그램 (200) 에 대해 식자가 수행된 경우에, 원하지 않은 식자 잉크 다이어그램 (700) 이 초래될 것이다. 이러한 식자에 의해 제 1 기준들이 만족될 수도 있지만, 텍스트 블록들에 걸친 일부 정규화 없이는, 제 2 기준들은 만족되지 않는다. 전술된 바와 같이, 잉크 관리 시스템 (312) 은, 텍스트 블록들을 각각의 폰트 사이즈들이 정의될 수도 있는 카테고리들로 분류함으로써 정규화를 제공한다, 예컨대, 3 개의 식자 단계들 중의 전술된 제 2 단계. 이것은, 핸드라이팅된 입력의 결정된 치수 정보, 및/또는 인식된 컨테이너들/셀들의 결정된 치수 정보, 및/또는 콘텐츠의 검출된 구조에 기초하여 텍스트 블록들을 그룹들로 소팅하는 것, 및 각각의 카테고리에 대해 적절한 폰트 사이즈를 결정하는 것에 의해 행해져서, 제 1, 제 2 및 제 3 기준들이 만족되도록 한다.
치수 정보에 관해, 핸드라이팅된 입력 또는 로컬 폰트 사이즈들의 타이포그래피의 양태들이 분류화를 제공하기 위해 잉크 관리 시스템 (312) 에 의해 사용되어서, 제 1 및 제 2 기준들이 만족되도록 한다. 구조에 관해, 텍스트 및 비-텍스트 형상들의 해석된 관계들이 분류화를 제공하기 위해 잉크 관리 시스템 (312) 에 의해 사용되어서, 제 1 및 제 2 기준들이 만족되도록 한다.
타이포그래피에 관해, 잉크 관리 시스템 (312) 은 높이 값들 사이의 증가의 비율을 결정하기 위해서 결정된 텍스트 높이들 (h) 을 비교할 수도 있다. 이들 비율들은 각각의 텍스트 높이들을 갖는 텍스트 블록들을 상이한 카테고리들로 그룹핑하기 위해서 하나 이상의 임계치들에 대하여 비교된다. 예를 들어, 잉크 관리 시스템 (312) 은 최소 텍스트 높이로부터 오름차순으로 텍스트 높이들을 비교하고, 텍스트 높이들의 각각의 비교된 쌍의 비율을 결정한다. 문자, 단어, 라인 및 텍스트 블록 레벨들의 디지털 잉크 텍스트 높이에 관한 보다 많은 또는 다른 인쇄상의 정보가 이러한 비교들을 위해 본 시스템 및 방법에 의해 또한 사용될 수 있을 것임이 이해될 것이다.
표 1 은 오름차순으로 소팅된 텍스트 블록들 (202b (텍스트 라인들 (202ba 및 202bb) 포함), 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 을 포함한다. 각 소팅된 쌍 사이의 퍼센티지 증가 (예컨대, 비율) 가 또한 포함된다. 모든 텍스트 높이들을 최소 또는 최대 텍스트 높이에 대해 비교하는 것, 산술평균 또는 평균 텍스트 높이를 결정하는 것 및 이 값으로부터 텍스트 높이들의 편차를 결정하는 것, (적응적) 클러스터링 알고리즘들과 같은 다른 비교 모델들이 가능함이 이해될 것이다.
텍스트 블록 | 디지털 잉크 텍스트 높이 (mm) | 이전 높이로부터의 증가 (%) | 새로운 카테고리? |
할당된 카테고리 |
206c “Item 3” | 3.1 | - | 예 | 1 |
206b “Item 2” | 3.3 | 6% | 아니오 | 1 |
204d “Item 2” | 3.3 | 0% | 아니오 | 1 |
204h “Item 4” | 3.3 | 0% | 아니오 | 1 |
206a “Item 1” | 3.4 | 3% | 아니오 | 1 |
204b “Idea 1” | 3.4 | 0% | 아니오 | 1 |
204f “Idea 3” | 3.5 | 3% | 아니오 | 1 |
202bb “Concept” | 4.8 | 37% | 예 | 2 |
202ba “Main” | 4.9 | 2% | 아니오 | 2 |
208 “MY MIND-MAP” | 11.5 | 135% | 예 | 3 |
최소 텍스트 높이를 갖는 텍스트 블록(들)은 잉크 관리 시스템 (312) 에 의해 (제 1) 베이스 카테고리 "1" 에 할당된다. 표 1 에서 이것은 텍스트 블록 (206c) 이다. 텍스트 높이의 비율 또는 퍼센티지 증가가 사전-정의된, 및/또는 예를 들어 UI 설정가능한, 임계치보다 더 클 때, 새로운 카테고리가 할당된다. 임계치는 제 1 기준들이 만족된 채로 유지되도록 설정된다. 즉, 핸드라이팅된 텍스트 사이즈들에서의 비교적 현저한 차이들은 식자 버전에서 나타나도록 된다. 표 1 의 예에서, 임계치는 약 20% 로 설정된다. 하나 이상의 임계치들은 예컨대 사전설정 및/또는 UI 를 통해 수동으로 설정되거나 잉크 입력 그자체로부터 동적으로 결정될 수도 있다.
이에 따라, 20% 미만의 이전의 더 작은 텍스트 높이 위로의 텍스트 높이 증가를 각각 갖는 텍스트 블록들 (204b, 204d, 204f, 204h, 206a 및 206b) 의 각각은 모두 베이스 카테고리에 할당된다. 텍스트 라인 (202bb) 에서, 이전에 더 작은 텍스트 높이로부터의 텍스트 높이 차이는 임계치 위이고, 따라서, 잉크 관리 시스템 (312) 은 이 텍스트 라인을 (제 2) 후속 카테고리 "2" 에 할당한다. 텍스트 라인 (202ba) 은 20% 미만의 텍스트 라인 (202bb) 의 것 위의 텍스트 높이 증가를 가지고, 따라서, 동일한 카테고리에 할당된다. 텍스트 블록 (208) 에서, 이전에 더 작은 텍스트 높이로부터의 텍스트 높이 차이는 임계치 위이고, 따라서, 잉크 관리 시스템 (312) 은 이 텍스트 블록을 (제 3) 마지막 카테고리 "3" 에 할당한다.
이러한 텍스트 블록 분류에 기초하여, 다이어그램 (200) 의 타이틀 블록 (208) 은 그 자신의 카테고리에 포함되고, (제1-레벨) 중앙 노드 (202) 의 텍스트 블록 (202b) 은 그 자신의 카테고리에 포함되며, (제2-레벨) 분기된 노드들 (204) 및 (제3-레벨) 리스트 노드들 (206) 의 텍스트 블록들은 동일한 카테고리에 포함됨을 알 수 있다. 이러한 분류의 추가적인 또는 더 적은 입도는, 임계치를 조정하는 것에 의해, 예를 들어 상이한 계층적 레벨들에 대해 임계치들의 셋트를 정의 및 적용하는 것에 의해, 또는 로컬 폰트 사이즈들과 같은 상이한 인쇄상의 정보를 비교하는 것에 의해 제공될 수도 있다. 이러한 방식으로, 디지털 잉크 텍스트 엘리먼트들 또는 블록들에 대응하는 식자 잉크 텍스트 엘리먼트들 또는 블록들이 유사하게 분류된다.
예를 들어, 잉크 관리 시스템 (312) 은 그 값들 사이의 증가의 비율을 결정하기 위해 결정된 로컬 폰트 사이즈들을 비교할 수도 있다. 앞에서와 같이,, 이들 비율들은 각각의 텍스트 높이들을 갖는 텍스트 블록들을 상이한 카테고리들로 그룹핑하기 위해서 하나 이상의 임계치들에 대하여 비교된다. 예를 들어, 잉크 관리 시스템 (312) 은 최소치로부터 오름차순으로 로컬 폰트 사이즈들을 비교하고, 각각의 비교된 쌍의 비율을 결정한다.
표 2 는 오름차순으로 소팅된 텍스트 블록들 (202b (로컬 폰트 사이즈는 전체 블록 (202b) 에 대한 것이므로, 텍스트 라인들 (202ba 및 202bb) 은 포함되지 않음), 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 을 포함한다. 각 소팅된 쌍 사이의 퍼센티지 증가 (예컨대, 비율) 가 또한 포함된다. 모든 로컬 폰트 사이즈들을 최소 또는 최대 로컬 폰트 사이즈에 대해 비교하는 것, 산술평균 또는 평균 로컬 폰트 사이즈를 결정하는 것 및 이 값으로부터 로컬 폰트 사이즈들의 편차를 결정하는 것 등과 같은 다른 비교 모델들이 가능함이 이해될 것이다.
텍스트 블록 | 로컬 폰트 사이즈 (pt) | 이전 폰트 사이즈로부터의 증가 (%) | 새로운 카테고리? |
할당된 카테고리 |
206c “Item 3” | 9 | - | 예 | 1 |
206b “Item 2” | 9 | 0% | 아니오 | 1 |
204d “Idea 2” | 9 | 0% | 아니오 | 1 |
204h “Idea 4” | 9 | 0% | 아니오 | 1 |
206a “Item 1” | 10 | 11% | 아니오 | 1 |
204b “Idea 1” | 10 | 0% | 아니오 | 1 |
204f “Idea 3” | 10 | 0% | 아니오 | 1 |
202b “Main Concept” | 14 | 40% | 예 | 2 |
208 “MY MIND-MAP” | 33 | 136% | 예 | 3 |
최소 로컬 폰트 사이즈를 갖는 텍스트 블록(들)은 잉크 관리 시스템 (312) 에 의해 (제 1) 베이스 카테고리 "1" 에 할당된다. 표 2 에서 이것은 텍스트 블록 (206c) 이다. 임계치는 앞에서와 같이 설정되고, 표 2 의 예에서, 임계치는 약 20% 로 설정된다.
이에 따라, 20% 미만의 이전의 더 작은 로컬 폰트 사이즈 위로의 로컬 폰트 사이즈 증가를 각각 갖는 텍스트 블록들 (204b, 204d, 204f, 204h, 206a 및 206b) 의 각각은 모두 베이스 카테고리에 할당된다. 텍스트 블록 (202b) 에서, 이전에 더 작은 로컬 폰트 사이즈로부터의 로컬 폰트 사이즈 차이는 임계치 위이고, 따라서, 잉크 관리 시스템 (312) 은 이 텍스트 블록을 (제 2) 후속 카테고리 "2" 에 할당한다. 텍스트 블록 (208) 에서, 이전에 더 작은 로컬 폰트 사이즈로부터의 로컬 폰트 사이즈 차이는 임계치 위이고, 따라서, 잉크 관리 시스템 (312) 은 이 텍스트 블록을 (제 3) 마지막 카테고리 "3" 에 할당한다. 이러한 방식으로, 디지털 잉크 텍스트 엘리먼트들 또는 블록들에 대응하는 식자 잉크 텍스트 엘리먼트들 또는 블록들이 유사하게 분류된다.
로컬 폰트 사이즈에 기초한 텍스트 블록 분류는 따라서 텍스트 블록에 기초한 것과 동일하다. 로컬 폰트 사이즈의 각각이 핸드라이팅된 입력의 각 텍스트 블록의 높이-기반 폰트 사이즈 (Sh) 이도록 결정되었기 때문에, 이것은 본 예의 경우이다. 하지만, 텍스트 블록들의 로컬 폰트 사이즈가 면적-기반 또는 컨테이너-기반 폰트 사이즈들로서 결정되는 핸드라이팅된 다이어그램 및 다른 구조화된 입력에 대해, 텍스트 높이와 로컬 폰트 사이즈 사이의 비교들은 상이한 분류 결과들을 제공할 수도 있다. 이에 따라, 잉크 관리 시스템 (312) 은, 디지털 및 식자 잉크의 상이한 인쇄상의 및 구조적 정보에 대해 다수의 비교 모델들을 수행하고, 제 1 및 제 2 (및 제 3) 기준들에 최상으로 충실한 식자를 위해 그 비교 결과를 이용하도록 구성될 수도 있거나, 또는, 이들 다양한 모델 동작들은 사용자들에 의한 선택을 위해 제공될 수도 있다.
추가적으로, 또는 대안적으로, 잉크 관리 시스템 (312) 음 텍스트 블록 분류를 제공 또는 증강시키기 위해 HWR 시스템 (314) 에 의해 해석되는 콘텐츠 엘리먼트들의 관계들을 이용할 수도 있다. 예를 들어, 계층적 구조를 결정하는 HWR 시스템 (314) 에 의해 검출된 다이어그램 엘리먼트들의 관계들은, 계층의 각 레벨의 각 텍스트 엘리먼트가 잉크 관리 시스템 (312) 에 의해 각각의 카테고리들에 또는 계층적 레벨들에 기초하여 조정된 텍스트 엘리먼트들의 인쇄상의 정보에 기초하여 이루어진 할당들에 할당되도록 사용될 수 있을 것이다.
예시적인 다이어그램 (200) 에 대해, 잉크 관리 시스템 (312) 은 내림차순으로 소팅된 텍스트 블록들 (202b, 204b, 204d, 204f, 204h, 206a, 206b, 206c 및 208) 의 계층적 레벨들 및 노드들을 포함하는 표 3 에서 포함된 바와 같은 카테고리들을 할당할 수도 있다.
텍스트 블록 | 노드 | 계층 레벨 | 새로운 카테고리? |
할당된 카테고리 |
206a “Item 1” | 3 | 제 3 | 예 | 1 |
206b “Item 2” | 3 | 제 3 | 아니오 | 1 |
206c “Item 3” | 3 | 제 3 | 아니오 | 1 |
204b “Idea 1” | 2 | 제 2 | 예 | 2 |
204d “Idea 2” | 2 | 제 2 | 아니오 | 2 |
204f “Idea 3” | 2 | 제 2 | 아니오 | 2 |
204h “Idea 4” | 2 | 제 2 | 아니오 | 2 |
202b “Main Concept” | 1 | 제 1 | 예 | 3 |
208 “MY MIND-MAP” | 0 | 타이틀 | 예 | 4 |
최저의 계층적 레벨에서의 텍스트 블록(들)은 잉크 관리 시스템 (312) 에 의해 (제 1) 베이스 카테고리 "1" 에 할당되고, 그 다음으로 더 높은 레벨들은 다음 카테고리들에 할당된다. 따라서, 표 3 에서, 제 3 레벨 노드들 (206) 의 텍스트 블록들 (206a, 206b 및 206c) 은 베이스 카테고리에 할당되고, 제 2 레벨 노드들 (204) 의 텍스트 블록들 (204b, 204d, 204f, 204h) 은 (제 2) 후속 카테고리 "2" 에 할당되며, 제 1 레벨 노드들 (202) 의 텍스트 블록들 (202b) 은 (제 3) 후속 카테고리 "3" 에 할당되며, 그리고 타이틀 노드의 텍스트 블록 (208) 은 (제 4) 마지막 카테고리 "4" 에 할당된다. 이러한 방식으로, 디지털 잉크 텍스트 엘리먼트들 또는 블록들에 대응하는 식자 잉크 텍스트 엘리먼트들 또는 블록들이 유사하게 분류된다.
알 수 있는 바와 같이, 이것은 표 1 및 표 2 의 모델들보다 추가의 카테고리를 제공한다. 식자 결과에 대한 이 추가의 카테고리의 영향 및 이 영향에 기초하여 제 1 및 제 2 기준들이 만족되는지 여부는 이하에서 논의된다.
각 카테고리에서의 폰트 사이즈의 일관성을 제공하고 그에 의해 제 1 및 제 2 기준들의 만족을 보장하기 위해, 잉크 관리 시스템 (312) 은 식자 잉크 텍스트에 대한 정규화된 (제 2) 폰트 사이즈를 생성하기 위해 글로벌 폰트 사이즈 정규화를 적용한다, 예컨대, 3 개의 식자 단계들 중의 전술된 제 3 단계. 가장 단순한 형태에서, 이것은, 각각의 (생성된) 카테고리의 텍스트 블록들에 대해 계산된 최소 로컬 식자 잉크 폰트 사이즈를 최종 식자 결과에서의 카테고리의 텍스트 블록들에 적용하고, 그에 의해 각 카테고리의 적절한 로컬 (제 1) 폰트 사이즈에 기초하여 정규화된 (제 2) 폰트 사이즈를 결정함으로써 달성된다. 대안적으로, 제 1 및 제 2 기준들에 대한 충실도를 보유하면서 산술평균 또는 평균 값이 사용될 수 있을 것이다.
이와 같이 예시적인 다이어그램 (200) 에 대해, 표 2 로부터 볼 수 있는 바와 같이, 제 1 카테고리 1 에 대해 최소 로컬 폰트 사이즈는 9pt 이어서 제 3 레벨 노드들 (206) 의 텍스트 블록들 (206a, 206b 및 206c) 및 제 2 레벨 노드들 (204) 의 텍스트 블록들 (204b, 204d, 204f, 204h) 은 그 폰트 사이즈로 식자되도록 되고, 제 2 카테고리 2 에 대해 (최소) 로컬 폰트 사이즈는 14pt 이어서 제 1 레벨 노드 (202) 의 텍스트 블록 (202b) 은 그 폰트 사이즈로 식자되도록 되며, 제 3 카테고리 3 에 대해 (최소) 로컬 폰트 사이즈는 33pt 이어서 (제 0) 타이틀 노드의 텍스트 블록 (208) 은 그 폰트 사이즈로 식자되도록 된다. 결과로서, 도 1 에 나타낸 식자 잉크 다이어그램 (100) 이 생성된다.
로컬 폰트 사이즈들은 카테고리 (또는 계층 레벨) 에 기초하여 하나 이상의 사전-정의된, 및/또는 UI 설정가능한, 스케일링 팩터들에 의해 스케일링될 수도 있다. 예를 들어 문단 텍스트에 대해 전술된 '보통의 (normal)' 폰트 사이즈를 제공하는 것과 같이 보다 전문적인 식견의 식자 출력을 제공하기 위해서, 예를 들어, 약 80% 의 (글로벌) 스케일링 팩터가 적용될 수도 있다.
표 3 에서와 같이 대안적인 분류에 관해, 제 1 카테고리 1 에 대해 최소 로컬 폰트 사이즈는 9pt 이어서 제 3 레벨 노드들 (206) 의 텍스트 블록들 (206a, 206b 및 206c) 은 여전히 그 폰트 사이즈로 식자되도록 되고, 제 2 카테고리 2 에 대해 (최소) 로컬 폰트 사이즈는 9pt 이어서 제 2 레벨 노드들 (204) 의 텍스트 블록들 (204b, 204d, 204f, 204h) 은 여전히 그 폰트 사이즈로 식자되도록 되며, 제 3 카테고리 3 에 대해 (최소) 로컬 폰트 사이즈는 14pt 이어서 제 1 레벨 노드들 (202) 의 텍스트 블록 (202b) 은 여전히 그 폰트 사이즈로 식자되도록 되고, 제 4 카테고리 4 에 대해 (최소) 로컬 폰트 사이즈는 33pt 이어서 (제 0) 타이틀 노드의 텍스트 블록 (208) 은 여전히 그 폰트 사이즈로 식자되도록 된다. 결과로서, 도 1 에 나타낸 식자 잉크 다이어그램 (100) 이 여전히 생성된다.
하지만, 예를 들어, 제 2 카테고리 2 에 대한 로컬 폰트 사이즈들의 전부가 10pt 로서 계산된 경우에 (예컨대, 텍스트 블록들 (204d 및 204h) 에 대한 로컬 폰트 사이즈들이 9pt 가 아니라 역시 10pt 로서 계산된 경우), 제 2 레벨 노드들 (204) 의 텍스트 블록들 (204b, 204d, 204f, 204h) 은 10pt 의 폰트 사이즈로 식자될 것이다. 이에 따라, 제 2 레벨 및 제 3 레벨 콘텐츠 사이의 레벨 차이는 최종 식자 다이어그램에서 강조될 수도 있다. 하지만, 도 2 의 핸드라이팅된 입력이 제 2 및 제 3 레벨 노드들 (204 및 206) 사이에 스케일에서 실질적인 차이를 가지지 않고, 동일 스케일로 거칠게 핸드라이팅된 제 2 및 제 3 레벨 노드들 (204 및 206) 의 텍스트 블록들의 모두에 대해 동일한 텍스트 사이즈가 사용되지 않으므로, 이것은 제 1 및 제 2 기준들을 만족시키지 않는 것으로서 간주될 수도 있다. 이와 같이, 제 3 레벨 텍스트 (206) 의 대부분이 제 2 레벨 텍스트 (204) 보다 더 작은 사이즈로 핸드라이팅되기 때문에, 제 1 및 제 2 기준들이 충족되고, 다이어그램의 상이한 레벨들에 대한 상이한 강조의 사용자 의도가 이러한 분류로 더 잘 반영되는 것이 또한 고려될 수도 있다. 추가로, 예컨대 소형, 보통, 대형, 특대형의 전술된 별개의 사전-설정된 또는 동적으로 정의가능한 폰트 사이즈 레벨들이 이러한 구별되는 레벨 차이들을 제공하기 위해서 잉크 관리 시스템 (312) 에 의해 사용될 수 있을 것이다.
전술된 예들은 핸드라이팅된 입력 후의 시점에서 디지털 핸드라이팅된 콘텐츠의 식자에 관련된다. 즉, 핸드라이팅된 다이어그램 (200) 이 입력된 후에, 입력된 콘텐츠의 식자는 사용자가 예를 들어 핸드라이팅된 식자 커맨드를 입력하기 위해 또는 메뉴 엘리먼트 또는 버튼을 선택하기 위해 디바이스 (300) 의 입력 인터페이스 (304) 에 관해 제스처를 수행하는 것에 의해 야기된다. 본 시스템 및 방법은 또한, 사용자가 핸드라이팅을 입력함에 따라 식자된 잉크가 디지털 잉크의 장소에 (또는 그 대신에) 렌더링되는 실질적으로 실시간의 또는 '온-더-플라이' 식자에도 적용가능하다.
하지만, 이러한 사용 경우에서, 본 출원인은, 사용자들이 입력 진행과정들로서 식자에 대한 변경들에 의해 그들의 계속되는 입력에서 혼란스럽게됨을 발견하였다. 즉, 전술된 프로세싱에 기초하여, 이전에 식자된 콘텐츠의 동일 계층적 레벨에서의 후속 입력이 이전에 식자된 잉크 폰트 사이즈보다 더 작은 로컬 식자 잉크 폰트 사이즈를 갖도록 계산되는 경우에, 분류 및 정규화에 기초하여 폰트 사이즈를 감소시키기 위해 이전 콘텐츠가 재식자될 것이다. 이것은 예를 들어 온-더-플라이 식자 동안 정규화를 생략함으로써 회피될 수도 있다. 하지만, 이는 (도 7 의 예에서와 같이) 동일 다이어그램 레벨들에 대해 상이한 폰트 사이즈들을 초래할 것이고, 그에 의해, 제 2 기준을 위반하게 될 것이다.
대안적으로, 예를 들어 디바이스 (300) 의 입력 인터페이스 (304) 를 통한 사용자에 의한 '최종' 식자 커맨드의 수신에 기초하여, 입력이 완료된 후에, 또는, 예를 들어, 잉크 관리 시스템 (312) 에 의한 마지막 펜 들어올리는 이벤트의 검출로부터 예컨대 약 1 초 내지 약 5 초와 같이 소정 양의 시간이 경과한 후에, 정규화가 수행될 수 있을 것이다.
또 대안적으로, 적어도 정규화는 각 카테고리에서의 이미 렌더링된 식자 잉크 텍스트의 식자 잉크 폰트 사이즈에 기초하여 수행될 수도 있다. 예를 들어, 제 2 레벨 노드 (204) 의 텍스트 (204b) 가 텍스트 (204d, 204f 및 204h) 이전에 입력되는 경우에, 이들 텍스트 블록들의 전부에 대한 결과적인 식자 잉크는 9pt 대신에 10pt 일 것이다. 이러한 결과는 제 2 기준들을 만족시킬 수도 있지만, (전술된 바와 같은) 컨테이너 사이즈 정규화가 또한 수행되지 않는 한 제 3 기준들이 위반될 수도 있다 (충실이 요망되는 경우에).
추가적으로, 또는 대안적으로, 잉크 관리 시스템 (312) 은, 온-더-플라이 식자에 대해, (전술된 바와 같이 보통의 및 레벨링된 폰트 사이즈들과 같이) 하나 이상의 사전-정의된 및/또는 동적으로 조정가능한 폰트 사이즈들 및 컨테이너들과 같은 식자 연관된 형상들로 디지털 잉크 텍스트를 식자하고, 온-디맨드 (on-demand) 식자에 대해, 본원에서 기술된 바와 같이 적절한 식자 폰트 사이즈들을 계산 및 결정하도록 구성될 수도 있다. 이 경우에, 잉크 관리 시스템 (312) 은 추가적으로, 이전에 온-더-플라이 식자된 콘텐츠에 대해, 본원에 기술된 바와 같이, 계산된 및 결정된 적절한 식자 폰트 사이즈들로 온-디맨드 "재식자 (re-typesetting)' 를 허용하도록 구성될 수도 있다.
본 시스템 및 방법에 의해, 핸드라이팅된 입력의 텍스트 (및 비-텍스트) 는, 핸드라이팅된 입력을 나타내는 디지털 잉크 및 핸드라이팅된 입력의 HWR 인식을 통해 생성된 (잠재적) 식자의 치수적 및 기하학적 정보를 고려하는 것을 통해서 중시된다. 이러한 방식으로, 본 시스템 및 방법은, 상이한 핸드라이팅된 사이즈들을 통해 상이한 콘텐츠 엘리먼트들을 표현 및 강조함에 있어서 사용자의 의도들을 존중하면서 식자 변환된 핸드라이팅된 구조화된 잉크 콘텐츠의 보기에 대한 향상을 제공한다. 이러한 방식으로, 사용자들이 식자 변환을 향상시키기 위해서 식자 폰트 사이즈를 명시적으로 조정할 필요성이 최소화되어 향상된 사용자 경험 및 생산성 이득들로 이끈다.
설명된 바와 같이, 텍스트 블록 분류 및 최적 폰트 사이즈 계산은 구조화된 콘텐츠의 디지털 및 식자 잉크에 대한 로컬 및 글로벌 관찰들에 기초하여 제공된다. 설명된 시스템 및 방법은 관찰들을 제공하기 위해 규칙들 또는 발견학습법을 이용할 수도 있거나, 또는, 대안적으로 또는 추가적으로, 콘텐츠의 유형 및 큰 데이터셋트에 대한 트레이닝에 기초하여 구조화된 콘텐츠의 상이한 계층적 레벨들을 분류하기 위해 예를 들어 머신 러닝 (machine learning) 을 이용할 수도 있다.
전술한 바는 최선의 모드 및/또는 다른 예들인 것으로 고려되는 것을 설명하였지만, 다양한 수정들이 본 명세서에서 행해질 수도 있고, 본 명세서에 개시된 주제가 다양한 형태들 및 예들로 구현될 수도 있으며, 그리고 이들이 다수의 다른 애플리케이션들, 조합들, 및 환경들에 적용될 수도 있음 (이들 중 오직 일부만이 본 명세서에서 설명되었음) 이 이해된다. 개시된 양태들이 그 주제의 실제 범위 및 사상으로부터 벗어남 없이 변경되거나 수정될 수도 있음을 당업자는 인식할 것이다. 그러므로, 그 주제는 본 설명에서 특정 세부사항들, 전시들, 및 도시된 예들에 제한되지 않는다. 본원에 개시된 유리한 개념들의 실제 범위 내에 있는 임의의 및 모든 수정들 및 변경들을 보호하는 것이 의도된다.
동사들 "구비하다 (comprise)”, “함유하다 (contain)”, “포함하다 (include)”, 또는 임의의 다른 변형형태들, 및 그것들의 접합들의 사용은 언급된 것들 외의 엘리먼트들 또는 단계들의 존재를 배제하지 않는다. 엘리먼트 또는 단계를 기술할 때 부정관사 "a” 또는 “an” 의 사용은, 달리 진술되지 않는 한, 복수의 그러한 엘리먼트들 또는 단계들의 존재를 배제하지 않는다. 실례로, 용어들 "프로세서 (a processor)" 는, 달리 진술되지 않는 한, "하나 이상의 프로세서들" 을 의미하는 것으로서 고려될 수도 있다.
Claims (21)
- 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템으로서,
상기 컴퓨팅 디바이스는 프로세서, 및 상기 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하며, 상기 적어도 하나의 비일시적 컴퓨터 판독가능 매체는,
구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들을 형성하는 하나 이상의 입력들을 검출하고;
상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하는 것으로서,
상기 치수 정보는 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 기하학적 정보 및 인쇄상의 정보를 포함하는, 상기 치수 정보를 결정하고,
상기 치수 정보에 기초하여 상기 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하며;
상기 식자 잉크 텍스트 엘리먼트들을 상기 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하고;
각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈에 기초하여 상기 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하며;
디지털 잉크 비-텍스트 엘리먼트로서 제 2 입력을 검출하고;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관되는지의 여부를 결정하고;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관된다는 결정에 기초하여, 상기 디지털 잉크 비-텍스트 엘리먼트로서 검출된 상기 제 2 입력에 대응하는 식자 잉크 비-텍스트 엘리먼트를 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당하고; 그리고
각각의 상기 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 상기 제 2 폰트 사이즈들로, 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당된 상기 식자 잉크 비-텍스트 엘리먼트에 의해 둘러싸인 상기 복수의 식자 잉크 텍스트 엘리먼트들의 디스플레이를 야기하도록 구성되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 제 1 항에 있어서,
상기 식자 잉크 텍스트 엘리먼트들은 대응하는 상기 디지털 잉크 텍스트 엘리먼트들의 상기 치수 정보에 기초하여 분류되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 삭제
- 제 2 항에 있어서,
상기 인쇄상의 정보는 상기 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트 (x-height) 를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 제 1 항에 있어서,
상기 치수 정보는 추가적으로, 상기 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 상기 구조화된 콘텐츠의 디지털 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 상기 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보이고, 상기 적어도 하나의 비일시적 컴퓨터 판독가능 매체는,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 상기 식자 잉크 비-텍스트 엘리먼트들 중의 상기 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 상기 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하도록 구성되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 제 5 항에 있어서,
상기 치수 정보는 상기 식자 잉크 비-텍스트 엘리먼트들의 기하학적 정보를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 제 6 항에 있어서,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 적어도 일부는 관련된 상기 디지털 잉크 비-텍스트 엘리먼트 내에 포함되고; 그리고
대응하는 상기 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈는, 상기 식자 잉크 텍스트 엘리먼트가 대응하는 상기 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 시스템. - 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법으로서,
상기 컴퓨팅 디바이스는 프로세서, 및 상기 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하며, 상기 방법은,
구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들을 형성하는 하나 이상의 입력들을 검출하는 단계;
상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하는 단계로서,
상기 치수 정보는 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 기하학적 정보 및 인쇄상의 정보를 포함하는, 상기 치수 정보를 결정하는 단계;
상기 치수 정보에 기초하여 상기 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하는 단계;
상기 식자 잉크 텍스트 엘리먼트들을 상기 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하는 단계;
각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈에 기초하여 상기 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하는 단계;
디지털 잉크 비-텍스트 엘리먼트로서 제 2 입력을 검출하는 단계;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관되는지의 여부를 결정하는 단계;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관된다는 결정에 기초하여, 상기 디지털 잉크 비-텍스트 엘리먼트로서 검출된 상기 제 2 입력에 대응하는 식자 잉크 비-텍스트 엘리먼트를 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당하는 단계; 및
각각의 상기 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 상기 제 2 폰트 사이즈들로, 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당된 상기 식자 잉크 비-텍스트 엘리먼트에 의해 둘러싸인 상기 복수의 식자 잉크 텍스트 엘리먼트들을 디스플레이하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 제 8 항에 있어서,
상기 식자 잉크 텍스트 엘리먼트들은 대응하는 상기 디지털 잉크 텍스트 엘리먼트들의 상기 치수 정보에 기초하여 분류되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 삭제
- 제 9 항에 있어서,
상기 인쇄상의 정보는 상기 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트 (x-height) 를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 제 8 항에 있어서,
상기 치수 정보는 추가적으로, 상기 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 상기 구조화된 콘텐츠의 디지털 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보이고, 상기 방법은,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 상기 식자 잉크 비-텍스트 엘리먼트들 중의 상기 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 상기 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 제 12 항에 있어서,
상기 치수 정보는 상기 식자 잉크 비-텍스트 엘리먼트들의 기하학적 정보를 포함하는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 제 13 항에 있어서,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 적어도 일부는 관련된 상기 디지털 잉크 비-텍스트 엘리먼트 내에 포함되고; 그리고
대응하는 상기 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈는, 상기 식자 잉크 텍스트 엘리먼트가 대응하는 상기 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산되는, 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법. - 컴퓨터 판독가능 프로그램 코드가 내부에 수록된 비일시적 컴퓨터 판독가능 매체로서,
상기 컴퓨터 판독가능 프로그램 코드는 컴퓨팅 디바이스 상에서 디지털 잉크 구조화된 콘텐츠의 식자를 관리하기 위한 방법을 구현하기 위해 실행되도록 적응되고, 상기 컴퓨팅 디바이스는 프로세서, 및 상기 프로세서의 제어 하에 핸드라이팅 입력을 인식하기 위한 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하며, 상기 방법은,
구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들을 형성하는 하나 이상의 입력들을 검출하는 단계;
상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 치수 정보를 결정하는 단계로서,
상기 치수 정보는 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들의 기하학적 정보 및 인쇄상의 정보를 포함하는, 상기 치수 정보를 결정하는 단계;
상기 치수 정보에 기초하여 상기 디지털 잉크 텍스트 엘리먼트들에 각각 대응하는 복수의 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 1 폰트 사이즈를 계산하는 단계;
상기 식자 잉크 텍스트 엘리먼트들을 상기 구조화된 콘텐츠의 하나 이상의 카테고리들로 분류하는 단계;
각각의 카테고리의 각각의 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈에 기초하여 상기 식자 잉크 텍스트 엘리먼트들의 각각에 대한 제 2 폰트 사이즈를 결정하는 단계;
디지털 잉크 비-텍스트 엘리먼트로서 제 2 입력을 검출하는 단계;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관되는지의 여부를 결정하는 단계;
상기 제 2 입력이 상기 구조화된 콘텐츠의 적어도 복수의 디지털 잉크 텍스트 엘리먼트들과 연관된다는 결정에 기초하여, 상기 디지털 잉크 비-텍스트 엘리먼트로서 검출된 상기 제 2 입력에 대응하는 식자 잉크 비-텍스트 엘리먼트를 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당하는 단계; 및
각각의 상기 컴퓨팅 디바이스와 연관된 디스플레이 상에서, 각각의 결정된 상기 제 2 폰트 사이즈들로, 상기 제 2 폰트 사이즈와 연관된 카테고리에 할당된 상기 식자 잉크 비-텍스트 엘리먼트에 의해 둘러싸인 상기 복수의 식자 잉크 텍스트 엘리먼트들을 디스플레이하는 단계를 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제 15 항에 있어서,
상기 식자 잉크 텍스트 엘리먼트들은 대응하는 상기 디지털 잉크 텍스트 엘리먼트들의 상기 치수 정보에 기초하여 분류되는, 비일시적 컴퓨터 판독가능 매체. - 삭제
- 제 16 항에 있어서,
상기 인쇄상의 정보는 상기 디지털 잉크 텍스트 엘리먼트들의 엑스-하이트 (x-height) 를 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제 15 항에 있어서,
상기 치수 정보는 추가적으로, 상기 디지털 잉크 텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 관련된 상기 구조화된 콘텐츠의 디지털 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 디지털 잉크 비-텍스트 엘리먼트들에 대응하는 식자 잉크 비-텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 비-텍스트 엘리먼트들의 치수 정보이고, 상기 방법은,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 1 텍스트 사이즈와, 상기 식자 잉크 비-텍스트 엘리먼트들 중의 상기 하나 이상의 식자 잉크 비-텍스트 엘리먼트들 각각의 치수 정보로부터 계산된 제 2 텍스트 사이즈를 비교함으로써, 상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들에 대응하는 상기 식자 잉크 텍스트 엘리먼트들 중의 하나 이상의 식자 잉크 텍스트 엘리먼트들의 각각의 제 1 폰트 사이즈를 계산하는 단계를 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제 19 항에 있어서,
상기 치수 정보는 상기 식자 잉크 비-텍스트 엘리먼트들의 기하학적 정보를 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제 20 항에 있어서,
상기 디지털 잉크 텍스트 엘리먼트들 중의 상기 하나 이상의 디지털 잉크 텍스트 엘리먼트들 중의 적어도 하나의 적어도 일부는 관련된 상기 디지털 잉크 비-텍스트 엘리먼트 내에 포함되고; 그리고
대응하는 상기 식자 잉크 텍스트 엘리먼트의 상기 제 1 폰트 사이즈는, 상기 식자 잉크 텍스트 엘리먼트가 대응하는 상기 식자 잉크 비-텍스트 엘리먼트에 의해 완전히 포함되도록 계산되는, 비일시적 컴퓨터 판독가능 매체.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16290205.0 | 2016-10-26 | ||
EP16290205 | 2016-10-26 | ||
US15/466,346 US10664695B2 (en) | 2016-10-26 | 2017-03-22 | System and method for managing digital ink typesetting |
US15/466,346 | 2017-03-22 | ||
PCT/EP2017/001258 WO2018077474A1 (en) | 2016-10-26 | 2017-10-26 | System and method for managing digital ink typesetting |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190076008A KR20190076008A (ko) | 2019-07-01 |
KR102417783B1 true KR102417783B1 (ko) | 2022-07-05 |
Family
ID=57396381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197015086A KR102417783B1 (ko) | 2016-10-26 | 2017-10-26 | 디지털 잉크 식자를 관리하기 위한 시스템 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10664695B2 (ko) |
EP (1) | EP3532942A1 (ko) |
KR (1) | KR102417783B1 (ko) |
CN (1) | CN110073350B (ko) |
WO (1) | WO2018077474A1 (ko) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170236318A1 (en) * | 2016-02-15 | 2017-08-17 | Microsoft Technology Licensing, Llc | Animated Digital Ink |
CN108959235B (zh) * | 2017-05-19 | 2021-10-19 | 北京庖丁科技有限公司 | 文字中获取表达式的方法和装置 |
US11380028B2 (en) | 2018-07-02 | 2022-07-05 | Apple Inc. | Electronic drawing with handwriting recognition |
US11270486B2 (en) * | 2018-07-02 | 2022-03-08 | Apple Inc. | Electronic drawing with handwriting recognition |
CN109697414B (zh) * | 2018-12-13 | 2021-06-18 | 北京金山数字娱乐科技有限公司 | 一种文本定位方法及装置 |
US10963723B2 (en) * | 2018-12-23 | 2021-03-30 | Microsoft Technology Licensing, Llc | Digital image transcription and manipulation |
US10783323B1 (en) * | 2019-03-14 | 2020-09-22 | Michael Garnet Hawkes | Analysis system |
EP3754537B1 (en) * | 2019-06-20 | 2024-05-22 | MyScript | Processing text handwriting input in a free handwriting mode |
US10769348B1 (en) * | 2019-09-23 | 2020-09-08 | Typetura Llc | Dynamic typesetting |
CN112860157B (zh) * | 2019-11-12 | 2022-06-24 | 广州视源电子科技股份有限公司 | 显示元素调整方法、装置、设备及存储介质 |
CN111191975B (zh) * | 2019-11-29 | 2024-03-29 | 广东三扬网络科技有限公司 | 一种思维导图的节点引用方法及电子设备和存储介质 |
CN111062365B (zh) * | 2019-12-30 | 2023-05-26 | 上海肇观电子科技有限公司 | 识别混合排版文字的方法、设备、芯片电路和计算机可读存储介质 |
CN112784562B (zh) * | 2020-01-03 | 2024-06-25 | 珠海金山办公软件有限公司 | 一种文档中文本内容的排版方法及装置 |
JP7559496B2 (ja) * | 2020-03-23 | 2024-10-02 | 株式会社リコー | 入力装置、入力方法、及びプログラム |
CN117113962A (zh) * | 2020-04-01 | 2023-11-24 | 支付宝(杭州)信息技术有限公司 | 一种信息处理方法、装置及设备 |
US12061863B2 (en) * | 2021-04-23 | 2024-08-13 | Samsung Electronics Co., Ltd. | Electronic device, and method for placing text-linked object in electronic device |
CN113569531B (zh) * | 2021-08-13 | 2023-10-20 | 北京字节跳动网络技术有限公司 | 一种内容排版方法、装置、计算机设备及存储介质 |
CN114241093B (zh) * | 2022-02-28 | 2022-06-17 | 世纪开元智印互联科技集团股份有限公司 | 一种无遮挡的照片书自动排版方法及系统 |
WO2024110354A1 (en) * | 2022-11-25 | 2024-05-30 | Myscript | Setting font size in an unconstrained canvas |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020107885A1 (en) | 2001-02-01 | 2002-08-08 | Advanced Digital Systems, Inc. | System, computer program product, and method for capturing and processing form data |
US20050135678A1 (en) | 2003-12-03 | 2005-06-23 | Microsoft Corporation | Scaled text replacement of ink |
US20100246964A1 (en) | 2009-03-30 | 2010-09-30 | Matic Nada P | Recognizing handwritten words |
US20110025719A1 (en) | 2008-04-01 | 2011-02-03 | Takatoshi Yanase | Display system, display method, program, and recording medium |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3272842B2 (ja) * | 1992-12-17 | 2002-04-08 | ゼロックス・コーポレーション | プロセッサベースの判定方法 |
US7218783B2 (en) * | 2003-06-13 | 2007-05-15 | Microsoft Corporation | Digital ink annotation process and system for recognizing, anchoring and reflowing digital ink annotations |
AU2003262759B8 (en) * | 2003-08-21 | 2010-01-07 | Microsoft Corporation | Electronic ink processing |
US7659890B2 (en) * | 2004-03-19 | 2010-02-09 | Microsoft Corporation | Automatic height adjustment for electronic highlighter pens and mousing devices |
US7593574B2 (en) * | 2005-07-01 | 2009-09-22 | Microsoft Corporation | Ink warping for normalization and beautification / ink beautification |
US20080104020A1 (en) * | 2006-10-27 | 2008-05-01 | Microsoft Corporation | Handwritten Query Builder |
US8416243B2 (en) * | 2011-03-10 | 2013-04-09 | Konica Minolta Laboratory U.S.A., Inc. | Approximating font metrics for a missing font when substituting an available replacement |
US9116871B2 (en) * | 2013-05-20 | 2015-08-25 | Microsoft Technology Licensing, Llc | Ink to text representation conversion |
US9696810B2 (en) * | 2013-06-11 | 2017-07-04 | Microsoft Technology Licensing, Llc | Managing ink content in structured formats |
KR20150028627A (ko) | 2013-09-06 | 2015-03-16 | 삼성전자주식회사 | 사용자 필기를 텍스트 정보로 변환하는 방법 및 이를 수행하기 위한 전자 기기 |
US9237255B1 (en) * | 2014-08-25 | 2016-01-12 | Xerox Corporation | Methods and systems for processing documents |
US10089292B2 (en) * | 2015-09-11 | 2018-10-02 | Adobe Systems Incorporated | Categorization of forms to aid in form completion |
US10254935B2 (en) * | 2016-06-29 | 2019-04-09 | Google Llc | Systems and methods of providing content selection |
-
2017
- 2017-03-22 US US15/466,346 patent/US10664695B2/en active Active
- 2017-10-26 WO PCT/EP2017/001258 patent/WO2018077474A1/en unknown
- 2017-10-26 EP EP17798096.8A patent/EP3532942A1/en not_active Ceased
- 2017-10-26 KR KR1020197015086A patent/KR102417783B1/ko active IP Right Grant
- 2017-10-26 CN CN201780077858.XA patent/CN110073350B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020107885A1 (en) | 2001-02-01 | 2002-08-08 | Advanced Digital Systems, Inc. | System, computer program product, and method for capturing and processing form data |
US20050135678A1 (en) | 2003-12-03 | 2005-06-23 | Microsoft Corporation | Scaled text replacement of ink |
US20110025719A1 (en) | 2008-04-01 | 2011-02-03 | Takatoshi Yanase | Display system, display method, program, and recording medium |
US20100246964A1 (en) | 2009-03-30 | 2010-09-30 | Matic Nada P | Recognizing handwritten words |
Also Published As
Publication number | Publication date |
---|---|
KR20190076008A (ko) | 2019-07-01 |
US10664695B2 (en) | 2020-05-26 |
CN110073350B (zh) | 2024-02-23 |
EP3532942A1 (en) | 2019-09-04 |
CN110073350A (zh) | 2019-07-30 |
US20180114059A1 (en) | 2018-04-26 |
WO2018077474A1 (en) | 2018-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102417783B1 (ko) | 디지털 잉크 식자를 관리하기 위한 시스템 및 방법 | |
JP7046806B2 (ja) | ジェスチャを用いたノートテイキングのための装置および方法 | |
EP3341827B1 (en) | System and method of guiding handwriting input | |
JP7105695B2 (ja) | デジタルインク対話性のためのシステムおよび方法 | |
CN108369637B (zh) | 用于美化数字墨水的系统和方法 | |
KR20180097519A (ko) | 도식들에서의 필기 인식의 시스템 및 방법 | |
KR20180096590A (ko) | 핸드라이팅 다이어그램 입력을 안내하는 시스템 및 방법 | |
JP6820919B2 (ja) | 手書きされた図コネクタの認識のためのシステム及び方法 | |
EP3754537B1 (en) | Processing text handwriting input in a free handwriting mode | |
CN114365075A (zh) | 用于选择图形对象的方法和对应装置 | |
US10579868B2 (en) | System and method for recognition of objects from ink elements | |
EP3491580B1 (en) | System and method for beautifying superimposed digital ink | |
US11429259B2 (en) | System and method for selecting and editing handwriting input elements | |
US20240231582A9 (en) | Modifying digital content including typed and handwritten text | |
WO2024110354A1 (en) | Setting font size in an unconstrained canvas |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |