KR100957531B1 - OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치 - Google Patents

OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치 Download PDF

Info

Publication number
KR100957531B1
KR100957531B1 KR1020080035626A KR20080035626A KR100957531B1 KR 100957531 B1 KR100957531 B1 KR 100957531B1 KR 1020080035626 A KR1020080035626 A KR 1020080035626A KR 20080035626 A KR20080035626 A KR 20080035626A KR 100957531 B1 KR100957531 B1 KR 100957531B1
Authority
KR
South Korea
Prior art keywords
openvg
engine
browser
vector
data
Prior art date
Application number
KR1020080035626A
Other languages
English (en)
Other versions
KR20090110045A (ko
Inventor
김영옥
Original Assignee
주식회사 코아로직
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 코아로직 filed Critical 주식회사 코아로직
Priority to KR1020080035626A priority Critical patent/KR100957531B1/ko
Priority to US12/426,176 priority patent/US20090273604A1/en
Publication of KR20090110045A publication Critical patent/KR20090110045A/ko
Application granted granted Critical
Publication of KR100957531B1 publication Critical patent/KR100957531B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0742Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in a mobile device, e.g. mobile phones, handheld devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/54Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • 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

Abstract

본 발명에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법은, 벡터 요소가 포함된 벡터 그래픽스 어플리케이션의 수행 개시 신호가 입력되는 입력단계; 상기 수행 개시 신호에 해당하는 상기 벡터 그래픽스 어플리케이션의 벡터 요소를 OpenVG형태의 벡터 요소로 변환하는 변환생성단계; 및 OpenVG엔진의 해당 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하는 렌더링단계를 포함하여 구성된다.
상기 본 발명에 의하면, 벡터 요소의 처리를 위한 하드웨어 가속을 효과적으로 수행할 수 있는 OpenVG 엔진 등을 모바일 브라우저에 내장하여 모바일 단말기의 화면표시수단으로 출력되는 다양한 객체에 대한 구동 메카니즘을 브라우저와 연동되도록 운용함으로써 모바일 환경에서 최적화된 그래픽스 콘텐츠를 실현할 수 있는 효과를 창출한다.
오픈 벡터 그래픽스, OpenVG, 모바일 브라우저, 데이터 파싱, 벡터 요소

Description

OpenVG엔진이 내장된 모바일 브라우저의 구동 방법 및 장치{APPARATUS AND METHOD FOR DRIVING MOBILE BROWSER WITH BUILT-IN OpenVG ENGINE}
본 발명은 이동통신 즉 모바일 환경에서 구현되는 브라우저의 구동방법 및 구동 장치에 관한 것으로서, 더욱 구체적으로는 모바일 브라우저에 오픈 벡터 그래픽스 엔진을 내장하고 이를 브라우저와 연동하여 구동함으로써 웹 페이지 등에 포함된 벡터 콘텐츠를 효율적으로 처리할 수 있는 OpenVG가 내장된 모바일 브라우저의 구동 장치 및 구동 방법에 관한 것이다.
벡터그래픽은 주어진 2차원이나 3차원 공간에 선이나 형태 등을 형상적으로 표현함에 있어 일련의 명령들이나 수학적 표현을 통해 디지털 이미지를 만드는 것을 의미한다. 벡터는 주지된 바와 같이 크기와 방향을 동시에 갖는 물리학적 개념의 요소를 의미하며, 벡터그래픽은 사용자들의 창작활동 결과물인 그래픽 파일이 이러한 일련의 상기 벡터 서술문의 형태로 창작되고 저장되는데 사용되는 개념이다.
예를 들면, 벡터그래픽 파일에는 선을 표현하기 위한 각 비트들의 정보가 저장되지 않고, 연결될 일련의 점의 위치에 대한 정보를 포함하게 되며, 직접적인 선 의 형상적 정보를 모두 가지고 있는 것과 대비하여 위치정보 등 선을 형상적으로 표현하기 위한 시작점, 끝점 등의 위치정보만을 가지고 있으므로 파일 크기가 작아짐은 물론, 위치정보 등만을 변경함으로써 이미지 자체를 수정할 수 있으므로 래스터 이미지 파일보다 수정하기가 쉬운 장점이 있다.
래스터(raster)그래픽은 비트맵 그래픽에 상응하는 개념으로서, 색상표현이 정교해서 사진 작업 등에 많이 이용되며, 대량의 픽셀들 조합으로 표현되는 그래픽이므로 픽셀 수가 많을수록 색감이 정교하게 표현되는 반면 용량이 커지게 된다.
또한, 기존 비트맵 등으로 구성된 이미지는 확장되거나 변경되는 경우 이미지의 외곽 형태에 소위 계단현상이 발생하여 사실적이거나 회화적인 표현이 제한될 수밖에 없으나, 벡터로 구현된 이미지는 확대되거나 또는 축소되는 경우에도 수학연산자인 매트릭스를 이용함으로써 상기와 같은 문제점이 극복되어 자연스럽게 표현될 수 있는 강점이 있다.
벡터그래픽에는 확장성 생성 언어(XML : extensible markup language) 어플리케이션과 같은 이미지의 도형 처리를 행하는 W3C에서 제정한 웹 그래픽 표준인 가변벡터그래픽(SVG : scalable vector graphic)이 있으나, 상기 기술은 구동을 위한 많은 기능들을 소프트웨어로 처리하기 때문에 전송 채널 또는 하드웨어 리소스 등이 제한적인 모바일 환경의 특성상 모바일 환경에서는 연산 속도 등이 느려져 그 활용도가 낮아 제한적인 범위 내에서만 이용되고 있다고 할 수 있다.
또한, 벡터 그래픽을 활용한 콘텐츠를 구동하는 매크로 미디어의 플래쉬도 있으나, 상기 플래쉬는 그 프로그램 자체의 용량이 상당히 크며, 구동되는 경우 메 모리를 과도하게 차지함은 물론, 플래쉬 엔진 자체가 상당한 양의 벡터 연산과정이 필요하므로 구현 기능에 비하여 효율성이 낮다고 할 수 있다.
한편, 이동통신 브라우저는 제 1세대와 제 2세대를 거치면서 기존에 처리하던 HTML 웹 페이지를 벗어나, 각종 벡터 그래픽스 처리와 동적 HTML 처리가 가능한 제 3세대를 지향하는 풀 브라우징 형태로 변형되고 있는데, 이러한 제 1,2 세대의 브라우징 방법은 데이터를 처리하는 데 있어, 각 콘텐츠 제공업체마다 상이한 콘텐츠를 제공하기 때문에 기존의 브라우저를 이용한 콘텐츠는 그 사용이 제한적일 수 밖에 없다는 단점이 있다.
또한, 3세대를 지향하는 브라우저는 웹 문서 등에 포함되어 있는 벡터를 처리하기 위해 벡터 그래픽을 처리할 수 있는 엔진을 소프트웨어적 방법으로 탑재하여 상기 벡터 콘텐츠를 처리하지만 수행 처리 속도가 뒷받침되지 않고 있으므로 현재의 모바일 시스템에서는 벡터 게임 등 많은 연산이 필요한 벡터 관련 콘텐츠는 아직 제 기능을 충분히 발휘하지 못하고 있는 실정이다.
즉, 인터넷이 가지는 다양한 정보의 검색가능성 및 검색의 즉시성은 인터넷이 가지는 본질적인 특성이라고 할 수 있으나 현재의 모바일의 그래픽 구동 기법으로는 이러한 인터넷 환경을 모바일 단말에서 실현할 수 있음은 물론, 모바일 단말의 시장 경쟁력을 더욱 높일 수 있도록 콘텐츠 그래픽환경의 고 사양에 대한 유저의 요구를 충족시킬 수 있는 모바일 단말에 대한 필요성이 점차적으로 높아지고 있다고 할 수 있다.
본 발명은 상기된 문제점을 극복하기 위하여 안출된 것으로서, 간단한 연산 및 작은 리소스의 사용으로도 효과적인 벡터 그래픽 요소를 표현할 수 있고, 이를 바탕으로 더욱 다양한 객체를 브라우저와 함께 연동하여 운용할 수 있도록 OpenVG엔진이 내장된 모바일 브라우저를 구동하는 장치 및 방법을 제공하는 데 목적이 있다.
또한, 상기와 같은 방법을 컴퓨터에서 구현하기 위하여 컴퓨터로 인식가능하고 실행되는 프로그램을 기록한 기록매체를 제공하는 데 목적이 있다.
본 발명에 다른 목적 및 장점들은 하기에 설명될 것이며, 본 발명의 실시예에 의해 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타난 구성과 구성의 조합에 의해 실현될 수 있다.
상기 목적을 달성하기 위한 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치는 벡터 요소가 포함된 벡터 그래픽스 어플리케이션의 수행 개시 신호가 입력되는 입력부; 상기 수행 개시 신호에 해당하는 상기 벡터 그래픽스 어플리케이션의 벡터 요소를 OpenVG형태의 벡터 요소로 변환하는 변환생성부; 및 OpenVG엔진의 해당 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하는 렌더링부를 포함하여 구성된다.
한편, 본 발명의 다른 측면에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동방법은, 벡터 요소가 포함된 벡터 그래픽스 어플리케이션의 수행 개시 신호가 입력되는 입력단계; 상기 수행 개시 신호에 해당하는 상기 벡터 그래픽스 어플리케이션의 벡터 요소를 OpenVG형태의 벡터 요소로 변환하는 변환생성단계; 및 OpenVG엔진의 해당 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하는 렌더링단계를 포함하여 구성된다.
또한, 상기 벡터 객체 이외의 출력될 타요소가 존재하는 경우, 상기 타요소 데이터를 브라우저로 전송하는 타요소전송단계; 상기 전송된 타요소 데이터를 브라우저에 내장된 기본 API를 이용하여 객체를 형성하고 저장하는 기본객체 생성단계; 및 상기 기본객체 생성단계에서 저장된 데이터와 상기 렌더링단계에서 렌더링된 객체 데이터를 통합하는 통합단계를 더 포함하여 구성되는 것이 바람직하다.
본 발명에 따른 OpenVG엔진이 내장된 모바일 브라우저에 의하는 경우 다음과 같은 효과를 창출할 수 있다.
첫째, 모바일 브라우저에 벡터 그래픽 요소를 처리할 수 있는 OpenVG엔진을 내장하여 구동하는 장치 및 방법을 제공함으로써, 모바일 환경에서도 더욱 풍부하고 다양한 그래픽 콘텐츠가 표현될 수 있는 모바일 브라우저를 구현할 수 있다.
둘째, 이동성이 보장되어야 하는 모바일 단말기의 작은 하드웨어 리소스만으로도 벡터 콘텐츠를 더욱 높은 처리속도로 구현할 수 있도록 구성함으로써, 그래픽 환경에 대한 사용자의 높은 요구를 충족시킬 수 있는 벡터 처리 엔진이 구비된 브라우저를 구동할 수 있는 구동 장치 및 구동 방법을 제공할 수 있다.
셋째, OpenVG 엔진을 브라우저에 내장시켜 상호 연동되도록 구동함으로써, 브라우저를 통하여 입력되는 다양한 웹 페이지 등의 데이터를 효과적으로 처리 및 관리할 수 있어 개별적인 벡터 작업을 통하여 제작되는 켄텐츠를 모바일에 추가해야하는 작업의 복잡성 및 작업을 위한 인력의 낭비를 대폭적으로 감소시킬 수 있다.
넷째, 이와 함께 브라우저를 이용해 처리되는 벡터 콘텐츠를 기타 다른 순수 객체(HTML, 자바스크립트 등) 등과의 상호 작용으로 다양한 효과를 낼 수 있는 벡터형 단말기의 UI를 구현할 수 있는 모바일 브라우저 구동 장치 및 방법을 제공할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
본 발명의 구성에 대한 구체적인 설명에 앞서, 모바일 단말기에 구현되는 브라우저의 개념적 구조를 나타내는 계층도인 도 1 및 본 발명의 바람직한 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 개념적 구조를 나타내는 계층도인 도 2를 통하여 OpenVG엔진의 논리적인 위치 관계를 간략히 설명한다.
도 1의 참조부호 100은 모바일 단말기의 기본 하드웨어 및 소프트웨어 계층을 나타내고 있으며, 상기 계층을 기초로 모바일 단말기의 플랫폼을 구성하는 기본 계층 소프트웨어가 참조부호 200에 해당한다.
이와 함께, 이동통신 단말기 브라우저에 필수적인 각종 프로토콜, HTML, 자바 스트립트 파서(300)가 구성되며, 이를 기초로 단말기 LCD 등의 화면표시수단에 출력하기 위한 이미지 생성 및 디스플레이 포맷(변환 모듈)(400)이 구성되고, 상기 참조부호 400은 이미지 디코더(700) 및 이를 통한 기본 API 또는 필수 API(600)를 호출하여 연동하여 구동된다.
본 발명에 의한 OpenVG엔진(10)은 벡터 요소가 포함된 브라우저와 같은 벡터 그래픽스 어플리케이션의 수행개시 신호가 입력되면 상기 브라우저 등의 어플리케이션으로부터 입력된 벡터 객체 요소들을 분석하고 입력된 벡터 객체 요소들에 대응되는 OpenVG형태의 벡터 요소로 변환한 후 해당하는 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하여 최종적으로 벡터 객체를 생성하는 역할을 담당한다.
이러한 본 발명의 구현을 위한 OpenVG엔진(10)은 상기 스크립트 파서(300)로부터 파싱된 데이터를 전송받고, 웹 페이지에 구성되는 다양한 객체를 구현하기 위 한 API를 호출하게 되므로 상기 도 2에 도시된 바와 같은 논리적 위치에 구비되며, 최종적으로 벡터 그래픽 어플리케이션(500)은 이러한 OpenVG 등을 구동하여 출력되게 된다.
이하에서는 본 발명의 바람직할 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치의 구성을 도시한 블록도인 도 3 및 본 발명의 바람직한 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법의 과정을 도시한 흐름도인 도 5를 통하여 본 발명에 의한 브라우저 구동 장치 및 방법을 상세히 설명하도록 한다.
본 발명에 의한 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치(10)는 입력부(20), 변환생성부(21) 및 렌더링부(22)를 포함하여 구성될 수 있다.
상기 입력부(20)는 벡터 요소가 포함된 벡터 그래픽스 어플리케이션(500)의 수행 개시 신호가 입력되는 구성으로서 사용자 및 브라우저간 인터페이스 기능을 수행한다.
즉 유저는 자신이 원하는 어플리케이션이 구동되도록 특정 어플리케이션을 선택하게 되고, 선택된 대상 어플리케이션에 대한 수행 개시 신호가 상기 입력부(20)를 통하여 입력되게 된다(S510).
상기와 같이 인터페이스인 입력부(20)를 통하여 입력된 상기 수행 개시 신호는 본 발명의 변환생성부(21)에 전달되게 되고, 상기 변환생성부(21)는 상기 신호에 해당하는 벡터 그래픽스 어플리케이션의 벡터 요소를 OpenVG형태의 벡터 요소로 변환하여 생성한다(S540).
상기 변환생성부(21)에서 수행하는 OpenVG형태의 벡터 요소로 변환하여 생성하는 과정을 구체적으로 설명하면 다음과 같다.
상기 벡터 그래픽스 어플리케이션은 브라우저에서 구동되는 상기 웹 페이지에 포함된 어플리케이션으로서 상기 어플리케이션을 구성하는 다양한 요소를 해당하는 파서(300)를 호출하여 각 요소를 특성에 따라 파싱하여 벡터 요소를 추출하고, 상기 추출된 벡터 요소 데이터를 분석하여 해당하는 특성에 따라 분류하여 전송하는 전처리과정을 거치게 된 후, 최종적으로 상기 전처리과정을 거쳐 입력된 벡터 요소 데이터에 해당하는 연산을 수행하여 상기 벡터 요소 데이터를 OpenVG 형태의 벡터 요소로 변환하여 생성하게 된다.
즉, 단말기 내 브라우저를 통하여 XML 등의 파싱을 통하여 입력되는 오픈 벡터 그래픽스 콘텐츠의 요소(예를 들어, path, ellipse, line, arc, image, font, scale, transformation, rotate, shear, gradient, scissor 등)을 생성하기 위한 객체를 생성하게 되고, 그 후 오픈 벡터 그래픽스 엔진의 syntax를 이용하여 상기와 같이 생성된 객체의 조합 및 실제 path 등의 generation을 생성하고, 콘텐츠가 표현된 후 이미지 및 이차원 벡터 그래픽스 요소를 위한 blending, masking, image interpolation기능을 실현하기 위하여 구동 API를 수행하게 된다.
상기의 과정을 거쳐 벡터 그래픽스 어플리케이션의 벡터 요소가 OpenVG형태의 벡터 요소로 변환되어 생성되게 되면, 본 발명의 렌더링부(22)는 OpenVG엔진의 해당 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하게 된다(S550).
이하에서는 본 발명의 바람직한 실시형태에 따른 OpenVG엔진이 내장된 모바 일 브라우저의 구동 장치의 구체적인 구성 및 작용 관계를 첨부된 도 4 및 도 6을 통하여 설명한다.
상기 본 발명의 바람직한 실시형태를 구현하기 위하여 상기 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치(10)는 제어부(24), 기본객체 생성부(25) 및 통합부(26)를 더 포함하여 구성될 수 있다.
상기 S540 단계의 변환 수행단계를 구동하기 전, 브라우저에 내장된 OpenVG엔진의 초기화를 하기 위하여 본 발명의 제어부는(24)는 초기화 여부가 가능한지 판단하여(S520) 초기화가 가능한 경우 OpenVG엔진을 초기화(S530)를 수행하게 된다.
상기 초기화 과정은 브라우저에 내장된 오픈 벡터 그래픽스 엔진을 구동하기 위한 초기화 과정으로서, 먼저 단말기 내 기본 API를 사용하여 단말기에 내장된 메모리, TAST 수행 여부 등의 조건을 검사하는 기능이 포함되며, 이후 내장된 OpenVG엔진 구동에 무리가 없다고 판단되는 경우 API를 이용하여 벡터 연산의 수행에 필요한 내부 메모리 공간을 확보하게 되고 단말기 내 브라우저와의 실시간 TASK 수행 여부, 이벤트 처리를 위한 UI TASK 상태 검사 등을 수행하게 된다.
이와 함께, 상기와 같이 벡터 그래픽스 어플리케이션에 해당하는 벡터 요소 이외에 단말기의 LCD 등과 같은 화면표시수단(28)에 나타내어야 할 다른 요소가 있는 경우 즉, 단말기 내 기본 API를 활용할 특정 요소가 존재하는 경우, 단말기 내 브라우저와 실시간으로 연동되는 상기 TASK를 통해 제어권을 브라우저에게 넘기게 되고, 상기 특정 요소에 대한 수행이 완료되는 경우 다시 제어권을 OpenVG엔진으로 되돌리도록 제어하기 위하여 추가적으로 다음과 같은 단계를 수행하게 된다.
상기와 같이 상기와 같이 벡터 그래픽스 어플리케이션에 해당하는 벡터 요소 이외에 단말기의 LCD 등과 같은 화면표시수단(28)에 나타내어야 할 다른 요소가 있는 경우에는 브라우저가 타 요소를 처리하도록 구성되는데(S565) 이에 대한 구체적인 프로세싱은 도 7에 도시되어 있다.
우선, 도 7에 도시된 바와 같이 벡터 요소 이외 화면표시수단으로 출력할 다른 요소가 존재하는지 판단하여(S560) 상기 백터 객체 이외의 출력될 타요소가 존재하는 경우, 브라우저가 자체 내장 기능을 이용하여 이를 처리하게 되는데(S565) 구체적으로 본 발명의 제어부(24)는 상기 타요소 데이터를 전송하여(S566) 브라우저로 제어권을 넘기게 되고, 본 발명의 기본객체 생성부(25)는 브라우저가 내장된 기본 API를 호출하여 상기 타요소에 대한 객체를 생성하고 프레임 메모리 등에 저장하도록 제어하게 된다(S567).
상기의 과정을 거쳐 생성되어 프레임 메모리 등에 저장되는 기본 객체 데이터를 본 발명의 통합부(26)가 앞선 과정(S550)에서 생성된 상기 렌더링된 객체 데이터와 통합하고, 통합된 데이터는 최종적으로 화면표시수단 등으로 출력(S580)되게 된다.
상기의 과정에서 렌더링된 벡터 객체 등이 실제 단말기의 화면표시수단 등으로 출력되는 경우 상호 간의 출력포맷형태가 상이한 경우 상기 LCD 등의 화면표시수단의 출력 포맷에 부합되도록 상기 벡터 객체의 출력 포맷을 RGB565, 1444, 8888, RGBA32, BGRA32 등의 형태로 변환(S570)하여 출력하도록 구성하는 것이 더욱 바람직하다.
상기와 같은 단계를 통하여 OpenVG가 내장된 브라우저를 구동 제어하게 되고, 상기의 과정이 완료되어 상기 벡터 그래픽스 어플리케이션이 종료되는 경우(S590), 수행되어야 할 모든 벡터 요소의 처리가 완료되었는지 판단하여(S592) 만약 처리되지 않은 다른 벡터 요소가 존재하는 경우 앞서 설명한 과정을 반복적으로 수행하게 되며, 모든 벡터 요소의 처리가 완료되는 경우 본 발명의 제어부(24)는 브라우저와의 실시간 연동을 위한 TASK를 호출하여 상기 브라우저에 OpenVG엔진의 종료 신호를 보내고 상기 이용된 단말기 내부 메모리의 확보를 해제하여 상기 OpenVG엔진을 종료(S594)하도록 제어한다.
그 후, 상기 제어부(24)는 상기 브라우저 종료신호가 입력되는 경우(S596) 상기 OpenVG엔진을 단말기 내에서 언로딩(S598)하며, 오픈 벡터 그래픽스 엔진이 사용하였던 각종 자원을 반납하고 이벤트 및 제어권을 모두 브라우저에 넘기게 되며, 앞서 설명한 바와 같이 사용자와의 상호 작용을 위해 실시간 감시를 위한 UI TASK 및 구동과정의 상태 모니터링 등을 수행하는 WATCH DOG TASK검사를 종료하게 된다.
본 발명을 설명함에 있어, 상기 본 발명에 의한 OpenVG가 내장된 모바일 브라우저의를 구동하는 장치의 각 구성요소는 물리적으로 구분되는 구성요소라기보다는 논리적으로 구분되는 구성요소로 이해되어야 한다.
즉, 각각의 구성은 본 발명의 기술사상을 실현하기 위하여 논리적인 구성요소에 해당하므로 각각의 구성요소가 통합 또는 분리되어 수행되더라도 본 발명의 논리 구성이 수행하는 기능이 실현될 수 있다면 본 발명의 범위 내에 있다고 해석되어야 하며, 동일 또는 유사한 기능을 수행하는 구성요소라면 그 명칭상의 일치성 여부와는 무관히 본 발명의 범위 내에 있다고 해석되어야 함은 물론이다.
상술한 본 발명에 따른 OpenVG엔진이 내장된 모바일 브라우저 구동 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 OpenVG엔진이 내장된 모바일 브라우저 구동 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상에서 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 전술된 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 모바일 단말기에 구현되는 브라우저의 개념적 구조를 나타내는 계층도,
도 2는 본 발명의 바람직한 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 개념적 구조를 나타내는 계층도,
도 3은 본 발명의 바람직한 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치의 구성을 도시한 블록도,
도 4는 본 발명의 바람직한 다른 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치의 구성을 도시한 블록도,
도 5는 본 발명의 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법의 과정을 도시한 흐름도,
도 6은 본 발명의 바람직한 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법의 과정을 도시한 흐름도,
도 7은 본 발명의 또 다른 실시예에 따른 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법 중 벡터객체 이와의 타요소를 처리하는 과정을 도시한 흐름도이다.

Claims (18)

  1. 벡터 요소를 포함하는 벡터 그래픽스 어플리케이션의 수행 개시 신호를 입력받는 단계;
    상기 수행 개시 신호에 해당하는 상기 벡터 그래픽스 어플리케이션의 벡터 요소를 오픈벡터그래픽(OpenVG : Open Vector Graphic)형태의 벡터 요소로 변환하는 단계; 및
    OpenVG엔진의 상기 OpenVG 형태의 벡터 요소의 렌더링에 필요한 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하는 단계를 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  2. 제 1 항에 있어서, 상기 OpenVG형태의 벡터 요소 이외의 출력될 타요소가 존재하는 경우, 상기 타요소의 데이터를 브라우저로 전송하는 단계;
    상기 브라우저에 내장된 기본 API를 이용하여, 상기 전송된 타요소의 데이터에 대한 객체 데이터인 기본 객체 데이터를 형성하는 단계;
    상기 형성된 기본 객체 데이터를 메모리에 저장하는 단계; 및
    상기 저장된 기본 객체 데이터와 상기 렌더링 단계에서 렌더링되는 데이터를 통합하는 단계를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  3. 제 2 항에 있어서, 상기 통합된 데이터의 출력 포맷을 단말기의 화면표시수단에 부합되는 포맷으로 변환하는 단계를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  4. 제 1 항에 있어서, 브라우저에 내장된 상기 OpenVG엔진의 초기화가 가능한지를 판단하는 단계;
    상기 초기화가 가능하다고 판단되는 경우, 상기 OpenVG엔진의 구동을 위한 내부 메모리를 확보하는 단계; 및
    상기 확보된 내부 메모리를 이용하여 상기 OpenVG엔진을 초기화하는 단계를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  5. 제 4 항에 있어서, 상기 OpenVG엔진을 초기화하는 단계는,
    상기 브라우저와의 실시간 TASK 수행 여부 또는 이벤트 처리를 위한 UI TASK 상태의 검사를 수행하는 단계를 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  6. 제 1 항에 있어서, 상기 벡터 그래픽스 어플리케이션이 종료되는 경우, 수행되어야 할 모든 벡터 요소의 처리가 완료되었는지를 판단하는 단계를 더 포함하는 것을 특징으로 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  7. 제 6 항에 있어서, 상기 수행되어야 할 모든 벡터 요소의 처리가 완료되었을 경우, 브라우저와의 실시간 연동을 위한 TASK를 호출하여 상기 브라우저에 상기 OpenVG엔진의 종료 신호를 송신하는 단계; 및
    상기 OpenVG엔진의 구동에 사용된 내부 메모리의 확보를 해제하여 상기 OpenVG엔진을 종료하는 단계를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  8. 제 7 항에 있어서, 상기 OpenVG엔진을 종료하는 단계 후, 상기 브라우저의 종료신호가 입력되는 경우, 상기 OpenVG엔진을 언로딩하는 단계를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법.
  9. 벡터 요소를 포함하는 벡터 그래픽스 어플리케이션의 수행 개시 신호를 입력받는 입력부;
    상기 수행 개시 신호에 해당하는 상기 벡터 그래픽스 어플리케이션의 벡터 요소를 OpenVG형태의 벡터 요소로 변환하는 변환생성부; 및
    OpenVG엔진의 상기 OpenVG 형태의 벡터 요소의 렌더링에 필요한 API를 호출하여 상기 OpenVG형태의 벡터 요소를 렌더링하는 렌더링부를 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  10. 제 9 항에 있어서, 상기 렌더링부는 상기 OpenVG엔진의 syntax를 이용하여 상기 OpenVG형태의 벡터 요소의 조합 또는 path generation의 생성을 위한 복수 개의 API에서 상기 API를 호출하여 렌더링하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  11. 제 9 항에 있어서, 상기 API는, 이미지 또는 벡터 그래픽스 요소의 Blending, Masking, Image interpolation 중 적어도 하나의 기능을 수행하는 API인 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  12. 제 9 항에 있어서, 상기 OpenVG형태의 벡터 요소 이외의 출력될 타요소가 존재하는 경우, 상기 타요소의 데이터를 브라우저로 전송하는 제어부;
    상기 브라우저에 내장된 기본 API를 이용하여, 상기 전송된 타요소의 데이터에 대한 객체 데이터인 기본 객체 데이터를 형성하여 저장하는 기본객체 생성부; 및
    상기 기본객체 생성부에 의하여 저장된 데이터와 상기 렌더링부에 의하여 렌더링되는 데이터를 통합하는 통합부를 더 포함하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  13. 제 12 항에 있어서, 상기 통합부는 상기 통합된 데이터의 출력 포맷을 단말기의 화면표시수단에 부합되는 포맷으로 변환하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  14. 제 12 항에 있어서, 상기 제어부는 상기 브라우저에 내장된 OpenVG엔진의 구동을 위한 단말기 내부 메모리를 확보하여 상기 OpenVG엔진을 초기화하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  15. 제 14 항에 있어서, 상기 제어부는 상기 브라우저와의 실시간 TASK 수행 여부 또는 이벤트 처리를 위한 UI TASK 상태의 검사를 수행하여 상기 OpenVG엔진을 초기화하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  16. 제 12 항에 있어서, 상기 제어부는 상기 벡터 그래픽스 어플리케이션이 종료되는 경우, 상기 브라우저와의 실시간 연동을 위한 TASK를 호출하여 상기 브라우저에 상기 OpenVG엔진의 종료 신호를 보내고, 상기 OpenVG엔진의 구동에 사용된 단말기 내부 메모리의 확보를 해제하여 상기 OpenVG엔진을 종료하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  17. 제 12 항에 있어서, 상기 제어부는 상기 브라우저의 종료신호가 입력되는 경우, 상기 브라우저와의 실시간 TASK, 이벤트 처리를 위한 UI TASK 또는 상태 모니터링을 위한 WATCH DOG TASK 중 적어도 하나를 종료하여 상기 OpenVG엔진의 언로딩을 수행하는 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
  18. 제 9 항에 있어서, 상기 OpenVG형태의 벡터요소는 path, ellipse, line, arc, image, font, scale, transformation, rotate, shear, gradient, scissor 중 적어도 하나인 것을 특징으로 하는 OpenVG엔진이 내장된 모바일 브라우저의 구동 장치.
KR1020080035626A 2008-04-17 2008-04-17 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치 KR100957531B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080035626A KR100957531B1 (ko) 2008-04-17 2008-04-17 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치
US12/426,176 US20090273604A1 (en) 2008-04-17 2009-04-17 Processing Vector Graphics

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080035626A KR100957531B1 (ko) 2008-04-17 2008-04-17 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치

Publications (2)

Publication Number Publication Date
KR20090110045A KR20090110045A (ko) 2009-10-21
KR100957531B1 true KR100957531B1 (ko) 2010-05-11

Family

ID=41537927

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080035626A KR100957531B1 (ko) 2008-04-17 2008-04-17 OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치

Country Status (1)

Country Link
KR (1) KR100957531B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102131644B1 (ko) * 2014-01-06 2020-07-08 삼성전자주식회사 전자장치 및 전자장치에서의 웹 플랫폼 동작방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090110046A (ko) * 2008-04-17 2009-10-21 주식회사 코아로직 오픈 벡터 그래픽스 엔진을 이용한 벡터 데이터 처리 장치및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090110046A (ko) * 2008-04-17 2009-10-21 주식회사 코아로직 오픈 벡터 그래픽스 엔진을 이용한 벡터 데이터 처리 장치및 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
논문1:한국컴퓨터 그래픽스학회
논문2:SPIE
카달로그(2006.03)

Also Published As

Publication number Publication date
KR20090110045A (ko) 2009-10-21

Similar Documents

Publication Publication Date Title
JP5306429B2 (ja) デジタルドキュメント処理のための方法
US8056006B2 (en) Systems and methods for digital document processing
US8549395B2 (en) Method and system for transforming an integrated webpage
CN102200976B (zh) 桌面应用转换成网络应用的定制系统和方法
US11281849B2 (en) System and method for printable document viewer optimization
CN103034729A (zh) 网页绘制系统和方法
EP1272922B1 (en) Digital document processing
JP2002091726A (ja) プリンタシステム
KR100957531B1 (ko) OpenVG엔진이 내장된 모바일 브라우저의 구동 방법및 장치
CN116579296A (zh) B/s架构电子文档预览处理方法、装置、介质及设备
US11836396B2 (en) Information processing apparatus that converts an element that cannot be converted into print data by external apparatus control method thereof, and storage medium
KR100983773B1 (ko) 오픈 벡터 그래픽스 엔진을 이용한 벡터 데이터 처리 장치및 방법
EP1272940A1 (en) Systems and methods for digital document processing
CN113127433A (zh) 一种本地文件访问系统、方法、装置及电子设备

Legal Events

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

Payment date: 20130503

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140402

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee