KR100528863B1 - 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법 - Google Patents

텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법 Download PDF

Info

Publication number
KR100528863B1
KR100528863B1 KR10-2003-0091480A KR20030091480A KR100528863B1 KR 100528863 B1 KR100528863 B1 KR 100528863B1 KR 20030091480 A KR20030091480 A KR 20030091480A KR 100528863 B1 KR100528863 B1 KR 100528863B1
Authority
KR
South Korea
Prior art keywords
data
text
print data
unit
extracting
Prior art date
Application number
KR10-2003-0091480A
Other languages
English (en)
Other versions
KR20050059765A (ko
Inventor
김대현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR10-2003-0091480A priority Critical patent/KR100528863B1/ko
Publication of KR20050059765A publication Critical patent/KR20050059765A/ko
Application granted granted Critical
Publication of KR100528863B1 publication Critical patent/KR100528863B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/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/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities

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)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

텍스트데이터 추출이 가능한 인쇄장치 및 그의 텍스트데이터 추출방법이 개시된다. 판단부는 문서편집기로부터 전송된 인쇄데이터의 에뮬레이션 타입을 판단하며, 데이터 처리부는 판단된 타입에 대응되는 에뮬레이션을 실행시켜 인쇄데이터로부터 최종디스플레이리스트를 생성하며, 인쇄데이터에서 텍스트데이터의 코드체계정보 및 텍스트데이터를 추출하며, 저장매체는 추출된 코드체계 및 텍스트데이터를 저장하며, 제어부는 최종디스플레이리스트로 생성되는 인쇄데이터로부터 코드체계정보 및 텍스트데이터를 추출하여 파일로 저장하도록 데이터 처리부 및 저장매체를 제어하며, 저장되는 파일에 소정의 파일명을 부여한다. 따라서, 본 발명에 따르면, 인쇄되는 인쇄데이터로부터 텍스트 데이터를 추출하여 저장함으로써 텍스트데이터의 복원을 보다 쉽게 수행할 수 있다.

Description

텍스트데이터 추출이 가능한 인쇄장치 및 그의 텍스트데이터 추출방법{Printer capable of extracting text data, and method for extracting text data thereof}
본 발명은 인쇄장치 및 그의 텍스트데이터 추출방법에 관한 것으로서, 보다 상세하게는, 인쇄되는 인쇄데이터로부터 텍스트 데이터를 추출하여 저장함으로써 텍스트데이터를 복원할 수 있는 텍스트데이터 추출이 가능한 인쇄장치 및 그의 텍스트데이터 추출방법에 관한 것이다.
일반적으로 프린터는 호스트 컴퓨터의 응용프로그램(application)에서 작성된 문서를 인쇄하는데 사용된다. 사용자가 인쇄하고자 하는 문서는 대부분 텍스트 데이터이며, 텍스트 문서는 프린터 드라이버에 의해 프린터에서 인식할 수 있는 인쇄데이터로 변경된다. 프린터는 변경된 인쇄데이터를 호스트 컴퓨터로부터 수신하여 인쇄엔진장치를 통해 인쇄작업을 수행한다.
또한, 프린터는 인쇄된 인쇄데이터를 프린터에 마련된 소정의 HDD, ROM, ROM과 같은 저장부에 저장한다. 이로써, 추후 동일한 문서에 대한 인쇄가 필요할 때, 사용자는 별도의 호스터 컴퓨터 조작 없이 프린터에 저장된 인쇄데이터를 재인쇄하도록 한다.
그러나, 호스트 컴퓨터의 고장에 의해 또는 호스트 컴퓨터에 저장된 인쇄데이터가 삭제처리되거나 손상을 입은 경우, 사용자는 프린터에 저장된 인쇄데이터를 재인쇄할 수는 있으나, 인쇄데이터를 수정 또는 편집할 수 없다. 따라서, 종래의 프린터에 인쇄데이터가 저장되어 있어도, 사용자는 호스트 컴퓨터에서 인쇄데이터를 재작성하여 수정 또는 편집작업을 수행하는 불편함이 발생한다.
본 발명이 이루고자 하는 기술적 과제는, 인쇄되는 인쇄데이터로부터 텍스트 데이터를 추출하여 저장함으로써 텍스트데이터의 복원을 보다 쉽게 수행할 수 있는 텍스트데이터 추출이 가능한 인쇄장치 및 그의 텍스트데이터 추출방법을 제공하는 데 있다.
상기와 같은 기술적 과제를 해결하기 위한, 본 발명에 따른 텍스트데이터 추출이 가능한 인쇄장치는, 문서편집기로부터 전송된 인쇄데이터의 에뮬레이션 타입을 판단하는 판단부와, 상기 판단된 타입에 대응되는 에뮬레이션을 실행시켜 상기 인쇄데이터로부터 인쇄할 최종 디스플레이 리스트를 생성하며, 상기 인쇄데이터에서 텍스트데이터의 코드체계정보 및 상기 텍스트데이터를 추출하는 데이터 처리부와, 생성된 상기 최종 디스플레이 리스트를 인쇄하는 인쇄엔진부와, 추출된 상기 코드체계 및 상기 텍스트데이터를 저장하는 저장매체, 및 상기 최종 디스플레이 리스트로 생성되는 상기 인쇄데이터로부터 상기 코드체계정보 및 상기 텍스트데이터를 추출하여 파일로 저장하도록 상기 데이터 처리부 및 상기 저장매체를 제어하며, 상기 저장되는 파일에 소정의 파일명을 부여하는 제어부를 포함한다.
보다 상세하게는, 상기 데이터 처리부는, 각각 상이한 에뮬리이션을 실행하며, 상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션으로 상기 인쇄데이터를 파싱, 레이아웃 및 렌더링하는 적어도 하나의 에뮬레이션 처리부 및 렌더링된 상기 인쇄데이터를 드로잉하여 실제 인쇄될 상기 최종 디스플레이 리스트를 생성하되, 상기 렌더링된 인쇄데이터의 데이터특성이 텍스트인 경우 상기 렌더링된 인쇄데이터로부터 상기 코드체계정보 및 상기 텍스트데이터를 추출하는 디스플레이 리스트 생성부를 포함한다.
바람직하게는, 상기 적어도 하나의 에뮬레이션 처리부는 상기 파싱, 상기 레이아웃 및 상기 렌더링에 의해 상기 인쇄데이터를 소정 단위로 출력하며, 상기 디스플레이 리스트 생성부는, 상기 소정 단위로 출력되는 인쇄데이터의 데이터특성이 상기 텍스트인 경우, 기저장된 폰트테이블을 이용하여 상기 소정 단위의 인쇄데이터를 로우 모노 이미지(row mono image)로 생성하여 드로잉하는 텍스트 처리부 및 상기 드로잉 이전에 상기 소정 단위의 인쇄데이터로부터 상기 코드체계정보를 추출하며, 상기 드로잉 이후에 상기 소정 단위의 인쇄데이터로부터 상기 텍스트데이터를 추출하는 텍스트 추출부를 포함한다.
또한, 상기 저장매체에 저장된 상기 파일을 상기 문서편집기로 전송하는 통신 인터페이스부를 더 포함하며, 상기 문서편집기로부터 상기 저장된 파일에 대한 전송이 요청되면 상기 저장된 파일을 전송하도록 상기 통신 인터페이스부를 제어한다.
또한, 사용자의 조작에 의해 상기 파일명을 변경할 수 있는 다수의 조작키가 구비된 동작패널부를 더 포함한다.
한편, 상기와 같은 기술적 과제를 해결하기 위한, 본 발명에 따른 인쇄장치의 텍스트데이터 추출방법은, 문서편집기로부터 전송된 인쇄데이터의 에뮬레이션 타입을 판단하는 판단단계와, 상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션을 실행시켜 상기 인쇄데이터로부터 최종 디스플레이 리스트를 생성하되, 상기 최종 디스플레이 리스트로 생성되는 상기 인쇄데이터에서 텍스트데이터의 코드체계정보 및 상기 텍스트데이터를 추출하여 복원하는 디스플레이 리스트 생성단계와, 추출된 상기 코드체계정보 및 상기 텍스트데이터를 소정의 파일명을 갖는 파일로 저장하는 저장단계 및 생성된 상기 최종 디스플레이 리스트를 인쇄하는 인쇄단계를 포함한다.
바람직하게는, 상기 디스플레이 리스트 생성단계는, 상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션으로 상기 인쇄데이터를 파싱, 레이아웃 및 렌더링하여 상기 인쇄데이터를 상기 데이터특성 별로 구분하여 소정 단위로 출력하는 단계와, 렌더링된 상기 인쇄데이터를 드로잉하여 실제 인쇄될 상기 최종 디스플레이 리스트를 생성하는 생성단계와, 상기 소정 단위로 출력되는 인쇄데이터의 데이터특성이 텍스트인 경우, 상기 소정 단위의 인쇄데이터로부터 상기 코드체계정보를 추출하는 코드체계 추출단계와, 기저장된 폰트테이블을 이용하여 상기 소정 단위의 인쇄데이터를 로우 모노 이미지(row mono image)로 생성하여 드로잉하는 텍스트 처리단계 및 상기 소정 단위의 인쇄데이터로부터 상기 텍스트데이터를 추출하는 텍스트 추출단계를 포함한다.
보다 상세하게는, 상기 저장단계 이후, 상기 문서편집기로부터 상기 저장된 파일에 대한 전송이 요청되는 단계 및 상기 저장된 파일을 독출하여 상기 문서편집기로 전송하는 단계를 더 포함한다.
이하에서는 첨부된 도면들을 참조하여 본 발명을 보다 상세히 설명한다.
도 1은 본 발명의 바람직한 실시예에 따른 텍스트데이터의 추출이 가능한 인쇄 시스템을 도시한 도면이다.
도 1을 참조하면, 텍스트데이터의 추출이 가능한 인쇄 시스템은 문서편집기(100), 인쇄장치(300) 및 문서편집기(100)와 인쇄장치(300)간의 상호통신이 가능하도록 하는 통신망(10)을 포함한다.
먼저, 도 1에는 본 발명에 따른 텍스트데이터의 추출 및 복원과 관련된 블럭 위주로 도시하며 그 외의 블럭의 도시는 생략한다.
문서편집기(100)는 응용 프로그램을 이용하여 문서를 작성하거나 또는 작성된 문서의 편집을 수행한다. 문서편집기(100)의 대표적인 예로는 호스트 컴퓨터, 워드콤 등을 들 수 있다. 인쇄장치(300)는 적어도 하나의 문서편집기(100)에 공유되어 사용가능하며, 문서편집기(100)로부터 전송되는 인쇄데이터를 인쇄한다.
먼저, 문서편집기(100)는 버스에 의해 중앙처리부(CPU)(110)와 연결된 하드 디스크 드라이브(Hard Disk Drive, 이하 "HDD"라 한다)(120) 및 제1통신 인터페이스부(130)를 포함한다.
CPU(110)는 기저장된 각종 구동 프로그램을 실행시켜, 본 장치의 전반적인 동작을 제어한다. 본 발명에 있어서, CPU(110)는 소정 문서를 작성하도록 응용 프로그램부(122)를 실행시키며, 작성된 문서를 인쇄가능한 데이터인 인쇄데이터로 변환하도록 프린터 드라이버부(126)를 실행시킨다. 또한, 인쇄장치(300)에서 추출 및 저장된 텍스트 파일(text file, *.txt)이 인쇄장치(300)로부터 전송되면, 전송된 텍스트 파일이 HDD(120)의 문서저장부(124)에 저장되도록 처리한다.
HDD(120)에는 문서편집기(100)의 동작을 수행하기 위한 운영체제(Operation System) 및 코드체계별 폰트테이블이 저장된다. 또한, HDD(120)는 응용 프로그램부(122), 문서저장부(124) 및 프린터 드라이버부(126)를 갖는다.
응용프로그램부(122)에는 각종 문서를 작성할 수 있는 응용프로그램(application)이 저장된다.
문서저장부(124)에는 응용프로그램에 의해 작성된 문서가 임시 또는 영구 저장된다. 또한, 문서저장부(124)에는 인쇄장치(300)에서 전송된 텍스트 파일(*.txt)이 저장된다. 전송된 텍스트 파일(*.txt)은, 프린터 드라이버부(126)에서 인쇄데이터로 변환되어 인쇄장치(300)에서 인쇄된 인쇄데이터 중, 인쇄장치(300)가 텍스트데이터fmf 추출한 텍스트 파일이다.
프린터 드라이버부(126)는 응용프로그램에서 작성된 문서를 인쇄하려는 경우, 작성된 문서를 인쇄장치(300)가 해석할 수 있는 인쇄데이터로 변환한다. 인쇄데이터는 PDL(Page Discription Language) 형식의 인쇄명령어로서 인쇄데이터의 에뮬레이션 타입(Emulation Type)을 판단할 수 있는 정보를 포함한다.
제1통신 인터페이스부(130)는 네트워크 인터페이스 카드(Network Interface Card)에 의해 다수의 포트(예를 들어, 네트워크 포트, parallel 포트)를 구비하며, 그 중 하나는 인쇄장치(300)와 통신가능하게 접속된다. 제1통신 인터페이스부(130)는 프린터 드라이버부(126)에서 변환된 인쇄데이터를 통신망(10)에 의해 인쇄장치(300)로 전송한다. 통신망(10)의 예로는 근거리 통신망을 들 수 있다.
한편, 도 1에 도시된 인쇄장치(300)는 동작패널부(310), 제2통신 인터페이스부(320), 판단부(330), 데이터 처리부(340), 인쇄엔진부(350), 저장매체(360), ROM(370), RAM(380) 및 제어부(390)를 구비한다.
동작패널부(310)는 인쇄장치(300)에서 지원하는 기능을 선택 및 설정하여 설정신호를 제어부(390)로 인가하는 키조작부(미도시) 및 인쇄장치(300)의 동작상태를 표시하는 표시부(미도시)를 갖는다.
제2통신 인터페이스부(320)는 문서편집기(100)와 통신가능하게 마련되어, 통신망(10)을 통해 문서편집기(100)로부터 전송되는 인쇄데이터를 수신한다.
판단부(330)는 데이터의 입출력을 제어하는 커널(kernel)의 일부로서, 수신된 PDL 형식의 인쇄데이터를 자동으로 파싱(Auto Parsing)하여 에뮬레이션 타입을 판단한다. 그리고, 판단부(330)는 적어도 하나의 에뮬레이션 처리부(210-1, 210-2, …, 210-n) 중 판단된 에뮬레이션 타입에 대응되는 에뮬레이션 처리부(예를 들어, 210-1)로 인쇄데이터를 제공한다.
도 2는 도 1에 도시된 데이터 처리부를 보다 상세히 도시한 블럭도이다.
도 1 및 도 2를 참조하면, 데이터 처리부(340)는 인쇄장치(300)에서 지원하는 에뮬레이션 타입의 개수에 대응되는 적어도 하나의 에뮬레이션 처리부(210-1, 210-2, …, 210-n) 및 디스플레이 리스트 생성부(220)를 포함한다.
각각의 에뮬레이션 처리부(210-1, 210-2, …, 210-n)는 판단부(330)로부터 제공된 인쇄데이터를 파싱, 레이아웃 및 렌더링하며, 디스플레이 리스트 생성부(220)는 렌더링된 데이터에 의해 실제 인쇄될 최종 디스플레이 리스트를 생성한다.
에뮬레이션 타입에는 PCL(Printer Control Language), PostScript, KS/KSSM 등 다양한 타입이 있으며, 예를 들어, 제1에뮬레이션 처리부(210-1)는 PCL 타입, 제2에뮬레이션 처리부(210-2)는 PostScript 타입, 제n에뮬레이션 처리부(210-n)는 KS/KSSM 타입의 에뮬레이션을 처리한다.
제1에뮬레이션 처리부(210-1)는 제1구문분석부(parser)(212-1), 제1레이아웃 엔진(Layout Engine)(214-1) 및 렌더링 엔진(Rendering Engine)(216-1)을 포함한다.
제1구문분석부(212-1)는 인쇄데이터(PDL)를 구문분석(parsing)하여 소정 단위(이하에서는, "밴드단위"라 한다)로 출력하되 해석된 구문을 병행출력한다. 해석된 구문은 소정 단위로 출력되는 각 데이터의 코드체계정보(symbol), 데이터특성, 위치정보, 각 데이터의 크기, 실제 인쇄될 데이터 등의 정보를 제공한다.
밴드단위로 출력되는 각 데이터 및 각 데이터에 대한 해석된 구문을 'Parsing Object Information' 또는 '토큰(token)'이라고 하나, 이하에서는 설명의 편의상 '파싱데이터'라 한다. 따라서, 구문분석된 인쇄데이터는 다수의 파싱데이터로 이루어지며, 해석된 구문에 의해 실제 인쇄될 각 데이터의 특성을 알 수 있다.
또한, 코드체계정보는 각 파싱데이터가 ASCII 코드, Latin 코드, Unicode 등 다양한 캐릭터셋(Character Set) 코드체계 중 어느 하나임을 의미하며, 데이터특성은 각 파싱데이터가 텍스트데이터, 그래픽데이터 및 비트맵데이터 중 어느 하나임을 의미한다. 텍스트데이터는 일반적인 텍스트코드데이터이다.
도 3은 구문분석에 의해 밴드단위로 출력되는 파싱데이터의 실시예를 도시한 도면이다.
도 3을 참조하면, 파싱데이터는 ASCII 코드체계의 'text'로 표기된 텍스트데이터로서, 인쇄용지의 (x, y)위치에서 'length' 크기로 인쇄되며, 실제 인쇄되는 텍스트데이터는 '0x3c'에 의해 표시되는 캐릭터이다. 여기서, '0x3c'는 코드체계별로 서로 다르게 해석된다. 예를 들어, ASCII 코드인 경우 '0x3c'는 '가'로 해석 및 인쇄되며, 유니코드인 경우 '0x3c'는 'A'로 해석 및 인쇄될 수 있다.
제1레이아웃 엔진(214-1)은 도 3과 같은 구문분석 결과를 참조하여 각각의 파싱데이터를 레이아웃 처리함으로써 밴드데이터를 출력한다. 도 3의 경우, 제1레이아웃 엔진(214-1)은 (x, y) 위치에 '0x3c'에 대응되는 캐릭터가 배치되도록 처리한다.
레이아웃은 제1에뮬레이션 처리부(210-1)에서 지원하는 에뮬레이션에 의해 인쇄데이터의 본문, 표제, 그림, 표, 박스 등을 구문분석 결과를 참조하여 캔버스의 적당한 위치에 균형있게 배치하는 것을 말한다. 캔버스는 실제 인쇄데이터가 인쇄되는 용지를 대신하는 무형의 용지이다. 도 2와 같은 파싱데이터를 레이아웃 처리하는 경우, 제1레이아웃 엔진(214-1)으로부터 출력되는 밴드데이터는, 예를 들어, 'Draw_Text(ASCII, x, y, length, 0x3c)'와 같은 코딩형식을 갖는다.
제1렌더링 엔진(216-1)은 제1레이아웃 엔진(214-1)에 의해 레이아웃 처리된 각각의 파싱데이터, 즉, 각각의 밴드데이터에 대해 렌더링을 수행하며, 렌더링 처리된 각각의 밴드데이터는 데이터특성별로 구분되어 출력된다. 즉, 비트맵데이터를 가지는 밴드데이터는 비트맵 처리부(222)로 입력되고, 그래픽데이터를 가지는 경우 밴드데이터는 그래픽 처리부(224)로 입력되며, 텍스트데이터를 가지는 밴드데이터는 텍스트 처리부(226)로 입력된다.
예를 들어, 'Draw_Text(ASCII, x, y, length, 0x3c)'와 같이 코딩된 밴드데이터가 제1레이아웃 엔진(214-1)으로부터 입력되면, 제1렌더링 엔진(216-1)은 렌더링된 밴드데이터를 'Draw_Text'에 의해 후술할 텍스트 처리부(226)로 제공한다. 또한, 'Draw_Graphic(symbol, x1, y1, x2, y2)'와 같은 밴드데이터가 제1레이아웃 엔진(214-1)으로부터 입력되면, 제1렌더링 엔진(216-1)은 렌더링된 밴드데이터를 'Draw_Graphic'에 의해 후술할 그래픽 처리부(224)로 제공한다. 또한, 'Draw_Bitmap(symbol, x3, y3, length3, 0a5c)'와 같은 밴드데이터가 제1레이아웃 엔진(214-1)으로부터 입력되면, 제1렌더링 엔진(216-1)은 렌더링된 밴드데이터를 'Draw_Bitmap'에 의해 후술할 비트맵 처리부(222)로 제공한다. 여기서, 'symbol'은 각 밴드데이터의 코드체계정보를 나타낸다.
디스플레이 리스트 생성부(220)는 제1렌더링 엔진(216-1)에서 구분출력되는 각 밴드데이터를 데이터특성별로 래스터라이징(구체화, Rasterizing 또는 Rasterization)하여 실제 인쇄될 최종 디스플레이 리스트를 생성한다. 또한, 디스플레이 리스트 생성부(220)는 최종 디스플레이 리스트로 생성되는 각 밴드데이터로부터 텍스트데이터의 코드체계정보 및 텍스트데이터를 추출한다.
이를 위하여, 디스플레이 리스트 생성부(220)는 비트맵 처리부(222), 그래픽 처리부(224), 텍스트 처리부(226), 조합부(228) 및 텍스트 추출부(229)를 포함한다.
비트맵 처리부(222)는 제1렌더링 엔진(216-1)으로부터 구분출력되는 비트맵데이터를 가지는 밴드데이터를 드로잉하여 디스플레이 리스트를 생성한다.
그래픽 처리부(224)는 제1렌더링 엔진(216-1)으로부터 구분출력되는 그래픽데이터를 가지는 밴드데이터를 드로잉하여 디스플레이 리스트를 생성한다.
텍스트 처리부(226)는 제1렌더링 엔진(216-1)으로부터 구분출력되는 텍스트데이터를 갖는 밴드데이터 및 기저장된 폰트 테이블을 이용하여 디스플레이 리스트를 생성한다. 보다 자세히는, 텍스트데이터를 갖는 밴드데이터가 입력되면, 텍스트 처리부(226)는 폰트 테이블을 이용하여 밴드데이터에 포함된 실제 인쇄될 데이터를 로우 모노 이미지(row mono image)로 생성한 후 드로잉함으로써 디스플레이 리스트를 생성한다.
예를 들어, 밴드데이터가 'Draw_Text(ASCII, x, y, length, 0x3c)'인 경우, 텍스트 처리부(226)는 밴드데이터가 ASCII 코드체계인 것으로 판단한 후, 실제 데이터 '0x3c'에 대응되는 텍스트 'A'를 ASCII 폰트 테이블을 이용하여 로우 모노 이미지로 생성한다. 그리고, 텍스트 처리부(226)는 로우 모노 이미지로 생성된 'A'를 (x,y) 위치에 'length' 크기로 드로잉한다.
조합부(228)는 텍스트 처리부(226), 그래픽 처리부(224) 및 비트맵 처리부(222) 중 적어도 하나로부터 생성된 디스플레이 리스트를 조합하여 최종 디스플레이 리스트를 출력한다.
인쇄엔진부(340)는 디스플레이 리스트 생성부(220)로부터 출력되는 최종 디스플레이 리스트를 기록용지에 인쇄하는 인쇄작업을 수행한다.
한편, 텍스트 추출부(229)는 텍스트 처리부(226)로 입력되는 각 밴드데이터로부터 텍스트데이터의 코드체계정보 및 실제 텍스트데이터를 추출한다. 자세히 설명하면, 텍스트 추출부(229)는 텍스트 처리부(226)에서 텍스트특성을 갖는 밴드데이터가 드로잉되기 이전에 밴드데이터로부터 텍스트데이터의 코드체계정보를 추출한다. 그리고, 텍스트 추출부(229)는 텍스트 처리부(226)에서 텍스트특성을 갖는 밴드데이터가 드로잉된 후 밴드데이터로부터 실제 텍스트데이터를 추출한다. 예를 들어, 밴드데이터가 'Draw_Text(ASCII, x, y, length, 0x3c)'인 경우, 텍스트 추출부(229)로부터 추출되는 코드체계정보(symbol)는 'ASCII'이며, 실제 텍스트데이터는 '0x3c'이다.
그리고, 텍스트 추출부(229)는 추출된 텍스트테이터의 코드체계정보 및 실제 텍스트데이터를 저장매체(360)로 제공한다. 이러한 텍스트 추출부(229)는 텍스트 처리부(226)에 포함되어 구현되는 것도 가능하다.
한편, 제2통신 인터페이스부(320)를 통해 수신된 인쇄데이터는 판단부(330) 뿐만 아니라 저장매체(360)로 제공된다. 즉, 저장매체(360)의 소정 영역에는 PDL 형식의 인쇄데이터가 저장된다. 이는, 사용자가 이미 한 번 인쇄한 소정 문서를 재인쇄하려는 경우, 문서편집기(100)로부터 재인쇄하기 위한 문서를 수신받지 않고 인쇄장치(300)에 저장된 문서를 직접 독출하여 인쇄하는 데 용이하다. 여기서, 저장매체(360)는 HDD 또는 착탈가능한 메모리 스틱을 예로 들 수 있다.
또한, 저장매체(360)의 소정 영역에는 현재 인쇄되는 인쇄데이터 중 상술한 텍스트 추출부(229)에 의해 추출된 텍스트데이터의 코드체계정보 및 텍스트데이터가 텍스트 파일(*.txt)로 저장된다. 이에 의해, 인쇄데이터 중 텍스트파일의 복원이 수행된다.
도 4는 도 1의 저장매체에 저장되는 텍스트 파일의 실시예를 도시한 도면이다.
도 4를 참조하면, '제1텍스트'는 텍스트 처리부(226)로 입력되는 제1밴드데이터로부터 'symblol1'의 코드체계를 갖는 텍스트데이터 '0x3c'가 추출되었음을 의미하며, '제2텍스트'는 텍스트 처리부(226)로 입력되는 제2밴드데이터로부터 'symblol2'의 코드체계를 갖는 텍스트데이터 '0x5a' 및 '0x5c'가 추출되었음을 의미한다. 추출된 텍스트데이터가 '0x5a' 및 '0x5c' 두 개인 것은, 제2밴드데이터에 포함된 텍스트데이터가 적어도 두 글자로 이루어진 스트링(string)임을 의미한다. 또한, 제1 내지 제n밴드데이터는 텍스트 처리부(226)로 순차적으로 입력되는 밴드데이터로서, 원본 인쇄데이터로부터 추출된 제1 내지 제n텍스트는 텍스트 파일(*.txt)로 저장된다.
이 때, 저장되는 텍스트 파일(*.txt)의 파일명은 제어부(390)에서 임의로 부여할 수 있으며, 사용자의 동작패널부(310) 조작에 의해 변경가능하다.
ROM(370)에는 인쇄장치(300)의 기능을 구현하는 데 필요한 각종 제어 프로그램 및 텍스트데이터를 로우 모노 이미지로 생성하기 위한 폰트테이블이 코드체계 별로 저장되며, RAM(380)에는 인쇄장치(300)의 동작 수행 중에 발생되는 각종 데이터가 저장된다.
제어부(390)는 ROM(370)에 저장된 제어 프로그램에 따라 인쇄장치(300)의 전반적인 동작을 제어한다. 예를 들어, 제어부(390)는 문서편집기(100)로부터 전송된 인쇄데이터를 데이터특성별로 적응적으로 처리하여 디스플레이 리스트를 생성한 후 인쇄하도록 데이터 처리부(340) 및 인쇄엔진부(350)를 제어한다.
본 발명에 있어서, 제어부(390)는 최종 디스플레이 리스트로 생성되는 인쇄데이터로부터 텍스트데이터의 코드체계정보 및 텍스트데이터를 추출한 후, 텍스트 파일(*.txt)로 저장하도록 데이터 처리부(340) 및 저장매체(360)를 제어한다. 이 때, 제어부(390)는 저장되는 텍스트 파일에 대하여 소정 파일명(예를 들어, A.txt)을 부여한다.
또한, 제어부(390)는, 문서편집기(100)로부터 저장매체(360)에 저장된 텍스트 파일(*.txt)에 대한 전송요청이 있는 경우, 저장매체(360)에 저장된 텍스트 파일(*.txt)을 문서편집기(100)로 전송하도록 제2통신 인터페이스부(320)를 제어한다. 또는, 제어부(390)는 저장매체(360)에 텍스트 파일(*.txt)이 저장될 때마다 문서편집기(100)로 전송하도록 처리할 수 있다. 이러한 텍스트 파일의 전송 메커니즘은 사용자가 프린터 드라이어부(126) 또는 동작패널부(310)를 조작하여 설정가능하다.
도 4와 같은 텍스트 파일(*.txt)이 전송되면, 문서편집기(100)는 전송된 텍스트 파일(*.txt)을 문서저장부(124) 또는 휘발성 메모리에 저장한다. 그리고, 문서편집기(100)는 각 코드체계정보에 대응되는 폰트 테이블을 이용하여 텍스트데이터의 역변환을 수행한다. 예를 들어, 도 4에서 '0x3c'의 'symbol1'이 'ASCII'인 경우, 문서편집기(100)는 ASCII 코드체계에 대응되는 폰트 테이블에서 '0x3c'에 매핑되는 실제 텍스트데이터를 생성함으로써 텍스트데이터의 역변환을 수행한다.
즉, 인쇄 이력이 존재하는 문서가 문서저장부(124)에서 삭제되었거나 또는 손상된 경우, 인쇄장치(300)로부터 삭제 또는 손상된 문서의 텍스트 파일을 수신하여 저장함으로써 손상된 문서 중 텍스트데이터는 복원가능하다.
도 5는 도 1에 의한 텍스트데이터의 추출방법을 개략적으로 설명하기 위한 흐름도이다.
도 1 내지 도 5를 참조하면, 제어부(390)는 문서편집기(100)로부터 전송된 인쇄데이터를 자동으로 파싱하여 에뮬레이션 타입을 판단하도록 판단부(330)를 제어한다(S510).
다수의 에뮬레이션 처리부(210-1, 210-2, …, 210-n) 중 S510단계에서 판단된 에뮬레이션 타입에 대응되는 에뮬레이션 처리부(210-1)로 인쇄데이터가 제공되면, 제어부(390)는 에뮬레이션 처리부(210-1)의 에뮬레이션을 실행하여 파싱, 레이아웃 및 렌더링을 실행하도록 에뮬레이션 처리부(210-1)를 제어한다(S520). S520단계에서 출력되는 데이터는 소정 밴드단위로 구분된 밴드데이터이다.
S520단계가 실행되면, 제어부(390)는 인쇄데이터를 이루는 각각의 밴드데이터를 데이터특성별로 드로잉한 후 조합하여 최종 디스플레이 리스트를 생성하도록 디스플레이 리스트 생성부(220)를 제어한다(S530).
그리고, 제어부(390)는 최종 디스플레이 리스트로 생성되는 각각의 밴드데이터 중 데이터특성이 텍스트인 경우, 텍스트 처리부(226)로 입력되는 밴드데이터로부터 텍스트데이터의 코드체계정보 및 텍스트데이터를 추출하도록 텍스트 추출부(229)를 제어한다(S540).
S540단계가 실행되면, 제어부(390)는 추출된 텍스트데이터의 코드체계정보 및 텍스트데이터가 도 4와 같은 텍스트 파일(*.txt)로 저장매체(360)에 저장되도록 처리한다(S550).
소정 시간 경과 후, 문서편집기(100)로부터 저장된 텍스트 파일(*.txt)에 대한 전송요청이 있으면, 제어부(390)는 저장매체(360)에 저장된 텍스트 파일(*.txt)을 독출한 후, 독출된 텍스트 파일(*.txt)을 문서편집기(100)로 전송하도록 제2통신 인터페이스부(320)를 제어한다(S560, S570).
한편, 상술한 본 발명의 바람직한 실시예에 따른 텍스트데이터의 추출이 가능한 인쇄 시스템 및 그의 텍스트데이터 추출방법은, 문서편집기(100)로부터 수신되는 인쇄데이터를 최종 디스플레이 리스트로 생성하면서 텍스트 파일(*.txt)을 저장하는 경우를 실시예로 들어 설명하였다.
이와는 달리, 문서편집기(100)로부터 수신되는 인쇄데이터는 PDL 형식으로 저장매체(360)에 저장되어 있으므로, 본 발명은 저장된 인쇄데이터를 이용하여 텍스트 파일(*.txt)을 생성할 수 있음은 물론이다. 예를 들어, 저장매체(360)에 저장된 인쇄데이터 중 텍스트데이터에 대한 복원 요청이 문서편집기(100)로부터 있으면, 인쇄장치(300)는 저장된 인쇄데이터의 에뮬레이션 타입에 따라 소정 에뮬레이션을 실행시킨 후 최종 디스플레이 리스트를 생성하면서 인쇄데이터에 포함된 텍스트데이터 및 텍스트데이터의 코드체계정보를 추출하여 텍스트 파일(*.txt)을 생성할 수 있다.
지금까지 설명한 바와 같이, 본 발명에 따른 텍스트데이터 추출이 가능한 인쇄장치 및 그의 텍스트데이터 추출방법에 의하면, 인쇄되는 인쇄데이터로부터 텍스트 데이터를 추출하여 저장함으로써 텍스트데이터를 별도의 추가비용 없이 보다 쉽게 복원할 수 있다. 이로써, 인쇄이력이 있는 문서가 문서편집기에서 사용불가능한 경우, 인쇄장치에 저장/백업된 텍스트 파일을 이용하여 원본 텍스트 데이터를 복원하는 것이 가능하다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위 뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 바람직한 실시예에 따른 텍스트데이터의 추출이 가능한 인쇄 시스템을 도시한 도면,
도 2는 도 1에 도시된 데이터 처리부를 보다 상세히 도시한 블럭도,
도 3은 구문분석에 의해 밴드단위로 출력되는 파싱데이터의 실시예를 도시한 도면,
도 4는 도 1의 저장매체에 저장되는 텍스트 파일의 실시예를 도시한 도면, 그리고,
도 5는 도 1에 의한 텍스트데이터의 추출방법을 개략적으로 설명하기 위한 흐름도이다.
* 도면의 주요 부분에 대한 설명 *
100 : 문서편집기 110 : CPU
120 : HDD 130 : 및 제1통신 인터페이스부
300 : 인쇄장치 320 : 제2통신 인터페이스부
330 : 판단부 340 : 데이터 처리부
210-1 : 제1에뮬레이션 처리부 212-1 : 제1구문분석부
214-1 : 제1레이아웃 처리부 216-1 : 제1렌더링 처리부
350 : 인쇄엔진부 360 : 저장매체
390 : 제어부

