KR100396261B1 - 프린터 드라이버의 미리 보기 기능 수행 방법 - Google Patents
프린터 드라이버의 미리 보기 기능 수행 방법 Download PDFInfo
- Publication number
- KR100396261B1 KR100396261B1 KR10-2000-0036347A KR20000036347A KR100396261B1 KR 100396261 B1 KR100396261 B1 KR 100396261B1 KR 20000036347 A KR20000036347 A KR 20000036347A KR 100396261 B1 KR100396261 B1 KR 100396261B1
- Authority
- KR
- South Korea
- Prior art keywords
- printer
- printer driver
- preview function
- computer
- printing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
- G06F3/1256—User feedback, e.g. print preview, test print, proofing, pre-flight checks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Record Information Processing For Printing (AREA)
Abstract
본 발명은 미리 보기 기능에 관한 것으로, 특히 프린터 드라이버에서의 미리 보기 기능을 수행하기 위한 방법에 관한 것이다. 컴퓨터에 설치되고 상기 컴퓨터에 연결된 프린터를 구동하는 프린터 드라이버에서의 미리 보기 기능 수행 방법에 있어서, 출력하고자 하는 문서에 대한 프린트가 지시되면 프린팅 커맨드를 생성하고, 상기 프린트 드라이버에 미리 내장되어 있고, 상기 프린터와 동일한 기능을 수행하는 펌웨어 에뮬레이션을 통해 상기 프린팅 커맨드에 따른 비트맵을 생성하며, 상기 생성된 비트맵에 따라 상기 컴퓨터의 화면에 디스플레이하는 것을 특징으로 한다.
Description
본 발명은 미리 보기 기능에 관한 것으로, 특히 프린터 드라이버에서의 미리 보기 기능을 수행하기 위한 방법에 관한 것이다.도 1은 컴퓨터에서 프린터를 통한 인쇄 절차를 설명하기 위한 개념 블록도이다. 상기 도 1을 참조하면, 프린터(106)를 구동시키기 위해서는 프린터(106)와 연결된 컴퓨터(102)에 프린터 드라이버(104) 및 그에 관련된 프로그램이 설치(install)되어야 한다. 일반적으로 컴퓨터(102)의 응용프로그램 하에서 사용자가 인쇄명령을 내리면 상기 컴퓨터(102)의 응용프로그램은 문서의 내용을 프린터 드라이버(104)로 전달하고, 상기 프린터 드라이버(104)는 이를 명령어를 통하여 상기 프린터(106)가 이해할 수 있는 내용으로 변환한다. 이렇게 변환된 데이터는 인터페이스를 통해 상기 프린터(106)의 제어보드로 전달된 후 인쇄된다. 상기 프린터 드라이버(104)는 상기 컴퓨터(102)의 내부에 설치되어 있는 것임을 이해하여야 한다.
도 2는 드라이버 상에서의 인쇄 옵션을 설명하기 위한 도면이다. 상기 도 2를 참조하면, 상기 컴퓨터(102) 사용자는 상기 프린터 드라이버(104)의 기능을 사용해서 상기 프린터(106) 작동방식을 변경할 수 있다. 상기 프린터 드라이버(104)는 상기 도 2에 도시된 바와 같이, 용지설정, 인쇄품질, 그래픽 모드 등과 같은 등록 정보 창(통상 "표준 탭"이라 칭함)이 제공되고 사용자는 컴퓨터 모니터에 디스플레이되는 등록 정보 창을 이용하여 다양하게 인쇄 옵션 설정을 변경할 수 있다.
한편, 이러한 프린터 드라이버를 통해 프린터로 문서를 인쇄하기 전에 사용자는 자신의 문서가 실제로 인쇄될 결과물을 미리 보기 기능을 이용하여 확인할 수 있다. 이때 통상적인 미리 보기 기능은 프린터 드라이버가 아니라 일부 응용프로그램(application)으로부터 제공되는 기능이다. 상기 응용프로그램에서 미리 보기 기능을 수행하면, 단순히 설정된 용지 크기와 용지방향 등의 정보를 읽어와서 응용프로그램에서 화면에 보여주게 된다.
상기 미리 보기 기능은 응용프로그램에서 용지 크기와 용지 방향 등의 정보만으로 구성하므로 만들어진 문서가 잘리지는 않는지, 용지 방향은 맞는지의 여부를 확인할 수 있다. 상기 미리 보기 기능은 실제 프린터 드라이버를 거치지 않으므로 프린터 드라이버에서 제공하는 부가 기능 또는 프린터 드라이버에서 발생할 수 있는 문제 등은 확인할 방법이 없었다. 따라서 상기 미리 보기 기능에 의해 화면에 디스플레이되는 것과 실제 프린트하여 얻은 출력과는 다소의 차이가 있었다.
예를 들어 프린터 드라이버에서 옵션을 "용지당 페이지 수" 4매로 설정하고(즉, 1 용지에 4페이지를 축소하여 인쇄하는 기능), 워터마크(watermark) 기능을 설정하였다 하더라도, 응용프로그램의 미리 보기 기능에서는 설정한 옵션대로 보이지 않고 원래의 크기, 즉 한 용지에 한 페이지씩 표시되며, 또한 워터마크는 표시되지 않는다.
또한 이러한 미리 보기 기능은 일부 응용프로그램에서만 제공하는 기능으로서 많은 다른 응용프로그램에서는 이러한 미리 보기 기능이 없는 경우도 있어서 문서를 프린트하기 전에 미리 출력물을 확인할 수 없는 경우도 있었다.
이와 같이 종래의 미리 보기 기능은 일부 응용프로그램에서만 제공되고, 또한 프린터 드라이버의 부가 기능(워터마크, N-up 등)이 포함되었을 경우 미리 보기와 실제 출력과는 다른 결과를 보인다. 즉 응용프로그램에서 보여주는 미리 보기 기능이 프린터의 실제 출력과 일치한다는 보장이 없었다.
따라서 본 발명의 목적은 프린터에서 인쇄하여 얻을 수 있는 실제 출력과 동일한 화면을 보여주기 위한 미리 보기 기능을 제공함에 있다.
본 발명의 다른 목적은 미리 보기 기능을 위해 프린터 드라이버를 통해 실제 인쇄했을 때와 동일한 커맨드를 얻고, 이를 프린터의 펌웨어와 동일한 에뮬레이션을 프린터 드라이버에 내장하여 프린터로 인쇄하지 않고도 실제 인쇄했을 경우와 동일한 결과를 화면으로 출력하기 위한 미리 보기 기능을 제공함에 있다.
도 1은 컴퓨터에서 프린터를 통한 인쇄 절차를 설명하기 위한 개념 블록도,
도 2는 프린터 드라이버 상에서의 인쇄 옵션을 설명하기 위한 도면,
도 3은 본 발명에 따른 컴퓨터의 블록 구성도,
도 4는 통상적인 프린터의 블록 구성도,
도 5는 본 발명의 실시예에 따른 프린터 드라이버 및 프린터의 기능 블록도,
도 6은 본 발명의 실시예에 따른 프린터 드라이버를 통한 미리 보기 기능의 수행 과정을 도시한 흐름도.
이하 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명에서는 구체적인 구성 소자 등과 같은 특정 사항들이 나타나고 있는데 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들이 본 발명의 범위 내에서 소정의 변형이나 혹은 변경이 이루어질 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다.
먼저 본 발명이 적용되는 컴퓨터 및 프린터를 보다 상세히 설명하기로 한다. 도 3은 본 발명에 따른 컴퓨터의 블록 구성도이다. 상기 도 3을 참조하면, CPU(Central Processing Unit)(310)는 상기 컴퓨터(102)의 전반적인 동작을 제어한다. 특히 본 발명에서 상기 CPU(310)는 인쇄에 관련된 응용프로그램 및 설치된 프린터 드라이버(104) 관련 프로그램을 수행한다. 디스플레이제어기(312)는 상기 CPU(310)의 제어하에 각종 처리정보를 모니터(314)에 디스플레이한다. 메모리부(316)는 상기 CPU(310)의 제어 프로그램을 저장하며, 처리 데이터를 일시 저장한다. 본 발명에서 상기 메모리부(316)는 상기 프린터 드라이버(104)의 동작 프로그램 등이 저장된다. 입출력 인터페이스(318)는 상기 CPU(310)와 입력장치(320), 보조기억장치(322) 및 출력장치(324)간에 입출력되는 신호들을 인터페이스한다. 입력장치(320)는 키보드나 마우스 등이 될 수 있으며, 보조기억장치(322)로는 하드디스크 드라이브 등이 사용될 수 있다. 출력장치(324)는 상기 CPU(310)에 의해 처리된 각종 정보를 출력하기 위한 장치로서, 프린터나 플로터 등이 사용될 수 있다.
도 4는 통상적인 프린터의 블록 구성도이다. 상기 도 4를 참조하면, 제어부(430)는 프린터의 전반적인 제어를 담당하며, 호스트 인터페이스(432)는 컴퓨터 등과 같은 호스트와 상기 제어부(430)간을 인터페이스한다. 메모리부(434)는 상기 제어부(430)의 동작 수행 프로그램 및 각종 정보를 저장하고, 상기 제어부(430)의 프로그램 수행에 따라 발생된 데이터도 임시 저장한다. NVRAM(Non Volatile RAM)(436)은 프린터 관리를 위한 각종 정보를 저장하며, 프린트 엔진부(438)는 제어부(430)의 제어에 따라 인쇄를 수행한다. 조작패널(440)은 사용자의 다양한 명령 입력을 가능하게 하는 키입력부와 사용자에게 각종 정보를 제공하기 위한 표시창을 구비한다.
한편, 본 발명의 구성은 기존의 프린터 드라이버(104)에 프린터 펌웨어의 에뮬레이션이 추가되어야 한다. 그리고 프린터 드라이버(104)에서 생성된 커맨드를 위에서 추가한 펌웨어 에뮬레이션 모듈을 거쳐 컴퓨터의 화면에서 볼 수 있도록 비트맵의 형태로 변환시키고 이를 다시 디스플레이 해주는 모듈이 필요하다.
도 5는 본 발명의 실시예에 따른 프린터 드라이버 및 프린터의 기능 블록도이다. 상기 도 5를 참조하면, 응용프로그램(502)은 GDI(window Graphics Device Interface)(504)를 통해 프린터 드라이버(506)와 인터페이스하며, 인쇄할 문서에 대한 데이터를 제공한다. 상기 프린터 드라이버(506)는 제공받은 문서를 PCL(Printer Control Language) 커맨드(510)로 변환하여 이를 스풀러(windows spooler)(512)를 통해 프린터로 출력한다. 프린터의 I/O부(Input/Output)(520)에서 입력된 PCL 커맨드는 파서(passer)(522)에서 해당 명령으로 분석되어 에뮬레이션(emulation)(524)된다. 이때. 컴퓨터에서 제공된 명령은 PCL, 포스트스크립, KS/KSSM 등이 될 수 있으며, 상기 예에서는 PCL인 것으로 설명하였다. 이후 분석된 커맨드는 렌더링(rendering)(526)되어 이후 비트맵(bit map)(528)으로 변환된 후 인쇄된다.
프린터 펌웨어(firmware) 에뮬레이션의 역할은 프린터 드라이버에서 만들어진 커맨드를 해석하고 렌더링하여 프린트 엔진이 표현할 수 있는 도트(dot) 단위의 도트 데이터(600dpi/300dpi)로 만들어 프린터 엔진에서 인쇄할 수 있도록 하는 것이다.
본 발명에서는 상기에서 설명한 펌웨어 에뮬레이션을 프린터 드라이버에 내장한다. 즉 프린터 드라이버(506)에는 본 발명의 특징에 따른 프린터 펌웨어 에뮬레이션(508)이 미리 구비된다. 이러한 본 발명의 특징에 따른 에뮬레이션(508)은 프린터로 인쇄하지 않고서도 프린터에서 인쇄할 때와 완전히 동일한 결과를 화면에 출력할 수 있도록 하기 위한 것으로, 프린터 드라이버(508)에서 만든 커맨드를 다시 렌더링하고 이를 비트맵(bitmap) 파일로 만들어 프린터 드라이버에서 보여주는 미리 보기 기능을 수행하게 한다.
본 발명의 미리 보기 기능의 동작을 간단히 설명하면 프린터 드라이버에서 미리 보기 기능을 실행한다. 그러면 프린터 드라이버는 응용프로그램의 프린트 명령을 실행했을 때와 동일하게 프린팅 커맨드를 생성한다. 그리고 이를 다시 프린터 드라이버에 내장되어 있는 펌웨어 에뮬레이션을 통해 실제 프린터로 인쇄했을 때와 동일한 비트맵을 생성한다. 생성된 비트맵을 읽어와 화면에 디스플레이 해주면 실제 프린터의 출력과 동일한 화면을 얻게 된다.
도 6은 본 발명의 실시예에 따른 프린터 드라이버를 통한 미리 보기 기능의 수행 과정을 도시한 흐름도이다. 상기 도 6을 참조하면, 602단계에서 프린트가 지시되면, 이후 604단계에서 프린터 드라이버에서는 프린팅 커맨드를 생성한다. 이때 605단계에서 미리 보기 기능이 선택되었는가의 여부를 판단한다. 상기 606단계에서 미리 보기 기능이 선택되지 않았을 경우에는 이후 608단계로 진행하여 프린터로 커맨드를 전송하게 하게 되고, 상기 606단계에서 미리 보기 기능이 선택되었을 경우에는 이후 본 발명에 특징에 따른 미리 보기 기능을 수행한다. 즉, 상기 프린터 드라이버에서는 실제 응용프로그램에서 프린트 커맨드를 실행했을 때와 동일한 방법으로 응용프로그램에서 작성한 문서와 사용자가 설정한 프린터 드라이버의 여러 가지 부가 기능(워터마크, N-up 등)을 조합하여 프린팅 커맨드(PCL6, 포스트스크립(postscrip) 등)을 생성한다. 즉, 610단계에서 에뮬레이션 모듈을 실행하게 되고 이후 612단계에서는 위에서 생성된 프린팅 명령을 해석하고 렌더링하기 위해 프린터 펌웨어의 에뮬레이션 모듈을 실행시킨다. 이후 614단계에서는 내장된 에뮬레이션 모듈의 동작에 따라 프린팅 커맨드를 해석하고 렌더링하여 프린터로 인쇄했을 때와 동일한 출력을 비트맵 파일로 만든다. 이후 616단계에는 상기 614단계에서 생성된 비트맵 파일을 읽어와 프린터 드라이버의 미리 보기 화면에 디스플레이 해주게 되며, 이에 따라 사용자는 프린터로 인쇄한 출력과 동일한 결과를 화면으로 미리 볼 수 있게 된다.
상기와 같은 구성에 의해 본 발명의 특징에 따른 프린터 드라이버의 미리 보기 기능이 수행될 수 있다.
한편 상기한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나 여러 가지 변형이 본 발명의 범위를 벗어나지 않고 실시될 수 있다. 따라서 본 발명의 범위는 설명된 실시예에 의하여 정할 것이 아니고 청구범위와 청구범위의 균등한 것에 의하여 정하여져야 할 것이다.
상기한 바와 같이 본 발명은 실제 프린터에서 인쇄하여 얻을 수 있는 출력과 동일한 화면을 보여주는 미리 보기 기능을 제공할 수 있는 이점이 있다.
Claims (3)
- 컴퓨터에 설치되고 상기 컴퓨터에 연결된 프린터를 구동하는 프린터 드라이버에서의 미리 보기 기능 수행 방법에 있어서,출력하고자 하는 문서에 대한 프린트가 지시되면 프린팅 커맨드를 생성하는 과정과,상기 프린트 드라이버에 미리 내장되어 있고, 상기 프린터와 동일한 기능을 수행하는 펌웨어 에뮬레이션을 통해 상기 프린팅 커맨드에 따른 비트맵을 생성하는 과정과,상기 생성된 비트맵에 따라 상기 컴퓨터의 화면에 디스플레이 하는 과정을 포함하여 구성함을 특징으로 하는 미리 보기 기능 수행 방법.
- 제1항에 있어서, 상기 프린팅 커맨드의 생성 과정은응용프로그램에서 제공된 문서와 설정된 상기 프린터 드라이버의 부가 기능을 조합하여 프린팅 커맨드를 생성하는 과정임을 특징으로 하는 미리 보기 기능 수행 방법.
- 제1항에 있어서, 상기 프린팅 커맨드에 따른 비트맵의 생성 과정은상기 프린팅 커맨드를 해석하는 과정과, 상기 해석한 프린팅 커맨드에 따라 렌더링 하여 실제로 프린트했을 때와 동일한 출력을 비트맵 파일을 만드는 과정으로 이루어짐을 특징으로 하는 미리 보기 기능 수행 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2000-0036347A KR100396261B1 (ko) | 2000-06-29 | 2000-06-29 | 프린터 드라이버의 미리 보기 기능 수행 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2000-0036347A KR100396261B1 (ko) | 2000-06-29 | 2000-06-29 | 프린터 드라이버의 미리 보기 기능 수행 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020001978A KR20020001978A (ko) | 2002-01-09 |
KR100396261B1 true KR100396261B1 (ko) | 2003-09-02 |
Family
ID=19674717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2000-0036347A KR100396261B1 (ko) | 2000-06-29 | 2000-06-29 | 프린터 드라이버의 미리 보기 기능 수행 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100396261B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220317943A1 (en) * | 2019-12-27 | 2022-10-06 | Canon Kabushiki Kaisha | Control method and information processing apparatus |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040048480A (ko) * | 2002-12-03 | 2004-06-10 | 삼성전자주식회사 | 오버래이 파일 인쇄 방법 및 장치 |
KR20080043607A (ko) * | 2006-11-14 | 2008-05-19 | 주식회사신도리코 | 미리 보기 기능을 이용한 인쇄 시스템 및 방법 |
NZ601686A (en) * | 2010-02-10 | 2014-06-27 | Sato Holdings Kk | System and method for printer emulation |
-
2000
- 2000-06-29 KR KR10-2000-0036347A patent/KR100396261B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220317943A1 (en) * | 2019-12-27 | 2022-10-06 | Canon Kabushiki Kaisha | Control method and information processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
KR20020001978A (ko) | 2002-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4960900B2 (ja) | 情報処理装置および画像形成装置 | |
US8294914B2 (en) | Image forming apparatus and method for changing number of lines in band buffer based on memory size to be required | |
US20100123935A1 (en) | Document processing apparatus and document processing method | |
JP2009187553A (ja) | Pdf文書のテキストのみのコンテンツを印刷するための方法 | |
KR100212986B1 (ko) | 프린터의 이미지 화일 직접 인쇄방법 | |
WO2006076855A1 (fr) | Procede pour la fixation d'une etiquette dans le tramage des pages | |
US7612899B2 (en) | Print data processing system | |
JP4367561B2 (ja) | 印刷制御装置及び印刷文書の印刷方法 | |
KR100396261B1 (ko) | 프린터 드라이버의 미리 보기 기능 수행 방법 | |
JP4164488B2 (ja) | 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム | |
KR100633104B1 (ko) | 인쇄옵션의 저장 및 인쇄가 가능한 인쇄방법 | |
KR100440965B1 (ko) | 서로 다른 프린터 드라이버를 내장하여 인쇄 속도를향상시키는 프린팅 방법 및 그를 이용한 프린터 | |
US8908227B2 (en) | Image forming apparatus, image forming system, image data processing method, program, and storage medium | |
US7196812B2 (en) | Information processing apparatus and control code generation method | |
JP4054544B2 (ja) | 情報処理装置、情報処理方法、印刷制御プログラム、印刷処理装置、印刷処理方法及び印刷処理プログラム | |
US20040196481A1 (en) | Text transformations on a printing device | |
KR100839498B1 (ko) | 프린터 드라이버 및 인쇄 장치 | |
JP4125026B2 (ja) | 情報処理装置、方法及び制御プログラム | |
US7595898B2 (en) | Print control apparatus, printer apparatus, information processing apparatus, and program product | |
JP2008219418A (ja) | 画像形成装置、画像処理方法、及び画像処理プログラム | |
KR100528863B1 (ko) | 텍스트데이터 추출이 가능한 인쇄장치 및 그의텍스트데이터 추출방법 | |
JP3495876B2 (ja) | 文字出力装置および文字出力方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
KR20100023614A (ko) | 호스트 장치, 화상형성장치 및 그의 인쇄 데이터 처리 방법 | |
JP2005159764A (ja) | 記録方法及び装置及びプログラム及び記憶媒体 | |
JP2006178623A (ja) | 印刷制御装置および印刷制御方法および印刷制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
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: 20120730 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |