KR20080003315A - 이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한시각적 렌디션을 제공하기 위한 방법 - Google Patents

이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한시각적 렌디션을 제공하기 위한 방법 Download PDF

Info

Publication number
KR20080003315A
KR20080003315A KR1020077021471A KR20077021471A KR20080003315A KR 20080003315 A KR20080003315 A KR 20080003315A KR 1020077021471 A KR1020077021471 A KR 1020077021471A KR 20077021471 A KR20077021471 A KR 20077021471A KR 20080003315 A KR20080003315 A KR 20080003315A
Authority
KR
South Korea
Prior art keywords
font file
font
text
document
representation
Prior art date
Application number
KR1020077021471A
Other languages
English (en)
Other versions
KR101150104B1 (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 KR20080003315A publication Critical patent/KR20080003315A/ko
Application granted granted Critical
Publication of KR101150104B1 publication Critical patent/KR101150104B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • 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
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers

Abstract

본 방법 및 시스템은 이용 가능하지 않거나 또는 제한된 폰트를 사용하여 포맷된 텍스트 구성 요소의 렌더링을 허용한다. 일 실시예에서, 제한된 폰트를 포함하는 문서를 생성할 때, 제한된 폰트로 포맷된 텍스트 부분은 대체 표현으로 처리된다. 텍스트 부분을 위한 텍스트 표현 및 추가 표현(들)은 문서 또는 컨테이너에 포함된다. 제한된 폰트 파일을 위한 고유한 표현은 소비하는 컴퓨팅 시스템이 제한된 폰트를 국부적으로 찾으려하는 시도를 허용한다. 각 텍스트 표현은 제한된 폰트 파일이 찾아지면, 그 대응하는 제한된 폰트를 사용하여 렌더링된다. 아니면, 추가 표현(들)이 사용된다.
폰트, URI, 렌더링, 폰트 디렉토리 지정자, 폰트 파일명 지정자, 고유 식별자

Description

이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한 시각적 렌디션을 제공하기 위한 방법{METHODS FOR PROVIDING AN ACCURATE VISUAL RENDITION OF A TEXT ELEMENT FORMATTED WITH AN UNAVAILABLE FONT}
본 발명은 텍스트 구성 요소의 정확한 시각적 렌디션(rendition)을 제공하기 위한 방법 및 시스템에 관한 것이다.
폰트 유형은 폰트 주조소(font foundry)로 알려진 회사에 의해 생성되는 유형을 포함할 수 있다. 일부 주조소는 그들이 생성한 폰트를 자유로이 배포하거나 또는 적어도 그 폰트를 사용하여 생성되는 문서에 포함되는 것을 허용하는 반면에, 다른 주조소는 특정한 폰트로 행해질 수 있는 것과 행해질 수 없는 것을 제한한다. 일반적으로, 특정한 폰트로 행해질 수 있는 것과 행해질 수 없는 것을 대충 규정해둔 상이한 레벨의 제한이 존재한다. 어느 레벨에서는, 폰트의 완전한 제한 해제가 가능한데, 이것은 우리가 폰트를 클라이언트 시스템에 설치하고, 설치를 위하여 폰트를 다른 사람에게 배포하는 것 등을 할 수 있음을 의미한다. 그러나, 다른 레벨에서는, 다양한 유형의 제한이 존재할 수 있다. 예컨대, 일부 폰트는, 사용자가 연관된 라이센스를 구매한 소비자인 경우에만, 폰트가 사용자의 클라이언트 시스템에 설치될 수 있다는 제한을 수반한다. 일부의 예에서는, 또 다른 제한에 의해, 폰트가 인쇄를 위하여 사용되는 것은 허용될 수 있지만, 인쇄 미리 보기를 하는 것과 같이 그 밖의 것을 위하여 사용되는 것은 허용되지 않는다. 다른 예에서는, 문서에 폰트와 연관된 폰트 파일을 첨부하는 것도 함께 제한될 수 있다.
이들 유형의 제한 및 다른 유형의 제한에 의해, 제한된 폰트를 포함하는 특정한 문서의 생성을 폭넓게 금지할 수 있다.
따라서, 본 발명은 제한된 폰트의 관점에서 문서의 생성 및 소비를 강화하는 시스템 및 방법의 제공에 관한 것이다.
적어도 일 실시예에서는, 이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한 시각적 렌디션을 제공하기 위한 혁신적인 방법 및 기술이 기재되어 있다. 하나 이상의 제한된 폰트, 즉 문서 또는 문서 컨테이너에 포함될 수 없는 폰트를 포함하는 문서를 생성할 때는, 폰트 파일이 문서에 포함되는 것이 아니라, 제한된 폰트를 사용하여 포맷된 텍스트 부분이 대체 표현으로 변환된다. 제한된 폰트를 사용하여 포맷된 텍스트 부분의 각각에 대한 텍스트 표현 및 하나 이상의 추가 표현이 문서 또는 문서 컨테이너에 포함된다. 각각의 제한된 폰트 파일에 대한 고유한 식별 특징 세트가 텍스트 구성 요소의 텍스트 표현과 연관되어 있기 때문에, 제한된 폰트(들)를 국부적으로 찾으려는 시도를 하기 위하여 컴퓨팅 시스템이 그 문서를 렌더링하는 것, 아니면 다르게 소비하는 것을 허용한다. 만약 제한된 폰트 파일이 컴퓨팅 시스템에 대해 이용 가능한 경우, 각각의 텍스트 표현은 그 대응하는 제한된 폰트를 사용하는 텍스트로 렌더링될 수 있다. 이와 달리, 제한된 폰트가 컴퓨팅 시스템에 대해 이용 가능하지 않은 경우, 텍스트의 그 부분에 대한 추가 표현 중 하나가 렌더링될 수 있다. 이와 같은 방식으로, 제한된 폰트를 갖는 하나 이상의 부분을 포함하는 문서의 정확한 시각적 렌더링을 이용 가능하게 할 수 있다.
도 1은 다양한 실시예의 다양한 실시 태양을 구현하기 위하여 사용될 수 있는 컴퓨팅 시스템의 도면.
도 2는 일 실시예에 따른 폰트 파일에 대하여 예시적인 고유한 식별 특징 세트를 도시하는 도면.
도 3은 일 실시예에 따른 방법의 단계를 도시하는 플로우챠트.
도 4는 일 실시예에 따른 연관(association)을 도시하는 도면.
도 5는 일 실시예에 따른 방법의 단계를 도시하는 플로우챠트.
도 6은 일 실시예에 따른 방법의 단계를 도시하는 플로우챠트.
개관
다양한 실시예가 문서 또는 문서 컨테이너의 텍스트 부분의 정확한 렌디션을 제공하기 위한 방법 및 시스템을 기재하고 도시한다. 텍스트 부분과 연관된 폰트 파일을 식별하는 수단이 기재되어 있다. 일 실시예에서, 이 수단은 폰트 파일에 대한 고유한 식별 특징 세트를 포함한다. 이하에서 명백해지는 바와 같이, 이 고유한 식별 특징 세트는, 폰트 파일을 사용하여 렌더링될 수 있는 텍스트 부분의 텍 스트 표현, 및 텍스트 부분의 하나 이상의 추가 표현을 포함하는 연관에 포함될 수도 있고 포함되지 않을 수도 있다.
일 실시예에서는, 문서 또는 문서 컨테이너의 일부를 포함하는 텍스트의 한 부분을 렌더링하거나 아니면 다르게 표시하기 위한 시도를 하는 방법이 개시되어 있다. 그 텍스트 부분과 연관된 폰트 파일이 문서 또는 문서 컨테이너에 포함되어 있지 않은 경우, 이 방법은 적어도 일부 실시예에서 폰트 파일의 고유한 식별 특징 세트를 사용하여, 포함되지 않은 폰트 파일의 복사본의 위치를 찾으려는 시도를 한다. 일 실시예에서, 고유한 식별 특징 세트는 임의의 동일하게 명명된 폰트 파일의 위치를 찾기 위해 사용된 후, 만약 찾은 경우에는, 임의의 이러한 파일이 콘텐트면에서 그 포함되지 않은 폰트 파일과 동일한지를 판정하기 위하여 사용된다. 폰트 파일의 복사본이 시스템에서 국부적으로 이용 가능하다면, 그 찾은 폰트 파일을 이용하여 텍스트 부분의 텍스트 표현을 렌더링할 수 있다. 한편, 폰트 파일의 복사본이 이용 가능하지 않으면, 폰트 파일을 이용하지 않고도 텍스트 부분의 대체 표현 또는 추가 표현(위에서 언급한 연관에서 발견된 것 등)이 렌더링될 수 있다.
예시적인 컴퓨터 시스템
도 1은 이하에 기재된 하나 이상의 실시예를 구현하기 위하여 사용될 수 있는 컴포넌트를 갖는 예시적인 컴퓨터 시스템을 도시한다.
컴퓨터 시스템(130)은 하나 이상의 프로세서 또는 처리 장치(132), 시스템 메모리(134), 및 시스템 메모리(134)를 포함하는 다양한 시스템 컴포넌트를 프로세서(132)에 연결하는 버스(136)를 포함한다. 버스(136)는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 가속 그래픽 포트(accelerated graphics port), 및 각종 버스 아키텍터 중 임의의 것을 이용하는 프로세서 또는 로컬 버스를 포함하는 몇몇 유형의 버스 구조 중 임의의 하나 이상의 어느 것을 나타낸다. 시스템 메모리(134)는 ROM(read only memory)(138) 및 RAM(random access memory)(140)을 포함한다. 시동 시 컴퓨터(130) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(142)은 ROM(138)에 저장되어 있다.
또한, 컴퓨터(130)는 하드 디스크(도시 안됨)로부터의 판독 및 이에 대한 기입을 위한 하드 디스크 드라이브(144), 이동식 자기 디스크(148)로부터의 판독 및 이에 대한 기입을 위한 자기 디스크 드라이브(146), 및 CD ROM 또는 다른 광 매체와 같은 이동식 광디스크(152)로부터의 판독 및 이에 대한 기입을 위한 광 디스크 드라이브(150)를 포함한다. 하드 디스크 드라이브(144), 자기 디스크 드라이브(146) 및 광 디스크 드라이브(150)는 SCSI 인터페이스(154) 또는 몇몇의 다른 적절한 인터페이스에 의하여 버스(136)에 접속된다. 드라이브 및 이와 연관된 컴퓨터 판독 가능한 매체는 컴퓨터(130)를 위하여 컴퓨터 판독 가능한 명령어, 데이터 구조, 프로그램 모듈 및 다른 데이터의 비휘발성 저장을 제공한다. 여기에 기재된 예시적인 환경은 하드 디스크, 이동식 자기 디스크(148) 및 이동식 광 디스크(152)를 사용하지만, 당업자는 자기 카세트, 플래쉬 메모리 카드, 디지털 비디오 디스크, RAM(random access memory), ROM(read only memory) 등과 같이 컴퓨터에 의해 액세스 가능한 데이터를 저장할 수 있는 다른 유형의 컴퓨터 판독 가능한 매체도 예시적인 운영 환경에서 사용될 수 있음을 이해할 것이다.
운영 체체(158), 하나 이상의 애플리케이션 프로그램(160), 기타 프로그램 모듈(162) 및 프로그램 데이터(164)를 포함한 다수의 프로그램 모듈이 하드 디스크(144), 자기 디스크(148), 광 디스크(152), ROM(138) 또는 RAM(140)에 저장될 수 있다. 사용자는 키보드(166) 및 포인팅 장치(168)와 같은 입력 장치를 통해 컴퓨터(130)에 명령어 및 정보를 입력할 수 있다. 다른 입력 장치(도시 안됨)는 마이크로폰, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 다른 입력 장치는 버스(136)에 연결되는 인터페이스(170)를 통해 처리 장치(132)에 접속된다. 또한, 모니터(172) 또는 다른 유형의 표시 장치는 비디오 어댑터(174)와 같은 인터페이스를 통해 버스(136)에 접속된다. 모니터에 더하여, 퍼스널 컴퓨터는 통상적으로 스피커 및 프린터와 같은 다른 주변 출력 장치(도시 안됨)를 포함한다.
컴퓨터(130)는 통상 원격 컴퓨터(176)와 같은 하나 이상의 원격 컴퓨터에 대하여 논리 접속을 사용하는 네트워크 환경에서 동작한다. 원격 컴퓨터(176)는 다른 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 다른 공통 네트워크 노드일 수 있고, 메모리 저장 장치(178)만이 도 1에 도시되어 있음에도 불구하고, 통상적으로 컴퓨터(130)에 대해 위에서 설명한 구성 요소의 다수 또는 전부를 포함한다. 도 1에 도시된 논리 접속은 LAN(local area network)(180) 및 WAN(wide area network)(182)을 포함한다. 이러한 네트워킹 환경은 사무실, 회사 전체에 걸친 컴퓨터 네트워크, 인트라넷 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용되는 경우, 컴퓨터(130)는 네트워크 인터페이스 또는 어댑터(184)를 통해 로컬 네트워크(180)에 접속된다. WAN 네트워킹 환경에서 사용되는 경우, 컴퓨터(130)는 통상적으로 인터넷과 같은 WAN(182)을 통한 통신을 구축하기 위하여 모뎀(186) 또는 다른 수단을 포함한다. 내장 또는 외장될 수 있는 모뎀(186)은 시리얼 포트 인터페이스(156)를 통해 버스(136)에 접속된다. 네트워크 환경에서, 퍼스널 컴퓨터(130)에 대해 도시된 프로그램 모듈 또는 그 일부는 원격 메모리 저장 장치에 저장될 수 있다. 도시된 네트워크 접속은 일례이고, 컴퓨터 간의 통신 링크를 구축하는 다른 수단이 사용될 수 있음을 이해할 것이다.
일반적으로, 컴퓨터(130)의 데이터 프로세서는 컴퓨터의 다양한 컴퓨터 판독 가능 저장 매체에서 상이한 시간들에 저장된 명령어들을 통해 프로그래밍된다. 프로그램 및 운영 체제는 통상적으로 예컨대 플로피 디스크 또는 CD-ROM을 통해 배포된다. 그로부터, 프로그램 및 운영 체제는 컴퓨터의 보조 메모리에 설치되거나 로드된다. 실행 시에, 프로그램 및 운영 체제는 컴퓨터의 주 전자 메모리에 적어도 부분적으로 로드된다. 이러한 매체가 마이크로프로세서 또는 다른 데이터 프로세서와 관련하여 이하에 기재되는 단계를 구축하기 위한 명령어 또는 프로그램을 포함할 때, 여기에 기재된 본 발명은 이들 및 다른 다양한 유형의 컴퓨터 판독 가능한 저장 매체를 포함한다. 또한, 본 발명은 이하에 기재된 방법 및 기술에 따라 프로그래밍될 때, 컴퓨터 그 자체를 포함한다.
설명을 위해, 운영 체제와 같은 프로그램 및 다른 실행 가능한 프로그램 컴포넌트들이 여기서는 별개의 블록으로 도시되어 있지만, 이러한 프로그램 및 컴포넌트들은 상이한 시간들에서 컴퓨터의 상이한 저장 컴포넌트들에 존재하고, 컴퓨터 의 데이터 프로세서(들)에 의해 실행된다는 점을 알 것이다.
폰트 파일의 고유한 식별
도 2는 일 실시예에 따른 폰트 파일에 대한 예시적인 고유한 식별 특징 세트를 개괄적으로 200으로 도시한 것이다. 도시되고 기재되는 예에서, 고유한 식별 특징 세트는 폰트 디렉토리 지정자(210), 폰트 파일명 지정자(212) 및 폰트 파일 고유 식별자(214)를 포함한다.
이하에서 명백해지는 바와 같이, 고유한 식별 특징 세트(200)는 로컬 컴퓨팅 장치와 같은 컴퓨팅 장치에서 폰트 파일을 식별하기 위하여 사용될 수 있는 식별 메커니즘을 제공한다. 이는 예컨대, 문서 또는 문서 컨테이너에 폰트 파일이 포함되는 것을 방지하는 제한을 갖고 있는 폰트 파일을 사용하여 포맷되는 부분을 포함하는 문서가 생성될 때 유용할 수 있다. 마찬가지로, 이는 예컨대, 애플리케이션을 실행하는 컴퓨팅 시스템이 폰트 파일을 사용하는 하나 이상의 텍스트 부분을 포함하는 문서 또는 문서 컨테이너를 렌더링하려고 하거나 아니면 다르게 소비하려고 할 때 유용할 수 있지만, 애플리케이션이 반드시 문서 또는 문서 컨테이너를 통해 폰트 파일에 대해 액세스할 필요는 없다.
이들 및 다른 환경에서 고유한 식별 특징 세트(200)를 이용함으로써, 컴퓨팅 시스템은 폰트 파일을 국부적으로 찾으려는 시도를 할 수 있고, 이하에서 알 수 있는 바와 같이, 폰트 파일이 국부적으로 이용 가능하지 않은 경우에는, 여전히 대체 수단을 사용하여 문서의 의미 있고 시각적으로 정확한 렌더링을 제공하려는 시도를 할 수 있다.
도시되고 기재되는 실시예에서, 폰트 디렉토리 지정자(210)는 일반적인 표준 방식으로 로컬 폰트 디렉토리를 지정한다. 컴퓨팅 시스템이 문서 또는 문서 컨테이너를 렌더링하거나 아니면 다르게 소비하려고 할 때, 폰트 디렉토리 지정자는 관심있는 폰트 파일이 저장될 수 있는 위치에 대하여 실제 디렉토리 경로명과 같은 임의의 적절한 지정의 형태를 취할 수 있다. 그러나, 보다 통상적으로, 폰트 디렉토리 지정자는 로컬 폰트 디렉토리를 찾거나 아니면 이를 대체하기 위하여 사용되는 지정자의 형태를 취할 수 있다. 예컨대, 문서의 폰트 디렉토리 지정자는 "[FONTDIR]" 형태를 취할 수 있고, 렌더링 시스템은 이를 "c:\windows\fonts"로 대체할 수 있다. 이와 달리 또는 추가적으로, 폰트 디렉토리 지정자는 이하에서 제공되는 예인 URI(uniform resource identifier)의 일부 또는 컴포넌트의 형태를 취할 수 있다.
폰트 파일명 지정자(212)는 텍스트의 한 부분을 포맷하기 위하여 사용된 폰트 파일명을 나타낸다. 예컨대, 관심있는 텍스트 부분이 Arial 폰트를 사용하여 포맷된 경우, 폰트 파일명 지정자는 "arial.tff" 형태일 수 있다. 폰트 파일명 지정자는 연관된 텍스트 부분이 렌더링되거나 아니면 다르게 소비될 수 있도록, 관심있는 특정 폰트 파일을 국부적으로 찾으려는 시도에 사용되게 구성된다.
컴퓨팅 시스템의 로컬 폰트 파일이 텍스트의 한 부분을 포맷하기 위하여 사용된 폰트 파일과 동일한 파일명을 갖는 경우에도, 폰트 파일 그 자체는 여전히 그 파일의 다른 버전일 수 있고, 아니면 원래 사용된 폰트 파일과 동일하지 않을 수도 있다. 따라서, 고유 식별자(214)는, (폰트 파일명 지정자에 의해 나타낸 바와 같 이) 관심있는 폰트 파일과 동일한 파일명을 갖는 로컬 폰트 파일이 실제로 그와 동일한 폰트 파일인지 여부를 컴퓨팅 시스템이 확인하는 것을 허용한다.
도시되고 기재되는 실시예에서, 고유 식별자(214)는 하나의 파일을 다른 동일하지 않은 파일과 구별하기 위해 사용될 수 있는 임의의 추상화, 설명, 표현, 또는 다른 수단을 포함할 수 있다. 일 실시예에서, 고유 식별자(214)는 고유한 표현(200)에 의해 식별되는 폰트 파일의 순환 중복 체크썸(cyclic redundancy checksum)을 포함한다. 이와 달리 또는 이에 더하여, 고유 식별자는 당업자가 알 수 있는 바와 같이, 파일의 해시(hash), 또는 파일을 구별하는 임의의 다른 적절한 수단일 수 있다.
도 3은 폰트 파일을 고유하게 식별하고, 폰트 파일을 위한 고유한 표현을 제공하기 위한 단계를 도시하는 플로우챠트이다. 이 방법은 임의의 적절한 하드웨어, 소프트웨어, 펌웨어 또는 그 조합과 관련하여 구현될 수 있다. 도시된 예에서는, 이 방법이 소프트웨어로 구현된다.
단계(300)는 폰트 디렉토리 지정자를 사용하여 로컬 폰트 디렉토리를 지정한다. 적절한 폰트 디렉토리 지정자의 예가 위에서 주어졌다. 단계(310)는 폰트 파일명 지정자를 사용하여 폰트 파일명을 지정한다. 이를 행하는 방법의 예는 위에서 제공되었다. 단계(312)는 폰트 파일에 대하여 고유 식별자를 생성한다. 적절한 고유 식별자의 예는 위에서 주어졌다.
단계(314)는 폰트 디렉토리 지정자, 폰트 파일명 지정자 및 고유 식별자를 조합함으로써 폰트 파일에 대한 고유한 식별 특징 세트를 형성한다. 이 단계는 임 의의 적절한 방법으로 구현될 수 있다. 예컨대, 하나의 예시적인 실시예에서, 고유한 식별 특징 세트는 URI(uniform resource identifier)의 형태를 취한다.
고유한 식별 특징 세트가 URI를 포함하는 실시예에서, 폰트 파일 디렉토리 지정자는 URI의 <scheme> 컴포넌트이고, 폰트 파일명 지정자는 URI의 <path> 컴포넌트이고, 고유 식별자는 URI의 <query> 컴포넌트인 새로운 URI 스킴이 규정된다. 예컨대, <scheme>으로서 "localfont"가 사용되고, <path>로서 "arial.tff"가 사용되고, <query>로서 "12ad43DF"와 동일한 폰트 파일의 순환 중복 체크썸이 사용되는 URI는 :
Figure 112007067751153-PCT00001
와 같이 나타날 수 있다.
폰트 파일을 고유하게 식별하고, 폰트 파일에 대한 고유한 식별 특징 세트를 제공하기 위한 임의의 적절한 메커니즘이 청구 범위 및 그 정신을 벗어나지 않고도 이용될 수 있음을 이해할 것이다.
연관의 구축
위에 기재된 바와 같이, 관심있는 폰트 파일 또는 파일들이 고유하게 식별될 수 있는 경우, 이와 같이 고유하게 식별되는 폰트 파일이 사용될 수 있는 하나의 영역이 문서 빌딩의 영역에 있다. 구체적으로는, 고유하게 식별되는 폰트 파일을 사용함으로써, 이러한 폰트 파일을 사용하여 포맷된 텍스트를 포함하는 문서 또는 문서 컨테이너가 구축될 수 있고 어셈블될 수 있으며, 폰트 파일이 어떤 방식으로 제한될 수 있는 경우, 이하에서 명백해지는 바와 같이, 이러한 문서를 소비하는 소비자들에게 시각적으로 정확한 대안이 제공될 수 있다.
도 4는 일 실시예에 따른 연관 또는 연관 구조를 개괄적으로 400으로 도시한 것이다. 도시되고 기재되는 실시예에서, 연관은 텍스트(410)의 하나 이상의 텍스트 표현, 텍스트(412)의 하나 이상의 추가 표현, 및 선택적으로, 하나 이상의 텍스트 부분과 연관된 하나 이상의 폰트 파일을 식별하기 위한 수단(414)을 포함한다. 텍스트 부분은 전체 문서 및/또는 그보다 적은 일부를 포함할 수 있다.
이 예에서, 텍스트 표현(410)은 텍스트를 포맷하기 위하여 본래 사용된 것과 동일한 하나 이상의 폰트 파일을 사용함으로써 텍스트로 렌더링될 수 있는 전체 텍스트 표현을 포함한다. 예컨대, 폰트 파일이 문서 또는 문서 컨테이너에 포함되는 것을 방지하는 제한을 갖는 폰트 파일을 사용하여 텍스트 표현이 렌더링된 경우를 가정한다. 그럼에도 불구하고, 텍스트 표현은, 폰트 파일이 문서 또는 문서 컨테이너에 포함되었다면 문서를 렌더링하기 위하여 사용되었을 데이터 및/또는 정보 모두를 포함한다. 따라서, 텍스트 표현에 대한 하나의 가정은, 제한된 폰트 파일이 텍스트를 포맷하기 위하여 사용되고, 아니면 이 폰트 파일이 문서 또는 문서 컨테이너에 포함될 수 없는 경우에도, 폰트 파일이 문서가 렌더링되거나 아니면 소비되는 위치에서 적절하게 이용 가능하다는 것이다.
텍스트 표현(410)에 더하여, 연관(400)은 텍스트 표현(410)에 포함되는 텍스트의 하나 이상의 부분의 하나 이상의 추가 또는 대체 표현(412)을 포함한다. 추가 또는 대체 표현은 문자의 비트맵 또는 jpeg 파일 또는 벡터 표현과 같은 텍스트 부분의 이미지 표현과 같이 임의의 적절한 표현을 포함할 수 있다. 여기서, 추가 또는 대체 표현은 폰트 문자를 폐기하고, 더 이상 개별적인 문자의 체인으로서 취급되지 않는다. 오히려, 추가 또는 대체 표현은 불명료한 엔터티(opaque entity)로서 취급된다. 추가 또는 대체 표현에 관한 하나의 가정은, 본래 문서의 일부의 포맷에 사용되고 문서 또는 문서 컨테이너에 포함되지 않는 폰트 파일이, 문서가 렌더링되거나 아니면 다르게 소비되는 위치에서 반드시 이용 가능하지는 않다는 것이다. 따라서, 이 경우, 추가 또는 대체 표현은 문서의 시각적 렌디션을 제공하기 위하여 융통성있는 대안을 제공한다. 구체적으로, 관심있는 폰트 파일이 없는 경우, 추가 또는 대체 표현이 텍스트 표현을 대신하여 사용될 수 있다.
텍스트 표현(410) 및 추가 표현(들)(412)에 더하여, 연관(400)은 텍스트 표현(410)에 의해 나타나는 텍스트 부분의 포맷에 사용된 하나 이상의 폰트 파일을 식별하기 위한 수단(414)을 선택적으로 포함할 수 있다. 이러한 수단의 일례가 도 2와 관련하여 위에서 기술되었다. 폰트 파일 식별 수단에 관한 가정은 이하와 같다. 텍스트 표현이 연관된 문서 또는 문서 컨테이너로부터 이용 가능하지 않은 폰트 파일로 포맷된 경우이더라도, 문서가 렌더링되거나 아니면 다르게 소비되는 위치에서 폰트 파일이 적절하게 이용될 수 있다. 따라서, 이용 가능하지 않은 폰트 파일이 식별될 수 있는 메커니즘을 제공함으로써, 국소적인 탐색이 행해질 수 있고, 만약 폰트 파일이 발견되면, 이는 렌더링 또는 소비 프로세스에서 사용될 수 있다. 아니면, 대체 또는 추가 표현이 사용될 수 있다.
연관(400)이 폰트 파일 식별 수단(414)을 포함하지 않는 경우, 폰트 파일 식 별 수단은 연관과 관련된 사용을 위해 별도로 이용될 수 있다. 예컨대, 연관(400)은 폰트 파일 식별 수단이 검색될 수 있는 위치를 포인팅하는 URI와 같은 식별자를 포함할 수 있다. 이와 달리, 일부 실시예에서는, 폰트 파일 식별 수단이 전혀 제공되지 않을 수 있다. 오히려, 하나 이상의 추가 표현이 제한된 폰트 파일과 연관된 텍스트 표현 대신에 사용될 수 있다.
도 5는 위에서 설명한 연관과 같이, 연관을 구축하기 위한 방법의 단계를 도시하는 플로우챠트이다. 이 방법은 임의의 적절한 하드웨어, 소프트웨어, 펌웨어 또는 그 조합과 관련하여 구현될 수 있다. 도시된 예에서는, 이 방법은 소프트웨어로 구현된다.
단계(500)는 텍스트의 한 부분의 텍스트 표현을 제공한다. 이 단계는 임의의 적절한 방식으로 행해질 수 있다. 도시되고 기재되는 실시예에서, 이 단계는 본래 텍스트를 준비하기 위하여 사용된 것과 동일한 폰트 파일을 사용하여 렌더링되거나 아니면 다르게 소비될 수 있는 방식으로 텍스트의 표현을 제공함으로써 행해질 수 있다.
단계(510)는 텍스트 부분의 하나 이상의 추가 표현을 제공한다. 추가 표현의 구체적인 예는 위에서 제공되었다.
단계(512)는 연관된 하나 이상의 추가 표현과 텍스트 표현을 연관시킨다. 이는 임의의 적절한 방식으로 구현될 수 있다. 예컨대, 텍스트의 한 부분의 텍스트 표현 및 그 부분의 비트맵 이미지가 문서 또는 문서 컨테이너의 형태로 연관을 형성하기 위하여 연관될 수 있다.
단계(514)는 텍스트 표현을 제공하기 위하여 사용된 텍스트 부분과 연관된 폰트 파일을 식별하기 위한 수단을 제공한다. 이 단계는 임의의 적절한 방식으로 구현될 수 있다. 이와 같은 하나의 폰트 파일 식별 수단은 위의 도 2에서 설명되었다.
문서 또는 문서 컨테이너에 포함되는 연관의 소비
지금까지는 제한된 폰트 파일과 같은 폰트 파일이 고유하게 식별될 수 있는 방법뿐만 아니라, 고유하게 식별되는 폰트 파일을 포함하거나 적어도 이를 참조하는 연관이 구축될 수 있는 방법을 이제 설명하였고, 이하의 논의에 의해서는 이러한 연관이 일 실시예에 따라 소비될 수 있는 방법을 설명한다.
도 6은 그 사용에 관해 제약 조건을 가질 수 있는 폰트 파일을 사용하여 생성된 텍스트 부분을 소비하거나 아니면 렌더링하기 위한 방법의 단계를 도시하는 플로우챠트이다. 이 방법은 임의의 적절한 하드웨어, 소프트웨어, 펌웨어 또는 그 조합과 관련하여 구현될 수 있다.
단계(600)는 텍스트 부분과 연관된 폰트 파일이 이용 가능한지 여부를 확인한다. 일 실시예에서, 문서 또는 문서 컨테이너를 포함하는 연관과 같은 연관은 그 연관이 소비되는 컴퓨팅 장치에 의해 수신된다.
단계(610)는 폰트 파일이 문서 또는 문서 컨테이너에서 이용 가능한지 여부를 (예컨대, 문서에 포함되거나 아니면 문서 컨테이너에 포함되는 것에 의해) 확인한다. 폰트 파일이 이용 가능한 경우, 단계(612)는 폰트 파일을 사용하여 텍스트를 렌더링한다. 한편, 폰트 파일이 이용 가능하지 않은 경우, 단계(614)는 문서가 소비되려고 하는 컴퓨팅 장치에서 폰트 파일이 국부적으로 이용 가능한지 여부를 확인한다. 이 단계를 행하는 하나의 방식은 연관된 폰트 파일을 위한 로컬 장치를 탐색하기 위하여 폰트 파일의 고유한 식별 특징 세트를 이용하는 것이다. 고유한 식별 특징 세트의 예는 위에서 제공되었다.
폰트 파일이 국부적으로 이용 가능한 경우, 단계(616)는 국부적으로 이용 가능한 폰트 파일을 사용하여 텍스트를 렌더링한다. 한편, 폰트 파일이 국부적으로 이용 가능하지 않으면, 단계(618)는 대체 텍스트 표현을 렌더링한다. 대체 텍스트 표현의 예는 위에서 제공되었다.
구현 예
위에서 설명한 실시예가 임의의 적절한 방식으로 임의의 적절한 환경에서 구현될 수 있음을 이해할 것이다. 하나의 구체적인 구현 예가 이하에 제공된다.
일 실시예에서, 위에서 설명한 창의적인 원리가 마이크로소프트사의 메트로(Metro) 문서 포맷과 관련하여 구현될 수 있다. 메트로 문서 기술은 2004년 5월 1일에 출원되고 발명의 명칭이 "문서 마크업 방법 및 시스템"인, 동시 계류 중인 미국 특허 출원 No.10/836,327호에 기재되어 있다.
간단히 말하면, 메트로 문서 패러다임은 문서 중심 콘텐트의 제작, 패키징, 배포 및 렌더링을 위한 블록을 구축하는 세트를 규정하는 프레임워크 및 포맷을 제공한다. 이 기술은 문서의 모든 단편 (또는 다른 유형의 콘텐트)을 하나의 객체로 모으기 위하여 패키지(관련된 부분의 집합)라고 불리는 논리 엔터티를 사용하는 단계를 포함한다. 문서의 텍스트 부분의 정확한 렌디션을 허용하기 위하여, 그 부분 을 포맷하기 위해 사용된 원본 폰트 파일(또는 그 서브세트)의 복사본이 메트로 문서에 포함된다. 이 원본 폰트 파일은 메트로 패키지(하나의 객체에 있는 문서의 모든 단편의 집합)에 있는 부분(즉, 폰트 파일)을 포인팅하는 URI를 통해 식별된다. 폰트 파일이 메트로 문서에 포함되지 않은 경우, 문서의 정확한 시각적 렌디션을 제공하기 위한 동작 가능한 옵션을 제공하는데 위에서 기재된 방식이 이용될 수 있다.
특히, 위에서 언급된 고유한 식별 특징 세트를 사용함으로써, 컴퓨팅 시스템은 메트로 문서에 포함된 텍스트 부분의 포맷에 사용된 것과 동일한 폰트 파일이 국부적으로 이용 가능한지 여부를 확인할 수 있다. 만약 그 텍스트 부분의 포맷에 사용된 것과 동일한 폰트 파일이 국부적으로 이용 가능하지 않은 경우, 그 텍스트 부분을 위한 하나 이상의 추가 표현이 여전히 렌더링될 수 있다.
문서의 콘텐트를 설명하기 위하여 XAML(Extensible Application Markup Language)이라고 불리는 태그 기반 언어를 사용하는 메트로 특정된 문맥에서, 적어도 2개의 대체 마크업 표현이 폰트 파일의 고유한 식별 특징 세트뿐만 아니라 대체 또는 추가 표현을 설명하기 위하여 사용될 수 있다.
이하의 논의는 메트로 포맷과 XAML과의 적어도 어떤 유사성(familiarity)을 가정한다.
우선, 기존의 <Glyphs> 요소의 확장은, 대체 비트맵 이미지를 참조하는 속성을 추가함으로써, 텍스트 요소를 표현하기 위하여 사용될 수 있다. 따라서, 확장된 <Glyphs> 요소 마크업은 :
Figure 112007067751153-PCT00002
로서 나타낼 수 있다.
여기서, 고유한 식별 특징 세트는 "localfont:" URI 스킴을 사용하는 FontURI로서 나타난다. AlternateImage 속성이 추가되고, 텍스트 부분의 대체 비트맵 표현을 참조한다.
둘째, 기존의 <Glyphs> 요소는 텍스트 표현과 대체 비트맵 이미지 간의 선택을 위하여 외부 제어 구조에서 랩(wrap)될 수 있다. 이 경우, <Glyphs> 요소는 변경되지 않는다. 이 방식의 예를 이하와 같이 나타낸다.
Figure 112007067751153-PCT00003
여기서, <AlternateContent> 구조는 <Choice>와, 그 <Choice> 요소의 "RequiresResource"에 의해 식별되는 외부 리소스, 즉 고유하게 표현된 폰트 파일의 이용 가능성에 기초한 <Fallback> 요소 사이에서 선택을 행한다.
이 특정 구현 예에서, 당업자가 알 수 있는 바와 같이, 문서는, 특정 문서의 일부 또는 각 텍스트 요소를 검사함으로써, 또한 폰트 헤더의 OS/2 테이블의 라이센스 권한 비트 필드를 조사하여 포함될 수 없는 폰트를 이용하는지 여부를 확인함 으로써 생성된다. 만약 폰트가 자유로이 포함될 수 있으면, 폰트 파일은 문서 패키지에 포함되고, 부분명이 통상의 방식으로 텍스트 마크업에 통합된다. 한편, 만약 폰트가 자유로이 포함될 수 없으면, "localfont:" URI가 폰트 파일을 표현하기 위하여 생성된다. 또한, 마크업이 발행되어 대체 표현(예컨대, 비트맵 이미지)과 텍스트 표현 사이에서 선택한다. 또한, 마크업이 텍스트 요소의 대체 표현을 위해 또한 생성된 "localfont:" URI를 사용하는 텍스트 표현을 위해 발행된다.
소비 측에서는, 문서 마크업이 분석되고, 만약 대체 표현과 텍스트 표현 사이의 선택이 행해지면, 폰트 파일에 대해 특정된 URI가 검사된다. 만약 이것이 "localfont:" URI이면, 다음과 같은 현상이 발생된다. 우선, URI의 <path> 부분에서 특정된 폰트 파일이 로컬 시스템에서 이용 가능한지 여부에 대한 판정이 행해진다. 폰트 파일이 존재한다면, 국부적으로 이용 가능한 폰트 파일의 CRC-32가 컴퓨팅되고, 마크업에 포함된 CRC-32와 비교된다. CRC-32가 URI의 <query>에서 특정된 CRC-32와 일치되면, 국부적으로 이용 가능한 폰트 파일이 텍스트 표현을 렌더링하기 위하여 사용된다. 폰트 파일이 존재하지 않는다면, 또는 CRC-32가 일치되지 않는다면, 대체 표현이 렌더링 프로세스에서 사용된다.
결어
위에서 기재된 다양한 실시예는, 본래 문서를 포맷하기 위하여 사용된 하나 이상의 폰트가 문서 또는 연관된 문서 컨테이너 그 자체로부터 이용 가능하지 않음에도 불구하고, 문서의 정확한 시각적 렌디션이 렌더링될 수 있게 한다. 이러한 방식으로, 문서를 이루는 텍스트가 문서 파일에서 여전히 발견될 수 있다. 이에 의해 복사/붙이기(pasting), 스크린 리더에 대한 액세스 가능성, 탐색 등과 같은 기능이 가능하게 된다. 또한, 텍스트의 포맷에 사용된 것과 동일한 폰트 파일이 문서 파일의 외부에서 이용 가능하다면, 어쩌면 텍스트가 대체 표현(예컨대, 비트맵 이미지 표현)보다 더 높은 품질로 원본 텍스트 표현을 사용하여 렌더링될 수 있다.
본 발명은 구조적인 특징 및/또는 방법론적인 단계에서 특정한 언어로 기재되었지만, 첨부된 청구항에서 규정되는 본 발명은 기재되어 있는 구체적인 특징 또는 단계에 반드시 제한되는 것은 아니다. 오히려, 청구되는 본 발명을 구현하는 바람직한 형태로 구체적인 특징 및 단계가 기재되어 있다.

Claims (20)

  1. 폰트 디렉토리 지정자를 사용하여 로컬 폰트 지정자를 지정하고,
    폰트 파일명 지정자를 사용하여 폰트 파일명을 지정하며,
    폰트 파일에 대한 고유 식별자를 생성함
    에 의해 폰트 파일을 고유하게 식별하는 단계; 및
    폰트 파일에 대한 고유한 식별 특징 세트를 제공하기 위하여, 상기 폰트 디렉토리 지정자, 상기 폰트 파일명 지정자 및 상기 고유 식별자를 조합시키는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 폰트 디렉토리 지정자는 컴퓨팅 장치상의 로컬 폰트 디렉토리를 지정하는 방법.
  3. 제1항에 있어서,
    상기 폰트 파일에 대한 고유 식별자는, 연관된 폰트 파일의 순환 중복 체크썸(cyclic redundancy checksum)을 포함하는 방법.
  4. 제1항에 있어서,
    상기 고유한 식별 특징 세트는 URI(uniform resource identifier)를 포함하 는 방법.
  5. 제1항에 있어서,
    상기 단계들은, 연관된 폰트 파일이 문서에 포함되는 것과 관련하여 제한되어 있는 것에 응하여 행해지는 방법.
  6. 제한된 폰트 파일로 포맷된 적어도 일부의 텍스트를 갖는 문서를 포함하는 문서 컨테이너를 제공하는 단계; 및
    상기 문서 컨테이너에, 상기 적어도 일부의 텍스트를 렌더링(rendering)하기 위하여 상기 제한된 폰트 파일을 필요로 하지 않는, 상기 적어도 일부의 텍스트의 표현을 제공하는 단계
    를 포함하는 방법.
  7. 제6항에 있어서,
    상기 문서 컨테이너에, 상기 제한된 폰트 파일과 동일한 폰트 파일을 사용하여 렌더링될 수 있는, 상기 적어도 일부의 텍스트의 텍스트 표현을 제공하는 단계; 및
    상기 제한된 폰트 파일을 식별하기 위한 수단을 제공하는 단계 - 상기 텍스트 부분은 표시될 수 있는 문서의 전체보다 적은 부분을 포함함 -
    를 더 포함하는 방법.
  8. 제7항에 있어서,
    상기 제한된 폰트 파일을 필요로 하지 않는 표현은 비트맵을 포함하는 방법.
  9. 제7항에 있어서,
    상기 식별하기 위한 수단은 상기 폰트 파일에 대한 상기 고유한 식별 특징 세트를 포함하는 방법.
  10. 제9항에 있어서,
    컴퓨팅 시스템이 이용 가능한 상기 폰트 파일에 대한 상기 고유한 식별 특징 세트를 제작하는 단계를 더 포함하고,
    상기 고유한 식별 특징 세트는,
    상기 컴퓨팅 시스템의 로컬 폰트 파일 디렉토리 내에서 임의의 동일하게 명명된 폰트 파일의 위치를 찾고,
    임의의 동일하게 명명된 폰트 파일이 콘텐트면에서 상기 폰트 파일과 동일한지 여부를 판정하는 데에 사용될 수 있는 방법.
  11. 제9항에 있어서,
    상기 폰트 파일에 대한 상기 고유한 식별 특징 세트는 폰트 디렉토리 지정자, 폰트 파일명 지정자 및 고유 식별자를 포함하는 방법.
  12. 제11항에 있어서,
    상기 폰트 파일에 대한 상기 고유 식별자는 상기 폰트 파일의 순환 중복 체크썸을 포함하는 방법.
  13. 제6항에 있어서,
    상기 폰트 파일은 문서 컨테이너에 포함되는 것과 관련하여 제한되는 방법.
  14. 텍스트 부분과 연관되는 폰트 파일이 텍스트의 상기 부분이 표시되려고 하는 컴퓨팅 시스템에서 이용 가능한지 여부를 확인하는 단계;
    상기 폰트 파일이 이용 가능하다면, 상기 폰트 파일을 사용하여 텍스트의 상기 부분의 텍스트 표현을 렌더링하는 단계; 및
    상기 폰트 파일이 이용 가능하지 않은 경우에, 상기 렌더링을 행하기 위하여 상기 폰트 파일을 사용하지 않는, 상기 텍스트의 상기 부분의 대체 표현을 렌더링하는 단계
    를 포함하는 방법.
  15. 제14항에 있어서,
    상기 텍스트의 상기 부분은 표시될 수 있는 문서의 전체보다 적은 부분을 포함하는 방법.
  16. 제14항에 있어서,
    상기 텍스트의 상기 부분은 문서의 콘텐트를 설명하기 위하여 계층적인 태그 기반형의 언어를 사용하는 문서 패키지의 부분을 포함하는 방법.
  17. 제14항에 있어서,
    상기 확인하는 단계는,
    상기 컴퓨팅 시스템의 로컬 폰트 파일 디렉토리내에서 임의의 동일하게 명명된 폰트 파일을 찾기 위하여, 또한
    임의의 동일하게 명명된 폰트 파일이 콘텐트면에서 상기 폰트 파일과 동일한지 여부를 판정하기 위하여
    상기 폰트 파일에 대한 고유한 표현을 사용하는 단계를 포함하는 방법.
  18. 제17항에 있어서,
    상기 고유한 표현은 폰트 디렉토리 지정자, 폰트 파일명 지정자 및 고유 식별자를 포함하는 방법.
  19. 제17항에 있어서,
    상기 고유한 표현은 URI를 포함하는 방법.
  20. 제17항에 있어서,
    임의의 동일하게 명명된 폰트 파일이 콘텐트면에서 동일한지 여부를 판정하는 것은, 적어도, 만약 찾아진다면 각각의 동일하게 명명된 폰트 파일에 대한 고유 식별자를 생성하는 것, 및 상기 생성된 고유 식별자를 상기 폰트 파일과 연관된 연관된 고유 식별자와 비교하는 것을 포함하는 방법.
KR1020077021471A 2005-04-22 2006-03-16 이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한시각적 렌디션을 제공하기 위한 방법 KR101150104B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/112,845 US7478325B2 (en) 2005-04-22 2005-04-22 Methods for providing an accurate visual rendition of a text element formatted with an unavailable font
US11/112,845 2005-04-22

Publications (2)

Publication Number Publication Date
KR20080003315A true KR20080003315A (ko) 2008-01-07
KR101150104B1 KR101150104B1 (ko) 2012-06-08

Family

ID=37186524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077021471A KR101150104B1 (ko) 2005-04-22 2006-03-16 이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한시각적 렌디션을 제공하기 위한 방법

Country Status (4)

Country Link
US (1) US7478325B2 (ko)
KR (1) KR101150104B1 (ko)
CN (1) CN101385011B (ko)
WO (1) WO2006115603A2 (ko)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
WO2007050816A2 (en) * 2005-10-25 2007-05-03 Extensis Corporation Systems, methods, use interfaces, and computer-readable media for activating and managing fonts
EP1999883A4 (en) 2006-03-14 2013-03-06 Divx Llc FEDERATED DIGITAL RIGHTS MANAGEMENT SYSTEM COMPRISING CONFIDENCE SYSTEMS
US8487936B2 (en) * 2007-05-30 2013-07-16 Kyocera Corporation Portable electronic device and character display method for the same
CN101861583B (zh) 2007-11-16 2014-06-04 索尼克Ip股份有限公司 用于多媒体文件的分级及简化索引结构
US8997161B2 (en) * 2008-01-02 2015-03-31 Sonic Ip, Inc. Application enhancement tracks
CA2749170C (en) 2009-01-07 2016-06-21 Divx, Inc. Singular, collective and automated creation of a media guide for online content
US8856647B2 (en) * 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web
US8381101B2 (en) * 2009-11-16 2013-02-19 Apple Inc. Supporting platform-independent typesetting for documents
CA2782825C (en) 2009-12-04 2016-04-26 Divx, Llc Elementary bitstream cryptographic material transport systems and methods
JP5645481B2 (ja) * 2010-05-28 2014-12-24 キヤノン株式会社 装置、方法、及びプログラム
US8625165B2 (en) * 2010-06-22 2014-01-07 Microsoft Corporation Optimized font subsetting for a print path
CN102567431B (zh) * 2010-12-31 2014-04-02 北大方正集团有限公司 文档处理方法及装置
US9247312B2 (en) * 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
US8818171B2 (en) 2011-08-30 2014-08-26 Kourosh Soroushian Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
WO2013033458A2 (en) 2011-08-30 2013-03-07 Divx, Llc Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US20130179199A1 (en) 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US9197685B2 (en) 2012-06-28 2015-11-24 Sonic Ip, Inc. Systems and methods for fast video startup using trick play streams
US9143812B2 (en) 2012-06-29 2015-09-22 Sonic Ip, Inc. Adaptive streaming of multimedia
US10452715B2 (en) 2012-06-30 2019-10-22 Divx, Llc Systems and methods for compressing geotagged video
EP2875417B1 (en) 2012-07-18 2020-01-01 Verimatrix, Inc. Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution
CN103699520A (zh) * 2012-09-27 2014-04-02 茵弗维尔株式会社 用于维持电子文档布局的字体处理方法
US8997254B2 (en) 2012-09-28 2015-03-31 Sonic Ip, Inc. Systems and methods for fast startup streaming of encrypted multimedia content
US8914836B2 (en) 2012-09-28 2014-12-16 Sonic Ip, Inc. Systems, methods, and computer program products for load adaptive streaming
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9264475B2 (en) 2012-12-31 2016-02-16 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9344517B2 (en) 2013-03-28 2016-05-17 Sonic Ip, Inc. Downloading and adaptive streaming of multimedia content to a device with cache assist
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9247317B2 (en) 2013-05-30 2016-01-26 Sonic Ip, Inc. Content streaming with client device trick play index
US9967305B2 (en) 2013-06-28 2018-05-08 Divx, Llc Systems, methods, and media for streaming media content
CN103425631A (zh) * 2013-07-19 2013-12-04 百度在线网络技术(北京)有限公司 用于获取文档文件中目标文字的字体文件的方法及装置
US9343112B2 (en) 2013-10-31 2016-05-17 Sonic Ip, Inc. Systems and methods for supplementing content from a server
US9437020B2 (en) * 2013-12-23 2016-09-06 Red Hat, Inc. System and method to check the correct rendering of a font
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
DE102014106762B4 (de) * 2014-05-14 2016-09-29 Océ Printing Systems GmbH & Co. KG Reduzierung des Datenvolumens von Druckressourcen
US9875429B2 (en) 2015-10-06 2018-01-23 Adobe Systems Incorporated Font attributes for font recognition and similarity
US10074042B2 (en) 2015-10-06 2018-09-11 Adobe Systems Incorporated Font recognition using text localization
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
US10007868B2 (en) 2016-09-19 2018-06-26 Adobe Systems Incorporated Font replacement based on visual similarity
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US10409896B2 (en) * 2018-02-02 2019-09-10 Adobe Inc. Intelligent font replacement of missing glyphs
US10950017B2 (en) 2019-07-08 2021-03-16 Adobe Inc. Glyph weight modification
US11295181B2 (en) 2019-10-17 2022-04-05 Adobe Inc. Preserving document design using font synthesis
CN113867673B (zh) * 2021-09-27 2022-09-16 湖南省舟际智控电气科技有限公司 一种液晶屏立体字字体显示方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664086A (en) * 1993-04-16 1997-09-02 Adobe Systems Incorporated Method and apparatus for generating digital type font, and resulting fonts using generic font and descriptor file
CA2125608A1 (en) * 1993-06-30 1994-12-31 George M. Moore Method and system for providing substitute computer fonts
US5586242A (en) * 1994-04-01 1996-12-17 Hewlett-Packard Company Font manager with selective access of installed fonts
US6911987B1 (en) * 1995-07-05 2005-06-28 Microsoft Corporation Method and system for transmitting data for a shared application
US6718519B1 (en) * 1998-12-31 2004-04-06 International Business Machines Corporation System and method for outputting character sets in best available fonts
US6675357B1 (en) * 1999-01-29 2004-01-06 International Business Machines Corporation Method and apparatus for matching system and device fonts
US6678410B1 (en) * 1999-02-17 2004-01-13 Adobe Systems Incorporated Generating a glyph
US6480291B1 (en) * 1999-05-03 2002-11-12 Apple Computer, Inc. Font management system that provides for synchronization of fonts among resources
JP2000339312A (ja) * 1999-05-31 2000-12-08 Toshiba Corp 文書編集システム及びタグ情報管理テーブル作成方法
US6853980B1 (en) * 1999-09-07 2005-02-08 Bitstream Inc. System for selecting, distributing, and selling fonts
US6910182B2 (en) * 2000-01-31 2005-06-21 Xmlcities, Inc. Method and apparatus for generating structured documents for various presentations and the uses thereof
US7197706B1 (en) * 2000-08-30 2007-03-27 Celartem Inc. Method and system for ensuring accurate font matching in documents
US20030174135A1 (en) * 2002-03-13 2003-09-18 Joel Gyllenskog System and method for utilizing multiple fonts
KR100485321B1 (ko) * 2003-04-04 2005-04-27 엔에이치엔(주) 검색 엔진에서 등록된 웹사이트를 관리하기 위한 방법 및그 시스템
US7403297B2 (en) * 2003-10-30 2008-07-22 Infoprint Solutions Company, Llc Printing system that manages font resources using system independent resource references
US7464330B2 (en) 2003-12-09 2008-12-09 Microsoft Corporation Context-free document portions with alternate formats
US20060017946A1 (en) * 2004-07-26 2006-01-26 Peiro Jose A Font and text management in documents

Also Published As

Publication number Publication date
CN101385011B (zh) 2011-09-28
CN101385011A (zh) 2009-03-11
KR101150104B1 (ko) 2012-06-08
WO2006115603A2 (en) 2006-11-02
US20060238787A1 (en) 2006-10-26
WO2006115603A3 (en) 2007-10-25
US7478325B2 (en) 2009-01-13

Similar Documents

Publication Publication Date Title
KR101150104B1 (ko) 이용 불가능한 폰트로 포맷된 텍스트 구성 요소의 정확한시각적 렌디션을 제공하기 위한 방법
US7756865B2 (en) Extendable meta-data support in final form presentation datastream print enterprises
JP4585039B2 (ja) アプリケーションからの視覚的形式の情報をデータベースに格納しデータベースから検索する情報格納および検索システム
US7992145B2 (en) Multilevel ticket-based job management architecture for computing devices
US7403297B2 (en) Printing system that manages font resources using system independent resource references
US8135750B2 (en) Efficiently describing relationships between resources
US20110115797A1 (en) Dynamic Streaming of Font Subsets
US7660803B2 (en) Policy-based management method and system for printing of extensible markup language (XML) documents
US7408556B2 (en) System and method for using device dependent fonts in a graphical display interface
US7925609B2 (en) Information processing apparatus, information processing system, information processing method, and computer readable storage medium
US20130120396A1 (en) Incrementally Building A Font
US8817276B2 (en) Image processing apparatus and data processing method for managing log information related to a job processing request
US20060069733A1 (en) Detection and removal of information in files
KR20060071311A (ko) 투명한 방식으로 컴퓨터 생성 문서 내의 네스티드 데이터를노출시키는 방법 및 시스템
JP2009251803A (ja) 情報処理装置、データ処理方法、プログラム
US20100042915A1 (en) Personalized Document Creation
JP5046984B2 (ja) 情報処理装置、情報処理方法およびプログラム
US20080162944A1 (en) Information processing apparatus, information processing system, and computer readable storage medium
US8055998B2 (en) Processing instructions in a changed document object
US20080313201A1 (en) System and method for compact representation of multiple markup data pages of electronic document data
JP4542033B2 (ja) 文書コンテンツの複数のレンディションを提供するためのシステムおよび方法
US20110032572A1 (en) Job history data inspection system
US20110273734A1 (en) Accurate Font Activation
JP2011233104A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム、記録媒体
JP2008052643A (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: 20160419

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170420

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180417

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190417

Year of fee payment: 8