Claims (8)

  1. 문서편집기로부터 전송된 인쇄데이터의 에뮬레이션 타입을 판단하는 판단부;
    상기 판단된 타입에 대응되는 에뮬레이션을 실행시켜 상기 인쇄데이터로부터 인쇄할 최종 디스플레이 리스트를 생성하며, 상기 인쇄데이터에서 텍스트데이터의 코드체계정보 및 상기 텍스트데이터를 추출하는 데이터 처리부;
    생성된 상기 최종 디스플레이 리스트를 인쇄하는 인쇄엔진부;
    추출된 상기 코드체계 및 상기 텍스트데이터를 저장하는 저장매체; 및
    상기 최종 디스플레이 리스트로 생성되는 상기 인쇄데이터로부터 상기 코드체계정보 및 상기 텍스트데이터를 추출하여 파일로 저장하도록 상기 데이터 처리부 및 상기 저장매체를 제어하며, 상기 저장되는 파일에 소정의 파일명을 부여하는 제어부;를 포함하는 텍스트데이터 추출이 가능한 인쇄장치.
  2. 제 1항에 있어서,
    상기 데이터 처리부는,
    각각 상이한 에뮬리이션을 실행하며, 상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션으로 상기 인쇄데이터를 파싱, 레이아웃 및 렌더링하는 적어도 하나의 에뮬레이션 처리부; 및
    렌더링된 상기 인쇄데이터를 드로잉하여 실제 인쇄될 상기 최종 디스플레이 리스트를 생성하되, 상기 렌더링된 인쇄데이터의 데이터특성이 텍스트인 경우 상기 렌더링된 인쇄데이터로부터 상기 코드체계정보 및 상기 텍스트데이터를 추출하는 디스플레이 리스트 생성부;를 포함하는 것을 특징으로 하는 텍스트데이터 추출이 가능한 인쇄장치.
  3. 제 2항에 있어서,
    상기 적어도 하나의 에뮬레이션 처리부는 상기 파싱, 상기 레이아웃 및 상기 렌더링에 의해 상기 인쇄데이터를 소정 단위로 출력하며,
    상기 디스플레이 리스트 생성부는,
    상기 소정 단위로 출력되는 인쇄데이터의 데이터특성이 상기 텍스트인 경우, 기저장된 폰트테이블을 이용하여 상기 소정 단위의 인쇄데이터를 로우 모노 이미지(row mono image)로 생성하여 드로잉하는 텍스트 처리부; 및
    상기 드로잉 이전에 상기 소정 단위의 인쇄데이터로부터 상기 코드체계정보를 추출하며, 상기 드로잉 이후에 상기 소정 단위의 인쇄데이터로부터 상기 텍스트데이터를 추출하는 텍스트 추출부;를 포함하는 것을 특징으로 하는 텍스트데이터 추출이 가능한 인쇄장치.
  4. 제 1항에 있어서,
    상기 저장매체에 저장된 상기 파일을 상기 문서편집기로 전송하는 통신 인터페이스부;를 더 포함하며,
    상기 문서편집기로부터 상기 저장된 파일에 대한 전송이 요청되면 상기 저장된 파일을 전송하도록 상기 통신 인터페이스부를 제어하는 것을 특징으로 하는 텍스트데이터 추출이 가능한 인쇄장치.
  5. 제 1항에 있어서,
    사용자의 조작에 의해 상기 파일명을 변경할 수 있는 다수의 조작키가 구비된 동작패널부;를 더 포함하는 것을 특징으로 하는 텍스트데이터 추출이 가능한 인쇄장치.
  6. 문서편집기로부터 전송된 인쇄데이터의 에뮬레이션 타입을 판단하는 판단단계;
    상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션을 실행시켜 상기 인쇄데이터로부터 최종 디스플레이 리스트를 생성하되, 상기 최종 디스플레이 리스트로 생성되는 상기 인쇄데이터에서 텍스트데이터의 코드체계정보 및 상기 텍스트데이터를 추출하여 복원하는 디스플레이 리스트 생성단계;
    추출된 상기 코드체계정보 및 상기 텍스트데이터를 소정의 파일명을 갖는 파일로 저장하는 저장단계; 및
    생성된 상기 최종 디스플레이 리스트를 인쇄하는 인쇄단계;를 포함하는 인쇄장치의 텍스트데이터 추출방법.
  7. 제 6항에 있어서,
    상기 디스플레이 리스트 생성단계는,
    상기 판단된 에뮬레이션 타입에 대응되는 에뮬레이션으로 상기 인쇄데이터를 파싱, 레이아웃 및 렌더링하여 상기 인쇄데이터를 상기 데이터특성 별로 구분하여 소정 단위로 출력하는 단계;
    렌더링된 상기 인쇄데이터를 드로잉하여 실제 인쇄될 상기 최종 디스플레이 리스트를 생성하는 생성단계;
    상기 소정 단위로 출력되는 인쇄데이터의 데이터특성이 텍스트인 경우, 상기 소정 단위의 인쇄데이터로부터 상기 코드체계정보를 추출하는 코드체계 추출단계;
    기저장된 폰트테이블을 이용하여 상기 소정 단위의 인쇄데이터를 로우 모노 이미지(row mono image)로 생성하여 드로잉하는 텍스트 처리단계; 및
    상기 소정 단위의 인쇄데이터로부터 상기 텍스트데이터를 추출하는 텍스트 추출단계;를 포함하는 것을 특징으로 하는 인쇄장치의 텍스트데이터 추출방법.
  8. 제 6항에 있어서,
    상기 저장단계 이후,
    상기 문서편집기로부터 상기 저장된 파일에 대한 전송이 요청되는 단계; 및
    상기 저장된 파일을 독출하여 상기 문서편집기로 전송하는 단계;를 더 포함하는 것을 특징으로 하는 인쇄장치의 텍스트데이터 추출방법.
KR10-2003-0091480A 2003-12-15 2003-12-15 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법 KR100528863B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0091480A KR100528863B1 (ko) 2003-12-15 2003-12-15 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0091480A KR100528863B1 (ko) 2003-12-15 2003-12-15 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법

Publications (2)

Publication Number Publication Date
KR20050059765A KR20050059765A (ko) 2005-06-21
KR100528863B1 true KR100528863B1 (ko) 2005-11-16

Family

ID=37252633

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0091480A KR100528863B1 (ko) 2003-12-15 2003-12-15 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법

Country Status (1)

Country Link
KR (1) KR100528863B1 (ko)

Also Published As

Publication number Publication date
KR20050059765A (ko) 2005-06-21

Similar Documents

Publication Publication Date Title
US6407821B1 (en) Method and apparatus for printing documents including embedded print objects with an intelligent printing system
JP4995057B2 (ja) 描画装置、印刷装置、描画方法、及びプログラム
KR100661173B1 (ko) 다이렉트 프린팅 기능을 갖는 프린터 및 그 인쇄방법
JP5238526B2 (ja) 印刷リソース管理のためのシステム及び方法
JP5247603B2 (ja) 情報処理装置、制御方法、制御プログラム
JP2018147259A (ja) 情報処理装置、プログラム、記憶媒体、情報処理方法
US20100195142A1 (en) Print information conversion apparatus, printing apparatus, printing system, and computer readable medium
JP3733284B2 (ja) 情報処理装置、印刷システム、及びコマンド生成方法
JPH08286860A (ja) 出力制御方法及びその装置とそのコンピュータプログラム製品
JP2005149407A (ja) 文書処理装置および文書処理方法
US6688786B2 (en) Apparatus and method for suppressing the printing of nearly-blank pages
US8009309B2 (en) Method and system for identifying print jobs associated with an image formation device
JP4164488B2 (ja) 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム
JP3667043B2 (ja) 情報処理システム、情報処理装置、及び印刷制御方法
US10310788B2 (en) Control method for generating data used for printing and information processing apparatus
KR100528863B1 (ko) 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법
JP5896610B2 (ja) 装置、方法およびプログラム
EP2284689B1 (en) PDL data processing device
JP4100912B2 (ja) 情報処理装置及びその制御方法、プログラム並びに記憶媒体
JP2020144807A (ja) 情報処理装置とその制御方法、及びプログラム
KR100396261B1 (ko) 프린터 드라이버의 미리 보기 기능 수행 방법
JP4054544B2 (ja) 情報処理装置、情報処理方法、印刷制御プログラム、印刷処理装置、印刷処理方法及び印刷処理プログラム
US8756491B2 (en) PDL data processing device
JP4506371B2 (ja) 画像形成方法及び画像形成装置
JPH08249138A (ja) 出力制御方法及びその装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee