KR101480033B1 - 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 - Google Patents
임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 Download PDFInfo
- Publication number
- KR101480033B1 KR101480033B1 KR20130024335A KR20130024335A KR101480033B1 KR 101480033 B1 KR101480033 B1 KR 101480033B1 KR 20130024335 A KR20130024335 A KR 20130024335A KR 20130024335 A KR20130024335 A KR 20130024335A KR 101480033 B1 KR101480033 B1 KR 101480033B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- event
- document editing
- paste
- copy
- Prior art date
Links
- 238000006243 chemical reaction Methods 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 13
- 238000012790 confirmation Methods 0.000 claims description 12
- 238000013500 data storage Methods 0.000 claims description 12
- 238000009434 installation Methods 0.000 claims description 12
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 4
- 238000006467 substitution reaction Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000003825 pressing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Document Processing Apparatus (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 발명은 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치에 관한 것으로, 더욱 상세하게는 웹 브라우저 기반에서 동작하는 문서 편집 장치에서 시스템 클립보드만을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 웹 브라우저의 종류에 관계없이 다양한 형식의 데이터를 복사 및 붙여넣기가 가능하도록 하여 데이터 조작의 편의성 및 일관성을 확보하며, 문서 편집 장치 내에 구성한 숨김 객체를 이용하여 복사 및 붙여넣기 함으로써 서버 통신 없이 비교적 단순한 방식을 통해 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 하여 데이터 조작의 속도를 높이고 사용 편의성을 증대시키고, 임의의 웹 브라우저 내에서 공통으로 제공하는 이벤트 및 기능을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 별도의 부가적 설치나 설정 없이도 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 하여 데이터 조작의 호환성 및 범용성을 한층 향상시키며, 다양한 형식의 데이터에 대해 마크업 데이터 형식으로 변환하여 복사 및 붙여넣기 하도록 구성함으로써 복잡한 형식의 데이터일지라도 시스템 클립보드만을 이용하여 복사 및 붙여넣기가 가능하도록 하여 데이터 조작의 효율성을 매우 높이는 효과가 있다.
Description
본 발명은 문서 편집 장치에 관한 것으로, 특히 웹 브라우저를 기반으로 동작하며 복사 및 붙여넣기 기능을 제공하는 문서 편집 장치에 관한 것이다.
소프트웨어 공학적 관점에서 웹 애플리케이션 또는 웹 앱(App)은 인터넷이나 인트라넷을 통해 웹 브라우저에서 이용할 수 있는 응용 소프트웨어를 말한다.
웹 애플리케이션은 수천만 대의 PC에 굳이 소프트웨어를 배포해서 설치하지 않아도 유지 관리할 수 있다는 장점 때문에 그 사용 빈도가 최근 급속히 확산하고 있는 추세이다.
또한, 웹 애플리케이션은 자바, 자바스크립트, DHTML, 플래시와 기타 기술들을 활용하여 화면에 그림을 그리거나 소리를 재생하거나 키보드와 마우스에 접근하는 등 일반적인 클라이언트 설치 프로그램의 기능을 대부분 구현할 수 있다.
한편, 구글 독스(Google Docs)나 네이버 오피스(Naver Office)와 같이 웹 브라우저를 기반으로 동작하는 문서 편집 장치는 상술한 웹 애플리케이션(web application) 형태로 개발되어 설치가 불필요하거나 최소화되는 형태로 설계되었다.
예를 들어, 구글 독스나 네이버 오피스와 같은 최근의 웹 브라우저를 기반으로 동작하는 문서 편집 장치는 웹 브라우저의 종류에 관계없이 동작하는 범용성을 최대한 보장하기 위해서 상술한 웹 애플리케이션의 개념에서 더 나아가 액티브 X(Active X)와 같은 부가적인 모듈의 설치도 허용하지 않도록 설계되었다.
또한, 상술한 구글 독스나 네이버 오피스와 같이 웹 브라우저를 기반으로 동작하는 웹 애플리케이션 형태의 문서 편집 장치들은 사용자 PC에 직접 설치되어 사용자 PC에 직접 설치되어 동작하는 문서 편집 장치에 비해, 아직까지 편집 속도가 느리거나 다양한 기능이 구현되고 있지 못한 것은 사실이지만 이러한 단점은 최근 점차 빠른 속도로 개선되고 있는 추세이다.
하지만, 종래의 이러한 웹 애플리케이션 형태의 문서 편집 장치는 웹 브라우저를 기반으로 동작하는 특성으로 인해, 액티브 X와 같은 모듈을 설치하여 운영체제상의 동적 라이브러리나 API(Application Programming Interface)를 사용하지 않은 다음에는, 웹 브라우저에서 제공하는 함수나 메쏘드를 최대한 활용하여 개발하여야만 하여 그 기능이 제한적일 수밖에 없거나 특정 웹 브라우저에 종속적일 수밖에 없었다.
예를 들어, 윈도우즈(Windows) 운영체제에서 주로 사용되는 인터넷 익스플로러(Internet Explorer) 웹 브라우저의 경우 시스템 클립보드(ClipBoard) 클래스의 접근이나 조작이 제한적이며 파이어폭스(Firefox) 웹 브라우저의 경우에는 시스템 클립보드의 접근을 아예 지원하지 않기 때문에, 종래의 이러한 웹 애플리케이션 형태의 문서 편집 장치에서는 별도의 부가적 설치 없이 웹 브라우저의 자원을 기반으로 문서 편집 장치에서 요구되는 다양한 기능을 구현하여야만 하여 개발의 어려움이 많았다.
특히, 문서 편집 장치에서 그 사용 빈도가 매우 높은 "복사 기능" 또는 "붙여넣기 기능"의 경우에, 종래의 웹 애플리케이션 형태의 문서 편집 장치는 상술한 문제점으로 인해 시스템 클립보드의 접근이나 조작이 웹 브라우저의 종류에 따라 허용되지 않거나 제한적인 환경에서 동작하여야만 하여 다양한 종류의 데이터에 대해 복사 및 붙여넣기가 자유롭게 구현되는 "복사 기능" 이나 "붙여넣기 기능"을 제공할 수 없었다.
하지만, 문서 편집 장치에서 이러한 단점은 사용상의 매우 커다란 불편함이기 때문에, 사용자들이 웹 애플리케이션 형태의 문서 편집 장치를 기피하는 중요 요소로 지적되어 왔다.
따라서, 구글 독스나 네이버 오피스와 같이 설치가 필요없는 웹 애플리케이션의 장점을 그대로 유지하여 사용상의 편리함은 유지하면서도, 현존하는 어떠한 종류의 임의의 웹 브라우저에서도 다양한 종류의 데이터에 대한 복사 및 붙여넣기를 지원하도록 하여 그 사용의 편의성을 더욱 증대시킨 웹 브라우저를 기반으로 동작하는 문서 편집 장치가 필요하다.
전술한 문제점을 개선하기 위한 본 발명 실시 예의 목적은 웹 브라우저 기반에서 동작하는 문서 편집 장치에서 시스템 클립보드만을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 웹 브라우저의 종류에 관계없이 다양한 형식의 데이터를 복사 및 붙여넣기가 가능하도록 한 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치를 제공하는 것이다.
전술한 문제점을 개선하기 위한 본 발명 실시 예의 다른 목적은 문서 편집 장치 내에 구성한 숨김 객체를 이용하여 복사 및 붙여넣기 함으로써 서버 통신 없이 비교적 단순한 방식을 통해 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 한 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치를 제공하는 것이다.
전술한 문제점을 개선하기 위한 본 발명 실시 예의 또 다른 목적은 임의의 웹 브라우저 내에서 공통으로 제공하는 이벤트 및 기능을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 별도의 부가적 설치나 설정 없이도 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 한 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치를 제공하는 것이다.
전술한 문제점을 개선하기 위한 본 발명 실시 예의 또 다른 목적은 다양한 형식의 데이터에 대해 마크업 데이터 형식으로 변환하여 복사 및 붙여넣기 하도록 구성함으로써 복잡한 형식의 데이터일지라도 시스템 클립보드만을 이용하여 복사 및 붙여넣기가 가능하도록 한 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치를 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 문서 편집 장치는 메시지 구동 방식의 이벤트를 제공하는 운영체제상의 임의의 웹 브라우저 기반에서 동작하는 문서 편집 장치로서, 상기 운영체제에 정의된 클립보드 사용을 위한 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 사용자 복사 이벤트의 발생 여부를 미리 확인하는 이벤트 확인부, 편집 중인 문서 내에서 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열로 변환하는 형식 변환부, 상기 이벤트 확인부에서 상기 사용자 복사 이벤트의 발생을 확인하면 후킹을 통해, 사용자가 복사 대상으로 지정한 상기 데이터 대신 상기 형식 변환부의 상기 문자열을 상기 운영체제에서 복사할 복사 대상으로 치환하여 치환된 대상으로 복사 이벤트가 진행되도록 하는 대상 치환부를 포함한다.
본 발명의 일 실시 예에 따른 문서 편집 장치는 내부에 데이터 저장 영역을 구비한 숨김 객체부를 더 포함하되, 상기 이벤트 확인부는 상기 운영체제에 정의된 클립보드 사용을 위한 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 붙여넣기 이벤트의 발생 여부를 미리 확인하고, 상기 대상 치환부는 상기 이벤트 확인부에서 상기 붙여넣기 이벤트의 발생을 확인하면 상기 운영체제에서 지정할 붙여넣기 영역을 상기 숨김 객체부로 치환하며, 상기 숨김 객체부는 상기 붙여넣기 이벤트의 발생을 통해 시스템 클립보드로부터 붙여넣기된 상기 문자열을 기 설정된 변환 형식에 따른 데이터로 변환하여 상기 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입한다.
이때, 상기 대상 치환부는 상기 문서 편집 장치 내 데이터 또는 상기 숨김 객체부로 포커스(Focus)를 강제로 이동시킨 후 상기 숨김 객체부의 상기 데이터 저장 영역을 선택하여 상기 복사 대상 및 상기 붙여넣기 영역을 치환하는 것이 바람직하다.
상기 숨김 객체부는 시각적으로 사용자에게 보이지 않도록 설정되거나 또는 사용자 인터페이스를 통한 문자열의 선택 및 조작이 불가능하도록 설정된 객체인 것이 바람직하다.
상기 문서 편집 장치는 제1 문서 편집 장치에서 복사한 데이터를 제2 문서 편집 장치에서 붙여넣기할 수 있다.
상기 제1 문서 편집 장치 및 상기 제2 문서 편집 장치는 서로 다른 문서 종류를 편집하는 것도 가능하다.
상기 제1 문서 편집 장치 및 상기 제2 문서 편집 장치는 서로 다른 종류의 임의의 웹 브라우저에서 동작할 수 있다.
한편, 상기 이벤트 확인부는 상기 웹 브라우저에서 마우스 조작 이벤트가 발생하면 상기 마우스 조작 이벤트 내에서 기 설정된 조건에 따른 방식의 마우스 조작인지를 검사하고 상기 조건에 해당하면, 사용자 복사 이벤트 또는 붙여넣기 이벤트를 강제 발생시키도록 구성할 수도 있다.
상기 키 조작 이벤트는 키 다운 이벤트(Key Down Event) 또는 키 프레스 이벤트(Key Press Event)일 수 있다.
상기 사용자가 복사 대상으로 지정한 데이터는 마크업(Mark-Up) 형식의 데이터일 수 있다.
사용자가 복사 대상으로 지정한 상기 데이터는 화면에 보이는 마크업 형식 이외에도 메타 데이타(Meta data)와 같은 범용 데이터일 수 있다.
상기 문서 편집 장치는 글꼴과 같은 부가적 설치 이외에는, 상기 문서 편집 장치가 제공하는 복사 및 붙여넣기 기능의 사용을 위한 설치가 필요없는 것이 바람직하다.
상기 문서 편집 장치는 워드, 파워포인트, 엑셀 중 하나 이상을 포함할 수 있다.
상기 웹 브라우저는 예를 들어, 크롬(Chrome)이나 사파리(Safari)와 같은 웹킷(WebKit) 기반 브라우저, 인터넷 익스플로러(Internet Explorer), 파이어 폭스(FireFox) 중 하나일 수 있다.
상기한 목적을 달성하기 위한 본 발명의 다른 실시 예에 따른 문서 편집 장치는 메시지 구동 방식의 이벤트를 제공하는 운영체제상의 임의의 웹 브라우저 기반에서 동작하는 문서 편집 장치로서, 상기 운영체제에서 사용자 복사 이벤트의 발생 여부를 확인하는 이벤트 확인부, 상기 이벤트 확인부에서 상기 사용자 복사 이벤트의 발생을 확인하면 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열 데이터로 변환한 후 상기 문자열 데이터를 마크업 형식의 데이터에 삽입하는 대상 치환부 및 상기 운영체제에서 상기 사용자 복사 이벤트가 발생하면, 운영체제상의 복사 대상 데이터 대신 상기 마크업 형식의 데이터를 복사 대상으로 지정하여 상기 운영체제의 시스템 클립보드로 복사하는 복사부를 포함한다.
상기 이벤트 확인부는 상기 운영체제에서 붙여넣기 이벤트의 발생 여부를 확인하고, 상기 대상 치환부는 상기 붙여넣기 이벤트가 발생하면 상기 운영체제의 시스템 클립보드의 상기 마크업 형식의 데이터에서 상기 문자열 데이터를 추출한 후 상기 문자열 데이터를 기 설정된 변환 형식에 따른 붙여넣기 대상 데이터로 변환하며, 상기 붙여넣기 이벤트가 발생하면 상기 시스템 클립보드의 상기 마크업 형식의 데이터 대신 상기 대상 치환부의 상기 붙여넣기 대상 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입하는 붙여넣기부를 포함하는 것이 바람직하다.
상기 대상 치환부는 어트리뷰트(Attribute) 속성 또는 차일드 노드(Child node)를 이용하여 상기 문자열 데이터를 상기 마크업 형식의 데이터에 삽입할 수 있다.
본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치는 웹 브라우저 기반에서 동작하는 문서 편집 장치에서 시스템 클립보드만을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 웹 브라우저의 종류에 관계없이 다양한 형식의 데이터를 복사 및 붙여넣기가 가능하도록 하여 데이터 조작의 편의성 및 일관성을 확보하는 효과가 있다.
본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치는 문서 편집 장치 내에 구성한 숨김 객체를 이용하여 복사 및 붙여넣기 함으로써 서버 통신 없이 비교적 단순한 방식을 통해 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 하여 데이터 조작의 속도를 높이고 사용 편의성을 증대시키는 효과가 있다.
본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치는 임의의 웹 브라우저 내에서 공통으로 제공하는 이벤트 및 기능을 이용하여 복사 및 붙여넣기 하도록 구성함으로써 별도의 부가적 설치나 설정 없이도 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있도록 하여 데이터 조작의 호환성 및 범용성을 한층 향상시키는 효과가 있다.
본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치는 다양한 형식의 데이터에 대해 마크업 데이터 형식으로 변환하여 복사 및 붙여넣기 하도록 구성함으로써 복잡한 형식의 데이터일지라도 시스템 클립보드만을 이용하여 복사 및 붙여넣기가 가능하도록 하여 데이터 조작의 효율성을 매우 높이는 효과가 있다.
도 1은 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치의 블록도.
도 2는 본 발명의 일 실시 예에 따른 복사 기능의 예시도.
도 3은 본 발명의 일 실시 예에 따른 붙여넣기 기능의 예시도.
도 4는 본 발명의 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도.
도 5는 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치의 블록도.
도 6은 본 발명의 또 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도.
도 2는 본 발명의 일 실시 예에 따른 복사 기능의 예시도.
도 3은 본 발명의 일 실시 예에 따른 붙여넣기 기능의 예시도.
도 4는 본 발명의 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도.
도 5는 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치의 블록도.
도 6은 본 발명의 또 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도.
상기한 바와 같은 본 발명을 첨부된 도면들과 실시 예들을 통해 상세히 설명하도록 한다.
도 1은 본 발명의 일 실시 예에 따른 임의의 웹 브라우저(60) 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)의 블록도다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저(60) 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 메시지 구동 방식의 이벤트를 제공하는 이벤트 발생부(52)를 포함하는 운영체제상(50)의 임의의 웹 브라우저(60) 기반에서 동작하는 문서 편집 장치로서, 상기 운영체제(50)에 정의된 클립보드 사용을 위한 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 사용자 복사 이벤트의 발생 여부를 미리 확인하는 이벤트 확인부(110), 편집 중인 문서 내에서 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열로 변환하는 형식 변환부(125), 상기 이벤트 확인부(110)에서 상기 사용자 복사 이벤트의 발생을 확인하면 후킹을 통해, 사용자가 복사 대상으로 지정한 상기 데이터 대신 상기 형식 변환부(125)의 상기 문자열을 상기 운영체제에서 복사할 복사 대상으로 치환하여 치환된 대상으로 복사 이벤트가 진행되도록 하는 대상 치환부(130)를 포함한다.
또한, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)의 내부에 데이터 저장 영역을 구비한 숨김 객체부(130)를 더 포함하되, 상기 이벤트 확인부(110)는 상기 운영체제(50)에서 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 붙여넣기 이벤트의 발생 여부를 미리 확인하고, 상기 대상 치환부(130)는 상기 이벤트 확인부(110)에서 상기 붙여넣기 이벤트의 발생을 확인하면 상기 운영체제(50)에서 지정할 붙여넣기 영역을 상기 숨김 객체부(120)로 치환하며, 상기 숨김 객체부(120)는 상기 붙여넣기 이벤트의 발생을 통해 시스템 클립보드로부터 붙여넣기된 상기 문자열을 기 설정된 변환 형식에 따른 데이터로 변환하여 상기 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입한다.
또는, 다른 실시 예로서, 본 발명의 실시 예에 따른 임의의 웹 브라우저(60) 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 메시지 구동 방식의 이벤트를 제공하는 이벤트 발생부(52)를 포함하는 운영체제상(50)의 임의의 웹 브라우저(60) 기반에서 동작하는 문서 편집 장치로서, 상기 운영체제(50)의 이벤트 발생부(52)에서 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 사용자 복사 이벤트의 발생 여부를 미리 확인하는 이벤트 확인부(110), 편집 중인 문서 내에서 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열로 변환하여 내부의 데이터 저장 영역에 저장하는 숨김 객체부(120) 및 상기 이벤트 확인부(110)에서 상기 사용자 복사 이벤트의 발생을 확인하면 사용자가 지정한 상기 데이터 대신 상기 숨김 객체부(120)의 상기 문자열을 상기 운영체제(50)에서 복사할 복사 대상으로 치환하는 대상 치환부(130)를 포함한다.
이때, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)의 상기 이벤트 확인부(110)는 상기 운영체제(50)에서 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 붙여넣기 이벤트의 발생 여부를 미리 확인하고, 상기 대상 치환부(130)는 상기 이벤트 확인부(110)에서 상기 붙여넣기 이벤트의 발생을 확인하면 상기 운영체제(50)에서 지정할 붙여넣기 영역을 상기 숨김 객체부(120)로 치환하며, 상기 숨김 객체부(120)는 상기 붙여넣기 이벤트의 발생을 통해 시스템 클립보드로부터 붙여넣기된 상기 문자열을 기 설정된 변환 형식에 따른 데이터로 변환하여 상기 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입한다.
사용자가 복사 대상으로 지정한 상기 데이터는 화면에 보이는 마크업(Mark-Up) 형식의 데이터인 것이 바람직하나, 마크업 형식 이외에도 예를 들어 시간이나 저작자, 권한, 데이터 형식과 같은 메타 데이타(Meta data) 등의 범용 데이터를 포함할 수도 있다.
상기 키 조작 이벤트는 키 다운 이벤트(Key Down Event) 또는 키 프레스 이벤트(Key Press Event)일 수 있으며 이는 운영체제(50)의 종류나 웹 브라우저(60)의 종류에 따라 다른 명칭이나 형식의 이벤트로 변경될 수 있다.
운영체제(50)상의 복사부(51)는 사용자 복사 이벤트가 발생하면 상기 운영체제(50)에서 복사할 복사 대상을 시스템 클립보드로 복사한다.
또한, 운영체제(50)상의 붙여넣기부(53)는 붙여넣기 이벤트가 발생하면 시스템 클립보드에 저장된 문자열을 상기 운영체제(50)에서 지정한 붙여넣기 영역으로 붙여넣기 한다.
본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 웹 브라우저(60)의 제한에 의해 일반 텍스트나 웹 브라우저에서 지원하는 마크업 정도로 한정된 시스템 클립보드의 이용 대상을 확장하여 서식 있는 텍스트, 그림, 도형, 벡터 객체 등을 포함하는 다양한 데이터도 시스템 클립보드를 이용하여 복사 및 붙여넣기가 가능하도록 한다.
상기의 시스템 클립보드(Clipboard)는 운영체제상에서 잘라내서 붙여 넣는 과정을 통해 문서나 응용 프로그램 사이에 자료가 전송될 때 짧은 시간 동안 해당 자료를 저장하는 데에 사용되는 소프트웨어 프로그램으로서 보통 그래픽 사용자 인터페이스 환경의 일부이며 환경 안에 있는 대부분의 프로그램으로부터 접근할 수 있다.
하지만, 인터넷 익스플로러(Internet Explorer)나 파이어폭스(Firefox)와 같은 웹 브라우저(60)에서 동작하는 문서 편집 장치의 경우에는 애플리케이션 레벨에서 시스템 클립보드로의 접근이 제한적이거나 허용되지 않아 이를 이용한 다양한 종류의 데이터를 복사하거나 붙여 넣는 조작이 일반적인 방법으로는 사실상 불가능하다.
예를 들어, 웹 브라우저(60)는 드래그(혹은 셀렉션) 또는 복사 단축키(예를 들어, Ctrl+c)를 통해 시스템 클립보드로 원하는 항목을 복사하거나, 붙여넣기 단축키(Ctrl+v)나 브라우저 메뉴를 이용하여 사용자가 선택한 영역으로 시스템 클립보드에 저장된 데이터를 집어넣는 정도로만 복사 및 붙여넣기가 가능할 만큼 데이터 조작이나 접근이 제한적이다.
또한, 웹 브라우저(60)에서는 이러한 방식의 데이터 조작이나 접근에 있어서도 데이터 종류에 따라 그 조작이 매우 제한적인데, 예를 들어 대부분의 복사 대상 데이터는 상기 시스템 클립보드 내에서 그 형식을 유지(예를 들어, 마크업 형식의 데이터인 경우 마크업의 형식이 그대로 유지)할 수 있으나, 해당 복사 대상 데이터를 다시 붙여넣는 경우에 일부 종류의 데이터는 웹 브라우저의 편집 가능한 극히 제한적인 영역 외에는 원래의 형식을 유지시키기 곤란하여, 사실상 해당 웹 브라우저상에서 동작하는 문서 편집 장치에서 다양한 종류의 데이터에 대해 기본 단축키(Ctrl+c, Ctrl+v)를 이용하여 범용적으로 사용할 수 있는 복사 및 붙여넣기 기능을 제공할 수 없었다.
하지만, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 이벤트의 발생을 감지한 후 상기의 숨김 객체부(120)를 이용한 복사 및 붙여넣기 대상의 형식 변환 및 치환을 통해 키 조작 이벤트 및 복사 또는 붙여넣기 이벤트를 제공하는 웹 브라우저라면 임의 종류의 웹 브라우저에서도 마크업 형식을 포함하는 대부분의 데이터를 기본 단축키를 이용한 복사 및 붙여넣기가 가능해진다.
바람직한 실시 예로서, 복사의 경우에는 사용자가 문서 편집 장치(100)에서 복사 대상으로 지정한 데이터 대신 상기 형식 변환부(125)에서 변환한 상기 문자열을 상기 운영체제(50)에서 복사할 복사 대상으로 치환한 후, 상기 운영체제상의 복사부(51)가 상기 복사 대상 문자열을 시스템 클립보드로 복사한다.
다른 바람직한 실시 예로서, 복사의 경우에는 사용자가 문서 편집 장치(100)에서 복사 대상으로 지정한 데이터 대신 상기 숨김 객체부(120)의 상기 문자열을 상기 운영체제(50)에서 복사할 복사 대상으로 치환한 후, 상기 운영체제상의 복사부(51)가 상기 복사 대상 문자열을 시스템 클립보드로 복사한다.
또한, 붙여넣기의 경우에는 상기 대상 치환부(130)가 운영체제(50)에서 지정할 붙여넣기 영역을 상기 숨김 객체부(120)로 치환한 후, 붙여넣기 이벤트의 발생을 통해 상기 운영체제상의 붙여넣기부(53)가 상기 숨김 객체부(120)로 시스템 클립보드의 상기 문자열을 붙여넣기 하면, 상기 숨김 객체부(120)는 상기 시스템 클립보드로부터 숨김 객체부(120)로 붙여넣기된 상기 문자열을 기 설정된 변환 형식에 따른 데이터로 변환한 후 상기 데이터를 사용자가 기 설정한 붙여넣기 영역에 붙여넣기 한다.
이처럼, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 웹 브라우저(60) 기반에서 동작하는 문서 편집 장치에서 대상의 치환 및 시스템 클립보드를 이용하여 복사 및 붙여넣기 하는 구성을 통해 웹 브라우저(60)의 종류에 관계없이 마크업 형식 등의 다양한 형식의 데이터를 복사 및 붙여넣기할 수 있도록 하여 데이터 조작의 편의성 및 일관성을 확보하며, 웹 브라우저 기반으로 동작하는 문서 편집 장치가 동작하는 웹 브라우저 환경의 호환성 및 범용성을 확보할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 복사 기능의 예시도며, 도 3은 본 발명의 일 실시 예에 따른 붙여넣기 기능의 예시도로서, 도 2 및 도 3은 시스템 클립보드의 마크업 형식의 데이터 조작이 불가능한 웹 브라우저(60)에서 마크업 형식의 데이터를 조작하여 시스템 클립보드(10)에 복사하는 예를 도시한 것이다.
예를 들어, 크롬(Chrome)이나 사파리(Safari)와 같은 웹킷 기반의 웹 브라우저의 경우에는, 온카피(oncopy) 이벤트 등에서 클립보드데이터(clipboardData) 객체를 사용하면 마크업 형식의 데이터를 시스템 클립보드에 복사할 수 있으며, 온페이스트(onpaste) 이벤트에서 클립보드데이터 객체를 사용하여 마크업 형식의 데이터를 시스템 클립보드로부터 붙여넣기할 수 있다.
반면, 인터넷 익스플로러나 파이어 폭스와 같은 웹 브라우저의 경우에는 클립보드데이터 객체를 완벽하게 지원하지는 않기 때문에 마크업 형식의 데이터를 조작하여 시스템 클립보드로 복사할 수 없다.
하지만, 도 2 및 도 3에 도시한 바와 같이 본 발명의 일 실시 예에 따른 임의의 웹 브라우저(60) 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)를 이용하면 인터넷 익스플로러나 파이어 폭스와 같은 웹 브라우저(60)에서도 마크업 형식의 데이터 조작이 가능하다.
복사의 바람직한 실시 예로서, 도 2a를 참조하면, 사용자가 복사를 원하는 영역(5)을 선택한 후, 복사 단축키(Ctrl+c, mac의 경우는 Cmd+c)를 눌러 사용자 복사 이벤트를 발생시키면, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 사용자 복사 이벤트의 발생 이전에 발생하는 웹 브라우저(60)의 키 다운(keydown) 이벤트를 통해 상기 복사 단축키의 동작을 후킹(hooking)한다.
이때, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 복사 영역(5) 내 마크업 형식의 데이터를 기 설정된 변환 형식에 따라 변환한 후 상기 문자열을 상기 운영체제에서 복사할 복사 대상으로 치환한다.
이후, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)가 상기 키 다운 이벤트를 흘려보내면, 상기 웹 브라우저(60)에서 복사(copy)이벤트가 동작한다.
상기 웹 브라우저(60)에서 복사 이벤트에서, 상기 운영체제(50)상의 복사부(51)가 동작하여 치환된 상기 문자열 형식의 데이터를 시스템 클립보드(10)로 복사한다.
복사의 다른 바람직한 실시 예로서, 도 2b를 참조하면, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 저장하는 데이터(예를 들어, 문자열)를 편집 가능한 숨김 객체(120)를 생성한다.
바람직한 실시 예로서, 상기 숨김 객체(120)는 시각적으로 사용자에게 보이지 않도록 설정되거나 또는 사용자 인터페이스를 통한 문자열의 선택 및 조작이 불가능하도록 설정된 객체인 것이 바람직하다.
사용자가 복사를 원하는 영역(5)을 선택한 후, 복사 단축키(Ctrl+c, mac의 경우는 Cmd+c)를 눌러 사용자 복사 이벤트를 발생시키면, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 사용자 복사 이벤트의 발생 이전에 발생하는 웹 브라우저(60)의 키 다운(keydown) 이벤트를 통해 상기 복사 단축키의 동작을 후킹(hooking)한다.
이때, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 복사 영역(5) 내 마크업 형식의 데이터를 문자열 형식의 데이터로 변환하여 상기 숨김 객체(120)의 편집 가능한 내부의 데이터 저장 영역에 저장한다.
이후, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 숨김 객체(120)에 포커스(Focus)를 이동시키고, 상기 숨김 객체(120)의 상기 데이터 저장 영역에 저장된 상기 문자열 형식의 데이터를 선택(selection)한다.
이후, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)가 상기 키 다운 이벤트를 흘려보내면, 상기 웹 브라우저(60)에서 복사(copy)이벤트가 동작한다.
상기 웹 브라우저(60)에서 복사 이벤트에서, 상기 운영체제(50)상의 복사부(51)가 동작하여 상기 숨김 객체(120)의 데이터 저장 영역에 선택되어 있는 상기 문자열 형식의 데이터를 시스템 클립보드(10)로 복사한다.
한편, 붙여넣기의 바람직한 실시 예로서, 도 3을 참조하면, 사용자가 붙여넣기를 원하는 영역(6)을 선택한 후, 붙여넣기 단축키(Ctrl+v)를 눌러 붙여넣기(paste) 이벤트를 발생시키면, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 붙여넣기 이벤트의 발생 이전에 발생하는 웹 브라우저(60)의 키 다운(keydown) 이벤트를 통해 상기 붙여넣기 단축키의 동작을 후킹(hooking)한다.
이때, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 숨김 객체(120)에 포커스를 이동시킨 후 숨김 객체(120) 내부의 상기 데이터 저장 영역을 선택하여 상기 시스템 클립보드(10)로부터 붙여넣기 되는 영역을 상기 사용자가 붙여넣기를 원하는 영역(6)에서 상기 숨김 객체(120)로 치환한다.
이후, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)가 상기 키 다운 이벤트를 흘려보내면, 상기 웹 브라우저(60)에서 붙여넣기 이벤트가 동작한다.
상기 웹 브라우저(60)의 붙여넣기 이벤트에서, 상기 운영체제(50)상의 붙여넣기부(53)가 동작하여 선택되어 있는 상기 숨김 객체(120)의 데이터 저장 영역에 상기 문자열 형식의 데이터를 붙여넣기 한다.
이후, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)는 상기 숨김 객체(120)의 편집 가능한 내부의 데이터 저장 영역에 선택된 상기 문자열 형식의 데이터를 원래의 마크업 형식의 데이터로 변환하여 변환한 상기 마크업 형식의 데이터를 사용자가 기 설정한 붙여넣기 영역(6)에 삽입한다.
상술한 바와 같이, 본 발명의 일 실시 예에 따른 문서 편집 장치(100)의 대상 치환부(130)는 상기 문서 편집 장치(100) 내 데이터 또는 상기 숨김 객체부(120)로 포커스를 강제로 이동시킨 후 상기 숨김 객체부(120)의 상기 데이터 저장 영역을 선택하여 상기 복사 대상 간 또는 상기 붙여넣기 영역 간을 치환하는 것이 바람직하다.
한편, 바람직하게는 본 발명의 일 실시 예에 따른 문서 편집 장치(100)의 이벤트 확인부(110)는 상기 웹 브라우저(60)에서 마우스 조작 이벤트가 발생하면 상기 마우스 조작 이벤트 내에서 기 설정된 조건에 따른 방식의 마우스 조작인지를 검사하고 상기 조건에 해당하면, 사용자 복사 이벤트 또는 붙여넣기 이벤트를 트리거링(Triggering)이나 디스패치(Dispatch) 등의 방식을 통해 강제 발생시킬 수도 있다.
도 2 및 도 3의 예에서 도시한 바와 같이, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저(60) 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 글꼴과 같은 부가적 설치 이외에는, 상기 문서 편집 장치(100)가 제공하는 복사 및 붙여넣기 기능의 사용을 위한 어떠한 설치도 필요없이 웹 브라우저(60)의 종류와 무관하게 마크업 언어 기반의 데이터를 일반적인 문자열과 동일한 사용자 조작을 통해 복사 및 붙여넣기 할 수 있어 사용의 편의성이 매우 크다.
또한, 종래의 구글 독스와 같은 웹 브라우저 기반의 문서 편집 장치는 시스템 클립보드(10)에 들어가는 내용을 조작하지 못하는 웹 브라우저(60)에서도 복사 및 붙여넣기 기능의 범용성을 확보하기 위해 서버를 경유하는 복사 및 붙여넣기 기능을 제공하고 있으나, 이러한 구성은 복잡한 형식의 데이터를 전달이 불가능하며 데이터 처리를 위한 서버 통신 때문에 복사 및 붙여넣기의 속도가 느리고 그 조작이 매우 불편한 데 비해, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 문서 편집 장치(100) 내에 구성한 숨김 객체(120)를 이용하여 복사 및 붙여넣기 하는 구성을 통해 서버와의 통신 없이 비교적 단순한 방식을 통해 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있어 데이터 조작의 속도를 높이고 사용 편의성을 더욱 증대시킨다.
도 4는 본 발명의 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도로서, 각각의 웹 브라우저에서 동작하는 제1 문서 편집 장치(101) 및 제2 문서 편집 장치(102) 간에 도 2 및 도 3에서 상술한 방식과 동일한 방식으로 복사 및 붙여넣기를 수행하는 것을 도시한 것이다.
도 4를 참조하면, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 시스템 클립보드(10) 및 각각의 숨김 객체(121,122) 또는 형식 변환(121,122)을 이용하여 상기 제1 문서 편집 장치(101)에서 복사한 데이터(5)를 제2 문서 편집 장치(102)에서 붙여넣기(6) 할 수 있다.
또한, 상기 제1 문서 편집 장치(101) 및 상기 제2 문서 편집 장치(102)는 서로 다른 문서 종류를 편집하는 중이어도 무방하며, 바람직한 실시 예로서, 상기 문서 종류는 워드, 파워포인트, 엑셀 중 하나일 수 있다.
이처럼, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 다양한 웹 오피스 제품 간 데이터 전달이 자유로워 액티브 X나 별도의 부가적 설치가 필요없는 웹 애플리케이션 형식의 웹 오피스 제품에서 자유롭게 복사 및 붙여넣기 기능을 사용할 수 있어 웹 오피스 간의 호환성 및 범용성이 한층 증대된다.
더불어, 상기 제1 문서 편집 장치(101) 및 상기 제2 문서 편집 장치(102)는 시스템 클립보드(10)를 이용하여 복사 및 붙여넣기 기능을 구현하므로 서로 다른 종류의 임의의 웹 브라우저(70,80)에서 동작하여도 무방하며, 일 예로서, 상기 웹 브라우저는 예를 들어, 크롬(Chrome)이나 사파리(Safari)와 같은 웹킷(WebKit) 기반 브라우저, 인터넷 익스플로러(Internet Explorer), 파이어 폭스(FireFox) 중 하나일 수 있다.
이와 같이, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 임의 종류의 웹 브라우저 내에서 공통으로 제공하는 이벤트 및 기능을 이용하여 복사 및 붙여넣기 하도록 구성하여 별도의 부가적 설치나 설정 없이도 다양한 형식의 데이터를 복사 및 붙여넣기 할 수 있으므로 데이터 조작의 호환성 및 범용성을 한층 향상시킨다.
도 5는 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)의 블록도로서, 마크업 형식 이외의 데이터를 복사 및 붙여넣기 할 수 있는 문서 편집 장치(100)의 다른 실시 예를 도시한 것이다.
도 5를 참조하면, 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 메시지 구동 방식의 이벤트를 제공하는 이벤트 발생부(52)를 포함하는 운영체제(50)상의 임의의 웹 브라우저(60) 기반에서 동작하는 문서 편집 장치(100)로서, 상기 운영체제(50)에서 사용자 복사 이벤트의 발생 여부를 확인하는 이벤트 확인부(110), 상기 이벤트 확인부(110)에서 상기 사용자 복사 이벤트의 발생을 확인하면 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열 데이터로 변환한 후 상기 문자열 데이터를 마크업 형식의 데이터에 삽입하는 대상 치환부(130) 및 상기 운영체제(50)의 이벤트 발생부(52)에서 상기 사용자 복사 이벤트가 발생하면, 운영체제상의 복사 대상 데이터 대신 상기 마크업 형식의 데이터를 복사 대상으로 지정하여 상기 운영체제(50)의 시스템 클립보드로 복사하는 복사부(140)를 포함한다.
또한, 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)의 상기 이벤트 확인부(110)는 상기 운영체제(50)에서 붙여넣기 이벤트의 발생 여부를 확인하고, 상기 대상 치환부(130)는 상기 붙여넣기 이벤트가 발생하면 상기 운영체제(50)의 시스템 클립보드의 상기 마크업 형식의 데이터에서 상기 문자열 데이터를 추출한 후 상기 문자열 데이터를 기 설정된 변환 형식에 따른 붙여넣기 대상 데이터로 변환하며, 상기 붙여넣기 이벤트가 발생하면 상기 시스템 클립보드의 상기 마크업 형식의 데이터 대신 상기 대상 치환부(130)의 상기 붙여넣기 대상 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입하는 붙여넣기부(150)를 포함한다.
이때, 상기 대상 치환부(130)는 어트리뷰트(Attribute) 속성 또는 차일드 노드(Child node)를 이용하여 상기 문자열 데이터를 상기 마크업 형식의 데이터에 삽입하는 것이 바람직하다.
본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 마크업 형식의 데이터를 시스템 클립보드로 복사 및 붙여넣기가 가능하도록 구성된 웹 브라우저 기반에서 동작한다.
도 6은 본 발명의 또 다른 실시 예에 따른 복사 및 붙여넣기 기능의 예시도로서, 마크업 형식의 데이터를 시스템 클립보드(10)로 복사하는 방식을 지원하는 웹 브라우저(70,80) 기반에서 동작하는 문서 편집 장치(101,102) 간에 도 5에서 상술한 구성을 이용하여 마크업 이외의 다양한 형식의 데이터를 상호 복사 및 붙여넣기 하는 예를 도시한 것이다.
크롬(Chrome) 이나 사파리(Safari)와 같은 웹킷 기반의 웹 브라우저(70,80)에서 동작하는 일반적인 문서 편집 장치에서는 해당 웹 브라우저에서 제공하는 클립보드데이터 객체를 통해 복사 및 붙여넣기 작업을 수행하여 마크업 형식의 데이터를 시스템 클립보드로 저장할 수 있다.
그러나, XML과 같은 마크업 형식의 데이터는 복잡한 형식의 데이터를 저장 및 관리하는 측면에서는 장점이 있으나, 웹 브라우저상에서 표시하는 등의 용도로는 문법 구조의 특성으로 인해 적합하지 않다.
따라서, 웹 브라우저 기반으로 동작하는 일반적인 문서 편집 장치는 마크업 형식의 데이터 이외에도 자바스크립트(javascript)에서 사용하며 마크업 형식의 데이터에 비해 조작 방법이 단순하여 복잡한 데이터의 표시가 용이한 제이슨(JSON) 형식의 데이터와 같이 다양한 형식의 데이터를 이용하여 문서를 편집한다.
또한, 웹 브라우저 기반으로 동작하는 일반적인 문서 편집 장치에서는 마크업 형식의 데이터 이외에도 다양한 형식의 데이터를 복사 및 붙여넣기 하여야 하는 경우가 많은데, 종래의 웹 브라우저 기반으로 동작하는 문서 편집 장치에서는 상술한 바와 같이 웹 브라우저 자체가 마크업 형식이나 일반 문자열 형식의 데이터에 대해서만 시스템 클립보드로의 복사 및 붙여넣기를 지원하여 서버의 경유 없이는 그 이외 형식의 데이터는 복사 및 붙여넣기가 불가능했다.
반면, 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 도 5에서 상술한 구성을 통해 마크업 형식 이외의 형식의 데이터도 용이하게 복사 및 붙여넣기가 가능하다.
도 5 및 도 6을 참조하면, 복사의 바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 운영체제(50)에서 사용자 복사 이벤트의 발생 여부를 확인한다.
이때, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 사용자 복사 이벤트의 발생을 확인하면 상기 사용자 복사 이벤트의 발생 이전에 사용자가 복사 대상으로 지정한 데이터(7)를 기 설정된 변환 형식에 따른 문자열 데이터로 변환(1)한 후 상기 문자열 데이터를 마크업 형식의 데이터에 삽입(2)한다.
바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 웹 애플리케이션에서 가장 많이 사용하는 제이슨 객체(JSON Object)의 경우 stringify와 encoding등을 통해 문자열 형식의 데이터로 변환(1)한 후 이를 기 설정된 마크업 형식의 데이터의 어트리뷰트 속성으로 추가하여 삽입(2)할 수 있다.
또는, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 상기 마크업 형식의 데이터의 차일드 노드(child node)와 같은 엘리먼트(예를 들어, 텍스트 엘리먼트)를 이용하여 저장하는 등 다양한 방식으로 삽입할 수 있다.
이후, 상기 운영체제(50)의 이벤트 발생부(52)에서 상기 사용자 복사 이벤트가 발생하면, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 운영체제상의 복사 대상 데이터 대신 상기 마크업 형식의 데이터를 복사 대상으로 지정하여 상기 운영체제(50)의 시스템 클립보드(10)로 복사(3)한다.
바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 사용자가 복사단축키를 눌러 발생한 복사 이벤트에서 clipboardData.setData(크롬이나 사파리와 같은 웹킷 기반의 웹 브라우저의 경우)등을 이용하여 시스템 클립보드(10)에 저장할 수 있다.
또한, 붙여넣기의 바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 운영체제(50)에서 붙여넣기 이벤트의 발생 여부를 확인하면 상기 운영체제(50)의 시스템 클립보드(10)의 상기 마크업 형식의 데이터에서 상기 문자열 데이터를 추출(4,5)한다.
상기 문자열 데이터를 추출하는 바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 사용자가 붙여넣기 단축키를 눌러 발생한 붙여넣기 이벤트에서 clipboardData.getData(webkit 기반의 크롬이나 사파리의 경우)등을 이용하여 시스템 클립보드(10)로부터 상기 문자열 데이터를 추출(4,5)할 수 있다.
이후, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 상기 문자열 데이터를 기 설정된 변환 형식에 따른 붙여넣기 대상 데이터로 변환(6)한다.
이의 바람직한 실시 예로서, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 decoding과 parsing등을 통해 다시 제이슨 객체 형식의 데이터로 변환(6)할 수 있다.
이후, 본 발명의 다른 실시 예에 따른 문서 편집 장치(100)는 상기 운영체제(50)에서 상기 붙여넣기 이벤트가 발생하면, 상기 제이슨 객체 형식의 데이터를 사용자가 기 설정한 붙여넣기 영역(8)에 삽입하여 붙여넣기를 완료한다.
이와 같이, 본 발명의 일 실시 예에 따른 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치(100)는 다양한 형식의 데이터에 대해 마크업 데이터 형식으로 변환하여 복사 및 붙여넣기 하도록 구성하여 마크업 형식 외의 복잡한 형식의 데이터일지라도 시스템 클립보드(10)만을 이용하여 복사 및 붙여넣기 할 수 있도록 하므로 데이터 조작의 효율성을 매우 높이며 데이터 전달의 호환성 및 범용성을 증대시킬 수 있다.
이상에서는 본 발명에 따른 바람직한 실시 예들에 대하여 도시하고 또한 설명하였다. 그러나 본 발명은 상술한 실시 예에 한정되지 아니하며, 특허 청구의 범위에서 첨부하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능할 것이다.
10: 시스템 클립보드 50: 운영체제
51: 복사부 52: 이벤트 발생부
53: 붙여넣기부 60: 웹 브라우저
100: 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치
110: 이벤트 확인부 120: 숨김 객체부
125: 형식 변환부 130: 대상 치환부
140: 복사부 150: 붙여넣기부
51: 복사부 52: 이벤트 발생부
53: 붙여넣기부 60: 웹 브라우저
100: 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치
110: 이벤트 확인부 120: 숨김 객체부
125: 형식 변환부 130: 대상 치환부
140: 복사부 150: 붙여넣기부
Claims (17)
- 메시지 구동 방식의 이벤트를 제공하는 운영체제상의 임의의 웹 브라우저 기반에서 동작하는 문서 편집 장치에 있어서,
상기 운영체제에 정의된 클립보드 사용을 위한 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 사용자 복사 이벤트의 발생 여부를 미리 확인하는 이벤트 확인부;
편집 중인 문서 내에서 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열로 변환하는 형식 변환부;
상기 이벤트 확인부에서 상기 사용자 복사 이벤트의 발생을 확인하면 후킹을 통해, 사용자가 복사 대상으로 지정한 상기 데이터 대신 상기 형식 변환부의 상기 문자열을 상기 운영체제에서 복사할 복사 대상으로 치환하여 치환된 대상으로 복사 이벤트가 진행되도록 하는 대상 치환부;
내부에 데이터 저장 영역을 구비한 숨김 객체부;를 포함하되,
상기 이벤트 확인부는 상기 운영체제에 정의된 클립보드 사용을 위한 키 조작 이벤트가 발생하면, 상기 키 조작 이벤트 내에서 붙여넣기 이벤트의 발생 여부를 미리 확인하고,
상기 대상 치환부는 상기 이벤트 확인부에서 상기 붙여넣기 이벤트의 발생을 확인하면 상기 운영체제에서 지정할 붙여넣기 영역을 상기 숨김 객체부로 치환하며,
상기 숨김 객체부는 상기 붙여넣기 이벤트의 발생을 통해 시스템 클립보드로부터 붙여넣기된 상기 문자열을 기 설정된 변환 형식에 따른 데이터로 변환하여 상기 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 삭제
- 제 1항에 있어서, 상기 대상 치환부는
상기 문서 편집 장치 내 데이터 또는 상기 숨김 객체부로 포커스(Focus)를 강제로 이동시킨 후 상기 숨김 객체부의 상기 데이터 저장 영역을 선택하여 상기 복사 대상 및 상기 붙여넣기 영역을 치환하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 숨김 객체부는
시각적으로 사용자에게 보이지 않도록 설정되거나 또는 사용자 인터페이스를 통한 문자열의 선택 및 조작이 불가능하도록 설정된 객체인 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 문서 편집 장치는
제1 문서 편집 장치에서 복사한 데이터를 제2 문서 편집 장치에서 붙여넣기하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 5항에 있어서, 상기 제1 문서 편집 장치 및 상기 제2 문서 편집 장치는
서로 다른 문서 종류를 편집하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 5항에 있어서, 상기 제1 문서 편집 장치 및 상기 제2 문서 편집 장치는
서로 다른 종류의 임의의 웹 브라우저에서 동작하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 이벤트 확인부는
상기 웹 브라우저에서 마우스 조작 이벤트가 발생하면 상기 마우스 조작 이벤트 내에서 기 설정된 조건에 따른 방식의 마우스 조작인지를 검사하고 상기 조건에 해당하면, 사용자 복사 이벤트 또는 붙여넣기 이벤트를 강제 발생시키는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 키 조작 이벤트는
키 다운 이벤트(Key Down Event) 또는 키 프레스 이벤트(Key Press Event)인 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서,
사용자가 복사 대상으로 지정한 상기 데이터는 마크업(Mark-Up) 형식의 데이터인 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서,
사용자가 복사 대상으로 지정한 상기 데이터는 메타 데이타(Meta data)와 같은 범용 데이터인 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 문서 편집 장치는
글꼴과 같은 부가적 설치 이외에는, 상기 문서 편집 장치가 제공하는 복사 및 붙여넣기 기능의 사용을 위한 설치가 필요없는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 문서 편집 장치는
워드, 파워포인트, 엑셀 중 하나 이상을 포함하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 제 1항에 있어서, 상기 웹 브라우저는
크롬(Chrome)이나 사파리(Safari)와 같은 웹킷(WebKit) 기반 웹 브라우저, 인터넷 익스플로러(Internet Explorer), 파이어 폭스(FireFox) 중 하나인 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 메시지 구동 방식의 이벤트를 제공하는 운영체제상의 임의의 웹 브라우저 기반에서 동작하는 문서 편집 장치에 있어서,
상기 운영체제에서 사용자 복사 이벤트의 발생 여부를 확인하는 이벤트 확인부;
상기 이벤트 확인부에서 상기 사용자 복사 이벤트의 발생을 확인하면 사용자가 복사 대상으로 지정한 데이터를 기 설정된 변환 형식에 따른 문자열 데이터로 변환한 후 상기 문자열 데이터를 마크업 형식의 데이터에 삽입하는 대상 치환부;및
상기 운영체제에서 상기 사용자 복사 이벤트가 발생하면, 운영체제상의 복사 대상 데이터 대신 상기 마크업 형식의 데이터를 복사 대상으로 지정하여 상기 운영체제의 시스템 클립보드로 복사하는 복사부;를 포함하되,
상기 이벤트 확인부는 상기 운영체제에서 붙여넣기 이벤트의 발생 여부를 확인하고,
상기 대상 치환부는 상기 붙여넣기 이벤트가 발생하면 상기 운영체제의 시스템 클립보드의 상기 마크업 형식의 데이터에서 상기 문자열 데이터를 추출한 후 상기 문자열 데이터를 기 설정된 변환 형식에 따른 붙여넣기 대상 데이터로 변환하며,
상기 붙여넣기 이벤트가 발생하면 상기 시스템 클립보드의 상기 마크업 형식의 데이터 대신 상기 대상 치환부의 상기 붙여넣기 대상 데이터를 사용자가 기 설정한 붙여넣기 영역에 삽입하는 붙여넣기부;를 포함하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
- 삭제
- 제 15항에 있어서, 상기 대상 치환부는
어트리뷰트(Attribute) 속성 또는 차일드 노드(Child node)를 이용하여 상기 문자열 데이터를 상기 마크업 형식의 데이터에 삽입하는 것을 특징으로 하는 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130024335A KR101480033B1 (ko) | 2013-03-07 | 2013-03-07 | 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130024335A KR101480033B1 (ko) | 2013-03-07 | 2013-03-07 | 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140110284A KR20140110284A (ko) | 2014-09-17 |
KR101480033B1 true KR101480033B1 (ko) | 2015-01-07 |
Family
ID=51756364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20130024335A KR101480033B1 (ko) | 2013-03-07 | 2013-03-07 | 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101480033B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101724076B1 (ko) | 2016-07-07 | 2017-04-07 | 라온위즈기술 주식회사 | 사용자 서버를 이용한 html 제어 시스템 및 방법 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101950422B1 (ko) * | 2017-08-10 | 2019-02-20 | (주)사이냅소프트 | 편집 권한 설정을 지원하는 공동 편집을 위한 문서 편집 시스템 및 방법 |
KR102067495B1 (ko) * | 2018-06-04 | 2020-01-17 | 주식회사 한글과컴퓨터 | 전자 문서 편집 시스템 및 이의 동작 방법 |
CN110442465B (zh) * | 2019-08-07 | 2024-01-09 | 北京技德系统技术有限公司 | 一种多桌面环境剪切板共享架构及其方法 |
KR102442492B1 (ko) * | 2019-12-17 | 2022-09-13 | 주식회사 한글과컴퓨터 | 이미지의 저장 경로 정보를 기초로 웹 문서 간 이미지 개체의 복사 및 붙여넣기 처리를 수행하는 전자 단말 장치 및 그 동작 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080201656A1 (en) | 2007-02-15 | 2008-08-21 | Microsoft Corporation | Application-based copy and paste operations |
KR100943318B1 (ko) | 2007-08-21 | 2010-02-19 | 소프트캠프(주) | 클립보드 보안방법 |
KR20100129875A (ko) * | 2009-06-02 | 2010-12-10 | 한국과학기술원 | 클립보드의 데이터 클리어 포매팅 방법, 파일 경로 추출을 통한 클립보드의 데이터 변환 방법, 이들의 프로그램 기록매체 및 이들 방법을 이용한 장치 |
-
2013
- 2013-03-07 KR KR20130024335A patent/KR101480033B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080201656A1 (en) | 2007-02-15 | 2008-08-21 | Microsoft Corporation | Application-based copy and paste operations |
KR100943318B1 (ko) | 2007-08-21 | 2010-02-19 | 소프트캠프(주) | 클립보드 보안방법 |
KR20100129875A (ko) * | 2009-06-02 | 2010-12-10 | 한국과학기술원 | 클립보드의 데이터 클리어 포매팅 방법, 파일 경로 추출을 통한 클립보드의 데이터 변환 방법, 이들의 프로그램 기록매체 및 이들 방법을 이용한 장치 |
KR101097835B1 (ko) | 2009-06-02 | 2011-12-23 | 한국과학기술원 | 클립보드의 데이터 클리어 포매팅 방법, 파일 경로 추출을 통한 클립보드의 데이터 변환 방법, 이들의 프로그램 기록매체 및 이들 방법을 이용한 장치 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101724076B1 (ko) | 2016-07-07 | 2017-04-07 | 라온위즈기술 주식회사 | 사용자 서버를 이용한 html 제어 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20140110284A (ko) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI521357B (zh) | 經由網頁瀏覽器輸入內容至應用程式 | |
US8799353B2 (en) | Scope-based extensibility for control surfaces | |
KR101480033B1 (ko) | 임의의 웹 브라우저 기반에서 복사 및 붙여넣기를 지원하는 문서 편집 장치 | |
EP0805406B1 (en) | Method and apparatus for automatic generation of documents with single-layered backgrounds from documents with multi-layered backgrounds | |
US8037484B2 (en) | Building compound extensible AJAX applications | |
KR20060069248A (ko) | 포맷된 문서를 웹 페이지로 변환하는 시스템 및 방법 | |
CN102129364A (zh) | 应用程序中嵌入微件工具栏的方法和快速访问微件的方法 | |
EP2350850A2 (en) | Multiple parallel user experiences provided by a single set of internet hosting machines | |
DK2972827T3 (en) | COLLABORATIVE EDITING | |
TW201108096A (en) | Help information for links in a mashup page | |
JP2012529117A (ja) | コンピュータネットワークにおける電子ドキュメントのレンディションをデプロイするサーバ前処理の利用する方法 | |
JP2017504129A (ja) | ウェブブラウザにおいて表わされる状態表現の構築 | |
Nichols et al. | Highlight: a system for creating and deploying mobile web applications | |
US20110004602A1 (en) | Method for generating widget icon, apparatus for generating widget summary information file, and widget engine | |
TW200925972A (en) | Modifying hover help for a user interface | |
JPWO2007132568A1 (ja) | データ処理サーバ及びデータ処理方法 | |
KR102013620B1 (ko) | 웹 기반 문서의 템플릿을 변경하는 웹 기반 문서 편집 서버 및 이의 동작 방법 | |
US9514099B1 (en) | Documentation system | |
KR101781844B1 (ko) | 마크업 언어 기반 문서의 조합 글자 동기화 장치 및 그의 동작 방법 | |
CN107077484B (zh) | 生成应用的网络浏览器视图 | |
KR20190033381A (ko) | 대용량 웹페이지 문서 변환 시스템 및 그 방법 | |
Namee et al. | A form and API data management platform for progressive web application and serverless application architecture | |
JP2009026013A (ja) | コンテンツ登録・提供装置、コンテンツ登録・提供制御方法、および、コンテンツ登録・提供制御プログラム | |
KR20160082732A (ko) | 에스브이지 파일 포맷을 이용한 컴포넌트 기반의 동적 이미지 표시 시스템 및 방법 | |
KR101965718B1 (ko) | 웹 문서에 대한 편집 신뢰성을 보장하는 장치 및 이의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for 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: 20171227 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181231 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20191231 Year of fee payment: 6 |