KR20080044292A - 스크린 요소 포지셔닝 - Google Patents

스크린 요소 포지셔닝 Download PDF

Info

Publication number
KR20080044292A
KR20080044292A KR1020087006247A KR20087006247A KR20080044292A KR 20080044292 A KR20080044292 A KR 20080044292A KR 1020087006247 A KR1020087006247 A KR 1020087006247A KR 20087006247 A KR20087006247 A KR 20087006247A KR 20080044292 A KR20080044292 A KR 20080044292A
Authority
KR
South Korea
Prior art keywords
positioning
screen element
screen
display screen
resolution
Prior art date
Application number
KR1020087006247A
Other languages
English (en)
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 KR20080044292A publication Critical patent/KR20080044292A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

디스플레이 스크린 상에 스크린 요소를 포지셔닝하는 방법이 개시된다. 스크린 요소는 공식 내의 식을 나타내며 하나 이상의 글리프를 포함할 수 있다. 최적 해상도에 기초한 포지셔닝 특성에 대비하여 디스플레이 스크린에 의해 지원되는 해상도에서 스크린 요소를 디스플레이하는 것과 관련된 포지셔닝 특성을 분석하는 것에 기초하여 스크린 요소에 대한 최적 포지션이 결정된다. 이러한 분석은 실제 해상도에서 스크린 요소의 디스플레이와 최적 해상도에서 스크린 요소의 디스플레이 간의 변위 크기가 기설정된 임계값을 초과하는지 여부를 나타낸다. 초과하지 않는 경우, 스크린 요소는 디스플레이 스크린 해상도와 연관된 포지셔닝 특성에 기초하여 디스플레이 스크린 상에 디스플레이되도록 출력된다. 초과하는 경우, 실제 해상도에 기초한 포지셔닝 특성이 변경되어 변위 크기가 임계값 수준에 맞춰지도록 한다.
스크린요소, 포지셔닝, 공식

Description

스크린 요소 포지셔닝{POSITIONING SCREEN ELEMENTS}
워드 프로세서, 스프레드시트 프로그램, 텍스트 에디터, 이메일 프로그램 등과 같은 종래의 "타이핑하고 보는(type and see)" 컴퓨터 어플리케이션은, 임의의 프린터에 의해 제공되는 것보다 훨씬 낮은 해상도를 갖는 모니터 상에 디스플레이하기 위한 정보를 주로 출력한다. 이와 함께, 프린터 해상도는 보통 "높은" 해상도인 것으로 언급되는 반면, 모니터 해상도는 종종 "낮은" 해상도로 제조된다. 이러한 저해상도는 종래의 모니터의 디스플레이 스크린 상에 제공될 수 있는 픽셀수의 물리적인 한계에 기인한다. 플라즈마-기반 모니터와 액정 디스플레이와 같은 신기술은 더 작은 픽셀을 이용하며, 그 결과, 종래의 모니터보다 인치당 더 많은 픽셀을 제공하는데, 이러한 신흥 기술은 종래의 모니터보다 훨씬 비싸지만, 평균적인 중간급 레이저 프린터에서 가능한 고해상도를 여전히 제공하지 않는다.
이상적으로는, 이러한 신흥 기술은, 디스플레이 스크린 상의 중첩(superimposing) 인쇄된 정보가 제공된 정보의 동일한 크기 및 포지셔닝을 산출하도록, 프린터에 의해 제공되는 것과 실질적으로 동일한 고해상도로 정보를 디스플레이하도록 작동될 수 있을 것이다. "최적의" 해상도와 같은 것은 현재 가능하지 않으며, 어플리케이션 개발자들은, 가독성이 감소되는 결과를 낳는다 할지라도, 적어도 디스플레이 스크린과 인쇄된 문서 간의 일관된 정보의 포지셔닝을 유지하기 위해 노력한다. 이를 달성하기 위해, 디스플레이 스크린 상에 디스플레이하기 위한 정보의 프린터 포지셔닝을 스케일 다운(scale down)하는 것이 일반적인 관행이다. 그러나, 이러한 감축으로 인해, 디스플레이된 정보는 섞여있는 것으로 보이며, 이로 인해 판독자가 글자들을 구별할 수 있는 능력을 저해한다. 이러한 문제는, 지수 및 분수가 있는 경우와 같이 서로 밀접한 관계에 있는 인자들을 주로 포함하는 공식의 구조에서 더 많이 발생한다.
본 발명이 만들어진 것은 이러한 문제들 및 다른 고려사항들에 관련된 것이다.
본 발명은 일반적으로 디스플레이 스크린에 관련된 해상도 제약이 있는 디스플레이 스크린 상에 디스플레이 되는 요소에 대한 최적의 위치를 결정하는 것에 관련된 것이다. 더욱 상세하게는, 본 발명은 해상도 제한과 같은 것을 고려하여 공식의 요소를 디스플레이 스크린 상에 최적으로 포지셔닝하는 것에 관한 것이다. 예컨대, 본 발명은 지수 공식 표현을 이루는 기본 문자를 표현하는 스크린 요소에 관련된 윗첨자(superscript)를 표현하는 스크린 요소에 대해 최적의 위치를 결정하도록 응용될 수 있다.
본 발명의 일 실시예는, 디스플레이 스크린 상의 스크린 요소를 디스플레이하라는 명령의 수신에 응답하여, 디스플레이 스크린 상의 스크린 요소를 디스플레이하기 위한 포지셔닝 특성을 결정하는 것에 관련된 것이다. 포지셔닝 특성은 디스플레이 스크린의 실제 해상도에서 스크린 요소에 대한 스크린 레이아웃(layout)을 표현한다. 실제 해상도(actual resolution; AR)에서의 스크린 요소의 결정된 포지셔닝 특성은, 최적 해상도(optimal resolution; OR)에 관련된 포지셔닝 특성에 대비하여 분석되어, 스크린에 디스플레이하기 위한 스크린 요소를 출력하기에 앞서 AR-기반 포지셔닝 특성이 변경되어야 하는지 여부를 결정한다.
일 실시예에서, 이러한 평가는, AR-기반 포지셔닝 특성에 기초하여 디스플레이 스크린 상에 디스플레이된 경우의 스크린 요소와 OR-기반 포지셔닝 특성에 기초하여 디스플레이 스크린 상에 디스플레이된 경우의 스크린 요소 간의 차이의 정도를 판단하는 것에 관련된 것이다. 판단된 차이의 정도가 소정의 임계치를 초과하는 경우, 차이가 임계치와 실질적으로 같아지도록 AR-기반 포지셔닝 특성이 변경되며, 스크린 요소는 변경된 포지셔닝 특성에 기초하여 디스플레이 스크린 상에 디스플레이된다. 임계치를 초과하지 않는 경우, 스크린 요소는 원래의 AR-기반 포지셔닝 특성에 기초하여 디스플레이 스크린 상에 디스플레이된다.
다른 실시예에 따르면, 본 발명은 디스플레이 스크린 상의 제2 스크린 요소에 관하여 제1 스크린 요소를 포지셔닝하기 위한 방법에 관한 것이다. 상기 방법은, 제2 스크린 요소에 인접한 제1 스크린 요소를 디스플레이하라는 요청의 수신에 응답하여, 디스플레이 스크린의 실제 해상도에 기초하여 제2 스크린 요소에 관하여 제1 스크린 요소를 디스플레이하기 위한 제1 집합의 포지셔닝 스크린 특성을 결정하는 것에 관련된 것이다. 상기 방법은, 제1 집합의 포지셔닝 특성이 적어도 기설정된 크기의 빈 공간만큼 제1 스크린 요소가 제2 스크린 요소로부터 분리됨을 나타내는 경우, 최적 해상도에 기초하는 제2 집합의 포지셔닝 특성으로부터 결정된 수평 위치와 제1 집합의 포지셔닝 특성으로부터 결정된 수직 위치에 기초하여 디스플레이 스크린 상에 제1 스크린 요소를 디스플레이하는 단계를 포함한다.
본 발명의 다양한 실시예들이 컴퓨터 프로세스, 컴퓨팅 시스템으로서 구현될 수 있으며, 또는 컴퓨터 프로그램 제품 또는 컴퓨터 판독가능 매체와 같은 제조 물품으로서 구현될 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능하고 컴퓨터 프로세스를 실행하기 위한 명령의 컴퓨터 프로그램을 인코딩하는 컴퓨터 저장 매체일 수 있다. 컴퓨터 프로그램 제품은 또한 컴퓨팅 시스템에 의해 판독가능하고 컴퓨터 프로세스를 실행하기 위한 명령의 컴퓨터 프로그램을 인코딩하는 캐리어(carrier) 상의 전송 신호(propagated signal)일 수도 있다.
본 발명을 특징지우는 상기 및 다양한 다른 특징들과 장점들은 후술할 상세한 설명을 읽고 관련된 도면을 참조함으로써 더욱 명확해질 것이다.
도 1은 본 발명의 실시예에 따라 서로에 관련되어 포지셔닝된 스크린 요소들의 디스플레이를 도시한 도면.
도 2는 본 발명의 실시예가 구현될 수 있는 예시적인 컴퓨터 시스템을 도시한 도면.
도 3은 본 발명의 실시예에 따라 도 1에 도시된 스크린 요소를 다른 스크린 요소와 관련하여 포지셔닝하는 프로세스의 동작 특성을 도시한 흐름도.
도 4는 스크린에 대한 실제 해상도에서 디스플레이 스크린 상에 디스플레이되는 경우 스크린 요소에 대한 스크린 레이아웃의 가상 표현(virtual representation)을 도시한 도면.
도 5는 최적 해상도에 기초하여 디스플레이 스크린 상에 디스플레이되는 경우 도 4의 스크린 요소에 대한 스크린 레이아웃의 가상 표현을 도시한 도면.
도 6은 도 4에 도시된 가상 표현과 도 5에 도시된 가상 표현의 비교를 도시한 도면.
도 7은 본 발명의 실시예에 따라 도 3의 포지셔닝 프로세스에 사용하기 위한 추가적인 동작 특성을 도시한 흐름도.
도 8은 본 발명의 실시예에 따라 도 3의 포지셔닝 프로세스에 사용하기 위한 추가적인 동작 특성을 도시한 흐름도.
이하에서는, 본 발명의 실시예들이 도시된 첨부된 도면을 참조하여 본 발명이 더욱 완전하게 설명될 것이다. 그러나, 본 발명은 많은 상이한 형태로 구현될 수 있으며, 여기에 열거된 실시예에 한정되는 것으로 해석되어서는 안되며, 상기 실시예들은 본 공개문서가 철저하고 완전하도록, 그리고 본 발명의 범위를 본 기술분야의 당업자에게 완전히 전달하도록 하기 위해 제공되는 것으로 해석되어야 한다. 동일한 번호는 동일한 요소를 지칭한다.
일반적으로, 본 발명은 디스플레이 스크린 상에 서로 관련된 스크린 요소들을 포지셔닝하는 것에 관한 것이다. 일 실시예에 따르면, 스크린 요소들은 문자 및/또는 합자(ligature)의 하나 이상의 이미지 표현("글리프들(glyphs)")이다. 예시적인 실시예에 따르면, 본 발명은 여기에서 디스플레이 스크린을 통해 디스플레 이되는 워드 프로세싱 문서 내의 식(expression) 또는 서브-식(sub-expression)을 개별적으로 또는 집합적으로 표현하는 글리프를 참조하여 설명된다. 예컨대, 도 1은 디스플레이 스크린(102)을 통해 사용자에게 제공되는 워드 프로세싱 문서(104) 내에 콘텐츠로서 디스플레이되는 글리프들(114 내지 142)을 갖는 공식(112)을 도시한다. 상기 글리프들 중 몇몇(예컨대, 122)은 단일한 식을 개별적으로 표현하며("="), 다른 글리프들(예컨대, 124 및 126)은 단일한 식을 집합적으로 표현하지만(예컨대, "X2"), 다른 글리프들(예컨대, 148 및 150)은 완전한 공식에 대한 단일한 서브-식을 집합적으로 표현한다(예컨대, "
Figure 112008018564545-PCT00001
").
본 발명의 예시적인 실시예에 따른 공식(112)의 식 및 서브-식을 형성하기 위해 서로 관련된 글리프들(114 내지 142)을 포지셔닝하는 것에 관하여 본 발명의 실시예들이 도시된다. 도 1은 글리프들(114 내지 142)이 이미 포지셔닝 된 후의 시점에서의 공식(112)을 도시하며, 따라서, 식 및 서브-식이 이미 형성되어 있다. 반면에, 도 3 내지 7은 본 발명의 일 실시예에 따라 상기 결과물인 공식(112)을 렌더링하기 위해 글리프들(114 내지 142)을 포지셔닝하는 프로세스(300)를 도시한다. 그러나, 상기 도면들을 참조하여 포지셔닝 프로세스(300)를 더 설명하기에 앞서, 프로세스(300)를 실행하기 위한 예시적인 컴퓨팅 환경(예컨대, 컴퓨팅 장치(200))가 도 2에 도시되며, 아래의 단락에서 설명된다.
가장 기본적인 구성에 있어서, 컴퓨팅 장치(200)는 적어도 하나의 처리 장치(202)와 메모리(204)를 포함한다. 정확한 구성과 종류의 컴퓨팅 장치(200)에 따 르면, 메모리(204)는 (RAM과 같은) 휘발성, (ROM, 플래시 메모리 등과 같은) 비휘발성, 또는 이들의 조합일 수 있다. 컴퓨팅 장치(200)의 가장 기본적인 구성이 점선(206)으로 도 2에 도시된다. 추가적으로, 컴퓨팅 장치(200)는 추가적인 특성/기능을 가질 수도 있다. 예컨대, 컴퓨팅 장치(200)는 자기 또는 광학 디스크 또는 테입을 포함하지만 이에 제한되지 않는 추가적인 저장 장치(제거 가능 및/또는 제거 불가능)도 포함할 수 있다. 이러한 추가적인 저장 장치는 제거 가능한 저장 장치(208)와 제거 불가능한 저장 장치(210)로 도 2에 도시된다.
여기에서 사용되는 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령들, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방식 또는 기술로 구현되는, 휘발성 및 비휘발성, 제거 가능 및 제거 불가능한 매체를 포함한다. 메모리(204), 제거 가능 저장 장치(208) 및 제거 불가능 저장 장치(210)는 모두 컴퓨터 저장 매체의 예이다. 컴퓨터 저장 매체는, RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD, 또는 기타 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하기 위해 사용될 수 있고 장치(200)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하나 이에 제한되는 것은 아니다. 이러한 임의의 컴퓨터 저장 매체는 장치(200)의 일부일 수 있다.
컴퓨팅 장치(200)는 다른 장치와의 통신을 위한 통신 접속(들)(212)도 포함할 수 있다. 통신 접속(들)(212)은 통신 매체의 일예이다. 통신 매체는 일반적으로 반송파(carrier wave) 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내 의 컴퓨터 판독가능 명령, 데이터 구조 프로그램 모듈 또는 기타 데이터를 구현하며, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"라는 용어는 신호 내의 정보를 인코딩하는 방식에 따라 설정 또는 변경되는 하나 이상의 특성을 갖는 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접-유선 접속과 같은 유선 매체 및 음향, RF, 적외선 및 기타 무선 매체와 같은 무선 매체를 포함하나 이에 제한되는 것은 아니다.
컴퓨팅 장치(200)는 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등과 같은 입력 장치(들)(214)도 가질 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 장치(들)(216)도 포함될 수 있다. 이러한 장치들은 전술한 사용자 인터페이스(104)의 형성을 도울 수 있다. 이러한 장치들은 모두 본 기술분야에 잘 알려져 있으며, 여기에서 상세히 논의될 필요는 없다.
컴퓨팅 장치(200)는 일반적으로 적어도 몇몇 형태의 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 처리 장치(202)에 의해 액세스될 수 있는 임의의 유효한 매체일 수 있다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있으나 이에 제한되는 것은 아니다. 상기 사항들의 임의의 조합도 컴퓨터 판독가능 매체의 범위에 포함되어야 한다.
컴퓨팅 장치(200)는 하나 이상의 원격 컴퓨터(도시되지 않음)로의 논리적 접속을 사용하는 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터는 개인용 컴퓨터, 서버 컴퓨터 시스템, 라우터, 네트워크 PC, 피어(peer) 장치 또는 기타 일반적인 네트워크 노드(node)일 수 있으며, 일반적으로 컴퓨터 장치(200)에 관한 전 술한 요소들 대부분 또는 모두를 포함한다. 컴퓨터 장치(200)와 원격 컴퓨터 간의 논리적 접속은 근거리 통신망(LAN) 또는 광역 통신망(WAN)을 포함할 수 있지만, 다른 네트워크도 포함할 수 있다. 이러한 네트워킹 환경들은 사무실, 전사적(enterprise-wide) 컴퓨터 네트워크, 인트라넷 및 인터넷에서 흔한 것들이다.
LAN 네트워킹 환경에서 사용되는 경우, 컴퓨터 장치(200)는 네트워크 인터페이스 또는 어댑터를 통해 LAN에 접속된다. WAN 네트워킹 환경에서 사용되는 경우, 컴퓨팅 장치(200)는 일반적으로 인터넷과 같은 WAN을 통한 통신을 구축하기 위한 모뎀 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀은 통신 접속(212) 또는 다른 적절한 메커니즘을 통해 컴퓨터 프로세서(202)에 접속될 수 있다. 네트워크화된 환경에서, 프로그램 모듈 또는 그 일부가 원격 메모리 저장 장치 내에 저장될 수 있다. 예로서, 원격 응용 프로그램은 원격 컴퓨터 시스템에 접속된 메모리 장치 상에 존재할 수 있다. 여기에 설명된 네트워크 접속은 예시적인 것이며 컴퓨터들 간에 통신 링크를 구축하는 다른 수단이 사용될 수 있음이 이해될 것이다.
도 2의 컴퓨팅 환경을 생각하면, 포지셔닝 프로세스(300)와 관련하여 후술할 다양한 예시적인 실시예들의 논리적인 동작은, (1) 컴퓨팅 시스템 상에서 실행되는 프로그램 모듈 또는 컴퓨터 구현된 작동의 시퀀스 및/또는 (2) 컴퓨팅 시스템 내의 상호접속된 머신 로직 회로 또는 회로 모듈로서 구현될 수 있다. 이러한 구현은 본 발명을 구현하는 컴퓨팅 시스템의 성능 요구사양에 따른 선택의 문제이다. 따라서, 여기에 설명되는 예시적인 실시예들을 구현하는 논리적 동작들은 동작, 구조 적 장치, 작동 또는 모듈로 다양하게 불릴 수 있다. 이러한 동작, 구조적 장치, 작동 및 모듈은 소프트웨어, 펌웨어, 특수 목적 디지털 로직 및/또는 첨부된 특허청구범위에 기재된 바와 같은 본 공개 문서의 기술적 사상 및 범위를 벗어나지 않는 임의의 조합에서 구현될 수 있음은 본 기술분야의 당업자에게 인정될 것이다.
이제 도 3을 참조하면, 포지셔닝 프로세스(300)는 컴퓨팅 장치(200) 상에서 구현되는 응용 프로그램에 의해 실현되는 동작 특성을 구현한다. 예시적인 응용 프로그램으로는 워드 프로세싱 어플리케이션, 스프레드시트 어플리케이션, 프리젠테이션 어플리케이션, 어플리케이션 개발 어플리케이션, 텍스트 에디터 어플리케이션, 전자 메일 어플리케이션 및 웹 브라우저를 포함하지만 이에 제한되는 것은 아니다. 전술한 바와 함께, 포지셔닝 프로세스(300)는 디스플레이 스크린(예컨대, 102) 상에 서로 관련된 임의의 종류의 스크린 요소를 포지셔닝하도록 동작될 수 있다.
예시적인 실시예에 따르면, 포지셔닝 프로세스(300)는 공식(112)의 식 및 서브-식을 형성 및 배치하기 위해 서로 관련된 글리프들(예컨대, 114 내지 142)을 포지셔닝함으로써 도 1의 공식(112)의 구축을 나타낸다. 설명을 위해, 포지셔닝 프로세스(300)는, 디스플레이 스크린(102) 상에 지수식 "X2"를 렌더링하기 위해 스크린 요소(즉, 윗첨자(superscript)(126)("2"))가 다른 스크린 요소(즉, 기본 글리프(124)("X"))와 관련되어 배치될 때, 공식(112)을 구축하는 동안의 한 시점에 관하여 설명된다. 이와 같이, 포지셔닝 프로세스(300)의 수행을 설명하기 위해, 도 3의 텍스트 중 "스크린 요소"라는 용어는 윗첨자 글리프(126)("2")를 지칭하며, 상기 도면의 텍스트 중 "식(expression)"이라는 용어는 완전한 식 "X2"를 지칭한다. 또한, 도 4 내지 6은 상기 예시적인 설명과 관련하여 포지셔닝 프로세스(300)의 수행의 개념적인 설명을 순차적으로 도시하며, 따라서 함께 연결되어 설명된다.
포지셔닝 프로세스(300)의 단일 반복(single iteration)이 후술되며, 상기 프로세스(300)는 전체 공식(112)의 디스플레이를 수행하기 위해 반복적으로 이행된다. 따라서 포지셔닝 프로세스(300)는, 공식(112)에 대한 식 및 서브-식을 형성하기 위해 다양한 글리프(114 내지 142)를 동시에 또는 순차적으로 포지셔닝하도록 실시되는 동작의 플로우(즉, "동작 플로우")를 수반한다. 예컨대, 아래에 좀더 자세하게 설명되는 도 8은, 본 발명의 예시적인 실시예에 따라, 중첩된 지수식을 형성하기 위해 글리프(138)와 관련된 글리프(140 및 142)를 포지셔닝하고 글리프(146)와 관련된 글리프(148 및 150)를 포지셔닝하는 것과 관련된 포지셔닝 프로세스(300)의 순환적 특성(recursive nature)을 도시한다.
포지셔닝 프로세스(300)의 동작 플로우는 시작 동작(302)에서 시작되며 종료 동작(320)에서 종결된다. 시작 동작(302)은 공식을 디스플레이하라는 명령의 수신에 응답하여 시작된다. 이에 있어서, 여기에 제공되는 예시적인 설명과 관련하여, 이러한 명령은 지수식 "X2"를 형성하기 위해 기본 글리프(124)에 인접하게 윗첨자 그리프(126)를 포지셔닝하라는 요청을 수반한다. 동작 플로우는 시작 동작(302)에서 제1 생성 동작(304)으로 간다.
제1 생성 동작(304)은 디스플레이 스크린(102)에 대한 실제 해상도를 결정한 다음, 결정된 실제 해상도에서 지수식 "X2"의 픽셀화된(pixelated) 표현을 생성한다. 디스플레이 스크린(102)은 다양한 해상도에서 글리프들을 디스플레이 하도록 동작할 수 있으며, 실제 해상도는 포지셔닝 프로세스(300)가 구현되는 때에 따라 달라질 수 있다. 전술한 바와 함께, 본 발명의 일 실시예는 현재 디스플레이 설정의 평가에 기초하여 현재의 실제 해상도를 결정하는 것을 수반한다.
픽셀화된 표현은 실제 해상도에서 기본 글리프(124)에 인접하여 디스플레이되는 윗첨자 글리프(126)의 가상의, 인-메모리(in-memory) 표현이다. 그럼에도 불구하고, 전술한 바와 함께, 이러한 표현은, 포지셔닝 프로세스(300)의 관리에 사용하기 위한 응용 프로그램 내에 유지되는 데이터 구조 내에 구현되며, 적어도 이 시점에 있어서는 디스플레이 스크린(102)으로 출력하여 디스플레이되지는 않는다. 데이터 구조는 실제 해상도에서 윗첨자 글리프(126) 및 기본 글리프(124)에 대한 포지셔닝 특성(즉, 스크린 레이아웃)을 식별하는 데이터를 포함하며, 더욱 상세하게는, 디스플레이 스크린(102) 상의 픽셀들이 지수 공식 "X2"의 이미지를 제공하도록 채색된다. 설명을 위해, 도 4는 제1 생성 동작(304)에 의해 생성되는 픽셀화된 표현(125)에 기초하여 기본 글리프(124)에 인접하여 디스플레이 스크린(102) 상에 디스플레이되는 윗첨자 글리프(126)를 도시한다. 동작 플로우는 제1 생성 동작(304)에서 제2 생성 동작(306)으로 간다.
제2 생성 동작(306)은 최적 해상도를 결정하고, 결정된 최적 해상도에서 지 수 공식 "X2"의 표현을 생성한다. 최적 해상도 표현은, 최적 해상도에서 디스플레이 스크린(102)이 글리프를 디스플레이 한 경우 기본 글리프(124)에 인접하여 디스플레이되는 윗첨자 글리프(126)의 가상의, 인-메모리 표현이다. 이와 같이, 이러한 표현은 포지셔닝 프로세스(300)의 관리에 사용되기 위한 응용 프로그램 내에 유지되는 데이터 구조 내에서 구현되며, 디스플레이 스크린(102)으로 출력하여 디스플레이되지는 않는다. 데이터 구조는 최적 해상도에서 윗첨자 글리프(126) 및 기본 글리프(124)에 대한 가상의 포지셔닝 특성(즉, 가상의 스크린 레이아웃)을 정의하는 좌표를 포함한다.
일 실시예에서, 최적 해상도는 포지셔닝 프로세스(300)를 관리하는 응용 프로그램의 개발자에 의해 정의된다. 다른 실시예에 따르면, 최적 해상도는 컴퓨팅 장치(200)에 부착된 프린터에 연관된 해상도에 기초하여 정의될 수 있다. 최적 해상도가 결정되고 지수 공식 "X2"의 연관된 표현이 생성된 후, 동작 플로우는 제2 생성 동작(306)에서 스케일 동작(308)으로 간다.
스케일 동작(308)은 최적 해상도 표현을 디스플레이 스크린(102)에 연관된 해상도 제한에 따르도록 스케일 다운(scale down)한다. 이를 수행하기 위해, 스케일 동작(308)은 최적 해상도에서 윗첨자 글리프(126) 및 기본 글리프(124)의 가상 스크린 레이아웃을 정의하는 포지셔닝 특성(즉, 좌표)에 해상도 인자를 적용한다. 일 실시예에 따르면, 해상도 인자는 디스플레이 스크린(102)의 실제 해상도에 대한 정의된 최적 해상도의 비율에 기초한다. 대안적으로, 해상도 인자는 최적 해상도 를 실제 해상도에 연관시키는 다른 수학적인 고려사항에 의해 정의될 수 있다.
일단 정의되면, 해상도 인자는 최적 해상도 좌표에 적용되며, 이에 따라 윗첨자 글리프(126) 및 기본 글리프(124)의 스케일-다운된(scaled-down) 최적 해상도를 표현하는 스케일 다운(scaled down) 또는 "라운드" 다운된(rounded down) 좌표 집합을 렌더링한다. 최적 해상도 표현과 같이, 스케일-다운된 최적 해상도는 포지셔닝 프로세스(300)의 관리에 사용되기 위한 응용 프로그램 내에 유지되는 데이터 구조 내에서 구현되며, 디스플레이 스크린(102)으로 출력하여 디스플레이되지는 않는다. 도 5는 스케일-다운된 최적 해상도 표현(127)에 기초하여 기본 글리프(124)에 인접하게 디스플레이 스크린(102) 상에 디스플레이되는 윗첨자 글리프(126)를 도시한다. 동작 플로우는 스케일 동작(308)에서 비교 동작(310)으로 간다.
비교 동작(310)은, 디스플레이 스크린(102) 상에 디스플레이 되는 경우, 픽셀화된 표현(125) 및 스케일-다운된 최적 해상도 표현(127)에 의해 특정된 스크린 레이아웃을 분석하여, 상기 표현들(125, 127) 간의 윗첨자 표현(126)의 변위 크기를 결정한다. 전술한 바와 같이, 양 표현에 의해 특정된 스크린 레이아웃은 포지셔닝 프로세스(300)를 관리하는 응용 프로그램 내에 유지되는 데이터 구조 내에서 구현된다. 따라서, 비교 동작(310)은 서로 관련된 두개의 스크린 레이아웃의 포지셔닝을 비교하여 두 표현 간의 분석을 렌더링한다. 일 실시예에서, 비교 동작(310)은 양 스크린 레이아웃 상의 윗첨자 글리프(126)의 공통 지점들(예컨대, 하부-좌측 구역)을 선택하고, 공통 지점들 간에 존재하는 픽셀들의 수를 측정하는 것을 수반한다. 이러한 실시예에서, 도 6에 도시된 바와 같이, 비교 동작(310)은 픽 셀화된 표현(125)과 스케일-다운된 최적 해상도 표현(127)을 디스플레이 스크린(102) 상에 함께 디스플레이하고 그 사이의 윗첨자 글리프(126)의 변위를 결정함으로써 논리적으로 표현될 수 있는 분석을 수반한다.
비교 동작(310)이 픽셀화된 표현(125) 상의 윗첨자 글리프(126)와 스케일-다운된 최적 해상도 표현(127) 상의 윗첨자 글리프(126) 간의 변위의 크기(픽셀 수로)를 결정한 후, 동작 플로우는 쿼리(query) 동작(312)으로 간다. 쿼리 동작(312)은, 비교 동작(310)에 의해 결정된 변위의 크기가 최적 포지셔닝을 위해 정의된 최대 픽셀 변위값을 초과하는지 여부를 결정한다. 최대 픽셀 변위값은, 디스플레이 스크린(102) 상의 평가된 글리프의 실제 해상도 표현과 디스플레이 스크린(102) 상의 상기 글리프의 스케일-다운된 최적 해상도 표현 간에 존재할 수 있는 픽셀들의 최대수를 나타낸다. 다양한 폰트 사이에서 변할 수 있는 최대 픽셀 변위값은 응용 프로그램의 개발자 또는 응용 프로그램의 사용자에 의해(예컨대, "옵션" 대화상자(dialog) 또는 이와 유사한 것을 통해 디스플레이 특성을 커스터마이징(customizing)함으로써) 정의될 수 있다.
변위 크기가 최대 픽셀 변위를 초과하면, 동작 플로우는 쿼리 동작(312)에서 이동 동작(314)으로 간다. 이동 동작(314)은 픽셀화된 표현(125) 상의 윗첨자 글리프(126)를 스케일-다운된 최적 해상도 표현(127) 상의 윗첨자 글리프(126)로 이동시켜서, 그들 사이의 변위 크기가 최대 픽셀 변위값과 같아지도록, 따라서 "허용된" 픽셀 범위 내에 들어가도록 한다. 이와 같이, 실제 해상도에서 윗첨자 글리프(126)에 대한 스크린 레이아웃을 식별하는 데이터는 픽셀화된 표현(125) 내의 이 동에 기초하여 변경된다. 동작 플로우는 이동 동작(314)에서 제1 출력 동작(316)으로 간다.
제1 출력 동작(316)은 컬러링(coloring)을 위해 적절한 픽셀을 특정하여, 픽셀화된 표현(125)에 대해 지금 특정된 이동된 스크린 레이아웃에 기초하여 디스플레이 스크린(102) 상에 윗첨자 글리프(126)를 디스플레이 한다. 따라서, 제1 출력 동작(316)은, 도 1에 도시된 바와 같이, 사용자에게 디스플레이하기 위해 윗첨자 글리프(126)를 디스플레이 스크린(102)에 출력하게 된다. 동작 플로우는 제1 출력 동작(316)에서 종료 동작(320)으로 종결된다.
다시 쿼리 동작(312)를 참조하면, 비교 동작(310)에 의해 결정된 변위 크기가 최적 포지셔닝을 위해 정의된 최대 픽셀 변위값을 초과하지 않는 경우, 픽셀화된 표현(125)은 스케일-다운된 최적 해상도 표현(127)에 관한 "허용된" 픽셀 범위 내에 있는 것으로 고려된다. 결국, 동작 플로우는 제2 출력 동작(318)으로 간다. 제2 출력 동작(318)은, 컬러링을 위해 적절한 픽셀을 특정하여, 픽셀화된 표현(125)에 대해 특정된 스크린 레이아웃에 기초하여 디스플레이 스크린(102) 상에 윗첨자 글리프(126)를 디스플레이한다. 따라서, 제1 출력 동작(316)과 같이, 제2 출력 동작은, 도 1에 도시된 바와 같이, 사용자에게 디스플레이하기 위해 윗첨자 글리프(126)를 디스플레이 스크린(102)에 출력하게 된다.
도 7로 돌아가면, 도 3의 포지셔닝 프로세스(300)에 사용하기 위한 동작 플로우(330)가 본 발명의 실시예에 따라 도시된다. 상기 실시예에서, 포지셔닝 프로세스(300)는 스케일 동작(308)이 완료됨에 따라 시작되는 쿼리 동작(334)을 포함한 다. 쿼리 동작(334)은 적어도 하나의 기설정된 크기의 빈 공간(즉, "백색 공간")이 디스플레이되도록 요청된 글리프에 선행하는지 여부를 결정한다. 일 실시예에서, 이러한 기설정된 크기의 빈 공간은 응용 프로그램 개발자에 의해 결정된다. 예컨대, 기설정된 크기의 빈 공간은 연산자(operator)와 관련된 것으로 종래에 알려진 백색 공간의 크기로 정의될 수 있다. 예시적인 연산자로는, 등호, 더하기 기호, 및 빼기 기호가 포함된다. 전술한 바와 함께, 연산자를 표현하는 글리프는 일반적으로 임의의 글리프를 근처에 포지셔닝하기 위한 충분한 백색 공간을 포함하며, 따라서 상기 연산자-기반 글리프 또는 상기 연산자-기반 글리프에 후행하는 임의의 글리프의 위치가 이동되어야 할지 여부를 결정할 필요가 없게 된다. 실제로, 예컨대, a+b/x+y와 같이 서브-식을 갖는 분수식에 있어서, 이러한 많은 백색 공간은 일반적으로 서브-식 내의 연산자(예컨대, +)가 수직 방향으로 배열되도록 하여 하나의 연산자가 실질적으로 다른 연산자 위에 놓이도록 한다.
쿼리 동작(334)이 기설정된 크기의 빈 공간이 디스플레이 되도록 요청된 글리프에 선행하는 것으로 결정한 경우, 포지셔닝 프로세스(300)의 동작 플로우는 바로 부분 이동 동작(336)으로 간다. 부분 이동 동작(336)은 픽셀화된 표현에 일부 기초하고 스케일-다운된 최적 해상도 표현에 일부 기초하여 글리프에 대한 위치를 결정한다. 예컨대, 일 실시예에서, 부분 이동 동작(336)은 픽셀화된 표현에 의해 특정된 글리프의 수평 포지셔닝을 이동시켜, 픽셀화된 표현에 의해 특정된 글리프의 수직 포지셔닝을 유지하면서 스케일-다운된 최적 해상도 표현에 의해 특정된 글리프의 수평 포지셔닝에 매칭시킨다. 따라서, 요청된 글리프의 디스플레이에 사용 되는 x좌표는 스케일-다운된 최적 해상도 표현에 기초하여 결정되는 한편, y좌표는 픽셀화된 표현에 기초하여 결정된다. 그 다음, 동작 플로우는 부분 이동 동작(336)에서 제1 이전 동작(340)을 경유하여 제1 출력 동작(316)으로 간다.
그러나, 쿼리 동작(334)이 기설정된 크기의 빈 공간이 디스플레이 되도록 요청된 글리프에 선행하지 않는다고 결정한 경우, 포지셔닝 프로세스(300)의 동작 플로우는 제2 이전 동작(338)에 의해 비교 동작(310)으로 가며, 이에 따라 전술한 포지셔닝 프로세스(300)가 계속된다.
본 발명이 구조적 특성, 방법론적인 작동 및 이러한 작동을 포함하는 컴퓨터 판독가능 매체에 특정된 언어로 설명되었으나, 첨부된 특허청구범위에 정의된 본 발명은 전술한 특정 구조, 작동 또는 미디어에 제한되지 않는 것으로 이해되어야 한다. 본 기술분야의 당업자는 본 발명의 범위 및 사상에 포함되는 다른 실시예 또는 개량사항들을 인지할 것이다.
예컨대, 여기에서는 예시적인 스크린 요소가 공식을 구현하는 문자 및 합자를 표현하는 글리프로서 설명되고 있으나, 본 발명은 임의의 유형의 스크린 요소를 포지셔닝하는 것에도 응용될 수 있음이 이해되어야 한다. 또한, 본 발명의 실시예들은 여기에서 워드 프로세싱 문서 내의 상기 예시적인 스크린 요소들의 포지셔닝에 관하여 설명된다. 그러나, 본 발명은 다른 유형의 전자 문서 및 그로 인해, 스크린 요소를 디스플레이하기 위한 매체를 제공하도록 동작할 수 있는 임의의 전자 문서에 동일하게 응용될 수 있다.
또한, 컴퓨팅 장치(200)는 단지 적절한 동작 환경의 일 예이며, 본 발명의 사용이나 기능의 범위에 어떤 제한을 가하려는 것이 아니다. 본 발명에 사용되기에 적절할 수 있는 다른 잘 알려진 컴퓨팅 시스템, 환경 및/또는 설정으로는, 개인용 컴퓨터, 서버 컴퓨터, 휴대용 또는 랩탑 컴퓨터, 멀티프로세서 시스템, 마이크로프로세서-기반 시스템, 프로그램가능 가전제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기 시스템 또는 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경 및 기타 유사한 것들이 포함되나, 이에 제한되는 것은 아니다.
또한, 단일 글리프(즉, 윗첨자 글리프(126) "2")로 이루어진 스크린 요소를 단일 글리프(기본 글리프(124) "X")로 이루어진 다른 스크린 요소와 관련하여 포지셔닝하는 것에 대해 설명되었으나, 포지셔닝 프로세스(300)는 복수의 글리프로 이루어진 스크린 요소를 하나 이상의 글리프로 이루어진 다른 스크린 요소와 관련하여 포지셔닝하는 것에도 응용될 수 있다. 예컨대, 포지셔닝 프로세스는 분수식의 글리프들(예컨대, 130, 132 및 134)을 다른 중첩된 윗첨자 글리프들(예컨대, 140, 142, 148 및 150)과 관련하여 포지셔닝하는 것에 응용될 수 있다. 후자와 관련하여, 본 발명의 실시예들은 한 식의 서브-식을 구성하는 스크린 요소의 포지셔닝을 수반한다. 이를 수행하기 위해, 포지셔닝 프로세스(300)는 도 8에 예시적인 방식으로 도시된 바와 같이, 프로세스(300)를 실행하기 위한 순환 과정을 정의하는 동작들의 추가적인 집합과 함께 관리된다. 특히, 도 8은 예컨대 중첩된 지수(140/142 및 148/150)와 같은 서브-식들을 갖는 식을 정의하기 위해 스크린 요소를 순환적으로 포지셔닝하는 프로세스(800)를 도시한다.
순환 포지셔닝 프로세스(800)는 제1 이전 동작(802)으로 시작되고 종료 동작(822)에서 종결되는 동작 플로우를 사용하여 수행된다. 제1 이전 동작(802)은 시작 동작(302)의 개시에 응답하여 개시되며, 제1 생성 동작(304)이 시작되기에 앞서 포지셔닝 프로세스(300)의 동작 플로우를 시작 동작(302)에서 제1 쿼리 동작(802)으로 이전시키도록 한다. 따라서, 시작 동작(302)에 관해 전술한 바와 같이, 공식을 디스플레이하라는 명령의 수신에 응답하여 순환 포지셔닝 프로세스(800)를 개시하도록 시작 동작(802)이 유발된다. 그러면, 제1 쿼리 동작(804)은 요청된 공식이 임의의 서브-식을 포함하는지 여부를 결정한다. 포함하는 경우, 동작 플로우는 제1 쿼리 동작(804)에서 선택 동작(808)으로 간다. 포함하지 않는 경우, 동작 플로우는 제1 쿼리 동작(804)에서 제2 이전 동작(806)으로 가며, 포지셔닝 프로세스는 전술한 제1 생성 동작(304)에서 다시 시작된다.
예시적인 공식(112)에 관하여 제1 쿼리 동작(804)을 설명하면, 윗첨자 글리프(126)와 기본 글리프(124)를 이용하여 형성된 식 "X2"는 어떠한 서브-식도 포함하지 않으며, 따라서, 이러한 경우에 동작 플로우는 상기 동작(804)에서 제2 이전 동작(806)으로 간다. 그러나, 글리프들(146, 148 및 150)을 사용하여 형성된 식 "
Figure 112008018564545-PCT00002
"는 하나의 서브-식(즉, "")를 포함하며, 따라서, 이러한 경우에 동작 플로우는 제1 쿼리 동작(804)에서 선택 동작(808)으로 간다. 따라서, 순환 포지셔닝 프로세스(800)를 설명하기 위해서는 후자의 식, 즉, "
Figure 112008018564545-PCT00004
"이 여기에 설명된다.
선택 동작(808)은 순환 포지셔닝 프로세스(800)에 의한 최초 평가를 위해 식 의 기본 스크린 요소에 있어서 가장 바깥쪽의 서브-식을 구현하는 글리프를 선택한다. 아래첨자 및 윗첨자 서브-식에 있어서, 가장 바깥에 있는 서브-식이라 함은 식에서 오른쪽으로 가장 멀리 있는 서브-식, 즉, "가장 오른쪽에 있는" 서브-식을 말한다. 본 설명과 관련하여, 식 "
Figure 112008018564545-PCT00005
"는 하나의 서브-식, 즉 "ab"만을 가지며, 따라서, 상기 서브-식은 순환 포지셔닝 프로세스(800)에 적용될 가장 바깥에 있는 서브-식을 나타낸다. 따라서, 선택 동작(810)은 순환 포지셔닝 프로세스(800)에 의한 최초 평가를 위해 스크린 요소로서 글리프(148 및 150)를 선택한다. 이러한 선택 후, 순환 포지셔닝 프로세스(800)의 동작 플로우는 제1 생성 동작(810)으로 간다.
제1 생성 동작(810)은 최적의 해상도를 결정한 다음, 결정된 최적 해상도에서 선택된 서브-식 "ab"의 표현을 생성한다. 디스플레이 스크린(102)이 최적 해상도에서 글리프를 디스플레이 한 경우 글리프(148)("a")에 인접하여 글리프(150)("b")가 디스플레이되므로, 최적 해상도 표현은, 글리프(150)("b")의 가상의, 인-메모리 표현이다. 이러한 표현은 순환 포지셔닝 프로세스(800)를 관리하기 위해 사용되는 응용 프로그램 내에 유지되는 데이터 구조 내에서 구현되며, 디스플레이 스크린(102)으로의 출력으로 디스플레이되지는 않는다. 데이터 구조는 최적 해상도에서 글리프(148)("a")에 관련된 글리프(150)("b")에 대한 가상 포지셔닝 특성(즉, 가상 스크린 레이아웃)을 정의하는 좌표를 포함한다. 최적 해상도가 결정되고 선택된 서브-식 "ab"의 관련 표현이 생성된 후, 동작 플로우는 제1 생성 동 작(810)에서 스케일 동작(812)으로 간다.
스케일 동작(308)은 디스플레이 스크린(102)에 관한 해상도 제한에 맞추도록 최적 해상도 표현을 스케일 다운한다. 이를 수행하기 위해, 스케일 동작(812)은 최적 해상도에서 글리프(148)("a")에 관련된 글리프(150)("b")의 가상 스크린 레이아웃을 정의하는 포지셔닝 특성(즉, 좌표)에 해상도 인자를 적용한다. 이에 따라, 최적 해상도는 서브-식 "ab"의 스케일-다운된 최적 해상도 표현을 표현하는, 스케일 다운된(scaled down) 또는 "라운드" 다운된(rounded down) 좌표 집합의 렌더링을 조절한다. 최적 해상도 표현과 같이, 스케일-다운된 최적 표현은 순환 포지셔닝 프로세스(800)를 관리하기 위해 사용되는 응용 프로그램 내에 유지되는 데이터 구조 내에서 구현되며, 디스플레이 스크린(102)으로의 출력으로 디스플레이되지는 않는다. 동작 플로우는 스케일 동작(812)에서 제3 이전 동작(814)으로 간다.
제3 이전 동작(814)은 순환 포지셔닝 프로세스(800)의 동작 플로우를 포지셔닝 프로세스(300)으로 되돌린다. 또한, 제3 이전 동작(814)은, 서브-식이 인접하는, 본 설명에서는 식 "
Figure 112008018564545-PCT00006
"의 기본 글리프(146)("X")인, 스크린 요소에 관련하여 포지셔닝된 "스크린 요소"가 되도록 서브-식 "ab"의 스케일-다운된 최적 표현을 특정한다. 그 다음, 포지셔닝 프로세스(300)는 전술한 바와 같이 운영되어, 서브-식 "ab"이 기본 글리프(146)("X")와 관련하여 최적으로 포지셔닝되도록 한다. 포지셔닝 프로세스(300)가 완료될 때, 동작 플로우는, 추가 평가를 위해, 제4 이전 동 작(816)을 통해 종료 동작(320)에서 순환 포지셔닝 프로세스(800)으로 돌아간다. 제4 이전 동작(816)이 포지셔닝 프로세스(300)의 동작 플로우를 승인하며, 제5 이전 동작(820)에서 순환 포지셔닝 프로세스(800)의 동작 플로우를 재시작한다.
제5 이전 동작(820)은 순환 포지셔닝 프로세스(800)을 통해 반복된 서브-식 각각에 대한 포지셔닝 프로세스(300)를 재시작하여, 거기 포함된 글리프 각각이 서로에 대해 최적으로 포지셔닝되도록 한다. 예컨대, 본 설명에 있어서, 글리프(150)("b")는 포지셔닝 프로세스(300)를 사용하여 글리프(148)("a")에 최적으로 포지셔닝된다. 이와 관련하여, 공식 내 글리프가 평가되는 순서는 순환 포지셔닝 프로세스(800)의 최초 반복에 대해 역순이다. 각각의 서브-식이 포지셔닝 프로세스(300)에 적용된 후, 순환 포지셔닝 프로세스(800)의 동작 플로우는 종료 동작(822)에서 종결된다.

Claims (20)

  1. 디스플레이 스크린 상에 스크린 요소들을 포지셔닝하는 방법을 수행하기 위한 컴퓨터-실행가능 명령을 포함하는 컴퓨터 판독가능 매체로서, 컴퓨터 프로세스는,
    상기 디스플레이 스크린 상에 스크린 요소를 디스플레이하라는 요청의 수신에 응답하여, 제1 해상도에 기초하여 상기 디스플레이 스크린 상에 상기 스크린 요소를 디스플레이하기 위한 포지셔닝 특성의 제1 집합을 결정하는 단계;
    제2 해상도에 기초하여 상기 디스플레이 스크린에 상기 스크린 요소를 디스플레이하기 위한 포지셔닝 특성의 제2 집합을 결정하는 단계;
    상기 포지셔닝 특성의 제1 집합과 상기 포지셔닝 특성의 제2 집합을 분석하여 양자 간의 변위 크기를 결정하는 단계; 및
    상기 변위 크기가 기설정된 임계값을 초과하는 경우, 상기 포지셔닝 특성의 제1 집합을 변경하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  2. 제1항에 있어서,
    상기 분석하는 단계에 응답하여, 상기 변위 크기가 상기 기설정된 임계값을 초과하지 않는 경우, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 상기 스크린 요소를 디스플레이하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  3. 제2항에 있어서,
    상기 변경하는 단계에 응답하여, 상기 변위 크기가 상기 기설정된 임계값을 초과하는 경우, 상기 변경된 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 상기 스크린 요소를 디스플레이하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  4. 제1항에 있어서, 상기 제1 해상도는 상기 디스플레이 스크린의 실제 해상도이며, 상기 제2 해상도는 최적 해상도와 관련되는 컴퓨터 판독가능 매체.
  5. 제4항에 있어서, 상기 포지셔닝 특성의 제2 집합을 결정하는 단계는,
    상기 최적 해상도에 대한 상기 실제 해상도의 비율을 결정하는 단계; 및
    상기 결정된 비율에 기초하여 상기 최적 해상도를 스케일 다운(scale down)함으로써 상기 제2 해상도를 계산하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  6. 제5항에 있어서, 상기 변위 크기는, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 스크린 요소 상의 한 점과, 상기 포지셔닝 특성의 제2 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 스크린 요소 상의 실질적으로 공통되는 점 사이에 존재하는 픽셀의 수를 나타내는 컴퓨터 판독가능 매체.
  7. 제6항에 있어서, 상기 기설정된 임계값은, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 스크린 요소 상의 한 점과, 상기 포지셔닝 특성의 제2 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 스크린 요소 상의 실질적으로 공통되는 점 사이에 존재할 수 있는 픽셀의 최대수를 나타내며,
    상기 변경하는 단계는,
    상기 변위 크기에 의해 표현되는 상기 픽셀의 수와 상기 기설정된 임계값에 의해 표현되는 상기 픽셀의 최대수가 동일해지도록 상기 포지셔닝 특성의 제1 집합을 변경하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  8. 제1항에 있어서, 상기 스크린 요소는 공식(formula expression)을 표현하는 컴퓨터 판독가능 매체.
  9. 디스플레이 스크린 상에서 제1 스크린 요소를 제2 스크린 요소에 관련하여 포지셔닝하는 방법을 수행하기 위한 컴퓨터-실행가능 명령을 포함하는 컴퓨터 판독가능 매체로서, 컴퓨터 프로세스는,
    상기 제1 스크린 요소를 상기 제2 스크린 요소에 인접하여 디스플레이하라는 요청의 수신에 응답하여, 상기 디스플레이 스크린의 실제 해상도에 기초하여 상기 제1 스크린 요소를 상기 제2 스크린 요소에 관련하여 디스플레이하기 위한 포지셔닝 특성의 제1 집합을 결정하는 단계;
    상기 포지셔닝 특성의 제1 집합이, 상기 제1 스크린 요소가 상기 제2 스크린 요소로부터 적어도 기설정된 크기의 빈 공간만큼 떨어져 있음을 나타내는 경우,
    최적 해상도에 기초하여 상기 제1 스크린 요소를 상기 제2 스크린 요소에 관련하여 디스플레이하기 위한 포지셔닝 특성의 제2 집합을 결정하는 단계; 및
    상기 포지셔닝 특성의 제1 집합으로부터 결정된 수직 위치와 상기 포지셔닝 특성의 제2 집합으로부터 결정된 수평 위치에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 디스플레이하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  10. 제9항에 있어서,
    상기 포지셔닝 특성의 제1 집합이, 상기 제1 스크린 요소가 상기 제2 스크린 요소로부터 적어도 상기 기설정된 크기의 빈 공간만큼 떨어져 있지 않음을 나타내는 경우, 상기 포지셔닝 특성의 제2 집합에 대비하여 상기 포지셔닝 특성의 제1 집합을 평가함으로써 상기 포지셔닝 집합의 제1 집합이 변경되어야 하는지 여부를 결정하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  11. 제10항에 있어서, 상기 평가하는 단계는,
    상기 최적 해상도에 기초하여 상기 포지셔닝 특성의 제2 집합을 결정하는 단계;
    상기 포지셔닝 특성의 제2 집합에 대비하여 상기 포지셔닝 특성의 제1 집합을 분석함으로써 양자 간의 변위 크기를 결정하는 단계; 및
    상기 변위 크기가 기설정된 임계값을 초과하는 경우 상기 포지셔닝 특성의 제1 집합을 변경하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  12. 제11항에 있어서,
    상기 분석하는 단계에 응답하여, 상기 변위 크기가 상기 기설정된 임계값을 초과하지 않는 경우, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 디스플레이하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  13. 제12항에 있어서,
    상기 변경하는 단계에 응답하여, 상기 변위 크기가 상기 기설정된 임계값을 초과하는 경우, 상기 변경된 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레 이 스크린 상에 상기 제1 스크린 요소를 디스플레이하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  14. 제11항에 있어서, 상기 포지셔닝 특성의 제2 집합을 결정하는 단계는,
    상기 최적 해상도에 대한 상기 실제 해상도의 비율을 결정하는 단계; 및
    상기 최적 해상도에 상기 결정된 비율을 곱함으로써 정의되는 스케일-다운된(scaled-down) 최적 해상도를 사용하여 상기 포지셔닝 특성의 제2 집합을 계산하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  15. 제14항에 있어서, 상기 변위 크기는, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 제1 스크린 요소 상의 한 점과, 상기 포지셔닝 특성의 제2 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 제1 스크린 요소 상의 실질적으로 공통되는 점 사이에 존재하는 픽셀의 수를 나타내는 컴퓨터 판독가능 매체.
  16. 제15항에 있어서, 상기 기설정된 임계값은, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 제1 스크린 요소 상의 한 점과, 상기 포지셔닝 특성의 제2 집합에 기초하여 상기 디스플레이 스크린 상에 디스플레이되는 경우의 상기 제1 스크린 요소 상의 실질적으로 공통되 는 점 사이에 존재할 수 있는 픽셀의 최대수를 나타내며,
    상기 변경하는 단계는,
    상기 변위 크기에 의해 표현되는 상기 픽셀의 수가 상기 기설정된 임계값에 의해 표현되는 상기 픽셀의 최대수와 동일해지도록 상기 포지셔닝 특성의 제1 집합을 변경하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  17. 디스플레이 스크린 상에서 제1 스크린 요소를 제2 스크린 요소에 관련하여 포지셔닝하는 방법을 수행하기 위한 컴퓨터-실행가능 명령을 포함하는 컴퓨터 판독가능 매체로서, 컴퓨터 프로세스는,
    제1 해상도에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 상기 제2 스크린 요소에 관련하여 디스플레이하기 위한 포지셔닝 특성의 제1 집합을 결정하는 단계;
    제2 해상도에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 상기 제2 스크린 요소에 관련하여 디스플레이하기 위한 포지셔닝 특성의 제2 집합을 결정하는 단계;
    상기 포지셔닝 특성의 제2 집합에 대비하여 상기 포지셔닝 특성의 제1 집합을 분석함으로써 상기 제1 스크린 요소에 대해 특정된 양자 간의 변위 크기를 결정하는 단계; 및
    상기 변위 크기가 기설정된 임계값을 초과하는 경우, 상기 포지셔닝 특성의 제1 집합 내에 특정된 좌표를 상기 포지셔닝 특성의 제2 집합 내에 특정된 좌표로 이동함으로써 결정되는 변경된 포지셔닝 특성에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 디스플레이하는 단계
    를 포함하는 컴퓨터 판독가능 매체.
  18. 제17항에 있어서,
    상기 분석하는 단계에 응답하여, 상기 변위 크기가 상기 기설정된 임계값을 초과하지 않는 경우, 상기 포지셔닝 특성의 제1 집합에 기초하여 상기 디스플레이 스크린 상에 상기 제1 스크린 요소를 디스플레이하는 단계
    를 더 포함하는 컴퓨터 판독가능 매체.
  19. 제18항에 있어서, 상기 제2 스크린 요소는 복수의 글리프(glyph)를 포함하는 컴퓨터 판독가능 매체.
  20. 제19항에 있어서, 상기 제2 스크린 요소는 공식에 대한 기본 지수식을 나타내며, 상기 제1 스크린 요소는 상기 제2 스크린 요소에 대한 윗첨자를 나타내는 컴퓨터 판독가능 매체.
KR1020087006247A 2005-09-15 2006-09-15 스크린 요소 포지셔닝 KR20080044292A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/228,961 2005-09-15
US11/228,961 US7576749B2 (en) 2005-09-15 2005-09-15 Positioning screen elements

Publications (1)

Publication Number Publication Date
KR20080044292A true KR20080044292A (ko) 2008-05-20

Family

ID=37854592

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087006247A KR20080044292A (ko) 2005-09-15 2006-09-15 스크린 요소 포지셔닝

Country Status (6)

Country Link
US (1) US7576749B2 (ko)
EP (1) EP1915666A1 (ko)
JP (1) JP5097117B2 (ko)
KR (1) KR20080044292A (ko)
CN (1) CN101263449B (ko)
WO (1) WO2007035615A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8584012B1 (en) 2008-10-10 2013-11-12 Adobe Systems Incorporated Methods and systems for displaying text on a path
JP5323103B2 (ja) * 2010-09-03 2013-10-23 三菱電機株式会社 グラフィカルユーザインタフェース装置
US8687004B2 (en) * 2010-11-01 2014-04-01 Apple Inc. Font file with graphic images
US20140184603A1 (en) * 2012-12-27 2014-07-03 Nvidia Corporation Method to improve usability of high pixel density displays

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2935510B2 (ja) * 1989-09-26 1999-08-16 キヤノン株式会社 出力装置及び出力方法
CA2025782A1 (en) * 1989-10-16 1991-04-17 Sampo Kaasila Method for determining the optimum angle for displaying a line on raster output devices
JPH03268058A (ja) * 1990-03-19 1991-11-28 Hitachi Ltd 文書作成方法及びその装置
JP2598858B2 (ja) 1992-10-23 1997-04-09 インターナショナル・ビジネス・マシーンズ・コーポレイション キャラクタ作成/出力方法および装置
JP3145509B2 (ja) * 1992-11-09 2001-03-12 富士通株式会社 文字生成方法及びその装置
JPH0732649A (ja) 1993-07-16 1995-02-03 Fujitsu Ltd 文字の合成方法及びその装置
JP3599413B2 (ja) * 1995-04-14 2004-12-08 株式会社ルネサステクノロジ 解像度変換装置および解像度変換方法
US5963670A (en) * 1996-02-12 1999-10-05 Massachusetts Institute Of Technology Method and apparatus for classifying and identifying images
US5987481A (en) * 1997-07-01 1999-11-16 Microsoft Corporation Method and apparatus for using label references in spreadsheet formulas
JPH11143451A (ja) * 1997-11-05 1999-05-28 Canon Inc 文字発生方法、文字発生装置、及び、記憶媒体
US6952210B1 (en) * 1997-12-05 2005-10-04 Adobe Systems Incorporated Method of generating multiple master typefaces containing kanji characters
JP3272309B2 (ja) * 1998-10-01 2002-04-08 株式会社ナナオ 画素補間処理方法及びそのユニット、並びにそれを備えたデジタル画像表示装置
EP1109105A1 (en) * 1999-12-14 2001-06-20 Sun Microsystems, Inc. Inserting a data object into a text document
BE1014222A3 (fr) * 2001-06-13 2003-06-03 Ct Rech Metallurgiques Asbl Procede de caracterisation en ligne d'une surface en mouvement et dispositif pour sa mise en oeuvre.
JP2004094408A (ja) * 2002-08-29 2004-03-25 Keyence Corp 表示装置、印刷方法、印刷フォーマット作成方法、印刷フォーマット作成プログラムおよびコンピュータ読取可能な記録媒体
EP1431881B1 (en) * 2002-12-18 2009-07-29 Microsoft Corporation Automatic determination of appropriate font characteristics
US20040119714A1 (en) * 2002-12-18 2004-06-24 Microsoft Corporation International automatic font size system and method
JP4793837B2 (ja) 2003-11-10 2011-10-12 コクヨ株式会社 印字装置及び印字方法
US7333110B2 (en) * 2004-03-31 2008-02-19 Adobe Systems Incorporated Adjusted stroke rendering
US7492366B2 (en) * 2005-05-13 2009-02-17 Microsoft Corporation Method and system of character placement in opentype fonts
US7242404B2 (en) * 2005-09-15 2007-07-10 Microsoft Corporation Enlargement of font characters

Also Published As

Publication number Publication date
CN101263449A (zh) 2008-09-10
JP5097117B2 (ja) 2012-12-12
WO2007035615A1 (en) 2007-03-29
US20070057965A1 (en) 2007-03-15
US7576749B2 (en) 2009-08-18
CN101263449B (zh) 2012-06-06
JP2009509196A (ja) 2009-03-05
EP1915666A1 (en) 2008-04-30

Similar Documents

Publication Publication Date Title
US9589233B2 (en) Automatic recognition and insights of data
CA2773152C (en) A method for users to create and edit web page layouts
AU2010319890B2 (en) Supporting platform-independent typesetting for documents
US20050083331A1 (en) Systems and methods for managing seams
KR20040040297A (ko) 폰트 선택 방법
WO2020118485A1 (en) Method of Detecting User Interface Layout Issues for Web Applications
US9766860B2 (en) Dynamic source code formatting
US11321524B1 (en) Systems and methods for testing content developed for access via a network
KR20080044292A (ko) 스크린 요소 포지셔닝
JP2015115065A (ja) 編集可能な形式への変換防止のためのページ記述言語出力の難読化
US10169734B2 (en) Dynamic layout for organizational charts
EP1691278B1 (en) Method and computer system for editing documents
EP3298507A1 (en) Document presentation qualified by conditions evaluated on rendering
US20060064632A1 (en) Method and system to inverse graphs
US9996505B2 (en) Managing the display of electronic documents having embedded graphical elements
JP2011248739A (ja) 文書処理装置、文書処理方法、及びプログラム
CN112286576B (en) Cross-platform rendering method, client and medium
JP2007133751A (ja) 分割ページ情報提供装置、分割ページ表示システム及びプログラム
CN115480672A (zh) 一种基于Vue+SVG的高可定制星级评分方法及装置
US20120169736A1 (en) Methods, apparatuses and computer program products for providing a true resolution of graphics displayed on devices
JP2003345788A (ja) 電子文書表示方法、電子文書表示装置、電子文書表示プログラムおよび電子文書表示プログラムを記録した機械読取り可能な記録媒体
CN118193723A (zh) 文本解析方法、系统、电子设备及存储介质
JP2004145545A (ja) Webサイト構成検査装置、Webサイト構成検査方法、およびその方法をコンピュータに実行させるプログラム

Legal Events

Date Code Title Description
A201 Request for examination
SUBM Surrender of laid-open application requested