KR101438198B1 - Method of providing user interface of multi-screen and apparatus performing the same - Google Patents
Method of providing user interface of multi-screen and apparatus performing the same Download PDFInfo
- Publication number
- KR101438198B1 KR101438198B1 KR1020130052648A KR20130052648A KR101438198B1 KR 101438198 B1 KR101438198 B1 KR 101438198B1 KR 1020130052648 A KR1020130052648 A KR 1020130052648A KR 20130052648 A KR20130052648 A KR 20130052648A KR 101438198 B1 KR101438198 B1 KR 101438198B1
- Authority
- KR
- South Korea
- Prior art keywords
- web document
- style
- user interface
- script
- processing module
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 멀티-스크린용 사용자 인터페이스 구현 기술에 관한 것으로 보다 상세하게는, 하나의 개발 소스(source)를 이용하여 다양한 크기와 종류의 디바이스에 최적화된 화면을 제공할 수 있는 멀티-스크린용 사용자 인터페이스 구현 방법 및 이를 수행하는 멀티-스크린용 사용자 인터페이스 엔진에 관한 것이다.
BACKGROUND OF THE
스마트 디바이스 시장의 급격한 성장으로 PC(Personal Computer), 스마트폰(SmartPhone), 태블릿 피씨(Tablet PC) 또는 스마트티비(Smart TV) 등 다양한 크기와 해상도를 가진 단말기들이 등장하고 있다. 이러한 새로운 디바이스의 출현에 따라, PC 환경에서 사용하고 있는 복잡한 업무 시스템을 구현하기 위해 해당 디바이스의 해상도에 맞는 시스템 환경을 새롭게 개발해야 한다. 하기의 선행 기술들은 이와 관련된 다양한 기술들을 제공한다. With the rapid growth of the smart device market, terminals with various sizes and resolutions such as PC (personal computer), smartphone (SmartPhone), tablet PC or smart TV are emerging. With the advent of these new devices, a system environment that meets the resolution of the device must be newly developed to implement the complex business system used in the PC environment. The following prior arts provide a variety of related techniques.
한국공개특허 제10-2008-0060690호는 CSS 데이터를 속성별로 파싱하고, 파싱된 CSS 데이터를 스크립트가 처리할 수 있는 오브젝트 문서로 변환하여 웹 문서 스타일을 변경하는 기술에 관한 것이고, Responsive Web Design(Ethan marcotte의 저서)는 유동형 그리드(Fluid Grid), 가변폭 이미지(Flexible Image) 및 미디어 쿼리(Media Queries)에 의해 사용자 환경에 따라 반응하는 화면을 제공하는 기술에 관한 것이다. Korean Patent Laid-Open No. 10-2008-0060690 relates to a technique for parsing CSS data by attribute, converting parsed CSS data into an object document that can be processed by a script to change the style of a web document, Ethan Marcotte's book is a technique that provides a screen that responds to user environments by a fluid grid, a flexible image, and a media query.
그러나 상기 선행 기술들은 하나의 소스(Source)를 이용하여 서로 다른 해상도를 가진 여러 디바이스의 화면을 제어하는 방법을 제시하지 못하고 있다. However, the prior art fails to provide a method of controlling screens of various devices having different resolutions using a single source.
보다 구체적으로, 상기 선행 기술들은 새로운 디바이스의 출현에 따라 해당 디바이스에 적합한 소스를 생성해야 하므로 개발 비용이 증가하고, PC 환경에 사용되고 있는 많은 데이터를 가진 사용자 인터페이스 컴포넌트(User Interface Component)를 모바일 환경에서 표현할 수 없는 문제점이 있다. 또한, 상기 선행 기술들은 모바일 환경에 특화된 개발 방식(예를 들어, HTML5 또는 CSS3)으로 인하여, 모바일 환경에 맞는 사용자 인터페이스를 개발한 후 PC 환경에 맞는 사용자 인터페이스로 변환해야 하므로, PC 환경에서 사용되고 있는 업무 시스템을 모바일 환경으로 변경하고자 하는 곳에서는 사용할 수 없다. More specifically, since the prior arts have to generate a suitable source for a corresponding device according to the appearance of a new device, the development cost increases and a user interface component having a large amount of data used in a PC environment is used in a mobile environment There is a problem that can not be expressed. In addition, since the above-described prior arts develop a user interface suitable for a mobile environment due to a development method (e.g., HTML5 or CSS3) specific to a mobile environment, the prior art needs to convert the user interface to a PC environment, It can not be used where you want to change your business system to a mobile environment.
즉, 엔터프라이즈 환경에서 요구되는 다량의 데이터 및 복잡한 레이아웃 구조를 하나의 소스로 개발할 수 있는 기술이 필요한 실정이다.
In other words, there is a need for a technology capable of developing a large amount of data and a complicated layout structure required in an enterprise environment as a single source.
본 발명은 하나의 사용자 인터페이스(User Interface) 소스(Source)를 사용자 단말에 제공하여 다양한 해상도를 가지는 복수의 디바이스에 최적화된 화면을 제공할 수 있는 멀티-스크린용 사용자 인터페이스 제공 방법 및 이를 수행하는 멀티-스크린용 사용자 인터페이스 제공 장치를 제공하고자 한다. The present invention provides a multi-screen user interface providing method capable of providing a single user interface source to a user terminal and providing a screen optimized for a plurality of devices having various resolutions, and a multi- - provide a user interface providing device for the screen.
본 발명은 새로운 디바이스가 출현하더라도 해당 디바이스에 맞는 스타일 시트 또는 스크립트만을 추가함으로써 새로운 시스템의 개발 부담을 줄일 수 있는 멀티-스크린용 사용자 인터페이스 제공 방법 및 이를 수행하는 멀티-스크린용 사용자 인터페이스 제공 장치를 제공하고자 한다. The present invention provides a multi-screen user interface providing method and a multi-screen user interface providing apparatus that can reduce the development burden of a new system by adding only a style sheet or a script to the device even when a new device appears I want to.
본 발명은 해상도에 따른 스타일 시트 및 스크립트를 사용자 단말에 제공하여 많은 양의 데이터를 가진 웹 문서를 모바일 환경에서 구현할 수 있는 멀티-스크린용 사용자 인터페이스 제공 방법 및 이를 수행하는 멀티-스크린용 사용자 인터페이스 제공 장치를 제공하고자 한다.
The present invention provides a multi-screen user interface providing method capable of implementing a web document having a large amount of data in a mobile environment by providing a style sheet and a script according to resolution to a user terminal, and a multi-screen user interface Device.
실시예들 중에서, 멀티-스크린용 사용자 인터페이스 엔진은 멀티-스크린용 사용자 인터페이스 구현 방법을 수행한다. 상기 멀티-스크린용 사용자 인터페이스 엔진은 웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 데이터 모듈; 상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 스타일 처리 모듈; 및 상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 스크립트 처리 모듈을 포함한다. Among the embodiments, the multi-screen user interface engine performs a multi-screen user interface implementation method. The multi-screen user interface engine may include a data module for loading the produced web document regardless of the resolution of the web document viewer. A style processing module that loads a static style according to a specific resolution included in the web document and primarily renders the web document based on the loaded static style; And a script processing module for loading a script included in the web document and secondarily rendering the web document based on the loaded script.
일 실시예에서, 상기 스타일 처리 모듈은 모든 해상도들에 공통적으로 적용되는 공통 스타일을 로드하여 복수의 디바이스들에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링할 수 있다.In one embodiment, the style processing module may load a common style commonly applied to all resolutions to render at least one of color, shape, and layout for a plurality of devices.
일 실시예에서, 상기 스타일 처리 모듈은 상기 웹 문서 뷰어의 실제 해상도에 따라 상기 정적인 스타일을 분기하고, 상기 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성할 수 있다.In one embodiment, the style processing module branches the static style according to the actual resolution of the web document viewer, and configures the user interface for each device previously defined based on the branched static style.
일 실시예에서, 상기 스크립트 처리 모듈은 모든 해상도들에 공통적으로 적용되는 공통 스크립트를 로드하여 복수의 디바이스들에 대한 공통 이벤트를 처리할 수 있다.In one embodiment, the script processing module may load common scripts that are common to all resolutions and process common events for a plurality of devices.
일 실시예에서, 상기 스크립트 처리 모듈은 상기 웹 문서 뷰어의 실제 해상도에 따라 상기 공통 스크립트를 분기하여 기 정의된 디바이스별 스크립트를 로드하고, 상기 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리할 수 있다.In one embodiment, the script processing module branches the common script according to the actual resolution of the web document viewer, loads a predefined device-specific script, and performs an operation on a predefined device based on the device-specific script Can be processed.
일 실시예에서, 상기 스크립트 처리 모듈은 상기 공통 스크립트를 통해 상기 웹 문서에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경할 수 있다.In one embodiment, the script processing module may modify at least one of a path of a menu, a tab, and an image file for the web document through the common script.
일 실시예에서, 상기 스크립트 처리 모듈은 상기 공통 스크립트를 통해 상기 정적인 스타일을 기초로 동적인 스타일을 생성할 수 있다.In one embodiment, the script processing module may generate a dynamic style based on the static style via the common script.
일 실시예에서, 상기 스크립트 처리 모듈은 상기 웹 문서 뷰어의 해상도를 검출하여 상기 검출된 해상도가 상기 특정 해상도와 다르면 상기 동적인 스타일을 생성할 수 있다.In one embodiment, the script processing module may detect the resolution of the web document viewer and generate the dynamic style if the detected resolution is different from the specific resolution.
일 실시예에서, 상기 스크립트 처리 모듈은 상기 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 상기 동적 스타일을 생성할 수 있다.In one embodiment, the script processing module may generate the dynamic style if a predefined class name exists in the web document.
일 실시예에서, 상기 스크립트 처리 모듈은 복수의 디바이스들 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 상기 동적인 스타일을 생성할 수 있다.In one embodiment, the script processing module may generate the dynamic style through a screen linkage algorithm associated with translation of a user interface pattern between a plurality of devices.
일 실시예에서, 상기 화면 연동 알고리즘은 레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의할 수 있다.In one embodiment, the screen linkage algorithm may define a transformation of a user interface pattern associated with at least one of a layout and a user interface component.
일 실시예에서, 상기 웹 문서에 테이블과 연관된 기 정의된 클래스 네임(Class Name)이 존재하면 상기 테이블의 사용자 인터페이스와 연관된 동적 스타일을 생성하고, 상기 생성된 동적 스타일을 기초로 상기 웹 문서를 3차적으로 렌더링하는 테이블 처리 모듈을 더 포함할 수 있다.In one embodiment, if a predefined class name associated with a table exists in the web document, a dynamic style associated with the user interface of the table is generated, and the web document is classified into 3 classes based on the generated dynamic style. And may further include a table processing module that renders the data.
실시예들 중에서, 멀티-스크린용 사용자 인터페이스 구현 방법은 멀티-스크린용 사용자 인터페이스 엔진에서 수행된다. 상기 멀티-스크린용 사용자 인터페이스 구현 방법은 웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 단계; 상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 단계; 및 상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 단계를 포함한다. Of the embodiments, a method for implementing a multi-screen user interface is performed in a multi-screen user interface engine. The method for implementing a multi-screen user interface includes loading a created web document regardless of a resolution of the web document viewer; Loading a static style according to a specific resolution included in the web document and rendering the web document primarily based on the loaded static style; And loading the script included in the web document and rendering the web document secondarily based on the loaded script.
일 실시예에서, 상기 웹 문서를 1차적으로 렌더링하는 단계는 모든 해상도들에 공통적으로 적용되는 공통 스타일을 로드하여 복수의 디바이스들에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링하는 단계를 더 포함할 수 있다.In one embodiment, the step of primarily rendering the web document further includes the step of rendering at least one of color, shape and layout for a plurality of devices by loading a common style commonly applied to all resolutions can do.
일 실시예에서, 상기 웹 문서를 1차적으로 렌더링하는 단계는 상기 웹 문서 뷰어의 실제 해상도에 따라 상기 정적인 스타일을 분기하고, 상기 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성하는 단계를 더 포함할 수 있다.In one embodiment, the step of primarily rendering the web document may include branching the static style according to the actual resolution of the web document viewer and displaying the user interface for each device previously defined on the basis of the branched static style The method comprising the steps of:
일 실시예에서, 상기 웹 문서를 2차적으로 렌더링하는 단계는 모든 해상도들에 공통적으로 적용되는 공통 스크립트를 로드하여 복수의 디바이스들에 대한 공통 이벤트를 처리하는 단계를 더 포함할 수 있다.In one embodiment, the rendering of the web document may further include loading common scripts that are common to all resolutions and processing common events for a plurality of devices.
일 실시예에서, 상기 웹 문서를 2차적으로 렌더링하는 단계는 상기 웹 문서 뷰어의 실제 해상도에 따라 상기 공통 스크립트를 분기하여 기 정의된 디바이스별 스크립트를 로드하고, 상기 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리하는 단계를 더 포함할 수 있다.In one embodiment, the step of rendering the web document secondarily includes loading the defined device-specific script by branching the common script according to the actual resolution of the web document viewer, And processing the operation for the < RTI ID = 0.0 > device < / RTI >
일 실시예에서, 상기 웹 문서를 2차적으로 렌더링하는 단계는 상기 공통 스크립트를 통해 상기 웹 문서에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경하는 단계를 더 포함할 수 있다.In one embodiment, the rendering of the web document may further include modifying at least one of the path of the menu, tab and image file for the web document via the common script.
일 실시예에서, 상기 웹 문서를 2차적으로 렌더링하는 단계는 상기 공통 스크립트를 통해 상기 정적인 스타일을 기초로 동적인 스타일을 생성하는 단계를 더 포함할 수 있다.In one embodiment, the rendering of the web document may further include generating a dynamic style based on the static style via the common script.
일 실시예에서, 상기 동적인 스타일을 생성하는 단계는 상기 웹 문서 뷰어의 해상도를 검출하여 상기 검출된 해상도가 상기 특정 해상도와 다르면 상기 동적인 스타일을 생성하는 단계를 더 포함할 수 있다.In one embodiment, the step of generating the dynamic style may further include detecting a resolution of the web document viewer and generating the dynamic style if the detected resolution is different from the specific resolution.
일 실시예에서, 상기 동적인 스타일을 생성하는 단계는 상기 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 상기 동적 스타일을 생성하는 단계를 더 포함할 수 있다.In one embodiment, the step of generating the dynamic style may further include the step of generating the dynamic style if a predefined class name exists in the web document.
일 실시예에서, 상기 동적인 스타일을 생성하는 단계는 복수의 디바이스들 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 상기 동적인 스타일을 생성하는 단계를 더 포함할 수 있다.In one embodiment, the step of generating the dynamic style may further comprise generating the dynamic style through a screen linkage algorithm associated with a transformation of a user interface pattern between the plurality of devices.
일 실시예에서, 상기 화면 연동 알고리즘은 레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의할 수 있다.In one embodiment, the screen linkage algorithm may define a transformation of a user interface pattern associated with at least one of a layout and a user interface component.
일 실시예에서, 상기 웹 문서에 테이블과 연관된 기 정의된 클래스 네임(Class Name)이 존재하면 상기 테이블의 사용자 인터페이스와 연관된 동적 스타일을 생성하고, 상기 생성된 동적 스타일을 기초로 상기 웹 문서를 3차적으로 렌더링하는 단계를 더 포함할 수 있다.In one embodiment, if a predefined class name associated with a table exists in the web document, a dynamic style associated with the user interface of the table is generated, and the web document is classified into 3 classes based on the generated dynamic style. And may further comprise a step of secondary rendering.
실시예들 중에서, 멀티-스크린용 사용자 인터페이스 엔진에서 수행되는 멀티-스크린용 사용자 인터페이스 구현 방법에 관한 컴퓨터 프로그램을 기록한 기록매체는 웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 단계; 상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 단계; 및 상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 단계를 포함하는 멀티-스크린용 사용자 인터페이스 구현 방법에 관한 컴퓨터 프로그램을 기록한다.
Among the embodiments, a recording medium on which a computer program related to a method for implementing a multi-screen user interface performed in a multi-screen user interface engine includes loading a produced web document regardless of resolution of the web document viewer; Loading a static style according to a specific resolution included in the web document and rendering the web document primarily based on the loaded static style; And loading the script included in the web document and rendering the web document secondarily based on the loaded script. A computer program for a method for implementing a multi-screen user interface is recorded.
본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 제공 방법과 이와 관련된 기술들은 하나의 사용자 인터페이스(User Interface) 소스(Source)를 사용자 단말에 제공하여 다양한 해상도를 가지는 복수의 디바이스에 최적화된 화면을 제공할 수 있다. The method for providing a multi-screen user interface according to an exemplary embodiment of the present invention and related arts provide a single user interface source to a user terminal so that a screen optimized for a plurality of devices having various resolutions Can be provided.
본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 제공 방법과 이와 관련된 기술들은 새로운 디바이스가 출현하더라도 해당 디바이스에 맞는 스타일 시트 또는 스크립트만을 추가함으로써 새로운 시스템의 개발 부담을 줄일 수 있다.The method for providing a multi-screen user interface according to an embodiment of the present invention and the related arts can reduce the development burden of a new system by adding only a style sheet or a script suitable for the device even when a new device appears.
본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 제공 방법과 이와 관련된 기술들은 해상도에 따른 스타일 시트 및 스크립트를 사용자 단말에 제공하여 많은 양의 데이터를 가진 웹 문서를 모바일 환경에서 구현할 수 있다.
According to an embodiment of the present invention, a multi-screen user interface providing method and related technologies can provide a style sheet and a script according to resolution to a user terminal, thereby realizing a web document having a large amount of data in a mobile environment.
도 1은 본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 구현 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 멀티-스크린용 사용자 인터페이스 엔진을 설명하는 블록도이다.
도 3은 멀티-스크린용 사용자 인터페이스 엔진에서 수행되는 멀티-스크린용 사용자 인터페이스 구현 과정을 설명하는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 엔진에서 수행되는 멀티-스크린용 사용자 인터페이스 구현 과정을 설명하는 흐름도이다.
도 5는 본 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 구현 과정에서 정적인 스타일을 기초로 웹 문서를 렌더링한 디바이스 별 화면을 예시한 도면이다.
도 6은 본 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 구현 과정에서 스크립트를 기초로 웹 문서를 렌더링한 디바이스 별 화면을 예시한 도면이다.1 is a view for explaining a multi-screen user interface implementation system according to an embodiment of the present invention.
2 is a block diagram illustrating the multi-screen user interface engine of FIG.
FIG. 3 is a flowchart illustrating a multi-screen user interface implementation process performed by the multi-screen user interface engine.
4 is a flowchart illustrating a multi-screen user interface implementation process performed by the multi-screen user interface engine according to an exemplary embodiment of the present invention.
5 is a diagram illustrating a device-specific screen for rendering a web document based on a static style in the process of implementing a multi-screen user interface according to the present embodiment.
FIG. 6 is a diagram illustrating a device-specific screen in which a web document is rendered based on a script in the process of implementing a multi-screen user interface according to the present embodiment.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the present invention is merely an example for structural or functional explanation, and the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the present invention should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the present invention should not be construed as limiting the scope of the present invention, since it does not mean that a specific embodiment should include all or only such effect.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present application should be understood as follows.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable code on a computer-readable recording medium, and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by a computer system . Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present application.
도 1은 본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 구현 시스템을 설명하는 도면이다.1 is a view for explaining a multi-screen user interface implementation system according to an embodiment of the present invention.
도 1을 참조하면, 멀티-스크린용 사용자 인터페이스 구현 시스템(100)은 복수의 디바이스들(110), 복수의 디바이스들(110)에 제공되는 웹 문서(120) 및 멀티-스크린용 사용자 인터페이스 엔진(130)를 포함한다.1, a multi-screen user
복수의 디바이스들(110)은 각각 디스플레이 장치를 포함하는 컴퓨팅 장치로서, 예를 들어, PC(Personal Computer, 111), 태블릿(Tablet) PC(112) 및 스마트폰(SmartPhone, 112) 중 적어도 하나를 포함할 수 있다. 여기에서, 복수의 디바이스들(110) 각각은 상이한 해상도를 가지는 디스플레이 장치를 포함할 수 있거나, 해상도의 변경이 가능한 웹 문서 뷰어(예: 인터넷 익스플로러, 구글 크롬, 사파리 등)를 통해 웹 문서(120)를 렌더링할 수 있다. The plurality of
웹 문서(120)는 멀티-스크린용 사용자 인터페이스 엔진(130)에 의하여 복수의 디바이스들(110)에 제공되며, 일 실시예에서, HTML(HyperText Markup Language), XML(eXtensible Markup Language) 또는 JSP(Java Server Page)로서 구현될 수 있다. 여기에서, 본 발명에 따른 멀티-스크린용 사용자 인터페이스 구현 과정에 따라 생성되는 웹 문서(120)는 복수의 디바이스들에 대하여 동일하게 제공(One Source)될 수 있다. 즉, 본 발명은 엔터프라이즈 환경에서 요구되는 다량의 데이터 및 복잡한 레이아웃 구조를 하나의 소스로 제공함으로써, 다양한 크기와 종류의 디바이스 화면을 제어할 수 있으며, PC에 최적화된 복잡한 업무 시스템을 모바일 환경에 적합한 시스템으로 변경시키는 과정에서 활용될 수 있는 시스템 개발 방안을 제공할 수 있다.The
멀티-스크린용 사용자 인터페이스 엔진(130)은 복수의 디바이스들(110)에 제공될 수 있는 멀티-스크린용 사용자 인터페이스를 구현할 수 있는 컴퓨팅 장치(예: 멀티-스크린용 사용자 인터페이스 구현 장치)에 해당한다. 여기에서, 멀티-스크린용 사용자 인터페이스 엔진(130)은 특정 컴퓨팅 장치(예: PC, 태블릿 PC, 스마트 폰 등)에 포함되어 구현되거나 소프트웨어의 형태로 제공되어 설치될 수 있다. 본 발명에 따른 멀티-스크린용 사용자 인터페이스 엔진(130)은 다량의 데이터 및 복잡한 레이아웃 구조를 가진 사용자 인터페이스(User Interface, 이하, UI)를 하나의 개발 소스(예: HTML)를 이용하여 복수의 디바이스들(110)에 최적화된 화면을 자동으로 구현할 수 있다. 이하, 도 2를 참조하여 멀티-스크린용 사용자 인터페이스 엔진(130)의 상세하게 설명한다.
The multi-screen
도 2는 도 1에 있는 멀티-스크린용 사용자 인터페이스 엔진을 설명하는 블록도이다.2 is a block diagram illustrating the multi-screen user interface engine of FIG.
도 2를 참조하면, 멀티-스크린용 사용자 인터페이스 엔진(130)은 데이터 모듈(210), 스타일 처리 모듈(220), 스크립트 처리 모듈(230), 테이블 처리 모듈(240) 및 제어부(250)를 포함한다. 2, the multi-screen
데이터 모듈(210)는 웹 문서(120)를 로드한다. 여기에서, 웹 문서(120)는 웹 문서 뷰어의 해상도와 무관하게 제작될 수 있다. The
일 실시예에서, 해상도는 웹 문서 뷰어 상에서 웹 문서를 디스플레이할 수 있는 화면의 가로 및 세로 크기(예: 픽셀)에 해당할 수 있다. 한편, 스마트폰 또는 태블릿 PC의 경우, 웹 문서 뷰어(115)의 해상도는 해당 스마트폰 또는 태블릿 PC의 해상도와 동일할 수 있으며, 이러한 이유는 웹 문서 뷰어의 화면 크기가 조절되지 아니하고 해당 스마트폰 또는 태블릿 PC의 크기와 실질적으로 동일하기 때문이다.In one embodiment, the resolution can correspond to the horizontal and vertical size (e.g., pixels) of the screen on which a web document can be displayed on the web document viewer. On the other hand, in the case of a smartphone or a tablet PC, the resolution of the web document viewer 115 may be the same as that of the smartphone or the tablet PC. This is because the screen size of the web document viewer is not adjusted, This is because the size of the tablet PC is substantially the same.
즉, 사용자는 본 발명에 따른 멀티-스크린용 사용자 인터페이스 구현 과정에서 복수의 디바이스들(110)에 제공될 수 있는 하나의 웹 문서(One Source)를 작성할 수 있다. That is, the user can create one web document (One Source) that can be provided to the plurality of
일 실시예에서, 웹 문서(120)는 HTML(HyperText Markup Language), XML(eXtensible Markup Language) 또는 JSP(Java Server Page)로서 구현될 수 있다. In one embodiment, the
일 실시예에서, 웹 문서(120)는 스타일 정의를 위한 스타일 시트(예를 들어, CSS: Cascading Style Sheet)와 스크립트(예를 들어, 자바스크립트)와 연관될 수 있다. 즉, 웹 문서(120)는 임베드 방식 또는 링크 방식을 통해 스타일 시트 및 스크립트를 포함할 수 있다. In one embodiment, the
일 실시예에서, 웹 문서(120)는 특정 해상도에 따른 정적인 스타일을 포함할 수 있다. 여기에서, 정적인 스타일은 특정 해상도에 따른 스타일을 정의한 것을 의미한다. 예를 들어, 정적인 스타일은 스타일 시트(특히, CSS: Cascading Style Sheet)로 구현될 수 있고, 웹 문서(120)는 정적인 스타일을 임베딩 방식 또는 링크 방식으로 포함할 수 있다.In one embodiment, the
일 실시예에서, 정적인 스타일은 메뉴(menu), 레이아웃(layout), 테이블(table) 중 적어도 하나에 대한 스타일을 포함할 수 있다. In one embodiment, the static style may include a style for at least one of a menu, a layout, and a table.
일 실시예에서, 웹 문서(120)는 모든 해상도들에 공통적으로 사용되는 공통 스타일을 더 포함할 수 있고, 공통 스타일은 웹 문서 뷰어의 실제 해상도와 무관하게 웹 페이지의 공통적인 스타일 및 레이아웃 중 적어도 하나를 정의할 수 있다. 여기에서, 공통 스타일은 스타일 시트(예를 들어, CSS)로 구현될 수 있고, 여백(margin), 패딩(padding), 배경(background), 텍스트(text), 색감, 형태 및 레이아웃 중 적어도 하나를 정의할 수 있다.In one embodiment, the
스타일 처리 모듈(220)은 웹 문서(120)에 포함된 특정 해상도에 따른 정적인 스타일을 로드하고, 로드된 정적인 스타일을 기초로 웹 문서를 1차적으로 렌더링한다. The
일 실시예에서, 스타일 처리 모듈(220)은 웹 문서(120)에 포함된 공통 스타일(예: 공통 CSS)을 로드하여 복수의 디바이스들(110)에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링할 수 있다. In one embodiment, the
일 실시예에서, 스타일 처리 모듈(220)은 웹 문서 뷰어의 실제 해상도에 따라 로드된 정적인 스타일을 분기하고, 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성함으로써 1차 화면 렌더링을 수행할 수 있다. 일 실시예에서, 스타일 처리 모듈(220)은 미디어 쿼리(Media Query)를 통하여 웹 문서 뷰어의 해상도를 검출할 수 있는 화면 식별 모듈을 포함할 수 있다. In one embodiment, the
예를 들어, 스타일 처리 모듈(220)은 공통 CSS를 로드하여 모든 디바이스 화면에 공통적으로 적용될 수 있는 색감, 형태 및 레이아웃을 렌더링할 수 있다. 여기에서, 700px, 1280px 을 기준으로 700px 미만은 Phone으로, 700px 이상에서 1280px 미만은 Tablet으로, 1280px 이상은 PC로 정의된 경우, 스타일 처리 모듈(220)은 실제 해상도에 따라 CSS를 분기하여 각 디바이스에 최적화된 UI 레이아웃의 변경을 수행할 수 있다. For example, the
구체적인 예를 들어, 도 5를 참조하면, 스타일 처리 모듈(220)은 미디어 쿼리 문을 이용하여 하나의 HTML을 3가지 디바이스(스마트폰, 태블릿 PC 및 Desktop)에서 서로 상이한 형태의 화면으로 렌더링할 수 있다. 즉, 스타일 처리 모듈(220)은 공통 CSS 및 미디어 쿼리문을 통하여 분기된 정적인 CSS를 통하여 디바이스별 UI 레이아웃의 변경과 각 디바이스에 최적화된 UI 요소의 색감을 변화시킬 수 있다. For example, referring to FIG. 5, the
일 실시예에서, 스타일 처리 모듈(220)은 정적인 스타일 및 공통 스타일 중 적어도 하나와 연관된 UI 패턴을 레파지토리에 관리할 수 있다. 즉, 스타일 처리 모듈(220)은 보편적으로 사용되는 디바이스들(예: PC, 태블릿 PC 및 스마트 폰) 각각에 적용될 수 있는 UI 패턴을 관리할 수 있다. 예를 들어, 스마트 폰의 경우, 디바이스 크기 중심의 선형적 화면 구성 UI로서, 리스트 형태로 다건 데이터 나열, 팝업 형태의 메뉴 영역 및 1단 메뉴로 구성될 수 있다. 다른 예를 들어, 태블릿 PC의 경우, 복합적 화면 구성의 UI로서, 숨김 형태의 메뉴 영역 구성, 테이블 형태의 다 건 데이터 나열 및 2단 메뉴로 구성될 수 있다. 또 다른 예를 들어, PC의 경우, 콘텐츠 중심 화면 구성의 UI로서, 상단, 좌측 고정 메뉴 영역, 테이블 형태의 다 건의 데이터 나열 및 3단 메뉴로 구성될 수 있다. 여기에서, 사용자는 생성하고자 하는 화면을 저장된 UI 패턴에서 선택할 수 있다. In one embodiment, the
스크립트 처리 모듈(230)은 웹 문서(120)에 포함된 스크립트를 로드하고, 로드된 스크립트를 기초로 웹 문서(120)를 2차적으로 렌더링한다. 여기에서, 스크립트는 웹 문서 뷰어에서 실행될 수 있는 프로그래밍 언어를 의미하고, 예를 들어, 자바 스크립트(JavaScript)를 포함할 수 있다. The
일 실시예에서, 스크립트 처리 모듈(230)는 복수의 디바이스들(110)에 공통적으로 적용되는 공통 스크립트(예: 공통 CSS)를 로드하여 복수의 디바이스들(110)에 대한 공통 이벤트를 처리할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 공통 스크립트를 통하여 웹 문서(120)에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경할 수 있다. 즉, 스크립트 처리 모듈(230)는 공통 스크립트를 로드하여 HTML 마크업 상에 표현된 메뉴 및 탭의 역할 및 이미지의 경로 중 적어도 하나를 해당 디바이스에 적합하도록 변경할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 웹 문서 뷰어의 실제 해상도에 따라 공통 스크립트를 분기하여 기 정의된 디바이스별로 분기할 수 있다. 여기에서, 스크립트 처리 모듈(230)는 기 정의된 디바이스별 스크립트가 로드되면, 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리할 수 있다. In one embodiment, the
예를 들어, 스크립트 처리 모듈(230)는 미디어 쿼리문을 통하여 실제 해상도를 검출하고, PC에 해당하는 경우, PC 화면에 적합한 PC.js가 로딩되어 PC에 최적화된 동작을 처리할 수 있다. 여기에서, 디바이스별 스크립트는 사용자에 의하여 생성되거나, 레파지토리에 기저장된 UI 패턴에서 선택될 수 있다. For example, the
즉, 스크립트 처리 모듈(230)은 1차 렌더링 과정 후에 스크립트를 통하여 웹 문서의 마크업 상에 표현된 메뉴 및 탭의 역할 및 이미지의 경로를 변경하고, 공통 이벤트를 처리하며, 디바이스별 스크립트를 별도로 로드하여 해당 디바이스에 최적화된 동작을 처리할 수 있다. That is, after the first rendering process, the
일 실시예에서, 스크립트 처리 모듈(230)은 공통 스크립트를 통해 정적인 스타일을 기초로 동적인 스타일을 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서 뷰어의 해상도를 검출하여 검출된 해상도가 특정 해상도와 다르면 동적인 스타일을 생성할 수 있다. 이하, 동적인 스타일을 생성하는 과정에 대한 스크립트의 일례를 설명하며, 이러한 예시는 본 발명의 권리 범위를 한정하고자 하는 것은 아니다.
In one embodiment, the
[스크립트의 예시]
[Script Example]
*$(document).ready(function(){* $ (document) .ready (function () {
$(window).bind("resize", resizeWindow); $ (window) .bind ("resize", resizeWindow);
function resizeWindow(e){ function resizeWindow (e) {
var newWindowWidth = $(window).width(); var newWindowWidth = $ (window) .width ();
if(newWindowWidth < 760){ if (newWindowWidth <760) {
} else { } else {
} }
} }
var cssStr = "@media only screen and (max-width: 599px){"; var cssStr = "@media only screen and (max-width: 599px) {";
$("table.rsp").each(function(index) { $ ("table.rsp"). each (function (index) {
var id = $(this).get(0).id; var id = $ (this) .get (0) .id;
id = (id) ? "#"+id : "";
id = (id)? "#" + id: "";
var tr = $(this).find("thead tr"); var tr = $ (this) .find ("thead tr");
var colIdx = 1; var colIdx = 1;
var colIdx2 = 0;
var colIdx2 = 0;
* tr.eq(0).find("th").each(function(index) {* tr.eq (0) .find ("th"). each (function (index) {
var colSpan = this.colSpan; var colSpan = this.colSpan;
var colName = this.innerHTML; var colName = this.innerHTML;
if (colSpan > 1) { if (colSpan> 1) {
for (var i=0; i<colSpan; i++) { (var i = 0; i <colSpan; i ++) {
colName = tr.eq(1).find("th").eq(colIdx2).text(); colName = tr.eq (1) .find ("th"). eq (colIdx2) .text ();
cssStr += "table"+id+".rsp td:nth-of-type("+(colIdx)+"):before { content: '"+colName+"'; }"; cssStr + = "table" + id + ". rsp td: nth-of-type (" + (colIdx) + "): before {content: '" + colName + "';
colIdx++; colIdx ++;
colIdx2++; colIdx2 ++;
} }
} else { } else {
cssStr += "table"+id+".rsp td:nth-of-type("+(colIdx)+"):before { content: '"+colName+"'; }"; cssStr + = "table" + id + ". rsp td: nth-of-type (" + (colIdx) + "): before {content: '" + colName + "';
colIdx++; colIdx ++;
} }
});});
}); });
$("style").get(0).innerHTML = cssStr+"}";
$ ("style"). get (0) .innerHTML = cssStr + "}";
$("table.rsp-fold").each(function(index) { $ ("table.rsp-fold"). each (function (index) {
$("tbody td.rsp-head", this).bind("click", function() { $ ("tbody td.rsp-head", this) .bind ("click", function () {
var parent = $(this).parent(); var parent = $ (this) .parent ();
if (parent.hasClass("rsp-open")) { if (parent.hasClass ("rsp-open")) {
parent.removeClass("rsp-open") parent.removeClass ("rsp-open")
} else { } else {
parent.addClass("rsp-open"); parent.addClass ("rsp-open");
} }
}); });
}); });
$("table.rsp-fold-btn").each(function(index) { $ ("table.rsp-fold-btn"). each (function (index) {
$("tbody tr", this).bind("click", function() { $ ("tbody tr", this) .bind ("click", function () {
if ($(this).hasClass("rsp-open")) { if ($ (this) .hasClass ("rsp-open")) {
$(this).removeClass("rsp-open") $ (this) .removeClass ("rsp-open")
} else { } else {
$(this).addClass("rsp-open"); $ (this) .addClass ("rsp-open");
} }
}); });
$("tbody td.rsp-btn span", this).bind("click", function(event) { $ ("tbody td.rsp-btn span", this) .bind ("click", function (event) {
event.stopPropagation(); event.stopPropagation ();
}); });
}); });
});
});
상기의 스크립트는 상기의 스크립트는 정적인 스타일을 참조하여 동적인 스타일을 생성하는 과정을 코딩한 것으로서, 특히, 다른 해상도(예를 들어, 웹 문서 뷰어의 실제 해상도)에 적절한 미디어 쿼리문을 동적으로 생성하는 과정을 코딩하였다. 여기에서, 변수 "cssStr"은 정적인 스타일(예를 들어, 레이블 부분)을 참조하여 미디어 쿼리문을 저장하는 문자열에 해당할 수 있고, "cssStr"이 완성되면 동적인 스타일을 웹 문서에 추가시킬 수 있다. 예를 들어, 웹 문서의 추가 부분은 $("style").get(0).innerHTML = cssStr+"}"; 부분으로서 코딩될 수 있다.The above script is a process for generating a dynamic style by referring to a static style. In particular, the script dynamically forms a media query statement suitable for a different resolution (for example, the actual resolution of the web document viewer) The coding process was coded. Here, the variable "cssStr " may correspond to a string storing a media query statement referring to a static style (e.g., a label portion), and when the" cssStr " . For example, the additional part of a web document is $ ("style"). Get (0) .innerHTML = cssStr + "}"; Lt; / RTI >
예를 들어, 웹 문서(120)가 가로 해상도가 1024 픽셀을 가진 정적인 스타일을 포함하고, 정적인 스타일이 3행 및 5열의 레이아웃을 가진 테이블(table)을 정의하는 경우, 스크립트는 웹 문서 뷰어의 해상도 변경에 따라 테이블의 행, 열, 또는 여백 중 적어도 하나를 변경할 수 있는 동적인 스타일 시트를 생성할 수 있다. 즉, 동적인 스타일은 웹 문서 뷰어의 해상도가 760 픽셀 이하로 변경되면 5행 3열의 레이아웃을 가진 테이블로 변경되도록 정의할 수 있다. For example, if the
일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서 뷰어의 해상도를 검출하여 검출된 해상도가 특정 해상도와 다른 경우에 동적인 스타일을 생성할 수 있다. 예를 들어, 웹 문서가 가로 해상도가 1024 픽셀을 가진 정적인 스타일을 포함하는 경우, 스타일 처리 모듈(220)는 정적인 스타일을 기초로 1024 픽셀에 적합하게 1차적으로 렌더링할 수 있다. 여기에서, 디바이스가 스마트 폰에 해당하여 스크립트가 정적인 스타일에 정의된 1024 픽셀이 아닌 해상도를 검출한 경우, 스크립트 처리 모듈(230)는 스크립트를 통해 정적인 스타일을 변경시킬 수 있는 동적인 스타일을 생성할 수 있다. In one embodiment, the
다른 일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서 뷰어(115)의 해상도와 무관하게 동적인 스타일을 생성할 수 있다. 예를 들어, PC에서 인터넷 익스플로러의 창의 크기를 변경시키는 것과 같이 웹 문서 뷰어의 해상도가 변경될 수 있는 경우, 스크립트는 무조건 동적인 스타일을 생성할 수 있다.In another embodiment, the
또 다른 일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 동적 스타일을 생성할 수 있다. 예를 들어, 웹 문서에 특정 클래스 네임(예: LblockTableList, LblockTab, LblockSearch)이 기술되어 있는 경우, 스크립트는 동적 스타일을 생성하여 디바이스 별로 최적화된 UI의 형태를 적용할 수 있다. 즉, 사용자는 메뉴, 텍스트, 검색 및 테이블이 있는 화면을 생성하고자 하는 경우, 기 정의된 LblockTopMenu, LblockContent, LblockSearch 및 LblockTable 각각에 해당하는 클래스 네임을 기술함으로써, 스크립트 처리 모듈(230)가 스크립트를 통하여 동적으로 CSS를 생성할 수 있다. In yet another embodiment, the
보다 구체적으로, 본 발명은 수동적으로 작성하여야 하는 CSS의 문제점을 해결하기 위하여 자동 변환 기능으로서 웹 문서에 클래스 네임이 존재하면 자동적으로 동적 스타일을 생성할 수 있도록 한다. 자동 변환 기능은 탭 또는 조회 결과 영역을 예시로 설명한다. More specifically, the present invention provides an automatic conversion function for automatically creating a dynamic style when a class name exists in a web document in order to solve the problem of CSS that must be manually created. The automatic conversion function explains the tab or inquiry result area as an example.
예를 들어, 도 6a에서, 스크립트 처리 모듈(230)은 HTML에 LblockTab에 해당하는 클래스 네임이 기 정의되어 있으면 스크립트를 통하여 디바이스 별로 최적화된 탭과 연관된 동적 CSS를 생성함으로써, 각 디바이스에 적합한 탭 영역을 렌더링할 수 있다.For example, in FIG. 6A, if the class name corresponding to the LblockTab is defined in the HTML, the
다른 예를 들어, 도 6b에서, 스크립트 처리 모듈(230)은 HTML에 LblockSearch에 해당하는 클래스 네임이 기 정의되어 있으면 스크립트를 통하여 디바이스별로 최적화된 조회 결과 영역과 연관된 동적 CSS를 생서함으로써, 각 디바이스에 적합한 조회 결과 영역을 렌더링할 수 있다.6B, if the class name corresponding to LblockSearch is predefined in the HTML, the
일 실시예에서, 스크립트 처리 모듈(230)은 복수의 디바이스들(110) 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 동적인 스타일을 생성할 수 있다. 여기에서, 화면 연동 알고리즘은 레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의할 수 있다. In one embodiment, the
보다 구체적으로, 화면 연동 알고리즘은 디바이스별 UI 패턴 각각이 다른 디바이스로 변환될 때의 규칙을 정의할 수 있다. 예를 들어, 복수의 디바이스들(110) 각각은 고유의 특징을 가지고 있으며, 내부의 UI 영역 역시 고유의 특징을 가질 수 있다. 여기에서, 화면 UI 패턴은 레이아웃 및 UI 컴포넌트를 포함할 수 있다. 예를 들어, 레이아웃은 화면 전체의 구성(예: 메뉴, 로고, 상단 영역 등)을 의미할 수 있고, UI 컴포넌트는 콘텐츠(Content) 영역을 구성하는 UI 영역 단위(예: 조회, 리스트, 단 건 테이블, 다 건 테이블)를 의미할 수 있다. More specifically, the screen linkage algorithm can define rules when UI-specific UI patterns are converted into different devices. For example, each of the plurality of
여기에서, 화면 연동 알고리즘은 특정 디바이스의 UI 패턴이 다른 디바이스의 UI 패턴으로 전환될 때의 규칙을 정의할 수 있다. 예를 들어, 화면 연동 알고리즘은 2차원 테이블의 경우, PC와 태블릿 PC의 화면에서는 2차원 테이블의 UI로 생성되지만, 스마트 폰에서는 리스트 UI로 생성될 수 있는 규칙을 정의할 수 있다. Here, the screen linkage algorithm can define a rule when the UI pattern of a specific device is converted into a UI pattern of another device. For example, in the case of a two-dimensional table, a screen-linking algorithm is generated as a UI of a two-dimensional table on the screen of a PC and a tablet PC, but a rule that can be generated by a list UI can be defined in a smartphone.
일 실시예에서, 스크립트 처리 모듈(230)은 레이아웃의 변경에 대한 화면 연동 알고리즘(예: 상단 영역 등의 디바이스 별 변환 규칙) 및 UI 컴포넌트 변경에 대한 화면 연동 알고리즘(예: 2차원의 테이블 영역, 리스트 영역 등의 UI 컴포넌트에 대한 디바이스 별 변환 규칙)을 통하여 동적 스타일을 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 동적인 스타일이 생성되면, 스크립트를 통하여 동적인 스타일을 정적인 스타일에 추가할 수 있다. 보다 구체적으로, 스크립트 처리 모듈(230)는 정적인 스타일과 연관된 스타일 객체에 동적 스타일 삽입 연산을 수행할 수 있다. 예를 들어, 스크립트가 정적인 스타일에 정의된 테이블의 행, 열, 및 여백 중 적어도 하나에 대한 스타일 객체를 변경할 수 있는 동적인 스타일 시트를 생성한 경우, 스크립트는 정적인 스타일에 동적 스타일을 추가할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 정적인 스타일 및 동적인 스타일을 기초로 웹 문서(120)를 2차적으로 렌더링할 수 있다. 예를 들어, 웹 문서(120)가 가로 해상도가 1024 픽셀을 가진 정적인 스타일을 포함하고, 정적인 스타일이 3행 및 5열의 레이아웃을 가진 테이블(table)을 정의하는 경우, 스크립트 처리 모듈(230)는 웹 문서 뷰어의 해상도가 760 픽셀 이하로 변경되면 5행 3열의 레이아웃을 가진 테이블로 변경되도록 정의한 동적인 스타일을 생성하여 정적인 스타일에 추가할 수 있다. 여기에서, 스크립트 처리 모듈(230)는 해상도가 760픽셀 이하로 변경되는 경우 5행 3열의 테이블을 화면에 표시하여 2차적으로 렌더링을 할 수 있다.In one embodiment, the
테이블 처리 모듈(240)은 웹 문서(120)에 테이블과 연관된 기 정의된 클래스 네임이 존재하면, 테이블의 UI와 연관된 동적 스타일을 생성하고, 생성된 동적 스타일을 기초로 웹 문서(120)를 3차적으로 렌더링할 수 있다. 보다 구체적으로, 엔터프라이즈 환경에서 표현될 수 있는 PC환경에서의 테이블 UI는 다양한 디바이스에서 표현될 때 리스트 UI, 탭 UI, 상세 UI, 폴딩형 UI 등 여러가지 형태로 변경될 수 있다. 여기에서, 이러한 전환은 비즈니스 목적에 따라 일정한 패턴을 가지고 있으므로, 사용자는 HTML 상에 기정의된 클래스 네임만을 삽입하여 동적으로 PC화면의 테이블 UI가 스마트 폰에서는 인디케이터(Indicator) 모양의 UI 형태 또는 폴딩 모양의 UI 형태 등으로 전환하도록 할 수 있다. The
예를 들어, 도 6c에서, 테이블 처리 모듈(240)은 HTML에 LblockTableList에 해당하는 클래스 네임이 기 정의되어 있으면, 스크립트를 통하여 디바이스 별로 최적화된 테이블과 연관된 동적 CSS를 생성함으로써, 각 디바이스에 적합한 테이블 영역이 표현되도록 렌더링할 수 있다. For example, in FIG. 6C, if the class name corresponding to the LblockTableList is defined in the HTML, the
제어부(250)는 데이터 모듈(210), 스타일 처리 모듈(220), 스크립트 처리 모듈(230) 및 테이블 처리 모듈(240)의 동작 및 데이터의 흐름을 제어한다.
The
도 3은 멀티-스크린용 사용자 인터페이스 엔진에서 수행되는 멀티-스크린용 사용자 인터페이스 구현 과정을 설명하는 흐름도이다.FIG. 3 is a flowchart illustrating a multi-screen user interface implementation process performed by the multi-screen user interface engine.
데이터 모듈(210)는 웹 문서(120)를 로드한다(단계 S310). 여기에서, 웹 문서(120)는 웹 문서 뷰어의 해상도와 무관하게 제작될 수 있다. 사용자는 본 발명에 따른 멀티-스크린용 사용자 인터페이스 구현 과정에서 복수의 디바이스들(110)에 제공될 수 있는 하나의 웹 문서(One Source)를 작성할 수 있다. 일 실시예에서, 웹 문서(120)는 HTML(HyperText Markup Language), XML(eXtensible Markup Language) 또는 JSP(Java Server Page)로서 구현될 수 있다. The
스타일 처리 모듈(220)은 웹 문서(120)에 포함된 특정 해상도에 따른 정적인 스타일을 로드한다(단계 S320). The
여기에서, 스타일 처리 모듈(220)은 로드된 정적인 스타일을 기초로 웹 문서를 1차적으로 렌더링한다(단계 S330). Here, the
일 실시예에서, 스타일 처리 모듈(220)은 웹 문서(120)에 포함된 공통 스타일(예: 공통 CSS)을 로드하여 복수의 디바이스들(110)에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링할 수 있다. In one embodiment, the
일 실시예에서, 스타일 처리 모듈(220)은 웹 문서 뷰어의 실제 해상도에 따라 로드된 정적인 스타일을 분기하고, 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성함으로써 1차 화면 렌더링을 수행할 수 있다. In one embodiment, the
일 실시예에서, 스타일 처리 모듈(220)은 정적인 스타일 및 공통 스타일 중 적어도 하나와 연관된 UI 패턴을 레파지토리에 관리할 수 있다. In one embodiment, the
스크립트 처리 모듈(230)은 웹 문서(120)에 포함된 스크립트를 로드한다(단계 S340). The
여기에서, 스크립트 처리 모듈(230)은 로드된 스크립트를 기초로 웹 문서(120)를 2차적으로 렌더링한다(단계 S350). Here, the
일 실시예에서, 스크립트 처리 모듈(230)는 복수의 디바이스들(110)에 공통적으로 적용되는 공통 스크립트(예: 공통 CSS)를 로드하여 복수의 디바이스들(110)에 대한 공통 이벤트를 처리할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 공통 스크립트를 통하여 웹 문서(120)에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경할 수 있다. 일 실시예에서, 스크립트 처리 모듈(230)는 웹 문서 뷰어의 실제 해상도에 따라 공통 스크립트를 분기하여 기 정의된 디바이스별로 분기할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 공통 스크립트를 통해 정적인 스타일을 기초로 동적인 스타일을 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서 뷰어의 해상도를 검출하여 검출된 해상도가 특정 해상도와 다른 경우에 동적인 스타일을 생성할 수 있다.In one embodiment, the
다른 일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서 뷰어(115)의 해상도와 무관하게 동적인 스타일을 생성할 수 있다. In another embodiment, the
또 다른 일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 동적 스타일을 생성할 수 있다. 예를 들어, 웹 문서에 특정 클래스 네임(예: LblockTableList, LblockTab, LblockSearch)이 기술되어 있는 경우, 스크립트는 동적 스타일을 생성하여 디바이스 별로 최적화된 UI의 형태를 적용할 수 있다. In yet another embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 복수의 디바이스들(110) 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 동적인 스타일을 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 동적인 스타일이 생성되면, 스크립트를 통하여 동적인 스타일을 정적인 스타일에 추가할 수 있다. In one embodiment, the
스크립트 처리 모듈(230)은 정적인 스타일 및 동적인 스타일을 기초로 웹 문서(120)를 2차적으로 렌더링할 수 있다(단계 S350).
The
도 4는 본 발명의 일 실시예에 따른 멀티-스크린용 사용자 인터페이스 엔진에서 수행되는 멀티-스크린용 사용자 인터페이스 구현 과정을 설명하는 흐름도이다.4 is a flowchart illustrating a multi-screen user interface implementation process performed by the multi-screen user interface engine according to an exemplary embodiment of the present invention.
데이터 모듈(210)는 웹 문서(120)를 로드한다(단계 S410). The
일 실시예에서, 스타일 처리 모듈(220)은 웹 문서(120)에 포함된 공통 스타일(예: 공통 CSS)을 로드할 수 있다(단계 S420). 여기에서, 스타일 처리 모듈(220)는 스크립트와 연관된 CSS를 로드할 수 있다(단계 S421). In one embodiment, the
스타일 처리 모듈(220)은 웹 문서 뷰어의 실제 해상도에 따라 로드된 정적인 스타일을 분기(단계 S422)하고, 분기된 정적 CSS를 로드할 수 있다(단계 S430). The
여기에서, 스타일 처리 모듈(220)은 미디어 쿼리문을 통하여 디바이스 별로 분기(단계 S431)하고, 공통 CSS 및 분기된 정적인 CSS을 기초로 기 정의된 디바이스 별로 UI를 구성(단계 S432)함으로써 1차 화면 렌더링을 수행할 수 있다(단계 S433). Here, the
스크립트 처리 모듈(230)는 복수의 디바이스들(110)에 공통적으로 적용되는 공통 스크립트(예: 공통 js)를 로드할 수 있다(단계 S440). The
일 실시예에서, 스크립트 처리 모듈(230)는 웹 문서 뷰어의 실제 해상도에 따라 공통 스크립트를 분기하여 기 정의된 디바이스별로 분기할 수 있다(단계 S441). In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 공통 js를 통하여 기 정의된 디바이스별 스크립트(예: pc.js, tablet.js 또는 phone.js)를 로드할 수 있다(단계 S442). 여기에서, 스크립트 처리 모듈(230)은 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 공통 CSS를 통하여 복수의 디바이스들(110)에 대한 공통 이벤트를 처리할 수 있다(단계 S443). In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)는 공통 스크립트를 통하여 웹 문서(120)에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경할 수 있다(단계 S444). In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 공통 스크립트를 통해 정적인 스타일을 기초로 동적인 스타일을 생성할 수 있다(단계 S445). In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 동적 스타일을 생성할 수 있다. 예를 들어, 웹 문서에 특정 클래스 네임(예: LblockTableList, LblockTab, LblockSearch)이 기술되어 있는 경우, 스크립트는 동적 스타일을 생성하여 디바이스 별로 최적화된 UI의 형태를 적용할 수 있다. 즉, 사용자는 메뉴, 텍스트, 검색 및 테이블이 있는 화면을 생성하고자 하는 경우, 기 정의된 LblockTopMenu, LblockContent, LblockSearch 및 LblockTable 각각에 해당하는 클래스 네임을 기술함으로써, 스크립트 처리 모듈(230)가 스크립트를 통하여 동적으로 CSS를 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 복수의 디바이스들(110) 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 동적인 스타일을 생성할 수 있다(단계 S446). 여기에서, 화면 연동 알고리즘은 레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 레이아웃의 변경에 대한 화면 연동 알고리즘(예: 상단 영역 등의 디바이스 별 변환 규칙) 및 UI 컴포넌트 변경에 대한 화면 연동 알고리즘(예: 2차원의 테이블 영역, 리스트 영역 등의 UI 컴포넌트에 대한 디바이스 별 변환 규칙)을 통하여 동적 스타일을 생성할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 동적인 스타일이 생성되면, 스크립트를 통하여 동적인 스타일을 정적인 스타일에 추가할 수 있다. In one embodiment, the
일 실시예에서, 스크립트 처리 모듈(230)은 정적인 스타일 및 동적인 스타일을 기초로 웹 문서(120)를 2차적으로 렌더링할 수 있다(단계 S447). In one embodiment, the
테이블 처리 모듈(240)은 웹 문서(120)에 테이블과 연관된 기 정의된 클래스 네임이 존재하면, 테이블의 UI와 연관된 동적 스타일을 생성(단계 S450)하고, 생성된 동적 스타일을 기초로 웹 문서(120)를 3차적으로 렌더링할 수 있다(단계 S451).
The
상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that
110: 복수의 디바이스들
111: PC 112: 태블릿 PC
112: 스마트 폰 120: 웹 문서
130: 멀티-스크린용 사용자 인터페이스 엔진
210: 데이터 모듈 220: 스타일 처리 모듈
230: 스크립트 처리 모듈 240: 테이블 처리 모듈
250: 제어부110: a plurality of devices
111: PC 112: Tablet PC
112: Smartphone 120: Web document
130: Multi-screen user interface engine
210: data module 220: style processing module
230: Script processing module 240: Table processing module
250:
Claims (25)
웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 데이터 모듈;
상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 스타일 처리 모듈;
상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 스크립트 처리 모듈; 및
상기 웹 문서에 테이블과 연관된 기 정의된 클래스 네임(Class Name)이 존재하면 상기 테이블의 사용자 인터페이스와 연관된 동적 스타일을 생성하고, 상기 생성된 동적 스타일을 기초로 상기 웹 문서를 3차적으로 렌더링하는 테이블 처리 모듈을 포함하는 멀티-스크린용 사용자 인터페이스 엔진.
A multi-screen user interface engine for implementing a method for implementing a multi-screen user interface, the multi-screen user interface engine comprising:
A data module for loading the produced web document regardless of the resolution of the web document viewer;
A style processing module that loads a static style according to a specific resolution included in the web document and primarily renders the web document based on the loaded static style;
A script processing module for loading a script included in the web document and secondarily rendering the web document based on the loaded script; And
If a predefined class name associated with the table exists in the web document, a dynamic style associated with the user interface of the table is generated, and a table that tertiarily renders the web document based on the generated dynamic style Screen user interface engine including a processing module.
모든 해상도들에 공통적으로 적용되는 공통 스타일을 로드하여 복수의 디바이스들에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
The method of claim 1, wherein the style processing module
Wherein at least one of color, shape, and layout for a plurality of devices is rendered by loading a common style commonly applied to all resolutions.
상기 웹 문서 뷰어의 실제 해상도에 따라 상기 정적인 스타일을 분기하고, 상기 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
3. The method of claim 2, wherein the style processing module
Wherein the static style is branched according to the actual resolution of the web document viewer and a user interface is configured for each device defined on the basis of the branched static style.
모든 해상도들에 공통적으로 적용되는 공통 스크립트를 로드하여 복수의 디바이스들에 대한 공통 이벤트를 처리하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
The method of claim 1, wherein the script processing module
Wherein a common script applied to all resolutions is loaded to process a common event for a plurality of devices.
상기 웹 문서 뷰어의 실제 해상도에 따라 상기 공통 스크립트를 분기하여 기 정의된 디바이스별 스크립트를 로드하고, 상기 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
5. The apparatus of claim 4, wherein the script processing module
Wherein the common script is branched according to an actual resolution of the web document viewer to load a predefined device-specific script, and an operation for a predefined device is processed based on the device-specific script. User interface engine.
상기 공통 스크립트를 통해 상기 웹 문서에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
5. The apparatus of claim 4, wherein the script processing module
Wherein at least one of a menu, a tab, and an image file path for the web document is changed through the common script.
상기 공통 스크립트를 통해 상기 정적인 스타일을 기초로 동적인 스타일을 생성하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
5. The apparatus of claim 4, wherein the script processing module
Wherein the dynamic style is generated based on the static style through the common script.
상기 웹 문서 뷰어의 해상도를 검출하여 상기 검출된 해상도가 상기 특정 해상도와 다르면 상기 동적인 스타일을 생성하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
8. The apparatus of claim 7, wherein the script processing module
Wherein the resolution of the web document viewer is detected and the dynamic style is generated if the detected resolution is different from the specific resolution.
상기 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 상기 동적 스타일을 생성하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
8. The apparatus of claim 7, wherein the script processing module
And generates the dynamic style if a predefined class name exists in the web document.
복수의 디바이스들 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 상기 동적인 스타일을 생성하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
8. The apparatus of claim 7, wherein the script processing module
Wherein the dynamic style is generated through a screen linkage algorithm associated with a conversion of a user interface pattern between a plurality of devices.
레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 엔진.
11. The method of claim 10,
Layout, and a user interface pattern associated with at least one of a user interface component, a layout, and a user interface component.
웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 단계;
상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 단계;
상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 단계; 및
상기 웹 문서에 테이블과 연관된 기 정의된 클래스 네임(Class Name)이 존재하면 상기 테이블의 사용자 인터페이스와 연관된 동적 스타일을 생성하고, 상기 생성된 동적 스타일을 기초로 상기 웹 문서를 3차적으로 렌더링하는 단계를 포함하는 멀티-스크린용 사용자 인터페이스 구현 방법.
A method for implementing a multi-screen user interface in a multi-screen user interface engine, the method comprising:
Loading the created web document regardless of the resolution of the web document viewer;
Loading a static style according to a specific resolution included in the web document and rendering the web document primarily based on the loaded static style;
Loading a script included in the web document and rendering the web document secondarily based on the loaded script; And
Generating a dynamic style associated with the user interface of the table if the predefined class name associated with the table exists in the web document and rendering the web document tertiary based on the generated dynamic style Screen user interface.
모든 해상도들에 공통적으로 적용되는 공통 스타일을 로드하여 복수의 디바이스들에 대한 색감, 형태 및 레이아웃 중 적어도 하나를 렌더링하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
14. The method of claim 13, wherein the step of primarily rendering the web document
Further comprising: loading a common style commonly applied to all resolutions to render at least one of color, shape, and layout for a plurality of devices.
상기 웹 문서 뷰어의 실제 해상도에 따라 상기 정적인 스타일을 분기하고, 상기 분기된 정적인 스타일을 기초로 기 정의된 디바이스 별로 사용자 인터페이스를 구성하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
15. The method of claim 14, wherein the step of primarily rendering the web document comprises:
Further comprising branching the static style according to an actual resolution of the web document viewer and configuring a user interface for each device previously defined based on the branched static style, How to implement the interface.
모든 해상도들에 공통적으로 적용되는 공통 스크립트를 로드하여 복수의 디바이스들에 대한 공통 이벤트를 처리하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
14. The method of claim 13, wherein rendering the web document
Further comprising: loading a common script commonly applied to all resolutions to process a common event for a plurality of devices.
상기 웹 문서 뷰어의 실제 해상도에 따라 상기 공통 스크립트를 분기하여 기 정의된 디바이스별 스크립트를 로드하고, 상기 디바이스별 스크립트를 기초로 기 정의된 디바이스에 대한 동작을 처리하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
17. The method of claim 16, wherein rendering the web document
Further comprising the step of branching the common script according to the actual resolution of the web document viewer to load a predefined device-specific script and processing an operation on a predefined device based on the device-specific script. A method for implementing a multi-screen user interface.
상기 공통 스크립트를 통해 상기 웹 문서에 대한 메뉴, 탭 및 이미지 파일의 경로 중 적어도 하나를 변경하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
17. The method of claim 16, wherein rendering the web document
Further comprising changing at least one of a menu, a tab and an image file path for the web document through the common script.
상기 공통 스크립트를 통해 상기 정적인 스타일을 기초로 동적인 스타일을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
17. The method of claim 16, wherein rendering the web document
Further comprising: generating a dynamic style based on the static style through the common script.
상기 웹 문서 뷰어의 해상도를 검출하여 상기 검출된 해상도가 상기 특정 해상도와 다르면 상기 동적인 스타일을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
20. The method of claim 19, wherein generating the dynamic style comprises:
Detecting a resolution of the web document viewer and generating the dynamic style if the detected resolution is different from the specific resolution.
상기 웹 문서에 기 정의된 클래스 네임(Class Name)이 존재하면 상기 동적 스타일을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
20. The method of claim 19, wherein generating the dynamic style comprises:
And generating the dynamic style if a predefined class name exists in the web document. ≪ Desc / Clms Page number 22 >
복수의 디바이스들 상호 간의 사용자 인터페이스 패턴의 변환과 연관된 화면 연동 알고리즘을 통하여 상기 동적인 스타일을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
20. The method of claim 19, wherein generating the dynamic style comprises:
Further comprising generating the dynamic style through a screen linkage algorithm associated with the conversion of a user interface pattern between the plurality of devices.
레이아웃 및 사용자 인터페이스 컴포넌트 중 적어도 하나와 연관된 사용자 인터페이스 패턴의 변환을 정의하는 것을 특징으로 하는 멀티-스크린용 사용자 인터페이스 구현 방법.
23. The method of claim 22,
Layout, and a user interface pattern associated with at least one of a user interface component, a layout, and a user interface component.
웹 문서 뷰어의 해상도와 무관하게 제작된 웹 문서를 로드하는 기능;
상기 웹 문서에 포함된 특정 해상도에 따른 정적인 스타일을 로드하여 상기 로드된 정적인 스타일을 기초로 상기 웹 문서를 1차적으로 렌더링하는 기능; 및
상기 웹 문서에 포함된 스크립트를 로드하고 상기 로드된 스크립트를 기초로 상기 웹 문서를 2차적으로 렌더링하는 기능; 및
상기 웹 문서에 테이블과 연관된 기 정의된 클래스 네임(Class Name)이 존재하면 상기 테이블의 사용자 인터페이스와 연관된 동적 스타일을 생성하고, 상기 생성된 동적 스타일을 기초로 상기 웹 문서를 3차적으로 렌더링하는 기능을 포함하는 멀티-스크린용 사용자 인터페이스 구현 방법에 관한 컴퓨터 프로그램을 기록한 기록매체.
A computer-readable recording medium on which a method for implementing a multi-screen user interface is performed in a multi-screen user interface engine,
Ability to load web documents produced independently of the resolution of the web document viewer;
Loading a static style according to a specific resolution included in the web document and rendering the web document primarily based on the loaded static style; And
Loading the script included in the web document and rendering the web document secondarily based on the loaded script; And
Generating a dynamic style associated with a user interface of the table if a predefined class name associated with the table exists in the web document and rendering the web document tertiary based on the generated dynamic style; Screen user interface, and a method for implementing the multi-screen user interface.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130052648A KR101438198B1 (en) | 2013-05-09 | 2013-05-09 | Method of providing user interface of multi-screen and apparatus performing the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130052648A KR101438198B1 (en) | 2013-05-09 | 2013-05-09 | Method of providing user interface of multi-screen and apparatus performing the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101438198B1 true KR101438198B1 (en) | 2014-09-04 |
Family
ID=51759495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130052648A KR101438198B1 (en) | 2013-05-09 | 2013-05-09 | Method of providing user interface of multi-screen and apparatus performing the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101438198B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101929201B1 (en) | 2018-06-18 | 2018-12-14 | (주)투비소프트 | Method and apparatus for structuring component that supports n-screen using single code in business application |
KR20210051918A (en) * | 2019-10-31 | 2021-05-10 | 주식회사 앱포스터 | Apparatus and method for providing screen setting data of a plurality of device |
CN113470284A (en) * | 2021-07-08 | 2021-10-01 | 广州五谷信息科技有限公司 | Multi-screen ordering equipment and using method thereof |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090002032A (en) * | 2007-06-01 | 2009-01-09 | (주)인스웨이브시스템즈 | Executing module for playing ui plug-in in universal web browser, ui plug-in development apparatus and method thereof |
KR20090024509A (en) * | 2007-09-04 | 2009-03-09 | 주식회사 엘지텔레콤 | Method for prviding mobile web service and a mobile phone for excuting the method |
KR20110097300A (en) * | 2010-02-25 | 2011-08-31 | 삼성에스디에스 주식회사 | Web browsing system using the mobile web browser and method thereof and mobile terminal in the used the same |
-
2013
- 2013-05-09 KR KR1020130052648A patent/KR101438198B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090002032A (en) * | 2007-06-01 | 2009-01-09 | (주)인스웨이브시스템즈 | Executing module for playing ui plug-in in universal web browser, ui plug-in development apparatus and method thereof |
KR20090024509A (en) * | 2007-09-04 | 2009-03-09 | 주식회사 엘지텔레콤 | Method for prviding mobile web service and a mobile phone for excuting the method |
KR20110097300A (en) * | 2010-02-25 | 2011-08-31 | 삼성에스디에스 주식회사 | Web browsing system using the mobile web browser and method thereof and mobile terminal in the used the same |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101929201B1 (en) | 2018-06-18 | 2018-12-14 | (주)투비소프트 | Method and apparatus for structuring component that supports n-screen using single code in business application |
KR20210051918A (en) * | 2019-10-31 | 2021-05-10 | 주식회사 앱포스터 | Apparatus and method for providing screen setting data of a plurality of device |
KR102280391B1 (en) * | 2019-10-31 | 2021-07-22 | 주식회사 앱포스터 | Apparatus and method for providing screen setting data of a plurality of device |
US11314404B2 (en) | 2019-10-31 | 2022-04-26 | Apposter Inc. | Apparatus and method for providing screen setting data of plurality of devices |
CN113470284A (en) * | 2021-07-08 | 2021-10-01 | 广州五谷信息科技有限公司 | Multi-screen ordering equipment and using method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11170159B1 (en) | System and method for using a dynamic webpage editor | |
US8930824B2 (en) | Facilitating propagation of user interface patterns or themes | |
CN104915186B (en) | A kind of method and apparatus making the page | |
US10410606B2 (en) | Rendering graphical assets on electronic devices | |
US11126787B2 (en) | Generating responsive content from an electronic document | |
Broulik et al. | Pro jQuery mobile | |
KR101438198B1 (en) | Method of providing user interface of multi-screen and apparatus performing the same | |
CN109992580A (en) | Processing method and processing device, storage medium, the computer equipment of table data | |
KR101709186B1 (en) | Interactive multimedia E-book authoring apparatus and method | |
KR101649822B1 (en) | Apparatus and method for building web-page | |
US10929208B1 (en) | Methods and apparatus for copying a selected browser region to a clipboard as an image | |
KR101292982B1 (en) | Declarative mechanism for defining a hierarchy of objects | |
US20060150084A1 (en) | Data format for representing user interface elements for a screen reader | |
US20200409667A1 (en) | Cell-based computing and website development platform | |
KR100628308B1 (en) | Apparatus for constructing mark-up language for user interface in Digital TV and Method thereof | |
US10776448B2 (en) | Cell-based computing and website development platform | |
CN111367515B (en) | Page card development method, device, computing equipment and storage medium | |
KR101088842B1 (en) | Standard for Inter-Connection and Driving System of Web-Based Widget in Smart Phone | |
Harwani et al. | Creating and Using jQuery Plugins | |
JP5263851B1 (en) | Document conversion method and document conversion program | |
Powers | Adobe Dreamweaver CS5. 5 Studio Techniques: Designing and Developing for Mobile with jQuery, HTML5, and CSS3 | |
KR20140027000A (en) | Method of providing user interface of multi-screen and apparatus performing the same | |
CN116795360A (en) | Page rendering method, device and equipment | |
KR20150098962A (en) | A recording media recognized by computer for providing an application developing environment program | |
KR20120025216A (en) | Web browsing system for controlling metatdata |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170703 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180703 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190708 Year of fee payment: 6 |