KR100935798B1 - 네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치 - Google Patents

네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치 Download PDF

Info

Publication number
KR100935798B1
KR100935798B1 KR1020077016231A KR20077016231A KR100935798B1 KR 100935798 B1 KR100935798 B1 KR 100935798B1 KR 1020077016231 A KR1020077016231 A KR 1020077016231A KR 20077016231 A KR20077016231 A KR 20077016231A KR 100935798 B1 KR100935798 B1 KR 100935798B1
Authority
KR
South Korea
Prior art keywords
document
gdi
shared
module
receiver
Prior art date
Application number
KR1020077016231A
Other languages
English (en)
Other versions
KR20070097507A (ko
Inventor
하이준 우
Original Assignee
텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 filed Critical 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20070097507A publication Critical patent/KR20070097507A/ko
Application granted granted Critical
Publication of KR100935798B1 publication Critical patent/KR100935798B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/15Indexing scheme related to printer interfaces for computers, indexing schema related to group G06F3/12
    • G06F2206/1512Print-to a presentation device other than a printer, e.g. e-reader, e-paper, tablet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 네트워크상으로 문서를 전송하기 위한 방법 및 시스템을 개시한다. 상기 발명은 문서 송신기가 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI(Graph Device Interface) 문서로 변환하는 단계, 상기 문서 수신기가 상기 네트워크를 통하여 상기 문서 송신기로부터 송신된 GDI 문서를 수신하는 단계, 상기 문서 수신기가 상기 수신된 GDI 문서를 복구하는 단계를 포함한다. 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일하다. 본 발명은 또한 시스템, 가상 프린터 장치, 및 복구 장치을 제공하며, 본 발명의 방법, 시스템 및 장치를 사용하면 문서의 전송이 애플리케이션에 의하여 제한되지 않는다.
GDI, 문서 전송

Description

네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치{Method, System for Transmitting Document over Network, Virtual Printer Apparatus and Restoration Apparatus}
본 발명은 네트워크 통신 기술에 관한 것으로, 더 구체적으로 네트워크 상으로 문서를 전송하는 방법, 시스템, 가상 프린터 장치, 및 복구 장치에 관한 것이다.
인터넷 및 이동 통신 기술의 발달에 따라, 사람들은 LAN(Local Area Network), e-mail, 및 인스턴트 메신저(IM: Instant Messenger) 툴 등의 방법을 이용한 데이터 교환 및 메시지 교환과 같은 통신을 수행할 수 있다. 데이터 교환은 문서 전송(document transmission), 애플리케이션 공유(application sharing), 오디오 및 비디오 문서 공유를 포함한다. 문서 전송은, 다른 컴퓨터에 로깅, e-mail에의 첨부, IM 툴의 사용 등과 같은 방법을 사용하여, 문서 전송기(document sender)에 의하여, 공유 문서를 문서 수신기로 송신하는 것을 말한다. 여기서, 문서(document)는, 워드(Word) 문서, 엑셀(Excel) 테이블 문서, 오토캐드(AutoCAD) 그림 문서, 및 포토샵(Photoshop) 그래프 문서와 같이, 단지 텍스트 및 그림만을 포함한 문서를 말한다. 공유 문서의 내용을 정상적으로 보려면, 상기 문서 수신기(document receiver)는 상기 공유 문서와 연관된 애플리케이션(application)이 설치되어 있어야 한다. 문서 수신기에 설치되는 애플리케이션의 유형을 줄이기 위 하여, 상기 공유 문서는 PDF 포맷의 문서로 변환될 수 있다. 그러나, 이 경우에도 문서 수신기가 대응되는 애플리케이션을 설치하고 있지 않으면, 상기 PDF 문서는 여전히 판독되지 않는다.
통상적으로 사람들은 컴퓨터 또는 모바일 터미널 상의 IM 클라이언트를 이용하여 문서를 전송한다. IM 툴을 이용하여 공유 문서를 전송하는 과정을 아래에서 상세히 설명한다. 여기서, IM 사용자 A는 문서 송신자로 동작하고, IM 사용자 B는 문서 수신자로 동작한다.
도 1은 인터넷 IM 툴을 이용하여 공유 문서를 전송하는 종래의 방법의 흐름도이다. 도 1에 도시된 바와 같이, IM 사용자 A 및 IM 사용자 B는 인터넷 IM 툴을 사용한다. IM 툴을 가지고 공유 문서를 전송하는 방법은 아래의 단계들을 포함한다.
단계(101)에서 IM 사용자 A는 공유할 문서를 선택한다.
이 단계에서, IM 사용자 A는 IM 사용자 A의 컴퓨터에 저장된 문서들 중에서 IM 사용자 B와 공유할 문서를 선택한다. 상기 문서는, 예를 들어, 텍스트 문서, 워드(Word) 문서, 오토캐드(AutoCAD) 문서, 엑셀 문서일 수 있다.
단계(102) 내지 단계(103)에서 IM 사용자 A는 IM 서버에게 IM 사용자 B의 IP 주소 및 포트를 요청한다. 상기 IM 서버는 IM 사용자 B의 IP 주소를 IM 사용자 A에게 리턴한다.
IM 사용자 B의 사용자 명칭, 사용자 번호, e-mail 주소와 같은 유일 식별자가 IM 사용자 A로부터 IM 서버로의 IP 주소 및 포트의 요청 내에 전송된다. 이때, IM 사용자 B의 유일 식별자를 인덱스로 하여, 상기 IM 서버는 사용자 B의 현재 IP 주소 및 포트를 찾고, 이를 IM 사용자 A에게 리턴한다.
단계(104)에서 IM 사용자 A는 획득된 IP 주소 및 포트에 따라 IM 사용자 B에의 연결을 시도한다.
이 단계에서, IM 사용자 A는 IM 서버로부터 얻어진 IP 주소 및 포트에 따라 IM 사용자 B에게 연결 요청을 송신하여 IM 사용자 B와의 연결 설정을 시도한다.
단계(105)에서 IM 사용자 A는 IM 사용자 B와의 연결이 성공하였는지 확인하고, 성공하였으면 단계(106)를 수행하고, 그렇지 않으면 단계(107)를 수행한다.
이 단계에서, 만약 IM 사용자 A가 IM 사용자 A의 타이머가 종료(expire)되기 전에 IM 사용자 B의 응답을 수신하면, IM 사용자 A는 IM 사용자 B와의 연결이 성공한 것으로 결정하고, 그렇지 않으면, IM 사용자 B와의 연결이 실패한 것으로 결정한다.
일반적으로, 만약 IM 사용자 B가 공용망에 있거나 또는 IM 사용자 B의 방화벽이 약하면, IM 사용자 A는 IM 사용자 B와 직접 연결할 수 있다. 다른 경우들에서는, IM 사용자 A는 IM 사용자 B와 직접 연결할 수 없다.
단계(106)에서 IM 사용자 A는 IM 사용자 B에게 문서를 전송하고, 단계(109)를 수행한다.
IM 사용자 A가 IM 사용자 B와 직접 연결을 설정하면, 이 단계에서, IM 사용자 A는 IM 사용자 B에게 단계(101)에서 선택된 문서를 직접 전송할 수 있다.
단계(107) 내지 단계(108)에서 IM 사용자 A는 IM 서버에게 문서를 송신하고, IM 서버에게 IM 사용자 B에게로 상기 문서를 송신하라고 요청한다. 그러면 IM 서버는 IM 사용자 B의 IP 주소 및 포트에 기초하여 IM 사용자로부터 수신한 문서를 IM 사용자 B에게 송신하고, 단계(109)를 수행한다.
단계(109)에서 IM 사용자 B는 수신된 문서를 체크하고 판독한다.
이 단계에서, IM 사용자에 의하여 송신된 문서를 수신한 후, IM 사용자 B는 상기 문서와 연관된 소프트웨어를 이용하여 상기 문서를 오픈하고, 상기 문서의 내용을 판독한다. 따라서, IM 사용자 A와 동일한 문서를 공유하려는 목적이 달성된다. 예를 들어, IM 사용자 A가 송신한 것이 워드(Word) 문서이면, IM 사용자 B는 오피스(Office) 또는 워드패드(WordPad)와 같은 소프트웨어를 이용하여 상기 워드 문서를 오픈한다.
이상에서 설명한 것은 인터넷 IM 툴을 이용하여 IM 사용자 A와 IM 사용자 B 간에 공유 문서를 전송하는 프로세스이다. 물론, 공유 문서는 지능형 무선 전화 내의 무선 IM 툴을 이용하여 전송될 수도 있다. 이하에서는 IM 사용자 B는 인터넷 IM 툴을 사용하고, IM 사용자 A는 무선 IM 툴을 사용하는 예를 설명한다.
도 2는 인터넷 또는 IM 툴을 가지고 공유 문서를 전송하는 종래의 방법을 설명하는 흐름도이다. 도 2에 도시된 바와 같이, 인터넷 IM 툴을 사용하는 사용자 B와 무선 IM 툴을 사용하는 IM 사용자 A 간의 공유 문서를 전송하는 방법은 아래의 단계들을 포함한다.
단계(201)에서 IM 사용자 A는 공유할 문서를 선택한다.
이 단계에서, IM 사용자 A는, 텍스트 문서, 워드 문서, 오토캐드 문서, 및 엑셀 문서와 같은, IM 사용자 B와 공유할 문서를 IM 사용자 A의 컴퓨터에 저장된 문서들 중에서 선택한다.
단계(202)에서 IM 사용자 A는 IM 서버에게 무선 게이트웨이를 통하여 문서를 송신하고, IM 서버에게 IM 사용자 B의 IP 주소 및 포트를 요청한다.
이 단계에서, IM 사용자 A에 의하여 사용되는 모바일 터미널은 우선 무선 게이트웨이로 라우팅된다. 그 사이, 상기 문서 및 상기 문서를 송신하기 위한 요청이 무선 게이트웨이로 송신된다. 다음, 무선 게이트 웨이는 수신된 문서 및 상기 문서 송신을 위한 요청을 상기 IM 서버로 송신한다. IM 사용자 B의 유일 식별자가 IM 사용자 A의 문서의 송신을 위한 요청 내에 전송된다.
단계(203)에서 IM 서버는 상기 문서를 IM 사용자 B에게 송신한다.
이 단계에서, IM 서버는, IM 사용자 B의 유일 식별자에 기초하여, IM 사용자 B의 IP 주소 및 포트를 찾아 내고, IM 사용자 B에게 상기 문서를 송신한다.
단계(204)에서 IM 사용자 B는 상기 수신한 문서를 체크하고 판독한다.
이 단계에서, IM 사용자 A로부터 송신한 상기 문서를 수신한 후에, IM 사용자 B는 상기 문서와 연관된 소프트웨어를 이용하여 상기 문서를 오픈하고, 상기 문서의 내용을 체크 및 판독한다. 이렇게, IM 사용자 B와 동일한 문서를 공유하려는 목적이 달성된다. 예를 들어, 만약 M 사용자 A가 송신한 것이 워드(Word) 문서이면, IM 사용자 B는 오피스(Office) 또는 워드패드(WordPad)와 같은 소프트웨어를 이용하여 상기 워드 문서를 오픈한다.
따라서, IM 사용자 A 및 IM 사용자 B 간에 공유 문서를 전송하는 프로세스가 종료된다.
IM 사용자 A 및 IM 사용자 B가 지능형 이동 전화를 통하여 무선 IM 클라이언트에 로그인하였다면, IM 사용자 A로부터 IM 사용자 B로 공유 문서가 전송되기 위하여, IM 서버는 우선 단계(202) 후에 상기 문서를 무선 게이트웨이로 송신하고, 상기 무선 게이트웨이는 상기 문서를 IM 사용자 B에게 송신한다.
이와 같이, IM 사용자 A가 인터넷 IM 툴을 사용하고, IM 사용자 B가 무선 IM 툴을 사용하는 경우, IM 사용자 A로부터 IM 사용자 B에게로 공유 문서를 전송하기 위하여, IM 사용자 A는 우선 상기 문서를 IM 서버로 송신하고, 그 다음 IM 서버가 상기 문서를 무선 게이트웨이(wireless gateway)를 통하여 IM 사용자 B에게 송신한다.
IM 툴을 가지고 공유 문서를 전송하기 위한 상기 방법에 있어서, 문서 수신기는 상기 문서와 연관된 소프트웨어를 상기 문서 수신기 측 모바일 터미널 또는 컴퓨터에 인스톨하고 있어야, 수신된 문서를 오픈하고 문서의 내용을 체크 및 판독할 수 있다. 만약 상기 문서와 연관된 소프트웨어가 상기 문서 수신기 측 모바일 터미널 또는 컴퓨터에 인스톨되어 있지 않으면, 상기 문서 수신기는 수신한 문서를 오픈하여 볼 수 없다. 더욱이, 컴퓨터 또는 모바일 터미널에 인스톨된 소프트웨어의 버전(version)이 상기 문서가 편집된 소프트웨어의 버전과 다른 경우, 상기 문서 및 원래 문서 간의 문자 및 그림의 위치 등에 불일치가 발생할 수도 있고, 이 경우 사용자는 공유 문서를 정상적으로 판독하지 못할 수 있다.
이와 같이, LAN 또는 e-mail과 같은 모드를 이용하여 공유 문서를 전송하는 경우, 문서 수신기는 상기 공유 문서와 연관된 애플리케이션을 컴퓨터 또는 모바일 터미널에 인스톨하여 가지고 있어야 한다. 그렇지 않으면, 공유 문서는 정상적으로 판독되지 않는다.
이상에 따라, 본 발명의 목적은, 문서 수신기가 공유 문서와 연관된 소프트웨어를 설치하고 있지 않은 경우에도 문서 수신기가 수신된 문서의 내용을 판독할 수 있도록 하는 네트워크상으로 문서를 전송하는 방법, 시스템, 가상 프린터 장치, 및 복구 장치를 제공하는 것이다.
상기의 목적을 달성하기 위하여, 본 발명의 실시예는, 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI(Graph Device Interface) 문서로 변환하는 단계; 문서 수신기에 의하여 네트워크를 통하여 문서 송신기로부터 송신된 상기 GDI 문서를 수신하는 단계; 및 상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 복구하는 단계 - 상기 복구된 GDI 문서의 내용은 상기 제1 단계의 상기 공유 문서의 내용과 동일함 -를 포함하고, 상기 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI 문서로 변환하는 단계는, 상기 공유 문서의 상기 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하는 단계; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료하는 단계를 포함하는 것을 특징으로 하는 네트워크상으로 공유 문서를 전송하는 방법을 제공한다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
본 발명은 또한 문서 송신기, 문서 수신기, 가상 프린터 모듈, 및 복구 모듈을 포함하는 네트워크상으로 문서를 전송하는 시스템을 제공한다. 상기 문서 송신기는 상기 가상 프린터 모듈로 송신되는 공유 문서를 출력하고, 상기 공유 문서가 상기 가상 프린터 모듈로부터 변환된 GDI 문서를 수신하고, 상기 GDI 문서를 상기 문서 수신기에 송신하고, 상기 가상 프린터 모듈은 상기 문서 송신기로부터 상기 공유 문서를 수신하고, 가상 프린팅을 수행하여 상기 공유 문서를 상기 GDI 문서로 변환하고, 상기 GDI 문서를 상기 문서 송신기에게 출력하고, 상기 복구 모듈은 상기 문서 수신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 복구하고 - 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일함 -, 상기 내용을 상기 문서 수신기에게 출력하고, 상기 문서 수신기는 상기 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 상기 복구 모듈로 출력하고, 상기 복구 모듈로부터 상기 공유 문서와 동일한 내용을 수신한다. 이 경우, 상기 가상 프린터 모듈은, 상기 공유 문서의 상기 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하고; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써, 전송할 공유 문서를 GDI 문서로 변환하는 것을 특징으로 하는 네트워크상으로 문서를 전송한다.
본 발명의 실시예는 또한 문서 송신기 및 가상 프린터 모듈을 포함하는 가상 프린터 장치를 제공한다. 상기 문서 송신기는 송신할 공유 문서를 상기 가상 프린터 모듈로 출력하고, 상기 가상 프린터 모듈로부터 상기 공유 문서가 변환된 GDI 문서를 수신하고, 상기 GDI 문서를 문서 수신기로 송신하고, 상기 가상 프린터 모듈은 상기 문서 송신기로부터 상기 공유 문서를 수신하고, 가상 프린팅을 수행하여 상기 공유 문서를 상기 GDI 문서로 변환하고, 상기 GDI 문서를 상기 문서 송신기로 출력한다. 이 경우, 상기 가상 프린터 모듈은, 상기 공유 문서의 상기 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하고; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써, 전송할 공유 문서를 GDI 문서로 변환한다.
본 발명의 실시예는 또한 문서 수신기 및 복구 모듈을 포함하는 복구 장치(restoration apparatus)를 제공한다. 상기 복구 모듈은 상기 문서 수신기로부터 GDI 문서를 수신하고, 상기 GDI 문서를 복구하고 - 상기 복구된 GDI 문서의 내용은 공유 문서의 내용과 동일함 -, 상기 복구된 GDI 문서를 상기 문서 수신기에게 출력하고, 상기 문서 수신기는 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 상기 복구 모듈로 출력하고, 상기 복구 모듈로부터 상기 공유 문서와 동일한 내용을 가지는 상기 복구된 GDI 문서를 수신한다. 이 경우, 상기 GDI 문서는, 상기 공유 문서의 상기 애플리케이션에 의하여, 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하고; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써, 전송할 공유 문서로부터 변환된다.
본 발명의 실시예는 또한, 문서 송신기에 의하여 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI(Graph Device Interface) 문서로 변환하는 단계; 및 상기 문서 송신기에 의하여 네트워크를 통하여 상기 GDI 문서를 문서 수신기로 송신하는 단계를 포함하는 네트워크상으로 문서를 전송하는 방법을 제공한다. 이 경우, 상기 전송할 공유 문서를 GDI 문서로 변환하는 단계는, 상기 공유 문서의 상기 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하는 단계; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료하는 단계를 포함한다.
본 발명의 실시예는 또한, 문서 수신기에 의하여 네트워크를 통하여 문서 송신기로부터 송신된 GDI 문서를 수신하는 단계 - 상기 GDI 문서는 공유 문서로부터 변환된 것임 -; 및 상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 복구하는 단계 - 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일함 -를 포함하는 네트워크상으로 문서를 수신하는 방법을 제공한다. 이 경우, 상기 GDI 문서는, 상기 공유 문서의 상기 애플리케이션에 의하여, 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 상기 애플리케이션에게 리턴하고; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써, 전송할 공유 문서로부터 변환된다.
삭제
삭제
삭제
삭제
삭제
본 발명에 따르면, 공유 문서의 수신기는 상기 문서와 연관된 소프트웨어를 설치하고 있지 않은 경우에도 공유 문서의 내용을 동일하게 판독할 수 있다. 특히, 본 발명은 다음과 같은 장점이 있다.
1. 그래프 운영 인터페이스(graph operating interface)를 가지는 모든 운영 체제가 GDI(graph device interface) 서브시스템을 포함하고, 상기 서브시스템은 상기 운영 시스템 내의 애플리케이션들에 의하여 호출되는 다중 GDI 함수를 제공하기 때문에, 본 발명에서는, 공유 문서로부터 변환되는 GDI 문서가 전송되고, 문서 수신기는 자신의 GDI 서브시스템에 따라 단지 GDI 문서 내의 GDI 명령을 순서대로 수행함으로써 상기 공유 문서의 내용을 복구할 수 있다. 즉, 문서 수신기는 연관된 어떤 애플리케이션의 설치를 필요로 하지 않고 공유 문서를 볼 수 있고, 이는 문서 수신기가 공유 문서의 내용을 판독함에 있어서의 어려움을 줄여준다.
2. GDI 함수는 벡터 데이터 및 비 벡터 데이터(non-vector data)를 동시에 지원하는 강력한 함수를 가지고 있기 때문에, 변환된 GDI 문서는 공유 문서와 색체, 선등과 같은 면에서 동일하다. 즉, GDI 문서와 공유 문서 간의 일관성은 더 낫다.
도 1은 인터넷 IM 툴을 가지고 공유 문서를 전송하는 종래의 방법을 도시한 흐름도이다.
도 2는 인터넷 또는 IM 툴을 가지고 공유 문서를 전송하는 종래의 방법을 도시한 흐름도이다.
도 3은 본 발명의 일실시예의 흐름도이다.
도 4는 도 3의 실시예에 따라 GDI 문서를 생성하는 방법의 흐름도이다.
도 5는 도 4의 실시예에 따라 GDI 명령 스트림을 생성하는 방법의 흐름도이다.
도 6은 도 3의 실시예에 따라 수신된 GDI 문서를 복구하는 동작의 흐름도이다.
도 7은 본 발명의 시스템의 실시예의 구성을 도시한 블록도이다.
본 발명의 목적 및 기술적 해결을 보다 분명하게 하기 위하여, 이하에서는 본 발명을 도면 및 실시예들을 참조하여 보다 상세하게 설명한다.
도 3은 본 발명에 따른 방법의 실시예의 흐름도를 도시한 도면이다. 도 3에 도시된 바와 같이, 본 방법은 다음의 단계들을 포함한다.
단계(301)에서 문서 송신기는 공유할 문서를 선택한다.
이 단계에서, 문서 송신기는, 텍스트 문서, 워드 문서, 오토캐드 문서, 및 엑셀 문서 등과 같이, 문서 수신기와 공유할 문서를, 문서 송신기 측 모바일 터미 널 또는 컴퓨터에 저장된 문서들 중에서 선택한다.
단계(302)에서 문서 송신기는 가상 프린팅을 수행함으로써 상기 공유 문서를 GDI 문서로 변환한다.
GDI는 그래픽 인터페이스를 가지는 운영 체제의 서브시스템으로 특정 하드웨어의 출력을 구현하는데 사용된다. 특히, 상기 GDI는, GDI 함수를 호출함으로써, 오피스(Office), 오토캐드(AutoCAD)와 같은 애플리케이션에 의하여 송신된 그래프 요청을 수신하고, 대응 디바이스 드라이버에 상기 GDI 함수를 송신하여, 프린터 및 스크린과 같은 특정 하드웨어의 출력을 수행한다.
본 발명에서, 가상 프린터 모듈(virtual printer module)은 문서 송신기 측 네트워크의 터미널에 설정되고, 상기 애플리케이션과 협력하여 공유 문서의 가상 프린팅을 수행하는데 사용된다. 가상 프린팅(virtual printing)은, 공유 문서의 내용에 따라, 애플리케이션에 의하여, 공유 문서에 대응하는 GDI 함수를 가상 프린터 모듈로 송신하는 것을 말한다. 상기 가상 프린터 모듈은 공유 문서의 애플리케이션으로부터 송신된 GDI 함수들을 수신하고, 상기 GDI 함수들의 각각을 GDI 명령으로 변환한다. 그러면, GDI 명령들로 구성된 GDI 명령 플로우(GDI instruction flow)을 합성함으로써, GDI 문서가 형성된다.
단계(303)에서, 문서 송신기 측 IM 클라이언트는 상기 GDI 문서를 압축(compress)하고 암호화(encrypt)한다.
이 단계에서, 문서 송신기 측 IM 클라이언트는 먼저 가상 프린터 모듈에 의하여 생성된 상기 문서를 LZ77, LZW와 같은 사전 압축 알고리즘(dictionary compression algorithm)으로 압축하여, 상기 문서에 의하여 점유되는 공간을 작게 만든다. 이는 네트워크 전송에 유리하다. 그리고 나서, IM 클라이언트는 대칭형 암호화 알고리즘(symmetrical encryption algorithm), 비대칭형 암호화 알고리즘(asymmetrical encryption algorithm)와 같은, 문서 수신기와 미리 지정된 통상의 알고리즘을 가지고, 압축된 GDI 문서를 암호화하여, 공유 문서의 보안을 향상시킨다.
더욱이, 이 단계에서, 문서 송신기 측 IM 클라이언트도 또한 가상 프린터 모듈에 의하여 생성된 상기 GDI 문서를 먼저 암호화하고, 그 다음 상기 암호화된 GDI 문서를 압축할 수 있다.
단계(304)에서 상기 문서 송신기는 상기 압축 및 암호화된 GDI 문서를 문서 수신기로 송신한다.
이 단계에서, IM 툴을 사용하여 공유 문서를 전송할 때, 상기 문서 송신기는 압축 및 암호화된 GDI 문서를, 본 명세서의 배경기술에서 설명된 단계(102) 내지 단계(108) 또는 단계(202) 내지 단계(203)에 기초하여, 문서 수신기로 송신한다. 상기 문서가 LAN으로 전송되는 경우, 상기 문서 송신기는 문서 수신기 측 컴퓨터에 로그온하여, 상기 압축 및 암호화된 GDI 문서를 상기 컴퓨터의 문서 폴더에 복사한다. 상기 문서가 e-mail을 통하여 전송되는 경우, 상기 문서 송신기는 상기 압축 및 암호화된 GDI 문서를 상기 문서 수신기에게 첨부로 송신한다.
단계(305)에서, 문서 수신기 측 IM 클라이언트는 수신된 GDI 문서를 압축 해제(decompress)하고, 암호 해제(decrypt)한다.
만약 단계(303)에서 압축이 먼저 수행되고 암호화가 뒤에 수행되었다면, 이 단계에서, 상기 문서 수신기 측 IM 클라이언트는, 먼저, 미리 지정된 암호화 및 암호 해제 알고리즘에 기초하여, 상기 문서 송신기로부터 송신된 상기 GDI 문서를 암호 해제하고, 그 다음 상기 암호 해제된 GDI 문서를 압축 해제한다.
만약 단계(303)에서 암호화가 먼저 수행되고 압축이 뒤에 수행되었다면, 이 단계에서, 상기 문서 수신기 측 IM 클라이언트는, 먼저, 미리 지정된 압축 및 압축 해제 알고리즘에 기초하여, 상기 문서 송신기로부터 송신된 상기 GDI 문서를 압축 해제하고, 그 다음 상기 압축 해제된 GDI 문서를 압호 해제한다.
단계(306)에서 문서 수신기 측 IM 클라이언트는 상기 암호 해제 및 압축 해제된 GDI 문서를 복구(restore)하여, 상기 공유 문서와 일치하는 GDI 문서의 내용을 생성한다. 여기서, 복구 동작은, 단계(302)에서의 변환 동작에 대응한다. 즉, 복구(restoration) 동작은 변환(conversion) 동작의 반대편 프로세스이다. 따라서, 복구 동작은 GDI 문서의 디코드(decode) 동작으로 불릴 수 있다.
이 단계에서, 문서 수신기 측 IM 클라이언트, LAN 상의 컴퓨터, 또는 e-mail 클라이언트는 GDI 문서로부터 GDI 명령 플로우(GDI instruction flow)를 추출하고, 각 GDI 명령에 포함된 GDI 함수 번호에 기초하여 대응하는 GDI 함수를 찾고, 순서대로 각 GDI 함수를 수행하여 GDI 문서를, 문서 송신기 내 공유 문서와 동일한, 문자 및 그림과 같은 형태의 표현으로 복구한다.
단계(307)에서 문서 수신기는 상기 수신된 문서를 체크(check)하고 판독(view)한다.
이 단계에서, 문서 수신기는 상기 복구된 GDI 문서를 직접 오픈하고, 상기 GDI 문서를 체크 및 판독한다. 따라서, 문서 수신기와 동일한 문서를 공유하는 본 발명의 목적은 어떠한 애플리케이션의 도움 없이도 달성된다.
이상 설명한 것은 본 발명에 따라 네트워크상으로 공유 문서를 전송하는 일반적인 방법에 관한 것이고, 상기 방법들의 주요 단계들은 이하에서 보다 상세히 설명된다.
도 4는 도 3의 실시예에 따라 GDI 문서를 생성하는 방법의 흐름도이다. 도 4에 도시된 바와 같이, 단계(302)에서 공유 문서를 GDI 문서로 변경하는 방법은 아래의 단계들을 포함한다.
단계(401)에서, 애플리케이션은, 상기 공유 문서의 가상 프린팅의 수행을 시작한다.
이 단계에서, 우선, 상기 문서 송신기는 상기 공유 문서와 연관된 애플리케이션으로 상기 공유 문서를 오픈하고, 그 다음, 상기 애플리케이션은, 가상 프린터 모듈과 상호동작하는 인터페이스를 오픈함으로써, 상기 공유 문서의 가상 프린팅(virtual printing)을 시작한다.
단계(402)에서, 상기 애플리케이션은, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, yes인 경우 단계(407)을 수행하고, 그렇지 않은 경우 단계(403)을 수행한다.
이 단계에서, 상기 애플리케이션은, 자신의 GDI 함수들이 모두 가상 프린터 모듈에게 송신되었는지 여부에 기초하여, 프린트가 종료되어야 하는지 여부를 결정 한다. 구체적으로, 상기 애플리케이션은, GDI 함수들이 모두 가상 프린터 모듈로 송신되었으면 상기 가상 프린팅은 종료되어야 한다고 결정하고, GDI 함수들이 모두 가상 프린터 모듈로 송신되지 않았으면 상기 가상 프린팅은 종료되면 안된다고 결정한다.
단계(403)에서, 상기 애플리케이션은, 프린터 드라이버 GDI 전송 인터페이스 함수(printer driver GDI transfer interface function)을 호출함으로써, GDI 함수를 가상 프린터로 송신한다.
애플리케이션에 있어서, 풍부한 그림과 문자를 가진 문서는, GDI 서브시스템에 의하여 순서대로 수행되는 일련의 GDI 함수들을 호출함으로써 얻어진 결과이다. 문서의 가상 프린팅 프로세스도 애플리케이션이 문서를 표시하는 것과 동일하다. 즉, 문서의 가상 프린팅 출력도 역시 일련의 GDI 함수들을 수행함으로써 구현될 수 있다. 가상 프린팅 프로세스에는 2개의 특별한 GDI 함수, 즉 StartDoc 함수 및 EndDoc 함수가 있다. StartDoc 함수의 기능은 애플리케이션이 프린터 드라이버에게 새 문서의 프린트의 시작을 알리는 것이고, EndDoc 함수의 기능은 프린터 드라이버에게 문서의 프린트의 종료를 알리는 것이다. 이 단계에서, 애플리케이션은 가상 프린터 모듈로 송신되지 않은 GDI 함수들 중 첫 번째 GDI 함수를 송신한다. 상기 GDI 함수는 GDI 함수의 명칭 및 상세 정보를 포함한다. 상기 상세 정보는, 예를 들면, 상기 함수의 파라미터들의 수, 상기 파라미터들 각각의 구체적인 값과 같은 것들이다.
단계(404)에서, 가상 프린터 모듈은 상기 수신된 GDI 함수를 GDI 명령으로 변환하고, 상기 변환의 결과를 애플리케이션으로 리턴한다.
본 발명에서, GDI 명령은 적어도 아래의 사항들을 포함한다.
1. GDI 함수 번호(number of GDI function): 4 바이트 크기, 각 GDI 함수는 자신의 명칭에 대응하여 유일한 GDI 함수 번호를 가짐;
2. GDI 퍼포먼스의 시리얼 번호(serial number of the GDI performance): 4 바이트 크기, 공유 문서의 GDI 함수의 구현 순서를 가리킴, GDI 퍼포먼스의 시리얼 번호가 작을수록 해당 함수는 더 먼저 수행됨;
상기 GDI 명령(GDI instruction)은 아래를 더 포함한다.
3. GDI 명령의 전체 길이(total length of the GDI instruction): 4 바이트 크기, GDI 명령 내 각 부분의 전체 길이를 나타냄;
4. 파라미터들의 수(number of the parameters): 1 바이트 크기, GDI 함수 내 포함되는 파라미터들의 수를 나타냄;
더욱이, GDI 함수가 n개의 파라미터들을 포함한다면, 상기 GDI 명령은, 또한, 1 번째 파라미터, 2 번째 파라미터, n 번째 파라미터의 길이 및 각 파라미터의 값을 포함하고, 상기 파라미터의 길이의 각각은 4 바이트 크기를 가진다.
예를 들어, GDI 함수 _LineTo(int x, int y)에 대해, 상기 GDI 함수에 대응하는 GDI 번호는 54이고, 상기 GDI 함수의 첫 번째 파라미터 x의 값은 199이고, 두 번째 파라미터 y의 값은 218이다. GDI 함수의 상기 설명에 따르면, 상기 GDI 함수는 표 1에 도시된 포맷으로 변환된다.
GDI 번호 54
GDI 퍼포먼스의 시리얼 번호 5
GDI 명령의 전체 길이 29
파라미터의 수 2
1 번째 파라미터의 길이 4
1 번째 파라미터의 값 199
2 번째 파라미터의 길이 4
2 번째 파라미터의 값 218
이 단계에서, 가상 프린터 모듈은, 표 1에 도시된 GDI 명령의 포맷에 기초하여, 수신된 GDI 함수를 변환하고, 상기 변환이 성공하였는지를 지시하는 GDI 함수의 구현 결과를 애플리케이션에 리턴한다. 본 단계의 구체적인 프로세스는 이하에서 상세히 설명한다.
단계(405) 내지 단계(407)에서, 애플리케이션은, 가상 프린터 모듈에 의하여 리턴되는 GDI 함수의 구현 결과에 기초하여, 상기 변환이 성공하였는지 여부를 결정한다. 만약, 성공하였으면, 애플리케이션은 다음 GDI 함수의 처리를 시작하고, 단계(402)로 돌아간다. 그렇지 않으면, 애플리케이션은, EndDoc 함수를 가상 프린터 모듈로 송신함으로써, 공유 문서의 가상 프린팅을 종료한다. 가상 프린터 모듈은, EndDoc 함수를 수신한 후, GDI 문서를 생성하기 위한 절차를 종료한다.
만약 가상 프린터 모듈이 GDI 함수가 성공적으로 수행되었다는 구현 결과를 리턴하면, 애플리케이션은 다음 GDI 함수를 계속해서 가상 프린터 모듈로 송신한다. 그렇지 않으면, 즉 GDI 함수를 수행하는데 실패하였다는 구현 결과를 애플리케이션이 수신하면, 상기 애플리케이션은 가상 프린터 모듈로의 GDI 함수의 송신을 멈추고, EndDoc 함수를 송신함으로써 공유 문서의 가상 프린팅을 종료한다.
이와 같이, 가상 프린팅을 수행함으로써, 공유 문서는 GDI 문서로 변환된다.
단계(404)에서 GDI 함수를 GDI 명령으로 변환하는 프로세스는 이하에서 보다 상세히 설명된다. 도 5는 도 4의 실시예에 따라 GDI 명령 스트림을 생성하는 방법의 흐름도이다. 도 5에 도시된 바와 같이, 가상 프린팅은 수신된 GDI 함수를 GDI 명령으로 변환하고, 변환의 결과를 GDI 함수의 구현 결과(implementation result)로서 애플리케이션에 리턴한다. 본 방법은 다음의 단계들을 포함한다.
단계(501)에서 프린터 드리이버 GDI 전송 인터페이스 함수(printer driver GDI transfer interface function)이 애플리케이션에 의하여 호출된다.
이 단계에서, 애플리케이션이 프린터 드리이버 GDI 전송 인터페이스 함수를 호출하기 때문에, 상기 인터페이스 함수는 가상 프린터 모듈에서 수행되기 시작하고, 애플리케이션으로부터 송신된 GDI 함수를 변환하기 시작한다.
단계(502)에서 가상 프린터 모듈은 수신된 GDI 함수가 가상 프린팅의 시작을 지시하는 StartDoc 함수인지 여부를 결정하고, 만약 yes이면 단계(503)을 수행하고, 그렇지 않으면 단계(506)를 수행한다.
StartDoc 함수의 기능이 가상 프린터 모듈에게 새로운 문서의 프린트의 시작을 알리는 것이기 때문에, 즉, 애플리케이션이 프린팅을 위한 전송을 수행할 때 StartDoc 함수가 애플리케이션에 의하여 가상 프린터 모듈로 송신되는 첫 번째 GDI 함수이므로, 본 단계에서 수행되는 결정의 목적은, 공유 문서를 GDI 문서로 변환하는 것이 시작되었는지 여부를 결정하는 것이고, 이에 따라 다음 단계들이 결정될 수 있다.
단계(503) 내지 단계(505)에서, 가상 프린터 모듈은 GDI 서브시스템으로부터 GDI 함수들의 번호 및 명칭의 대응 테이블을 얻고, GDI 퍼포먼스의 시리얼 번호의 변수를 0으로 초기화하고, 빈 GDI 문서를 설정하고 오픈한다.
이상에서 수행되는 것은 공유 문서를 GDI 문서로 변환하기 위한 프로세스 중에서 초기화 동작이다.
GDI 서브시스템에 대해, GDI 서브시스템은 대응 테이블(corresponding table)을 포함한다. 상기 대응 테이블 내에는 GDI 함수들의 명칭의 각각이 GDI 함수의 번호와 유일하게 대응된다. GDI 함수의 명칭은, GDI 함수의 대응 번호가 상기 대응 테이블 내에서 발견되는 경우에만 유효하다. 마찬가지로, GDI 함수의 번호는 GDI 함수의 대응 명칭이 발견되는 경우에만 유효하다. 따라서, 이하의 절차에서 애플리케이션으로부터의 GDI 함수의 명칭이 유효한지 여부를 결정하기 위해, 대응 테이블이 획득된다.
애플리케이션은 공유 문서의 내용에 기초하여 대응 GDI 함수를 송신하기 때문에, GDI 퍼포먼스의 시리얼 번호의 변수는 여기서 세트되고, 공유 문서를 수신하는 문서 수신기는 명확하게 GDI 명령의 각각의 수행 순서를 알게 된다. 이와 같이, 공유 문서의 내용은 재생산될 수 있다. 수신된 GDI 함수의 명칭이 유효한 경우, GDI 퍼포먼스의 시리얼 번호의 현재 변수가 GDI 퍼포먼스의 시리얼 번호로 GDI 명령에 기록되어 공유 문서에 포함되는 모든 GDI 명령들 내에서 상기 GDI 명령의 수행 순서를 지시한다. GDI 퍼포먼스의 시리얼 번호의 변수가 더 작은 값을 가지는 GDI 명령이 더 일찍 수행된다.
대응 테이블을 획득하고 GDI 퍼포먼스의 시리얼 번호의 변수를 초기화한 후, 가상 프린터 모듈은 문서를 오픈하는 함수(예를 들어 Open File 함수)를 호출함으로써, 빈 GDI 문서를 설정하고 오픈한다. 이렇게 가상 프린터 모듈은 변환된 GDI 명령 플로우(GDI instruction flow)를 GDI 문서에 기록한다.
이렇게, 가상 프린터 모듈은 초기화를 완료하고, 상기 초기화가 완료되었다는 것을 지시하는 초기화 변수를 생성한다. 예를 들어, 초기화 변수가 1인 경우, 초기화가 완료된다.
단계(506)에서, 가상 프린터 모듈은 초기화가 완료되었는지 여부를 결정하고, yes이면 단계(507)을 수행하고, 그렇지 않으면 단계(503)로 돌아간다.
이 단계에서, 가상 프린터 모듈은, 초기화 변수의 값이 초기화가 완료되었는지를 지시하는지 여부를 결정함으로써, 이어서 수행할 단계들을 결정한다.
단계(507) 내지 단계(508)에서, 가상 프린터 모듈은 수신된 GDI 함수가 ㄱ가가상 프린팅의 종료를 지시하는 EndDoc 함수인지 여부를 결정하고, yes이면 GDI 문서를 클로즈하고 단계(513)를 수행한다. 그렇지 않으면, 단계(509)를 수행한다.
EndDoc 함수는 GDI 서브시스템에 의하여 가상 프린터 모듈에게 문서의 가상 프린팅을 종료할 것을 지시하는데 사용되는 함수이기 때문에, 가상 프린터 모듈은 GDI 함수를 GDI 명령으로 변환하는 것을 중지하고, Close File 함수를 호출함으로써 GDI 문서를 클로즈한다.
단계(509) 내지 단계(510)에서, 가상 프린터 모듈은 현재의 GDI 함수에 대응하는 GDI 함수 번호가 발견되었는지 여부를 결정하고, yes이면, GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산한다. 그렇지 않으면, 단계(513)를 수행한다.
애플리케이션으로부터 현재 수신한 GDI 함수의 명칭에 대응하는 GDI 함수의 번호가 있으면, GDI 함수의 명칭은 유효한 것이다. 즉, 공유 문서의 일부 내용은 GDI 함수의 상기 명칭에 대응한 GDI 함수를 수행함으로써 복구될 수 있다. GDI 함수의 현재 명칭이 유효한 경우, 가상 프린터 모듈은 GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산한다. 본 발명에서, 1의 값을 가지는 GDI 퍼포먼스의 시리얼 번호는 첫 번째 GDI 명령이 발견된 것을 지시하므로, 본 단계에서, GDI 퍼포먼스의 시리얼 번호의 변수의 값에 1이 가산된다. 물론, 0의 값을 가지는 GDI 퍼포먼스의 시리얼 번호가 첫 번째 GDI 명령이 발견된 것을 지시한다면, 본 단계에서 GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산할 필요는 없고, 1은 GDI 함수가 GDI 명령으로 변환된 후에 가산되면 된다.
단계(511) 내지 단계(512)에서, 가상 프린터 모듈은, GDI 명령 스트림의 포맷에 기초하여, GDI 함수 및 GDI 퍼포먼스의 시리얼 번호의 변수를 인코딩함으로서, GDI 명령을 생성하고, 상기 GDI 명령을 GDI 문서에 기록한다.
본 단계에서, 가상 프린터 모듈은, 표 1에 도시된 GDI 명령의 포맷에 기초하여, 현재의 GDI 함수의 내용을 테이블의 대응 부분에 기록한다. GDI 퍼포먼스의 시리얼 번호의 변수는 표 1에서 GDI 퍼포먼스의 시리얼 번호로 사용되고, 단계(509)에서 찾은 현재의 GDI 함수의 명칭에 대응하는 번호는 GDI 함수의 번호로 사용된다. 그리고, 다른 모든 부분들은 애플리케이션으로부터 수신한 GDI 함수 내에 포함된다. 따라서, GDI 함수는 GDI 명령으로 변환된다.
다음, 가상 프린터 모듈은 얻어진 GDI 명령을 단계(505)에서 설정되고 오픈된 GDI 문서로 기록한다.
단계(513)에서 가상 프린터 모듈은 애플리케이션에 구현 결과를 리턴한다.
이 단계에서, 가상 프린터 모듈은, 현재의 GDI 함수를 GDI 명령으로 변환하는 것이 성공하였는지 여부를 지시하는 구현 결과를 상기 GDI 함수의 구현 결과로 택하고, 이를 애플리케이션에 리턴한다. 따라서, 애플리케이션은 GDI 함수를 계속 송신할 지 여부를 결정할 수 있다.
만약, 이 단계가 단계(508) 후에 수행된다면, GDI 문서가 생성되었다는 것을 지시하는 구현 결과는 애플리케이션에 리턴된다. 만약 이 단계가 단계(509) 후에 수행된다면, GDI 함수의 변환이 실패하였다는 것을 지시하는 구현 결과가 애플리케이션으로 리턴된다. 만약 이 단계가 단계(512) 후에 수행된다면, GDI 함수가 성공적으로 변환되었다는 것을 지시하는 구현 결과가 애플리케이션으로 리턴된다.
이렇게, 프린터 드라이버 GDI 전송 인터페이스 함수를 수행함으로써, 가상 프린터 모듈은 GDI 함수를 GDI 명령으로 변환한다.
GDI 명령으로 구성된 GDI 문서를 복구한 후에야 공유 문서와 동일한 내용이 표시될 수 있다. 도 6은 도 3의 실시예에 따라 수신된 GDI 문서를 복구하는 동작의 흐름도이다. 도 6에 도시된 바와 같이, 단계(306)에서 GDI 문서를 복구하는 방법은 다음의 단계들을 포함한다.
단계(601)에서 문서 수신기 측 네트워크 터미널은 그래프 디바이스 콘텍스트(graph DC: graph Device Context)에 대해 자신의 GDI 서브시스템에 적용한다.
GDI 서브시스템에 의하여 할당되는 그래프 핸들(graph handle)인 그래프 DC는 GDI 문서를 복구하기 위한 가상 공간(virtual space)을 제공한다. GDI 문서 내의 각 GDI 명령은 그래프 DC에서 순서대로 처리될 수 있다.
단계(602) 내지 단계(603)에서, 문서 수신기 측 네트워크 터미널은 GDI 문서 내의 모든 GDI 명령을 판독하고, GDI 명령 내 GDI 퍼포먼스의 시리얼 번호에 기초하여 오름차 순으로 모든 GDI 명령을 정렬한다.
문서 수신기 측 네트워크 터미널은 우선 GDI 문서로부터 모든 GDI 명령을 판독하고, 그 다음 GDI 명령들로부터 GDI 퍼포먼스(GDI performance)의 시리얼 번호를 추출하고, GDI 퍼포먼스의 시리얼 번호의 변수들을 작은 것에부터 큰 것의 순으로 대응 GDI 명령들을 정렬한다. 이렇게, 각 GDI 명령은, 공유 문서의 내용을 복구하기 위해, 다음 단계들에서 정렬된 순서로 수행될 수 있다.
단계(604)에서 문서 수신기 측 네트워크 터미널은 GDI 퍼포먼스의 시리얼 번호의 변수를 GDI 퍼포먼스의 시리얼 번호의 최소값으로 초기화한다.
문서 수신기 측 e-mail 클라이언트, LAN 상의 컴퓨터, 또는 IM 클라이언트에 대해, GDI 퍼포먼스의 시리얼 번호의 변수는 GDI 명령을 수행하는 인덱스이다. 구체적으로, 수행되는 GDI 명령 내 GDI 퍼포먼스의 시리얼 번호는 GDI 퍼포먼스의 시리얼 번호의 변수의 현재 값과 동일하다. 이 단계에서, GDI 퍼포먼스의 시리얼 번호의 변수는 GDI 퍼포먼스의 시리얼 번호의 변수의 최소값으로 초기화되어, GDI 퍼포먼스의 최소 시리얼 번호를 가진 GDI 명령부터 시작하여 GDI 명령들을 수행한다.
단계(605)에서 문서 수신기 측 네트워크 터미널은, GDI 퍼포먼스의 시리얼 번호의 변수에 대응하는 GDI 명령이 발견되었는지 여부를 결정하고, yes이면 단계(606)를 수행하고, 아니면 단계(609)를 수행한다.
단계(606) 내지 단계(608)에서, 문서 수신기 측 네트워크 터미널은 GDI 명령 내 GDI 함수의 번호, 및 GDI 함수의 상기 번호에 대응하는 GDI 함수를 획득하고, 애플리케이션을 통하여 얻어진 그래프 DC 내에서 GDI 함수를 수행하고, GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산하고, 단계(605)로 돌아간다.
문서 수신기 측 네트워크 터미널은 현재의 GDI 명령으로부터 GDI 함수의 번호를 추출하고, GDI 함수의 번호 및 명칭의 대응 테이블 내에서 GDI 함수의 명칭을 찾아내고, 상기 GDI 함수를 수행하여 공유 문서의 해당 부분 내용을 복구한다. 그리고 나서, 네트워크 터미널은 GDI 퍼포먼스의 시리얼 번호에 1을 가산하고, 수행할 다음 GDI 명령을 찾는다.
단계(609) 내지 단계(610)에서, 문서 수신기 측 네트워크 터미널은 GDI 퍼포먼스의 시리얼 번호의 변수보다 더 큰 GDI 퍼포먼스의 시리얼 번호를 가진 GDI 명령이 있는지 여부를 결정하고, yes이면 단계(608)로 돌아간다. 그렇지 않으면, GDI 문서를 클로즈하고, GDI 문서의 복구를 위한 절차를 종료한다.
이 단계에서, GDI 퍼포먼스의 시리얼 번호의 변수보다 더 큰 GDI 명령의 시리얼 번호를 가진 GDI 명령이 있는지 여부를 결정하는 함수는, 수행되지 않은 GDI 명령이 있는지 여부를 결정하는 것이다.
이렇게, e-mail 클라이언트, LAN 상의 컴퓨터, 또는 IM 클라이언트와 같은 문서 수신기 측 네트워크 터미널은, 문서 송신기로부터 송신된 GDI 문서의 복구를 완료한다. 이 다음, 문서 수신기는 문서 송신기의 공유 문서와 완전히 동일한 내용을 볼 수 있다.
본 발명의 상기 방법들에 기초하여, 본 발명은 또한 네트워크상으로 문서를 전송하는 시스템을 제공한다. 문서 송신기 및 문서 수신기 외에도, 상기 시스템은 가상 프린터 모듈 및 복구 모듈을 포함한다. 가상 프린터 모듈은 문서 송신기의 공유 문서를 GDI 문서로 변환하고, 복구 모듈은 GDI 문서의 복구를 수행하여 문서 송신기의 공유 문서와 동일한 내용을 얻을 수 있도록 한다.
도 7은 본 발명의 시스템의 실시예의 구성을 도시한 블록도이다. 도 7에 도시된 바와 같이, 본 시스템은 문서 송신기(document sender), 문서 수신기(document receiver), 가상 프린터 모듈(virtual printer module), 및 복구 모듈(restoration module)을 포함한다.
문서 송신기는 송신할 공유 문서를 가상 프린터 모듈로 출력하고, 가상 프린터 모듈로부터 공유 문서의 변환을 통해 얻어진 GDI 문서를 수신하고, 상기 GDI 문서를 상기 문서 수신기에 송신하는데 사용된다. 상기 가상 프린터 모듈은 상기 문서 송신기로부터 상기 공유 문서를 수신하고, 가상 프린팅을 수행하여 상기 공유 문서를 상기 GDI 문서로 변환하고, 상기 GDI 문서를 상기 문서 송신기로 출력하는데 사용된다. 상기 복구 모듈은 상기 문서 수신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 복구하고 - 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일함 -, 상기 복구된 GDI 문서를 상기 문서 수신기에게 출력하는데 사용된다. 상기 문서 수신기는 상기 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 상기 복구 모듈로 출력하고, 상기 복구 모듈로부터 상기 공유 문서와 동일한 내용을 가지는 복구된 GDI 문서를 수신하여 상기 수신기의 사용자에게 상기 내용을 볼 수 있도록 제공한다.
시스템의 전송 자원을 절약하기 위하여 문서를 압축하고 압축 해제하는 기능을 위하여, 본 발명의 시스템은 도 7에 도시된 압축 모듈(compression module) 및 압축 해제 모듈(decompression module)을 더 포함할 수 있다. 상기 압축 모듈은 상기 문서 송신기로부터 GDI 문서를 수신하고, 상기 GDI 문서를 압축하여 상기 압축된 GDI 문서를 상기 문서 송신기로 출력하는데 사용된다. 상기 압축 해제 모듈은 상기 문서 수신기로부터 송신된 압축된 GDI 문서(compressed GDI document)를 수신하고, 상기 GDI 문서를 압축 해제하고, 상기 압축 해제된 GDI 문서(decompressed GDI document)를 상기 문서 수신기에 출력하는데 사용된다. 이 경우, 상기 가상 프린터 모듈로부터 GDI 문서를 수신한 후, 상기 문서 송신기는 상기 GDI 문서를 상기 압축 모듈로 출력하고, 상기 압축 모듈로부터 상기 압축된 GDI 문서를 수신하고, 상기 압축된 GDI 문서를 상기 문서 수신기로 송신한다. 마찬가지로, 문서 수신기는 수신한 압축된 GDI 문서를 상기 압축 해제 모듈로 송신하고, 상기 압축 해제 모듈로부터 압축 해제된 GDI 문서를 수신하고, 상기 압축 해제된 GDI 문서를 상기 복구 모듈이 처리할 수 있도록 상기 복구 모듈로 출력한다.
삭제
시스템의 전송 보안을 향상시키기 위하여 문서를 암호화(encrypting)하고 암호 해제(decrypting)하는 기능을 위하여, 본 발명의 시스템은 도 7에 도시된 암호화 모듈(encrypting module) 및 암호 해제 모듈(decrypting module)을 더 포함할 수 있다.
상기 암호화 모듈은 상기 문서 송신기로부터 GDI 문서를 수신하고, 상기 GDI 문서를 암호화하고, 상기 암호화된 GDI 문서를 상기 문서 송신기에 출력하는데 사용된다. 상기 암호 해제 모듈은 상기 문서 수신기로부터 송신된 암호화된 GDI 문서를 수신하고, 상기 암호화된 GDI 문서를 암호 해제하고, 상기 암호 해제된 GDI 문서를 상기 문서 수신기로 송신하는데 사용된다. 이 경우, 가상 프린터 모듈로부터 GDI 문서를 얻은 후에, 상기 문서 송신기는 상기 GDI 문서를 상기 암호화 모듈로 송신하고, 상기 암호화 모듈로부터 암호화된 GDI 문서(encrypted GDI document)를 수신하고, 상기 암호화된 GDI 문서를 상기 문서 수신기로 송신한다. 마찬가지로, 상기 무선 수신기는 수신된 암호화된 GDI 문서를 상기 암호 해제 모듈로 송신하고, 상기 암호 해제 모듈로부터 암호 해제된 GDI 문서(decrypted GDI document)를 수신하고, 상기 암호 해제된 GDI 문서를 상기 복구 모듈로 출력하여 상기 복구 모듈이 처리하도록 한다.
더욱이, 암호화/암호해제, 및 압축/압축해제의 함수들은 본 시스템에서 동시에 구현될 수 있다. 이 경우, 본 발명의 시스템은 암호화/암호해제 모듈, 및 압축/압축해제 모듈을 동시에 포함하여야 한다. 암호화/암호해제 프로세스, 및 압축/압축해제 프로세스의 순서는 본 발명에서 제한되지 않는다. 문서 송신기는 가상 프린터 모듈로부터 송신된 GDI 문서를 암호화 모듈이 먼저 처리하도록 송신하고, 그 다음 암호화 모듈로부터의 암호화된 GDI 문서를 압축 모듈로 송신할 수 있다. 또는, 문서 송신기는 가상 프린터 모듈로부터 송신된 GDI 문서를 압축 모듈이 먼저 처리하도록 송신하고, 그 다음 압축 모듈로부터의 압축된 GDI 문서를 암호화 모듈로 송신할 수 있다. 마찬가지로, 문서 수신기는 문서 송신기로부터 송신된 암호화 및 압축된 GDI 문서를 압축 해제 모듈이 처리하도록 먼저 송신하고, 다음 상기 압축 해제 모듈로부터 송신된 압축해제된 GDI 문서를 암호 해제 모듈이 처리하도록 암호 해제 모듈로 송신할 수 있다. 또는, 문서 수신기는 문서 송신기로부터 송신된 암호화 및 압축된 GDI 문서를 암호 해제 모듈이 처리하도록 먼저 송신하고, 다음 상기 암호 해제 모듈로부터 송신된 암호 해제된 GDI 문서를 압축 해제 모듈이 처리하도록 압축 해제 모듈로 송신할 수 있다.
본 발명의 시스템에서, 가상 프린터 모듈, 압축 모듈, 및 암호화 모듈은 모두 문서 송신기에 연결되고, 독립적인 엔터티 세트(entity set)이거나, 문서 송신기에 통합될 수 있다. 마찬가지로, 복구 모듈, 압축 해제 모듈, 및 암호 해제 모듈은 모두 문서 수신기에 연결되고, 독립적인 엔터티 세트(entity set)이거나, 문서 송신기에 통합될 수 있다.
삭제
본 발명의 실시예의 네트워크상으로 공유 문서를 전송하는 방법에 따르면, 문서의 수신자는, 애플리케이션의 제한을 받지 않고, 공유 문서의 내용을 볼 수 있다.
이상의 설명은 본 발명의 실시예를 설명하기 위한 것이며, 본 발명의 보호 범위를 제한하기 위한 목적으로 사용되어서는 안 된다. 본 발명의 기술적 사상의 범위 내에서 모든 변형, 균등 치환, 및 개량은 모두 본 발명의 보호 범위에 포함된다.
본 발명에 따르면, 공유 문서의 수신기는 상기 문서와 연관된 소프트웨어를 설치하고 있지 않은 경우에도 공유 문서의 내용을 동일하게 판독할 수 있다. 특히, 본 발명은 다음과 같은 장점이 있다.
1. 그래프 운영 인터페이스(graph operating interface)를 가지는 모든 운영 체제가 GDI(graph device interface) 서브시스템을 포함하고, 상기 서브시스템은 상기 운영 시스템 내의 애플리케이션들에 의하여 호출되는 다중 GDI 함수를 제공하기 때문에, 본 발명에서는, 공유 문서로부터 변환되는 GDI 문서가 전송되고, 문서 수신기는 자신의 GDI 서브시스템에 따라 단지 GDI 문서 내의 GDI 명령을 순서대로 수행함으로써 상기 공유 문서의 내용을 복구할 수 있다. 즉, 문서 수신기는 연관된 어떤 애플리케이션의 설치를 필요로 하지 않고 공유 문서를 볼 수 있고, 이는 문서 수신기가 공유 문서의 내용을 판독함에 있어서의 어려움을 줄여준다.
2. GDI 함수는 벡터 데이터 및 비 벡터 데이터(non-vector data)를 동시에 지원하는 강력한 함수를 가지고 있기 때문에, 변환된 GDI 문서는 공유 문서와 색체, 선등과 같은 면에서 동일하다. 즉, GDI 문서와 공유 문서 간의 일관성은 더 낫다.

Claims (32)

  1. 네트워크상으로 공유 문서를 전송하는 방법에 있어서,
    가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI(Graph Device Interface) 문서로 변환하는 단계;
    문서 수신기에 의하여 네트워크를 통하여 문서 송신기로부터 송신된 상기 GDI 문서를 수신하는 단계; 및
    상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 복구하는 단계 - 상기 복구된 GDI 문서의 내용은 상기 전송할 공유 문서의 내용과 동일함 -
    를 포함하고,
    상기 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI 문서로 변환하는 단계는,
    상기 공유 문서의 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하는 단계; 및
    상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료하는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 공유 문서를 전송하는 방
    법.
  2. 제1항에 있어서,
    상기 문서 송신기에 의하여 상기 GDI 문서를 압축하는 단계; 및
    상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 압축 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 공유 문서를 전송하는 방법.
  3. 제1항에 있어서,
    상기 문서 송신기에 의하여, 상기 GDI 문서를 암호화하는 단계; 및
    상기 문서 수신기에 의하여, 상기 수신된 GDI 문서를 암호 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 공유 문서를 전송하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 문서 수신기에 의하여 네트워크를 통하여 상기 문서 송신기로부터 송신된 상기 GDI 문서를 수신하는 상기 단계는,
    인스턴트 메시징 툴을 가지고 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계;
    e-mail을 통하여 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계; 및
    상기 문서 송신기 측 네트워크 터미널에 로그온함으로써 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계
    중 적어도 하나를 포함하는 것을 특징으로 하는 네트워크상으로 공유 문서를 전송하는 방법.
  5. 네트워크상으로 문서를 전송하는 시스템에 있어서,
    문서 송신기;
    문서 수신기;
    가상 프린터 모듈; 및
    복구 모듈
    을 포함하고,
    상기 문서 송신기는 송신할 공유 문서를 상기 가상 프린터 모듈로 출력하고,
    상기 가상 프린터 모듈로부터 상기 공유 문서가 변환된 GDI 문서를 수신하고, 상기 GDI 문서를 상기 문서 수신기에 송신하고,
    상기 가상 프린터 모듈은 상기 문서 송신기로부터 상기 공유 문서를 수신하고, 가상 프린팅을 수행하여 상기 공유 문서를 상기 GDI 문서로 변환하고, 상기 GDI 문서를 상기 문서 송신기에게 출력하고,
    상기 복구 모듈은 상기 문서 수신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 복구하고 - 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일함 -, 상기 복구된 GDI 문서를 상기 문서 수신기에게 출력하고,
    상기 문서 수신기는 상기 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 상기 복구 모듈로 출력하고, 상기 복구 모듈로부터 상기 공유 문서와 동일한 내용을 가지는 상기 복구된 GDI 문서를 수신하고,
    상기 가상 프린터 모듈은,
    상기 공유 문서의 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하고; 및 상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써,
    전송할 공유 문서를 GDI 문서로 변환하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  6. 제5항에 있어서,
    압축 모듈; 및
    압축 해제 모듈
    을 더 포함하고,
    상기 압축 모듈은 상기 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 압축하고, 상기 압축된 GDI 문서를 상기 문서 송신기로 출력하고,
    상기 문서 송신기는 상기 가상 프린터 모듈로부터 송신된 상기 GDI 문서를 상기 압축 모듈로 출력하고, 상기 압축 모듈로부터 송신된 상기 압축된 GDI 문서를 상기 문서 수신기로 송신하고,
    상기 압축 해제 모듈은 상기 문서 수신기로부터 송신된 상기 압축된 GDI 문서를 수신하고, 상기 압축된 GDI 문서를 압축 해제하고, 상기 압축 해제된 GDI 문서를 상기 문서 수신기에 출력하고,
    상기 문서 수신기는 상기 문서 송신기로부터 송신된 상기 압축된 GDI 문서를 상기 압축 해제 모듈로 송신하고, 상기 압축 해제 모듈로부터 송신된 상기 압축 해제된 GDI 문서를 상기 복구 모듈로 출력하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  7. 제6항에 있어서,
    상기 압축 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트(entity set)이고,
    상기 압축 해제 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트인 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  8. 제5항에 있어서,
    암호화 모듈; 및
    암호 해제 모듈
    을 포함하고,
    상기 암호화 모듈은 상기 문서 송신기로부터 GDI 문서를 수신하고, 상기 GDI 문서를 암호화하고, 상기 암호화된 GDI 문서를 상기 문서 송신기에 출력하고,
    상기 문서 송신기는 상기 가상 프린터 모듈로부터 송신된 GDI 문서를 상기 암호화 모듈로 출력하고, 상기 암호화 모듈로부터 송신된 상기 암호화된 GDI 문서를 상기 문서 수신기로 송신하고,
    상기 암호 해제 모듈은 상기 문서 수신기로부터 송신된 암호화된 GDI 문서를 수신하고, 상기 암호화된 GDI 문서를 암호 해제하고, 상기 암호 해제된 GDI 문서를 상기 문서 수신기로 송신하고,
    상기 문서 수신기는 상기 문서 송신기로부터 송신된 암호화된 GDI 문서를 상기 암호 해제 모듈로 송신하고, 상기 암호 해제 모듈로부터 송신된 상기 암호 해제된 GDI 문서를 상기 복구 모듈로 출력하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  9. 제8항에 있어서,
    상기 암호화 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트(entity set)이고,
    상기 암호 해제 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트인 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  10. 제5항 내지 제9항 중 어느 한 항에 있어서,
    상기 가상 프린터 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트(entity set)이고,
    상기 복구 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트인 것을 특징으로 하는 네트워크상으로 문서를 전송하는 시스템.
  11. 가상 프린터 장치에 있어서,
    문서 송신기; 및
    가상 프린터 모듈을 포함하고,
    상기 문서 송신기는 송신할 공유 문서를 상기 가상 프린터 모듈로 출력하고, 상기 가상 프린터 모듈로부터 상기 공유 문서가 변환된 GDI 문서를 수신하고, 상기 GDI 문서를 문서 수신기로 송신하고,
    상기 가상 프린터 모듈은 상기 문서 송신기로부터 상기 공유 문서를 수신하고, 가상 프린팅을 수행하여 상기 공유 문서를 상기 GDI 문서로 변환하고, 상기 GDI 문서를 상기 문서 송신기로 출력하고,
    상기 가상 프린터 모듈은,
    상기 공유 문서의 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하고; 및
    상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써,
    전송할 공유 문서를 GDI 문서로 변환하는 것을 특징으로 하는 가상 프린터 장치.
  12. 제11항에 있어서,
    압축 모듈
    을 더 포함하고,
    상기 압축 모듈은 상기 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 압축하고, 상기 압축된 GDI 문서를 상기 문서 송신기로 출력하고,
    상기 문서 송신기는 상기 가상 프린터 모듈로부터 송신된 상기 GDI 문서를 상기 압축 모듈로 출력하고, 상기 압축 모듈로부터 송신된 상기 압축된 GDI 문서를 상기 문서 수신기로 송신하는 것을 특징으로 하는 가상 프린터 장치.
  13. 제12항에 있어서,
    암호화 모듈
    을 더 포함하고,
    상기 암호화 모듈은 상기 문서 송신기로부터 GDI 문서를 수신하고, 상기 GDI 문서를 암호화하고, 상기 암호화된 GDI 문서를 상기 문서 송신기에 출력하고,
    상기 문서 송신기는 상기 가상 프린터 모듈로부터 송신된 GDI 문서를 상기 암호화 모듈로 출력하고, 상기 암호화 모듈로부터 송신된 상기 암호화된 GDI 문서를 상기 문서 수신기로 송신하는 것을 특징으로 하는 가상 프린터 장치.
  14. 제13항에 있어서,
    상기 압축 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트이고,
    상기 암호화 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트이고,
    상기 가상 프린터 모듈은 상기 문서 송신기에 통합되거나 또는 독립적인 엔터티 세트인 것을 특징으로 하는 가상 프린터 장치.
  15. 복구 장치에 있어서,
    문서 수신기; 및
    복구 모듈
    을 포함하고,
    상기 복구 모듈은 공유 문서로부터 변환되는 GDI 문서를 상기 문서 수신기로부터 수신하고, 상기 GDI 문서를 복구하고 - 상기 복구된 GDI 문서의 내용은 공유 문서의 내용과 동일함 -, 상기 복구된 GDI 문서를 상기 문서 수신기에게 출력하고,
    상기 문서 수신기는 문서 송신기로부터 상기 GDI 문서를 수신하고, 상기 GDI 문서를 상기 복구 모듈로 출력하고, 상기 복구 모듈로부터 상기 공유 문서와 동일한 내용을 가지는 상기 복구된 GDI 문서를 수신하고,
    상기 GDI 문서는,
    상기 공유 문서의 애플리케이션에 의하여, 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하고; 및
    상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써,
    전송할 공유 문서로부터 변환되는 것을 특징으로 하는 복구 장치.
  16. 제15항에 있어서,
    압축 해제 모듈
    을 더 포함하고,
    상기 압축 해제 모듈은 상기 문서 수신기로부터 송신된 압축된 GDI 문서를 수신하고, 상기 압축된 GDI 문서를 압축 해제하고, 상기 압축 해제된 GDI 문서를 상기 문서 수신기에 출력하고,
    상기 문서 수신기는 상기 문서 송신기로부터 송신된 상기 압축된 GDI 문서를 상기 압축 해제 모듈로 송신하고, 상기 압축 해제 모듈로부터 송신된 상기 압축 해제된 GDI 문서를 상기 복구 모듈로 출력하는 것을 특징으로 하는 복구 장치.
  17. 제16항에 있어서,
    암호 해제 모듈
    을 더 포함하고,
    상기 암호 해제 모듈은 상기 문서 수신기로부터 송신된 암호화된 GDI 문서를 수신하고, 상기 암호화된 GDI 문서를 암호 해제하고, 상기 암호 해제된 GDI 문서를 상기 문서 수신기로 송신하고,
    상기 문서 수신기는 상기 문서 송신기로부터 송신된 상기 암호화된 GDI 문서를 상기 암호 해제 모듈로 송신하고, 상기 암호 해제 모듈로부터 송신된 상기 암호 해제된 GDI 문서를 상기 복구 모듈로 출력하는 것을 특징으로 하는 복구 장치.
  18. 제17항에 있어서,
    상기 압축 해제 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트이고,
    상기 암호 해제 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트이고,
    상기 복구 모듈은 상기 문서 수신기에 통합되거나 또는 독립적인 엔터티 세트인 것을 특징으로 하는 복구 장치.
  19. 네트워크상으로 문서를 전송하는 방법에 있어서,
    문서 송신기에 의하여 가상 프린팅을 수행함으로써 전송할 공유 문서를 GDI(Graph Device Interface) 문서로 변환하는 단계; 및
    상기 문서 송신기에 의하여 네트워크를 통하여 상기 GDI 문서를 문서 수신기로 송신하는 단계
    를 포함하고,
    상기 전송할 공유 문서를 GDI 문서로 변환하는 단계는,
    상기 공유 문서의 애플리케이션에 의하여, 상기 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하는 단계; 및
    상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료하는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  20. 제19항에 있어서,
    상기 문서 송신기에 의하여 상기 GDI 문서를 압축하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  21. 제19항 또는 제20항에 있어서,
    상기 문서 송신기에 의하여 상기 GDI 문서를 암호화하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  22. 제19항에 있어서,
    상기 가상 프린팅이 종료되어야 하는지 여부를 결정하는 단계는,
    상기 공유 문서의 애플리케이션에 의하여, 상기 공유 문서의 내용에 기초하여 호출된 GDI 함수가 상기 가상 프린터 모듈로 모두 송신되었는지 여부를 결정하고, 만약 GDI 함수가 상기 가상 프린터 모듈로 모두 송신되었다면 상기 가상 프린팅이 종료되어야 한다고 결정하고, 그렇지 않다면 상기 가상 프린팅이 종료되지 않아야 한다고 결정하는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  23. 제19항에 있어서,
    상기 GDI 명령은 적어도 GDI 함수의 명칭, GDI 함수의 번호, 및 GDI 퍼포먼스의 시리얼 번호를 포함하고,
    상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 상기 GDI 명령으로 변환하고 상기 변환의 상기 결과를 상기 공유 문서의 애플리케이션에게 리턴하는 단계는,
    상기 공유 문서의 애플리케이션에 의하여 프린트 드라이버 GDI 전송 인터페이스 함수를 호출하고, 상기 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수가 상기 공유 문서의 가상 프린팅의 시작을 지시하는 GDI 함수인지 여부를 결정하고, 만약 그러면 상기 가상 프린터 모듈에 의하여 GDI 서브시스템으로부터 GDI 함수의 번호 및 이름의 대응 테이블을 얻고, GDI 퍼포먼스의 시리얼 번호의 변수를 0으로 초기화하고, 빈 GDI 문서를 설정 및 오픈하고, 상기 초기화의 완료 상태를 지시하는 초기화 변수를 생성하는 단계;
    그렇지 않으면, 상기 초기화 변수에 기초하여, 상기 초기화가 완료되었는지 여부를 결정하고, 만약 초기화가 완료되었으면, 상기 수신된 GDI 함수가 상기 공유 문서의 상기 가상 프린팅의 끝을 지시하는 GDI 함수인지 여부를 결정하고, 만약 그러면 상기 GDI 문서를 클로즈하고, 상기 가상 프린터 모듈에 의하여 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하고, 만약 상기 수신된 GDI 함수가 상기 공유 문서의 상기 가상 프린팅의 끝을 지시하는 GDI 함수가 아니면 현재의 GDI 함수에 대응하는 GDI 함수의 번호가 발견되었는지 여부를 결정하고, 만약 그러면 GDI 퍼포먼스의 상기 시리얼 번호의 변수에 1을 가산하고, 상기 GDI 함수의 명칭, GDI 퍼포먼스의 상기 시리얼 번호의 변수, 및 상기 GDI 함수를 GDI 명령 스트림의 포맷에 기초하여 인코딩하여 GDI 명령을 생성하고, 상기 GDI 명령을 상기 GDI 문서에 기록하고, 그렇지 않으면 상기 가상 프린터 모듈에 의하여 상기 변환의 상기 결과를 상기 공유 문서의 애플리케이션에게 리턴하는 단계; 및
    만약 초기화가 완료되지 않았으면, 상기 가상 프린터 모듈에 의하여 GDI 서브시스템으로부터 GDI 함수의 번호 및 이름의 대응 테이블을 얻고, GDI 퍼포먼스의 시리얼 번호의 변수를 0으로 초기화하고, 빈 GDI 문서를 설정 및 오픈하고, 상기 초기화의 완료 상태를 지시하는 초기화 변수를 생성하는 상기 단계로 돌아가는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  24. 제23항에 있어서,
    상기 GDI 명령은 적어도 현재 GDI 인터페이스 명령의 전체 길이, 파라미터의 수, 각 파라미터의 파라미터 값, 및 파라미터 값의 길이를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  25. 제19항 또는 제20항 중 어느 한 항에 있어서,
    상기 문서 송신기에 의하여 네트워크를 통하여 상기 GDI 문서를 문서 수신기로 송신하는 상기 단계는,
    상기 문서 송신기에 의하여, 인스턴트 메시징 툴을 가지고 상기 GDI 문서를 상기 문서 수신기로 송신하는 단계;
    상기 문서 송신기에 의하여, e-mail을 통하여 상기 GDI 문서를 상기 문서 수신기로 송신하는 단계; 및
    상기 문서 송신기에 의하여, 상기 문서 수신기 측 네트워크 터미널에 로그온함으로써 상기 GDI 문서를 상기 문서 수신기로 송신하는 단계
    중 적어도 하나를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 전송하는 방법.
  26. 네트워크상으로 문서를 수신하는 방법에 있어서,
    문서 수신기에 의하여 네트워크를 통하여 문서 송신기로부터 송신된 GDI 문서를 수신하는 단계 - 상기 GDI 문서는 공유 문서로부터 변환된 것임 -; 및
    상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 복구하는 단계 - 상기 복구된 GDI 문서의 내용은 상기 공유 문서의 내용과 동일함 -
    를 포함하고,
    상기 GDI 문서는,
    상기 공유 문서의 애플리케이션에 의하여, 가상 프린팅이 종료되어야 하는지 여부를 결정하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우라면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서를 생성하기 위한 현재의 절차를 종료하고, 만약 상기 가상 프린팅이 종료되어야 하는 경우가 아니라면 가상 프린터 모듈에 의하여 상기 수신된 GDI 함수를 GDI 명령으로 변환하고 상기 변환의 결과를 상기 공유 문서의 애플리케이션에게 리턴하고; 및
    상기 변환이 성공하였는지 여부를 결정하고, 만약 상기 변환이 성공하였으면 다음 GDI 함수의 처리를 시작하고, 만약 상기 변환이 성공하지 않았으면 상기 공유 문서의 상기 가상 프린팅을 종료하고 상기 GDI 문서의 생성을 위한 절차를 종료함으로써,
    전송할 공유 문서로부터 변환되는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  27. 제26항에 있어서,
    상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 압축 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  28. 제26항 또는 제27항에 있어서,
    상기 문서 수신기에 의하여 상기 수신된 GDI 문서를 암호 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  29. 제26항에 있어서,
    상기 GDI 문서는 적어도 하나의 GDI 명령을 포함하고,
    상기 수신된 GDI 문서를 복구하는 상기 단계는,
    상기 GDI 문서 내의 상기 GDI 명령에 대응하는 그래프 디바이스 함수(graph device function)를 수행하는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  30. 제29항에 있어서,
    상기 수신된 GDI 문서를 복구하는 상기 단계는,
    상기 문서 수신기 측 네트워크 터미널에 의하여 그래프 디바이스 콘텍스트(Graph Device Context)에 대해 그래프 디바이스 서브시스템에 적용하고, 상기 수신된 GDI 문서 내의 모든 GDI 명령을 판독하고, 상기 모든 GDI 명령을 상기 GDI 명령 내의 GDI 퍼포먼스의 시리얼 번호에 기초하여 오름차 순으로 정렬하고, GDI 퍼포먼스의 상기 시리얼 번호의 변수를 GDI 퍼포먼스의 상기 시리얼 번호의 최소값으로 초기화하는 단계;
    GDI 퍼포먼스의 상기 시리얼 번호의 변수에 대응하는 GDI 명령이 발견되었는지 여부를 결정하고, 만약 발견되었으면, 현재 GDI 명령 내의 GDI 함수의 번호 및 상기 GDI 함수의 번호에 대응하는 GDI 함수를 획득하고, 애플리케이션을 통하여 얻어진 그래프 디바이스 콘텍스트 내에서 상기 GDI 함수를 수행하고, GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산하고, GDI 퍼포먼스의 상기 시리얼 번호의 변수에 대응하는 상기 GDI 명령이 발견되었는지 여부를 결정하는 상기 단계로 돌아가는 단계; 및
    그렇지 않으면, GDI 퍼포먼스의 시리얼 번호의 변수보다 더 큰 GDI 퍼포먼스의 시리얼 번호를 가진 GDI 명령이 있는지 여부를 결정하고, 만약 그러면 GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산하고, GDI 퍼포먼스의 시리얼 번호의 변수에 1을 가산하고, GDI 퍼포먼스의 상기 시리얼 번호의 변수에 대응하는 상기 GDI 명령이 발견되었는지 여부를 결정하는 상기 단계로 돌아가고, 그렇지 않으면, 상기 GDI 문서를 클로즈하고 상기 GDI 문서를 복구하기 위한 절차를 종료하는 단계
    를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  31. 제26항에 있어서,
    상기 문서 수신기에 의하여 네트워크를 통하여 문서 송신기로부터 송신된 GDI 문서를 수신하는 상기 단계는,
    인스턴트 메시징 툴을 가지고 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계;
    e-mail을 통하여 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계; 및
    상기 문서 송신기 측 네트워크 터미널에 로그온함으로써 상기 문서 송신기로부터 송신된 상기 GDI 문서를 상기 문서 수신기에 의하여 수신하는 단계
    중 적어도 하나를 포함하는 것을 특징으로 하는 네트워크상으로 문서를 수신하는 방법.
  32. 삭제
KR1020077016231A 2004-12-17 2005-12-15 네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치 KR100935798B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200410101342.9 2004-12-17
CN2004101013429A CN1791070B (zh) 2004-12-17 2004-12-17 一种在网络上传输文档的方法

Publications (2)

Publication Number Publication Date
KR20070097507A KR20070097507A (ko) 2007-10-04
KR100935798B1 true KR100935798B1 (ko) 2010-01-06

Family

ID=36587543

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077016231A KR100935798B1 (ko) 2004-12-17 2005-12-15 네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치

Country Status (6)

Country Link
US (1) US9037654B2 (ko)
EP (1) EP1832971B1 (ko)
JP (1) JP2008524879A (ko)
KR (1) KR100935798B1 (ko)
CN (1) CN1791070B (ko)
WO (1) WO2006063528A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8311288B2 (en) * 2009-06-15 2012-11-13 Xerox Corporation Biometric data encryption
EP2695047B1 (en) 2011-04-04 2019-07-03 BlackBerry Limited Document management system using printer emulation
CN102207837A (zh) * 2011-04-26 2011-10-05 北京猛犸科技有限公司 一种基于虚拟打印方式获取数据的方法及***
CN102355634B (zh) * 2011-06-29 2015-11-25 惠州Tcl移动通信有限公司 文档传输方法及其手机
CN102663133B (zh) * 2012-04-28 2015-06-24 广东威创视讯科技股份有限公司 一种文件发送方法和装置
EP3039527A4 (en) * 2013-09-30 2017-04-26 S-Printing Solution Co., Ltd. System and method for providing cloud printing service
CN105704215B (zh) * 2016-01-08 2019-05-28 全时云商务服务股份有限公司 文件共享***及相应的文件发送方法及装置
US10575120B2 (en) 2016-02-27 2020-02-25 Ray Wang Method of autonomous social media system
CN107038273B (zh) * 2016-11-22 2020-05-22 拓卡奔马机电科技有限公司 基于计算机***中gdi的裁床控制方法及***、自动裁床
CN107689980A (zh) * 2017-04-25 2018-02-13 平安科技(深圳)有限公司 保险文档推送方法、装置及计算机可读存储介质
US10791077B2 (en) 2017-08-08 2020-09-29 Snap Inc. Application-independent messaging system
US10426282B1 (en) 2018-03-20 2019-10-01 Margaret HAMILTON Personal foldable server tray apparatus
US11054806B2 (en) 2018-05-21 2021-07-06 Barbara HARDWICK Method and system for space planning with created prototype objects
US11134036B2 (en) 2019-07-05 2021-09-28 Snap Inc. Event planning in a content sharing platform
CN110750961A (zh) * 2019-09-12 2020-02-04 北京真视通科技股份有限公司 一种文件格式转换方法、装置、计算机设备和存储介质
US11411900B2 (en) 2020-03-30 2022-08-09 Snap Inc. Off-platform messaging system
US11641935B2 (en) 2021-02-18 2023-05-09 Donald S. Williams Attachable table apparatus
US11973730B2 (en) 2022-06-02 2024-04-30 Snap Inc. External messaging function for an interaction system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010023377A (ko) * 1997-08-27 2001-03-26 씨에스피 홀딩스, 엘엘씨. 중앙 처리 및 저장 방식의 원격 이미지 캡쳐
KR20010044781A (ko) * 2001-03-24 2001-06-05 홍윤환 네트워크상의 컴퓨터간 원격제어 방법

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
US5602974A (en) * 1994-10-05 1997-02-11 Microsoft Corporation Device independent spooling in a print architecture
US5907835A (en) * 1994-11-18 1999-05-25 Canon Kabushiki Kaisha Electronic filing system using different application program for processing drawing commands for printing
US5987257A (en) * 1995-10-27 1999-11-16 Microsoft Corporation Metafile optimization
US6040920A (en) * 1996-02-20 2000-03-21 Fuji Xerox Co., Ltd. Document storage apparatus
US5949975A (en) * 1997-03-12 1999-09-07 Microsoft Corp. Method and system for negotiating capabilities when sharing an application program with multiple computer systems
US6154208A (en) * 1997-10-06 2000-11-28 Canon Kabushiki Kaisha Proxy mechanism for non-native GDI formats
JPH11184657A (ja) * 1997-12-25 1999-07-09 Fuji Xerox Co Ltd 印刷システム及びそのデータ処理方法
US6260044B1 (en) * 1998-02-04 2001-07-10 Nugenesis Technologies Corporation Information storage and retrieval system for storing and retrieving the visual form of information from an application in a database
US6601087B1 (en) * 1998-11-18 2003-07-29 Webex Communications, Inc. Instant document sharing
US7437483B1 (en) * 1999-03-24 2008-10-14 Microsoft Corporation System and method for transferring a compressed data file to a peripheral device
KR100381650B1 (ko) * 1999-08-24 2003-04-26 삼성전자주식회사 컴퓨터의 문서형태 변환방법
US6598087B1 (en) 1999-09-08 2003-07-22 Ge Capital Commercial Finance, Inc. Methods and apparatus for network-enabled virtual printing
US6775678B1 (en) * 2000-04-11 2004-08-10 Microsoft Corporation Data structure and method of storing a digital document
US7043697B1 (en) * 2000-05-15 2006-05-09 Intel Corporation Virtual display driver
US20030226114A1 (en) * 2001-02-20 2003-12-04 Sharp Laboratories Of America, Inc. System and method for composing documents
US6924904B2 (en) * 2001-02-20 2005-08-02 Sharp Laboratories Of America, Inc. Methods and systems for electronically gathering and organizing printable information
US7080139B1 (en) * 2001-04-24 2006-07-18 Fatbubble, Inc Method and apparatus for selectively sharing and passively tracking communication device experiences
US20030017846A1 (en) * 2001-06-12 2003-01-23 Estevez Leonardo W. Wireless display
JP2003029942A (ja) 2001-07-16 2003-01-31 Canon Inc 印刷制御装置及びその制御方法、プログラム、記憶媒体
US7171468B2 (en) * 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
KR100484156B1 (ko) * 2002-09-03 2005-04-19 삼성전자주식회사 배너페이지 인쇄방법 및 이를 위한 네트워크 프린팅 시스템
JP2004240775A (ja) 2003-02-06 2004-08-26 Kureo:Kk データ交換装置、データ交換方法及びデータ交換プログラム
US8276089B1 (en) * 2003-07-08 2012-09-25 Adobe Systems Incorporated System and method for producing, displaying and printing documents

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010023377A (ko) * 1997-08-27 2001-03-26 씨에스피 홀딩스, 엘엘씨. 중앙 처리 및 저장 방식의 원격 이미지 캡쳐
KR20010044781A (ko) * 2001-03-24 2001-06-05 홍윤환 네트워크상의 컴퓨터간 원격제어 방법

Also Published As

Publication number Publication date
JP2008524879A (ja) 2008-07-10
EP1832971A4 (en) 2011-06-15
EP1832971B1 (en) 2017-05-17
CN1791070A (zh) 2006-06-21
US9037654B2 (en) 2015-05-19
WO2006063528A1 (fr) 2006-06-22
CN1791070B (zh) 2010-04-28
KR20070097507A (ko) 2007-10-04
EP1832971A1 (en) 2007-09-12
US20100005144A1 (en) 2010-01-07

Similar Documents

Publication Publication Date Title
KR100935798B1 (ko) 네트워크로 문서를 전송하기 위한 방법, 시스템, 가상 프린터 장치, 및 복구 장치
CA2370586C (en) Methods and apparatus for transmitting, receiving, and processing secure voice over internet protocol
US6748529B2 (en) Method and apparatus for effecting secure document format conversion
US5751814A (en) File encryption method
US20020033961A1 (en) Method and apparatus for delivery of facsimile documents over a computer network
US20100002260A1 (en) System and process for transmitting electronic mail using a conventional facsimile device
US6968388B1 (en) Methods in transmission of files in a data communication network
CN112003881B (zh) 一种基于私有云的安全云手机***
WO2004042537A2 (en) System and method for securing digital messages
JP3672437B2 (ja) ネットワークファクシミリ装置
CN109951378B (zh) 一种即时通信中的文件加密传输与共享方法
CN1269648A (zh) 用于计算机电话的内核模式加密的方法和设备
KR101472620B1 (ko) 보안 팩시밀리 송신을 위한 방법 및 장치
JP2000285042A (ja) 画像通信装置および電子メール通信方法
JP3255039B2 (ja) 電子メール受信制御方法
JP2005160018A (ja) 画像保護システムおよび方法
JP3404507B2 (ja) データ送信装置、およびデータ通信方法
JPH11298740A (ja) データ送受信方法
JP3515105B2 (ja) 電子メール通信システム、電子メール受信装置および電子メール通信方法並びに電子メール受信方法
JP2001298574A (ja) データ通信システム
JP3779598B2 (ja) ファクシミリ装置
JP2000222308A (ja) ファクシミリ型電子メ―ル装置およびファクシミリ型電子メ―ル受信制御方法
JPH11239263A (ja) 通信装置、および通信方法
JP2000332979A (ja) 画像通信装置、画像通信方法および記憶媒体
JPH10247904A (ja) 暗号化通信方法

Legal Events

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

Payment date: 20121123

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131218

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141205

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151113

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161129

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20181219

Year of fee payment: 10