KR101210992B1 - 프린팅 시스템 소프트웨어 아키텍쳐 - Google Patents

프린팅 시스템 소프트웨어 아키텍쳐 Download PDF

Info

Publication number
KR101210992B1
KR101210992B1 KR1020077008195A KR20077008195A KR101210992B1 KR 101210992 B1 KR101210992 B1 KR 101210992B1 KR 1020077008195 A KR1020077008195 A KR 1020077008195A KR 20077008195 A KR20077008195 A KR 20077008195A KR 101210992 B1 KR101210992 B1 KR 101210992B1
Authority
KR
South Korea
Prior art keywords
image
print
printing
images
computer
Prior art date
Application number
KR1020077008195A
Other languages
English (en)
Other versions
KR20070062549A (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 KR20070062549A publication Critical patent/KR20070062549A/ko
Application granted granted Critical
Publication of KR101210992B1 publication Critical patent/KR101210992B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • 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
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/021Adaptations for printing on specific media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1857Generation of the printable image characterized by its workflow involving parallel processing in the same printing apparatus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)
  • Ink Jet (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

이미지 프린팅을 용이하게 하는 기술, 시스템 및 컴퓨터 프로그램 제품이 개시된다. 상기 기술은 프린트될 이미지를 수신하는 단계, 이미지의 포맷에 따라 상기 이미지를 선택적으로 전-처리하기 위해 제 1 소프트웨어를 사용하는 단계, 및 상기 전-처리된 이미지로부터 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계를 포함할 수 있다. 상기 기술에서, 각각의 이미지 큐는 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관과 접속된 이미지 데이터의 적어도 일부분을 포함한다. 상기 기술은 복수 개의 제 1 소프트웨어 컴포넌트들 및 복수 개의 제 2 소프트웨어 컴포넌트들을 가짐으로써 스케일링이능한 시스템에서 구현될 수 있으며, 제 1 및/또는 제 2 컴포넌트들 각각은 개별 컴퓨터 시스템 상에 존재할 수 있다.

Description

프린팅 시스템 소프트웨어 아키텍쳐{PRINTING SYSTEM SOFTWARE ARCHITECTURE}
본 발명은 이미지를 프린팅하는 시스템, 컴퓨터 프로그램 제품, 및 기술들에 관한 것이다.
텍스트 페이지 또는 픽쳐와 같은 이미지를 프린트할 때, 일반적으로 이미지 데이터는 소프트웨어에 의해 프린팅 장치(즉, 프린터)가 인식할 수 있는 포맷으로 변환되며 프린팅 장치와 결합된 프린트 버퍼로 중계된다. 프린트 버퍼는 변환된 이미지 데이터를 수신하고 프린팅 장치에 의한 후속적 프린팅을 위해 이미지 데이터의 적어도 일부를 저장한다.
복수 개의 프린팅 장치들은 복수 개의 개별적인 프린트 엘리먼트들(예를 들면, 잉크젯 프린터들에 대한 노즐들)을 포함한다. 프린트 엘리먼트들은 이미지의 선택된 성분을 프린트하도록 분포될 수 있다. 예를 들어, 선택된 프린트 엘리먼트들은 워크피스(workpiece) 상의 선택된 위치에서 프린트되도록 분포될 수 있다. 또 다른 예로서, 컬러 프린트시, 선택된 프린트 엘리먼트들은 선택된 컬러들을 프린트하도록 분포될 수 있다. 프린트 버퍼로부터의 이미지 데이터는 분포된 프린트 엘리먼트들에 의해 이미지들의 프린팅을 조절하도록 제어 전자장치에 의해 이용될 수 있다.
프린팅 장치의 프린트 엘리먼트들은 프린트 모듈이라 불리는 그룹들(예를 들어, 잉크젯 노즐들의 물리적 그룹)로 배열될 수 있다. 모듈내의 프린트 엘리먼트들은 구성 엘리먼트의 분포에 따라 그룹화될 수 있다. 예를 들어, 선택된 위치 어레이에서 프린트되는 프린트 엘리먼트들은 프린트 모듈로 그룹화될 수 있다. 또 다른 예로서, 선택된 컬러(선택된 위치들의 어레이)를 프린트하는 프린트 엘리먼트들이 프린트 모듈에서 그룹화될 수 있다.
본 명세서에서는 이미지 프린팅을 용이하게 하는, 컴퓨터 프로그램 제품을 포함하는 방법 및 장치가 개시된다.
일 면에서, 상기 기술은 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법을 특징으로 한다. 상기 방법은 제 1 소프트웨어 컴포넌트로 프린트될 이미지를 전송하는 단계, 이미지의 포맷에 따라 이미지를 선택적으로 전-처리하기 위해 제 1 소프트웨어 컴포넌트를 이용하는 단계 및 전-처리된 이미지로부터 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계를 포함한다. 상기 방법에서, 각각의 이미지 큐는 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관과 결합된 이미지 데이터의 적어도 일부분을 포함한다.
구현예들은 하기의 하나 이상의 특징을 포함할 수 있다. 이미지 데이터의 일부는 프린트 엘리먼트 연관이 워크피스 상에 단일 임프레션을 남겨두도록 충분한 양의 이미지 데이터를 저장하는 이미지 데이터 버퍼일 수 있다. 이미지 데이터의 일부는 프린트 엘리먼트 연관이 하나 이상의 워크피스 상에서 임프레션들을 남겨두도록 충분한 이미지 데이터를 저장하는 이미지 데이터 버퍼일 수 있다. 프린트 엘리먼트들은 잉크젯 노즐들을 포함할 수 있다. 이미지를 전송하는 단계는 저장 장치로부터의 이미지를 수신하는 단계를 포함할 수 있다.
제 1 및 제 2 소프트웨어 컴포넌트들은 애플리케이션 프로그래밍 인터페이스를 통해 액세스될 수 있다. 제 1 및 제 2 소프트웨어 컴포넌트들은 소프트웨어 서비스들일 수 있다. 또한 상기 방법은 프린트를 위한 이미지 표시 및 제 2 소프트웨어 컴포넌트 표시를 사용자 인터페이스를 포함하는 애플리케이션으로부터 제 1 소프트웨어 컴포넌트로 전송하는 단계를 포함한다. 사용자 인터페이스는 제 1 및 제 2 소프트웨어 컴포넌트들로부터의 개별 애플리케이션이며 제 1 및 제 2 소프트웨어 컴포넌트들이 존재하는 머신과 분리된 머신 상에 존재하는 제 3 컴포넌트일 수 있다. 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 사용하는 단계는 데이터 펌프에 의해 각각의 이미지 큐가 액세스를 위한 예정된 메모리 위치에 위치되도록, 이미지 큐를 생성하는 단계를 포함한다. 메모리 위치는 운영 시스템의 메모리 관리에 의한 액세스가 불가능한 분할된 메모리일 수 있다. 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 사용하는 단계는 프린팅 파라미터들을 기초로 생성된 테이블 및 제너릭 루틴(generic routines)에 따라 이미지 큐를 생성하는 단계를 포함한다. 이 경우, 상기 방법은 프린팅 파라미터들을 기초로 테이블을 생성하는 단계를 더 포함할 수 있다.
제 1 소프트웨어 컴포넌트는 이미지 제어 컴포넌트를 포함할 수 있다. 제 2 소프트웨어 컴포넌트는 이미지 큐 생성 컴포넌트를 포함할 수 있다. 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 사용하는 단계는 전송된 이미지로부터 이미지 큐를 생성하기 위해 이미지 데이터를 병렬 처리하는 단계를 포함한다. 상기 방법은 프린트될 X번째 이미지를 N번째 소프트웨어 컴포넌트로 전송하는 단계, 이미지 포맷에 따라 X번째 이미지를 선택적으로 전-처리하기 위해 N번째 소프트웨어 컴포넌트를 사용하는 단계, 및 전송된 X번째 이미지에 해당하는 X번째 이미지 큐를 생성하기 위해 M번째 소프트웨어 컴포넌트를 사용하는 단계를 포함하며, 각각의 이미지 큐는 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관과 결합된 이미지 데이터의 적어도 일부분을 포함한다.
또 다른 면에서, 이미지 프린팅을 제어하는 시스템은 이미지들을 저장하도록 구성된 데이터 저장소(repository), 프린트될 이미지에 해당하는 하나 이상의 이미지 큐를 저장하도록 구성된 메모리 영역, 및 태스크들을 수행하도록 동작하는 컴퓨터 시스템을 포함한다. 컴퓨터 시스템은 프린트될 이미지를 데이터 저장소로부터 제 1 소프트웨어 컴포넌트로 전송하는 단계, 이미지의 포맷을 결정하고 결정된 포맷에 따라 이미지를 선택적으로 전-처리하기 위해 제 1 소프트웨어 컴포넌트를 이용하는 단계, 및 이미지에 해당하는 이미지 큐를 메모리 영역에 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계를 포함하는 태스크들을 수행하도록 동작가능하다. 각각의 이미지 큐는 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관에 결합된 이미지 데이터의 적어도 일부를 포함한다.
구현예들은 하기의 하나 이상의 특징을 포함할 수 있다. 프린트 엘리먼트들은 잉크젯 노즐들을 포함할 수 있다. 제 1 및 제 2 소프트웨어 컴포넌트들은 애플리케이션 프로그래밍 인터페이스를 통해 액세스될 수 있다. 제 1 및 제 2 소프트웨어 컴포넌트들은 소프트웨어 서비스들일 수 있으며, 컴퓨터 시스템은 프린트될 이미지의 표시 및 제 2 소프트웨어 컴포넌트의 표시를 사용자 인터페이스를 포함하는 애플리케이션으로부터 제 1 소프트웨어 컴포넌트로 전송하도록 동작할 수 있다. 사용자 인터페이스는 제 1 및 제 2 소프트웨어 컴포넌트들과 별개의 애플리케이션이며 제 1 및 제 2 소프트웨어 컴포넌트들이 제공되는 머신과 구별되는 머신에 제공되는 제 3 컴포넌트일 수 있다. 메모리 영역은 운영 시스템의 메모리 관리에 의해 액세스 불가능한 분할된 메모리일 수 있다.
제 1 소프트웨어 컴포넌트는 이미지 제어 컴포넌트를 포함할 수 있다. 제 2 소프트웨어 컴포넌트는 이미지 큐 생성 컴포넌트를 포함할 수 있다. 이미지 큐를 생성하기 위해 제 2 소프트웨어 컴포넌트를 사용하는 단계는 전송된 이미지로부터 이미지 큐를 생성하기 위해 이미지 데이터를 병렬 처리하는 단계를 포함할 수 있다. 컴퓨터 시스템은 프린트될 X번째 이미지를 N번째 소프트웨어 컴포넌트로 전송하고, 이미지 포맷에 따라 X번째 이미지를 선택적으로 전-처리하기 위해 N번째 소프트웨어 컴포넌트를 사용하고, 전송된 X번째 이미지에 해당하는 X번째 이미지 큐를 생성하기 위해 M번째 소프트웨어 컴포넌트를 이용하도록 동작할 수 있고, 각각의 이미지 큐는 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관과 결합된 이미지 데이터의 적어도 일부분을 포함한다.
또 다른 면에서, 소프트웨어-구현 시스템은 프린트될 이미지를 수신하고, 수신된 이미지의 포맷을 결정하고, 결정된 포맷에 따라 수신된 이미지를 선택적으로 전-처리하도록 구성된 하나 이상의 제 1 소프트웨어 컴포넌트들; 및 각각의 이미지 큐가 프린팅 장치에서 프린트 엘리먼트들의 구성에 해당하는 프린트 엘리먼트들의 연관과 결합된 이미지 데이터의 적어도 일부를 포함하도록, 전-처리된 이미지에 해당하는 이미지 큐를 생성하도록 구성된 하나 이상의 제 2 소프트웨어 컴포넌트들을 포함한다.
구현예들은 하기의 하나 이상의 특징을 포함할 수 있다. 이미지를 수신하도록 구성된 제 1 소프트웨어 컴포넌트들은 전-처리된 이미지를 전송하기 위해 또 다른 소프트웨어 컴포넌트의 표시를 수신하도록 구성된 제 1 소프트웨어 컴포넌트들을 더 포함할 수 있고, 제 1 소프트웨어 컴포넌트는 제 2 소프트웨어 컴포넌트들로 전-처리된 이미지를 전송하도록 구성될 수도 있다. 소프트웨어 구현 시스템은 사용자와 상호작용하며 프린트될 이미지의 표시를 제 1 소프트웨어 컴포넌트로 전송하도록 구성된 사용자 인터페이스 컴포넌트를 포함할 수 있다. 제 1 및 제 2 소프트웨어 컴포넌트들은 개별 컴퓨터 시스템 상에 제공될 수 있으며, 제 2 소프트웨어 컴포넌트 각각은 개별 컴퓨터 시스템 상에 제공될 수 있다.
이미지 프린팅을 용이하게 하는 개시된 시스템, 컴퓨터 프로그램 제품, 및 기술들은 하기의 하나 이상의 장점을 구현하도록 수행될 수 있다.
이미지들은 프린트 엘리먼트 연관들(예를 들어, 총체적으로 프린트 헤드를 형성하는 결합된 프린팅 엘리먼트들의 구성)에 해당하는 이미지 큐들로 분할된다. 각각의 프린트 엘리먼트 연관에 대해 한 개의 이미지 큐가 제공되도록 이미지를 복수 개의 이미지 큐로 분할함으로써, 각각의 프린트 엘리먼트 연관은 이미지의 일부를 프린트할 수 있다. 이미지가 각각의 프린트 엘리먼트 연관에 대해 부분들로 분할되기 때문에, 상이한 이미지 큐들에 상이한 이미지들로부터의 이미지 데이터의 부분들을 배치함으로써 복수 개의 이미지들이 동시에 프린트될 수 있다. 예를 들어, 제 1 4개의 프린트 엘리먼트 연관들이 제 1 이미지로부터의 이미지 데이터를 포함하는 4개의 이미지 큐로부터 이미지 데이터를 수신하는 경우, 및 4개의 프린트 엘리먼트 연관의 제 2 세트가 제 2 이미지로부터의 이미지 데이터를 포함하는 또 다른 세트의 4개의 이미지 큐로부터의 이미지 데이터를 수신하는 경우, 2개의 이미지가 8개의 프린트 엘리먼트 연관을 가지는 프린팅 장치에서 2개의 상이한 표면 상에서 서로 근접하게 프린트될 수 있다.
이미지들을 처리하고 이미지 큐를 생성하는 제어 아키텍쳐는, 하이-레벨 드라이버(이미지 제어 컴포넌트로 간주됨) 및 로우-레벨 드라이버(이미지 큐 생성 컴포넌트로 간주됨)를 포함하는, 2 계층(two-tiered)일 수 있다. 상기 아키텍쳐에서, 하이 레벨 드라이버는 데이터의 모든 전-처리(예를 들어, 파일 포맷들을 변환)를 수행할 수 있고 로우 레벨 드라이버는 이미지 큐를 생성할 수 있다. 이러한 태스크들을 분할하는 2 계층 방안을 취함으로써, 아키텍쳐는 임의의 개수의 하이 레벨 또는 로우 레벨 드라이버들을 포함하도록 스케일링될 수 있다.
하나 이상의 구현예들의 상세한 설명은 첨부되는 도면 및 하기 설명에 개시된다. 본 발명의 다른 특징, 목적, 및 장점은 상세한 설명부, 도면 및 청구항에서 명확해질 것이다.
도 1은 프린트 시스템의 블록도이다.
도 2 및 도 3은 도 1의 프린트 시스템의 프린트 모듈 및 프린트 엘리먼트들의 배치를 나타내는 도면.
도 4는 측방 위치에서 프린트 엘리먼트들의 상대적 이동 분포를 개략적으로 나타내는 도면.
도 5는 상이한 워크피스 상에서의 일련의 이미지 프린팅을 개략적으로 나타내는 도면.
도 6은 상이한 워크피스 상에서의 일련의 이미지 프린팅을 위한 프로세스 흐름도.
도 7, 도 8 및 도 9는 프린트 엘리먼트 연관의 분포에 따른 이미지 데이터 분할의 구현예를 나타내는 도면.
도 10은 프린트 시스템의 구현예의 개략도.
도 11은 소프트웨어에서 실행되는 제어 아키텍쳐를 포함하는 프린팅 시스템의 개략도.
도 12는 이미지를 프린팅하는 프로세스의 흐름도.
다양한 도면에서 동일한 참조 부호는 동일한 엘리먼트를 나타낸다.
도 1은 프린트 시스템(100)의 블록도이다. 프린트 시스템(100)은 워크피스 컨베이어(105) 및 프린터 하우징(110)을 포함한다. 워크피스 컨베이어(105)는 일련의 워크피스들(115, 120, 125, 130, 135, 140, 145)과 프린터 하우징(110) 사이에서 상대적 이동을 야기시킨다. 특히, 워크피스 컨베이어(105)는 프린터 하우징(110)의 페이스(face)(150)에 대해 D 방향으로 워크피스들(115, 120, 125, 130, 135, 140, 145)을 운반한다. 워크피스 컨베이어(105)는 롤러, 벨트 또는 운반 동안 워크피스들(115, 120, 125, 130, 135, 140, 145)을 유지할 수 있는 다른 엘리먼트를 이동시키는 스텝퍼 또는 연속 모터를 포함할 수 있다. 워크피스들(115, 120, 125, 130, 135, 140, 145)은 시스템이 프린트하는 복수 개의 상이한 기판들 중 하나일 수 있다. 예를 들어, 워크피스들(115, 120, 125, 130, 135, 140, 145)은 종이, 판지, 마이크로일렉트로닉 장치, 또는 식료품일 수 있다.
프린터 하우징(110)은 워크피스 검출기(155)를 수용한다. 워크피스 검출기(155)는 하나 이상의 워크피스들(115, 120, 125, 130, 135, 140, 145)의 위치를 검출할 수 있다. 예를 들어, 워크피스 검출기(155)는 페이스(150) 상의 소정의 포인트에 대해 워크피스들(115, 120, 125, 130, 135, 140, 145)의 에지들의 통과를 검출하는 레이저/광검출기 어셈블리일 수 있다.
제어 전자장치(160)가 프린터 하우징(110)으로부터 원격으로 위치된다. 제어 전자장치(160)는 케이블(195) 및 소형(minimal) 전자장치(190)에 의해 프린터 하우징(110)과 접속된다. 제어 전자장치(160)는 시스템(100)에 의해 프린트 동작의 성능을 제어한다. 제어 전자장치(160)는 기계-판독가능 명령어 세트의 로직에 따라 동작을 수행하는 하나 이상의 데이터 프로세싱 장치를 포함할 수 있다. 예를 들어, 제어 전자장치(160)는 프린터 하우징(110)에서 프린팅을 제어하는 소프트웨어 및 이미지 프로세싱 소프트웨어를 작동시키는 개인형 컴퓨팅 시스템일 수 있다.
제어 전자장치(160) 내에는 프린트 이미지 버퍼(165)가 위치된다. 프린트 이미지 버퍼(165)는 프린트 엘리먼트들에 의한 프린트를 위해 이미지 데이터를 저장하는 하나 이상의 데이터 저장 장치이다. 예를 들어, 프린트 이미지 버퍼(165)는 랜덤 액세스 메모리(RAM) 장치들의 집합체일 수 있다. 프린트 이미지 버퍼(165)는 이미지 데이터를 저장하고 검색하기 위해 제어 전자장치(160)에 의해 액세스될 수 있다.
제어 전자장치(160)는 케이블(195) 및 소형 전자장치(190)를 경유하여 프린터 하우징(110)과 접속된다. 제어 전자장치(160)는 케이블(195)을 통해 데이터를 전송할 수 있고, 소형 전자장치(190) 프린터 하우징에서 프린트용 데이터를 수신할 수 있다. 제어 전자장치(160)는 프린터 하우징(110)으로 전송되는 데이터를 생성하는 특정한 회로(예를 들어, 프린트 이미지 버퍼들로부터 이미지를 수신 및/또는 검색할 수 있고, 컨베이어를 따라 이동함에 따라 워크피스 상의 해당 이미지 위치에 잉크가 침착되도록 때를 맞추어 프린팅 장치에서 프린트 엘리먼트들이 이미지 데이터를 수신할 수 있게 하는, 도 10을 참조로 보다 상세히 개시되는 데이터 펌프)를 가질 수 있다. 예를 들어, 소형 전자장치(190)는 마이크로프로세서, 송수신기(transceiver) 및 소형 메모리를 포함하는 필드-프로그램가능 게이트 어레이일 수 있다. 소형 전자장치(190)는 프린터 하우징(110)에 접속될 수 있어, 프린터 하우징(110) 및/또는 프린터 하우징(110) 내의 하드웨어가 쉽게 변경되도록 소형 전자장치(190)가 분리될 수 있다. 예를 들어, 프린터 하우징(110)이 신형 프린팅 모듈을 포함하는 신형 프린터 하우징으로 교체될 경우, 소형 전자장치(190)는 구형 프린터 하우징(110)과 분리되고 신형 프린터 하우징에 접속될 수 있다.
이미지의 프린팅은 제어 전자장치가 이미지 프로세싱을 수행하고 프린팅을 제어하도록, 제어 전자장치(160)와 소형 전자장치(190) 사이에서 분할되는 반면, 소형 전자장치(190)는 케이블을 경유하여 수신되는 데이터를 수신하고 프린터 하우징(110)에서 프린트 엘리먼트들의 파이어링(firing)이 야기되도록 데이터를 이용한다. 따라서, 예를 들어, 이미지 데이터는 제트맵(jetmap) 이미지 데이터로 변환되며, 제트맵 이미지 데이터(하기에 보다 상세히 설명됨)로 변환되는 프로세스의 일부로서 이미지 버퍼들의 복수 개의 이미지 큐로 이미지 데이터를 분할하는 것을 포함할 수 있다; 지연부들(delays)이 이미지 데이터에 삽입될 수 있다(예를 들어, 삽입되는 지연부는 프린트 엘리먼트 연관의 분포에 대응됨); 그리고 이미지 데이터는 제어 전자장치(160)에 의해 적절한 시기에 전송될 수 있다(예를 들어, 이미지 데이터의 데이터 패킷을 인코딩하고 수신기에 의해 전송함); 반면, 소형 전자장치(190)는 이미지 데이터만을 수신할 수 있고(예를 들어, 디코드 이미지 데이터 패킷은 케이블(195)을 통해 전송된다) 이미지가 워크피스 상에 (예를 들어, 이미지 데이터에 따라 잉크젯 노즐의 파이어링이 야기되어) 프린트되도록 이미지 데이터를 중계한다. 제어 전자장치(160)는 프린터 하우징(110)에서 이미지의 프린팅을 동기화시킬 수 있다. 이전 실시예에 따라, 제어 전자장치(160)는 워크피스의 전연(leading edge) 표시를 수신하고, 프린터 하우징(110)에서 이미지 프린팅이 야기되도록 케이블(195)을 통해 이미지 데이터를 전송함으로써, 이미지의 프린팅을 동기화시킬 수 있다.
제어 전자장치(160)는 워크피스가 워크피스 컨베이어(105)를 따라 이동함에 따라 워크피스 상에 적시(just-in-time) 이미지 프린팅이 가능하도록 프린터 하우징(110)으로 이미지 데이터를 전송할 수 있다. 적시 프린팅의 일 구현예에서, 프린터 하우징(110)으로의 이미지 데이터 전송은 데이터가 프린터 하우징(110)에 도달함에 따라 패킷에서 이미지 데이터가 '실질적으로 즉시' 프린팅되게 하는 트리거로서 작용할 수 있다. 본 구현예에서, 이미지 데이터는 이미지 데이터가 프린팅되기 이전에 프린터 하우징 상의 저장 부품에 저장되지 않고, 프린터 하우징에 데이터가 도달함에 따라 프린팅될 수 있다. 적시 프린팅은 실질적으로 이미지 데이터가 프린터 하우징에 도달하는 순간에 이미지 데이터를 프린팅하는 것으로 간주될 수 있다.
적시 프린팅의 또 다른 구현예에서, 프린터 하우징에 수신된 데이터는 하나 이상의 래치에 저장되며, 프린터 하우징에서 수신되는 새로운 또는 후속적 데이터는 래치된 데이터를 프린팅하는 트리거로서 작용할 수 있다. 본 구현예에서, 프린터 하우징에서 수신된 데이터는 후속적 데이터가 프린터 하우징에 도달할 때까지 래치에 저장되며, 프린터 하우징에 도달하는 후속적 데이터는 래치된 데이터를 프린팅하는 트리거로서 작용할 수 있다. 데이터, 후속적 데이터 및 래치된 데이터는 이미지 데이터 패킷의 형태로 프린터 하우징에서 수신 및/또는 저장될 수 있다. 이 경우, 프린터 하우징에 도달하는 후속적 데이터는 다음의 후속적 데이터가 된다. 선택적으로, 프린터 하우징에 도달하는 후속적 데이터는 다음의 후속적 데이터 이후 도달하는 후속적 데이터와 같이, 다음의 후속적 데이터가 아닌 후속하는 데이터이다. 이미지 데이터는 높은-데이터 속도로 프린팅되기 때문에, 래치된 데이터로부터 프린트된 데이터는 데이터가 프린터 하우징에 도달할 때 '실질적으로 즉시' 프린팅되는 데이터로 간주될 수 있다.
프린터 하우징(110)은 소형 전자장치(190) 및 감소된 양의 메모리를 갖기 때문에, 프린터 하우징(110)이 낮은 비용으로 구현될 수 있다. 프린터 하우징(110)에 사용되는 형태의 메모리도 낮은 비용으로 구현될 수 있다. 일 구현예에서, 프린터 하우징(110) 상에서 구현되는 형태의 메모리는 소형 전자장치(190)의 일부일 수 있는 필드-프로그램가능 게이트 어레이(FPGA) 집적회로(IC)의 일부이다. 프린터 하우징(110)을 구현하는 비용 및 엔지니어링 설계 태스크는 프린터 하우징(110)에서 고속의 이미지 데이터의 버퍼링이 거의 없거나 또는 없기 때문에 감소될 수도 있다. 시스템(100)은 예를 들어, 프린터 하우징(110)에서 복수 개의 FGPA를 갖는 구성을 포함하는 복수 개의 구성으로 프린터 하우징(110)에 높은 대역폭의 동기식 적시 이미지 데이터의 스케일링가능한 전송(scalable transmission)을 제공할 수 있으며, 상기 FGPA들 각각은 하나 이상의 케이블을 이용하여 하나 이상의 데이터 펌프와 접속되어 소형 전자장치(190)를 구현할 수 있다.
도 2 및 도 3은 하우징(110) 상의 프린트 모듈 및 프린트 엘리먼트들의 배열을 나타낸다. 특히, 도 2는 측면으로부터의 하우징(110)을 나타내는 반면, 도 3은 밑면으로부터의 하우징(110)을 나타낸다.
하우징(110)은 페이스(150) 상에 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)의 집합체를 포함한다. 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315) 각각은 하나 이상의 프린트 엘리먼트를 포함한다. 예를 들어, 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)은 잉크젯 노즐의 선형 어레이를 각각 포함할 수 있다.
프린트 모듈(205, 305)은 컬럼(320)을 따라 측방으로 배열된다. 프린트 모듈(210)은 컬럼(325)을 따라 배열된다. 프린트 모듈(215, 310)은 컬럼(330)을 따라 측방으로 배열된다. 프린트 모듈(220)은 컬럼(335)을 따라 배열된다. 프린트 모듈(225, 315)은 컬럼(340)을 따라 측방으로 배열된다. 프린트 모듈(230)은 컬럼(345)을 따라 배열된다. 컬럼을 따르는 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)의 이러한 배열은 페이스(150) 상의 유효 프린트 영역(235)에 이른다(span). 유효 프린트 영역(235)은 프린트 모듈(205, 305)에 있는 프린트 엘리먼트들로부터 프린트 모듈(230)에서 프린트 엘리먼트들로 확대되는 세로방향(longitudinal) 폭(W)을 갖는다.
프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)은 이미지의 선택된 성분들(components)을 프린트하기 위해 프린트 엘리먼트 연관에 분포될 수 있다. 예를 들어, 프린트 모듈들(205, 210, 305)은 페이스(150)에 대해 이동하는 기판의 전체 측방 확장부에 대해 제 1 컬러를 프린트하기 위해 제 1 프린트 엘리먼트 연관에 분포될 수 있고, 프린트 모듈들(215, 220, 310)은 전체 측방 확장부에 대해 제 2 컬러를 프린트하기 위해 제 2 프린트 엘리먼트 연관에 분포될 수 있고, 프린트 모듈들(225, 230, 315)은 전체 측방 확장부에 대해 제 3 컬러를 프린트하기 위해 제 3 프린트 엘리먼트 연관에 분포될 수 있다.
또 다른 예로서, 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)의 그룹은 모듈에서의 구성 프린트 엘리먼트들의 종란 배치의(columnar) 위치에 기초하여 프린트 엘리먼트 연관들에 분포될 수 있다. 예를 들어, 제 1 프린트 엘리먼트 연관은 이들의 구성 프린트 엘리먼트들이 단일의 컬럼으로 배열되도록 분포되는 모듈들(205, 305)을 포함할 수 있다. 제 2 프린트 엘리먼트 연관은 프린트 모듈(210)만을 포함할 수 있다. 모듈들(215, 310)은 제 3 연관을 형성할 수 있다. 4, 5, 6 연관은 각각 모듈(220, 225 및 315, 및 230)을 포함한다. 이러한 종란 배치 방식으로 프린트 엘리먼트들의 연관을 형성함으로써 이미지 데이터에서의 복잡한 실시간 조절을 요구하지 않고, 세로방향 폭(W)을 기준으로, 완성된 이미지 영역들 사이에 가변적이지만 작은 또는 존재하지 않는 프린트되지 않은(non-printed) 영역으로 연속적(back-to-back) 비유사 이미지의 프린팅이 허용된다.
또 다른 예로서, 프린트 모듈들(205, 210, 215, 220, 225, 230, 305, 310, 315)의 그룹은 모듈에서의 구성 프린트 엘리먼트들의 측방 위치에 기초하여 프린트 엘리먼트 연관에 분포될 수 있다. 예를 들어, 제 1 프린트 엘리먼트 연관은 이들의 구성 프린트 엘리먼트들이 모듈들(215, 220, 310)의 프린트 엘리먼트들 및 모듈들(225, 230, 315)의 프린트 엘리먼트들을 기준으로 측방 위치로 이동할 수 있도록 분포되는 모듈들(205, 210, 305)을 포함한다. 제 2 프린트 엘리먼트 연관은 이들의 구성 프린트 엘리먼트들이 모듈들(205, 210, 305)의 프린트 엘리먼트들 및 모듈들(225, 230, 315)의 프린트 엘리먼트들을 기준으로 측방 위치로 이동할 수 있도록 분포되는 모듈들(215, 220, 310)을 포함한다. 모듈들(225, 230, 315)은 제 3 연관을 형성할 수 있다. 위치의 상대적 이동은 알짜 효과(net effect)로 하우징(110) 상의 프린트 엘리먼트들 사이의 측방 공간을 감소시켜 프린트될 수 있는 이미지 해상도를 효율적으로 증가시키기 위해, 모듈들의 프린트 엘리먼트들의 측방 공간보다 작을 수 있다.
또 다른 예로서, 프린트 모듈들의 그룹은 프린트 모듈에 의해 커버되는 측방 확장부에 기초하여 프린트 엘리먼트 연관에 분포될 수 있다. 예를 들어, 제 1 프린트 엘리먼트 연관은 워크피스의 측방 외부 확장부를 커버하도록 분포되는 모듈들(205, 305, 215, 310, 225, 315)을 포함할 수 있다. 제 2 프린트 엘리먼트 연관은 워크피스의 측방 중앙 확장부를 커버하도록 분포된 프린트 모듈들(210, 220, 230)을 포함할 수 있다.
또 다른 예로서, 프린트 엘리먼트들의 그룹은 이들 요인 및 다른 요인들의 조합에 기초하여 프린트 엘리먼트 연관에 분포될 수 있다. 예를 들어, 프린트 엘리먼트들의 그룹은 워크피스의 외부 영역(extent)상의 청록색 프린팅에 기초하여 프린트 엘리먼트 연관에 분포될 수 있다. 또 다른 예로서, 프린트 모듈들의 그룹은 워크피스의 측방 외부 확장부 상에 소정의 측방 위치에서 구성 프린트 엘리먼트들에 기초하여 프린트 엘리먼트 연관에 분포될 수 있다.
각각의 프린트 엘리먼트 연관은 연관이 메모리 위치에 존재하는 이미지 데이터를 프린트하는 프린트 이미지 버퍼(도 1에 도시됨)에 전용 메모리 위치를 가질 수 있다. 예를 들어, 프린트 이미지 버퍼(165)가 각각의 버퍼들의 큐들의 집합체인 경우, 각각의 프린트 엘리먼트 연관은 버퍼들의 개별적인, 전용 큐를 가질 수 있다.
도 4는 측방 위치에서 상대적 이동에 따른 프린트 엘리먼트들의 분포를 개략적으로 나타낸다. 하우징(110)의 도시된 부분은 프린트 모듈들(205, 215, 225)을 포함한다. 프린트 모듈(205)은 간격(L) 만큼 서로 측방으로 이격된 프린트 엘리먼트들(405)의 어레이를 포함한다. 프린트 모듈(215)은 간격(L) 만큼 서로 측방으로 이격된 프린트 엘리먼트들(410)의 어레이를 포함한다. 프린트 모듈(225)은 간격(L) 만큼 서로 측방으로 이격된 프린트 엘리먼트들(415)의 어레이를 포함한다.
프린트 엘리먼트들(405)은 프린트 엘리먼트들(410)의 측방 위치를 기준으로 이동 간격(S) 만큼 이동된다. 프린트 엘리먼트들(405)은 프린트 엘리먼트들(415)의 측방 위치를 기준으로 이동 간격(S) 만큼 이동된다. 프린트 엘리먼트들(410)은 프린트 엘리먼트들(415)의 측방 위치를 기준으로 이동 간격(S) 만큼 이동된다. 이동 간격(S)은 L 보다 작고, 프린트 엘리먼트들(405), 프린트 엘리먼트들(410) 및 프린트 엘리먼트들(415) 간의 상대적 측방 이동의 알짜 효과는 하우징(110) 페이스(150) 상의 프린트 엘리먼트들 간의 전체 측방 공간을 감소시킨다.
도 5는 프린트 시스템(100)을 사용하는 2개 이상의 상이한 워크피스들 상에서 일련의 이미지(500) 프린팅을 개략적으로 나타낸다. 일련의 워크피스들(120, 125, 130, 135, 140)은 프린팅을 위해 프린터 하우징(110)의 페이스(150) 상의 유효 프린트 영역(235)을 통해 운반된다. 이미지(500)는 이미지(500)가 워크피스들(120, 125, 130, 135, 140) 상에 후속적으로 프린트되도록 연속적으로 프린트될 수 있다(즉, 동일한 이미지가 다양한 워크피스들 상에 연속적으로 프린트된다).
워크피스들(120, 125, 130, 135, 140)은 각각 세로방향 폭(W2)을 갖는다. 워크피스 폭(W2)은 유효 프린트 영역(235)의 폭(W) 보다 작다. 워크피스(120)의 전연은 이격 간격(SEP)만큼 워크피스(125)의 후연(trailing edge)과 분리된다. 워크피스(125)의 전연은 이격 간격(SEP)만큼 워크피스(130)의 후연과 분리된다. 워크피스(130)의 전연은 이격 간격(SEP)만큼 워크피스(135)의 후연과 분리된다. 워크피스(135)의 전연은 이격 간격(SEP)만큼 워크피스(140)의 후연과 분리된다. 이격 간격(SEP)은 유효 프린트 영역(235)의 폭(W) 보다 작을 수 있다. 이격 간격(SEP)은 제로일 수 있다. 이처럼, 워크피스들(130, 135)은 동시적으로 유효 프린트 영역(235)에 위치되고 동시에 프린트될 수 있다.
시스템(100)은 워크피스들(130, 135) 상에 부분적으로 프린트된 이미지(500)를 갖는다. 단일의 유효 프린트 영역을 사용하여 2개 이상의 상이한 워크피스 상에 일련의 이미지(500)를 프린팅하는 것은 시스템(100)에서 워크피스 처리량을 증가시킨다.
도 6은 단일의 유효 프린트 영역을 이용하여 2개 이상의 상이한 워크피스들 상에 일련의 이미지를 프린팅하는 프로세스(650, 655, 660)의 흐름도를 포함한다. 프로세스(650, 655, 660)는 데이터 프로세싱 장치 및/또는 프린트 엘리먼트들에 의해 프린팅되는 컬러 및 버퍼와 데이터를 상호교환하도록 구성된 회로에 의해 전체 또는 부분적으로 실행될 수 있다. 시스템(100)에서, 프로세스(650, 655, 660)는 워크피스 컨베이어(105) 및 워크피스 검출기(155)로부터 수신된 입력을 사용하여 제어 전자장치(160)에 의해 실행될 수 있다. 제어 전자장치(160) 내에서, 시스템(100)의 상이한 부품들에 의해 상이한 프로세스들이 실행될 수 있다. 예를 들어, 프로세스(655, 660)는 데이터 펌프에 의해 실행될 수 있다. 프로세스(650, 655, 660)는 서로 동시적으로 및/또는 독립적으로 실행될 수 있다는 것을 나타내도록 구별된다.
프로세스(650)를 실행하는 시스템은 이미지 데이터를 수신한다(605). 이미지 데이터는 개별 이미지와 관련되는 단독형(stand-alone) 수집 데이터일 수 있다. 예를 들어, 이미지 데이터는 그래픽 이미지 포맷(gif), JPEG(Joint Photographic Experts Group) 파일, 포스트스크립트(Postscript), 프린터 명령어(PCL), 또는 다른 이미지 데이터의 집합체일 수 있다.
다음 단계(610)에서, 시스템은 결합된 프린트 엘리먼트들의 분포에 따라 수신된 이미지 데이터를 변환하고 분할할 수 있다. 이미지 데이터는 분할하기 이전에 변환되거나, 변환되기 이전에 분할되거나, 또는 동일한 프로세스의 일부로서 변환되고 분할될 수 있다. 이미지 데이터의 변환은, 예를 들어, 이미지 데이터를 비트맵 래스터(raster) 데이터와 같이 프린팅 장치에 의해 이해할 수 있는 포맷으로의 변환, 및 비트맵 레스터 데이터를 제트맵(jetmap) 데이터로의 변환을 포함할 수 있다. 비트맵 레스터 이미지 데이터를 제트맵 데이터로의 변환은 비트맵 이미지 포맷에 의해 사용되는 지리적 순서(geographic order)에 해당하는 순서(order)로 배열되는 입력 비트맵을 선택하는 단계, 및 프린트 엘리먼트들의 물리적 위치에 해당하는 비트맵 레스터 이미지 데이터를 재배열하는 단계를 수반한다. 또한 비트맵 레스터 이미지 데이터를 제트맵 데이터로 변환하는 프로세스의 일부로서 이미지 데이터를 분할하는 단계를 수반할 수 있다(즉, 제트맵 데이터는 프린트 엘리먼트 연관에 해당하는 이미지 버퍼들로 분할된다). 예로서, 단계(610)에서 프로세스는 jpeg 포맷된 이미지 데이터를 비트맵 포맷된 이미지 데이터로 변환하는 단계, 및 이어서 프린트 엘리먼트 연관에 해당하는 이미지 버퍼로서 비트맵 포맷된 이미지 데이터를 제트맵 이미지 데이터로 변환하는 단계를 수반한다. 선택적 구현예에서, 이미지 데이터는 중간 포맷으로의 제 1 변환 없이 직접 제트맵 데이터로 변환될 수 있다.
결합된 프린트 엘리먼트의 분포에 따른 이미지 데이터 분할은 연관 분포에 기초하여 프린트 엘리먼트들의 연관에 의해 프린트되는 이미지 데이터의 부분들의 식별을 포함한다.
도 7은 프린트 엘리먼트 연관의 분포에 따른 이미지(700)를 나타내는 이미지 데이터 분할의 구현예를 나타낸다. 이미지(700)는 청록색(cyan) 라인(705), 자홍색(magenta) 라인(710), 및 황색(yellow) 라인(715)을 포함한다. 청록색 라인(705)은 청록색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 자홍색 라인(710)은 자홍색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 황색 라인(705)은 황색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다.
이미지 데이터를 나타내는 이미지(700)가 분할될 때(화살표(720)로 표시됨), 데이터를 나타내는 이미지들(725, 730, 735)의 개별 집합체가 형성된다. 이미지(725)는 청록색 라인(705)을 포함하며 청록색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 이미지(730)는 황색 라인(715)을 포함하며 황색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 이미지(735)는 자홍색 라인(710)을 포함하며 자홍색을 프린트하도록 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 따라서, 이미지 데이터를 나타내는 이미지(725, 730, 735)는 상이한 컬러를 프린트하도록 프린트 엘리먼트들의 연관의 분포에 따른 데이터를 나타내는 이미지(700)의 분할 결과이다.
도 8은 프린트 엘리먼트 연관의 분포에 따른 이미지 데이터(즉, 이미지 데이터를 나타내는 이미지 부분(800)) 분할의 또 다른 구현예를 나타낸다. 특히, 측방 위치에서 상대적 이동에 따른 프린트 엘리먼트들의 분포에 따른 분할이 도시된다. 프린트 엘리먼트들의 측방 위치에서의 이동은 도 4에 도시된 하우징(110)의 구현예에서 프린트 엘리먼트들(405), 프린트 엘리먼트들(410), 및 프린트 엘리먼트들(415) 간의 측방 이동(S)에 대응할 수 있다.
이미지 부분(800)은 픽셀 로우들(805, 810, 815)의 집합체를 포함한다. 픽셀 로우들(805, 810, 815) 각각은 픽셀들의 세로방향 로우를 포함한다. 픽셀 로우들(805)은 픽셀 로우(810)의 위치를 기준으로 이동 간격(S) 만큼 측방으로 이동한다. 픽셀 로우들(805)은 픽셀 로우(815)의 위치를 기준으로 이동 간격(S) 만큼 측방으로 이동한다. 픽셀 로우들(810)은 픽셀 로우(815)의 위치를 기준으로 이동 간격(S) 만큼 측방으로 이동한다. 이동 간격(S)(및 프린트된 이미지들의 측방 해상도)은 프린트 엘리먼트들 간의 전체 측방 공간에 의해 결정된다.
워크피스가 프린트 엘리먼트들의 어레이에 대해 세로방향으로 이동할 때, 각각의 픽셀 로우들(805, 810, 815)은 각각의 프린트 엘리먼트에 의해 프린트될 수 있다. 예를 들어, 이미지 부분(800)이 도 4에 도시된 하우징(110)의 구현예를 이용하여 프린트될 경우, 단일의 프린트 엘리먼트(405)가 단일의 픽셀 로우(805)를 프린트하고, 단일의 프린트 엘리먼트(410)가 단일의 픽셀 로우(810)를 프린트하고, 단일의 프린트 엘리먼트(415)가 단일의 픽셀 로우(815)를 프린트할 수 있다.
이미지 데이터를 나타내는 이미지 부분(800)이 분할될 때(화살표(820)로 표시됨), 데이터를 나타내는 이미지 부분들(825, 830, 835)의 개별 집합체가 형성된다. 이미지 부분(825)은 픽셀 로우(805)를 포함하며 측방 간격(L)만큼 분리된 프린트 엘리먼트들의 제 1 어레이에 의해 프린트될 수 있다. 이미지 부분(830)은 픽셀 로우(810)를 포함하며 측방 간격(L)만큼 분리된 프린트 엘리먼트들의 제 2 어레이에 의해 프린트될 수 있다. 이미지 부분(835)은 픽셀 로우(815)를 포함하며 측방 간격(L)만큼 분리된 프린트 엘리먼트들의 제 3 어레이에 의해 프린트될 수 있다. 이들 어레이에서 프린트 엘리먼트들은 서로를 기준으로 측방 위치로 이동된다. 따라서, 이미지 데이터를 나타내는 이미지 부분들(825, 830, 835)은 상이한 측방 위치에서 프린트되는 프린트 엘리먼트들의 연관의 분포에 따라 데이터를 나타내는 이미지 부분(800)의 분할 결과이다.
도 9는 프린트 엘리먼트 연관들의 분포에 따라 이미지 데이터를 나타내는 이미지(900) 분할의 또 다른 구현예를 나타낸다. 이미지(900)는 이미지(900)의 전체 측방 확장부를 확대시키는 단일 라인(905)을 포함한다.
이미지 데이터를 나타내는 이미지(900)가 분할될 때(화살표(910)로 표시됨), 데이터를 나타내는 이미지(915, 920)의 2개의 개별적 집합체가 형성된다. 이미지(915)는 2개의 외부 라인 부분(925)을 포함하며 워크피스의 외측을 향해 분포되는 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 예를 들어, 외부 라인 부분(925)은 프린트 모듈들(205, 305)을 포함하는 연관에 의해, 프린트 모듈들(215, 310)을 포함하는 연관에 의해, 또는 프린트 모듈들(225, 315)을 포함하는 연관에 의해 프린트될 수 있다(도 3).
이미지(920)는 중앙 라인 부분(930)을 포함하며 워크피스의 중심을 향해 분포된 프린트 엘리먼트들의 연관에 의해 프린트될 수 있다. 예를 들어, 중심 라인 부분(930)은 프린트 모듈(210)을 포함하는 연관에 의해, 프린트 모듈(220)을 포함하는 연관에 의해, 또는 프린트 모듈(230)을 포함하는 연관에 의해 프린트될 수 있다(도 3). 따라서, 이미지 데이터를 나타내는 이미지(915, 920)는 상이한 측방 확장부가 프린트되도록 프린트 엘리먼트들의 연관의 분포에 따른 데이터를 나타내는 이미지(900)의 분할 결과이다.
다시 도 6을 참조로, 시스템이 실행하는 프로세스(650)는 단계(615)에서 분할로부터 야기되는 이미지 데이터 부분들을 각각의 이미지 큐에 할당한다. 다른 말로, 각각의 큐에 할당되는 이미지 데이터의 각각의 버퍼에서 할당이 이루어진다. 일반적으로, 이미지 데이터의 각각의 버퍼는 프린팅 장치에서 프린트 엘리먼트들의 할당에 해당한다. 유사하게, 버퍼 세트는 프린트 엘리먼트 연관에 의해 프린트되는 이미지 데이터 세트에 해당한다. 단계(610)에서 생성되는 이미지 데이터의 버퍼들은 큐들에서 대기되며, 각각의 큐는 프린트 엘리먼트 연관과 대응한다. 예를 들어, 8개의 이미지 큐가 있다면, 각각의 이미지 큐는 프린트 엘리먼트 연관에 해당하고, 제 1 프린트 엘리먼트 연관에 해당하는 이미지 데이터의 버퍼 세트는 제 1 이미지 큐에 할당될 수 있으며, 제 2 프린트 엘리먼트 연관에 해당하는 이미지 데이터 버퍼 세트는 제 2 이미지 큐에 할당될 수 있다. 이미지 큐 및 버퍼가 위치되는 메모리 위치는 특정한 프린트 엘리먼트 연관에 의해 프린팅되는 이미지 데이터의 저장부로 전용될 수 있다. 예를 들어, 메모리 위치는 운영 시스템에 의해 메모리 관리부로부터 차단될 수 있으며 메모리 위치는 다이랙트 메모리 액세스를 이용하는 데이터 펌프에 의해 액세스될 수 있다. 이미지 데이터의 버퍼들에 대한 큐는 선입선출 큐(즉 FIFO 큐)일 수 있다.
단계(620)에서, 시스템 실행 프로세스(650)는 프린트 이미지 버퍼들(즉, 이미지 데이터의 버퍼들)이 위치설정되는 곳을 나타내는 위치들을 시스템이 업데이트했는지 여부를 결정한다. 예를 들어, 시스템은 하나 이상의 데이터 펌프에서 위치들을 업데이트할 수 있다. 본 예에서, 데이터 펌프들은 버퍼들이 위치되어 이미지 데이터를 검색하는 메모리 장치들 각각으로 데이터 펌프가 액세스될 수 있도록, 이미지 큐 각각에 프린트 버퍼들이 위치된 곳을 나타내는 위치를 저장할 수 있다. 단계(620)에서 시스템이 위치들을 업데이트해야 한다고 결정하면, 단계(625)에서 위치들은 버퍼들을 기준으로 업데이트된다. 그렇지 않다면, 단계(605)에서 이미지 데이터가 수신되고 프로세스가 지속된다. 또한, 단계(620)에서 위치들의 업데이트가 요구되지 않는 경우, 단계(605)에서 프로세스가 지속된다. 소정 구현예에서, 예를 들어 더이상 이미지 데이터가 수신되지 않는 경우(예를 들어, 더이상 이미지들이 프린트되지 않는 경우), 또는 이미지 큐들이 가득 찬 경우, 단계(650)의 프로세스는 중단된다.
단계(627)에서 프린팅이 개시되어야 하는지 또는 지속되어야 하는지에 대한 결정이 이루어진다. 만약 상기 결정이 아니오 라면, 단계(627)에서 프로세스는 지속된다. 만약 상기 결정이 예 라면, 단계(630)에서 이미지 데이터가 이미지 큐에있는 버퍼들로부터 검색될 수 있다. 예를 들어, 데이터 펌프는 이미지 데이터의 버퍼들을 검색할 수 있다. 예를 들어, 데이터 펌프는 적절한 버퍼들을 식별할 수 있으며, 이는 버퍼들의 위치가 단계(625)에서 데이터 펌프에서 업데이트될 수 있기 때문이다. 프린트 엘리먼트들의 연관의 하나의 임프레션(impression)에 대한 충분한 양의 이미지 데이터가 검색될 수 있다. 따라서, 이미지 데이터는 각각의 이미지 큐로부터 검색될 수 있다. 선택적 구현예에서, 단일 임프레션의 부분을 나타내는 이미지 부분들의 데이터가 검색될 수 있다. 유사하게 몇 개의 임프레션을 나타내는 이미지 부분들의 데이터가 검색될 수 있다. 이러한 구현예에서, FIFO 큐와 같은 큐는 이미지 데이터(예를 들어, 이미지 데이터의 버퍼 세트)를 저장할 수 있다.
단계(635)에서, 위치 지연부가 이미지 데이터의 선택된 부분에 부가된다. 지연부는 이미지 데이터 각각의 부분에 해당하는 프린트 엘리먼트들의 연관과 이미지 데이터를 정렬하는 업프론트(upfront) 지연부이다. 따라서, 업프론트 지연부의 범위는 이미지 데이터가 해당하는 프린트 엘리먼트 연관의 분포를 기초로 결정될 수 있다. 예를 들어, 최소 위치 지연부 또는 비 지연부(no delay)가 유효 프린트 영역에 대해 워크피스의 진입부(entry) 부근의 프린트 엘리먼트 연관에 해당하는 이미지 데이터로 삽입될 수 있는 반면, 큰 위치 지연부가 유효 프린트 영역에 대해 워크피스의 배출구(exit) 부근의 프린트 엘리먼트 연관에 해당하는 이미지 데이터로 삽입될 수 있다. 위치 지연부는 프린트 엘리먼트 연관의 위치(또는, 프린트 엘리먼트 연관들 사이의 분리 간격)에 대응하기 때문에, 위치 지연부는 프린트 엘리먼트 연관을 포함하는 프린트 헤드 어셈블리의 형태에 따라 상이할 수 있다. 임의의 경우, 위치 지연부는 특정한 프린트 헤드 어셈블리에 대해 고정된 지연부(들)일 수 있으며 지연부들은 프린트 라인의 양에 대응하는 양으로 측정될 수 있다.
이미지 데이터로의 업프론트 지연부 삽입은 복수 개의 상이한 방식으로 실행될 수 있다. 예를 들어, 적정량의 널(null) '위치보유자(placeholder)' 데이터는 이미지 데이터 분할로 야기되는 이미지 데이터 부분들에 앞 및 뒤에 삽입될 수 있다. 또 다른 예로서, 업프론트 지연부는 메모리 위치 및 프린트 엘리먼트들 사이의 데이터 통신 경로에 삽입될 수 있다. 예를 들어, 데이터 펌프는 데이터 펌프가 상이한 메모리 위치에서 이미지 데이터의 상이한 부분들에 대해 상이한 업프론트 지연부를 삽입할 수 있도록 배열된다. 지연부를 갖춘 이미지 데이터는 단계(637)에서 프린팅 장치로 전송될 수 있다. 선택적 구현예에서, 지연부를 갖춘 이미지 데이터는 프린팅 장치로 데이터를 전송하기 이전에 큐(예를 들어, 선입선출 큐)에 부가될 수 있다. 이미지 데이터가 단계(637)에서 전송된 이후, 단계(655)에서의 프로세스는 단계(627)의 프로세스에서 지속된다. 소정의 구현예에서, 단계(655)에서의 프로세스는 이미지 데이터가 단계(637)에서 다양한 이유로 전송된 후 중단될 수 있다. 예를 들어, 모든 이미지 데이터 패킷이 데이터 펌프에 의해 전송되었다면, 데이터 펌프는 시스템이 더 이상 프린팅되지 않는다는 것을 단계(627)에서 결정한다(즉, 프린팅을 개시 또는 지속하지 않는다는 것을 결정한다). 소정의 구현예에서, 빈(empty) 데이터 이미지 패킷은 워크피스 상에 잉크가 도포되지 않게 효율적으로 전송될 수 있다.
시스템은 단계(640)에서 프린트 시스템의 유효 프린트 영역에 대해 워크피스의 전연 진입(empty)을 식별할 수 있다. 전연 진입은 워크피스 검출기(도 1에 워크피스 검출기(155))를 사용하여 식별될 수 있다. 유효 프린트 영역에 대한 워크피스의 추가적 처리는 워크피스의 속도를 감지함으로써, 예를 들어, 롤링 인코더를 사용하여 (도 1의 워크피스 컨베이어(105)와 같은) 워크피스 컨베이어의 속도를 측정함으로써, 수행될 수 있다.
워크피스가 적절히 위치되었을 때, 프린트 시스템 실행 프로세스(660)는 단계 (645)에서 워크피스의 프린팅을 개시할 수 있다. 워크피스의 프린팅은 프린트 엘리먼트 연관의 분포에 따라 분할되는 중계(relaying) 이미지 데이터를 포함할 수 있다. 이미지 데이터는 메모리 위치로부터 적절한 프린트 엘리먼트 연관으로 중계될 수 있다. 중계는 제어 전자장치(160)의 중앙 데이터 프로세싱 장치와 같은, 중앙 데이터 프로세싱 장치에 의해 구동될 수 있다. 중계는 파이어링-바이-파이어링(firing-by-firing) 원칙으로 행해질 수 있다. 도 6의 흐름도에 도시된 프로세스에서, 신호는 프린팅 장치에 대한 이미지 데이터의 중계가 야기되어 프린팅이 개시되도록 단계(655)의 시스템 실행 프로세스로 전송될 수 있다.
워크피스가 유효 프린트 영역에 대해 이동함에 따라, 상이한 프린트 엘리먼트들은 동일한 순간에 파이어링되도록 동일한 트리거 신호에 의해 트리거될 수 있다. 선택적으로, 상이한 프린트 엘리먼트들은 상이한 순간에 파이어링되도록 엇갈릴 수 있다(staggered). 각각의 엘리먼트들의 실제 파이어링이 발생하는 시기와 상관없이, 유효 프린트 영역에서 엘리먼트들은 동시에 초기 워크피스 상에 프린팅된다.
유효 프린트 영역이 다음 워크피스에 대한 분리 간격보다 큰 세로방향 폭을 가지는 프린트 시스템에서, 하나 이상의 워크피스들이 동시에 유효 프린트 영역 아래에 위치될 수 있다. 이로써, 하나 이상의 워크피스가 일련의 프린팅을 위해 이용될 수 있다. 이런 상황의 예가 도 5에 도시되며, 여기서 워크피스들 간의 분리 간격(SEP)은 유효 프린트 영역(235)의 폭(W) 보다 작고, 워크피스들(130, 135)은 유효 프린트 영역(235) 아래에 위치되며 연속으로 프린트되게 이용될 수 있다.
이러한 프린트 시스템에서, 시스템 실행 프로세스(660)는 단계(640)에서 다음 워크피스의 전연 진입을 식별할 수 있다. 전연 진입은 워크피스 검출기(도 1의 워크피스 검출기(155))를 사용하여 식별될 수 있다. 유효 프린트 영역에 대한 초기 워크피스 및 다음 워크피스 모두에 대한 과정은 워크피스의 속도를 감지함으로써, 예를 들어 워크피스 전달기(도 1의 워크피스 컨베이어(105))의 속도를 측정함으로써 수행될 수 있다.
초기 워크피스 및 다음 워크피스가 유효 프린트 영역에 대한 진행을 지속함에 따라 워크피스들 상에서의 프린팅이 지속될 수 있다. 유효 프린트 영역이 다음 워크피스의 폭의 합보다 크고 워크피스들 간의 분리 간격의 2배인 세로방향 폭을 가질 때, 초기 워크피스, 다음 워크피스, 및 또 다른 워크피스가 유효 프린트 영역의 아래로 동시에 위치될 수 있다. 이로써, 3개의 워크피스의 일련의 프린팅이 이용될 수 있다. 이 경우, 시스템 실행 프로세스(660)는 초기 워크피스 상에서 프린팅이 중단되기 이전에, 단계(640)에서 또 다른 '다음 워크피스'의 전연을 식별할 수 있다. 그렇지 않다면, 시스템은 단계(640)에서 또 다른 '다음 워크피스'의 전연을 식별하기 이전에 초기 워크피스 상에서 프린팅을 중단할 수 있다.
일부 구현예에서, 이미지 데이터는 프린트 모듈의 연관에 기초하여 분할될 수 있다. 일부 구현예에서, 프린트 엘리먼트 연관은 단일 프린트 모듈에 대해 분할될 수 있다. 예를 들어, 프린트 시스템에서 각각의 프린트 모듈이 2개 로우의 프린트 엘리먼트들을 포함한다면, 이미지 데이터는 프린트 엘리먼트들의 로우에 의해 분할될 수 있다. 따라서, 워크피스들 간의 공간을 제로로 감소될 수 있다.
일부 구현예에서, 도 6에 도시된 시스템(들) 실행 프로세스는 (고정 지연부를 갖기 보다는) 프린트 엘리먼트 연관들 간에 요구되는 위치 지연부를 계산할 수 있다. 메모리 위치는 특정 프린트 엘리먼트 연관에 전용될 수 있다. 예를 들어, 개별 버퍼들은 개별 프린트 엘리먼트 연관들에 의해 프린팅을 위한 이미지 데이터를 저장할 수 있다. 도 6에 도시된 시스템 실행 프로세스는 이미지 데이터가 프린트되는 워크피스 상에 이미지 데이터를 적절히 배치하기 위해 적절한 시간 포인트에서 메모리 위치로부터 데이터를 추출하도록 데이터 펌프 또는 다른 하드웨어 장치를 제어할 수 있다.
도 6의 프로세스는 소정 개수 및 형태의 프로세스들로 구성되는 것으로 도시되었지만, 추가 및/또는 상이한 프로세스가 대신 사용될 수 있다. 예를 들어, 프로세스(655)의, 단계(627)에서 프린팅을 지속할지 또는 개시할지를 연속적으로 결정하기 보다, 시스템 실행 프로세스(655)는 개시될 때 프린팅을 개시하고 시스템이 프린팅을 중단하는 것으로 결정할 때 프린팅을 중단할 수 있어, 다시 호출될 때만 프린팅을 개시할 수 있다. 유사하게, 프로세스는 개시된 순서로, 또는 소정의 프로세스가 수행되도록 결정된 부품들에 의해 수행될 필요는 없다.
도 10은 프린트 시스템의 구현예를 개략적으로 나타낸다. 시스템(1000)은 워크피스 컨베이어(1005), 프린터 하우징(1010), 워크피스 검출기(1055), 및 제어 전자장치(1060)를 포함한다.
워크피스 컨베이어(1005)는 프린터 하우징(1010)의 유효 프린트 영역(1040)에 대해 D 방향으로 워크피스들(1020, 1025, 1030, 1035)을 운반한다. 워크피스 컨베이어(1005)는 워크피스들(1020, 1025, 1030, 1035)의 속도를 감지하는 인코더(1007)를 포함한다. 인코더(1007)는 감지된 속도를 인코딩하고 신호를 제어 전자장치(1060)로 중계하는 신호를 생성한다. 워크피스 검출기(1055)는 하나 이상의 워크피스들(1020, 1025, 1030, 1035)의 위치를 검출하고, 이러한 검출에 기초하여 트리거 신호(트리거 신호(1056, 1057))를 생성하는 광학 센서이다.
프린팅 하우징(1010)은 일련의 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018)을 따라 측방으로 배열된 프린트 모듈들의 집합체를 포함한다. 이러한 프린트 모듈의 배열은 유효 프린트 영역(1040)에 이른다(span). 각각의 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018)을 따라 분포된 프린트 모듈들의 각각의 그룹은 프린트 엘리먼트 연관을 구성한다. 예를 들어, 프린트 모듈들(1091, 1093, 1095)은 컬럼(1018)을 따르는 프린트 엘리먼트 연관을 구성하며, 프린트 모듈들(1092, 1094)은 컬럼(1017)을 따르는 프린트 엘리먼트 연관을 구성한다.
제어 전자장치(1060)는 시스템(1000)에 의해 프린트 동작의 성능을 제어한다. 제어 전자장치(1060)는 프린트 이미지 버퍼들(1065)의 집합체를 포함한다. 제어 전자장치(1060)는 이미지 데이터를 저장하고 검색하도록 집합체(1065)에서의 프린트 이미지 버퍼들을 액세스한다. 도 10에 도시된 구성에는, 집합체(1065)에 8개의 프린트 이미지 버퍼가 제공되며, 각각의 프린트 이미지 버퍼는 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018) 중 하나를 따라 배열되는 프린트 엘리먼트 연관에 전용된다. 예를 들어, 프린트 이미지 버퍼들(1066, 1067, 1068, 1069)은 각각 컬럼들(1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관에 대응한다. 특히, 각각의 프린트 엘리먼트 연관은 결합된 프린트 이미지 버퍼로부터의 이미지 데이터만을 프린트한다.
제어 전자장치(1060)는 데이터 펌프(1070)를 포함한다. '데이터 펌프(data pump)'는 예를 들어, 프린팅을 위해 데이터를 처리하고 하나 이상의 프린팅 장치로 데이터를 전송하는 하드웨어, 소프트웨어, 프로그램가능 로직 또는 이들의 조합물에서 구현되는 기능 부품으로 간주된다. 일 구현예에서, 데이터 펌프는 다이렉트 메모리 액세스(DMA) 장치로 간주될 수 있다. 데이터 펌프(1070)는 프린트 엘리먼트 연관 및 집합체(1065) 내에서 이들의 전용 프린트 이미지 버퍼들 간의 데이터 통신 경로를 따라 위치된다. 데이터 펌프(1070)는 집합체(1065)에 있는 각각의 프린트 이미지 버퍼로부터의 이미지 데이터를 수신하고 저장할 수 있다. 데이터 펌프(1070)는 집합체(1065)에 있는 프린트 이미지 버퍼들로부터 프린트 엘리먼트 연관으로의 정보 통신을 지연시키도록 제어 전자장치(1060)에 의해 프로그램가능하다.
동작시, 제어 전자장치(1060)는 유효 프린트 영역(1040)의 프린트 엘리먼트 연관의 분포에 따라 이미지 데이터를 분할할 수 있다. 제어 전자장치(1060)는 집합체(1065)의 적절한 프린트 이미지 버퍼에 분할된 이미지 데이터를 할당할 수 있다.
유효 프린트 영역(1040)에 진입하도록 워크피스 컨베이어(1005)에 의해 워크피스(1035)가 운반됨에 따라, 워크피스 검출기(1055)는 워크피스(1035)의 전연을 검출하고 트리거 신호(1056)를 생성한다. 트리거 신호(1056)의 수신에 기초하여, 제어 전자장치(1060)는 위치 지연부(1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078)로 데이터 펌프(1070)를 프로그램할 수 있다. 지연부(1071)는 집합체(1065)에 있는 제 1 프린트 이미지 버퍼로부터 컬럼(1011)을 따라 배열된 프린트 엘리먼트 연관으로의 이미지 데이터 통신을 지연시킨다. 지연부(1072)는 집합체(1065)에 있는 제 2 프린트 이미지 버퍼로부터 컬럼(1012)을 따라 배열된 프린트 엘리먼트 연관으로의 이미지 데이터 통신을 지연시킨다. 지연부(1073, 1074, 1075, 1076, 1077, 1078)는 집합체(1065)에 있는 각각의 프린트 이미지 버퍼로부터 컬럼들(1013, 1014, 1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관으로의 이미지 데이터 통신을 지연시킨다.
유효 프린트 영역(1040)에 대해 워크피스 컨베이어(1005)에 의해 워크피스(1035)가 운반됨에 따라, 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관이 연속적으로 프린트된다. 특히, 유효 프린트 영역(1040)에 대해 워크피스(1035)가 하나의 스캔 라인으로 전진함에 따라, 데이터 펌프(1070)는 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관에서 적절한 수신기 전자장치로 이미지 데이터를 덤핑한다(즉, 데이터 펌프(1070)는 이미지 데이터가 프린팅 장치로 전송되게 한다). 덤핑된(dumped) 이미지 데이터는 유효 프린트 영역(1040)에서 워크피스(1035)의 순간적 위치에 대해 파이어링되는 프린트 엘리먼트들을 식별한다(프린트 엘리먼트들의 식별은 암시될 수 있다 : 예를 들어, 포맷에서 데이터 패킷의 이미지 데이터 순서는 프린팅 장치에서 프린트 엘리먼트 연관들 및/또는 프린트 엘리먼트들의 순서에 해당한다). 연속적인 파이어링을 위한 데이터는 파이어링 동안 집합체(1065)에 있는 프린트 이미지 버퍼로부터 데이터 펌프(1070)에 로딩될 수 있다.
워크피스(1035)가 프린트되고 있는 동안, 워크피스(1030)는 유효 프린트 영역(1040)으로 진입하도록 워크피스 컨베이어(1005)에 의해 운반될 수 있다. 워크피스 검출기(1055)는 워크피스(1030)의 전연을 검출하고 트리거 신호(1057)를 생성한다. 트리거 신호(1057)의 수신에 기초하여, 제어 전자장치(1060)는 데이터 펌프(1070)가 지연부들(1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086)을 삽입하게 한다. 지연부(1079)는 집합체(1065)에 있는 제 1 프린트 이미지 버퍼로부터 컬럼(1011)을 따라 배열된 프린트 엘리먼트 연관으로의 이미지 데이터 통신을 지연시킨다. 지연부(1080)는 집합체(1065)에 있는 제 2 프린트 이미지 버퍼로부터 컬럼(1012)을 따라 배열된 프린트 엘리먼트 연관으로의 이미지 데이터 통신을 지연시킨다. 지연부들(1081, 1082, 1083, 1084, 1085, 1086)은 집합체(1065)에 있는 각각의 프린트 이미지 버퍼들로부터 컬럼들(1013, 1014, 1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관의 이미지 데이터 통신을 지연시킨다. 선택적으로, 지연부들은 이미지 데이터로 미리 삽입될 수 있고 트리거 신호는 데이터 펌프(1070)에 의해 이미지 데이터의 전송을 야기할 수 있다.
유효 프린트 영역(1040)으로 워크피스 컨베이어(1005)에 의해 워크피스(1030)가 운반됨에 따라, 컬럼들(1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018)을 따라 배열된 프린트 엘리먼트 연관들이 워크피스(1030, 1025) 상에 프린트된다. 특히, 워크피스(1035, 1030)가 하나의 스캔 라인으로 전진함에 따라, 데이터 펌프(1070)는 프린트 엘리먼트에 대해 적절한 수신기 전자장치로 이미지 데이터를 덤핑하고 워크피스(1035, 1030)를 동시에 프린트한다.
각각의 워크피스에 대한 이미지 데이터는 상이할 수 있다. 예를 들어, 2개의 워크피스가 그들 상부에 프린트되는 2개의 상이한 이미지를 갖는다면, 상이한 이미지 데이터를 나타내는 상이한 이미지가 각각의 워크피스 상에 프린트되도록 사용된다. 이러한 예에서, 2개 세트의 이미지 데이터는 데이터 펌프에서 수집될 수 있다. 제 1 세트의 이미지 데이터는 제 1 이미지(예를 들어, 프로그(frog) 이미지의 프린트 라인)에 해당하며 제 2 세트의 이미지 데이터는 제 2 이미지(예를 들어, 애플 이미지의 3개 프린트 라인)에 해당할 수 있다. 이미지 데이터 수집은 이미지 큐로부터의 이미지 데이터 선택 및/또는 제 1 및 제 2 세트의 이미지 데이터를 포함하는 데이터 패킷의 생성을 포함할 수 있다. 수집된 이미지 데이터는 프린트 엘리먼트 연관을 포함하는 프린팅 장치로 데이터 패킷(예를 들어, 프로그 이미지의 프린트 라인 및 애플 이미지의 3개 프린트 라인을 포함하는 데이터 패킷)을 전송함으로써 프린트 엘리먼트 연관에 제공될 수 있다. 2개의 워크피스가 실질적으로 동시에 프린트되는 경우, 프린트 버퍼(예를 들어, 프린트 버퍼(1066))의 제 1 부분은 제 1 이미지(예를 들어, 프로그 이미지의 프린트 라인)에 해당하는 제 1 세트의 이미지 데이터를 저장할 수 있고, 프린트 버퍼(예를 들어, 프린트 버퍼(1067, 1068, 1069))의 제 2 부분은 제 2 이미지(예를 들어, 애플 이미지의 3개 프린트 라인)에 해당하는 제 2 세트의 이미지 데이터를 저장할 수 있다. 제 1 세트의 프린트 버퍼에 해당하는 제 1 세트의 프린트 엘리먼트들(예를 들어, 컬럼(1015)을 따른 프린트 엘리먼트들의 연관에 있는 프린트 엘리먼트들)은 제 1 이미지(예를 들어, 프로그 이미지의 프린트 라인)를 프린트 할 수 있고 제 2 세트의 버퍼에 해당하는 제 2 세트의 프린트 엘리먼트들(예를 들어, 컬럼(1016, 1017, 1018)을 따른 프린트 엘리먼트들의 연관에 있는 프린트 엘리먼트들)은 제 2 이미지(예를 들어, 애플 이미지의 3개 프린트 라인)를 프린트할 수 있다. 이로써, 상이한 프린트 엘리먼트들이 실질적으로 동시에 2개 이미지를 프린트 할 수 있다(예를 들어, 컬럼들(1015, 1016, 1017, 1018)을 따르는 프린트 엘리먼트들은 실질적으로 동시에 파이어링될 수 있다).
또는, 각각의 작업공간에 대한 이미지 데이터는 동일한 이미지를 나타낼 수 있다. 예를 들어, 동일한 이미지가 복수 개의 워크피스들 상에 연속적으로 프린트될 수 있다. 이러한 예에서, 2개의 워크피스가 실질적으로 동시에 프린트되는 경우, 상이한 프린트 엘리먼트들이 동일한 이미지의 상이한 부분들을 프린트하도록, 동일한 이미지의 상이한 부분들이 프린트 버퍼의 상이한 세트들에 남을 수 있다.
도시되지는 않았지만, 상이한 워크피스들 상에서 이미지 데이터의 상이한 부분들을 프린트하기 위해 상이한 세트의 프린트 엘리먼트들을 사용하는 것 이외에, 동일한 워크피스가 상이한 세트의 이미지 데이터로 프린트될 수 있다.
이미지 프린팅을 위한 제어 아키텍쳐
이미지 프린팅을 위한 제어 아키텍쳐는 소프트웨어, 하드웨어 또는 소프트웨어 및 하드웨어의 조합으로 구현될 수 있다. 제어 아키텍쳐는 이미지 데이터를 수 신하고 이미지가 프린트되게 할 수 있다. 도 11은 소프트웨어에서 구현되는 제어 아키텍쳐를 포함하는 프린팅 시스템의 개략도이다. 프린팅 시스템은 소프트웨어 아키텍쳐(1105); 프린팅용 파일들을 저장하는 하나 이상의 데이터 베이스(1110); 및 이미지 큐를 저장하는 메모리 영역(1115)을 포함한다.
소프트웨어 아키텍쳐(1105)는 하나 이상의 이미지 제어 컴포넌트(1120), 하나 이상의 이미지 큐 생성 컴포넌트(1125), 및 사용자 인터페이스(1140)를 포함한다. 이미지 제어 컴포넌트(1120)는 데이터베이스(1110)로부터 (예를 들어, 이미지가 검색되고 이미지 제어 컴포넌트(1120)로 반환되게 함으로써) 이미지를 수신하고 이미지 큐 생성 컴포넌트(1125)에 의해 해석되는 포맷으로 이미지를 변환할 수 있다. 예를 들어, 데이터베이스에서의 이미지는 포터블 문서 포맷(Portable Document Format)(이하 "PDF", 캘리포니아 샌어제이, Adobe Systems Inc.로부터 이용가능한 PDF 규격), 제이펙(Joint Photographic Experts Group)(이하 "JPEG", 스위스 제네바, International Organization for Standardization로부터 이용가능한 JPEG 규격), 그래픽 교환 포맷(이하, "GIF", 오하이 콜롬보스 CompuServe Inc.로부터 이용가능한 GIF 규격), 장치 비의존 비트맵(이하, "비트맵", 워싱톤 레드몬드 Microsoft Corp.로부터 이용가능한 BMP 규격) 포맷일 수 있으며, 이미지 큐 생성 컴포넌트(1125)는 비트맵 이미지 포맷에 있는 이미지 데이터만을 판독할 수 있다. 상기 예에서, 이미지 제어 컴포넌트(1120)는 이미지가 아직 상기 포맷이 아닌 경우, 데이터베이스(1110)로부터 수신된 이미지를 비트맵 이미지 데이터 포맷으로 변환시킬 수 있다.
이미지 제어 컴포넌트(1120)들 중 하나의 제어 컴포넌트로부터 수신된 이미지는 사용자 인터페이스(1140) 및/또는 이미지 큐 생성 컴포넌트(1125)들 중 하나의 이미지 큐 생성 컴포넌트로 전송될 수 있다. 이미지 제어 컴포넌트(1120)로부터 이미지 큐 생성 컴포넌트(1125)로의 이미지 전송은 애플리케이션 프로그래밍 인터페이스(이하, "API")를 통해 사용자 인터페이스(1140)에 의해 제어된다. 예를 들어, 사용자는 사용자 인터페이스(1140)를 통해 이미지를 볼 수 있도록 요청할 수 있으며 사용자 인터페이스(1140)는 이미지 제어 컴포넌트(1121)가 요청된 이미지를 검색하고, 상기 이미지를 다른 포맷으로 변환시켜, 사용자 인터페이스(1140)를 통해 사용자에게 이미지를 제공하도록, API 호출을 이용한다. 다음 사용자는 사용자 인터페이스(1140)와의 상호작용을 통해 이미지를 프린트하도록 선택될 수 있다. 다음 사용자 인터페이스(1140)는 하나 이상의 API 호출을 생성하여 이미지 제어 컴포넌트(1121)와 이미지 큐 생성 컴포넌트(1126) 사이에 접속이 이루어지게 할 수 있다. 상기 접속은, 예를 들어, 소켓 접속(즉, 프로세스들 간의 접속)일 수 있다. 상기 접속시 변환된 이미지는 이미지 제어 컴포넌트(1121)로부터 이미지 큐 생성 컴포넌트(1126)로 전송될 수 있다. 접속부를 제어하는 단계는, 예를 들어, 이미지의 확인 및 큐 생성 컴포넌트(1126) 확인을 이미지 제어 컴포넌트(1121)로 전송하는 단계를 포함한다.
이미지 큐 생성 컴포넌트(1125)는 하나 이상의 이미지로부터 이미지 큐(1130)를 생성한다. 이미지 큐를 생성하는 단계는, 제트맵 이미지 데이터를 생성하는 프로세스의 일부일 수 있는, 이미지를 부분들(예를 들어, 프린트 엘리먼트 연관에 의해 단일의 임프레션에 대해 필요한 이미지 데이터 양에 해당하는 부분)로 분할하는 단계; 제트맵 이미지 데이터를 생성하는 프로세스의 일부일 수 있는, 하나 이상의 부분들을 포함하는 이미지 데이터의 버퍼를 생성하는 단계; 이미지 큐(1130) 중 하나와 이미지 데이터의 버퍼 각각을 결합시키는 단계; 및 이미지 데이터의 결합된 버퍼들로 이미지 큐(1130)를 채우는 단계를 포함할 수 있다. 이미지들을 분할하는 기술 중 하나는 이미지를 프린팅 장치에서 프린트 엘리먼트 연관에 대응하는 부분들로 분할하는 단계 및 이미지 부분으로 이미지 큐를 채우는 단계를 수반한다. 예를 들어, 프린팅 장치에서 각각의 프린트 엘리먼트 연관이 이미지 데이터의 일부를 프린트하고(또한 '분할(division)'(예를 들어, 이미지의 스캔 라인의 일부)으로도 간주됨), 프린트 엘리먼트 연관이 서로의 옆에 위치될 경우(예를 들어, 도 10에서와 같이, 프린트 엘리먼트 연관이 측방 유효 프린트 영역에 대해 연속적으로 위치된 경우), 프린트 엘리먼트 연관들과 결합된 이미지 데이터의 반복 시퀀스가 이미지 큐에 대응하도록 이미지가 분할될 수 있다. 상기 실시예에 따라, 각각이 프린팅 장치에서 프린트 엘리먼트 연관에 해당하는 4개의 이미지 큐가 제공된다면, 이미지는 4개 부분으로 분할될 수 있으며, 각각의 부분은 이미지 데이터의 부분들의 반복 시퀀스에 의해 한정된다. 따라서, 이미지 데이터의 제 1 부분은 제 1 이미지 큐에 해당하며, 이미지 데이터의 제 2 부분은 제 2 이미지 큐에 해당하며, 이미지 데이터의 제 3 부분은 제 3 이미지 큐에 해당하며, 이미지 데이터의 제 4 부분은 제 4 이미지 큐에 해당하며, 이미지 데이터의 제 5 부분은 제 1 이미지 큐에 해당하며, 이미지 데이터의 제 6 부분은 제 2 이미지 큐에 해당하는 식이다.
이미지를 분할하는 단계 및 이미지 큐를 생성하는 단계는 프린트 엘리먼트 연관에서 각각의 프린트 모듈에 대해 이미지 데이터의 버퍼를 생성하는 단계, 동일한 프린트 엘리먼트 연관과 결합된 버퍼들을 조합하는 단계, 및 이미지 큐와 결합된 조합된 버퍼들을 포함하는 이미지 큐를 생성하는 단계를 수반할 수 있다. 예를 들어, 도 10에서, 20개의 프린트 모듈들이 프린팅 장치에 제공된다. 이미지는 각각의 버퍼가 프린트 모듈에 대응하는 이미지 데이터를 갖도록 분할될 수 있다. 다음, 컬럼(1018)의 프린트 모듈들을 포함하는 프린트 엘리먼트 연관에서 프린트 모듈(1091, 1093, 1095)과 같이, 동일한 프린트 엘리먼트 연관에서 프린트 모듈에 대응하는 버퍼들은 조합된 버퍼가 프린트 엘리먼트 연관(예를 들어, 컬럼(1018)을 따른 모든 프린트 엘리먼트들과 결합된 버퍼)과 결합되도록 조합될 수 있다. 다음, 동일한 프린트 엘리먼트 연관과 관련된 조합된 버퍼들이 이미지 큐에 놓여, 이미지 큐들이 생성되고 각각의 이미지 큐는 동일한 프린트 엘리먼트 연관에 해당하는 조합된 버퍼들을 포함한다.
이미지를 분할하는 단계 및 이미지 큐(1130)를 채우는 단계는 다양한 프린팅 파라미터들을 고려할 수 있으며 테이블 기반 방식(table driven)일 수 있다. 프린팅 파라미터들은 프린팅 장치에서 프린트 엘리먼트들 및/또는 모듈들의 순서 규정, 프린트 엘리먼트들 및/또는 모듈들의 간격, 및 프린팅 장치의 기본 해상도와 같은 프린팅 장치의 물리적 특성; 및 프린트 해상도, 그레이 스케일(즉, 각각의 화소에서 사용되는 비트 수), (예를 들어, 프린트 헤드를 측방으로 스캐닝하기 위한) 프린트 방향, 및 (예를 들어, 프린트 헤드 어셈블리가 180도 회전할 경우) 헤드 배향과 같이, 프린트를 위한 동적 파라미터들을 포함할 수 있다. 테이블-기반 방식 프로세스로서, 프린팅 파라미터들은 이미지 버퍼들 및/또는 이미지 큐들의 생성을 구성하는데 이용될 수 있는 테이블을 생성하는데 이용된다. 테이블은 프린팅 장치에서 프린트 엘리먼트들의 레이아웃에 따라 데이터를 추출할 때 사용될 수 있는 비트 패턴 및 이동 패턴들을 포함할 수 있다. 프린트 엘리먼트 레이아웃의 일반적인 클래스에 대한 제너릭 프로세싱 루틴은 이미지 큐를 생성하기 위해 사용될 수 있는 이미지 데이터를 생성하도록 이미지로부터 데이터를 적절히 추출하기 위해 생성된 테이블과 함께 사용될 수 있다. 예를 들어, 테이블은 프린팅 장치에 해당하는 파라미터들을 기초로 생성될 수 있다. 프린팅 장치에서 프린트 엘리먼트들의 레이아웃에 대응하는 제너릭 프로세싱 루틴들은 이미지 데이터의 버퍼 세트를 생성하는데 테이블과 함께 사용될 수 있고, 각각의 버퍼는 프린팅 장치에서 프린트 엘리먼트 연관에 해당한다. 다음, 이미지 큐들은 프린트 엘리먼트 연관에 해당하는 이미지 데이터의 버퍼들로 채워져, 동일한 프린트 엘리먼트 연관에 해당하는 이미지 데이터의 버퍼들이 동일한 이미지 큐에서 대기될 수 있다(예를 들어, 제 1 프린트 엘리먼트 연관에 대응하는 모든 버퍼들은 제 1 이미지 큐에 있을 수 있으며, 제 2 프린트 엘리먼트 연관에 대응하는 모든 버퍼들은 제 2 이미지 큐에 있는 식 일 수 있다). 이미지 큐(1130)는 병렬 처리에 의해 효율적으로 채워질 수 있으며, 이미지 바이트를 병렬로 조절할 수 있다. 테이블 기반 방식을 사용함으로써, 최적화된 루팅에 대한 변형이 거의 없거나 또는 변형이 없이, 워크피스군을 포함하는 상이한 형태의 프린팅 장치에 대해 고도로 최적화된 큐 생성 루틴(예를 들어, 상기 개시된 일반적 루틴을 포함하는 루틴)이 이용될 수 있다.
이미지 큐(1130)의 개수는 프린팅 장치에서 프린팅 엘리먼트들의 개수와 동일할 수 있으며, 이미지 큐(1130) 각각은 프린트 엘리먼트 연관과 결합될 수 있다. 이미지 데이터의 버퍼들을 포함하는 이미지 큐(1130)는 도 10의 프린트 이미지 버퍼들(1065)을 포함할 수 있다. 따라서, 프린트 이미지 버퍼들(1065)은 하드웨어에 의한 검색용 소프트웨어에 의해, 프린팅 장치로의 전송 및 프린팅 장치에서의 프린팅을 생성할 수 있다.
사용자 인터페이스(1140)는 소프트웨어 아키텍쳐(1105)와 사용자 상호작용을 위한 인터페이스를 제공한다. 사용자 인터페이스(1140)로부터, 사용자는 데이터베이스(1110)에 저장될 수 있는 임의의 개수의 이미지 및 이미지를 프린트하는 요청으로부터 프린트를 위해 하나 이상의 이미지를 선택할 수 있다. 또한, 사용자는 사용자 인터페이스(1140)로부터 프린팅 장치를 제어할 수 있다. 프린팅 장치를 제어하는 단계는 보다 어두운 또는 보다 밝은 프린트를 위한 프린팅 장치의 요청과 같은 동작을 수행하도록 프린팅 장치를 명령하는 단계, 또는 프린팅 장치에서 이용가능한 잉크의 양과 같은 상태에 대해 프린팅 장치를 질의하는 단계를 포함한다. 이러한 동작들을 수행하기 위해, 사용자 인터페이스(1140)는 이미지 제어 컴포넌트(1120) 및 이미지 큐 생성 컴포넌트(1125)를 관리한다.
컴포넌트들(1120, 1125)은 API(앞서 개시됨)에 의해 이용될 수 있기 때문에, 사용자 정의 인터페이스(custom user interface)가 소프트웨어 아키텍쳐(1105)에 대해 생성될 수 있다. 이미지 제어 컴포넌트(1120) 및 이미지 큐 생성 컴포넌트(1125)는 모듈러이며 API를 가질 수 있고, 소프트웨어 아키텍쳐(1105)는 각각 임의의 태스크량을 관리할 수 있는 임의의 개수의 이미지 제어 컴포넌트(1125)를 포함하며, 보다 큰 또는 보다 작은 크기로 쉽게 스케일링될 수 있다. 이런 방식에서 스케일링가능한 아키텍쳐를 제공함으로써, 사용자는 프린팅 장치의 형태; 이미지 제어 컴포넌트(1120) 및 이미지 생성 컴포넌트(1125)의 성능; 및 사용되는 데이터베이스의 형태 및 개수와 같은, 다양한 팩터에 따라 소프트웨어 아키텍쳐(1105)를 최적화시킬 수 있다. 예를 들어, 이미지 제어 컴포넌트(1120)는 이미지 상에서의 전-처리를 수행할 수 있다.
사용자 인터페이스(1140), 이미지 제어 컴포넌트(1120) 및 이미지 큐 생성 컴포넌트(1125)는 네트워크 소켓과 같은 소켓 접속 또는 다른 적절한 메커니즘을 통해 통신할 수 있다. 따라서, 임의의 또는 모든 소프트웨어 컴포넌트들이 동일한 컴퓨터 또는 개별 컴퓨터 상에 제공될 수 있으며, 아키텍쳐가 쉽게 스케일링될 수 있다. 예를 들어, 제 1 컴퓨터는 사용자 인터페이스(1140)를 작동시키며, 서버들의 제 1 클러스터에 있는 각각의 서버는 이미지 제어 컴포넌트를 포함하며, 서버들의 제 2 클러스터에 있는 각각의 서버는 이미지 큐 생성 컴포넌트를 포함할 수 있다. 상이한 컴퓨터 시스템들 상에 소프트웨어 컴포넌트 제공이 허용됨으로써, 고속으로 이미지를 프린트하는데 요구되는 리소스들이 복수 개의 컴퓨터 시스템에 대해 분포될 수 있어, 프린트 어플리케이션의 프린팅 요구조건이 부합될 수 있다. 예를 들어, 하나의 프린팅 장치는 단일 컴퓨터 시스템이 고속 프린팅이 요구되는 경우를 제공할 수 없어, 복수 개의 컴퓨터 시스템들이 워크로드를 분포시키고 리소스 요구조건을 충족시킬 수 있는 리소스를 요구할 수 있다. 또한, 사용자 인터페이스(1140)와 같은 복수 개의 사용자 인터페이스는 이미지 제어 컴포넌트들(1120, 1125)과 접촉하도록 사용될 수 있다. 예를 들어, 복수 개의 사용자들은 이미지들을 관찰할 수 있고 이미지들이 동일한 사용자 인터페이스의 다중 인스턴스를 통해 프린트될 수 있게 하거나, 또는 모니터링 사용자 인터페이스 및 프린팅 구성 사용자 인터페이스와 같은 상이한 기능을 제공하는 상이한 형태의 사용자 인터페이스들이 동시적으로 작동되어 동일한 이미지 제어 컴포넌트 및 이미지 큐 생성 컴포넌트와 상호작용할 수 있다.
이미지 제어 컴포넌트들(1120)은 모듈러이며 임의의 이미지 큐 생성 컴포넌트(1125)에 의해 해석될 수 있는 포맷으로 이미지를 복귀시키는 API를 통해 접속될 수 있기 때문에, 각각의 이미지 제어 컴포넌트(1120)는 이미지 액세스를 위한 균일한 인터페이스를 제공하기 위해 상이한 형태의 데이터베이스(1110), 또는 파일들이 저장되는 파일 시스템에 대해 커스터마이징될 수 있다(customized). 예를 들어, 단일 이미지 큐 생성 컴포넌트는 UNIX 시스템(캘리포니아 샌프란시스코의 더 오픈 그룹으로부터 이용가능한 사양)에 저장된 이미지들과 접속되도록 조작되는 제 1 이미지 제어 컴포넌트 및 마이크로소프트 윈도우즈 시스템(워싱톤 레드몬드, 마이크로소프트 코포레이션으로부터 이용가능)상에 저장된 이미지들과 접속되도록 조작되는 제 2 이미지 제어 컴포넌트와 접속될 수 있다. 예를 들어, 이미지 큐 생성 컴포넌트는 다양한 파일 시스템을 처리하도록 커스터마이징될 필요는 없으며 그럼에도 불구하고 이미지 큐 생성 컴포넌트는 이미지 제어 컴포넌트(1120)에 의해 수신되는 이미지들의 균일한 뷰를 가질 수 있다.
데이터베이스(1110)는 프린팅을 위해 파일들(1135)과 같은 파일들을 저장할 수 있다. 파일들은 이미지 및/또는 텍스트를 나타내며, 임의의 다양한 포맷일 수 있다. 또한, 파일들은 마이크로소프트 윈도우즈 또는 UNIX 파일 시스템과 같은 임의의 다양한 파일 시스템에 존재할 수 있다. 데이터베이스에 이미지를 선택적으로 저장함으로써, 이미지들은 디렉토리 트리에, 또는 임의의 다른 적절한 기술에 따라 간단히 저장될 수 있다.
메모리 영역(1115)은 이미지 큐를 저장할 수 있다. 메모리 영역(1115)은 소프트웨어 아키텍쳐(1105)가 작동하는 운영 시스템(operating system)에 의한 사용으로부터 분할되는 컴퓨터 시스템 내의 랜덤 액세스 메모리의 일부일 수 있다. 운영 시스템으로부터 메모리 영역(1115)이 분할됨으로써, 운영 시스템은 메모리 부분을 관리할 수 없다. 따라서, 메모리 영역(1115)의 이미지 큐는 인접한 메모리에 머무르게 될 것이다. 메모리의 인접 영역으로써, 메모리 영역(1115)은 하드웨어 장치로부터의 다이렉트 메모리 액세스를 위해 이용될 수 있다. 예를 들어, 데이터 펌프(즉, 프린트 헤드 어셈블리에 대해 데이터 패킷을 어셈블리하기 위한 하드웨어 아키텍쳐)는 이미지 큐로부터 이미지 데이터가 직접 검색되도록 메모리 영역(1115)을 액세스할 수 있다. 상기 예에서, 메모리의 인접한 영역을 가짐으로써, 데이터 펌프로부터 다이렉트 액세스를 위한 메모리 영역(1115)에서 이미지 큐의 라이닝 업(lining up)이 용이해져, 복잡도가 제거되고(즉, 이미지 큐에 아이템들이 존재하는 물리적 메모리의 위치를 검출) 프린팅 시스템의 효율이 개선될 수 있다.
소프트웨어 아키텍쳐(1105)는 독립적으로 데이터 펌프와 같은 다른 장치를 작동시킬 수 있기 때문에, 소프트웨어 아키텍쳐(1105)는 메모리 영역(1115)이 채워질 때까지 이미지 큐를 연속적으로 생성할 수 있다. 소프트웨어 아키텍쳐(1115)가 이미지 큐(1130) 생성을 지속하게 함으로써, 데이터 펌프와 같은 다른 컴포넌트들이 프린팅 시스템의 다른 컴포넌트들을 대기할 필요가 없다. 이미지 큐 생성을 포함하는 모든 이미지 전-처리 및 처리는 메모리에서 수행될 수 있다. 메모리에서(저장 장치, 네트워크 등에 저장된 액세싱 이미지의 외부에서) 모든 동작들을 수행함으로써, 전체 프로세스는 저장 장치 등으로의 액세스시 잠재적으로 야기될 수 있는 병목현상을 방지할 수 있다.
일부 구현예에서, 이미지 제어 및 이미지 큐 생성 컴포넌트들(1120, 1125)은 운영 시스템 바로 위에서 작동하며 자동적으로 개시되는 소프트웨어 서비스일 수 있으며, 사용자 인터페이스 컴포넌트(1140)는 애플리케이션일 수 있다. 이처럼, 이러한 서비스들은 컴퓨팅 시스템을 액세싱하는 모든 사용자에 대해 이용될 수 있으며 네트워킹 또는 프린팅 서비스의 동작과 유사하게, 애플리케이션과 같은 사용자 당 베이시스(per user basis)에서 개시되지 않는다. 사용자 인터페이스 컴포넌트는 애플리케이션이기 때문에, 사용자 인터페이스 컴포넌트는 사용자에 의해 개시될 수 있으며 사용자가 로그 오프한 경우 폐쇄된다. 컴포넌트들은 소켓을 통해 액세스가능하기 때문에, 하나 이상의 애플리케이션들은 소켓을 통해 서비스들과 상호작용할 수 있다.
선택적 구현예들에서, 도 11에 도시된 시스템은 보다 적은, 추가의 및/또는 상이한 컴포넌트들을 포함할 수 있다. 예를 들어, 단일 소프트웨어는 이미지 큐 생성 컴포넌트(1125) 및 이미지 제어 컴포넌트(1120)의 동작을 수행할 수 있다. 또 다른 예로서, 사용자 인터페이스(1140)를 통한 이미지 제어 컴포넌트(1120) 및 이미지 큐 생성 컴포넌트(1125)의 액세스보다, 소프트웨어 아키텍쳐(1105)는 이미지 제어 컴포넌트(1120) 및 이미지 큐 생성 컴포넌트(1125)만을 포함할 수 있으며 소프트웨어 아키텍쳐는 이미지 프린팅을 위해 또 다른 프로그램에 의해 액세스될 수 있다. 예를 들어, 소프트웨어 아키텍쳐는 이미지-편집 툴로부터 이미지를 프린팅하기 위해 이미지-편집 툴에 의해 액세스될 수 있다. 따라서, 소프트웨어 아키텍쳐는 임의의 다른 소프트웨어로부터의 프린팅을 위한 드라이버일 수 있다. 또한, 소프트웨어 아키텍쳐의 컴포넌트들 각각은 보다 적은, 추가의 및/또는 상이한 동작을 수행할 수 있다. 예를 들어, 이미지들은 이미지 큐 생성 컴포넌트(1125)에 의한 프린팅을 위한 포맷으로 변환될 수 있으며, 이미지 제어 컴포넌트(1120)는 상이한 이미지 포맷으로의 이미지의 임의의 변환을 반드시 수행할 필요는 없다.
도 12는 이미지 프린팅을 위한 프로세스의 흐름도이다. 이미지는 도 10에 도시된 프린팅 장치와 같은 프린팅 장치에서 프린트된다. 프린팅 장치는 각각 이미지를 프린팅하기 위한 데이터를 수신하는, 적어도 2개의 프린트 엘리먼트 연관을 포함한다. 데이터는 도 10의 제어 전자장치(1060)일 수 있는 컴퓨터 시스템으로부터 프린팅 장치로 전송된다. 컴퓨터 시스템은 디스플레이 장치 및 키보드와 같은 하나 이상의 사용자 인터페이스 장치를 포함한다. 또한, 컴퓨터 시스템은 사용자가 이미지를 프린트할 수 있는 프린팅 소프트웨어를 포함한다. 프린팅 소프트웨어는 도 11을 참조로 개시된 바와 같이, 적어도 하나의 이미지 제어 컴포넌트 및 이미지 큐 생성 컴포넌트를 포함한다.
단계(1210)에서, 프린트될 이미지의 표시가 수신된다. 상기 표시는 컴퓨터 시스템의 프린팅 소프트웨어에서 수신된다. 예를 들어, 프린트될 파일의 이름이 프린팅을 위해 선택될 수 있으며, 상기 이름은 프린트될 파일 표시로서의 역할을 한다.
단계(1220)에서, 검색될 이미지 표시가 컴퓨터 시스템에서 수신된다. 예를 들어, 사용자 인터페이스 컴포넌트는 하나 이상의 이미지들이 프린팅을 위해 이용가능한지를 검색하도록 검사될 수 있다. 만약 프린팅을 위해 이용가능하다면, 사용자 인터페이스 컴포넌트는 프린트될 이미지 리스트, 전-처리된 이미지가 전송될 이미지 큐 생성 컴포넌트, 및/또는 전-처리된 이미지 데이터가 또 다른 소프트웨어 컴포넌트로 전송되는 방법을 이미지 제어 컴포넌트로 전송할 수 있다. 다음, 이미지 제어 컴포넌트는 이미지 큐 생성 컴포넌트와의 접속을 개시하여 전-처리된 이미지 데이터를 이미지 큐 생성 컴포넌트로 전송한다. 상기 예에서, 이미지 제어 컴포넌트는 이미지 큐 생성 컴포넌트와의 접속이 개시되기 이전에 프린트될 이미지 리스트를 수신하기 때문에, 이미지 제어 컴포넌트는 접속을 개시하기 이전에 하나 이상의 이미지로부터 연속적으로 이미지 데이터를 생성할 수 있다. 이런 방식으로, 이미지 제어 컴포넌트가 전-처리될 수 있으며 복수 개의 이미지 데이터를 대기할 수 있고 이미지 큐 생성 컴포넌트와의 접속이 이루어질 때, 모든 이미지 데이터는 2개의 부품들이 메모리에 존재할 때 빠른 데이터 속도로 전송될 수 있다. 이미지 데이터가 전-처리될 수 있고 이미지 큐 생성 컴포넌트들이 이미지 제어 컴포넌트들과 독립적으로 동작할 수 있기 때문에, 하나 이상의 제어 컴포넌트들이 이미지 데이터를 전-처리하고 하나(또는 복수 개의 이미지 제어 컴포넌트들이 있는 경우 더 적은)의 이미지 큐 생성 컴포넌트가 이미지 큐를 생성할 수 있도록 작업이 중첩될 수 있다. 또 다른 예로서, 프린팅 소프트웨어는 프린트될 이미지 표시를 전송할 수 있고 프린팅 소프트웨어의 사용자 인터페이스 컴포넌트는 API 호출이 이미지 제어 데이터에 대해 이미지를 검색하게 할 수 있다.
단계(1230)에서, 이미지가 검색된다. 이미지 표시가 수신된 이미지 제어 컴포넌트는 이미지를 검색한다. 이미지는 데이터베이스로부터 검색되거나 또는 파일 시스템으로부터 간단히 검색될 수 있다. 이미지는 프린팅 소프트웨어 또는 그 밖의 것들을 포함하는 컴퓨터 시스템의 일부인 저장 장치에 위치될 수 있다. 예를 들어, 이미지는 다양한 네트워크-액세스가능 컴퓨터 시스템을 통해 저장될 수 있으며, 이미지는 이러한 컴퓨터 시스템들 중 하나로부터 야기될 수 있다.
단계(1240)에서, 이미지가 제너릭 포맷으로 변환된다. 이미지 변환은 이미지가 그의 기본 포맷에서 이미지 큐 생성 컴포넌트에 적합한 포맷으로 변환되게(또는 변하게) 한다. 또 다른 구현예에서, 추가의 및/또는 다른 형태의 전-처리(즉, 이미지 큐 생성 컴포넌트로 중계되기 이전에 이미지 처리)가 수행될 수 있다. 예를 들어, 이미지가 다시 크기설정되고, 컬러 변형이 이미지에 적용되는 식일 수 있다.
단계(1250)에서, 하나 이상의 이미지 큐가 생성된다. 이미지 큐는 하나 이상의 이미지 큐 생성 컴포넌트에 의해 생성될 수 있다. 각각의 이미지 큐는 이미지의 일부분(즉, 이미지 데이터의 일부분)을 나타내며 각각의 프린트 엘리먼트 연관에 해당하는 하나의 이미지 큐가 제공된다. 예를 들어, 프린팅 장치의 각각의 프린트 엘리먼트 연관은 이미지 데이터의 단일 부분(또는 분할부)을 프린트하며 프린팅 장치에 8개의 프린트 엘리먼트 연관이 제공될 수 있다. 상기 예에서, 이미지는 분할되며 이미지 큐는, 프로세스가 이미지의 9번째 부분을 가지는 제 1 이미지 큐, 이미지의 10번째 부분을 가지는 제 2 이미지 큐로 반복되는 식일 때, 이미지의 9번째 부분까지, 제 1 이미지 큐가 제 1 이미지 부분을 가지고, 제 2 이미지 큐가 제 2 이미지 부분을 갖는 식으로 채워질 수 있다. 일부 구현예에서, 이미지 큐에 대한 이미지 데이터의 부분들을 생성하는 단계는 프린팅 장치에서 각각의 프린트 모듈에 대한 버퍼들을 생성하는 단계, 프린트 엘리먼트 연관에 해당하는 조합된 버퍼들을 생성하기 위해 버퍼들을 조합하는 단계, 및 동일한 프린트 엘리먼트 연관(앞서 개시됨)과 결합된 조합된 버퍼들로 이미지 큐를 채우는 단계를 수반한다. 따라서, 상기 구현예들에서, 각각의 프린트 엘리먼트 연관은 프린트를 대기하는 버퍼들의 큐를 포함한다. 이미지 데이터는 각각 상이한 프린트 엘리먼트 연관에 해당하는 복수 개의 부분들로 분할될 수 있기 때문에, 상이한 이미지들이 동시에 프린트될 수 있다(도 10을 참조로 개시됨). 예를 들어, 제 1 세트의 버퍼는 하나의 이미지의 이미지 데이터 표현부를 포함하며 제 2 세트의 버퍼는 또 다른 이미지의 이미지 데이터 표현부를 포함할 수 있다. 또 다른 예로써, 버퍼들의 큐는, 제 1 이미지를 나타내는 이미지 데이터가 이미지 큐로부터 철회될 때, 이미지 큐가 또 다른 이미지를 나타내는 버퍼들을 가지면서 이전의 이미지를 나타내는 버퍼들이 다른 이미지 큐에 여전히 존재하도록, 복수 개의 이미지를 나타내는 버퍼들을 포함할 수 있다. 이미지를 이미지 버퍼들로 분할하는 단계는 이미지 데이터를 제트맵 이미지 데이터로 변환하는 프로세스의 일부로서, 이미지가 분할됨에 따라, 프린팅 장치에서 프린트 엘리먼트 연관의 배열(geography)에 해당하는 포맷으로 변환된다.
단계(1260)에서, 데이터 패킷이 생성된다. 데이터 패킷은 데이터 펌프에서 생성되며, 각각의 이미지 큐로부터 이미지 데이터의 적어도 일부분을 포함하며, 이는 프린팅 장치에서 모든 프린트 엘리먼트 연관들이 한 번의 프린트(즉, 잉크젯 프린터에서 잉크젯 헤드의 단일 파이어링(firing))를 야기시키기에 충분하다. 선택적 구현예에서, 다른 양의 데이터가 데이터 패킷에 포함될 수 있다. 예를 들어, 보다 적은 이미지 데이터가 데이터 패킷에 포함될 수 있다. 또한, 데이터 패킷은 각각의 이미지 큐로부터의 이미지 데이터를 포함할 필요가 없다. 예로써, 하나의 데이터 패킷은 8개의 이미지 큐를 포함하는 시스템에서 한개 또는 2개의 이미지 큐로부터의 이미지 데이터를 포함할 수 있다.
단계(1270)에서, 데이터 패킷이 프린팅 장치로 전송된다. 데이터는 파이버 채널 프로토콜(뉴욕, 아메리칸 내셔널 스탠다드스 인스티튜션으로부터 이용가능한 사양, ANSI X3.230-1994에 상세히 개시됨)과 같은 통신 프로토콜, 또는 다른 적절한 프로토콜에 따라 전송될 수 있다. 예를 들어, 경량(lightweight) 프로토콜이 사용될 수 있으며 이는 상기 프로토콜은 중량(heavier) 프로토콜에 따라 이미지를 전송하면서 소모되는 불필요한 리소스를 없애기 때문이다. 예를 들어 경량 프로토콜은 파이버 채널 프로토콜의 저급(lower) 3 레벨 및 프린팅 장치로 이미지 데이터를 전송하기 위해 필요한 최소량의 프로토콜을 포함하는 파이버 채널 프로토콜의 3 레벨의 변형된 경량 버전을 포함할 수 있다.
단계(1280)에서, 프린트 엘리먼트 연관에 해당하는 이미지의 하나 이상의 부분들이 프린팅 장치에서 프린트된다. 예를 들어, 단계(1290)에서의 프로세스는 잉크젯 프린터에서 잉크젯 헤드의 단일 파이어링을 포함할 수 있다. 이미지 부분들을 프린트하기 위해 사용되는 이미지 데이터는 프린팅 장치로 전송되는 데이터 패킷에서 야기된다.
본 명세서에 개시된 과제 및 모든 기능적 동작들은 디지털 전자 회로, 또는 컴퓨터 소프트웨어, 팜웨어 또는 본 명세서에 개시된 구조적 수단 및 구조적 등가물, 또는 이들의 조합을 포함하는 하드웨어에서 구현될 수 있다. 개시된 과제는 하나 이상의 컴퓨터 프로그램 제품들, 즉 하나 이상의 컴퓨터 프로그램들이 정보 캐리어에서, 예를 들어, 기계-판독가능 저장 장치 또는 전파된 신호에서, 프로그램가능 프로세서, 컴퓨터 또는 다중 컴퓨터와 같은 데이터 프로세상 장치에 의한 실행을 위해 또는 데이터 프로세싱 장치의 동작 제어를 위해 실제적으로 구현됨에 따라 구현될 수 있다. 컴퓨터 프로그램(또한, 프로그램, 소프트웨어, 소프트웨어 어플리케이션, 또는 코드)은 컴파일드 언어 (compiled language) 또는 해석 언어를 포함하는 임의의 형태의 프로그래밍 언어로 기록될 수 있으며, 단독형 프로그램 또는 모듈로서, 서브루틴, 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유니트를 포함하는 임의의 형태로 분포될 수 있다.
객체 지향 프로그램 언어로서 공지된 프로그래밍 언어중 한 형태는 데이터 구조를 한정하기 위한 클래스를 사용할 수 있다. 클래스는 객체의 엘리먼트(members)를 한정한다. 각각의 객체는 클래스의 인스턴스이다. 클래스의 엘리먼트들은 방법, 변수 및 레퍼런스를 포함할 수 있다. 절차(procedures), 기능 등으로 알려진 방법은 프로세서 및/또는 가상 머신에 의해 컴파일 및/또는 실행되는 일련의 상태를 포함한다. 방법들은 출력으로도 알려진 리턴 값(return value)을 생성할 수 있다. 방법들은 정보가 파일에 기록되거나, 디스플레이 장치 상에 표시되거나, 또는 네트워크로 전송되도록 하는 메커니즘을 포함하는 출력을 산출하기 위해 리턴 값들 이외의 다른 기술 및 메커니즘을 사용할 수 있다. 방법들은 기능 호출에 의해 야기된다. 기능 호출은 방법 명칭을 특정화시키며 호출된 방법이 조절될 수 있도록 인수(argument)를 제공할 수 있다. 생성자(constructor)는 객체의 초기화 및/또는 객체의 인스턴스를 생성하는 방법의 특정한 형태이다. 파라미터로도 공지된 변수들, 특성 등이 값에 할당될 수 있다. 변수들은 할당된 값이 프로그램을 실행하는 동안 변하지 않도록 일정하거나 또는 할당된 값이 프로그램을 실행하는 동안 변하도록 가변적일 수 있다. 변수들은 문자, 정수, 플로트(float), 압축 정수(packed integer), 및 사용자 정의 클래스를 포함하는 임의의 데이터 형태일 수 있다. 변수들은 포인터로 공지된 레퍼런스-타입 변수의 형태일 수 있다. 레퍼런스는 가변적일 필요가 없으며, 변수를 참조하는데 이용될 수 있다. 다른 프로그래밍 언어, 또는 프로그래밍 언어 타입에서 클래스 이외의 프로그래밍 구성이 데이터 구조를 표현할 수 있다.
컴퓨터 프로그램이 반드시 파일에 해당하는 것은 아니다. 프로그램은 다른 프로그램 또는 데이터를 보유하는 파일의 일부에 해당 프로그램에 전용되는 단일 파일, 또는 복수 개의 조율된(coordinated) 파일들(예를 들어, 하나 이상의 모듈, 서브-프로그램, 또는 코드의 일부를 저장하는 파일들)로 저장될 수 있다. 컴퓨터 프로그램은 하나의 지점에서 또는 복수 개의 지점들에 분포된 하나의 컴퓨터 상에서 또는 복수 개의 컴퓨터 상에서 실행되며 통신 네트워크에 의해 상호접속되도록 분포될 수 있다.
개시된 과제의 방법 단계들을 포함하는 본 명세서에 개시된 프로세스 및 로직 흐름은 입력 데이터에 대한 동작 및 출력 생성에 의해 개시된 과제의 기능들을 수행하도록 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램가능 프로세서에 의해 실행될 수 있다. 프로세스 및 로직 흐름은 예를 들어, FPGA 또는 ASIC(주문형 집적회로)의 특수 용도 로직 회로로서 구현될 수 있는 개시된 과제의 장치에 의해 수행될 수 있다.
컴퓨터 프로그램 실행에 적합한 프로세서는, 예를 들어, 범용성 및 특수 용도 마이크로프로세서, 및 임의의 형태의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 리드 온리 메모리 또는 랜덤 액세스 메모리 또는 이 둘다로부터의 데이터 및 명령을 수신한다. 컴퓨터의 필수 엘리먼트는 명령을 실행하는 프로세서 및 명령 및 데이터를 저장하는 하나 이상의 메모리 장치이다. 일반적으로, 컴퓨터는 예를 들어, 자성, 광자기 디스크 또는 광학 디스크와 같이, 데이터를 저장하는 하나 이상의 대용량 저장 장치를 포함하거나, 또는 하나 이상의 대용량 저장 장치로부터 데이터를 수신하도록, 또는 하나 이상의 대용량 저장 장치로 데이터를 전송하도록 또는 이 둘 모두를 위해 동작가능하게 결합될 수 있다. 컴퓨터 프로그램 명령 및 데이터를 구현하기에 적합한 정보 캐리어는, 예를 들어 반도체 메모리 장치를 포함하는 모든 형태의 비휘발성 메모리, 예를 들어, EPROM, EEPROM 및 플래시 메모리 장치; 자기 디스크, 예를 들어 내부 하드 디스크 또는 이동식 디스크; 광자기 디스크; 및 CD-ROM 및 DVD-ROM 디스크를 포함한다. 프로세서 및 메모리는 특정 용도 로직 회로에 의해 지원되거나 상기 로직 회로에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 개시된 과제는 사용자 및 키보드에 정보를 표시하기 위해 예를 들어, CRT(음극 선관) 또는 LCD(액정 디스플레이) 모니터와 같은 디스플레이 장치 및 예를 들어 사용자가 컴퓨터에 입력을 제공할 수 있는 마우스 또는 트랙볼과 같은 포인팅 장치를 가지는 컴퓨터 상에서 구현될 수 있다. 또한 사용자와의 상호작용을 제공하기 위해 다른 형태의 장치가 사용될 수 있다. 예를 들어, 사용자에게 제공된 피드백은, 예를 들어, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백과 같은 임의의 형태의 감각적 피드백일 수 있으며, 사용자로부터의 입력은 음향, 말, 또는 촉각적 입력을 포함하는 임의의 형태로 수신될 수 있다.
개시된 과제는 백-엔드 부품(예를 들어, 데이터 서버), 미들웨어 부품(예를 들어, 애플리케이션 서버) 또는 프론트-엔드 부품(예를 들어, 개시된 과제의 구현 으로 사용자가 상호작용할 수 있는 웹 브라우저 또는 그래픽 사용자 인터페이스를 가지는 클라이언트 컴퓨터)를 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 부품들은 예를 들어 통신 네트워크와 같은 디지털 데이터 통신의 임의의 형태 또는 매체에 의해 상호접속된다. 통신 네트워크의 예로는 LAN(local area network) 및 WAN(wide area network), 예를 들어 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 통신 네트워크를 통해 통상적으로 상호작용하고 서로 떨어져 있다. 클라이언트와 서버의 관계는 각각의 컴퓨터 상에서 작동하며 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램에 의해 이루어진다.
다양한 구현예가 개시되었다. 그럼에도 다양한 변형이 이루어질 수 있다는 것을 인식해야 한다. 예를 들어, 도 12에 도시된 프로세스는 몇 개 및 소정 형태의 프로세스로 이루어졌지만, 선택적 구현예는 추가 및/또는 상이한 프로세스를 포함할 수 있다. 따라서, 다른 구현예는 하기 특허청구범위의 범주 내에서 제공된다.

Claims (30)

  1. 복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법으로서,
    제 1 소프트웨어 컴포넌트로 프린트될 하나 이상의 이미지들을 전송하는 단계;
    상기 하나 이상의 이미지들의 포맷에 따라 상기 하나 이상의 이미지들을 선택적으로 전-처리(pre-process)하기 위해 상기 제 1 소프트웨어 컴포넌트를 이용하는 단계;
    상기 전-처리된 하나 이상의 이미지들을 부분들로 분할하고, 상기 전-처리된 하나 이상의 이미지들의 상기 부분들로부터 상기 하나 이상의 이미지들의 복수 개의 버퍼들을 생성하며 ― 각각의 버퍼는 하나 이상의 프린트 모듈들의 복수 개의 로우(row)들로부터의 하나 이상의 프린트 모듈들의 단일 로우와 연관되고 상기 하나 이상의 프린트 모듈들의 단일 로우는 프린팅 방향에 수직인 방향으로 연장됨 ―, 상기 복수 개의 버퍼들로부터 복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계;
    복수 개의 프린트 매체들 사이에 가변 간격을 가지면서 상기 프린트 방향으로 상기 복수 개의 프린트 매체들을 운반하는 단계;
    상기 복수 개의 프린트 매체들 중 제 1 프린트 매체의 전연(leading edge)이 검출될 때 제 1 트리거 신호를 생성하는 단계;
    상기 복수 개의 프린트 매체들 중 제 2 프린트 매체의 전연이 검출될 때 제 2 트리거 신호를 생성하는 단계;
    상기 제 1 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 1 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하는 단계; 및
    상기 제 2 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 2 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하는 단계 ― 상기 제 2 프린트 매체 상의 프린팅은 상기 제 1 프린트 매체가 상기 프린트 모듈들의 모든 로우들을 통과하기 이전에 시작됨 ―
    를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  2. 제 1 항에 있어서,
    상기 복수 개의 버퍼들은 상기 프린트 모듈들의 로우들로 하여금 프린트 매체 상에 단일의 이미지를 남겨두도록 하기에 충분한 양의 이미지 데이터를 저장하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  3. 제 1 항에 있어서,
    상기 복수 개의 버퍼들은 상기 프린트 모듈들의 로우들로 하여금 하나 이상의 프린트 매체들 상에 복수 개의 이미지들을 남겨두도록 하기에 충분한 양의 이미지 데이터를 저장하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  4. 제 1 항에 있어서,
    상기 하나 이상의 이미지들을 전송하는 단계는 저장 장치로부터 상기 하나 이상의 이미지들을 수신하는 단계를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  5. 제 1 항에 있어서,
    상기 제 1 및 제 2 소프트웨어 컴포넌트들은 애플리케이션 프로그래밍 인터페이스를 통해 액세스가능한,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  6. 제 1 항에 있어서,
    상기 제 1 및 제 2 소프트웨어 컴포넌트들은 소프트웨어 서비스들이며, 상기 방법은,
    프린트할 이미지의 표시 및 상기 제 2 소프트웨어 컴포넌트의 표시를 사용자 인터페이스를 포함하는 애플리케이션으로부터 상기 제 1 소프트웨어 컴포넌트로 전송하는 단계
    를 더 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  7. 제 1 항에 있어서,
    복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계는 각각의 이미지 큐가 데이터 펌프에 의한 액세스를 위해 미리 정의된 메모리 위치에 배치되도록 상기 복수 개의 이미지 큐들을 생성하는 단계를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  8. 제 7 항에 있어서,
    상기 메모리 위치는 운영 시스템의 메모리 관리에 의해 액세스불가능한 분할된 메모리인,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  9. 제 1 항에 있어서,
    상기 복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어를 이용하는 단계는 제너릭(generic) 루틴들 및 프린팅 파라미터들에 기초하여 생성된 테이블에 따라 상기 복수 개의 이미지 큐들을 생성하는 단계를 포함하며,
    상기 방법은,
    프린팅 파라미터들에 기초하여 상기 테이블을 생성하는 단계
    를 더 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  10. 제 1 항에 있어서,
    상기 제 1 소프트웨어 컴포넌트는 이미지 제어 컴포넌트를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  11. 제 1 항에 있어서,
    상기 제 2 소프트웨어 컴포넌트는 이미지 큐 생성 컴포넌트를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  12. 제 1 항에 있어서,
    복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계는 상기 전송된 하나 이상의 이미지들로부터 상기 복수 개의 이미지 큐들을 생성하기 위해 이미지 데이터를 병렬 처리하는 단계를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  13. 복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템으로서,
    이미지들을 저장하도록 구성된 데이터 저장소;
    프린트되고 있는 이미지에 대응하는 하나 이상의 이미지 큐들을 저장하도록 구성된 메모리 영역; 및
    컴퓨터 시스템
    을 포함하고,
    상기 컴퓨터 시스템은:
    상기 데이터 저장소로부터 제 1 소프트웨어 컴포넌트로 프린트될 하나 이상의 이미지들을 전송하는 단계;
    상기 하나 이상의 이미지들의 포맷을 결정하고 상기 하나 이상의 이미지들을 상기 결정된 포맷에 따라 선택적으로 전-처리하기 위해 상기 제 1 소프트웨어 컴포넌트를 이용하는 단계;
    상기 전-처리된 하나 이상의 이미지들을 부분들로 분할하고, 상기 전-처리된 하나 이상의 이미지들의 상기 부분들로부터 상기 하나 이상의 이미지들의 복수 개의 버퍼들을 생성하며 ― 각각의 버퍼는 하나 이상의 프린트 모듈들의 복수 개의 로우들로부터의 하나 이상의 프린트 모듈들의 단일 로우와 연관되고 상기 하나 이상의 프린트 모듈들의 단일 로우는 프린팅 방향에 수직인 방향으로 연장됨 ―, 상기 메모리 영역에 상기 복수 개의 버퍼들로부터 복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계;
    복수 개의 프린트 매체들 사이에 가변 간격을 가지면서 상기 프린트 방향으로 상기 복수 개의 프린트 매체들을 운반하는 단계;
    상기 복수 개의 프린트 매체들 중 제 1 프린트 매체의 전연이 검출될 때 제 1 트리거 신호를 수신하는 단계;
    상기 복수 개의 프린트 매체들 중 제 2 프린트 매체의 전연이 검출될 때 제 2 트리거 신호를 수신하는 단계;
    상기 제 1 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 1 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하는 단계; 및
    상기 제 2 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 2 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하는 단계 ― 상기 제 2 프린트 매체 상의 프린팅은 상기 제 1 프린트 매체가 상기 프린트 모듈들의 모든 로우들을 통과하기 이전에 시작됨 ―
    를 포함하는 태스크들을 수행하도록 동작가능한,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  14. 제 13 항에 있어서,
    상기 제 1 및 제 2 소프트웨어 컴포넌트들은 애플리케이션 프로그래밍 인터페이스를 통해 액세스가능한,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  15. 제 13 항에 있어서,
    상기 제 1 및 제 2 소프트웨어 컴포넌트들은 소프트웨어 서비스들이며,
    상기 컴퓨터 시스템은:
    프린트할 이미지의 표시 및 상기 제 2 소프트웨어 컴포넌트의 표시를 사용자 인터페이스를 포함하는 애플리케이션으로부터 상기 제 1 소프트웨어 컴포넌트로 전송하는 단계
    를 포함하는 태스크들을 수행하도록 추가로 동작가능한,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  16. 제 15 항에 있어서,
    상기 사용자 인터페이스를 포함하는 애플리케이션은 상기 제 1 및 제 2 소프트웨어 컴포넌트들이 존재하는 머신과 별개의 머신 상에 존재하도록 구성된 상기 제 1 및 제 2 소프트웨어 컴포넌트들과 별개의 애플리케이션인,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  17. 제 13 항에 있어서,
    상기 메모리 영역은 운영 시스템의 메모리 관리에 의해 액세스불가능한 분할된 메모리인,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  18. 제 13 항에 있어서,
    상기 제 1 소프트웨어 컴포넌트는 이미지 제어 컴포넌트를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  19. 제 13 항에 있어서,
    상기 제 2 소프트웨어 컴포넌트는 이미지 큐 생성 컴포넌트를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  20. 제 13 항에 있어서,
    상기 복수 개의 이미지 큐들을 생성하기 위해 제 2 소프트웨어 컴포넌트를 이용하는 단계는 상기 전송된 이미지로부터 상기 복수 개의 이미지 큐들을 생성하기 위해 이미지 데이터를 병렬 처리하는 단계를 포함하는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  21. 컴퓨터-판독가능 매체로서,
    데이터 프로세싱 장치로 하여금:
    매체 상에 프린트될 하나 이상의 이미지들을 수신하게 하고, 상기 수신된 하나 이상의 이미지들의 포맷을 결정하게 하며, 상기 결정된 포맷에 따라 상기 수신된 하나 이상의 이미지들을 선택적으로 전-처리하게 하며; 그리고
    상기 전-처리된 하나 이상의 이미지들을 부분들로 분할하게 하고, 상기 전-처리된 하나 이상의 이미지들의 상기 부분들로부터 상기 하나 이상의 이미지들의 복수 개의 버퍼들을 생성하게 하며 ― 각각의 버퍼는 하나 이상의 프린트 모듈들의 복수 개의 로우들로부터의 하나 이상의 프린트 모듈들의 단일 로우와 연관되고 상기 하나 이상의 프린트 모듈들의 단일 로우는 프린팅 방향에 수직인 방향으로 연장됨 ―, 상기 복수 개의 버퍼들로부터 복수 개의 이미지 큐들을 생성하게 하며;
    복수 개의 프린트 매체들 중 제 1 프린트 매체의 전연이 검출될 때 제 1 트리거 신호를 수신하게 하며 ― 상기 복수 개의 프린트 매체들은 가변 간격을 가짐 ―;
    상기 복수 개의 프린트 매체들 중 제 2 프린트 매체의 전연이 검출될 때 제 2 트리거 신호를 수신하게 하며;
    상기 제 1 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 1 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하게 하며; 그리고
    상기 제 2 트리거 신호의 수신에 기초하여, 상기 하나 이상의 이미지들이 상기 제 2 프린트 매체 상에 프린트될 수 있도록, 상기 복수 개의 버퍼들로부터 상기 하나 이상의 프린트 모듈들의 복수 개의 로우들로의 이미지 데이터의 통신의 개시들 사이에 지연부들을 삽입하게 하기 위한 ― 상기 제 2 프린트 매체 상의 프린팅은 상기 제 1 프린트 매체가 상기 프린트 모듈들의 모든 로우들을 통과하기 이전에 시작됨 ―
    명령들을 포함하는,
    컴퓨터-판독가능 매체.
  22. 제 21 항에 있어서,
    상기 명령들은 추가로, 상기 데이터 프로세싱 장치로 하여금, 상기 전-처리된 하나 이상의 이미지들을 제 2 소프트웨어 컴포넌트들로 전송하게 하는,
    컴퓨터-판독가능 매체.
  23. 제 21 항에 있어서,
    상기 명령들은:
    사용자와 상호작용하며 프린트될 하나 이상의 이미지들의 표시를 제 1 소프트웨어 컴포넌트들로 전송하도록 구성된 사용자 인터페이스를 생성하기 위한 사용자 인터페이스 명령들
    을 더 포함하는,
    컴퓨터-판독가능 매체.
  24. 제 23 항에 있어서,
    상기 하나 이상의 이미지들을 수신하라는 명령들 및 상기 전-처리된 하나 이상의 이미지들을 분할하라는 명령들은 서비스들이며 사용자 인터페이스 명령은 애플리케이션인,
    컴퓨터-판독가능 매체.
  25. 제 21 항에 있어서,
    상기 하나 이상의 이미지들을 수신하라는 명령들은 제 1 컴퓨터 시스템 상에 존재하고, 상기 전-처리된 하나 이상의 이미지들을 분할하라는 명령들은 별개의 제 2 컴퓨터 시스템 상에 존재하는,
    컴퓨터-판독가능 매체.
  26. 제 1 항에 있어서,
    상기 제 1 소프트웨어 컴포넌트는 복수 개의 제 1 소프트웨어 컴포넌트들 중 N번째 소프트웨어 컴포넌트이고, 상기 제 2 소프트웨어 컴포넌트는 복수 개의 제 2 소프트웨어 컴포넌트들 중 M번째 소프트웨어 컴포넌트인,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  27. 제 13 항에 있어서,
    상기 제 1 소프트웨어 컴포넌트는 복수 개의 제 1 소프트웨어 컴포넌트들 중 N번째 소프트웨어 컴포넌트이고, 상기 제 2 소프트웨어 컴포넌트는 복수 개의 제 2 소프트웨어 컴포넌트들 중 M번째 소프트웨어 컴포넌트인,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 제어하기 위한 시스템.
  28. 제 1 항에 있어서,
    상기 프린트 모듈들의 복수 개의 로우들은 제 1 버퍼와 연관된 프린트 모듈들의 제 1 로우 및 제 2 버퍼와 연관된 프린트 모듈들의 제 2 로우를 포함하고, 상기 제 1 로우로부터 인접한 제 1 복수 개의 프린트 모듈들은 상기 제 2 로우로부터 인접한 제 2 복수 개의 프린트 모듈들과 엇갈린 비-중첩 배열로 배치되는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  29. 제 1 항에 있어서,
    상기 제 2 프린트 매체 상의 프린팅은 상기 제 1 프린트 매체의 전연이 상기 프린트 모듈들의 모든 로우들을 통과하기 이전에 시작되는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
  30. 제 1 항에 있어서,
    상기 복수 개의 프린트 매체들이 컨베이어 벨트 상에서 운반되는,
    복수 개의 프린트 매체들 상에서의 이미지 프린팅을 용이하게 하는 컴퓨터-구현 방법.
KR1020077008195A 2004-10-15 2005-10-12 프린팅 시스템 소프트웨어 아키텍쳐 KR101210992B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/966,024 US7911625B2 (en) 2004-10-15 2004-10-15 Printing system software architecture
US10/966,024 2004-10-15

Publications (2)

Publication Number Publication Date
KR20070062549A KR20070062549A (ko) 2007-06-15
KR101210992B1 true KR101210992B1 (ko) 2012-12-11

Family

ID=35708588

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077008195A KR101210992B1 (ko) 2004-10-15 2005-10-12 프린팅 시스템 소프트웨어 아키텍쳐

Country Status (6)

Country Link
US (1) US7911625B2 (ko)
EP (1) EP1820088A2 (ko)
JP (1) JP4805940B2 (ko)
KR (1) KR101210992B1 (ko)
CN (1) CN101052942B (ko)
WO (1) WO2006044597A2 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8251471B2 (en) * 2003-08-18 2012-08-28 Fujifilm Dimatix, Inc. Individual jet voltage trimming circuitry
US7907298B2 (en) 2004-10-15 2011-03-15 Fujifilm Dimatix, Inc. Data pump for printing
US8068245B2 (en) * 2004-10-15 2011-11-29 Fujifilm Dimatix, Inc. Printing device communication protocol
US7911625B2 (en) 2004-10-15 2011-03-22 Fujifilm Dimatrix, Inc. Printing system software architecture
US8085428B2 (en) 2004-10-15 2011-12-27 Fujifilm Dimatix, Inc. Print systems and techniques
US7722147B2 (en) * 2004-10-15 2010-05-25 Fujifilm Dimatix, Inc. Printing system architecture
US8199342B2 (en) * 2004-10-29 2012-06-12 Fujifilm Dimatix, Inc. Tailoring image data packets to properties of print heads
US7556327B2 (en) * 2004-11-05 2009-07-07 Fujifilm Dimatix, Inc. Charge leakage prevention for inkjet printing
US7698650B2 (en) * 2005-06-16 2010-04-13 Xerox Corporation Computerized action tool for managing print parameters, queuing actions and archiving actions for a document output management system
US7911636B2 (en) * 2007-07-25 2011-03-22 Eastman Kodak Company Multi-head press data delivery rate control
JP5485987B2 (ja) 2008-06-06 2014-05-07 フジフィルム ディマティックス, インコーポレイテッド 印刷のための物体検出
JP2011146833A (ja) * 2010-01-13 2011-07-28 Seiko Epson Corp 光学読取装置、光学読取装置の制御方法、及び、プログラム
US8395798B2 (en) 2010-07-15 2013-03-12 Fujifilm Dimatix, Inc. Printing objects using a rolling buffer
JP6364738B2 (ja) * 2013-01-11 2018-08-01 株式会社リコー 情報処理システム、情報処理装置、プログラム及び処理実行方法
US10730318B2 (en) * 2015-08-07 2020-08-04 Electronics For Imaging, Inc. Spot gloss and gloss control in an inkjet printing system
GB2573771B (en) 2018-05-15 2020-08-05 Global Inkjet Systems Ltd Inkjet printing
WO2023038658A1 (en) * 2021-09-10 2023-03-16 Hewlett-Packard Development Company, L.P. Printers and encoders

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044245A (ja) 2001-06-11 2003-02-14 Hewlett Packard Co <Hp> フォーマット固有の変換モジュールを使用する文書印刷用のプリンタ、方法およびシステム
JP2003165263A (ja) 2001-12-03 2003-06-10 Olympus Optical Co Ltd 画像記録装置

Family Cites Families (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4486739A (en) 1982-06-30 1984-12-04 International Business Machines Corporation Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code
US4563689A (en) 1983-02-05 1986-01-07 Konishiroku Photo Industry Co., Ltd. Method for ink-jet recording and apparatus therefor
US4887100A (en) 1987-01-10 1989-12-12 Am International, Inc. Droplet deposition apparatus
GB8829567D0 (en) 1988-12-19 1989-02-08 Am Int Method of operating pulsed droplet deposition apparatus
DE69015953T2 (de) 1989-10-10 1995-05-11 Xaar Ltd Druckverfahren mit mehreren Tonwerten.
US5512922A (en) 1989-10-10 1996-04-30 Xaar Limited Method of multi-tone printing
GB9010289D0 (en) 1990-05-08 1990-06-27 Xaar Ltd Drop-on-demand printing apparatus and method of manufacture
GB9021677D0 (en) 1990-10-05 1990-11-21 Xaar Ltd Method of testing multi-channel array pulsed droplet deposition apparatus
GB9022662D0 (en) 1990-10-18 1990-11-28 Xaar Ltd Method of operating multi-channel array droplet deposition apparatus
GB9025706D0 (en) 1990-11-27 1991-01-09 Xaar Ltd Laminate for use in manufacture of ink drop printheads
GB9100613D0 (en) 1991-01-11 1991-02-27 Xaar Ltd Reduced nozzle viscous impedance
GB9100614D0 (en) 1991-01-11 1991-02-27 Xaar Ltd Ink composition
US5359350A (en) 1991-06-14 1994-10-25 Ricoh Company, Ltd. Method of driving ink jet printing head
GB9113023D0 (en) 1991-06-17 1991-08-07 Xaar Ltd Multi-channel arrary droplet deposition apparatus and method of manufacture thereof
US5408590A (en) 1991-12-09 1995-04-18 Domino Amjet, Inc. Direct ink drop interface board
GB9202434D0 (en) 1992-02-05 1992-03-18 Xaar Ltd Method of and apparatus for forming nozzles
US5648806A (en) 1992-04-02 1997-07-15 Hewlett-Packard Company Stable substrate structure for a wide swath nozzle array in a high resolution inkjet printer
JPH0679885A (ja) 1992-06-24 1994-03-22 Sony Corp 印刷方法、印刷装置、印刷ヘッド、被印刷物収納容器及びカセットの印刷方法
CN2146738Y (zh) * 1992-09-28 1993-11-17 河北机电学院 打印机缓冲共享器
JP3237685B2 (ja) 1992-11-05 2001-12-10 セイコーエプソン株式会社 インクジェット式記録装置
JP3029165B2 (ja) 1992-12-04 2000-04-04 キヤノン株式会社 インクジェット記録装置
US5361420A (en) 1993-03-30 1994-11-08 C & P Products Protective head gear for wrestlers
US5668579A (en) 1993-06-16 1997-09-16 Seiko Epson Corporation Apparatus for and a method of driving an ink jet head having an electrostatic actuator
GB9316605D0 (en) 1993-08-10 1993-09-29 Xaar Ltd Droplet deposition apparatus and method of manufacture
GB9318985D0 (en) 1993-09-14 1993-10-27 Xaar Ltd Passivation of ceramic piezoelectric ink jet print heads
JP3503656B2 (ja) 1993-10-05 2004-03-08 セイコーエプソン株式会社 インクジェットヘッドの駆動装置
GB9321786D0 (en) 1993-10-22 1993-12-15 Xaar Ltd Droplet deposition apparatus
GB9400036D0 (en) 1994-01-04 1994-03-02 Xaar Ltd Manufacture of ink jet printheads
US5606349A (en) 1994-03-04 1997-02-25 Diagraph Corporation Ink jet system with serial data printheads
US6123405A (en) 1994-03-16 2000-09-26 Xaar Technology Limited Method of operating a multi-channel printhead using negative and positive pressure wave reflection coefficient and a driving circuit therefor
US5903754A (en) 1994-06-21 1999-05-11 Microsoft Corporation Dynamic layered protocol stack
GB9417445D0 (en) 1994-08-30 1994-10-19 Xaar Ltd Coating, coating composition and method of forming coating
US5604771A (en) 1994-10-04 1997-02-18 Quiros; Robert System and method for transmitting sound and computer data
GB9421395D0 (en) 1994-10-24 1994-12-07 Xaar Ltd Ink jet ink composition
JP3488528B2 (ja) 1994-12-26 2004-01-19 京セラミタ株式会社 インクジェット記録装置のヘッド駆動装置
KR100413073B1 (ko) 1995-02-08 2004-06-26 자르 리미티드 잉크젯프린터용잉크조성물
US5604711A (en) 1995-05-19 1997-02-18 Cypress Semiconductor, Corporation Low power high voltage switch with gate bias circuit to minimize power consumption
GB9515337D0 (en) 1995-07-26 1995-09-20 Xaar Ltd Pulsed droplet deposition apparatus
GB9521673D0 (en) 1995-10-23 1996-01-03 Xaar Ltd Ink jet printer dispersion inks
US5984448A (en) 1995-11-21 1999-11-16 Citizen Watch Co., Ltd. Circuit for driving ink-jet head and method of driving the same
GB9523926D0 (en) 1995-11-23 1996-01-24 Xaar Ltd Operation of pulsed droplet deposition apparatus
GB9601049D0 (en) 1996-01-18 1996-03-20 Xaar Ltd Methods of and apparatus for forming nozzles
GB9605547D0 (en) 1996-03-15 1996-05-15 Xaar Ltd Operation of droplet deposition apparatus
JP3156055B2 (ja) 1996-03-18 2001-04-16 ザール テクノロジー リミテッド グレースケールレベルの補間
US5854886A (en) 1996-03-29 1998-12-29 Hewlett-Packard Company Method and system for printing rasterized documents
CN1191936C (zh) 1996-04-23 2005-03-09 萨尔技术有限公司 液滴沉积装置及其制造方法
JP3349891B2 (ja) 1996-06-11 2002-11-25 富士通株式会社 圧電型インクジェットヘッドの駆動方法
JPH1016211A (ja) 1996-07-05 1998-01-20 Seiko Epson Corp インクジェット式記録装置
JP3667001B2 (ja) 1996-09-06 2005-07-06 キヤノン株式会社 画像処理装置及びその方法
EP0827838B1 (en) 1996-09-09 2005-03-23 Seiko Epson Corporation Ink jet printer and ink jet printing method
GB9622177D0 (en) 1996-10-24 1996-12-18 Xaar Ltd Passivation of ink jet print heads
US6088050A (en) * 1996-12-31 2000-07-11 Eastman Kodak Company Non-impact recording apparatus operable under variable recording conditions
US5997124A (en) 1997-03-12 1999-12-07 Raster Graphics Inc. Method and apparatus for drop volume normalization in an ink jet printing operation
DE69820201T2 (de) 1997-04-16 2004-11-04 Seiko Epson Corp. Verfahren zum antreiben eines tintenstrahlaufzeichnungskopfes
US6517195B1 (en) 1997-04-18 2003-02-11 Seiko Epson Corporation Ink jet head with an integrated charging control circuit
JP2940542B2 (ja) 1997-05-07 1999-08-25 セイコーエプソン株式会社 インクジェット式プリントヘッドの駆動波形生成装置及び駆動波形生成方法
KR100589987B1 (ko) 1997-05-15 2006-06-14 자아 테크날러쥐 리미티드 잉크 인쇄 장치의 동작
GB9802871D0 (en) 1998-02-12 1998-04-08 Xaar Technology Ltd Operation of droplet deposition apparatus
GB9713872D0 (en) 1997-07-02 1997-09-03 Xaar Ltd Droplet deposition apparatus
US5975672A (en) 1997-07-24 1999-11-02 Eastman Kodak Company Ink jet printing apparatus and method accommodating printing mode control
US6352328B1 (en) 1997-07-24 2002-03-05 Eastman Kodak Company Digital ink jet printing apparatus and method
JP3670451B2 (ja) * 1997-07-24 2005-07-13 三菱電機株式会社 オゾン供給装置
US6339480B1 (en) 1997-07-28 2002-01-15 Canon Kabushiki Kaisha Print driver for a color printer
ATE256558T1 (de) 1997-08-22 2004-01-15 Xaar Technology Ltd Herstellungsverfahren eines druckers
DE69821120T2 (de) 1997-09-04 2004-10-21 Xaar Technology Ltd Saugtrommel zum drucken und duplexdrucken
GB9719071D0 (en) 1997-09-08 1997-11-12 Xaar Ltd Drop-on-demand multi-tone printing
US6102513A (en) 1997-09-11 2000-08-15 Eastman Kodak Company Ink jet printing apparatus and method using timing control of electronic waveforms for variable gray scale printing without artifacts
US6284806B1 (en) * 1997-09-12 2001-09-04 Exxon Research And Engineering Company Water emulsions of Fischer-Tropsch waxes
US6572221B1 (en) 1997-10-10 2003-06-03 Xaar Technology Limited Droplet deposition apparatus for ink jet printhead
US5941951A (en) 1997-10-31 1999-08-24 International Business Machines Corporation Methods for real-time deterministic delivery of multimedia data in a client/server system
AU755025B2 (en) 1997-11-28 2002-11-28 Sony Corporation Apparatus and method for driving recording head for ink-jet printer
JPH11240146A (ja) 1997-12-26 1999-09-07 Canon Inc 記録装置
US6046822A (en) 1998-01-09 2000-04-04 Eastman Kodak Company Ink jet printing apparatus and method for improved accuracy of ink droplet placement
GB9802210D0 (en) 1998-02-02 1998-04-01 Xaar Technology Ltd Ink jet printer ink
GB9805038D0 (en) 1998-03-11 1998-05-06 Xaar Technology Ltd Droplet deposition apparatus and method of manufacture
JP3827049B2 (ja) * 1998-03-25 2006-09-27 セイコーエプソン株式会社 プリンタ制御回路、プリンタ及びプリントシステム
US6276772B1 (en) 1998-05-02 2001-08-21 Hitachi Koki Co., Ltd. Ink jet printer using piezoelectric elements with improved ink droplet impinging accuracy
EP1092116A4 (en) * 1998-06-02 2004-07-28 Herbert L Willke Jr COMPACT MONOBLOCK MUFFLER AIR TREATMENT UNIT
JPH11353146A (ja) 1998-06-09 1999-12-24 Nec Corp 印刷処理システム
GB2338927B (en) 1998-07-02 2000-08-09 Tokyo Electric Co Ltd A driving method of an ink-jet head
GB2338928B (en) 1998-07-02 2000-08-09 Tokyo Electric Co Ltd A driving method of an ink-jet head
JP2000103089A (ja) 1998-07-31 2000-04-11 Seiko Epson Corp 印刷装置および印刷方法
JP3309806B2 (ja) 1998-07-31 2002-07-29 富士通株式会社 インクジェット記録装置及びインクジェット記録方法
GB9820755D0 (en) 1998-09-23 1998-11-18 Xaar Technology Ltd Drop on demand ink jet printing apparatus
US5951978A (en) 1998-12-10 1999-09-14 Tatko Biotech, Inc. Microorganisms for improving plant productivity
JP2000246862A (ja) 1999-03-01 2000-09-12 Dainippon Printing Co Ltd 画像検査装置および検査結果シート
JP2000255019A (ja) 1999-03-10 2000-09-19 Dainippon Printing Co Ltd 重ね箇所検出装置および指示書
US6882711B1 (en) 1999-09-20 2005-04-19 Broadcom Corporation Packet based network exchange with rate synchronization
JP2000326560A (ja) 1999-05-24 2000-11-28 Seiko Epson Corp シリアルプリンタを用いた印刷システム、同システムのための中間ハードウェア、及びシリアルプリンタ
AU781271B2 (en) 1999-06-04 2005-05-12 Canon Kabushiki Kaisha Ink jet recording head, and ink jet recording device
JP3669210B2 (ja) 1999-06-25 2005-07-06 セイコーエプソン株式会社 インクジェット記録装置
AUPQ228699A0 (en) 1999-08-18 1999-09-09 Champion Forms Pty Ltd Multi-layer continuous paper printer
DE10031030B4 (de) 2000-06-26 2005-08-04 Bauer, Jörg R. Verfahren und Vorrichtung zum Herstellen flächiger Bauteile mit vorbestimmtem Oberflächenaussehen und flächiges Bauteil, insbesondere Frontplatte eines Küchenelements
US6845886B2 (en) 2000-08-23 2005-01-25 Paul Henry Valve for dispensing two liquids at a predetermined ratio
JP2002094364A (ja) 2000-09-19 2002-03-29 Toshiba Tec Corp 容量性素子の駆動方法及び駆動装置
JP3754896B2 (ja) 2001-02-06 2006-03-15 キヤノン株式会社 インクジェット記録装置およびインクジェット記録方法
JP3714894B2 (ja) 2001-09-13 2005-11-09 大日本スクリーン製造株式会社 画像記録装置および画像記録装置を含む画像記録システム
US6685297B2 (en) 2001-09-24 2004-02-03 Xerox Corporation Print head alignment method, test pattern used in the method, and a system thereof
US7575315B2 (en) 2001-10-30 2009-08-18 Hewlett-Packard Development Company, L.P. Multiple print unit configurations
TW508309B (en) 2001-11-08 2002-11-01 Benq Corp Compact printhead and method of delivering ink to the printhead
US6752482B2 (en) 2002-02-01 2004-06-22 Seiko Epson Corporation Device and method for driving jetting head
US6565191B1 (en) * 2002-02-11 2003-05-20 Lexmark International, Inc. Method of color shingling to reduce visible printing defects
JP3741056B2 (ja) 2002-02-21 2006-02-01 ノーリツ鋼機株式会社 写真プリント作成システム及びこのシステムに用いられる写真処理装置及びこの写真処理装置にインストールされるフォルダ管理プログラム
JP4408608B2 (ja) 2002-06-24 2010-02-03 株式会社リコー ヘッド駆動制御装置及び画像記録装置
WO2004002094A1 (en) 2002-06-25 2003-12-31 Lockheed Martin Corporation Method to increase the hamming distance between frame delimiter symbol and data symbols of a mbnb line code
US6666537B1 (en) 2002-07-12 2003-12-23 Hewlett-Packard Development Company, L.P. Pen to paper spacing for inkjet printing
GB0217248D0 (en) * 2002-07-25 2002-09-04 Willett Int Ltd Device and method
JP3797300B2 (ja) 2002-08-30 2006-07-12 セイコーエプソン株式会社 インクジェット式プリンタのヘッド駆動装置
US7573603B2 (en) * 2002-10-11 2009-08-11 Avago Technologies Fiber Ip (Singapore) Pte. Ltd. Image data processing
CN1261770C (zh) 2002-10-16 2006-06-28 西安交通大学 雷达视频数据实时压缩解压缩传输方法
US6796636B2 (en) 2002-12-17 2004-09-28 Lexmark International, Inc. Two shot molded inkjet printhead lid for laser welding
JP2005061614A (ja) 2003-07-25 2005-03-10 Ntn Corp スラスト針状ころ軸受
US8251471B2 (en) 2003-08-18 2012-08-28 Fujifilm Dimatix, Inc. Individual jet voltage trimming circuitry
US7360853B2 (en) 2004-03-04 2008-04-22 Fujifilm Dimatix, Inc. Morphology-corrected printing
JP2007535433A (ja) * 2004-04-30 2007-12-06 ディマティックス インコーポレイテッド 液滴射出装置の位置決め
US7676720B2 (en) 2004-06-01 2010-03-09 BigBand Networks, Inc Method and system for program based redundancy
JP2006095767A (ja) * 2004-09-28 2006-04-13 Fuji Photo Film Co Ltd 画像形成装置
US7722147B2 (en) 2004-10-15 2010-05-25 Fujifilm Dimatix, Inc. Printing system architecture
US8068245B2 (en) 2004-10-15 2011-11-29 Fujifilm Dimatix, Inc. Printing device communication protocol
US7911625B2 (en) 2004-10-15 2011-03-22 Fujifilm Dimatrix, Inc. Printing system software architecture
US7907298B2 (en) 2004-10-15 2011-03-15 Fujifilm Dimatix, Inc. Data pump for printing
US8085428B2 (en) 2004-10-15 2011-12-27 Fujifilm Dimatix, Inc. Print systems and techniques
US8199342B2 (en) 2004-10-29 2012-06-12 Fujifilm Dimatix, Inc. Tailoring image data packets to properties of print heads
US7234788B2 (en) 2004-11-03 2007-06-26 Dimatix, Inc. Individual voltage trimming with waveforms
US20070206038A1 (en) 2006-03-03 2007-09-06 Richard Baker Ink jet printing with multiple conveyors
US7524050B2 (en) 2006-04-11 2009-04-28 Fujifilm Dimatix, Inc. Ink jet printing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044245A (ja) 2001-06-11 2003-02-14 Hewlett Packard Co <Hp> フォーマット固有の変換モジュールを使用する文書印刷用のプリンタ、方法およびシステム
JP2003165263A (ja) 2001-12-03 2003-06-10 Olympus Optical Co Ltd 画像記録装置

Also Published As

Publication number Publication date
JP2008517380A (ja) 2008-05-22
US20060082813A1 (en) 2006-04-20
WO2006044597A3 (en) 2007-01-25
EP1820088A2 (en) 2007-08-22
CN101052942B (zh) 2010-05-12
WO2006044597A2 (en) 2006-04-27
US7911625B2 (en) 2011-03-22
KR20070062549A (ko) 2007-06-15
CN101052942A (zh) 2007-10-10
JP4805940B2 (ja) 2011-11-02

Similar Documents

Publication Publication Date Title
KR101210992B1 (ko) 프린팅 시스템 소프트웨어 아키텍쳐
KR101186666B1 (ko) 프린트 시스템 및 기술
KR101187385B1 (ko) 프린팅 시스템 아키텍쳐
US9129193B2 (en) Methods and apparatus for parallel processing page description language data
KR101150136B1 (ko) 프린팅 장치 통신 프로토콜
KR101278877B1 (ko) 프린트용 데이터 펌프
US5493635A (en) System for combining heterogeneous image processing jobs into a single job
EP1805593A2 (en) Tailoring image data packets to properties of print heads
US20020165833A1 (en) Printing cost-calculating method and apparatus, printer driver, printing apparatus, printing system, printing cost-calculating system and printed matter-issuing system
EP0882580A3 (en) A method of managing print files in an electronic prepress system, and system using the method
US7880913B2 (en) Methods and systems for segmenting logical pages into work units for processing on multiple compute systems
US20050057766A1 (en) Method and apparatus for viewing on a client data representing a document to be printed
EP0977143B1 (en) Band rasterization of print data
EP0974891A3 (en) Printing system and printer
EP1205876A2 (en) Page rendering in a digital signal processor
US8482755B2 (en) Print controller using a job despool token to control the release of print jobs stored in a rasterized job spool
EP0864966B1 (en) Imformation processing apparatus and output apparatus
US6750980B1 (en) Information processing apparatus and output apparatus
EP1452955A2 (en) Methods and systems for estimating print imaging material usage
US20030210410A1 (en) Efficient implementation of raster operations flow

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: 20151123

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161123

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171114

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181121

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191120

Year of fee payment: 8