KR101323082B1 - 머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치 - Google Patents

머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치 Download PDF

Info

Publication number
KR101323082B1
KR101323082B1 KR1020087019902A KR20087019902A KR101323082B1 KR 101323082 B1 KR101323082 B1 KR 101323082B1 KR 1020087019902 A KR1020087019902 A KR 1020087019902A KR 20087019902 A KR20087019902 A KR 20087019902A KR 101323082 B1 KR101323082 B1 KR 101323082B1
Authority
KR
South Korea
Prior art keywords
text
merged
chain
vertex
effect
Prior art date
Application number
KR1020087019902A
Other languages
English (en)
Other versions
KR20080093442A (ko
Inventor
루츠 게르하르트
마이클 제이. 아르볼드
마이클 칼라이
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20080093442A publication Critical patent/KR20080093442A/ko
Application granted granted Critical
Publication of KR101323082B1 publication Critical patent/KR101323082B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S345/00Computer graphics processing and selective visual display systems
    • Y10S345/948Alteration of stored fonts to maintain feature consistency throughout scaled font

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • Document Processing Apparatus (AREA)
  • Enzymes And Modification Thereof (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Generation (AREA)

Abstract

머징된 텍스트 경로로부터 생성된 형태에 효과가 적용된다. 머징된 텍스트 경로는 텍스트 런과 연관된 텍스트 경로로부터 창설된다. 부울 연산이 머징된 텍스트 경로를 창설하는 데 사용될 수 있다. 머징된 텍스트 경로는 텍스트 런 내의 문자들의 임의의 오버랩 또는 여분을 제거한다. 머징된 텍스트 경로로부터 생성된 형태는, 추가적인 효과가 그 형태에 적용될 수 있도록 텍스트 런과 연관된 텍스트 경로 정보를 보유한다.
텍스트 런, 텍스트 효과, 머징된 텍스트 경로

Description

머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치{APPLYING EFFECTS TO A MERGED TEXT PATH}
많은 애플리케이션들이 사용자들로 하여금 문서 내의 텍스트에 효과를 적용할 수 있게 한다. 예를 들어, 와핑(warping), 스케일링(scaling), 라인 효과 뿐만 아니라 3차원 효과가 텍스트에 적용될 수 있다. 통상적으로, 이러한 효과들이 텍스트에 적용될 때, 텍스트 내의 각각의 문자들은 비트맵으로 변환되고, 임의의 효과들은 주변의 문자들을 고려하지 않고 각 개별 비트맵에 적용된다. 이러한 개별 비트맵들 각각이 그 후에 결합되고 디스플레이되어 전체 워드를 보인다. 디스플레이된 워드는 오버랩되는 문자를 가질 수도 있다.
<개요>
본 개요는 상세한 설명에서 추가적으로 설명되는 개념들의 선택을 단순화된 형태로 소개하기 위해 제공된다. 본 개요는 청구된 청구물의 핵심 특징 또는 본질적인 특징을 식별하려는 것도 아니며, 청구된 청구물의 범위를 결정하는 데 도움으로 사용하려는 것도 아니다.
효과는 머징된(merged) 텍스트 경로로부터 생성된 형태에 적용된다. 머징된 텍스트 경로는 텍스트 런(text run)과 연관된 텍스트 경로로부터 창설된다. 머징된 텍스트 경로는 텍스트 런 내의 문자의 오버랩(overlap) 및 여분(redundancy)을 제거한다. 이러한 방식으로, 머징된 텍스트 경로로부터 생성된 형태에 효과가 적용될 때는 문자들 간에 어떠한 오버랩도 존재하지 않는다. 부울 연산(Boolean operation)은 형태가 생성되는 머징된 텍스트 경로를 창설하는 데 사용될 수 있다. 머징된 텍스트 경로로부터 생성된 형태는, 추가적인 효과가 그 형태에 적용될 수 있도록 텍스트 런과 연관된 텍스트 경로 정보를 보유한다.
도 1은 예시적인 컴퓨팅 디바이스를 도시한다.
도 2는 효과 시스템을 도시한다.
도 3은 텍스트 런에 적용된 각종 효과를 도시하는 예시적인 애플리케이션 윈도우를 도시한다.
도 4는 머징된 텍스트 경로로부터 생성된 형태에 효과를 적용하기 위한 프로세스를 도시한다.
도 5는 부울 연산을 이용하여 머징된 텍스트 경로를 창설하기 위한 프로세스를 도시한다.
도 6은 아웃라인을 형성하기 위해 어떻게 체인들이 연결되는지를 도시한다.
동일한 부호가 동일한 요소를 나타내는 도면을 참조하여 각종 실시예들을 설명할 것이다. 특히, 도 1 및 그 대응하는 설명은 실시예들이 구현될 수 있는 적합한 컴퓨팅 환경의 간략하고 일반적인 설명을 제공하기 위한 것이다.
일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조 및 기타 유형의 구조를 포함한다. 핸드-헬드 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램가능한 가전제품, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함하여 기타 컴퓨터 시스템 구성이 또한 사용될 수 있다. 또한, 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경이 사용될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 둘 다에 위치할 수 있다.
도 1을 참조하여, 각종 실시예들에서 이용되는 컴퓨터(100)에 대한 예시적인 컴퓨터 아키텍쳐를 설명한다. 도 1에서 도시한 컴퓨터 아키텍쳐는 데스크탑 또는 모바일 컴퓨터로서 구성될 수 있으며, 중앙 처리 장치(5)("CPU"), RAM(random access memory)(9) 및 ROM(read only memory)(11)을 포함하는 시스템 메모리(7) 및 메모리를 CPU(5)에 연결하는 시스템 버스(12)를 포함한다. 시동 중과 같은 때에, 컴퓨터 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템은 ROM(11)에 저장되어 있다. 컴퓨터(100)는 이하 더욱 상세히 설명할 운영 체제(16), 애플리케이션 프로그램 및 기타 프로그램 모듈을 저장하기 위한 대용량 저장 장치(14)를 추가적으로 포함한다.
대용량 저장 장치(14)는 버스(12)에 연결되어 있는 대용량 저장 컨트롤러(도시 생략)를 통해 CPU(5)에 연결된다. 대용량 저장 장치(14) 및 그 연관된 컴퓨터 판독가능 매체는 컴퓨터(100)에 대한 비휘발성 저장을 제공한다. 본 명세서에 기 재된 컴퓨터 판독가능 매체의 설명은 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 장치를 칭하지만, 컴퓨터 판독가능 매체는 컴퓨터(100)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있다.
예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 기타 고상 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(100)에 의해 액세스되고 원하는 정보를 저장하는 데 이용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다.
각종 실시예들에 따르면, 컴퓨터(100)는 인터넷과 같은 네트워크(18)를 통해 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 컴퓨터(100)는 버스(12)에 연결된 네트워크 인터페이스 장치(20)를 통하여 네트워크(18)에 연결될 수 있다. 네트워크 연결은 무선 및/또는 유선일 수 있다. 또한, 네트워크 인터페이스 장치(20)는 기타 유형의 네트워크 및 원격 컴퓨터 시스템에 연결하는 데 이용될 수 있다. 또한 컴퓨터(100)는 키보드, 마우스, 전자 스타일러스(도 1에는 도시 생략)를 포함하는 다수의 기타 장치들로부터의 입력을 수신하고 처리하기 위한 입력/출력 컨트롤러(22)를 포함할 수 있다. 유사하게, 입력/출력 컨트롤러(22)는 디스플레이 스크린(28), 프린터 또는 기타 유형의 출력 장치에 출력을 제공할 수 있다.
간략히 상술한 바와 같이, 워싱턴주 레드몬드의 MICROSOFT CORPORATION의 WINDOW XP 운영 체제와 같은, 네트워크화된 퍼스널 컴퓨터의 운영을 제어하기에 적합한 운영 체제(16)를 포함하는 다수의 프로그램 모듈 및 데이터 파일들은 컴퓨터(100)의 대용량 저장 장치(14) 및 RAM(9)에 저장될 수 있다. 또한, 대용량 저장 장치(14) 및 RAM(9)은 하나 이상의 프로그램 모듈을 저장할 수 있다. 특히, 대용량 저장 장치(14) 및 RAM(9)은 하나 이상의 애플리케이션 프로그램(10)을 저장할 수 있다. 애플리케이션 프로그램(들)(10)은 텍스트에 효과를 적용하도록 동작한다. 일 실시예에 따르면, 애플리케이션 프로그램(들)(10)은 MICROSOFT CORPORATION의 애플리케이션 프로그램인 MICRO OFFICE 스위트(suite)를 포함한다. 예를 들어, 애플리케이션 프로그램(10)은 MICROSOFT WORD, POWERPOINT, EXCEL, ACCESS, PUBLISHER, OUTLOOK 등일 수 있다. 또한, 텍스트 효과를 구현하는 기타 프로그램이 이용될 수 있다. 예를 들어, 효과를 텍스트에 적용할 수 있게 하는 이메일 프로그램, 데스크탑 퍼블리싱 프로그램, 프레젠테이션 프로그램 및 기타 유형의 프로그램이 이용될 수 있다.
애플리케이션 프로그램(10)은 효과 관리자(26)를 이용할 수 있다. 효과 관리자(26)가 애플리케이션 프로그램(10)과 별도로 도시되었지만, 애플리케이션 프로그램(10) 내에 포함될 수 있거나 소정의 다른 위치에 있을 수 있다. 예를 들어, 효과 관리자(26)는 그래픽 파이프라인(도 2의 구성요소(220) 참조), 운영 체제(16) 등에 포함될 수 있다. 이하 더욱 상세히 설명할 바와 같이, 효과 관리자(26)는 머징된 텍스트 경로로부터 생성된 형태에 효과를 적용한다. 머징된 텍스트 경로는 텍스트 런 내의 문자들의 임의의 오버랩 및 여분을 제거한다. 일반적으로, 텍스트 런 내에 포함된 문자들은 폰트 설정으로 인해 오버랩될 수 있다. 텍스트 런 내의 오버랩 양에 통상적으로 영향을 미치는 폰트 설정은 폰트 페이스(font face), 폰트 사이즈, 사용된 효과, 커닝(kerning) 및 사용된 문자 간격이다. 머징된 텍스트 경로로부터 생성된 형태는 이러한 오버랩을 제거하고, 추가적인 효과가 그 형태에 적용될 수 있도록 텍스트 런과 연관된 텍스트 경로 정보를 보유한다. 예를 들어, 와핑, 스케일링, 및 라인 효과가 그 형태에 적용될 수 있다. 또한, 돌출(extrusion), 기울임(beveling) 등과 같은 상이한 효과들이 적용된 텍스트 런의 3-D 모델은 그 형태로부터 생성될 수 있다. 효과 관리자(26)의 동작을 이하 더욱 상세히 설명한다.
도 2는 효과 시스템(200)을 도시한다. 도시된 바와 같이, 효과 시스템(200)은 애플리케이션 프로그램(10), 효과 관리자(26), 머지(merge) 모듈(210), 운영 체제(16), 그래픽 파이프라인(220) 및 디스플레이(28)를 포함한다. 간략히 상술한 바와 같이, 효과 관리자(26)는 머징된 텍스트 경로로부터 형태를 창설하고 효과를 그 형태에 적용한다. 머징된 텍스트 경로는 애플리케이션(10)에 대한 텍스트 런(예를 들어, 텍스트(202))과 연관된 각각의 텍스트 경로로부터 창설된다. 시스템(200)에 도시한 바와 같이, 애플리케이션 프로그램(10)은 효과 관리자(26)로 텍스트 런(예를 들어, 텍스트 런(202))을 전송하도록 구성된다. 도시된 예에서, 애 플리케이션 프로그램(10)은 텍스트 런 "Letter"를 효과 관리자(26)로 전송하였다. 그러나, 임의의 텍스트 런이 효과 관리자에 전송될 수 있다. 텍스트 런은 하나 이상의 문자들일 수 있다. 예를 들어, 텍스트 런은 몇 개의 문자, 워드, 문장 등일 수 있다. 효과 관리자(26)는 애플리케이션(10)으로부터 텍스트 런의 전부 또는 일부를 수신하도록 구성될 수 있다. 예를 들어, 효과 관리자(26)는 텍스트 효과가 적용되어야 하는 텍스트 런만을 수신하도록 구성될 수 있다. 예를 들어, 텍스트 런(202)이 효과 없이 렌더링(rendering)되어야 한다면, 그 텍스트 런은 화살표(212)에 의해 표시된 바와 같이 그래픽 파이프라인(220)에 직접 전송될 수 있다. 일반적으로 텍스트 런 내의 각각의 문자들은 그 아웃라인을 개략적으로 표현하는 텍스트 경로로 이루어진다. 예를 들어, 텍스트 런(202)에 도시된 에리얼(Arial) 폰트의 대문자 "L"에 대한 텍스트 경로는 그 문자의 아웃라인을 그리는 6개의 포인트로 이루어진다.
머지 모듈(210)은 효과 엔진(26)에 의해 지시를 받았을 때 텍스트 런에 대한 머징된 텍스트 경로를 창설하도록 구성된다. 머징된 텍스트 경로는 단일 경로이며, 효과가 적용될 수 있도록 이 경로로부터 형태가 생성된다. 머지 모듈(210)이 효과 관리자(26) 내에 도시되어 있지만, 머지 모듈은 시스템(200) 내의 많은 다른 위치에 있을 수 있다. 예를 들어, 머지 모듈(210)은 애플리케이션(10), 운영 체제(16) 및 그래픽 파이프라인(220) 내에 있을 수 있다. 대안적으로, 머지 모듈(210)은 시스템 내의 기타 모듈과는 독립적으로 위치될 수 있다. 머지 모듈(210)은 텍스트 런(예를 들어, 텍스트 런(202))의 각 문자에 대한 각각의 텍스트 경로를 수신한 후, 전체 텍스트 런에 대한 머징된 텍스트 경로를 계산하도록 구성된다. 일 실시예에 따르면, 머지 모듈(210)은 머징된 텍스트 경로를 계산하기 위해 부울 연산을 이용한다. 대안적으로, 머지 모듈(210)은 효과가 적용되어야 하는 텍스트 런 내의 바로 그 문자들에 대한 머징된 텍스트 경로를 창설하도록 구성될 수 있다. 각각의 텍스트 경로는 각각의 문자들에 대한 경계를 이루는 포인트들의 세트를 포함한다. 일반적으로, 머지 모듈(210)은 전체 텍스트 런에 대한 경계(아웃라인)를 나타내는 머징된 텍스트 경로를 계산한다. 본 예에서, 텍스트 런(202)에 대한 경계는 "Letter"를 이루는 6개의 문자를 포함한다. 전체 텍스트 런에 대한 경계는 텍스트 경로에 의해 식별되는 그 경계에 의해 규정되는 문자들의 결합체(union)를 규정한다. 머지 모듈(210)은 텍스트 런 내의 머징된 문자들의 여분의 조각들을 제거한다. 그 후에, 효과 엔진(26)은 효과가 적용될 수 있는 단일의 머징된 텍스트 경로로부터 형태를 창설할 수 있다. 생성되는 형태는 전체의 머징된 형태를 나타낸다. 머지 모듈(210)이 텍스트 런 내의 형태들 간의 오버랩을 제거하므로, 여분이 없는 3-D 모델이 텍스트 경로로부터 생성될 수 있다.
예를 들어, 본 예에서, 효과 엔진(26)은 머지 모듈(210)을 이용하여 텍스트 런 "Letter"를 처리하였고; "Letter"를 나타내는 생성된 형태에 효과를 적용한 후에 디스플레이(28)에 보여지는 "Letter"의 디스플레이된 버전(230)을 그래픽 파이프라인에 제공하였다.
도 3은 텍스트 런에 적용되는 각종 효과를 도시하는 예시적인 애플리케이션 윈도우(300)를 도시한다. 도시한 바와 같이, 도 3은 애플리케이션 윈도우(310), 윈도우 요소(320), 디스플레이 영역(330) 및 텍스트 런(325, 334 및 336)을 포함한다.
텍스트 런(325)은, 머징된 텍스트 경로로부터 형태를 생성하지 않고서 효과가 텍스트 런에 적용될 때 발생되는 오버랩을 도시한다. 알 수 있는 바와 같이, 워드 "Letter" 내의 각각의 문자들은 다른 문자와 오버랩된다.
텍스트 런(334)은 머징된 텍스트 경로로부터 생성된 형태를 이용하여 창설되고, 이하의 효과들, 즉 텍스트에 적용된 라인, 필(fill)(그레이디언트(gradient)) 및 섀도(shadow) 효과를 갖는 워드 "Letter"를 도시한다.
텍스트 런(336)은 워드 "Letter"에 대한 머징된 텍스트 경로를 이용하여 창설된 기울임(bevel) 및 돌출(extrusion)을 갖는 3-D 모델을 도시한다. 이러한 돌출은 상이한 깊이에서 머징된 텍스트 경로로부터 생성된 형태를 복제하고 2개의 형태들을 연결함으로써 창설된다. 기울임은 3-D 모델의 에지(edge)에 프로필을 적용하여 돌출된 3-D 모델의 형태를 세련되게 함으로써 창설된다.
이하 도 4 및 도 5를 참조하여, 머징된 텍스트 경로로부터 생성된 형태에 효과를 적용하기 위한 예시적인 프로세스를 설명할 것이다.
본 명세서에 제시된 루틴의 설명을 읽을 때, 각종 실시예들의 논리적 동작들은 (1) 컴퓨팅 시스템 상에서 실행되는 컴퓨터 구현 액트(act) 또는 프로그램 모듈의 시퀀스로서, 및/또는 (2) 컴퓨팅 시스템 내의 상호접속된 머신 논리 회로 또는 회로 모듈로서 구현된다는 것이 이해되어야 한다. 이러한 구현은 본 발명을 구현하는 컴퓨팅 시스템의 성능 요건에 의존하는 선택의 문제이다. 따라서, 예시되고 본 명세서에서 설명된 실시예들을 이루는 논리적 동작은 동작, 구조적 디바이스, 액트 또는 모듈과 같이 다양하게 호칭된다. 이러한 동작, 구조적 디바이스, 액트 및 모듈은 소프트웨어, 펌웨어, 특수 목적 디지털 논리, 및 이들의 임의의 조합으로 구현될 수 있다.
도 4는 머징된 텍스트 경로로부터 생성된 형태에 효과를 적용하기 위한 프로세스를 도시한다.
시작 동작 후에, 프로세스는 텍스트 런이 수신되는 동작(410)으로 진행한다. 통상적으로, 텍스트 런은 워드 및/또는 문장을 이루는 문자들을 포함한다. 그러나 더 많거나 적은 문자들이 텍스트 런 내에 포함될 수 있다.
동작(420)으로 이동하여, 머징된 텍스트 경로가 창설된다. 머징된 텍스트 경로는, 텍스트 런 내의 각각의 문자와 연관된 텍스트 경로들로부터 생성된다. 머징된 텍스트 경로는 텍스트 런의 아웃라인에 대한 형태 정보를 포함한다. 일 실시예에 따르면, 부울 연산이 머징된 텍스트 경로를 창설하는 데 이용된다(도 5 및 관련 설명 참조).
동작(430)으로 이동하여, 형태는 머징된 텍스트 경로로부터 생성된다. 본 명세서에 설명한 바와 같이, 그 형태는 여분의 부분을 제거한 머징된 텍스트 경로를 나타낸다.
동작(440)으로 진행하여, 임의의 원하는 효과들이 생성된 형태에 적용될 수 있다. 형태가 생성되었을 때, 텍스트 경로 정보는 유실되지 않는다. 그 형태는 와핑, 스케일링 및 기타 효과와 같은 추가적인 변형을 여전히 거칠 수 있다. 그 후에 프로세스는, 프로세스가 다른 액션을 처리하는 것으로 복귀하는 최종 동작으로 진행한다.
도 5는 부울 연산을 이용하여 머징된 텍스트 경로를 창설하기 위한 프로세스를 도시한다.
시작 동작 후에, 프로세스는, 텍스트 런 내의 각각의 문자와 연관된 기하 형태가 수신되는 동작(510)으로 진행한다. 수신된 기하 형태는 일반적으로 그 경계의 관점에서 표현된 2D 영역으로 이루어진다. 각각의 경계는 3가지 클래스의 포인트에 의해 표현될 수 있는 폐쇄된 도형(closed figure)의 컬렉션이다. 이러한 포인트 클래스는 경계 내의 포인트, 경계 외부의 포인트 및 경계 상의 포인트를 포함한다. 일반적으로, 한 포인트가 주어졌을 때 그 포함관계(containment)는 그 포인트로부터 무한대의 광선을 발하고, 경계와의 그 교차점을 새기고(tally) 소정의 룰을 적용함으로써 결정될 수 있다.
단일 포인트에 대한 이러한 인/아웃(in/out) 포함관계 조회는 간단하지만, 어떤 조회 및 구조는 경계 자체의 보다 깊은 분석 및 프로세싱을 요구한다. 일반적으로, 텍스트 런에 대한 경계의 비교차 조각들(non-intersecting pieces)은 여분의 조각을 식별하기 위해 조사되며, 여분이 아닌 조각들은 효과가 적용된 영역에 대한 그 배향(orientation)에 따라 분류된다.
동작(520)으로 이동하여, 기하 형태는 체인들로 쪼개진다. 일 실시예에 따르면, 기하 형태 내의 곡선의 형태는 다각형에 의해 근사화된다. 본 명세서에서 규정된 바와 같이, 체인은 점점 낮아지는 높이(descending height)에 꼭지점들을 갖는 다각형의 세그먼트(segment)이다. 일 실시예에 따르면, 다각형의 꼭지점은 내림차순(descending order)으로 처리된다. 그 순서는, y 좌표에 따라, 또는 y 좌표가 동등한 경우에는 x 좌표에 따라 사전식(lexicographic)일 수 있다. 일 실시예에 따르면, 체인은, 필요할 수 있는 추가적인 데이터를 보유하기 위해 이용되는 일반 포인터(generic pointer)를 갖는다. 체인은 그 제일 위의 꼭지점들(head vertices)의 높이에 의해 소팅(sorting)되는 메인 체인 리스트에 삽입된다. 일 실시예에 따르면, 오름차순의 꼭지점 시퀀스는 기록된 그 원래 방향과는 반대의 체인들로서 구성된다.
동작(530)으로 이동하여, 체인의 꼭지점들이 스캔된다. 일 실시예에 따르면, 꼭지점들은 높이가 감소하는 순서로 트래버싱된다(traversed in decreasing height). 체인 상에서 가장 최근에 처리된 꼭지점이 체인의 커서이다. 그 체인을 따라 내려와서 다음 꼭지점이 체인의 후보 꼭지점이다. 체인은 그것의 헤드가 직면되었을 때 활성화되며, 그 최후 꼭지점이 처리된 후에 비활성화된다.
일 실시예에 따르면, 체인 레퍼런스의 2개의 작업 리스트가 활성 체인 리스트 및 후보 체인 리스트를 포함하여 보유된다. 활성 체인 리스트는 좌측에서 우측으로 수평으로 소팅된, 현재의 프로세싱 높이에서 에지를 갖는 체인들을 포함한다. 후보 체인 리스트는 그 후보 꼭지점들의 높이에 의해 소팅된 활성 체인들을 포함한다. 일 실시예에 따르면, 꼭지점 좌표는 정수의 격자로 반올림된다. 그 근사 좌표에 추가하여, 에지 교차점들에 의해 형성되는 새로운 꼭지점들은 이들을 형성한 교차 단편들의 정보를 저장한다. 근사 수치(approximate number)를 비교하는 대 신, 이러한 꼭지점들에 대한 조회는 비교될 필요가 있는 수치들을 규정하는 표현식(expression)을 비교한다. 구간 연산(interval arithmetic)은 모든 계산의 수치 결과를 포함하도록 보장되는 구간을 계산하는 데 이용된다. 그러면, 계산 결과를 비교하는 것은 비교되는 구간들이 공통부분을 갖지 않는 한 명백하게(unambiguously) 수행될 수 있는데, 대부분의 시간에서 그러하다. 비교되는 구간들이 오버랩될 때, 프로세스는 정확한 답변을 위한 정확한 연산 패키지에 의해 수행된 계산에 의지한다. 스캐닝 루프(530)는 교차점에서 체인을 분할하는 것(540), 결합부(junction)를 계산하는 것(550) 및 폐쇄된 도형을 발하는 것(emitting)(560)을 포함하는 3개의 상이한 동작을 포함한다. 이러한 동작들은 스캐닝 동작 동안 반복하여 발생할 수 있다.
동작(540)은 체인을 그 교차점에서 분할한다. 체인의 첫번째(가장 높은) 꼭지점이 헤드이고, 마지막(가장 낮은) 꼭지점이 꼬리이다. 임의의 다른 꼭지점이 처리될 때, 그 꼭지점 아래의 에지는 활성 리스트 내의 좌측 및 우측 이웃들과의 교차점이 있는지 조사된다. 교차점이 발견될 때, 체인은 분할된다. (교차점 아래의) 새롭게 분할된 체인은 마스터 체인 리스트에 삽입된다. 소정 집합의 선분들 사이의 교차점들을 식별하기 위한 벤틀리-오트만(Bentley-Ottman) 알고리즘의 버전이 이용될 수 있다. 메인 체인 리스트 내의 체인은 그 체인을 작업 리스트(활성 리스트 및 후보 리스트)에 삽입함으로써 활성화되고, 그것의 커서는 그 헤드에 위치된다. 활성 체인은 그것의 꼬리가 처리된 후에, 작업 리스트에서 제거된다. 체인이 (교차점에서) 분할된다면, 그 체인은 후보 리스트로부터 제거되고 교차 꼭지 점의 높이에 따라 재삽입되는데, 이제 이 교차 꼭지점이 그 체인의 후보(및 꼬리) 꼭지점이다.
꼭지점이 후보 리스트로부터 프로세싱을 위해 선택된 경우에, 체인은 그 리스트에서 제거되고, 커서는 후보로 이동된 후에 처리된다. 그보다 아래의 꼭지점이 존재한다면, 그 꼭지점이 후보가 되고, 체인은 그 후보 꼭지점의 높이에 따라 후보 리스트에 삽입된다. 후보 꼭지점이 없다면, 결합부가 거기에서 설정되고, 체인은 그 결합부가 처리된 후에 비활성화된다. 동작(540)은 임의의 꼭지점이 처리될 때 그 꼭지점에서 발생할 수 있다.
결합부가 동작(550)에서 계산된다. 새로운 체인이 활성화되거나 기존의 체인의 꼬리가 처리될 때, 그것과 일치하는 헤드 또는 꼬리를 갖는 모든 체인들로 결합부가 확립되고 파퓰레이트(populate)된다. 헤드가 일치하는 체인을 헤드 체인이라 하고, 꼬리가 일치하는 체인을 꼬리 체인이라 한다. 새로운 체인을 활성화시킴으로써 트리거링된다면, 활성 체인들 사이에서의 결합부의 위치는 그들의 활성 에지들에 대한 그 새로운 체인의 위치를 조사함으로써 설정된다. 이웃 체인들의 꼬리가 결합부와 일치한다면, 그 이웃 체인들이 모여져서 꼬리 체인으로서 결합부에 추가된다. 마스터 리스트로부터의 추가적인 체인들의 헤드들이 결합부와 일치한다면, 그 추가적인 체인들은 헤드-체인으로서 결합부에 추가된다. 헤드 체인은 결합부에서의 그것의 방향에 의해 좌측으로부터 우측으로 소팅된다. 첫번째 에지가 동일 직선상에 있는(collinear) 임의의 체인 쌍은 더 짧은 에지의 팁(tip)에서 분할된다. 결합부의 최좌측 및 최우측 헤드-체인들은 테스트되고, 이들이 자신의 이웃 들과 교차한다면 분할된다. 결합부가 헤드 체인들을 갖지 않는다면, 그것의 좌측 및 우측 이웃들(이들은 결합부가 사라진(gone) 후에는 서로의 이웃들이 될 것임)이 테스트되고, 이들이 교차하는 경우에는 분할된다. 모든 새로운 헤드-체인들이 분류자 객체(classifier object)를 이용하여 (좌측, 우측 또는 여분으로서) 분류된다. 현재 2개 유형의 분류자가 있다. 하나는 단일 형태를 그것의 필 룰(fill rule)에 기초하여 분류하기 위한 것이고, 다른 하나는 2개 형태의 경계를 서로의 에지의 상호 포함관계(mutual contaimnent)에 기초하여 분류하는 것에 더하여 부울 연산의 유형에 기초하여 여분의 체인들을 마크한다.
동작(560)은 폐쇄된 도형을 발한다. 영역에 대한 폐쇄된 도형을 발한다는 것은 영역의 경계를 비교차 조각들(non-intersecting pieces)로 쪼개는 것, 여분의 조각들을 제거하는 것, 그리고 여분이 아닌 나머지 조각들을 일치하는 배향의(consistently-oriented) 단순한 루프로 연결하는 것을 말한다. 동작(560)은 임의의 결합부가 처리될 때 발생할 수 있다. 그 후, 프로세스는 최종 블록으로 이동하고 다른 액션을 처리하기 위해 복귀한다.
도 6은 체인들이 어떻게 아웃라인을 형성하는지를 도시한다.
헤드-체인 쌍을 갖는 체인들의 스트링으로 시작하여(610), 꼬리 체인이 헤드 체인에 연결된다(620). 2개의 꼬리 체인이 연결되고, 그 체인들의 스트링은 그들이 구별된다면 연쇄된다(concatenated)(630). 체인들이 체인들의 스트링에 속한다면 폐쇄된 도형이 얻어진다(640).
어떤 액션을 취할지에 대한 결정은 (좌측, 우측 또는 여분으로서의) 체인들 의 분류 및 결합부에서의 헤드 및 꼬리 체인의 카운트(count) 및 패리티(parity)에 기초한다.
상술한 상세사항, 예들 및 데이터는 본 발명의 구성의 제조 및 사용의 완전한 설명을 제공한다. 본 발명의 많은 실시예들은 본 발명의 사상 및 범위를 벗어나지 않고 이루어질 수 있으므로, 본 발명은 이하 첨부되는 청구항에 존재한다.

Claims (20)

  1. 효과를 적용하기 위한 컴퓨터로 구현된 방법으로서,
    둘 이상의 문자를 포함하는 텍스트 런(text run)을 수신하는 단계;
    상기 텍스트 런에 대한 머징된(merged) 텍스트 경로를 생성하는 단계- 상기 머징된 텍스트 경로를 생성하는 단계는,
    상기 텍스트 런과 연관되며 하나 이상의 곡선의 형태(curved shapes)를 포함하는 기하 형태(geometry)를 수신하는 것;
    상기 하나 이상의 곡선의 형태를 다각형으로 근사화하는 것;
    상기 기하 형태를 체인들로 쪼개는 것- 적어도 하나의 체인은 다각형의 세그먼트를 포함하고, 상기 다각형의 세그먼트는 상기 하나 이상의 곡선의 형태로부터 도출되고, 상기 적어도 하나의 체인은 셋 이상의 꼭지점을 포함하고, 상기 셋 이상의 꼭지점은 머리 꼭지점과 꼬리 꼭지점을 포함하고, 상기 머리 꼭지점은 상기 체인 내에서 제1 꼭지점이고 상기 꼬리 꼭지점은 상기 체인 내에서 마지막 꼭지점임 - ;
    결합부(junction)를 계산하는 것- 새로운 체인이 활성화되거나 또는 기존 체인의 꼬리 꼭지점이 처리되는 경우 결합부가 확립되고, 상기 결합부는 상기 새로운 체인의 머리 꼭지점 또는 상기 기존 체인의 꼬리 꼭지점의 좌표 위치를 가지고, 상기 결합부는 상기 결합부와 동일한 좌표를 갖는 하나 이상의 머리 꼭지점 또는 꼬리 꼭지점을 포함함 -;
    여분의(redundant) 체인들을 폐기하는 것;
    여분이 아닌(non-redundant) 조각들을 연결하여 아웃라인을 형성하는 것;
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는지 여부를 판정하는 것;
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는 것으로 판정되는 경우, 상기 2개의 인접하는 문자 간의 오버랩을 제거하는 것- 상기 오버랩은 상기 텍스트 런 내의 오버랩되는 머징된 문자들의 하나 이상의 여분의 조각을 제거함으로써 제거됨 -을 포함함 -;
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하는 단계; 및
    상기 머징된 형태에 효과를 적용하는 단계
    를 포함하는, 컴퓨터로 구현된 방법.
  2. 제1항에 있어서,
    상기 텍스트 런을 수신하는 단계는 효과가 적용되어야 하는 적어도 2개의 인접한 문자들을 수신하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  3. 제1항에 있어서,
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하는 단계는 상기 텍스트 런과 연관된 텍스트 경로 정보를 보유하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  4. 제1항에 있어서,
    상기 머징된 텍스트 경로를 생성하는 단계는 상기 텍스트 런의 아웃라인을 결정하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  5. 제1항에 있어서,
    상기 효과를 적용하는 단계는 상기 텍스트 런에 라인 효과를 적용하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  6. 제1항에 있어서,
    상기 효과를 적용하는 단계는 돌출(extrusion) 및 기울임(beveling) 효과를 적용하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  7. 텍스트 런에 효과를 적용하기 위한 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 저장 매체로서,
    상기 명령어들은,
    제1 효과가 적용되어야 하는 텍스트 런을 수신하는 동작- 상기 텍스트 런은 둘 이상의 문자를 포함함 -;
    상기 텍스트 런에 대한 머징된 텍스트 경로를 생성하는 동작- 상기 머징된 텍스트 경로를 생성하는 동작은,
    상기 텍스트 런과 연관되며 하나 이상의 곡선의 형태를 포함하는 기하 형태를 수신하는 것;
    상기 하나 이상의 곡선의 형태를 다각형으로 근사화하는 것;
    상기 기하 형태를 체인들로 쪼개는 것- 적어도 하나의 체인은 다각형의 세그먼트를 포함하고, 상기 다각형의 세그먼트는 상기 하나 이상의 곡선의 형태로부터 도출되고, 상기 적어도 하나의 체인은 셋 이상의 꼭지점을 포함하고, 상기 셋 이상의 꼭지점은 머리 꼭지점과 꼬리 꼭지점을 포함하고, 상기 머리 꼭지점은 상기 체인 내에서 제1 꼭지점이고 상기 꼬리 꼭지점은 상기 체인 내에서 마지막 꼭지점임 - ;
    결합부를 계산하는 것- 새로운 체인이 활성화되거나 또는 기존 체인의 꼬리 꼭지점이 처리되는 경우 결합부가 확립되고, 상기 결합부는 상기 새로운 체인의 머리 꼭지점 또는 상기 기존 체인의 꼬리 꼭지점의 좌표 위치를 가지고, 상기 결합부는 상기 결합부와 동일한 좌표를 갖는 하나 이상의 머리 꼭지점 또는 꼬리 꼭지점을 포함함 -;
    여분의 체인들을 폐기하는 것;
    여분이 아닌 조각들을 연결하여 아웃라인을 형성하는 것;
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는지 여부를 판정하는 것;
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는 것으로 판정되는 경우, 상기 2개의 인접하는 문자 간의 오버랩을 제거하는 것- 상기 오버랩은 상기 텍스트 런 내의 오버랩되는 머징된 문자들의 하나 이상의 여분의 조각을 제거함으로써 제거됨 -을 포함함 -;
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하는 동작; 및
    상기 머징된 형태에 상기 제1 효과를 적용하는 동작을 수행하는,
    컴퓨터 판독가능 저장 매체.
  8. 제7항에 있어서,
    상기 제1 효과가 적용되어야 하는 텍스트 런을 수신하는 동작은, 워드(word)를 형성하는 문자들을 수신하는 것을 포함하고, 각각의 문자는 텍스트 경로 정보를 포함하는
    컴퓨터 판독가능 저장 매체.
  9. 제7항에 있어서,
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하는 동작은 상기 제1 효과가 적용된 후에 제2 효과가 상기 머징된 형태에 적용될 수 있도록 상기 텍스트 런과 연관된 텍스트 경로 정보를 저장하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  10. 제7항에 있어서,
    상기 머징된 텍스트 경로를 생성하는 동작은 상기 텍스트 런의 아웃라인을 결정하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  11. 제7항에 있어서,
    상기 제1 효과를 적용하는 동작은 상기 텍스트 런에 라인 효과를 적용하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  12. 제7항에 있어서,
    상기 제1 효과를 적용하는 단계는 돌출 및 기울임 효과를 적용하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  13. 텍스트 런에 효과를 적용하기 위한 컴퓨팅 장치로서,
    프로세서 및 컴퓨터 판독가능 저장 매체;
    상기 컴퓨터 판독가능 저장 매체에 저장되고 상기 프로세서 상에서 실행되는 운영 환경;
    디스플레이;
    상기 운영 환경의 제어 하에서 동작하고, 효과가 적용되어야 하는 텍스트 런을 생성하도록 동작하는 애플리케이션; 및
    효과 엔진을 포함하고,
    상기 효과 엔진은,
    둘 이상의 문자를 포함하는 텍스트 런을 수신하고,
    상기 텍스트 런과 연관되며 하나 이상의 곡선의 형태를 포함하는 기하 형태를 수신하고,
    상기 하나 이상의 곡선의 형태를 다각형으로 근사화하고,
    상기 기하 형태를 체인들로 쪼개며- 적어도 하나의 체인은 다각형의 세그먼트를 포함하고, 상기 다각형의 세그먼트는 상기 하나 이상의 곡선의 형태로부터 도출되고, 상기 적어도 하나의 체인은 셋 이상의 꼭지점을 포함하고, 상기 셋 이상의 꼭지점은 머리 꼭지점과 꼬리 꼭지점을 포함하고, 상기 머리 꼭지점은 상기 체인 내에서 제1 꼭지점이고 상기 꼬리 꼭지점은 상기 체인 내에서 마지막 꼭지점임 - ;
    결합부를 계산하고- 새로운 체인이 활성화되거나 또는 기존 체인의 꼬리 꼭지점이 처리되는 경우 결합부가 확립되고, 상기 결합부는 상기 새로운 체인의 머리 꼭지점 또는 상기 기존 체인의 꼬리 꼭지점의 좌표 위치를 가지고, 상기 결합부는 상기 결합부와 동일한 좌표를 갖는 하나 이상의 머리 꼭지점 또는 꼬리 꼭지점을 포함함 -,
    여분의(redundant) 체인들을 폐기하며,
    여분이 아닌(non-redundant) 조각들을 연결하여 아웃라인을 형성하고,
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는지 여부를 판정하고,
    상기 텍스트 런 내에서 2개의 인접한 문자들이 오버랩되는 것으로 판정되는 경우, 상기 2개의 인접하는 문자 간의 오버랩을 제거- 상기 오버랩은 상기 텍스트 런 내의 오버랩되는 머징된 문자들의 하나 이상의 여분의 조각을 제거함으로써 제거됨 -함으로써,
    상기 텍스트 런에 대한 머징된 텍스트 경로를 생성하고,
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하며,
    상기 머징된 형태에 효과를 적용하고,
    상기 머징된 형태를 상기 디스플레이에 표시하도록 구성된
    컴퓨팅 장치.
  14. 제13항에 있어서,
    상기 머징된 텍스트 경로로부터 머징된 형태를 생성하는 것은 상기 텍스트 런과 연관된 텍스트 경로 정보를 보유하는 것을 포함하는
    컴퓨팅 장치.
  15. 제14항에 있어서,
    상기 머징된 텍스트 경로로부터 아웃라인을 생성하는 것을 더 포함하는
    컴퓨팅 장치.
  16. 제13항에 있어서,
    상기 텍스트 런에 대한 머징된 텍스트 경로를 생성하는 것은 부울 연산을 이용하는 것을 포함하는
    컴퓨팅 장치.
  17. 제14항에 있어서,
    상기 효과를 적용하는 것은 라인, 스케일링(scaling), 섀도(shadowing), 돌출 및 기울임 중에서 선택되는 효과를 적용하는 것을 포함하는
    컴퓨팅 장치.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020087019902A 2006-02-17 2007-02-13 머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치 KR101323082B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/357,285 US7752543B2 (en) 2006-02-17 2006-02-17 Applying effects to a merged text path
US11/357,285 2006-02-17
PCT/US2007/004046 WO2007098013A1 (en) 2006-02-17 2007-02-13 Applying effects to a merged text path

Publications (2)

Publication Number Publication Date
KR20080093442A KR20080093442A (ko) 2008-10-21
KR101323082B1 true KR101323082B1 (ko) 2013-10-29

Family

ID=38427711

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087019902A KR101323082B1 (ko) 2006-02-17 2007-02-13 머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치

Country Status (9)

Country Link
US (1) US7752543B2 (ko)
EP (1) EP2002352B1 (ko)
JP (1) JP5097133B2 (ko)
KR (1) KR101323082B1 (ko)
CN (1) CN101385022B (ko)
BR (1) BRPI0707145A8 (ko)
ES (1) ES2570933T3 (ko)
RU (1) RU2430421C2 (ko)
WO (1) WO2007098013A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007092587A2 (en) 2006-02-08 2007-08-16 Becton, Dickinson And Company Improved label processor and method relating thereto
US8633930B2 (en) * 2007-03-26 2014-01-21 Apple Inc. Non-linear text flow
US20090199087A1 (en) * 2008-02-04 2009-08-06 Microsoft Corporation Applying rich visual effects to arbitrary runs of text
US8300052B1 (en) 2008-09-24 2012-10-30 Autodesk, Inc. Application of bevel curves to splines
US8973293B2 (en) 2010-11-19 2015-03-10 Becton, Dickinson And Company Specimen container label for automated clinical laboratory processing systems
WO2013110286A1 (en) * 2012-01-23 2013-08-01 Microsoft Corporation Paragraph property detection and style reconstruction engine
WO2014005609A1 (en) 2012-07-06 2014-01-09 Microsoft Corporation Paragraph alignment detection and region-based section reconstruction
DE102014006549B4 (de) * 2014-05-06 2022-05-05 Elektrobit Automotive Gmbh Technik zur Verarbeitung einer Zeichenfolge zur graphischen Darstellung an einer Mensch-Maschine-Schnittstelle
CN111753019B (zh) * 2019-03-26 2024-07-16 北京沃东天骏信息技术有限公司 一种应用于数据仓库的数据分区方法和装置
US11314924B2 (en) * 2020-06-04 2022-04-26 Adobe Inc. Constructing a path for character glyphs
US11386596B2 (en) * 2020-10-21 2022-07-12 Adobe Inc. Automatic creation of text-on-path graphic along complex paths

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170442A (en) 1987-09-08 1992-12-08 Seiko Epson Corporation Character pattern transforming system
US5850228A (en) 1995-07-31 1998-12-15 Sharp Kabushiki Kaisha Character generation with extracted and transformed skeleton data
KR20040085659A (ko) * 2003-04-01 2004-10-08 삼성전자주식회사 벡터 폰트 생성방법 및 장치
US6804573B2 (en) 1998-08-17 2004-10-12 Soft Sight, Inc. Automatically generating embroidery designs from a scanned image

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355449A (en) * 1991-09-30 1994-10-11 Destiny Technology Corporation Method and apparatus for outline font character generation in dot matrix devices
US5493108A (en) * 1992-10-14 1996-02-20 Spectra-Physics Scanning Systems, Inc. Method and apparatus for recognizing and assembling optical code information from partially scanned segments
US5438656A (en) * 1993-06-01 1995-08-01 Ductus, Inc. Raster shape synthesis by direct multi-level filling
US5583978A (en) * 1994-05-27 1996-12-10 Bitstream Inc. Apparatuses and methods for creating and using portable fonted texts with embedded automatically-created font descriptions
US5600772A (en) * 1994-08-17 1997-02-04 Printronix, Inc. Bit map character convertor using chain-codes for the character filling process
US5524182A (en) * 1994-12-21 1996-06-04 Hewlett-Packard Company System and method for compressing and decompressing fonts based upon font stroke regularities
US5719595A (en) * 1995-05-09 1998-02-17 Apple Computer, Inc. Method and apparauts for generating a text image on a display with anti-aliasing effect
US6487568B1 (en) * 1997-07-18 2002-11-26 Tesseron, Ltd. Method and system for flowing data to an arbitrary path defined by a page description language
US7302438B1 (en) * 1997-07-18 2007-11-27 Tesseron Ltd. Method and system for flowing data to an arbitrary path defined by a page description language
US6209010B1 (en) * 1997-07-18 2001-03-27 Varis Corporation Computer implemented method for wrapping data to an arbitrary path defined by a page description language
US6952210B1 (en) * 1997-12-05 2005-10-04 Adobe Systems Incorporated Method of generating multiple master typefaces containing kanji characters
US7315979B1 (en) * 1998-11-09 2008-01-01 Tesseron Ltd. Method and system for dynamic flowing data to an arbitrary path defined by a page description language
US6437793B1 (en) * 1999-07-29 2002-08-20 Bitstream Inc. System for rapidly performing scan conversion with anti-aliasing upon outline fonts and other graphic elements
US6563502B1 (en) * 1999-08-19 2003-05-13 Adobe Systems Incorporated Device dependent rendering
US6803913B1 (en) * 1999-12-01 2004-10-12 Microsoft Corporation Warping text along a curved path
US6518968B1 (en) * 2000-05-17 2003-02-11 Hewlett-Packard Company Method and apparatus for performing H-space bump mapping suitable for implementation with H-space lighting in a graphics pipeline of a computer graphics display system
AU2001292202A1 (en) * 2000-09-19 2002-04-02 Technion Research And Development Foundation Ltd. Method and apparatus for shape deformation and placement
US6628295B2 (en) * 2001-01-31 2003-09-30 Adobe Systems Incorporated Modifying a stylistic property of a vector-based path
TW511007B (en) * 2001-08-30 2002-11-21 Ulead Systems Inc System and method editing and processing character string
AU2002351310A1 (en) * 2001-12-06 2003-06-23 The Trustees Of Columbia University In The City Of New York System and method for extracting text captions from video and generating video summaries
JP3899421B2 (ja) * 2002-03-26 2007-03-28 学校法人東京電機大学 文字及び文字列生成表示装置
US7536052B2 (en) * 2003-12-15 2009-05-19 Xerox Corporation Corner sharpening of text and line art in a super resolution anti-aliasing image path
US7855812B2 (en) * 2004-02-13 2010-12-21 Texas Instruments Incorporated Cellular phone with scanning capability
US7770100B2 (en) 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170442A (en) 1987-09-08 1992-12-08 Seiko Epson Corporation Character pattern transforming system
US5850228A (en) 1995-07-31 1998-12-15 Sharp Kabushiki Kaisha Character generation with extracted and transformed skeleton data
US6804573B2 (en) 1998-08-17 2004-10-12 Soft Sight, Inc. Automatically generating embroidery designs from a scanned image
KR20040085659A (ko) * 2003-04-01 2004-10-08 삼성전자주식회사 벡터 폰트 생성방법 및 장치

Also Published As

Publication number Publication date
ES2570933T3 (es) 2016-05-23
EP2002352A1 (en) 2008-12-17
KR20080093442A (ko) 2008-10-21
US7752543B2 (en) 2010-07-06
JP5097133B2 (ja) 2012-12-12
JP2009527812A (ja) 2009-07-30
CN101385022B (zh) 2013-03-20
EP2002352A4 (en) 2012-04-11
EP2002352B1 (en) 2016-04-06
WO2007098013A1 (en) 2007-08-30
CN101385022A (zh) 2009-03-11
BRPI0707145A2 (pt) 2011-04-19
BRPI0707145A8 (pt) 2016-12-13
RU2008133598A (ru) 2010-02-20
US20070195095A1 (en) 2007-08-23
RU2430421C2 (ru) 2011-09-27

Similar Documents

Publication Publication Date Title
KR101323082B1 (ko) 머징된 텍스트 경로에 효과를 적용하기 위한 컴퓨터로 구현된 방법, 컴퓨터 판독가능 매체 및 컴퓨팅 장치
US11880382B2 (en) Systems and methods for generating tables from print-ready digital source documents
US10970458B1 (en) Logical grouping of exported text blocks
JP2006331423A (ja) 論理的文書構造を決定するための方法及び装置
JPH0445874B2 (ko)
JP5247311B2 (ja) 電子文書処理装置および電子文書処理方法
US9245361B2 (en) Consolidating glyphs of a font
JP2024025829A (ja) 情報処理装置、情報処理方法及びプログラム
JP7195092B2 (ja) 手描きの表の識別
KR102318492B1 (ko) 정보 처리장치, 그 제어방법 및 기억매체
US20230140498A1 (en) Glyph Accessibility and Swash Control System
JP7448132B2 (ja) 手書きの構造分解
US8605112B2 (en) Graphics drawing apparatus, method, and program and recording medium on which the program is recorded
JP2010039680A (ja) 画像処理装置、画像処理プログラムおよび画像処理方法
JP5062080B2 (ja) 3次元モデルデータを生成する装置および方法
US11941232B2 (en) Context-based copy-paste systems
Lorenzetto et al. A fast trapezoidation technique for planar polygons
US20220092260A1 (en) Information output apparatus, question generation apparatus, and non-transitory computer readable medium
JP4963633B2 (ja) 情報処理装置及び情報処理方法
JP2009193298A (ja) 情報処理装置及び情報処理方法及びプログラム
TWI450204B (zh) 文字最小外輪廓的生成系統及方法
CN112306490A (zh) 图层导出方法、装置、设备及存储介质
Blesic et al. ON THE COMPUTATION OF THE ORTHOGONAL HULL OF SIMPLE RECTILINEAR POLYGONS
JP2022070523A (ja) 意味表現解析システム及び意味表現解析方法
JPH0668202A (ja) 閉図形抽出方法

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160921

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170919

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee