JP7137135B2 - computer program and controller - Google Patents
computer program and controller Download PDFInfo
- Publication number
- JP7137135B2 JP7137135B2 JP2018183708A JP2018183708A JP7137135B2 JP 7137135 B2 JP7137135 B2 JP 7137135B2 JP 2018183708 A JP2018183708 A JP 2018183708A JP 2018183708 A JP2018183708 A JP 2018183708A JP 7137135 B2 JP7137135 B2 JP 7137135B2
- Authority
- JP
- Japan
- Prior art keywords
- image data
- type
- print command
- command
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
本明細書は、印刷実行部に画像を印刷させる制御技術に関する。 The present specification relates to control technology for causing a print execution unit to print an image.
従来から、プリンタなどの印刷実行部に画像を印刷させるために、印刷コマンドが印刷実行部に出力されている。印刷コマンドとしては、例えば、IEEE-ISTO(The Institute of Electrical and Electronics Engineers - Industry Standards and Technology Organization)のプリンタワーキンググループ(PWG)によって提案されたPWGラスタというデータ形式の画像データを用いるコマンドなどが、用いられている。PWGラスタの画像データは、ランレングス圧縮の1種であるパックビッツ圧縮と呼ばれる圧縮方法で、圧縮されている。ここで、特許文献1には、パックビッツ圧縮において、圧縮効率を向上させるために、出現回数の多い8bitのデータを4bitのコマンドに変換する方法が、提案されている。
Conventionally, a print command is output to a print execution unit such as a printer in order to cause the print execution unit to print an image. Examples of print commands include commands using image data in a data format called PWG raster proposed by the Printer Working Group (PWG) of the Institute of Electrical and Electronics Engineers - Industry Standards and Technology Organization (IEEE-ISTO). used. PWG raster image data is compressed by a compression method called Packbits compression, which is a type of run-length compression. Here,
ところで、印刷実行部に画像を印刷させるための処理速度を向上する技術が求められている。 By the way, there is a demand for a technique for improving the processing speed for causing the print execution unit to print an image.
本明細書は、印刷実行部に印刷コマンドを出力する際に、印刷実行部による印刷処理速度の向上につながるための新たな技術を開示する。 This specification discloses a new technique for improving the print processing speed of the print execution unit when outputting a print command to the print execution unit.
本明細書に開示された技術は、以下の適用例として実現することが可能である。 The technology disclosed in this specification can be implemented as the following application examples.
[適用例1]印刷実行部に画像を印刷させるためのコンピュータプログラムであって、対象画像の対象画像データを取得する第1取得機能と、第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、を、コンピュータに実現させ、前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、を含む、コンピュータプログラム。 [Application Example 1] A computer program for causing a print execution unit to print an image, including a first acquisition function for acquiring target image data of a target image, a first type print command, and a second type print command A command generation function for generating at least one print command among a plurality of types of print commands, the at least one print command including a target print command selected as a print command to be output to the print execution unit. and an output function for outputting the target print command to the print execution unit, and a first generation function for generating the first type print command realized by the command generation function, the target a function of generating the first type print command including the first type image data by executing a first size change process including image interpolation using the image data; A second generation function for generating a second type print command generates resized image data representing the target image by performing a second resizing process that does not include image interpolation using the target image data. and a compression function for generating the second type print command including second type image data by run-length compressing the resized image data.
この構成によれば、第1種印刷コマンドに含まれる第1種画像データが、画像補間を含む第1サイズ変更処理を実行することによって生成されるので、第1種印刷コマンドが対象印刷コマンドとして選択される場合には、高画質の印刷を実現できる。また、第2種印刷コマンドに含まれる第2種画像データは、画像補間を含まない第2サイズ変更処理と、ランレングス圧縮と、を実行することによって生成されるので、対象印刷コマンドとして第2種印刷コマンドが選択される場合には、データの圧縮効率を向上させ、印刷実行部に出力される印刷コマンドのデータサイズを小さくできる。それにより、印刷処理速度向上につながる印刷コマンドを印刷実行部に出力できる。
[適用例2]
適用例1に記載のコンピュータプログラムであって、
前記印刷実行部から、前記印刷実行部の能力に関する情報である能力情報を取得する第2取得機能と、
前記能力情報を用いて、前記複数種類の印刷コマンドから前記対象印刷コマンドを選択する選択機能と、
をコンピュータに実現させる、コンピュータプログラム。
[適用例3]
適用例2に記載のコンピュータプログラムであって、
前記能力情報は、前記印刷実行部が受け付ける画像データの解像度である入力解像度に関する情報を含み、
前記選択機能は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが前記入力解像度に基づく入力サイズよりも小さいことを含む条件が満たされる場合に、前記対象印刷コマンドとして前記第2種印刷コマンドを選択し、
前記画像サイズ変更機能は、前記対象画像データのサイズを前記入力サイズに変更する拡大処理を前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
コンピュータプログラム。
[適用例4]
適用例1から3のいずれかに記載のコンピュータプログラムであって、
前記第2生成機能は、前記対象画像データがドキュメントデータである場合に、前記対象画像データを、非圧縮のビットマップデータと可逆圧縮されたビットマップデータとのいずれかである対象ビットマップデータに変換する変換機能を含み、
前記圧縮機能は、前記対象ビットマップデータと、前記対象ビットマップデータに前記第2サイズ変更処理を実行して得られる画像データと、のいずれかをランレングス圧縮することによって、前記第2種印刷コマンドに含まれる前記第2種画像データを生成する、
コンピュータプログラム。
[適用例5]
適用例1から4のいずれかに記載のコンピュータプログラムであって、
前記画像サイズ変更機能は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが基準サイズよりも大きい場合に、前記対象画像データのサイズを前記基準サイズ以下のサイズに変更する縮小処理と、前記縮小処理によって得られる画像データのサイズを前記印刷実行部が受け付ける画像データの解像度である入力解像度に基づく入力サイズに変更する拡大処理とを、前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
コンピュータプログラム。
[適用例6]
適用例1から5のいずれかに記載のコンピュータプログラムであって、
前記対象画像を前記印刷実行部に印刷させる指示を受け付ける受付機能と、
前記指示が受け付けられる前に、前記対象画像を表示部に表示させる表示機能と、
を、コンピュータに実現させ、
前記コマンド生成機能は、前記指示が受け付けられる前に、前記第2種印刷コマンドの生成を開始する、
コンピュータプログラム。
[適用例7]
適用例6に記載のコンピュータプログラムであって、
前記第2種印刷コマンドのうちの前記指示が受け付けられる前に生成済の部分を含む特定部分のデータサイズが基準データサイズを超える場合に、前記出力機能に前記第1種印刷コマンドを出力させる出力設定機能を、コンピュータに実現させる、コンピュータプログラム。
[適用例8]
適用例1から7のいずれかに記載のコンピュータプログラムであって、
前記第2生成機能は、前記コンピュータが複数の演算部を備える場合に、前記第2種印刷コマンドを生成する処理に含まれる複数の処理を、前記複数の演算部に並列して実行させる並列処理機能を含む、
コンピュータプログラム。
[適用例9]
適用例8に記載のコンピュータプログラムであって、
前記並列処理機能は、前記第2種画像データに含まれる複数のバンドデータであって前記対象画像に含まれる複数のバンド画像に対応する前記複数のバンドデータのうちの少なくとも一部の複数のバンドデータを生成する処理を、前記複数の演算部に並列して実行させ、
前記複数のバンド画像のうちの前記対象画像の最先に印刷されるべき先端を含む先端バンド画像のサイズは、他の1以上のバンド画像のそれぞれのサイズのうちの最大サイズよりも、小さく、
前記出力機能は、前記先端バンド画像のバンドデータである先端バンドデータを生成する処理が完了した場合には、前記他の1以上のバンド画像のうちの少なくとも1つのバンド画像の前記バンドデータを生成する処理が完了していない場合であっても、前記先端バンドデータを前記印刷実行部に出力する、
コンピュータプログラム。
[適用例10]
印刷実行部に画像を印刷させるための制御装置であって、
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含む、制御装置。
According to this configuration, since the first-type image data included in the first-type print command is generated by executing the first size change process including image interpolation, the first-type print command is used as the target print command. If selected, high quality printing can be achieved. Also, since the second-type image data included in the second-type print command is generated by executing the second size change processing that does not include image interpolation and run-length compression, the second-type image data is generated as the target print command. When the seed print command is selected, the data compression efficiency can be improved and the data size of the print command output to the print execution unit can be reduced. As a result, it is possible to output a print command that leads to an improvement in print processing speed to the print execution unit.
[Application example 2]
The computer program according to Application Example 1,
a second acquisition function for acquiring capability information, which is information about the capabilities of the print execution unit, from the print execution unit;
a selection function for selecting the target print command from the plurality of types of print commands using the capability information;
A computer program that makes a computer realize
[Application Example 3]
The computer program according to Application Example 2,
The capability information includes information on input resolution, which is the resolution of image data accepted by the print execution unit,
When the target image data is bitmap data and a size correlated with the number of pixels of the target image data is smaller than an input size based on the input resolution, the selecting the second type print command as the target print command;
The image resizing function generates the resized image data by executing an enlarging process of changing the size of the target image data to the input size as the second resizing process.
computer program.
[Application example 4]
The computer program according to any one of Application Examples 1 to 3,
When the target image data is document data, the second generation function converts the target image data into target bitmap data that is either uncompressed bitmap data or reversibly compressed bitmap data. Contains a conversion function that converts,
The compression function performs run-length compression of either the target bitmap data or image data obtained by performing the second size change processing on the target bitmap data, thereby performing the second-type printing. generating the second type image data included in the command;
computer program.
[Application example 5]
The computer program according to any one of Application Examples 1 to 4,
The image size changing function reduces the size of the target image data to the reference size or less when the target image data is bitmap data and the size correlated with the number of pixels of the target image data is larger than the reference size. and an enlargement process of changing the size of the image data obtained by the reduction process to an input size based on the input resolution, which is the resolution of the image data accepted by the print execution unit. generating the resized image data by executing as a modification process;
computer program.
[Application example 6]
The computer program according to any one of Application Examples 1 to 5,
a reception function that receives an instruction to print the target image to the print execution unit;
a display function for displaying the target image on a display unit before the instruction is accepted;
is implemented on a computer,
The command generation function starts generating the second type print command before the instruction is accepted.
computer program.
[Application example 7]
The computer program according to Application Example 6,
Output for causing the output function to output the first type print command when a data size of a specific portion including a portion already generated before the instruction is accepted out of the second type print command exceeds a reference data size. A computer program that causes a computer to implement a setting function.
[Application example 8]
The computer program according to any one of Application Examples 1 to 7,
When the computer includes a plurality of calculation units, the second generation function is parallel processing that causes the plurality of calculation units to execute in parallel a plurality of processes included in the process of generating the
computer program.
[Application example 9]
The computer program according to Application Example 8,
The parallel processing function is a plurality of bands of at least a part of the plurality of band data included in the second type image data and corresponding to the plurality of band images included in the target image. causing the plurality of calculation units to execute processing for generating data in parallel;
the size of the leading edge band image including the leading edge to be printed first of the target image among the plurality of band images is smaller than the maximum size among the sizes of each of the other one or more band images;
The output function generates the band data of at least one band image out of the other one or more band images when the process of generating leading edge band data, which is the band data of the leading edge band image, is completed. outputting the leading edge band data to the print execution unit even if the processing for printing is not completed;
computer program.
[Application example 10]
A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
a controller, including
なお、本明細書に開示の技術は、種々の態様で実現することが可能であり、例えば、制御方法および制御装置、印刷方法および印刷装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体(例えば、一時的ではない記録媒体)、等の形態で実現することができる。 The technology disclosed in this specification can be implemented in various forms, for example, a control method and a control device, a printing method and a printing device, a computer for realizing the functions of those methods or devices. It can be implemented in the form of a program, a recording medium recording the computer program (for example, a non-temporary recording medium), or the like.
A.第1実施例:
A-1.端末装置100と複合機200との構成:
図1は、実施例の画像処理システム1000を示す説明図である。画像処理システム1000は、端末装置100と、端末装置100に接続された複合機200と、を含んでいる。後述するように、複合機200は、原稿等の対象物を読み取るスキャナ部280と、画像を印刷するプリンタ部400と、複合機200の全体を制御する制御部299と、を有している。複合機200は、印刷を実行する印刷実行部の例である。
A. First example:
A-1. Configuration of
FIG. 1 is an explanatory diagram showing an
端末装置100は、パーソナルコンピュータである(例えば、デスクトップコンピュータ、タブレットコンピュータなど)。端末装置100は、プロセッサ110と、記憶装置115と、画像を表示する表示部140と、ユーザによる操作を受け入れる操作部150と、通信インタフェース170と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置115は、揮発性記憶装置120と、不揮発性記憶装置130と、を含んでいる。
The
プロセッサ110は、データ処理を行う装置であり、例えば、CPUである。揮発性記憶装置120は、例えば、DRAMであり、不揮発性記憶装置130は、例えば、フラッシュメモリである。
The
不揮発性記憶装置130は、プログラム132を含む複数のプログラムを格納している。プロセッサ110は、プログラム132を実行することによって、通信インタフェース170を介して接続される複合機200や印刷装置等の画像処理装置を制御する種々の機能を実現する。プログラム132によって実現される機能の詳細については、後述する。プロセッサ110は、プログラム132の実行に利用される種々の中間データを、記憶装置115(例えば、揮発性記憶装置120、不揮発性記憶装置130のいずれか)に、一時的に格納する。本実施例では、プログラム132は、後述するアプリケーションの機能を実現するためのアプリケーションプログラムである。
表示部140は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、LEDディスプレイ、有機ELディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部150は、ユーザによる操作を受け取る装置であり、例えば、表示部140上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部150を操作することによって、種々の指示を端末装置100に入力可能である。
The
通信インタフェース170は、他の装置と通信するためのインタフェースである(例えば、USBインタフェース、有線LANインタフェース、IEEE802.11の無線インタフェース)。通信インタフェース170には、複合機200が接続されている。
The
複合機200は、制御部299と、スキャナ部280と、プリンタ部400と、を有している。制御部299は、プロセッサ210と、記憶装置215と、画像を表示する表示部240と、ユーザによる操作を受け入れる操作部250と、通信インタフェース270と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置215は、揮発性記憶装置220と、不揮発性記憶装置230と、を含んでいる。
The
プロセッサ210は、データ処理を行う装置であり、例えば、CPUである。揮発性記憶装置220は、例えば、DRAMであり、不揮発性記憶装置230は、例えば、フラッシュメモリである。
The
不揮発性記憶装置230は、プログラム232を格納している。プロセッサ210は、プログラム232を実行することによって、種々の機能を実現する(詳細は、後述)。プロセッサ210は、プログラム232の実行に利用される種々の中間データを、記憶装置(例えば、揮発性記憶装置220、不揮発性記憶装置230のいずれか)に、一時的に格納する。本実施例では、プログラム232は、複合機200の製造者によって、ファームウェアとして、不揮発性記憶装置230に予め格納されている。
The
表示部240は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、LEDディスプレイ、有機ELディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部250は、ユーザによる操作を受け取る装置であり、例えば、表示部240上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部250を操作することによって、種々の指示を複合機200に入力可能である。
The
通信インタフェース270は、他の装置と通信するためのインタフェースである。本実施例では、通信インタフェース270は、端末装置100の通信インタフェース170に接続されている。
スキャナ部280は、CCDやCMOSなどの光電変換素子を用いて光学的に原稿等の対象物を読み取ることによって、読み取った画像(「スキャン画像」と呼ぶ)を表すスキャンデータを生成する。スキャンデータは、例えば、カラーのスキャン画像を表すRGBのビットマップデータである。
The
プリンタ部400は、所定の方式(例えば、レーザ方式や、インクジェット方式)で、用紙(印刷媒体の一例)上に画像を印刷する装置である。本実施例では、プリンタ部400は、シアンC、マゼンタM、イエロY、ブラックKの4種類のインクを用いてカラー画像を印刷可能なインクジェット方式の印刷装置である。
The
A-2.印刷処理:
図2は、印刷処理の例を示すフローチャートである。本実施例では、複合機200は、他の装置(例えば、端末装置100)によって供給された印刷コマンドを用いて、プリンタ部400に画像を印刷させることができる。端末装置100のプロセッサ110は、プログラム132に従って、印刷コマンドの生成と出力とを行う印刷処理を実行する。プロセッサ110は、ユーザの指示(例えば、操作部150の操作によって入力された指示)に従って、印刷処理のためのアプリケーションを起動する。
A-2. Print processing:
FIG. 2 is a flowchart illustrating an example of print processing. In this embodiment, the
S110では、プロセッサ110は、印刷装置を選択するための設定画面を、表示部140に表示させる。図3(A)は、設定画面の例を示す概略図である。この設定画面D1は、利用可能な印刷装置のリストを表している。図3(A)の例では、第1印刷装置を示す第1候補画像B1と、第2印刷装置を示す第2候補画像B2とが、表されている。第1候補画像B1は、複合機200を示していることとする。プロセッサ110は、利用可能な印刷装置を検出し、検出した印刷装置のリストを含む設定画面を、表示部140に表示させる。
In S110,
プロセッサ110は、SMB(Server Message Block)プロトコル、LPR(Line PRinter daemon)プロトコルなどのネットネットワークプリンタを利用するためのプロトコルに従って、ネットワーク上の印刷装置を検出する。また、プロセッサ110は、USBプロトコルなどの外部装置を利用するためのプロトコルに従って、端末装置100に接続された印刷装置を検出する。
The
ユーザは、操作部150を操作することによって、印刷に利用すべき印刷装置を選択する。例えば、ユーザは、操作部150のうち、希望する印刷装置の画像に重なる部分をタップすることによって、印刷装置を選択できる。以下、複合機200が選択されたこととする。また、選択された印刷装置を「対象印刷装置」とも呼ぶ。また、操作部150のうち、表示部140に表示された特定の画像に重なる部分をタップすることを、特定の画像をタップするとも表現する。
A user selects a printing apparatus to be used for printing by operating the
S120(図2)では、プロセッサ110は、対象印刷装置の能力情報を取得する。能力情報は、印刷装置の能力に関する情報である。本実施例では、能力情報は、PWGラスタ形式の画像データを含むコマンドに対応しているか否かを示す情報と、対象印刷装置が受け付ける画像データの解像度である入力解像度に関する情報と、を含んでいる。入力解像度は、画素密度を示しており、例えば、ppi(pixel per inch)、または、dpi(dot per inch)の単位で表される。本実施例では、プロセッサ110は、対象印刷装置に、予め決められた手順に従って、能力情報を要求する。対象印刷装置は、要求に応じて、能力情報を端末装置100に供給する。
At S120 (FIG. 2), the
なお、上述したように、複合機200は、印刷とスキャンを実行できる。複合機200からの能力情報は、複合機200が印刷とスキャンを実行できることを示す情報が含まれる。そこで、プロセッサ110は、印刷とスキャンとのいずれかを選択するための設定画面を、表示部140に表示させる。図3(B)は、設定画面の例を示す概略図である。この設定画面D2には、印刷を示す第1画像B11と、スキャンを示す第2画像B12とが、表されている。ユーザは、希望する処理の画像をタップすることによって、希望する処理を選択する。以下、印刷が選択されたこととする。
Note that, as described above, the
S130(図2)は、プロセッサ110は、印刷すべき画像である対象画像を選択する。本実施例では、プロセッサ110は、端末装置100の不揮発性記憶装置130に格納済のデータから、ユーザに、対象画像の対象画像データを選択させる。まず、プロセッサ110は、データ形式を選択するための設定画面を、表示部140に表示させる。図3(C)は、設定画面の例を示す概略図である。この設定画面D3には、写真を示す第1ボタンB21と、ドキュメントを示す第2ボタンB22とが、表されている。
At S130 (FIG. 2), the
写真は、ビットマップ形式を示している。ビットマップ形式としては、JPEG形式、PNG形式、GIF形式、TIFF形式など、複数の画素のそれぞれの色値を表す、未圧縮、または、圧縮済の、種々の形式が、利用される。本実施例では、予め決められた1以上の形式が、ビットマップ形式として利用される。本実施例では、ビットマップ形式の画像データは、横方向と縦方向と沿ってマトリクス状に配置された複数の画素のそれぞれの色値を示している。そして、複数の画素は、矩形状の画像を示している。 The picture shows the bitmap format. Various uncompressed or compressed bitmap formats, such as JPEG format, PNG format, GIF format, TIFF format, etc., are used to represent the color values of each of a plurality of pixels. In this embodiment, one or more predetermined formats are used as bitmap formats. In this embodiment, the bitmap format image data indicates the color values of each of a plurality of pixels arranged in a matrix along the horizontal and vertical directions. A plurality of pixels represent a rectangular image.
ドキュメント形式は、ビットマップ形式以外のデータ形式である。本実施例では、PDF形式と、予め決められた特定のアプリケ-ションソフトのデータ形式(例えば、ワードプロセッサソフトウェア、表計算ソフトウェア、プレゼンテーションソフトウェアのそれぞれのデータ形式)とが、ドキュメント形式として利用される。以下、特定のアプリケ-ションソフトのデータ形式を、オフィス形式とも呼ぶ。 A document format is a data format other than the bitmap format. In this embodiment, the PDF format and the data formats of predetermined specific application software (for example, the respective data formats of word processor software, spreadsheet software, and presentation software) are used as document formats. Hereinafter, the data format of specific application software will also be referred to as the office format.
ユーザは、希望のデータ形式の画像をタップすることによって、データ形式を選択する。以下、選択されたデータ形式を、対象データ形式とも呼ぶ。データ形式が選択された場合、プロセッサ110は、表示部140に設定画面を表示させて、ユーザに対象画像データを選択させる。図3(D)は、設定画面の例を示す概略図である。この設定画面D4には、対象画像の複数の候補画像CFが、表されている。候補画像CFは、不揮発性記憶装置130に格納済の対象データ形式のデータの画像である。ユーザは、希望の候補画像CFをタップすることによって、対象画像を選択する。設定画面D4中の選択画像SFは、選択された画像を示している。設定画面D4は、さらに、進行ボタンB31を表している。プロセッサ110は、進行ボタンB31がタップされたことに応じて、処理を進行する。
The user selects the data format by tapping the image of the desired data format. The selected data format is hereinafter also referred to as a target data format. When the data format is selected,
S135(図2)では、プロセッサ110は、選択された対象画像のデータである対象画像データを取得する。例えば、不揮発性記憶装置130から対象画像データが取得される。
At S135 (FIG. 2), the
S140では、プロセッサ110は、現行の印刷設定を用いて、コマンド生成処理を開始する。本実施例では、印刷設定は、用紙の種類(光沢紙、普通紙など)、用紙サイズ(L版、A4など)、縁無し印刷の適用の有無、カラーモード(カラー印刷とモノクロ印刷のいずれか)を含んでいる。最初にS140が実行される時には、印刷設定として、予め決められた初期設定が利用される。また、対象画像は、用紙サイズの用紙上の印刷可能な領域を最大限に用いて印刷されることとする(すなわち、対象画像は、用紙上の印刷可能な領域に、最大サイズで印刷される)。印刷コマンドの生成は、図2の処理とは並行して進行する。コマンド生成処理の詳細については、後述する。
At S140,
S150では、プロセッサ110は、対象画像のプレビューを表示部140に表示させる。図3(E)は、プレビュー画面の例を示す概略図である。このプレビュー画面D5は、対象画像PVと、設定ボタンB41~B44と、印刷ボタンB45と、を表している。ユーザは、設定ボタンB41~B44をタップすることによって、用紙の種類と、用紙サイズと、縁無し印刷の設定と、カラーモードと、を変更できる。プロセッサ110は、設定ボタンB41~B44のいずれかが操作された場合、ユーザの操作に応じて、印刷設定を変更する。このように、本実施例では、プレビュー画面D5は、印刷の設定をユーザに選択させるための設定画面である。また、ユーザは、印刷ボタンB45をタップすることによって、対象印刷装置に対象画像を印刷させる指示を、入力できる。
At S150, the
S160(図2)では、プロセッサ110は、印刷ボタンB45が操作されたか否かを判断する。印刷ボタンB45が操作されていない場合(S160:No)、S170で、プロセッサ110は、印刷設定が変更されたか否かを判断する。印刷設定が変更されていない場合(S170:No)、プロセッサ110は、S160へ移行する。印刷設定が変更された場合(S170:Yes)、S180で、プロセッサ110は、生成中の印刷コマンドを破棄する。そして、プロセッサ110は、S140へ移行して、現行の印刷設定(すなわち、変更済の印刷設定)を用いて、コマンド生成処理を開始する。ユーザが印刷ボタンB45(図3(E))を操作した場合(図2:S160:Yes)、S190で、プロセッサ110は、出力処理を実行する。出力処理によって、対象印刷コマンドが、対象印刷装置に、出力される(詳細は、後述)。
At S160 (FIG. 2), the
対象印刷コマンドの出力(図2:S190)が完了した場合、プロセッサ110は、図2の処理を終了する。対象印刷装置としての複合機200(図1)は、受信した印刷コマンドに従って、対象画像を印刷する。本実施例では、プロセッサ210は、ヘッダデータを解析することによって、受信したコマンドが特定の種類の印刷コマンドであることと、印刷設定とを、特定する。そして、プロセッサ210は、受信したボディデータに含まれる画像データを用いて、プリンタ部400に対象画像を印刷させる。
When the output of the target print command (FIG. 2: S190) is completed, the
画像データを用いてプリンタ部400に画像を印刷させる印刷実行処理は、種々の処理であってよい。プロセッサ210は、例えば、印刷コマンドに含まれる画像データが圧縮されている場合、圧縮されたデータを伸張する。そして、プロセッサ210は、画像データの解像度変換処理と、解像度が変換された画像データの色変換処理と、色変換済の画像データを用いるハーフトーン処理と、を実行することによって、印刷データを生成する。解像度変換処理は、画像データの解像度を印刷用の予め決められた印刷解像度に変換する処理である。入力解像度が印刷解像度と同じである場合、解像度変換処理は、省略される。色変換処理は、各画素の色値を、変換前の入力色空間(例えば、RGB色空間)の色値から、印刷用の色空間である印刷色空間の色値に変換する処理である。印刷色空間は、プリンタ部400によって使用される色材に対応する色成分で表される色空間である(本実施例では、CMYK色空間)。ハーフトーン処理は、例えば、誤差拡散法や、ディザマトリクスを用いる方法など、種々の方法の処理であってよい。プロセッサ210は、ハーフトーン処理の結果を表すデータを用いて、印刷データを生成する。印刷データのデータ形式は、プリンタ部400によって解釈可能なデータ形式である。プロセッサ210は、印刷データを、プリンタ部400に供給する。プリンタ部400は、印刷データに従って、画像を印刷する。
The print execution process for causing the
A-3.コマンド生成処理:
図4は、コマンド生成処理の例を示すフローチャートである。S210では、プロセッサ110は、コマンドの種類を選択する。図5は、コマンドの種類を選択する処理の例を示すフローチャートである。本実施例では、印刷コマンドは、PWGラスタ形式の画像データ含むコマンドと、他の形式の画像データを含むコマンドと、から選択される。以下、他の形式の画像データを含むコマンドを、第1種印刷コマンドと呼び、PWGラスタ形式の画像データ含むコマンドを、第2種印刷コマンドと呼ぶ。第1種印刷コマンドに含まれる画像データを、第1種画像データと呼ぶ。第2種印刷コマンドに含まれる画像データを、第2種画像データとも呼ぶ。
A-3. Command generation process:
FIG. 4 is a flowchart illustrating an example of command generation processing. At S210,
S310では、プロセッサ110は、対象印刷装置が第2種印刷コマンド(すなわち、PWGラスタ)に対応しているか否かを判断する。対象印刷装置が第2種印刷コマンドに対応していない場合(S310:No)、プロセッサ110は、S370で第1種印刷コマンドを選択し、図5の処理を終了する。
At S310,
対象印刷装置が第2種印刷コマンドに対応している場合(S310:Yes)、S320で、プロセッサ110は、対象印刷装置との通信のインタフェースがUSBであるか否かを判断する。インタフェースがUSBとは異なる場合(S320:No)、プロセッサ110は、S370で第1種印刷コマンドを選択し、図5の処理を終了する。
If the target printing device supports the second type print command (S310: Yes), in S320 the
インタフェースがUSBである場合(S320:Yes)、S330で、プロセッサ110は、対象データ形式がビットマップ形式であるか否かを判断する。対象データ形式がビットマップ形式とは異なる場合(S330:No)、プロセッサ110は、S360で第2種印刷コマンドを選択し、図5の処理を終了する。
If the interface is USB (S320: Yes), in
対象データ形式がビットマップ形式である場合(S330:Yes)、S340で、プロセッサ110は、対象画像のサイズが第1基準サイズより小さいか否かを判断する。ここで、画像のサイズとしては、解像度(すなわち、ピクセル数)と相関を有する値が用いられる。本実施例では、画像のサイズとして、横方向の画素数と縦方向の画素数とが、用いられる。第1基準サイズは、第1横基準画素数と、第1縦基準画素数と、によって表される。そして、アスペクト比(横方向の画素数に対する縦方向の画素数の比率)に拘わらずに画像のサイズを比較する方法として、解像度の比較に相当する以下の方法が採用される。「対象画像の横方向の画素数が、第1横基準画素数より小さい」という横小条件と「対象画像の縦方向の画素数が、第1縦基準画素数より小さい」という縦小条件との両方が満たされる場合、対象画像のサイズは第1基準サイズより小さい。横小条件と縦小条件との少なくとも一方が満たされない場合、対象画像のサイズは第1基準サイズ以上である。また、横小条件と縦小条件との両方が満たされず、かつ、対象画像の横方向の画素数と縦方向の画素数との少なくとも一方が、第1基準サイズの対応する方向の画素数と同じである場合、対象画像のサイズは、第1基準サイズと同じである。
If the target data format is a bitmap format (S330: Yes), in
第1基準サイズは、入力解像度に対応するサイズである入力サイズ以下のサイズである。入力サイズは、用紙サイズに予め対応付けられた形状である参照形状(例えば、用紙サイズの用紙上の印刷可能な領域の形状)の画像の解像度が入力解像度と同じである場合のその画像のサイズである。本実施例では、用紙の形状は矩形であり、参照形状は矩形であり、対象画像の形状は矩形であることとしている。ここで、入力解像度は、例えば、600dpiであってよい。また、本実施例では、第1基準サイズは、入力サイズと同じであることとする。すなわち、第1基準サイズに対応する解像度は、入力解像度と同じである。 The first reference size is a size equal to or smaller than the input size, which is the size corresponding to the input resolution. The input size is the size of the reference shape (e.g., the shape of the printable area on a sheet of paper of the size of the paper), which is a shape pre-associated with the paper size, if the resolution of the image is the same as the input resolution. is. In this embodiment, the paper has a rectangular shape, the reference shape has a rectangular shape, and the target image has a rectangular shape. Here, the input resolution may be 600 dpi, for example. Also, in this embodiment, the first reference size is assumed to be the same as the input size. That is, the resolution corresponding to the first reference size is the same as the input resolution.
本実施例では、画像のサイズの大小関係と、解像度の大小関係とは、以下のように関連付けられている。ここで、対象画像の解像度として、用紙サイズの用紙上に最大のサイズで印刷する場合の解像度を採用する。対象画像の解像度が第1基準サイズに対応する解像度よりも高い場合、対象画像のサイズは第1基準サイズよりも大きいと判断される。対象画像の解像度が第1基準サイズに対応する解像度と同じである場合、対象画像のサイズは第1基準サイズと同じと判断される。対象画像の解像度が第1基準サイズに対応する解像度よりも低い場合、対象画像のサイズは第1基準サイズよりも小さいと判断される。後述する他の画像サイズの比較も、同様に行われる。 In the present embodiment, the size relationship of image size and the size relationship of resolution are associated as follows. Here, as the resolution of the target image, the resolution in the case of printing in the maximum size on the paper of the paper size is adopted. If the resolution of the target image is higher than the resolution corresponding to the first reference size, it is determined that the size of the target image is greater than the first reference size. If the resolution of the target image is the same as the resolution corresponding to the first reference size, the size of the target image is determined to be the same as the first reference size. If the resolution of the target image is lower than the resolution corresponding to the first reference size, the size of the target image is determined to be smaller than the first reference size. Other image size comparisons, which will be described later, are performed in a similar manner.
対象画像のサイズが第1基準サイズ以上である場合(S340:No)、プロセッサ110は、S370で第1種印刷コマンドを選択し、図5の処理を終了する。
If the size of the target image is equal to or larger than the first standard size (S340: No),
対象画像のサイズが第1基準サイズより小さい場合(S340:Yes)、S350で、プロセッサ110は、パラメータCpが、閾値Cth以下であるか否かを判断する。パラメータCpは、対象画像データであるビットマップデータの画素を、横方向と縦方向とに辿る場合に、色値が変化する回数である。本実施例では、パラメータCpは、複数の画素行のそれぞれにおける色値が変化する回数と、複数の画素列のそれぞれにおける色値が変化する回数と、の合計値である。同じ色値の複数の画素が連続する場合、パラメータCpは小さくなる。対象画像が複雑なオブジェクトを表す場合に、パラメータCpは大きくなる。このようにパラメータCpは、画像の複雑さを示す指標値である。パラメータCpが小さい場合、ランレングス圧縮による圧縮の効率は、良好である。
If the size of the target image is smaller than the first reference size (S340: Yes), in S350 the
プロセッサ110は、対象画像データを解析することによって、パラメータCpを算出する。そして、パラメータCpが閾値Cthを超える場合(S350:No)、プロセッサ110は、S370で第1種印刷コマンドを選択し、図5の処理を終了する。パラメータCpが閾値Cth以下である場合(S350:Yes)、プロセッサ110は、S360で第2種印刷コマンドを選択し、図5の処理を終了する。
The
以上により、図5の処理、すなわち、図4のS210が終了する。以下、図5の処理で選択された種類の印刷コマンドを、対象印刷コマンドと呼ぶ。 With the above, the process of FIG. 5, that is, S210 of FIG. 4 ends. The type of print command selected in the process of FIG. 5 is hereinafter referred to as a target print command.
図4のS220では、プロセッサ110は、S210で選択した印刷コマンドの種類を特定する。コマンドの種類が第1種印刷コマンドである場合、プロセッサ110は、S230で、第1種印刷コマンドの生成処理を実行し、図4の処理を終了する。コマンドの種類が第2種印刷コマンドである場合、プロセッサ110は、S240で、第2種印刷コマンドの生成処理を実行し、図4の処理を終了する。
At S220 of FIG. 4, the
図6は、第1種印刷コマンドの生成処理(図4:S230)の例を示すフローチャートである。S410では、プロセッサ110は、対象画像データを参照して、対象画像データのデータ形式を特定する。特定されたデータ形式がビットマップである場合、S440で、プロセッサ110は、対象画像のサイズを、入力解像度に対応する入力サイズに変更するサイズ変更処理を実行する。このような処理は、解像度変換処理とも呼ばれる。対象画像の解像度は、入力解像度に変換される。本実施例では、サイズ変更処理では、対象画像のアスペクト比は、維持される。また、入力解像度の対象画像の全体が、用紙サイズに対応付けられた上述の参照形状内に収まるように、サイズ変更処理が行われる。すなわち、サイズ変更処理の後では、対象画像の横方向の画素数と縦方向の画素数との少なくとも一方は、入力サイズの対応する方向の画素数と同じである。そして、対象画像の横方向の画素数と縦方向の画素数とは、いずれも、入力サイズの対応する方向の画素数以下である。なお、S440では、色値は、補間される(画像補間とも呼ぶ)。すなわち、サイズ変更後の対象画素の色値は、サイズ変更前の複数の画素のうち対象画素に近い複数の画素のそれぞれの色値を用いて、算出される(例えば、バイリニア法やバイキュービック法)。また、本実施例では、プロセッサ110は、サイズが変更された画像データを用いて、JPEG形式の画像データを生成する。そして、プロセッサ110は、S490へ移行する。
FIG. 6 is a flow chart showing an example of the first type print command generation processing (FIG. 4: S230). In S410, the
S410で特定されたデータ形式がオフィス形式である場合、S450で、プロセッサ110は、対象画像データを、ビットマップデータに変換する。本実施例では、プロセッサ110は、JPEG形式のデータを生成する。なお、S450では、アンチエイリアス処理が行われる。ただし、アンチエイリアス処理は省略されてもよい。また、データ形式の変換は、対象画像データのデータ形式に対応するアプリケーションプログラム(図示せず)を利用して、行われてもよい。
If the data format specified at S410 is the office format, at
S460では、プロセッサ110は、S450で生成されたビットマップデータの画像のサイズが入力サイズと異なる場合に、ビットマップデータの画像のサイズを入力サイズに変更するサイズ変更処理を実行する。S460のサイズ変更処理は、S440のサイズ変更処理と同様に行われる。例えば、色値は、補間される。そして、プロセッサ110は、S490へ移行する。ビットマップデータの画像のサイズが入力サイズと同じである場合、サイズ変更処理は省略される。
At S460, if the size of the bitmap data image generated at S450 is different from the input size, the
S410で特定されたデータ形式がPDF形式である場合、S470で、プロセッサ110は、対象画像データを、ビットマップデータに変換する。S470は、S450と同様に、行われる。本実施例では、JPEG形式のデータが、生成される。データ形式の変換は、PDF形式に対応するアプリケーションプログラム(図示せず)を利用して、行われてもよい。
If the data format identified at S410 is the PDF format, at
S480では、プロセッサ110は、S470で生成されたビットマップデータの画像のサイズが入力サイズと異なる場合に、ビットマップデータの画像のサイズを入力サイズに変更するサイズ変更処理を実行する。S480の処理は、S460の処理と同じである。S480の後、プロセッサ110は、S490へ移行する。
At S480, if the size of the bitmap data image generated at S470 is different from the input size, the
S490では、プロセッサ110は、S440、S450-S460、S470-S480のいずれかによって生成されたビットマップデータ(ここでは、JPEGデータ)である第1種画像データを用いて、第1種印刷コマンドを生成する。第1種印刷コマンドは、対象印刷装置によって解釈可能な形式のデータである。本実施例では、第1種印刷コマンドは、ヘッダデータとボディデータとを含んでいる。ヘッダデータは、このコマンドが第1種印刷コマンドであることを示す情報と、印刷設定を示す情報と、を含んでいる。ボディデータは、第1種画像データを含んでいる。プロセッサ110は、生成した第1種印刷コマンドのデータを、記憶装置115(例えば、揮発性記憶装置120と不揮発性記憶装置130のいずれか一方)に、一時的に格納する。第1種印刷コマンドの生成の完了に応じて、プロセッサ110は、図6の処理を終了する。
In S490,
図7は、第2種印刷コマンドの生成処理(図4:S240)の例を示すフローチャートである。S510では、プロセッサ110は、対象画像データを参照して、対象画像データのデータ形式を特定する。データ形式がビットマップである場合、S520で、プロセッサ110は、対象画像のサイズが第2基準サイズよりも大きいか否かを判断する。この判断は、図5のS340の判断と同様に行われる(第1基準サイズの代わりに第2基準サイズが用いられる)。第2基準サイズは、入力サイズよりも小さいサイズである。また、本実施例では、第2基準サイズは、第1基準サイズ(図5:S340)よりも小さいサイズである。第2基準サイズは、例えば、用紙サイズに対応する参照形状の画像の解像度が300dpiである場合のその画像のサイズであってよい。
FIG. 7 is a flow chart showing an example of the second type print command generation process (FIG. 4: S240). In S510, the
対象画像のサイズが第2基準サイズよりも大きい場合(S520:Yes)、S530で、プロセッサ110は、対象画像のサイズを第2基準サイズに変更するサイズ変更処理を実行する。サイズ変更処理は、図6のS440と同様に、行われる。ただし、入力サイズの代わりに第2基準サイズが用いられる。また、色値の補間を行わずに、サイズが変更される。すなわち、サイズ変更後の対象画素の色値は、サイズ変更前の複数の画素のうち対象画素に最も近い画素の色値と同じ色値に設定される。このサイズ変更によって、対象画像の解像度は、第2基準サイズに対応する解像度と同じになる。S530では、対象画像のサイズが小さくなる。そして、プロセッサ110は、S540へ移行する。対象画像のサイズが第2基準サイズ以下である場合(S520:No)、プロセッサ110は、S530をスキップして、S540へ移行する。
If the size of the target image is larger than the second reference size (S520: Yes), at
S540では、プロセッサ110は、対象画像のサイズを、入力解像度に対応する入力サイズに変更するサイズ変更処理を実行する。サイズ変更処理は、図6のS440と同様に、行われる。ただし、色値の補間は行われない。また、対象画像の解像度は、入力解像度に変換される。なお、本実施例では、対象画像のサイズが入力サイズよりも大きい場合には、S530で、対象画像のサイズが小さくなるので、S540において、対象画像のサイズは、入力サイズよりも小さい。従って、S540では、対象画像のサイズが大きくなる。
At S540, the
図8は、S540におけるサイズ変更処理の概略図である。左側の第1部分画像PI1は、サイズ変更処理の前の部分画像を示し、右側の第2部分画像PI2は、サイズ変更処理の後の同じ部分画像を示している。各部分画像PI1、PI2の実線の矩形PX1、PX2は、1個の画素を示している。各部分画像PI1、PI2の番号Rnは、行番号を示し、番号Cnは、列番号を示している。第1部分画像PI1は、2行3列の6個の画素PX1で構成され、第2部分画像PI2は、4行6列の24個の画素PX2で構成されている。このように、図8の例では、サイズ変更処理によって、横方向Dxの画素数と縦方向Dyの画素数とが、それぞれ、2倍に増えている。 FIG. 8 is a schematic diagram of the resizing process in S540. The first partial image PI1 on the left shows the partial image before resizing, and the second partial image PI2 on the right shows the same partial image after resizing. Solid-line rectangles PX1 and PX2 of the partial images PI1 and PI2 indicate one pixel. The number Rn of each partial image PI1, PI2 indicates the row number, and the number Cn indicates the column number. The first partial image PI1 is composed of 6 pixels PX1 of 2 rows and 3 columns, and the second partial image PI2 is composed of 24 pixels PX2 of 4 rows and 6 columns. Thus, in the example of FIG. 8, the number of pixels in the horizontal direction Dx and the number of pixels in the vertical direction Dy are doubled by the resizing process.
第1部分画像PI1に示された色値V1~V6は、6個の画素PX1のそれぞれの色値である。第2部分画像PI2に示された色値V1~V6は、24個の画素PX1のそれぞれの色値である。上述したように、S540のサイズ変更処理では、色値の補間は行われない。従って、サイズ変更後の対象画素の色値は、サイズ変更前の複数の画素のうち対象画素に最も近い画素の色値と同じ色値に設定される。例えば、第2部分画像PI2の画素PX21の色値は、第1部分画像PI1の画素PX11の色値と同じ色値に設定される。この結果、第2部分画像PI2に示されるように、サイズ変更後の画像では、同じ色値の複数の画素が、横方向Dxと縦方向Dyとに沿って連続して配置される。 The color values V1 to V6 shown in the first partial image PI1 are the color values of each of the six pixels PX1. The color values V1 to V6 shown in the second partial image PI2 are the color values of each of the 24 pixels PX1. As described above, the resizing process of S540 does not interpolate color values. Therefore, the color value of the target pixel after resizing is set to the same color value as the color value of the pixel closest to the target pixel among the plurality of pixels before resizing. For example, the color value of the pixel PX21 of the second partial image PI2 is set to the same color value as the color value of the pixel PX11 of the first partial image PI1. As a result, as shown in the second partial image PI2, in the resized image, a plurality of pixels with the same color value are arranged continuously along the horizontal direction Dx and the vertical direction Dy.
また、本実施例では、プロセッサ110は、S540で、サイズが変更された画像データを用いて、可逆圧縮されたビットマップデータであるPNG形式の画像データを生成する。そして、プロセッサ110は、S590へ移行する。
In this embodiment, the
S510で特定されたデータ形式がオフィス形式である場合、S550で、プロセッサ110は、対象画像データを、ビットマップデータに変換する。本実施例では、プロセッサ110は、可逆圧縮されたPNG形式のデータを生成する。なお、S550では、アンチエイリアス処理は、行われない。また、データ形式の変換は、対象画像データのデータ形式に対応するアプリケーションプログラム(図示せず)を利用して、行われてもよい。
If the data format specified at S510 is the office format, at
S560では、プロセッサ110は、S550で生成されたビットマップデータの画像のサイズが入力サイズと異なる場合に、ビットマップデータの画像のサイズを入力サイズに変更するサイズ変更処理を実行する。S560のサイズ変更処理は、S540のサイズ変更処理と同様に行われる。色値は、補間されない。対象画像の解像度は、入力解像度に変換される。そして、プロセッサ110は、S590へ移行する。ビットマップデータの画像のサイズが入力サイズと同じである場合、サイズ変更処理は省略される。
At S560, if the size of the bitmap data image generated at S550 is different from the input size, the
S510で特定されたデータ形式がPDF形式である場合、S570で、プロセッサ110は、対象画像データを、ビットマップデータに変換する。S570は、S550と同様に、行われる。本実施例では、可逆圧縮されたPNG形式のデータが、生成される。アンチエイリアス処理は、行われない。データ形式の変換は、PDF形式に対応するアプリケーションプログラム(図示せず)を利用して、行われてもよい。
If the data format identified at S510 is the PDF format, at
S580では、プロセッサ110は、S570で生成されたビットマップデータの画像のサイズが入力サイズと異なる場合に、ビットマップデータの画像のサイズを入力サイズに変更するサイズ変更処理を実行する。S580の処理は、S560の処理と同じである。S580の後、プロセッサ110は、S590へ移行する。
At S580, if the size of the bitmap data image generated at S570 is different from the input size, the
S590では、プロセッサ110は、第2種印刷コマンドのエンコーディング処理を実行する。図9は、第2種印刷コマンドのエンコーディング処理の例を示すフローチャートである。S610では、プロセッサ110は、プロセッサ110の論理プロセッサ(論理コアとも呼ばれる)の数を用いて、並列処理(スレッドとも呼ばれる)の数を決定する。本実施例では、プロセッサ110は、複数個の論理プロセッサを備え、2個以上のスレッドのそれぞれに論理プロセッサを割り当てて同時に処理することで全体の処理速度を向上する機能(マルチスレッド処理機能とも呼ぶ)を有する。複数個の論理プロセッサは、互いに異なる処理を並列して実行可能な演算部の例である。複数個の論理プロセッサは、複数個の物理コアによって実現されても良く、1個の物理コアが複数個の論理コアを提供することで実現されても良く、これらの組み合わせによって実現されても良い。1個の物理コアが複数個の論理コアを提供する技術としては、例えば、インテル(登録商標)のハイパースレッディングテクノロジが知られている。
In S590, the
論理プロセッサ数がL個(Lは1以上の整数)である場合、並列処理の数Mは、1以上、L以下の任意の数であってよい。数Mが多いほど、エンコーディング処理を高速化できる。例えば、並列処理の数Mは、Lと同じ、または、Lよりも小さい値(例えば、L-1)に決定されてよい。 When the number of logical processors is L (L is an integer equal to or greater than 1), the number M of parallel processes may be any number equal to or greater than 1 and equal to or less than L. The higher the number M, the faster the encoding process. For example, the number of parallel processes M may be determined to be equal to L or smaller than L (eg, L−1).
S620では、プロセッサ110は、複数の並列処理のための複数のデータを準備する。本実施例では、第2種印刷コマンドは、ヘッダデータとボディデータとを含んでいる。ヘッダデータの生成と、ボディデータの生成とは、並列に行われる。ヘッダデータは、このコマンドが第2種印刷コマンドであることを示す情報と、印刷設定を示す情報と、を含んでいる。ボディデータは、印刷対象の画像を表す第2種画像データを含んでいる。第2種画像データのデータ形式は、いわゆるPWGラスタ形式である。PWGラスタ形式の画像データは、パックビッツ圧縮と呼ばれる圧縮方法で、圧縮されている。本実施例では、対象画像に含まれる複数のバンド画像のそれぞれパックビッツ圧縮が、複数の並列処理によって行われる。
At S620, the
図10は、バンド画像の概略図である。図中には、対象画像OIが示されている。先端e1は、対象画像OIの最先に印刷されるべき端である。後端e2は、先端e1とは反対側の端である。縦方向Dyは、先端e1から後端e2へ向かう方向である。対象画像OIは、複数のバンド画像BI1~BI5を含んでいる。これらのバンド画像BI1~BI5は、それぞれ、横方向Dxに向かって延びる矩形状の部分画像である。複数のバンド画像BI1~BI5は、縦方向Dyに向かって並んでいる。 FIG. 10 is a schematic diagram of a band image. A target image OI is shown in the figure. The leading edge e1 is the edge to be printed first of the target image OI. The rear end e2 is the end opposite to the front end e1. A longitudinal direction Dy is a direction from the leading end e1 to the trailing end e2. The target image OI includes a plurality of band images BI1-BI5. Each of these band images BI1 to BI5 is a rectangular partial image extending in the horizontal direction Dx. A plurality of band images BI1 to BI5 are arranged in the vertical direction Dy.
図中の幅W1、W2は、バンド画像BI1~BI5のそれぞれの縦方向Dyの幅である。図示するように、先端e1を含む先端バンド画像BI1の幅W1は、他のバンド画像BI2~BI5の幅W2よりも、小さい。また、バンド画像BI1~BI5の間で、横方向Dxの長さは、同じである。従って、先端バンド画像BI1は、他のバンド画像BI2~BI5よりも、小さい。なお、本実施例では、先端バンド画像BI1の幅W1と、他のバンド画像の幅W2とは、予め決められている。 Widths W1 and W2 in the figure are widths in the vertical direction Dy of each of the band images BI1 to BI5. As shown, the width W1 of the leading edge band image BI1 including the leading edge e1 is smaller than the width W2 of the other band images BI2 to BI5. Moreover, the length of the horizontal direction Dx is the same among the band images BI1 to BI5. Therefore, the leading edge band image BI1 is smaller than the other band images BI2 to BI5. In this embodiment, the width W1 of the leading edge band image BI1 and the width W2 of the other band images are determined in advance.
図9のS620では、プロセッサ110は、図7のS520-S540、S550-S560、S570-S580のいずれかによって生成されたビットマップデータ(ここでは、PNGデータ)を用いて、複数のバンド画像BI1~BI5のそれぞれの非圧縮のビットマップデータである複数のバンドデータを生成する。また、プロセッサ110は、ヘッダデータの生成に要するデータ(例えば、印刷設定を示すデータ)を、生成する。
In S620 of FIG. 9,
S630では、プロセッサ110は、S620で準備した複数のデータを用いて、第2種印刷コマンドのエンコーディングのための複数の処理を、並行して実行する。本実施例では、プロセッサ110は、ヘッダデータを生成する処理を、最優先で実行する。また、プロセッサ110は、複数のバンド画像BI1~BI5(図10)のそれぞれのバンドデータのパックビッツ圧縮を、先端e1に近いほど高い優先順(すなわち、印刷すべき順)で、実行する。プロセッサ110は、生成したデータを、記憶装置115(例えば、揮発性記憶装置120と不揮発性記憶装置130のいずれか一方)に、一時的に格納する。
In S630, the
なお、図9の処理(すなわち、図7の処理)、ひいては、図4のコマンド生成処理は、図2のS140で開始される。そして、コマンド生成処理は、図2の処理とは並行して進行する。従って、対象画像の選択(図2:S130)の後、印刷ボタンB45(図3(E))が操作されるまでの時間内に、ヘッダデータの生成が完了し得、また、1以上のバンドデータの生成が完了し得る。 9 (that is, the process of FIG. 7) and the command generation process of FIG. 4 are started at S140 of FIG. Then, the command generation process proceeds in parallel with the process of FIG. Therefore, the generation of the header data can be completed within the time from the selection of the target image (FIG. 2: S130) to the operation of the print button B45 (FIG. 3(E)). Data generation can be completed.
A-4.出力処理:
図2のS190で実行される出力処理の詳細について説明する。図11は、出力処理の例を示すフローチャートである。図11の出力処理は、対象印刷コマンドが第2種印刷コマンドである場合の処理を示している。S710では、プロセッサ110は、ヘッダデータを対象印刷装置に出力する。ヘッダデータの生成が未完了である場合、プロセッサ110は、ヘッダデータの生成の完了を待つ。
A-4. Output processing:
Details of the output processing executed in S190 of FIG. 2 will be described. FIG. 11 is a flowchart illustrating an example of output processing. The output process of FIG. 11 shows the process when the target print command is the second type print command. At S710,
S720では、プロセッサ110は、圧縮済バンドデータが生成済であるか否かを判断する。記憶装置115に圧縮済バンドデータが格納されている場合(S720:Yes)、S730で、プロセッサ110は、圧縮済バンドデータを対象印刷装置へ出力する。
At S720,
プロセッサ110は、圧縮済バンドデータの出力を、印刷すべき順に、行う。図9のS630で説明したように、バンドデータの圧縮の優先順は、印刷すべき順である。さらに、最先に印刷されるべき先端e1(図10)を含む先端バンド画像BI1は、他のバンド画像BI2~BI5よりも、小さい。従って、先端バンド画像BI1の圧縮済バンドデータは、他のバンド画像BI2~BI5の圧縮済バンドデータよりも、先に生成される。この結果、図11のS730では、プロセッサ110は、先端バンド画像BI1の圧縮済バンドデータを、速やかに、対象印刷装置に出力できる。
本実施例では、複数のバンド画像の複数のバンドデータは、互いに独立である。すなわち、対象バンド画像の複数の画素のそれぞれの色値は、対象バンド画像よりも後端e2側のバンド画像のバンドデータを用いずに、特定可能である。例えば、先端バンド画像BI1の複数の画素のそれぞれの色値は、先端バンド画像BI1よりも後端e2側のバンド画像BI2~BI5のバンドデータを用いずに、先端バンド画像BI1のバンドデータを用いて、特定可能である。このように、対象印刷装置は、全てのバンド画像の圧縮済バンドデータの受信を完了するよりも前に、受信済の圧縮済バンドデータを用いて、受信済の圧縮済バンドデータのバンド画像を印刷できる。 In this embodiment, the multiple band data of the multiple band images are independent of each other. That is, the color value of each of the plurality of pixels of the target band image can be specified without using the band data of the band image on the trailing edge e2 side of the target band image. For example, for the color values of the plurality of pixels of the leading edge band image BI1, the band data of the leading edge band image BI1 is used instead of the band data of the band images BI2 to BI5 on the trailing edge e2 side of the leading edge band image BI1. is identifiable. In this way, the target printing device uses the received compressed band data to print the band images of the received compressed band data before completing the reception of the compressed band data of all band images. can be printed.
なお、対象印刷装置がネットワークに接続されている場合、プロセッサ110は、ネットワークを介して、種々のデータ(例えば、ヘッダデータ、圧縮済バンドデータなど)を対象印刷装置へ出力する。対象印刷装置が端末装置100に直接に接続されている場合、プロセッサ110は、種々のデータを、直接的に、対象印刷装置へ出力する。
If the target printing device is connected to a network,
図11のS740では、プロセッサ110は、全てのバンド画像の圧縮済バンドデータを対象印刷装置に出力したか否かを判断する。未処理のバンド画像が残っている場合(S740:No)、プロセッサ110は、S720へ移行する。そして、プロセッサ110は、圧縮済バンドデータを、印刷すべき順番に、対象印刷装置へ出力する。全てのバンド画像の圧縮済バンドデータの出力が完了した場合(S740:Yes)、プロセッサ110は、図11の処理(ひいては、図2のS190)を、終了する。
In S740 of FIG. 11, the
対象印刷コマンドが第1種印刷コマンドである場合、プロセッサ110は、図11の処理と同様に、ヘッダデータと画像データとを対象印刷装置に出力する。プロセッサ110は、まず、ヘッダデータを対象印刷装置に出力する。続いて、プロセッサ110は、ビットマップデータを、対象印刷装置に出力する。第1種印刷コマンドのビットマップデータが、第2種印刷コマンドのビットマップデータと同様に、互いに独立な複数のバンドデータで構成されている場合、プロセッサ110は、複数のバンドデータの出力を、印刷すべき順に行う。
If the target print command is the first type print command, the
A-5.作用効果:
以上のように、端末装置100のプロセッサ110は、図2のS135で、対象画像データを取得する。プロセッサ110は、S140でコマンド生成処理(図4)を開始し、第1種印刷コマンドと第2種印刷コマンドとを含む2種類の印刷コマンドのうち、印刷実行部(例えば、複合機200)に出力すべき対象印刷コマンドを、生成する。プロセッサ110は、S190で図11の出力処理を実行し、対象印刷コマンドを対象印刷装置へ出力する。ここで、図6に示すように、コマンド生成処理(図4)によって実現される第1種印刷コマンドの生成処理は、対象画像データを用いて、画像補間を含む第1サイズ変更処理(S440、S460、S480)を実行することによって、第1種画像データを含む第1種印刷コマンドを生成する(S490)。
A-5. Action effect:
As described above, the
また、本実施例では、コマンド生成処理(図4)によって実現される第2種印刷コマンドの生成処理(図7)は、第2サイズ変更処理(S530、S540、S560、S580)を含んでいる。第2サイズ変更処理は、対象画像データを用いて、画像補間を含まないサイズ変更処理を実行することによって、対象画像を表すサイズ変更済画像データを生成する処理である。また、第2種印刷コマンドの生成処理は、S590の処理、すなわち、図9の処理を含んでいる。図9の処理は、サイズ変更済画像データをランレングス圧縮の例であるパックビッツ圧縮することによって、第2種画像データを含む第2種印刷コマンドを生成する。 In this embodiment, the second type print command generation processing (FIG. 7) realized by the command generation processing (FIG. 4) includes the second size change processing (S530, S540, S560, S580). . The second resizing process is a process of generating resized image data representing the target image by performing resizing processing that does not include image interpolation using the target image data. Also, the process of generating the second type print command includes the process of S590, that is, the process of FIG. The process of FIG. 9 generates a second-type print command including second-type image data by performing PackBits compression, which is an example of run-length compression, on the resized image data.
このように、第1種印刷コマンドに含まれる第1種画像データが、画像補間を含むサイズ変更処理を実行することによって生成されるので、第1種印刷コマンドが対象印刷コマンドとして選択される場合には、高画質の印刷を実現できる。また、第2種印刷コマンドに含まれる第2種画像データは、画像補間を含まない第2サイズ変更処理と、ランレングス圧縮の例であるパックビッツ圧縮と、を実行することによって生成される。従って、対象印刷コマンドとして第2種印刷コマンドが選択される場合には、データの圧縮効率を向上させ、対象印刷装置に出力される印刷コマンドのデータサイズを小さくできる。それにより、印刷処理速度向上につながる印刷コマンドを複合機200に出力できる。例えば、第2種印刷コマンドのデータサイズが小さい場合には、第2種印刷コマンドのデータサイズが大きい場合と比べて、対象印刷装置による第2種印刷コマンドの受信に要する時間が短縮される。従って、端末装置100が第2種印刷コマンドを出力してから対象印刷装置による印刷が完了するまでの印刷の処理に要する時間が、短縮される。
In this way, since the first-type image data included in the first-type print command is generated by executing the size change process including image interpolation, when the first-type print command is selected as the target print command can achieve high-quality printing. The second-type image data included in the second-type print command is generated by executing a second resizing process that does not include image interpolation and packbits compression, which is an example of run-length compression. Therefore, when the second type print command is selected as the target print command, the data compression efficiency can be improved and the data size of the print command output to the target printer can be reduced. As a result, it is possible to output a print command to the
また、図2のS120では、プロセッサ110は、対象印刷装置の能力情報を取得する。そして、図2のS140で実行される図4のS210の処理(すなわち、図5の処理)では、プロセッサ110は、能力情報を用いて、複数種類の印刷コマンドから対象印刷コマンドを選択する。従って、対象印刷装置の能力に適した印刷を実現できる。
Also, in S120 of FIG. 2, the
また、図2のS120で説明したように、能力情報は、入力解像度に関する情報を含んでいる。そして、本実施例では、図5のS340の第1基準サイズは、入力解像度に基づく入力サイズと同じである。従って、図5の処理では、プロセッサ110は、対象画像データがビットマップデータであり(S330:Yes)、対象画像データのピクセル数と相関を有するサイズが入力解像度に基づく入力サイズよりも小さい(S340:Yes)ことを含む条件が満たされる場合に、対象印刷コマンドとして第2種印刷コマンドを選択する(S360)。そして、プロセッサ110は、第2種印刷コマンドの生成処理(図7)のS540では、対象画像のサイズを入力サイズに変換する拡大処理を実行することによって、サイズ変更済画像データを生成する。このように、対象画像のサイズが入力サイズよりも小さい場合に(図5:S340:Yes)、対象画像のサイズを入力解像度に基づく入力サイズに変換する拡大処理が実行されるので(図7:S540)、パックビッツ圧縮による圧縮の効率を向上できる。
Also, as described in S120 of FIG. 2, the capability information includes information on input resolution. In this embodiment, the first reference size in S340 of FIG. 5 is the same as the input size based on the input resolution. Therefore, in the processing of FIG. 5, the
また、図5に示すように、第2種印刷コマンド(PWGラスタ)が選択される条件は、以下の条件を含んでいる。
(条件1)対象印刷装置が第2種印刷コマンドに対応している(S310:Yes)
この条件1により、第2種印刷コマンドに対応していない印刷装置に誤って第2種印刷コマンドが出力されることが、抑制される。
Further, as shown in FIG. 5, the conditions for selecting the second type print command (PWG raster) include the following conditions.
(Condition 1) The target printing device supports
(条件2)対象印刷装置との通信のインタフェースがUSBである(S320:Yes)
パックビッツ圧縮などのランレングス圧縮は、他の種類の圧縮(例えば、JPEG圧縮などの非可逆圧縮)と比べて、圧縮済のデータのサイズが大きくなり易い。すなわち、第2種印刷コマンドのデータサイズは、第1種印刷コマンドのデータサイズと比べて、大きくなりやすい。対象印刷装置との通信のインタフェースがUSBではない場合、通常は、対象印刷装置は、複数の装置によって共用されるネットワーク(例えば、LAN(Local Area Network)、インターネットなど)に接続されている。従って、第2種印刷コマンドの出力完了に要する時間が、長くなり得る。また、第2種印刷コマンドの出力に起因する通信負荷の増大が、他の通信装置の通信に影響を与え得る。対象印刷装置との通信のインタフェースがUSBである場合、通常は、対象印刷装置は、端末装置100のみに接続されている。従って、第2種印刷コマンドの出力を、短時間で、完了できる。また、第2種印刷コマンドの出力が他の通信装置の通信に影響を及ぼすことが、抑制される。
(Condition 2) The interface for communication with the target printing device is USB (S320: Yes)
Run-length compression, such as Packbits compression, tends to result in larger compressed data sizes than other types of compression (eg, lossy compression such as JPEG compression). That is, the data size of the second type print command tends to be larger than the data size of the first type print command. If the interface for communication with the target printing device is not USB, the target printing device is usually connected to a network shared by a plurality of devices (for example, LAN (Local Area Network), Internet, etc.). Therefore, the time required to complete the output of the
(条件3)対象画像データがビットマップデータであり(S330:Yes)、かつ、対象画像のサイズは、第1基準サイズより小さい(S340:Yes)
図7のS520~S540で説明したように、対象画像のサイズが第1基準サイズ(本実施例では、入力サイズと同じ)よりも小さい場合には、S540で、対象画像のサイズが、補間せずに、拡大される。この結果、パックビッツ圧縮による圧縮の効率を向上できる。このように、条件3により、第2種印刷コマンドのデータサイズを抑制できる。
(Condition 3) The target image data is bitmap data (S330: Yes), and the size of the target image is smaller than the first standard size (S340: Yes)
As described in S520 to S540 of FIG. 7, if the size of the target image is smaller than the first reference size (the same as the input size in this embodiment), then in S540 the size of the target image is reduced to the size that cannot be interpolated. is enlarged without As a result, the efficiency of compression by PackBits compression can be improved. Thus,
(条件4)対象画像データがビットマップデータであり(S330:Yes)、かつ、画像の複雑さを示す指標値(パラメータCp)が、閾値以下である(S350:Yes)
上述したように、パラメータCpが小さい場合、パックビッツ圧縮による圧縮の効率は、良好である。条件4により、第2種印刷コマンドのデータサイズを抑制できる。
(Condition 4) The target image data is bitmap data (S330: Yes), and the index value (parameter Cp) indicating the complexity of the image is equal to or less than the threshold (S350: Yes)
As mentioned above, when the parameter Cp is small, the efficiency of compression by PackBits compression is good.
また、第2種印刷コマンドの生成処理(図7)では、対象画像データがドキュメントデータである場合(本実施例では、オフィス、または、PDF)、プロセッサ110は、S550、S570で、対象画像データを、可逆圧縮された対象ビットマップデータであるPNGデータに変換する。そして、プロセッサ110は、S590(具体的には、図9のS630)で、対象ビットマップデータと、対象ビットマップデータに第2サイズ変更処理(図7:S560、S580)を実行して得られる画像データと、のいずれかをパックビッツ圧縮することによって、第2種印刷コマンドに含まれる第2種画像データを生成する。画像データの非可逆圧縮は、伸張された画像データの画像中にノイズを発生させ得る。本実施例では、対象画像データは、可逆圧縮された対象ビットマップデータであるPNGデータに変換される。従って、対象ビットマップデータに含まれるノイズが少ないので、パックビッツ圧縮による圧縮の効率を向上できる。
In the process of generating the second type print command (FIG. 7), if the target image data is document data (office or PDF in this embodiment), the
また、第2サイズ変更処理(図7:S560、S580)では、色値の補間を行わずに、画像のサイズが変更される。従って、サイズ変更に起因するノイズは、抑制される。この結果、対象ビットマップデータに含まれるノイズが少ないので、パックビッツ圧縮による圧縮の効率を向上できる。 Also, in the second size change process (FIG. 7: S560, S580), the size of the image is changed without interpolating the color values. Therefore, noise due to resizing is suppressed. As a result, the noise contained in the target bitmap data is small, so the efficiency of compression by PackBits compression can be improved.
また、図7のS520、S530で説明したように、プロセッサ110は、対象画像データがビットマップデータであり、対象画像データのピクセル数と相関を有するサイズが第2基準サイズよりも大きい場合に(S520:Yes)、S530で、対象画像のサイズを第2基準サイズに縮小する。そして、プロセッサ110は、S540で、縮小処理によって得られる画像のサイズを印刷実行部が受け付ける画像データの解像度である入力解像度に基づく入力サイズに拡大する。このように、対象画像のサイズが第2基準サイズよりも大きい場合、プロセッサ110は、対象画像を一旦は縮小し、そして、縮小済の対象画像を、色値を補間せずに拡大するので、サイズ変更済の対象画像において、同じ色値の複数の画素が連続することが促進される。この結果、パックビッツ圧縮による圧縮の効率を向上できる。
Also, as described in S520 and S530 of FIG. 7, the
また、図9で説明したように、プロセッサ110は、プロセッサ110が複数の論理プロセッサを備える場合に、第2種印刷コマンドを生成する処理に含まれる複数の処理を、複数の論理プロセッサに並列して実行させる。従って、第2種印刷コマンドの生成に要する時間を、短縮できる。
Further, as described with reference to FIG. 9, when the
また、図9のS630、図10で説明したように、プロセッサ110は、第2種画像データに含まれる複数のバンドデータであって対象画像OIに含まれる複数のバンド画像BI1~BI5に対応する複数のバンドデータのうちの少なくとも一部の複数のバンドデータを生成する処理を、複数の論理プロセッサに並列して実行させる。例えば、S610で決定された並列処理の数が3である場合、5個のバンド画像BI1~BI5に対応する5個のバンドデータのうち、3個のバンドデータが、並列して処理される。そして、図10で説明したように、複数のバンド画像BI1~BI5のうちの対象画像OIの最先に印刷されるべき先端e1を含む先端バンド画像BI1のサイズは、他の1以上のバンド画像BI2~BI5のそれぞれのサイズのうちの最大サイズよりも、小さい。従って、プロセッサ110は、先端バンド画像BI1の圧縮済のバンドデータを、速やかに生成できる。
In addition, as described in S630 of FIG. 9 and FIG. 10, the
さらに、図11で説明したように、プロセッサ110は、先端バンド画像BI1(図10)のバンドデータである先端バンドデータを生成する処理が完了した場合には(S720:Yes)、他の1以上のバンド画像BI2~BI5のうちの少なくとも1つのバンド画像のバンドデータを生成する処理が完了していない場合であっても、先端バンドデータを対象印刷装置に出力する(S730)。従って、対象印刷装置は、印刷を速やかに開始できる。
Furthermore, as described with reference to FIG. 11, when the process of generating leading edge band data, which is the band data of the leading edge band image BI1 (FIG. 10), has been completed (S720: Yes), the
B.第2実施例:
第2実施例は、第1実施例における図2の印刷処理とは、S140で開始されるコマンド生成処理およびS190の出力処理が異なる。以下、第1実施例とは異なる処理について説明する。
B. Second embodiment:
The second embodiment differs from the printing process of FIG. 2 in the first embodiment in the command generation process started at S140 and the output process at S190. Processing different from that of the first embodiment will be described below.
第1実施例では、図4のS210にてコマンドの種類を選択し、選択されたコマンドの種類に応じて印刷コマンドを生成する。一方、第2実施例では、複数の印刷コマンド(すなわち第1種印刷コマンドおよび第2種印刷コマンド)をそれぞれ生成する。すなわち、プロセッサ110は、図4のS230の処理と図4のS240の処理とを並行して実行する。プロセッサ110が複数個の論理プロセッサを備える場合、プロセッサ110は、S230とS240とのそれぞれに論理プロセッサを割り当てて、S230とS240とを同時に実行してよい。また、プロセッサ110が1つの論理プロセッサを備える場合、プロセッサ110は、S230とS240とを少しずつ交互に進行してよい。以上により、対象画像の選択(図2:S130)の後、印刷ボタンB45(図3(E))が操作されるまでの時間内に、第1種印刷コマンドの生成と第2種印刷コマンドの生成とのそれぞれが、進行する。
In the first embodiment, a command type is selected in S210 of FIG. 4, and a print command is generated according to the selected command type. On the other hand, in the second embodiment, a plurality of print commands (that is, a first type print command and a second type print command) are generated respectively. That is, the
印刷ボタンB45(図3(E))が操作される場合(図2:S160:Yes)、図2のS190で、図12の出力処理が実行される。S805は、図5のS310と同じである。対象印刷装置が第2種印刷コマンドに対応していない場合(S805:No)、プロセッサ110は、S830で、第1種印刷コマンドを対象印刷装置へ出力する。S830は、第1実施例における対象印刷コマンドが第1種印刷コマンドである場合の出力処理と同じであってよい。すなわち、プロセッサ110は、ヘッダデータを対象印刷装置に出力し、続いて、ビットマップデータを、対象印刷装置に出力する。そして、プロセッサ110は、図12の処理を終了する。
When the print button B45 (FIG. 3E) is operated (FIG. 2: S160: Yes), the output process of FIG. 12 is executed in S190 of FIG. S805 is the same as S310 in FIG. If the target printing device does not support the second type print command (S805: No), the
対象印刷装置が第2種印刷コマンドに対応している場合(S805:Yes)、S810で、プロセッサ110は、第2種印刷コマンドのデータのうち生成済の部分のデータサイズが、基準データサイズ以下であるか否かを判断する。本実施例では、基準データサイズは、予め決められている。
If the target printing device supports the second type print command (S805: Yes), in S810 the
生成済の部分のデータサイズが基準データサイズ以下である場合(S810:Yes)、プロセッサ110は、S820で第2種印刷コマンドのデータを対象印刷装置に出力し、図12の処理を終了する。S820の処理は、図11の処理と同じであってよい。すなわち、プロセッサ110は、印刷すべき順に、圧縮済のバンドデータを対象印刷装置に出力してよい。
If the data size of the generated portion is equal to or smaller than the reference data size (S810: Yes), the
生成済の部分のデータサイズが基準データサイズを超える場合(S810:No)、プロセッサ110は、S830で第1種印刷コマンドのデータを対象印刷装置に出力し、図12の処理を終了する。
If the data size of the generated portion exceeds the reference data size (S810: No), the
図12の出力処理、すなわち、図2のS190の終了によって、図2の印刷処理は、終了する。 The printing process in FIG. 2 ends when the output process in FIG. 12, that is, S190 in FIG. 2 ends.
以上のように、図2のS160では、プロセッサ110は、対象画像を対象印刷装置に印刷させる指示を受け付ける。プロセッサ110は、指示が受け付けられる前に(S160:No)、S150で、対象画像を表示部140に表示させる。そして、プロセッサ110は、指示が受け付けられる前に(S160:No)、第2種印刷コマンドを生成する処理を、開始する。従って、指示が受け付けられてから、対象印刷コマンドである第2種印刷コマンドが対象印刷装置に出力されるまでの時間を短縮できる。
As described above, in S160 of FIG. 2, the
また、図12のS810で説明したように、プロセッサ110は、第2種印刷コマンドのうちの指示が受け付けられる前に生成済の部分のデータサイズが基準データサイズを超える場合に(S810:No)、第1種印刷コマンドを対象印刷装置に出力する(S830)。従って、過度に大きいサイズの第2種印刷コマンドが出力されることを抑制できる。
Also, as described in S810 of FIG. 12, the
なお、第2実施例で説明したコマンド生成処理において、プロセッサ110は、まず、図5のS310と同様に、印刷装置が第2種印刷コマンドに対応しているかを判断し、対応していなければ、第2種印刷コマンドを生成せず、第1種印刷コマンドのみを生成してもよい。
Note that in the command generation process described in the second embodiment, the
C.変形例:
(1)第2種印刷コマンドの生成処理は、図7等で説明した処理に代えて、他の種々の処理であってよい。例えば、S530では、対象画像のサイズは、第2基準サイズよりも小さいサイズに変更されてよい(例えば、第2基準サイズの解像度(例えば、300dpi)の半分の解像度(150dpi)に対応するサイズ)。また、S530のサイズ変更処理では、色値が補間されてもよい。この場合も、S540では、色値を補間せずにサイズが拡大されるので、パックビッツ圧縮による圧縮の効率を向上できる。また、S520、S530、S540に代えて、S560、S580と同様に画像のサイズを入力サイズに変更するサイズ変更処理が実行されてよい。この場合、対象画像の解像度が入力解像度よりも高い場合には、色値を補間せずに画像が縮小される。サイズ変更前の対象画像が、同じ色値の連続する複数の画素を含む場合、サイズ変更後の対象画像も、同じ色値の連続する複数の画素を含み得るので、パックビッツ圧縮による圧縮の効率を向上できる。S550、S570では、対象画像データは、非圧縮のビットマップデータに変換されてよい。S550、S570では、対象画像データは、非可逆圧縮のビットマップデータに変換されてよい。
C. Variant:
(1) The process of generating the second type print command may be various other processes instead of the process described with reference to FIG. 7 and the like. For example, in S530, the size of the target image may be changed to a size smaller than the second reference size (eg, a size corresponding to half the resolution (eg, 300 dpi) of the second reference size (150 dpi)). . Also, in the resizing process of S530, color values may be interpolated. Also in this case, in S540, the size is expanded without interpolating the color values, so the efficiency of compression by PackBits compression can be improved. Also, instead of S520, S530, and S540, resizing processing for changing the size of the image to the input size may be performed in the same manner as in S560 and S580. In this case, if the resolution of the target image is higher than the input resolution, the image is reduced without interpolating the color values. If the target image before resizing contains multiple consecutive pixels with the same color value, the target image after resizing may also contain multiple consecutive pixels with the same color value. can be improved. At S550, S570, the target image data may be converted to uncompressed bitmap data. In S550 and S570, the target image data may be converted into lossy-compressed bitmap data.
また、図7のS520、S530は、省略されてもよい。第2種印刷コマンドを出力するための条件が、図5のS340の条件(対象画像のサイズが第1基準サイズより小さい、すなわち、対象画像のサイズが入力サイズより小さい)を含む場合、図5のS540では、色値を補間せずに対象画像のサイズを拡大するサイズ変更処理が行われる。従って、パックビッツ圧縮による圧縮の効率を向上できる。図7のS520、S530を省略する代わりに、図5のS340が省略されてもよい。この場合、対象画像のサイズが第2基準サイズより大きい場合、すなわち、対象画像のサイズが入力サイズ以上である場合(S520:Yes)、S530で対象画像のサイズが入力サイズよりも小さい第2基準サイズに縮小される。この結果、S540で、対象画像のサイズを適切に拡大できる。 Also, S520 and S530 in FIG. 7 may be omitted. If the condition for outputting the second type print command includes the condition of S340 in FIG. 5 (the size of the target image is smaller than the first standard size, that is, the size of the target image is smaller than the input size) In S540, resizing processing is performed to enlarge the size of the target image without interpolating the color values. Therefore, the efficiency of compression by PackBits compression can be improved. Instead of omitting S520 and S530 of FIG. 7, S340 of FIG. 5 may be omitted. In this case, if the size of the target image is larger than the second reference size, that is, if the size of the target image is equal to or larger than the input size (S520: Yes), the size of the target image is smaller than the input size in S530. reduced in size. As a result, the size of the target image can be appropriately enlarged in S540.
(2)第2種印刷コマンドに含まれる第2種画像データのデータ形式は、パックビッツ圧縮によって圧縮されたビットマップ形式に代えて、他の種々のランレングス圧縮によって圧縮されたビットマップ形式であってよい。プロセッサ110は、図7のS590(例えば、図9のS630)で、予め決められた圧縮方法によって、画像データを圧縮してよい。
(2) The data format of the second type image data included in the second type print command is a bitmap format compressed by various other run-length compression instead of a bitmap format compressed by packbits compression. It's okay.
(3)対象画像に含まれる複数のバンド画像の構成は、図10のバンド画像BI1~BI5の構成に代えて、他の種々の構成であってよい。例えば、先端バンド画像BI1以外の複数のバンド画像の間で、幅が異なっていてもよい。また、1つの対象画像に含まれるバンド画像の総数は、2以上の任意の数であってよい。また、各バンド画像の幅は、用紙サイズに応じて、決定されてよい。例えば、用紙サイズが大きいほど、バンド画像の幅が大きな幅に決定されてよい。いずれの場合も、バンド画像の形状は、対象画像の最先に印刷されるべき先端から後端に向かう方向に垂直な方向に延びる矩形状の画像であってよい。例えば、図10の例では、各バンド画像BI1~BI5は、先端e1から後端e2へ向かう縦方向Dyに垂直な横方向Dxに延びる矩形状の画像である。そして、対象画像の先端を含む先端バンド画像のサイズ(具体的には、総画素数)は、先端バンド画像以外の他の1以上のバンド画像のそれぞれのサイズのうちの最大サイズよりも小さいことが、好ましい。さらに、先端バンド画像は、対象画像に含まれる複数のバンド画像のうちの最小サイズのバンド画像であることが、好ましい。ただし、複数のバンド画像の間で、サイズが同じであってよい。 (3) The configuration of the plurality of band images included in the target image may be various other configurations instead of the configuration of the band images BI1 to BI5 in FIG. For example, the widths may differ among a plurality of band images other than the leading edge band image BI1. Also, the total number of band images included in one target image may be any number equal to or greater than two. Also, the width of each band image may be determined according to the paper size. For example, the larger the paper size, the larger the width of the band image may be determined. In either case, the shape of the band image may be a rectangular image extending in a direction perpendicular to the direction from the leading edge to the trailing edge of the target image to be printed first. For example, in the example of FIG. 10, each of the band images BI1 to BI5 is a rectangular image extending in the horizontal direction Dx perpendicular to the vertical direction Dy from the leading edge e1 to the trailing edge e2. The size of the leading edge band image including the leading edge of the target image (specifically, the total number of pixels) is smaller than the maximum size among the sizes of one or more other band images other than the leading edge band image. is preferred. Furthermore, it is preferable that the leading edge band image is the smallest size band image among the plurality of band images included in the target image. However, the size may be the same among a plurality of band images.
(4)図9の実施例では、第2種印刷コマンドのヘッダデータを生成する処理と、複数のバンドデータをパックビッツ圧縮する処理とが、並列に行われる。ここで、並列に行われる処理は、他の種々の処理であってよい。例えば、プロセッサ110は、対象画像を複数のバンド画像に区分せずに、ヘッダデータの生成と画像データのパックビッツ圧縮とを、並列に実行してよい。また、対象画像データが複数頁の画像を表す場合、複数頁の画像データのパックビッツ圧縮が、並列に行われてよい。一般的には、第2種印刷コマンドを生成する処理に含まれる任意の複数の処理が、並列に行われてよい。ただし、第2種印刷コマンドは、並列処理を用いずに、生成されてよい。例えば、プロセッサ110は、ヘッダデータ、ボディデータの順に、第2種印刷コマンドに含まれるデータを生成してよい。
(4) In the embodiment of FIG. 9, the process of generating the header data of the
(5)第1種印刷コマンドに含まれる第1種画像データのデータ形式は、JPEG形式に代えて、ランレングス圧縮されたデータ形式とは異なる他の任意の形式であってよい。例えば、HEIF(High Efficiency Image File Format)が採用されてよい。
(5) The data format of the
(6)対象印刷装置に出力すべき印刷コマンドの種類を選択する方法は、種々の方法であってよい。例えば、プロセッサ110は、印刷コマンドの種類の選択に利用される能力情報として、ユーザによる操作部150の操作によって入力された能力情報を利用してよい。この場合、図2のS120では、プロセッサ110は、操作部150の操作によって入力された情報を参照することによって、能力情報を取得する。また、プロセッサ110は、能力情報を用いずに、印刷コマンドの種類を選択してよい。
(6) Various methods may be used to select the type of print command to be output to the target printing device. For example, the
第2種印刷コマンドを選択するための条件は、図5で説明した条件に代えて、他の任意の条件であってよい。図5のS340の第1基準サイズは、入力サイズよりも小さいサイズであってよい。例えば、第1基準サイズは、入力解像度よりも粗い解像度(例えば、450dpi)に対応するサイズであってよい。S350のパラメータCpは、画像の複雑さを示す任意の指標値であってよい。例えば、パラメータCpは、対象画像に含まれるエッジ画素の総数であってよい。エッジ画素は、公知のエッジ抽出フィルタ(例えば、ソーベルフィルタ)を用いて、検出可能である。また、図5のS310以外の条件(S320、S330、S340、S350)のうち任意の条件が、省略されてよい。 The condition for selecting the second type print command may be any other condition instead of the condition described with reference to FIG. The first reference size in S340 of FIG. 5 may be a size smaller than the input size. For example, the first reference size may be a size corresponding to a coarser resolution (eg, 450 dpi) than the input resolution. The parameter Cp of S350 may be any index value indicative of image complexity. For example, the parameter Cp may be the total number of edge pixels included in the target image. Edge pixels can be detected using a known edge extraction filter (eg, Sobel filter). Also, any of the conditions (S320, S330, S340, S350) other than S310 in FIG. 5 may be omitted.
また、プロセッサ110は、ユーザの指示に応じて、印刷コマンドの種類を選択してよい。例えば、印刷設定が、「画質優先」と「速度優先」とを含む複数のモードから選択される印刷モードを含む場合がある。ここで、プロセッサ110は、「画質優先」が選択される場合には第1種印刷コマンドを選択し、「速度優先」が選択される場合には第2種印刷コマンドを選択してよい。
Also, the
(7)コマンド生成処理は、上記実施例の処理に代えて、他の種々の処理であってよい。例えば、第2実施例で、対象印刷装置が第2種印刷コマンドに対応している場合、プロセッサ110は、第1種印刷コマンドの生成処理を実行せずに、第2種印刷コマンドの生成処理を実行してよい。そして、図12の出力処理において、データサイズが基準データサイズを超える場合(S810:No)、プロセッサ110は、第1種印刷コマンドを生成する処理を開始してよい。また、S810において、基準データサイズと比較されるデータサイズは、第2種印刷コマンドのデータのうち生成済の部分のデータサイズに代えて、第2種印刷コマンドのうちの種々の部分のデータサイズであってよい。例えば、完成した第2種印刷コマンドのデータの全体のサイズが、基準データサイズ以下である場合に、S810の判断結果がYesであってよい。一般的には、第2種印刷コマンドのうちの対象画像を対象印刷装置に印刷させる指示が受け付けられる前に生成済の部分を含む特定の部分のデータサイズが基準データサイズと比較されてよい。
(7) The command generation process may be various other processes instead of the processes in the above embodiments. For example, in the second embodiment, if the target printing device supports
(8)利用可能な印刷コマンドの種類の数Kは、3以上であってよい。一般的には、印刷処理において、プロセッサ110は、K種類(Kは2以上の整数)の印刷コマンドのうち、対象印刷コマンドを含む少なくとも1種の印刷コマンドを生成してよい。
(8) The number K of available print command types may be 3 or more. Generally, in print processing, the
(9)印刷処理は、図2で説明した処理に代えて、他の種々の処理であってよい。例えば、S140は、S160の判断結果がYesである場合に、実行されてよい。このように、プロセッサ110は、コマンド生成処理を、対象画像を対象印刷装置に印刷させる指示を受け付けた後に、開始してよい。また、対象画像のプレビュー(S150)は、省略されてもよい。また、ユーザが変更可能な印刷設定は、図3(E)等で説明した項目に限らず、任意の項目であってよい。例えば、印刷設定は、用紙上の対象画像の印刷サイズを調整する倍率を含んでよい。この場合、判断基準を示すサイズ(入力サイズや基準サイズなど)と比較すべき対象画像のサイズ(ひいては、解像度)は、用紙上の対象画像の調整後の印刷サイズを用いて特定されることが好ましい。例えば、用紙上の対象画像の印刷サイズが小さいサイズに調整される場合、対象画像データの画素数に対する用紙上の対象画像の印刷サイズが小さくなるので、対象画像の解像度は高くなる。プロセッサ110は、この高い解像度に基づいて画像のサイズの大小関係を判断するために、対象画像のサイズと判断基準を示すサイズとの少なくとも一方を、倍率(ひいては、印刷サイズ)を用いて調整することが好ましい。一般的には、判断基準を示すサイズと比較すべき対象画像のサイズとしては、対象画像データのピクセル数と相関を有する種々の値を採用可能である。
(9) The printing process may be various other processes instead of the process described with reference to FIG. For example, S140 may be executed when the determination result of S160 is Yes. In this manner,
(10)画像を印刷する装置である印刷実行部は、複合機200とは異なる種類の装置であってよい。例えば、単機能の印刷装置であってよい。また、印刷実行部に画像を印刷させる制御装置は、図1の端末装置100のようなパーソナルコンピュータとは異なる種類の装置(例えば、デジタルカメラ、スキャナ、スマートフォン)であってもよい。また、制御装置が、印刷装置の一部であってもよい。例えば、複合機200の制御部299が、端末装置100の代わりに、印刷処理を実行してよい。また、ネットワークを介して互いに通信可能な複数の装置(例えば、コンピュータ)が、制御装置による制御処理の機能を一部ずつ分担して、全体として、制御処理の機能を提供してもよい(これらの装置を備えるシステムが制御装置に対応する)。
(10) The print execution unit, which is a device that prints images, may be a device of a different type from the
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。 In each of the above embodiments, part of the configuration implemented by hardware may be replaced with software, or conversely, part or all of the configuration implemented by software may be replaced with hardware. good too.
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD-ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。 In addition, when part or all of the functions of the present invention are realized by a computer program, the program is provided in a form stored in a computer-readable recording medium (for example, a non-temporary recording medium). be able to. The program can be used while being stored in the same or different recording medium (computer-readable recording medium) as when it was provided. "Computer-readable recording medium" is not limited to portable recording media such as memory cards and CD-ROMs, but also internal storage devices such as various ROMs in computers, and hard disk drives that are connected to computers. An external storage device may also be included.
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。 Although the present invention has been described above based on examples and modifications, the above-described embodiments of the present invention are intended to facilitate understanding of the present invention, and are not intended to limit the present invention. The present invention may be modified and improved without departing from its spirit, and the present invention includes equivalents thereof.
100…端末装置、110…プロセッサ、115…記憶装置、120…揮発性記憶装置、130…不揮発性記憶装置、132…プログラム、140…表示部、150…操作部、170…通信インタフェース、200…複合機、210…プロセッサ、215…記憶装置、220…揮発性記憶装置、230…不揮発性記憶装置、232…プログラム、240…表示部、250…操作部、270…通信インタフェース、280…スキャナ部、299…制御部、400…プリンタ部、1000…画像処理システム
DESCRIPTION OF
Claims (17)
対象画像の対象画像データを取得する第1取得機能と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、
前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、
を、コンピュータに実現させ、
前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、
前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、
を含み、
前記コンピュータプログラムは、
前記印刷実行部から、前記印刷実行部の能力に関する情報である能力情報を取得する第2取得機能と、
前記能力情報を用いて、前記複数種類の印刷コマンドから前記対象印刷コマンドを選択する選択機能と、
をコンピュータに実現させる、コンピュータプログラム。 A computer program for causing a print execution unit to print an image,
a first acquisition function for acquiring target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generation function for generating the at least one print command comprising;
an output function for outputting the target print command to the print execution unit;
is implemented on a computer,
A first generation function that generates the first type print command realized by the command generation function executes a first size change process including image interpolation using the target image data to generate a first type image. including a function to generate the first type print command including data;
A second generation function that generates the second type print command realized by the command generation function includes:
an image resizing function that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression function that generates the second type print command including second type image data by run-length compressing the resized image data;
including
Said computer program comprises:
a second acquisition function for acquiring capability information, which is information about the capabilities of the print execution unit, from the print execution unit;
a selection function for selecting the target print command from the plurality of types of print commands using the capability information;
A computer program that makes a computer realize
前記能力情報は、前記印刷実行部が受け付ける画像データの解像度である入力解像度に関する情報を含み、
前記選択機能は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが前記入力解像度に基づく入力サイズよりも小さいことを含む条件が満たされる場合に、前記対象印刷コマンドとして前記第2種印刷コマンドを選択し、
前記画像サイズ変更機能は、前記対象画像データのサイズを前記入力サイズに変更する拡大処理を前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
コンピュータプログラム。 A computer program according to claim 1 , comprising:
The capability information includes information on input resolution, which is the resolution of image data accepted by the print execution unit,
When the target image data is bitmap data and a size correlated with the number of pixels of the target image data is smaller than an input size based on the input resolution, the selecting the second type print command as the target print command;
The image resizing function generates the resized image data by executing an enlarging process of changing the size of the target image data to the input size as the second resizing process.
computer program.
前記第2生成機能は、前記対象画像データがドキュメントデータである場合に、前記対象画像データを、非圧縮のビットマップデータと可逆圧縮されたビットマップデータとのいずれかである対象ビットマップデータに変換する変換機能を含み、
前記圧縮機能は、前記対象ビットマップデータと、前記対象ビットマップデータに前記第2サイズ変更処理を実行して得られる画像データと、のいずれかをランレングス圧縮することによって、前記第2種印刷コマンドに含まれる前記第2種画像データを生成する、
コンピュータプログラム。 3. A computer program according to claim 1 or 2 ,
When the target image data is document data, the second generation function converts the target image data into target bitmap data that is either uncompressed bitmap data or reversibly compressed bitmap data. Contains a conversion function that converts,
The compression function performs run-length compression of either the target bitmap data or image data obtained by performing the second size change processing on the target bitmap data, thereby performing the second-type printing. generating the second type image data included in the command;
computer program.
対象画像の対象画像データを取得する第1取得機能と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、
前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、
を、コンピュータに実現させ、
前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、
前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、
を含み、
前記第2生成機能は、前記対象画像データがドキュメントデータである場合に、前記対象画像データを、非圧縮のビットマップデータと可逆圧縮されたビットマップデータとのいずれかである対象ビットマップデータに変換する変換機能を含み、
前記圧縮機能は、前記対象ビットマップデータと、前記対象ビットマップデータに前記第2サイズ変更処理を実行して得られる画像データと、のいずれかをランレングス圧縮することによって、前記第2種印刷コマンドに含まれる前記第2種画像データを生成する、
コンピュータプログラム。 A computer program for causing a print execution unit to print an image,
a first acquisition function for acquiring target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generation function for generating the at least one print command comprising;
an output function for outputting the target print command to the print execution unit;
is implemented on a computer,
A first generation function that generates the first type print command realized by the command generation function executes a first size change process including image interpolation using the target image data to generate a first type image. including a function to generate the first type print command including data;
A second generation function that generates the second type print command realized by the command generation function includes:
an image resizing function that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression function that generates the second type print command including second type image data by run-length compressing the resized image data;
including
When the target image data is document data, the second generation function converts the target image data into target bitmap data that is either uncompressed bitmap data or reversibly compressed bitmap data. Contains a conversion function that converts,
The compression function performs run-length compression of either the target bitmap data or image data obtained by performing the second size change processing on the target bitmap data, thereby performing the second-type printing. generating the second type image data included in the command;
computer program.
前記画像サイズ変更機能は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが基準サイズよりも大きい場合に、前記対象画像データのサイズを前記基準サイズ以下のサイズに変更する縮小処理と、前記縮小処理によって得られる画像データのサイズを前記印刷実行部が受け付ける画像データの解像度である入力解像度に基づく入力サイズに変更する拡大処理とを、前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
コンピュータプログラム。 A computer program according to any one of claims 1 to 4,
The image size changing function reduces the size of the target image data to the reference size or less when the target image data is bitmap data and the size correlated with the number of pixels of the target image data is larger than the reference size. and an enlargement process of changing the size of the image data obtained by the reduction process to an input size based on the input resolution, which is the resolution of the image data accepted by the print execution unit. generating the resized image data by executing as a modification process;
computer program.
対象画像の対象画像データを取得する第1取得機能と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、
前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、
を、コンピュータに実現させ、
前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、
前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、
を含み、
前記画像サイズ変更機能は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが基準サイズよりも大きい場合に、前記対象画像データのサイズを前記基準サイズ以下のサイズに変更する縮小処理と、前記縮小処理によって得られる画像データのサイズを前記印刷実行部が受け付ける画像データの解像度である入力解像度に基づく入力サイズに変更する拡大処理とを、前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
コンピュータプログラム。 A computer program for causing a print execution unit to print an image,
a first acquisition function for acquiring target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generation function for generating the at least one print command comprising;
an output function for outputting the target print command to the print execution unit;
is implemented on a computer,
A first generation function that generates the first type print command realized by the command generation function executes a first size change process including image interpolation using the target image data to generate a first type image. including a function to generate the first type print command including data;
A second generation function that generates the second type print command realized by the command generation function includes:
an image resizing function that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression function that generates the second type print command including second type image data by run-length compressing the resized image data;
including
The image size changing function reduces the size of the target image data to the reference size or less when the target image data is bitmap data and the size correlated with the number of pixels of the target image data is larger than the reference size. and an enlargement process of changing the size of the image data obtained by the reduction process to an input size based on the input resolution, which is the resolution of the image data accepted by the print execution unit. generating the resized image data by executing as a modification process;
computer program.
前記対象画像を前記印刷実行部に印刷させる指示を受け付ける受付機能と、
前記指示が受け付けられる前に、前記対象画像を表示部に表示させる表示機能と、
を、コンピュータに実現させ、
前記コマンド生成機能は、前記指示が受け付けられる前に、前記第2種印刷コマンドの生成を開始する、
コンピュータプログラム。 A computer program according to any one of claims 1 to 6 ,
a reception function that receives an instruction to print the target image to the print execution unit;
a display function for displaying the target image on a display unit before the instruction is accepted;
is implemented on a computer,
The command generation function starts generating the second type print command before the instruction is accepted.
computer program.
対象画像の対象画像データを取得する第1取得機能と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、
前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、
を、コンピュータに実現させ、
前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、
前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、
を含み、
前記コンピュータプログラムは、
前記対象画像を前記印刷実行部に印刷させる指示を受け付ける受付機能と、
前記指示が受け付けられる前に、前記対象画像を表示部に表示させる表示機能と、
を、コンピュータに実現させ、
前記コマンド生成機能は、前記指示が受け付けられる前に、前記第2種印刷コマンドの生成を開始する、
コンピュータプログラム。 A computer program for causing a print execution unit to print an image,
a first acquisition function for acquiring target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generation function for generating the at least one print command comprising;
an output function for outputting the target print command to the print execution unit;
is implemented on a computer,
A first generation function that generates the first type print command realized by the command generation function executes a first size change process including image interpolation using the target image data to generate a first type image. including a function to generate the first type print command including data;
A second generation function that generates the second type print command realized by the command generation function includes:
an image resizing function that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression function that generates the second type print command including second type image data by run-length compressing the resized image data;
including
Said computer program comprises:
a reception function that receives an instruction to print the target image to the print execution unit;
a display function for displaying the target image on a display unit before the instruction is accepted;
is implemented on a computer,
The command generation function starts generating the second type print command before the instruction is accepted.
computer program.
前記第2種印刷コマンドのうちの前記指示が受け付けられる前に生成済の部分を含む特定部分のデータサイズが基準データサイズを超える場合に、前記出力機能に前記第1種印刷コマンドを出力させる出力設定機能を、コンピュータに実現させる、コンピュータプログラム。 9. A computer program according to claim 7 or 8 ,
Output for causing the output function to output the first type print command when a data size of a specific portion including a portion already generated before the instruction is accepted out of the second type print command exceeds a reference data size. A computer program that causes a computer to implement a setting function.
前記第2生成機能は、前記コンピュータが複数の演算部を備える場合に、前記第2種印刷コマンドを生成する処理に含まれる複数の処理を、前記複数の演算部に並列して実行させる並列処理機能を含む、
コンピュータプログラム。 A computer program according to any one of claims 1 to 9 ,
When the computer includes a plurality of calculation units, the second generation function is parallel processing that causes the plurality of calculation units to execute in parallel a plurality of processes included in the process of generating the type 2 print command. including features,
computer program.
対象画像の対象画像データを取得する第1取得機能と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成機能と、
前記対象印刷コマンドを前記印刷実行部に出力する出力機能と、
を、コンピュータに実現させ、
前記コマンド生成機能によって実現される前記第1種印刷コマンドを生成する第1生成機能は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する機能を含み、
前記コマンド生成機能によって実現される前記第2種印刷コマンドを生成する第2生成機能は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更機能と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮機能と、
を含み、
前記第2生成機能は、前記コンピュータが複数の演算部を備える場合に、前記第2種印刷コマンドを生成する処理に含まれる複数の処理を、前記複数の演算部に並列して実行させる並列処理機能を含む、
コンピュータプログラム。 A computer program for causing a print execution unit to print an image,
a first acquisition function for acquiring target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generation function for generating the at least one print command comprising;
an output function for outputting the target print command to the print execution unit;
is implemented on a computer,
A first generation function that generates the first type print command realized by the command generation function executes a first size change process including image interpolation using the target image data to generate a first type image. including a function to generate the first type print command including data;
A second generation function that generates the second type print command realized by the command generation function includes:
an image resizing function that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression function that generates the second type print command including second type image data by run-length compressing the resized image data;
including
When the computer includes a plurality of calculation units, the second generation function is parallel processing that causes the plurality of calculation units to execute in parallel a plurality of processes included in the process of generating the type 2 print command. including features,
computer program.
前記並列処理機能は、前記第2種画像データに含まれる複数のバンドデータであって前記対象画像に含まれる複数のバンド画像に対応する前記複数のバンドデータのうちの少なくとも一部の複数のバンドデータを生成する処理を、前記複数の演算部に並列して実行させ、
前記複数のバンド画像のうちの前記対象画像の最先に印刷されるべき先端を含む先端バンド画像のサイズは、他の1以上のバンド画像のそれぞれのサイズのうちの最大サイズよりも、小さく、
前記出力機能は、前記先端バンド画像のバンドデータである先端バンドデータを生成する処理が完了した場合には、前記他の1以上のバンド画像のうちの少なくとも1つのバンド画像の前記バンドデータを生成する処理が完了していない場合であっても、前記先端バンドデータを前記印刷実行部に出力する、
コンピュータプログラム。 12. A computer program according to claim 10 or 11 ,
The parallel processing function is a plurality of bands of at least a part of the plurality of band data included in the second type image data and corresponding to the plurality of band images included in the target image. causing the plurality of calculation units to execute processing for generating data in parallel;
the size of the leading edge band image including the leading edge to be printed first of the target image among the plurality of band images is smaller than the maximum size among the sizes of each of the other one or more band images;
The output function generates the band data of at least one band image out of the other one or more band images when the process of generating leading edge band data, which is the band data of the leading edge band image, is completed. outputting the leading edge band data to the print execution unit even if the processing for printing is not completed;
computer program.
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含み、
前記制御装置は、
前記印刷実行部から、前記印刷実行部の能力に関する情報である能力情報を取得する第2取得部と、
前記能力情報を用いて、前記複数種類の印刷コマンドから前記対象印刷コマンドを選択する選択部と、
を備える、制御装置。 A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the type 1 print command containing data;
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
including
The control device is
a second acquisition unit that acquires capability information, which is information about the capability of the print execution unit, from the print execution unit;
a selection unit that selects the target print command from the plurality of types of print commands using the capability information;
A controller.
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含み、
前記第2生成処理は、前記対象画像データがドキュメントデータである場合に、前記対象画像データを、非圧縮のビットマップデータと可逆圧縮されたビットマップデータとのいずれかである対象ビットマップデータに変換する変換処理を含み、
前記圧縮処理は、前記対象ビットマップデータと、前記対象ビットマップデータに前記第2サイズ変更処理を実行して得られる画像データと、のいずれかをランレングス圧縮することによって、前記第2種印刷コマンドに含まれる前記第2種画像データを生成する、
制御装置。 A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the type 1 print command containing data;
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
including
When the target image data is document data, the second generating process converts the target image data into target bitmap data that is either uncompressed bitmap data or reversibly compressed bitmap data. Including conversion processing to convert,
The compression process performs run-length compression of either the target bitmap data or image data obtained by performing the second size change process on the target bitmap data, thereby performing the second-type printing. generating the second type image data included in the command;
Control device.
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含み、
前記画像サイズ変更処理は、前記対象画像データがビットマップデータであり、前記対象画像データのピクセル数と相関を有するサイズが基準サイズよりも大きい場合に、前記対象画像データのサイズを前記基準サイズ以下のサイズに変更する縮小処理と、前記縮小処理によって得られる画像データのサイズを前記印刷実行部が受け付ける画像データの解像度である入力解像度に基づく入力サイズに変更する拡大処理とを、前記第2サイズ変更処理として実行することによって、前記サイズ変更済画像データを生成する、
制御装置。 A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the type 1 print command containing data;
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
including
In the image size changing process, when the target image data is bitmap data and a size correlated with the number of pixels of the target image data is larger than a reference size, the size of the target image data is reduced to the reference size or less. and an enlargement process of changing the size of the image data obtained by the reduction process to an input size based on the input resolution, which is the resolution of the image data accepted by the print execution unit. generating the resized image data by executing as a modification process;
Control device.
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含み、
前記制御装置は、
前記対象画像を前記印刷実行部に印刷させる指示を受け付ける受付部と、
前記指示が受け付けられる前に、前記対象画像を表示部に表示させる表示処理部と、
を備え、
前記コマンド生成部は、前記指示が受け付けられる前に、前記第2種印刷コマンドの生成を開始する、
制御装置。 A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the type 1 print command containing data;
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
including
The control device is
a reception unit that receives an instruction to cause the print execution unit to print the target image;
a display processing unit that causes a display unit to display the target image before the instruction is accepted;
with
The command generation unit starts generating the second type print command before the instruction is accepted.
Control device.
対象画像の対象画像データを取得する第1取得部と、
第1種印刷コマンドと第2種印刷コマンドとを含む複数種類の印刷コマンドのうちの少なくとも1種の印刷コマンドであって、前記印刷実行部に出力すべき印刷コマンドとして選択される対象印刷コマンドを含む前記少なくとも1種の印刷コマンドを生成するコマンド生成部と、
前記対象印刷コマンドを前記印刷実行部に出力する出力部と、
を、備え、
前記コマンド生成部によって実現される前記第1種印刷コマンドを生成する第1生成処理は、前記対象画像データを用いて、画像補間を含む第1サイズ変更処理を実行することによって、第1種画像データを含む前記第1種印刷コマンドを生成する処理を含み、
前記コマンド生成部によって実現される前記第2種印刷コマンドを生成する第2生成処理は、
前記対象画像データを用いて、画像補間を含まない第2サイズ変更処理を実行することによって、前記対象画像を表すサイズ変更済画像データを生成する画像サイズ変更処理と、
前記サイズ変更済画像データをランレングス圧縮することによって、第2種画像データを含む前記第2種印刷コマンドを生成する圧縮処理と、
を含み、
前記第2生成処理は、前記制御装置が複数の演算部を備える場合に、前記第2種印刷コマンドを生成する処理に含まれる複数の処理を、前記複数の演算部に並列して実行させる並列処理を含む、
制御装置。 A control device for causing a print execution unit to print an image,
a first acquisition unit that acquires target image data of a target image;
a target print command that is at least one of a plurality of types of print commands including a first type print command and a second type print command and is selected as a print command to be output to the print execution unit; a command generator for generating the at least one print command including
an output unit that outputs the target print command to the print execution unit;
provided with
The first generation process for generating the first type print command realized by the command generation unit uses the target image data to perform a first size change process including image interpolation to generate a first type image. including a process of generating the type 1 print command containing data;
A second generation process for generating the second type print command realized by the command generation unit includes:
an image resizing process that uses the target image data to generate resized image data representing the target image by performing a second resizing process that does not involve image interpolation;
a compression process for generating the second type print command including second type image data by run-length compressing the resized image data;
including
In the case where the control device includes a plurality of calculation units, the second generation process causes the plurality of calculation units to execute in parallel a plurality of processes included in the process of generating the type 2 print command. including processing,
Control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018183708A JP7137135B2 (en) | 2018-09-28 | 2018-09-28 | computer program and controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018183708A JP7137135B2 (en) | 2018-09-28 | 2018-09-28 | computer program and controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020052895A JP2020052895A (en) | 2020-04-02 |
JP7137135B2 true JP7137135B2 (en) | 2022-09-14 |
Family
ID=69997370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018183708A Active JP7137135B2 (en) | 2018-09-28 | 2018-09-28 | computer program and controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7137135B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000196867A (en) | 1998-12-25 | 2000-07-14 | Canon Inc | Method and device for image processing |
JP2000289262A (en) | 1999-04-06 | 2000-10-17 | Seiko Epson Corp | Printer, print system, print method |
JP2003288180A (en) | 2002-03-27 | 2003-10-10 | Seiko Epson Corp | Printing system, printer host, printer driver and printing possibility ensuring method |
JP2005100356A (en) | 2003-08-29 | 2005-04-14 | Seiko Epson Corp | Printer control program, document operation terminal, document processing system and print data generation method |
JP2013078873A (en) | 2011-10-03 | 2013-05-02 | Seiko Epson Corp | Image processing device and image processing method |
JP2013198028A (en) | 2012-03-22 | 2013-09-30 | Konica Minolta Inc | Information processing device, program, and image forming system |
JP2016072785A (en) | 2014-09-30 | 2016-05-09 | ブラザー工業株式会社 | Printer |
-
2018
- 2018-09-28 JP JP2018183708A patent/JP7137135B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000196867A (en) | 1998-12-25 | 2000-07-14 | Canon Inc | Method and device for image processing |
JP2000289262A (en) | 1999-04-06 | 2000-10-17 | Seiko Epson Corp | Printer, print system, print method |
JP2003288180A (en) | 2002-03-27 | 2003-10-10 | Seiko Epson Corp | Printing system, printer host, printer driver and printing possibility ensuring method |
JP2005100356A (en) | 2003-08-29 | 2005-04-14 | Seiko Epson Corp | Printer control program, document operation terminal, document processing system and print data generation method |
JP2013078873A (en) | 2011-10-03 | 2013-05-02 | Seiko Epson Corp | Image processing device and image processing method |
JP2013198028A (en) | 2012-03-22 | 2013-09-30 | Konica Minolta Inc | Information processing device, program, and image forming system |
JP2016072785A (en) | 2014-09-30 | 2016-05-09 | ブラザー工業株式会社 | Printer |
Also Published As
Publication number | Publication date |
---|---|
JP2020052895A (en) | 2020-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9137416B2 (en) | Controlling device | |
US8508775B2 (en) | Image processing with body region image and peripheral region image | |
EP3355568B1 (en) | Image processing apparatus and method for controlling the same | |
US8169656B2 (en) | Image processing devices and methods for resizing an original image therefor | |
JP5304827B2 (en) | Control device | |
JP2006033828A (en) | Common exchange format architecture for color printing in multi-function system | |
JP5477320B2 (en) | Image processing device | |
JP5932313B2 (en) | Printing apparatus, print preview display method and program thereof | |
US8665484B2 (en) | Processing tile images including overlap regions | |
JP5360112B2 (en) | Control device | |
JP7137135B2 (en) | computer program and controller | |
US8144378B2 (en) | Image processing device, image processing method, and computer program product | |
JP2004104735A (en) | Image processor, generating device and printing device | |
US20100165395A1 (en) | Image processing apparatus, image processing system, and control method for image processing apparatus | |
JP6882043B2 (en) | Image processing equipment, programs and image processing methods | |
US8582168B2 (en) | Image processing apparatus and processing method thereof | |
JP5672340B2 (en) | Control device | |
US9001388B2 (en) | Imaging forming apparatus to merge print data with a rendering image, method of image forming, and computer-readable recording medium | |
JP6427960B2 (en) | Image processing device | |
JP2008017032A (en) | Image processor and image processing method | |
JP5978706B2 (en) | Printing control program, information processing apparatus, printing system, and printing apparatus | |
JP2002236566A (en) | Page print system and print data generating device | |
JP2024042401A (en) | Image processing apparatus, method for controlling image processing apparatus, and program | |
US20110158531A1 (en) | Image processing apparatus and control method thereof | |
JP6051526B2 (en) | Image processing system, image forming apparatus, image processing program, and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220511 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220706 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220816 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7137135 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |