WO2017038118A1 - Emulation device and emulation program - Google Patents

Emulation device and emulation program Download PDF

Info

Publication number
WO2017038118A1
WO2017038118A1 PCT/JP2016/055785 JP2016055785W WO2017038118A1 WO 2017038118 A1 WO2017038118 A1 WO 2017038118A1 JP 2016055785 W JP2016055785 W JP 2016055785W WO 2017038118 A1 WO2017038118 A1 WO 2017038118A1
Authority
WO
WIPO (PCT)
Prior art keywords
printer
command
conversion unit
data
emulation
Prior art date
Application number
PCT/JP2016/055785
Other languages
French (fr)
Japanese (ja)
Inventor
知弥 落合
オーウェン ローレンス
Original Assignee
スター精密株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by スター精密株式会社 filed Critical スター精密株式会社
Publication of WO2017038118A1 publication Critical patent/WO2017038118A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer

Definitions

  • the present invention relates to an emulation device and an emulation program for converting a command system of print data output from a host device to a printer.
  • a system for printing a document or an image edited by an application of a host device from a printer is often used.
  • a document or an image is stored as a file in a format specific to an application, and is converted into print data in a format that can be interpreted by a printer via a printer driver that operates on an operating system.
  • An emulator may be used for conversion to this print data.
  • Emulation means converting a command system supported by the host device into a command system that can be interpreted by the printer among various command systems that define the meaning of data.
  • one emulator is created to convert a command system targeting a specific type of printer. Therefore, when changing the printer connected to the host device, it is necessary to change the description of the emulation according to the changed printer.
  • print data corresponding to printer A is converted to print data corresponding to printer B by an additionally installed language monitor program and print data conversion program (hereinafter referred to as emulation programs). Therefore, the print output similar to that of the printer A before the change can be reproduced in the printer B after the change without changing the application side of the host device.
  • emulation programs an additionally installed language monitor program and print data conversion program
  • Patent Document 1 has a problem that a large number of emulation programs are required depending on the number of types of printers connected to the host device. For example, when the printer connected to the host device is changed from the printer A to the printer C, it is necessary to separately create an emulation program for converting the print data corresponding to the printer A into the print data corresponding to the printer C. When the printer D is connected to the host device, an emulation program for converting print data corresponding to the printer A into print data corresponding to the printer D is required.
  • printer B when a printer driver corresponding to printer B is installed in the host device, printer B ⁇ printer A, printer B ⁇ printer C, printer B ⁇ printer, depending on the type of printer connected to the host device. It is necessary to create many emulation programs such as D,. As described above, there are many emulation programs to be created, and there is a problem that much time and cost are required for development.
  • the present invention has been made to solve such problems, and it is possible to efficiently develop an emulation program required when changing the combination of a host device to be connected and a printer with less man-hours.
  • the aim is to be able to do it.
  • a first conversion unit that converts original command data generated by a host device into intermediate command data having a specific command system independent of a printer
  • a second conversion unit that converts intermediate command data generated by the first conversion unit into target command data having a command system corresponding to a printer connected to the host device.
  • development of an emulation program corresponding to the first conversion unit for converting original command data into intermediate command data, and conversion of intermediate command data into target command data can be performed separately.
  • the intermediate command data consists of a specific command system that does not depend on the printer, when developing an emulation program corresponding to the first conversion unit, the second conversion unit is completely unaware. Also good.
  • the first conversion unit need not be conscious of at all.
  • a first conversion unit created corresponding to a command system (original command data) of a certain printer X and a second conversion unit created corresponding to a command system (target command data) of a certain printer Y If applied in any combination with the conversion unit, command data corresponding to the printer X can be converted into command data corresponding to the printer Y. At this time, even if the combination of conversion from the command data corresponding to the printer X to the command data corresponding to the printer Y is new, at least one of the emulation programs of the first conversion unit and the second conversion unit is a different combination. If already created, there is no need to newly create the created emulation program.
  • the present invention when the combination of the host device to be connected and the printer is changed (when changing the printer connected to the host device or changing the host device connected to the printer).
  • the required emulation program can be developed efficiently with less man-hours.
  • FIG. 1 is a diagram illustrating an overall schematic configuration of a printing system including an emulation apparatus according to an embodiment. It is a figure which shows the hardware constitutions of the printing system by this embodiment. It is a figure which shows the rough operation example by the various programs which the host apparatus by this embodiment memorize
  • FIG. 1 is a diagram illustrating an overall schematic configuration of a printing system including an emulation apparatus according to the present embodiment.
  • the printing system according to the present embodiment includes a host device 10 and a printer 20.
  • the host apparatus 10 and the printer 20 are connected by a serial interface or a wired interface cable such as Ethernet (registered trademark).
  • a serial interface or a wired interface cable such as Ethernet (registered trademark).
  • the host device 10 and the printer 20 may be connected via a wireless communication network such as Bluetooth (registered trademark) or Wi-Fi.
  • the host device 10 includes the emulation device of this embodiment.
  • the interface card 20A may be configured to be detachable from the printer 20, and the interface card 20A may have the function of the emulation device according to the present embodiment.
  • the interface card 10 ⁇ / b> A may be configured to be detachable from the host device 10, and the interface card 10 ⁇ / b> A may have the function of the emulation device according to the present embodiment.
  • FIG. 2 is a diagram illustrating a hardware configuration of the printing system according to the present embodiment.
  • FIG. 2 shows an example of the hardware configuration when the printing system is configured as shown in FIG.
  • the host device 10 includes a CPU 101, an I / F 102, a display unit 103 such as a liquid crystal display, an input unit 104 such as a touch panel, a ROM 105, a RAM 106, and a hard disk 107 as its hardware configuration.
  • the CPU 101 controls the operation of the host device 10 according to a program stored in the hard disk 107.
  • the CPU 101 converts data such as documents and images generated by the application program into print data of a command system that can be understood by the printer 20, and converts the converted print data from the I / F 102 to the printer 20. Output.
  • the printer 20 includes a CPU 201, an I / F 202, a printing unit 203, a ROM 204, and a RAM 205 as hardware configurations.
  • the CPU 201 controls the operation of the printer 20 according to a program stored in the ROM 204 or RAM 205.
  • print data sent from the host device 10 is received by the I / F 202, and printing is executed by the printing unit 203 in accordance with a command indicated by the print data.
  • FIG. 3 is a diagram showing various programs stored in the hard disk 107 of the host device 10 and an outline operation example by the various programs.
  • the hard disk 107 of the host device 10 stores an application program (hereinafter simply referred to as an application) 11, a printer driver 12, an emulation program (hereinafter referred to as an emulator) 13, and a port driver 14.
  • an application program hereinafter simply referred to as an application
  • printer driver 12 an emulation program
  • an emulator emulation program
  • the host device 10 includes the application 11, the printer driver 12, and the port driver 14, and the interface card 20A inserted in the printer 20 includes the emulator 13. To do.
  • the print data generated by the printer driver 12 is transmitted to the printer 20 via the port driver 14 and supplied to the emulator 13.
  • the host device 10 includes the application 11, the printer driver 12, and the port driver 14, and the interface card 10A inserted into the host device 10 sets the emulator 13. It is possible to provide a configuration.
  • the host device 10 may include the application 11 and the port driver 14, and the interface card 10A may include the printer driver 12 and the emulator 13.
  • the port driver 14 may also be provided in the interface card 10A.
  • the host device 10 including the emulator 13 corresponds to the emulation device of the present invention. Further, when the printing system is configured as shown in FIG. 1C and the host device 10 includes the emulator 13, the host device 10 corresponds to the emulation device of the present invention.
  • the host device 10 can be constructed as an emulation device by recording the emulator 13 (the emulation program of the present invention) on a recording medium such as a CD-ROM and causing the host device 10 to read the program.
  • a recording medium for recording the emulation program a flexible disk, a magnetic tape, an optical disk, a magneto-optical disk, a DVD, a nonvolatile memory card, and the like can be used in addition to the CD-ROM.
  • the emulation program may be downloaded to the host device 10 via a network such as the Internet.
  • the interface card 20A includes the emulator 13 in the configuration of FIG. 1B or when the interface card 10A includes the emulator 13 in the configuration of FIG. 1C, the interface cards 10A and 20A This corresponds to the emulation device of the present invention.
  • the emulator 13 (the emulation program of the present invention) is installed in advance in the interface cards 10A and 20A, for example.
  • the emulation program downloaded to the host device 10 via a recording medium or a network such as the Internet may be recorded in the interface card 10A.
  • a POS application is used as an example of the application 11 and a receipt image is printed.
  • the application 11 generates a receipt image and outputs a print instruction to the printer driver 12 together with the receipt image.
  • the printer driver 12 corresponds to a printer 20 of a certain model, and generates and outputs print data composed of command data based on a command system that can be understood by the printer 20. Note that a command system of print data generated by the printer driver 12 is referred to as a “first command system”.
  • the printer driver 12 converts the receipt image supplied from the application 11 into print data (command data depending on the device) based on the first command system corresponding to the model of the printer 20. Specifically, in accordance with the first command system, the printer driver 12 uses command data for forming a receipt image on a paper medium in the printer 20 or command data for controlling the printing unit 203 of the printer 20 (for example, Command data for instructing feeding or cutting of a paper medium.
  • the print data generated by the printer driver 12 is supplied to the emulator 13.
  • the emulator 13 converts the print data (original command data) supplied from the printer driver 12 into print data (target command data) having an arbitrary command system.
  • the arbitrary command system may be the first command system or the other second command system.
  • the emulator 13 once converts the original command data composed of the first command system into intermediate command data composed of a command system independent of the device (printer 20). Then, the emulator 13 further converts the converted intermediate command data into target command data having the first command system or the second command system.
  • the emulator 13 When the printer 20 corresponding to the printer driver 12 is connected to the host device 10, the emulator 13 first converts the original command data supplied from the printer driver 12 into intermediate command data, It is converted into target command data consisting of one command system.
  • the emulator 13 when the printer 20 connected to the host apparatus 10 is changed, the emulator 13 once converts the original command data supplied from the printer driver 12 into intermediate command data, and then changes the printer 20 to the changed printer 20.
  • the target command data consisting of the corresponding second command system is converted. In this case, it is necessary to prepare the emulator 13 corresponding to the printer 20 after the change.
  • the new emulator 13 can be developed efficiently. Details thereof will be described later.
  • the print data (target command data) generated by the emulator 13 is transmitted to the printer 20 via the port driver 14.
  • the port driver 14 transmits the target command data generated by the emulator 13 to the printer 20 via the port specified by the application 11.
  • both the original command data and the target command data are in the first command system. Even in this case, the following advantages can be obtained by outputting the command data via the emulator 13 without directly outputting the command data from the printer driver 12 to the printer 20.
  • printer connections are possible. That is, by introducing the mechanism of the emulator 13, various emulation-compatible printers including printers having the same command system can be freely connected. Second, compatibility between printers of the same command system can be ensured. For example, even if a printer with the same command system is used, if the command specification is changed, command conversion is required if the printer corresponding to the old specification command is replaced with the printer corresponding to the new specification command. By using the emulator 13, the replacement can be easily performed.
  • FIG. 4 is a block diagram showing a functional configuration example provided in the emulator 13 of the present embodiment shown in FIG.
  • the emulator 13 of the present embodiment includes a first conversion unit 31 and a second conversion unit 32 as its functional configuration. Both the first conversion unit 31 and the second conversion unit 32 have a functional configuration realized by a modularized program.
  • the emulator 13 has a platform 30 on which module programs corresponding to the first conversion unit 31 and the second conversion unit 32 can be registered and mounted, and each module program is registered or deleted in the platform 30 by plug-in. It is configured to be able to.
  • the printer driver 12 and the port driver 14 may also be configured as a module program, and may be configured to be registered or deleted by plug-in on the same platform 30 as the emulator 13.
  • the first conversion unit 31 includes original command data that is generated by the printer driver 12 and includes the first command system (hereinafter, may be abbreviated as original data), and includes a specific command system that does not depend on the printer 20. It is converted into intermediate command data (hereinafter abbreviated as intermediate data).
  • the first conversion unit 31 generates intermediate command data by sequentially converting each of a plurality of commands included in the original command data into commands represented by a specific command system. To do.
  • the second conversion unit 32 converts the intermediate command data generated by the first conversion unit 31 into target command data (hereinafter referred to as target command data) having a command system corresponding to the printer 20 connected to the host device 10. (May be abbreviated as data).
  • target command data a command system corresponding to the printer 20 connected to the host device 10.
  • the second conversion unit 32 sequentially converts each of a plurality of commands included in the intermediate command data into a command represented by a command system corresponding to the printer 20, thereby obtaining a target command. Generate data.
  • FIG. 5 is a diagram for explaining a specific example of the operation by the first converter 31.
  • FIG. 5A shows an example of original data (command data depending on the device) composed of the first command system generated by the printer driver 12.
  • FIG. 5B shows an example of intermediate data (command data that does not depend on a device) composed of a specific command system converted by the first conversion unit 31.
  • the original data is ⁇ ESC> @ ⁇ ESC> i22Title ⁇ ESC> i00 ⁇ CR> ⁇ LF> Hello World ⁇ CR> ⁇ LF> ⁇ ESC> d2, and a plurality of commands are arranged in order.
  • each command is as follows.
  • -Title Character string to be printed In this example, the character string of "Title" is enlarged and printed three times in length and three times in width.
  • ⁇ ⁇ ESC> i00 Specify the enlarged characters of 1 ⁇ vertical and 1 ⁇ horizontal
  • Each command of the original data shown above is converted by the first conversion unit 31 into each command of the intermediate data shown in FIG.
  • Each command of the converted intermediate data has the same function as each command of the original data, but the expression format is different.
  • each command of the intermediate data is composed of a combination of data “type” representing the command type and data “value” representing the parameter value.
  • the expression format by this specific command system is not dependent on the device.
  • the correspondence between each command of the original data and each command of the intermediate data is as follows.
  • FIG. 6 is a diagram for explaining a specific example of the operation by the second conversion unit 32.
  • FIG. 6A shows intermediate data (same as that shown in FIG. 5B) composed of a specific command system generated by the first conversion unit 31.
  • FIG. 6B shows an example of target data converted by the second conversion unit 32.
  • FIG. 6B shows the same first command system as the original data as an example of the command system of the target data.
  • the printer driver 12 corresponding to the model of the printer 20 is installed in the host device 10 and the printer 20 is connected to the host device 10 as it is, the original data consisting of the first command system is intermediate. Once converted into data, it is further converted into target data consisting of a first command system.
  • the correspondence between each command of intermediate data and each command of target data is as follows.
  • ⁇ Type initialize value: ⁇ ⁇ ESC> @: Printer initialization ⁇ type: magnify height value: 2 ⁇ ⁇ ESC> h2: 3 times the enlarged character designation ⁇ type: magnify width value: 2 ⁇ ⁇ ESC> w2: 3 times horizontal expanded character specification type: text value: Title ⁇ Title: Character string to be printed ⁇ type: magnify height value: 0 ⁇ ⁇ ESC> h0: Specify the enlarged character of 1x length ⁇ type: magnify width value: 0 ⁇ ⁇ ESC> w0: 1x horizontal expanded character designation ⁇ newline value: 0 ⁇ ⁇ CR> ⁇ LF>: Print line feed ⁇ type: text value: Hello World -> Hello World: Character string to print-newline value: 0 ⁇ ⁇ CR> ⁇ LF>: Print line feed ⁇ type: feed value: cutter ⁇ ⁇ ESC> j: Feeds the paper to the cutter position ⁇ type: cut value: 100% ⁇ ⁇ ESC> d0: Cut the paper
  • the original command data shown in FIG. 5 (a) and the target command data shown in FIG. 6 (b) are both based on the first command system, but the contents of some commands have changed. Yes. This is because, when converting from the original data to the intermediate data, one command is divided into two, and then when converting from the intermediate data to the target data, the two commands divided as described above are respectively This is because it has been converted to the original data command system. Although the commands are partially different, the printing result is exactly the same regardless of which command data is used for printing.
  • FIG. 7 is a diagram for explaining another specific example of the operation by the second conversion unit 32.
  • FIG. 7A shows intermediate data (same as that shown in FIG. 5B) composed of a specific command system generated by the first conversion unit 31.
  • FIG. 7B shows an example of target data converted by the second conversion unit 32.
  • FIG. 7B shows a second command system (HTML format command system) different from the first command system as an example of the target data.
  • HTML format command system HTML format command system
  • the module program of the second conversion unit 32 corresponding to the changed printer 20 Is registered in the platform 30 by a plug-in to replace the second conversion unit 32.
  • the intermediate data converted by the first conversion unit 31 originally registered in the platform 30 is converted into the second command system (HTML format command system) by the second conversion unit 32 newly registered as described above. ).
  • the correspondence between each command of intermediate data and each command of target data is as follows.
  • ⁇ Type initialize value: ⁇ ⁇ html> ⁇ body>: Printer initialization
  • ⁇ type magnify height value: 2 type : magnify width value : 2 -> ⁇ H1>: Title specification It recognizes the format of the title start by two commands related to the expansion character specification of the intermediate data, and generates a tag of ⁇ h1>.
  • -Type text value: Title ⁇ Title: Character string to be printed
  • ⁇ type magnify height value: 0 type : magnify width value : 0 ⁇ ⁇ / h1>: Canceling title designation
  • Two commands related to the designation of enlarged characters in intermediate data are recognized as the title end format, and a tag ⁇ / h1> is generated.
  • Print line feed ⁇ type text value: Hello World -> Hello World: Character string to print-newline value: 0 ⁇ ⁇ / p>: Print line feed ⁇ type: feed value: cutter type: cut value: 100% ⁇ ⁇ / body> ⁇ /html> Recognize the end of the document with feed and cut, and generate a ⁇ / body> ⁇ /html> tag.
  • the present embodiment development of a module program corresponding to the first conversion unit 31 that converts original data into intermediate data, and the second conversion unit that converts intermediate data into target data. It is possible to separately perform development of a module program corresponding to 32.
  • the intermediate command data consists of a specific command system that does not depend on the printer 20
  • the second conversion unit 32 is completely conscious. You don't have to.
  • the first conversion unit 31 need not be conscious of at all.
  • the first conversion unit 31 created corresponding to the command system of the original data and the second conversion unit 32 created corresponding to the command system of the target data are arbitrarily registered and registered in the platform 30 Then, the original command data based on the first command system can be converted into the target command data corresponding to the second command system.
  • the module program of the first conversion unit 31 corresponding to the first command system or the second command system If the module program of the second conversion unit 32 corresponding to is already created in another combination, there is no need to newly create a module program corresponding to the first conversion unit 31 or the second conversion unit 32. .
  • a module program corresponding to the second conversion unit 32 may be newly registered in the platform 30.
  • the module program of the conversion unit 31 can be used as it is.
  • the host device 10 connected to the printer 20 when the host device 10 connected to the printer 20 is changed, that is, in the host device 10 in which the printer driver 12 corresponding to a command system different from the first command system is installed.
  • a module program corresponding to the first conversion unit 31 may be newly registered in the platform 30, and the module program of the second conversion unit 32 can be used as it is.
  • the development of an emulation program necessary for changing the printer 20 connected to the host device 10 or changing the host device 10 connected to the printer 20 is further improved. It becomes possible to carry out efficiently with less man-hours.
  • the case where the printer 20 connected to the host device 10 is changed or the case where the host device 10 connected to the printer 20 is changed is taken as an example, and the first conversion unit 31 or the second conversion is performed.
  • the example which changes and applies the part 32 was demonstrated, it is not limited to such a case.
  • the present invention can be applied to a case where the command system to be used is switched in the printer 20 that can handle a plurality of command systems.
  • the present invention can be applied to a case where the printer driver 12 to be used is switched in the host device 10 in which the printer driver 12 corresponding to a plurality of command systems is installed.
  • the present invention is not limited to this.
  • the first conversion unit 31 corresponding to a plurality of types of command systems may be registered in the platform 30, and any one may be arbitrarily selected and applied.
  • the second conversion unit 32 corresponding to a plurality of types of command systems may be registered in the platform 30, and any one may be arbitrarily selected and applied.
  • the application 11 installed in the host device 10 is a POS application and the printer 20 prints a receipt image.
  • the present invention is not limited to this. In other words, any application 11 can be applied, and any printer 20 can be applied.
  • the print output image may be output to a PDF (Portable Document Format) file.
  • the second command system corresponding to the target command data is a command system for outputting a print image to a PDF file.
  • the emulator 13 is provided separately from the printer driver 12 installed in the host device 10
  • the present invention is not limited to this.
  • the emulator 13 may be built in the printer driver 12.

Abstract

The purpose of the present invention is to allow carrying out, efficiently and with fewer work-hours, development of emulation programs which are required when changing combinations of host devices and printers to be connected. Provided is an emulation device, comprising: a first conversion unit 31 which converts source command data which is generated with a printer driver 12 of a host device into interim command data which is formed from a printer-independent specific command architecture; and a second conversion unit 32 which converts the interim command data which is generated by the first conversion unit 31 to target command data which is formed from a command architecture which corresponds to a printer to be connected to the host device. Thus, it is possible to separately and efficiently carry out the development of an emulation program which corresponds to the first conversion unit 31 and the development of an emulation program which corresponds to the second conversion unit 32.

Description

エミュレーション装置およびエミュレーションプログラムEmulation device and emulation program
 本発明は、ホスト装置からプリンタに出力する印刷データのコマンド体系の変換を行うエミュレーション装置およびエミュレーションプログラムに関するものである。 The present invention relates to an emulation device and an emulation program for converting a command system of print data output from a host device to a printer.
 従来、ホスト装置のアプリケーションで編集した文書や画像をプリンタから印刷するシステムが多く用いられている。一般に、文書や画像は、アプリケーション固有の形式のファイルで保存され、オペレーティングシステム上で動作するプリンタドライバを介して、プリンタが解釈できる形式の印刷データに変換されて印刷される。 Conventionally, a system for printing a document or an image edited by an application of a host device from a printer is often used. In general, a document or an image is stored as a file in a format specific to an application, and is converted into print data in a format that can be interpreted by a printer via a printer driver that operates on an operating system.
 この印刷データへの変換にエミュレータ(エミュレーションドライバ)が用いられる場合もある。エミュレーションとは、データの意味を定義付けた各種コマンド体系のうち、ホスト装置が対応するコマンド体系をプリンタが解釈できるコマンド体系に変換することを意味する。一般に、1つのエミュレータは、ある特定の機種のプリンタをターゲットとしてコマンド体系の変換を行うものとして作られる。したがって、ホスト装置に接続するプリンタを変える場合は、変更後のプリンタに合わせてエミュレーションの記述を変更する必要がある。 An emulator (emulation driver) may be used for conversion to this print data. Emulation means converting a command system supported by the host device into a command system that can be interpreted by the printer among various command systems that define the meaning of data. In general, one emulator is created to convert a command system targeting a specific type of printer. Therefore, when changing the printer connected to the host device, it is necessary to change the description of the emulation according to the changed printer.
 従来、ホスト装置に接続するプリンタを変える場合に、ホスト装置のアプリケーション側の仕様や設定に変更を加えることなく、変更前のプリンタと同様の印刷出力を変更後のプリンタにおいて得られるようにした技術が提案されている(例えば、特許文献1参照)。 Conventionally, when the printer connected to the host device is changed, the same print output as that of the printer before the change can be obtained in the printer after the change without changing the specifications and settings on the application side of the host device. Has been proposed (see, for example, Patent Document 1).
 特許文献1に記載の印刷システムでは、プリンタAのプリンタドライバがインストールされたホスト装置に接続されているプリンタAを別のプリンタBに変える場合、ランゲージモニタプログラムおよび印刷データ変換プログラムをホスト装置に追加インストールする。そして、これらのプログラムを用いて、プリンタドライバにより生成されたプリンタAに対応した印刷データをいったん中間データ(ラスタ画像データ)に変換した後、当該中間データをプリンタBに対応した印刷データに更に変換するようにしている。 In the printing system described in Patent Document 1, when the printer A connected to the host device in which the printer driver of the printer A is installed is changed to another printer B, a language monitor program and a print data conversion program are added to the host device. install. Using these programs, the print data corresponding to the printer A generated by the printer driver is once converted into intermediate data (raster image data), and then the intermediate data is further converted into print data corresponding to the printer B. Like to do.
 特許文献1に記載の印刷システムによれば、追加インストールされたランゲージモニタプログラムおよび印刷データ変換プログラム(以下、これらをエミュレーションプログラムという)によって、プリンタAに対応した印刷データがプリンタBに対応した印刷データに変換されるので、ホスト装置のアプリケーション側に変更を加えることなく、変更前のプリンタAと同様の印刷出力を変更後のプリンタBにおいて再現することができる。 According to the printing system described in Patent Document 1, print data corresponding to printer A is converted to print data corresponding to printer B by an additionally installed language monitor program and print data conversion program (hereinafter referred to as emulation programs). Therefore, the print output similar to that of the printer A before the change can be reproduced in the printer B after the change without changing the application side of the host device.
特許第4627683号公報Japanese Patent No. 4627683
 しかしながら、上記特許文献1に記載の技術では、ホスト装置に接続するプリンタの種類数に応じて多数のエミュレーションプログラムが必要になるという問題があった。例えば、ホスト装置に接続するプリンタをプリンタAからプリンタCに変更する場合は、プリンタAに対応した印刷データをプリンタCに対応した印刷データに変換するためのエミュレーションプログラムを別途作成する必要がある。また、ホスト装置にプリンタDを接続する場合は、プリンタAに対応した印刷データからプリンタDに対応した印刷データに変換するためのエミュレーションプログラムが必要となる。 However, the technique described in Patent Document 1 has a problem that a large number of emulation programs are required depending on the number of types of printers connected to the host device. For example, when the printer connected to the host device is changed from the printer A to the printer C, it is necessary to separately create an emulation program for converting the print data corresponding to the printer A into the print data corresponding to the printer C. When the printer D is connected to the host device, an emulation program for converting print data corresponding to the printer A into print data corresponding to the printer D is required.
 さらに、例えばプリンタBに対応するプリンタドライバがホスト装置にインストールされている場合は、当該ホスト装置に接続するプリンタの種類に応じて、プリンタB→プリンタA、プリンタB→プリンタC、プリンタB→プリンタD、・・・といった多数のエミュレーションプログラムを作成する必要がある。このように、作成すべきエミュレーションプログラムが多数に上り、そのための開発に多くの時間とコストがかかるという問題があった。 Further, for example, when a printer driver corresponding to printer B is installed in the host device, printer B → printer A, printer B → printer C, printer B → printer, depending on the type of printer connected to the host device. It is necessary to create many emulation programs such as D,. As described above, there are many emulation programs to be created, and there is a problem that much time and cost are required for development.
 本発明は、このような問題を解決するために成されたものであり、接続するホスト装置とプリンタとの組み合わせを変更する場合に必要となるエミュレーションプログラムの開発を、より少ない工数で効率的に行うことができるようにすることを目的とする。 The present invention has been made to solve such problems, and it is possible to efficiently develop an emulation program required when changing the combination of a host device to be connected and a printer with less man-hours. The aim is to be able to do it.
 上記した課題を解決するために、本発明では、ホスト装置で生成された元のコマンドデータを、プリンタに依存しない特定のコマンド体系から成る中間のコマンドデータに変換する第1の変換部と、第1の変換部により生成された中間のコマンドデータを、ホスト装置に接続されるプリンタに対応したコマンド体系から成る目的のコマンドデータに変換する第2の変換部とを備える。 In order to solve the above-described problem, in the present invention, a first conversion unit that converts original command data generated by a host device into intermediate command data having a specific command system independent of a printer, A second conversion unit that converts intermediate command data generated by the first conversion unit into target command data having a command system corresponding to a printer connected to the host device.
 上記のように構成した本発明によれば、元のコマンドデータを中間のコマンドデータに変換する第1の変換部に対応したエミュレーションプログラムの開発と、中間のコマンドデータを目的のコマンドデータに変換する第2の変換部に対応したエミュレーションプログラムの開発とを分けて行うことが可能となる。しかも、中間のコマンドデータは、プリンタに依存しない特定のコマンド体系から成るため、第1の変換部に対応したエミュレーションプログラムを開発する際には、第2の変換部のことは全く意識しなくてもよい。同様に、第2の変換部に対応したエミュレーションプログラムを開発する際には、第1の変換部のことは全く意識しなくてもよい。 According to the present invention configured as described above, development of an emulation program corresponding to the first conversion unit for converting original command data into intermediate command data, and conversion of intermediate command data into target command data The development of the emulation program corresponding to the second conversion unit can be performed separately. Moreover, since the intermediate command data consists of a specific command system that does not depend on the printer, when developing an emulation program corresponding to the first conversion unit, the second conversion unit is completely unaware. Also good. Similarly, when developing an emulation program corresponding to the second conversion unit, the first conversion unit need not be conscious of at all.
 そして、あるプリンタXのコマンド体系(元のコマンドデータ)に対応して作成された第1の変換部と、あるプリンタYのコマンド体系(目的のコマンドデータ)に対応して作成された第2の変換部とを任意に組み合わせて適用すれば、プリンタXに対応したコマンドデータをプリンタYに対応したコマンドデータに変換することができる。このとき、プリンタX対応のコマンドデータ→プリンタY対応のコマンドデータという変換の組み合わせが新しいものであったとしても、第1の変換部、第2の変換部の少なくとも一方のエミュレーションプログラムが別の組み合わせで既に作成済みであれば、その作成済みのエミュレーションプログラムを新たに作成する必要はない。 A first conversion unit created corresponding to a command system (original command data) of a certain printer X and a second conversion unit created corresponding to a command system (target command data) of a certain printer Y If applied in any combination with the conversion unit, command data corresponding to the printer X can be converted into command data corresponding to the printer Y. At this time, even if the combination of conversion from the command data corresponding to the printer X to the command data corresponding to the printer Y is new, at least one of the emulation programs of the first conversion unit and the second conversion unit is a different combination. If already created, there is no need to newly create the created emulation program.
 以上のことから、本発明によれば、接続するホスト装置とプリンタとの組み合わせを変更する場合(ホスト装置に接続するプリンタを変更する場合や、プリンタに接続するホスト装置を変更する場合など)に必要となるエミュレーションプログラムの開発を、より少ない工数で効率的に行うことができるようになる。 As described above, according to the present invention, when the combination of the host device to be connected and the printer is changed (when changing the printer connected to the host device or changing the host device connected to the printer). The required emulation program can be developed efficiently with less man-hours.
本実施形態のエミュレーション装置を備えた印刷システムの全体の概略構成を示す図である。1 is a diagram illustrating an overall schematic configuration of a printing system including an emulation apparatus according to an embodiment. 本実施形態による印刷システムのハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of the printing system by this embodiment. 本実施形態によるホスト装置が記憶している各種プログラムおよび当該各種プログラムによる概略の動作例を示す図である。It is a figure which shows the rough operation example by the various programs which the host apparatus by this embodiment memorize | stores, and the said various programs. 本実施形態のエミュレータが備える機能構成例を示すブロック図である。It is a block diagram which shows the function structural example with which the emulator of this embodiment is provided. 第1の変換部による動作の具体例を説明するための図である。It is a figure for demonstrating the specific example of the operation | movement by a 1st conversion part. 第2の変換部による動作の具体例を説明するための図である。It is a figure for demonstrating the specific example of the operation | movement by a 2nd conversion part. 第2の変換部による動作の他の具体例を説明するための図である。It is a figure for demonstrating the other specific example of the operation | movement by a 2nd conversion part.
 以下、本発明の一実施形態を図面に基づいて説明する。図1は、本実施形態のエミュレーション装置を備えた印刷システムの全体の概略構成を示す図である。例えば、図1(a)に示すように、本実施形態による印刷システムは、ホスト装置10およびプリンタ20を備えて構成されている。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram illustrating an overall schematic configuration of a printing system including an emulation apparatus according to the present embodiment. For example, as shown in FIG. 1A, the printing system according to the present embodiment includes a host device 10 and a printer 20.
 ホスト装置10とプリンタ20との間は、シリアルケーブルあるいはEthernet(登録商標)などの有線のインタフェースケーブルによって接続されている。あるいは、ホスト装置10とプリンタ20との間をBluetooth(登録商標)あるいはWi-Fiなどの無線通信ネットワークを介して接続するようにしてもよい。 The host apparatus 10 and the printer 20 are connected by a serial interface or a wired interface cable such as Ethernet (registered trademark). Alternatively, the host device 10 and the printer 20 may be connected via a wireless communication network such as Bluetooth (registered trademark) or Wi-Fi.
 図1(a)に示す構成において、本実施形態のエミュレーション装置は、ホスト装置10が備えている。なお、図1(b)に示すように、プリンタ20に対してインタフェースカード20Aを着脱可能に構成し、インタフェースカード20Aが本実施形態によるエミュレーション装置の機能を備えるようにしてもよい。あるいは、図1(c)に示すように、ホスト装置10に対してインタフェースカード10Aを着脱可能に構成し、インタフェースカード10Aが本実施形態によるエミュレーション装置の機能を備えるようにしてもよい。 In the configuration shown in FIG. 1A, the host device 10 includes the emulation device of this embodiment. As shown in FIG. 1B, the interface card 20A may be configured to be detachable from the printer 20, and the interface card 20A may have the function of the emulation device according to the present embodiment. Alternatively, as illustrated in FIG. 1C, the interface card 10 </ b> A may be configured to be detachable from the host device 10, and the interface card 10 </ b> A may have the function of the emulation device according to the present embodiment.
 図2は、本実施形態による印刷システムのハードウェア構成を示す図である。なお、図2は、図1(a)のように印刷システムを構成した場合のハードウェア構成例を示している。 FIG. 2 is a diagram illustrating a hardware configuration of the printing system according to the present embodiment. FIG. 2 shows an example of the hardware configuration when the printing system is configured as shown in FIG.
 図2に示すように、ホスト装置10は、そのハードウェア構成として、CPU101、I/F102、液晶ディスプレイ等の表示部103、タッチパネル等の入力部104、ROM105、RAM106およびハードディスク107を備えている。CPU101は、ハードディスク107に記憶されたプログラムに従って、ホスト装置10の動作を制御する。特に、本実施形態では、CPU101は、アプリケーションプログラムによって生成された文書や画像等のデータを、プリンタ20が理解できるコマンド体系の印刷データに変換し、変換した印刷データをI/F102からプリンタ20に出力する。 As shown in FIG. 2, the host device 10 includes a CPU 101, an I / F 102, a display unit 103 such as a liquid crystal display, an input unit 104 such as a touch panel, a ROM 105, a RAM 106, and a hard disk 107 as its hardware configuration. The CPU 101 controls the operation of the host device 10 according to a program stored in the hard disk 107. In particular, in this embodiment, the CPU 101 converts data such as documents and images generated by the application program into print data of a command system that can be understood by the printer 20, and converts the converted print data from the I / F 102 to the printer 20. Output.
 また、プリンタ20は、そのハードウェア構成として、CPU201、I/F202、印刷部203、ROM204およびRAM205を備えている。CPU201は、ROM204またはRAM205に記憶されたプログラムに従って、プリンタ20の動作を制御する。特に、本実施形態では、ホスト装置10から送られてきた印刷データをI/F202にて受信し、当該印刷データで示されるコマンドに従って印刷部203により印刷を実行する。 The printer 20 includes a CPU 201, an I / F 202, a printing unit 203, a ROM 204, and a RAM 205 as hardware configurations. The CPU 201 controls the operation of the printer 20 according to a program stored in the ROM 204 or RAM 205. In particular, in this embodiment, print data sent from the host device 10 is received by the I / F 202, and printing is executed by the printing unit 203 in accordance with a command indicated by the print data.
 図3は、ホスト装置10のハードディスク107が記憶している各種プログラムおよび当該各種プログラムによる概略の動作例を示す図である。図3に示すように、ホスト装置10のハードディスク107は、アプリケーションプログラム(以下、単にアプリケーションと略す)11、プリンタドライバ12、エミュレーションプログラム(以下、エミュレータという)13およびポートドライバ14を記憶している。 FIG. 3 is a diagram showing various programs stored in the hard disk 107 of the host device 10 and an outline operation example by the various programs. As shown in FIG. 3, the hard disk 107 of the host device 10 stores an application program (hereinafter simply referred to as an application) 11, a printer driver 12, an emulation program (hereinafter referred to as an emulator) 13, and a port driver 14.
 なお、印刷システムを図1(b)のように構成する場合、ホスト装置10がアプリケーション11、プリンタドライバ12およびポートドライバ14を備え、プリンタ20に挿入されたインタフェースカード20Aがエミュレータ13を備える構成とする。この場合、プリンタドライバ12によって生成された印刷データは、ポートドライバ14を介してプリンタ20に送信され、エミュレータ13に供給される。 When the printing system is configured as shown in FIG. 1B, the host device 10 includes the application 11, the printer driver 12, and the port driver 14, and the interface card 20A inserted in the printer 20 includes the emulator 13. To do. In this case, the print data generated by the printer driver 12 is transmitted to the printer 20 via the port driver 14 and supplied to the emulator 13.
 また、印刷システムを図1(c)のように構成する場合、例えば、ホスト装置10がアプリケーション11、プリンタドライバ12およびポートドライバ14を備え、ホスト装置10に挿入されたインタフェースカード10Aがエミュレータ13を備える構成とすることが可能である。あるいは、ホスト装置10がアプリケーション11およびポートドライバ14を備え、インタフェースカード10Aがプリンタドライバ12およびエミュレータ13を備える構成とすることも可能である。あるいは、ポートドライバ14もインタフェースカード10Aが備えるようにしてもよい。 When the printing system is configured as shown in FIG. 1C, for example, the host device 10 includes the application 11, the printer driver 12, and the port driver 14, and the interface card 10A inserted into the host device 10 sets the emulator 13. It is possible to provide a configuration. Alternatively, the host device 10 may include the application 11 and the port driver 14, and the interface card 10A may include the printer driver 12 and the emulator 13. Alternatively, the port driver 14 may also be provided in the interface card 10A.
 印刷システムを図1(a)のように構成する場合、エミュレータ13を備えるホスト装置10は、本発明のエミュレーション装置に相当する。また、印刷システムを図1(c)のように構成し、ホスト装置10がエミュレータ13を備える場合も、ホスト装置10が本発明のエミュレーション装置に相当する。 When the printing system is configured as shown in FIG. 1A, the host device 10 including the emulator 13 corresponds to the emulation device of the present invention. Further, when the printing system is configured as shown in FIG. 1C and the host device 10 includes the emulator 13, the host device 10 corresponds to the emulation device of the present invention.
 これらの場合、エミュレータ13(本発明のエミュレーションプログラム)を例えばCD-ROMのような記録媒体に記録し、当該プログラムをホスト装置10に読み込ませることによって、ホスト装置10をエミュレーション装置として構築することが可能である。エミュレーションプログラムを記録する記録媒体としては、CD-ROM以外に、フレキシブルディスク、磁気テープ、光ディスク、光磁気ディスク、DVD、不揮発性メモリカード等を用いることができる。また、エミュレーションプログラムをインターネット等のネットワークを介してホスト装置10にダウンロードするようにしてもよい。 In these cases, the host device 10 can be constructed as an emulation device by recording the emulator 13 (the emulation program of the present invention) on a recording medium such as a CD-ROM and causing the host device 10 to read the program. Is possible. As a recording medium for recording the emulation program, a flexible disk, a magnetic tape, an optical disk, a magneto-optical disk, a DVD, a nonvolatile memory card, and the like can be used in addition to the CD-ROM. The emulation program may be downloaded to the host device 10 via a network such as the Internet.
 一方、図1(b)の構成において、インタフェースカード20Aがエミュレータ13を備える場合、または、図1(c)の構成において、インタフェースカード10Aがエミュレータ13を備える場合は、当該インタフェースカード10A,20Aが本発明のエミュレーション装置に相当する。この場合、エミュレータ13(本発明のエミュレーションプログラム)は、例えば、インタフェースカード10A,20A内にあらかじめインストールされている。図1(c)の構成の場合は、記録媒体またはインターネット等のネットワークを介してホスト装置10にダウンロードしたエミュレーションプログラムをインタフェースカード10A内に記録するようにしてもよい。 On the other hand, when the interface card 20A includes the emulator 13 in the configuration of FIG. 1B or when the interface card 10A includes the emulator 13 in the configuration of FIG. 1C, the interface cards 10A and 20A This corresponds to the emulation device of the present invention. In this case, the emulator 13 (the emulation program of the present invention) is installed in advance in the interface cards 10A and 20A, for example. In the case of the configuration of FIG. 1C, the emulation program downloaded to the host device 10 via a recording medium or a network such as the Internet may be recorded in the interface card 10A.
 本実施形態では、アプリケーション11の一例としてPOSアプリケーションを用い、レシート画像の印刷を行うものとする。この場合、アプリケーション11は、レシート画像を生成し、そのレシート画像と共に印刷指示をプリンタドライバ12に出力する。プリンタドライバ12は、ある機種のプリンタ20に対応したものであり、当該プリンタ20が理解できるコマンド体系に基づくコマンドデータから成る印刷データを生成して出力する。なお、プリンタドライバ12が生成する印刷データのコマンド体系を「第1のコマンド体系」とする。 In this embodiment, a POS application is used as an example of the application 11 and a receipt image is printed. In this case, the application 11 generates a receipt image and outputs a print instruction to the printer driver 12 together with the receipt image. The printer driver 12 corresponds to a printer 20 of a certain model, and generates and outputs print data composed of command data based on a command system that can be understood by the printer 20. Note that a command system of print data generated by the printer driver 12 is referred to as a “first command system”.
 すなわち、プリンタドライバ12は、アプリケーション11から供給されるレシート画像を、プリンタ20の機種に対応した第1のコマンド体系による印刷データ(デバイスに依存したコマンドデータ)に変換する。具体的には、プリンタドライバ12は、第1のコマンド体系に従って、プリンタ20において紙媒体にレシート画像を形成させるためのコマンドデータや、プリンタ20の印刷部203を制御するためのコマンドデータ(例えば、紙媒体のフィードやカット等を指示するコマンドデータ)を生成する。 That is, the printer driver 12 converts the receipt image supplied from the application 11 into print data (command data depending on the device) based on the first command system corresponding to the model of the printer 20. Specifically, in accordance with the first command system, the printer driver 12 uses command data for forming a receipt image on a paper medium in the printer 20 or command data for controlling the printing unit 203 of the printer 20 (for example, Command data for instructing feeding or cutting of a paper medium.
 プリンタドライバ12によって生成された印刷データは、エミュレータ13に供給される。エミュレータ13は、プリンタドライバ12から供給された印刷データ(元のコマンドデータ)を、任意のコマンド体系から成る印刷データ(目的のコマンドデータ)に変換する。ここで、任意のコマンド体系は、第1のコマンド体系であってもよいし、それ以外の第2のコマンド体系であってもよい。 The print data generated by the printer driver 12 is supplied to the emulator 13. The emulator 13 converts the print data (original command data) supplied from the printer driver 12 into print data (target command data) having an arbitrary command system. Here, the arbitrary command system may be the first command system or the other second command system.
 本実施形態において、エミュレータ13は、第1のコマンド体系から成る元のコマンドデータを、デバイス(プリンタ20)に依存しないコマンド体系から成る中間のコマンドデータにいったん変換する。そして、エミュレータ13は、変換した中間のコマンドデータを、第1のコマンド体系または第2のコマンド体系から成る目的のコマンドデータにさらに変換する。 In this embodiment, the emulator 13 once converts the original command data composed of the first command system into intermediate command data composed of a command system independent of the device (printer 20). Then, the emulator 13 further converts the converted intermediate command data into target command data having the first command system or the second command system.
 ここで、プリンタドライバ12に対応したプリンタ20がホスト装置10に接続されている場合、エミュレータ13は、プリンタドライバ12から供給された元のコマンドデータを、中間のコマンドデータにいったん変換した後、第1のコマンド体系から成る目的のコマンドデータに変換する。 When the printer 20 corresponding to the printer driver 12 is connected to the host device 10, the emulator 13 first converts the original command data supplied from the printer driver 12 into intermediate command data, It is converted into target command data consisting of one command system.
 一方、ホスト装置10に接続するプリンタ20を変更した場合には、エミュレータ13は、プリンタドライバ12から供給された元のコマンドデータを、中間のコマンドデータにいったん変換した後、変更後のプリンタ20に対応する第2のコマンド体系から成る目的のコマンドデータに変換する。この場合は、変更後のプリンタ20に対応したエミュレータ13を用意する必要がある。本実施形態では、この新たなエミュレータ13の開発を効率的に行うことができるようにしている。なお、その詳細については後述する。 On the other hand, when the printer 20 connected to the host apparatus 10 is changed, the emulator 13 once converts the original command data supplied from the printer driver 12 into intermediate command data, and then changes the printer 20 to the changed printer 20. The target command data consisting of the corresponding second command system is converted. In this case, it is necessary to prepare the emulator 13 corresponding to the printer 20 after the change. In the present embodiment, the new emulator 13 can be developed efficiently. Details thereof will be described later.
 エミュレータ13により生成された印刷データ(目的のコマンドデータ)は、ポートドライバ14を介してプリンタ20に送信される。このとき、ポートドライバ14は、エミュレータ13により生成された目的のコマンドデータを、アプリケーション11により指定されたポートを介してプリンタ20に送信する。 The print data (target command data) generated by the emulator 13 is transmitted to the printer 20 via the port driver 14. At this time, the port driver 14 transmits the target command data generated by the emulator 13 to the printer 20 via the port specified by the application 11.
 なお、上記のように、プリンタドライバ12に対応したプリンタ20がホスト装置10に接続されている場合、元のコマンドデータおよび目的のコマンドデータは、何れも第1のコマンド体系となる。この場合でも、プリンタドライバ12からコマンドデータを直接プリンタ20に出力せずに、エミュレータ13を介してコマンドデータを出力することにより、以下のようなメリットを得ることができる。 As described above, when the printer 20 corresponding to the printer driver 12 is connected to the host device 10, both the original command data and the target command data are in the first command system. Even in this case, the following advantages can be obtained by outputting the command data via the emulator 13 without directly outputting the command data from the printer driver 12 to the printer 20.
 第1に、多種多様なプリンタ接続が可能となる。すなわち、エミュレータ13の仕組みを導入することにより、同一のコマンド体系のプリンタを含む各種エミュレーション対応プリンタを自由に接続することができるようになる。第2に、同一コマンド体系のプリンタ間での互換性を確保することができる。例えば、同じコマンド体系のプリンタであっても、コマンド仕様に変更があると、旧仕様のコマンドに対応したプリンタを新仕様のコマンドに対応のプリンタに置き換えた場合は、コマンド変換が必要となるが、エミュレータ13を用いることで容易に置き換えが可能となる。 First, a wide variety of printer connections are possible. That is, by introducing the mechanism of the emulator 13, various emulation-compatible printers including printers having the same command system can be freely connected. Second, compatibility between printers of the same command system can be ensured. For example, even if a printer with the same command system is used, if the command specification is changed, command conversion is required if the printer corresponding to the old specification command is replaced with the printer corresponding to the new specification command. By using the emulator 13, the replacement can be easily performed.
 図4は、図3に示した本実施形態のエミュレータ13が備える機能構成例を示すブロック図である。図4に示すように、本実施形態のエミュレータ13は、その機能構成として、第1の変換部31および第2の変換部32を備えている。第1の変換部31および第2の変換部32は何れも、モジュール化されたプログラムによって実現される機能構成である。 FIG. 4 is a block diagram showing a functional configuration example provided in the emulator 13 of the present embodiment shown in FIG. As shown in FIG. 4, the emulator 13 of the present embodiment includes a first conversion unit 31 and a second conversion unit 32 as its functional configuration. Both the first conversion unit 31 and the second conversion unit 32 have a functional configuration realized by a modularized program.
 エミュレータ13は、第1の変換部31および第2の変換部32に対応したモジュールプログラムを登録して実装可能なプラットフォーム30を有しており、各モジュールプログラムをプラグインによってプラットフォーム30に登録または削除することが可能に構成されている。なお、プリンタドライバ12やポートドライバ14もモジュールプログラムで構成し、エミュレータ13と同じプラットフォーム30にプラグインによって登録または削除することを可能に構成してもよい。 The emulator 13 has a platform 30 on which module programs corresponding to the first conversion unit 31 and the second conversion unit 32 can be registered and mounted, and each module program is registered or deleted in the platform 30 by plug-in. It is configured to be able to. The printer driver 12 and the port driver 14 may also be configured as a module program, and may be configured to be registered or deleted by plug-in on the same platform 30 as the emulator 13.
 第1の変換部31は、プリンタドライバ12により生成された第1のコマンド体系から成る元のコマンドデータ(以下、元データと略すことがある)を、プリンタ20に依存しない特定のコマンド体系から成る中間のコマンドデータ(以下、中間データと略すことがある)に変換する。ここで、第1の変換部31は、元のコマンドデータに含まれる複数のコマンドの1つ1つを、特定のコマンド体系で表されるコマンドに逐次変換することにより、中間のコマンドデータを生成する。 The first conversion unit 31 includes original command data that is generated by the printer driver 12 and includes the first command system (hereinafter, may be abbreviated as original data), and includes a specific command system that does not depend on the printer 20. It is converted into intermediate command data (hereinafter abbreviated as intermediate data). Here, the first conversion unit 31 generates intermediate command data by sequentially converting each of a plurality of commands included in the original command data into commands represented by a specific command system. To do.
 また、第2の変換部32は、第1の変換部31により生成された中間のコマンドデータを、ホスト装置10に接続されるプリンタ20に対応したコマンド体系から成る目的のコマンドデータ(以下、目的データと略すことがある)に変換する。ここで、第2の変換部32は、中間のコマンドデータに含まれる複数のコマンドの1つ1つを、プリンタ20に対応したコマンド体系で表されるコマンドに逐次変換することにより、目的のコマンドデータを生成する。 Further, the second conversion unit 32 converts the intermediate command data generated by the first conversion unit 31 into target command data (hereinafter referred to as target command data) having a command system corresponding to the printer 20 connected to the host device 10. (May be abbreviated as data). Here, the second conversion unit 32 sequentially converts each of a plurality of commands included in the intermediate command data into a command represented by a command system corresponding to the printer 20, thereby obtaining a target command. Generate data.
 図5は、第1の変換部31による動作の具体例を説明するための図である。図5(a)は、プリンタドライバ12により生成された第1のコマンド体系から成る元データ(デバイスに依存したコマンドデータ)の一例を示している。また、図5(b)は、第1の変換部31により変換された特定のコマンド体系から成る中間データ(デバイスに依存しないコマンドデータ)の一例を示している。 FIG. 5 is a diagram for explaining a specific example of the operation by the first converter 31. FIG. 5A shows an example of original data (command data depending on the device) composed of the first command system generated by the printer driver 12. FIG. 5B shows an example of intermediate data (command data that does not depend on a device) composed of a specific command system converted by the first conversion unit 31.
 図5(a)のように、元データは、
 <ESC>@<ESC>i22Title<ESC>i00<CR><LF>Hello World<CR><LF><ESC>d2というデータであり、複数のコマンドが順に配列されたものとなっている。
As shown in FIG. 5A, the original data is
<ESC> @ <ESC> i22Title <ESC> i00 <CR><LF> Hello World <CR><LF><ESC> d2, and a plurality of commands are arranged in order.
 ここで、各コマンドの機能は以下の通りである。
・<ESC>@:プリンタ初期化
・<ESC>i22:縦3倍、横3倍の拡大文字指定
 iに続く数字が縦方向の拡大倍率を指定するものであり、例えば“0”=1倍~“3”=4倍を指定することが可能である。更にその後に続く数字が横方向の拡大倍率を指定するものであり、例えば“0”=1倍~“3”=4倍を指定することが可能である。
・Title:印刷する文字列
 この例では、“Title”の文字列が縦3倍、横3倍に拡大して印字されることになる。
・<ESC>i00:縦1倍、横1倍の拡大文字指定
・<CR><LF>:印字改行
・Hello World:印刷する文字列
 この例では、“Hello World”の文字列が縦1倍、横1倍の通常サイズで印字されることになる。
・<CR><LF>:印字改行
・<ESC>d2:用紙のフィードおよびカット
 これは、用紙をカッター位置までフィードしてカットすることを意味する。
Here, the function of each command is as follows.
-<ESC> @: Printer initialization-<ESC> i22: 3x vertical and 3x horizontal enlarged character designation The number following i specifies the vertical magnification, for example "0" = 1x “3” = 4 times can be specified. Further, the subsequent number designates the magnification in the horizontal direction. For example, “0” = 1 times to “3” = 4 times can be designated.
-Title: Character string to be printed In this example, the character string of "Title" is enlarged and printed three times in length and three times in width.
・ <ESC> i00: Specify the enlarged characters of 1 × vertical and 1 × horizontal ・ <CR><LF>: Print line feed ・ Hello World: Character string to be printed In this example, the character string of “Hello World” is 1 time vertically Thus, printing is performed with a normal size of 1 × horizontal.
・ <CR><LF>: Print line feed ・ <ESC> d2: Paper feed and cut This means that the paper is fed to the cutter position and cut.
 以上に示した元データの各コマンドは、第1の変換部31によって、図5(b)に示す中間データの各コマンドにそれぞれ変換される。変換された中間データの各コマンドは、元データの各コマンドと機能は同じであるが、表現形式が異なっている。図5(b)に示すように、中間データの個々のコマンドは、コマンドのタイプを表すデータ“type”と、パラメータの値を表すデータ“value”との組み合わせで構成される。この特定のコマンド体系による表現形式は、デバイスに依存しないものとなっている。元データの各コマンドと中間データの各コマンドとの対応関係は、以下の通りである。 Each command of the original data shown above is converted by the first conversion unit 31 into each command of the intermediate data shown in FIG. Each command of the converted intermediate data has the same function as each command of the original data, but the expression format is different. As shown in FIG. 5B, each command of the intermediate data is composed of a combination of data “type” representing the command type and data “value” representing the parameter value. The expression format by this specific command system is not dependent on the device. The correspondence between each command of the original data and each command of the intermediate data is as follows.
・<ESC>@
 →type:initialize          value:
・<ESC>i22
 →type:magnify height      value:2
  type:magnify width       value:2
 中間データでは、縦方向の拡大倍率と横方向の拡大倍率とを別々のコマンドとして分けて記述する。
・Title
 →type:text                value:Title
・<ESC>i00
 →type:magnify height      value:0
  type:magnify width       value:0
・<CR><LF>
 →newline                   value:0
・Hello World
 →type:text                value:Hello World
・<CR><LF>
 →newline                   value:0
・<ESC>d2
 →type:feed                value:cutter
  type:cut                 value:100%
 中間データでは、フィードとカットとを別々のコマンドとして分けて記述する。
・ <ESC> @
→ type: initialize value:
・ <ESC> i22
→ type: magnify height value: 2
type : magnify width value : 2
In the intermediate data, the vertical magnification and the horizontal magnification are described separately as separate commands.
・ Title
→ type: text value: Title
・ <ESC> i00
→ type: magnify height value: 0
type : magnify width value : 0
・ <CR><LF>
→ newline value: 0
・ Hello World
→ type: text value: Hello World
・ <CR><LF>
→ newline value: 0
・ <ESC> d2
→ type: feed value: cutter
type: cut value: 100%
In the intermediate data, feed and cut are described separately as separate commands.
 図6は、第2の変換部32による動作の具体例を説明するための図である。図6(a)は、第1の変換部31により生成された特定のコマンド体系から成る中間データ(図5(b)に示したものと同じ)を示している。また、図6(b)は、第2の変換部32により変換された目的データの一例を示している。図6(b)では、目的データのコマンド体系の一例として、元データと同じ第1のコマンド体系を示している。 FIG. 6 is a diagram for explaining a specific example of the operation by the second conversion unit 32. FIG. 6A shows intermediate data (same as that shown in FIG. 5B) composed of a specific command system generated by the first conversion unit 31. FIG. 6B shows an example of target data converted by the second conversion unit 32. FIG. 6B shows the same first command system as the original data as an example of the command system of the target data.
 例えば、プリンタ20の機種に対応したプリンタドライバ12がホスト装置10にインストールされていて、そのプリンタ20をホスト装置10にそのまま接続して使用する場合は、第1のコマンド体系から成る元データを中間データにいったん変換し、それを更に第1のコマンド体系から成る目的データに変換することになる。この場合における中間データの各コマンドと目的データの各コマンドとの対応関係は、以下の通りである。 For example, when the printer driver 12 corresponding to the model of the printer 20 is installed in the host device 10 and the printer 20 is connected to the host device 10 as it is, the original data consisting of the first command system is intermediate. Once converted into data, it is further converted into target data consisting of a first command system. In this case, the correspondence between each command of intermediate data and each command of target data is as follows.
・type:initialize            value:
 →<ESC>@:プリンタ初期化
・type:magnify height        value:2
 →<ESC>h2:縦3倍の拡大文字指定
・type:magnify width         value:2
 →<ESC>w2:横3倍の拡大文字指定
・type:text                  value:Title
 →Title:印刷する文字列
・type:magnify height        value:0
 →<ESC>h0:縦1倍の拡大文字指定
・type:magnify width         value:0
 →<ESC>w0:横1倍の拡大文字指定
・newline                     value:0
 →<CR><LF>:印字改行
・type:text                  value:Hello World
 →Hello World:印刷する文字列
・newline                     value:0
 →<CR><LF>:印字改行
・type:feed                  value:cutter
 →<ESC>j:用紙をカッター位置までフィード
・type:cut                   value:100%
 →<ESC>d0:用紙をカット
・ Type: initialize value:
→ <ESC> @: Printer initialization ・ type: magnify height value: 2
→ <ESC> h2: 3 times the enlarged character designation ・ type: magnify width value: 2
→ <ESC> w2: 3 times horizontal expanded character specification type: text value: Title
→ Title: Character string to be printed ・ type: magnify height value: 0
→ <ESC> h0: Specify the enlarged character of 1x length ・ type: magnify width value: 0
→ <ESC> w0: 1x horizontal expanded character designation ・ newline value: 0
→ <CR><LF>: Print line feed ・ type: text value: Hello World
-> Hello World: Character string to print-newline value: 0
→ <CR><LF>: Print line feed ・ type: feed value: cutter
→ <ESC> j: Feeds the paper to the cutter position ・ type: cut value: 100%
→ <ESC> d0: Cut the paper
 なお、図5(a)に示した元のコマンドデータと、図6(b)に示した目的のコマンドデータとは共に第1のコマンド体系によるものであるが、一部コマンドの内容が変わっている。これは、元データから中間データに変換する際に、1つのコマンドを2つに分けて記述した後、中間データから目的データに変換する際に、上記のように分けられた2つのコマンドをそれぞれ元データのコマンド体系に変換したからである。コマンドが一部相違しているものの、どちらのコマンドデータに基づいて印刷を実行しても、印刷結果は全く同じものとなる。 The original command data shown in FIG. 5 (a) and the target command data shown in FIG. 6 (b) are both based on the first command system, but the contents of some commands have changed. Yes. This is because, when converting from the original data to the intermediate data, one command is divided into two, and then when converting from the intermediate data to the target data, the two commands divided as described above are respectively This is because it has been converted to the original data command system. Although the commands are partially different, the printing result is exactly the same regardless of which command data is used for printing.
 図7は、第2の変換部32による動作の他の具体例を説明するための図である。図7(a)は、第1の変換部31により生成された特定のコマンド体系から成る中間データ(図5(b)に示したものと同じ)を示している。また、図7(b)は、第2の変換部32により変換された目的データの一例を示している。図7(b)では、目的データの一例として、第1のコマンド体系とは異なる第2のコマンド体系(HTML形式のコマンド体系)を示している。 FIG. 7 is a diagram for explaining another specific example of the operation by the second conversion unit 32. FIG. 7A shows intermediate data (same as that shown in FIG. 5B) composed of a specific command system generated by the first conversion unit 31. FIG. 7B shows an example of target data converted by the second conversion unit 32. FIG. 7B shows a second command system (HTML format command system) different from the first command system as an example of the target data.
 例えば、第1のコマンド体系に対応したプリンタドライバ12がインストールされているホスト装置10において、接続するプリンタ20を変更した場合は、変更後のプリンタ20に対応する第2の変換部32のモジュールプログラムをプラグインによりプラットフォーム30に登録することにより、第2の変換部32を差し替える。そして、プラットフォーム30に元々登録されている第1の変換部31により変換された中間データを、上記のように新たに登録した第2の変換部32によって第2のコマンド体系(HTML形式のコマンド体系)から成る目的データに変換する。この場合における中間データの各コマンドと目的データの各コマンドとの対応関係は、以下の通りである。 For example, when the printer 20 to be connected is changed in the host device 10 in which the printer driver 12 corresponding to the first command system is installed, the module program of the second conversion unit 32 corresponding to the changed printer 20 Is registered in the platform 30 by a plug-in to replace the second conversion unit 32. Then, the intermediate data converted by the first conversion unit 31 originally registered in the platform 30 is converted into the second command system (HTML format command system) by the second conversion unit 32 newly registered as described above. ). In this case, the correspondence between each command of intermediate data and each command of target data is as follows.
・type:initialize            value:
 →<html><body>:プリンタ初期化
・type:magnify height        value:2
 type:magnify width         value:2
 →<h1>:タイトル指定
 中間データの拡大文字指定に関する2つのコマンドによりタイトル開始の書式と認識し、<h1>のタグを生成する。
・type:text                  value:Title
 →Title:印刷する文字列
・type:magnify height        value:0
 type:magnify width         value:0
 →</h1>:タイトル指定解除
 中間データの拡大文字指定に関する2つのコマンドによりタイトル終了の書式と認識し、</h1>のタグを生成する。
・newline                     value:0
 →<p>:印字改行
・type:text                  value:Hello World
 →Hello World:印刷する文字列
・newline                     value:0
 →</p>:印字改行
・type:feed                  value:cutter
 type:cut                   value:100%
 →</body></html>
 feed とcutによりドキュメントの終了と認識し、</body></html>のタグを生成する。
・ Type: initialize value:
→ <html><body>: Printer initialization ・ type: magnify height value: 2
type : magnify width value : 2
-><H1>: Title specification It recognizes the format of the title start by two commands related to the expansion character specification of the intermediate data, and generates a tag of <h1>.
-Type: text value: Title
→ Title: Character string to be printed ・ type: magnify height value: 0
type : magnify width value : 0
→ </ h1>: Canceling title designation Two commands related to the designation of enlarged characters in intermediate data are recognized as the title end format, and a tag </ h1> is generated.
・ Newline value: 0
→ <p>: Print line feed ・ type: text value: Hello World
-> Hello World: Character string to print-newline value: 0
→ </ p>: Print line feed ・ type: feed value: cutter
type: cut value: 100%
→ </ body></html>
Recognize the end of the document with feed and cut, and generate a </ body></html> tag.
 以上詳しく説明したように、本実施形態によれば、元データを中間データに変換する第1の変換部31に対応したモジュールプログラムの開発と、中間データを目的データに変換する第2の変換部32に対応したモジュールプログラムの開発とを分けて行うことが可能となる。しかも、中間のコマンドデータは、プリンタ20に依存しない特定のコマンド体系から成るため、第1の変換部31に対応したモジュールプログラムを開発する際には、第2の変換部32のことは全く意識しなくてもよい。同様に、第2の変換部32に対応したモジュールプログラムを開発する際には、第1の変換部31のことは全く意識しなくてもよい。 As described above in detail, according to the present embodiment, development of a module program corresponding to the first conversion unit 31 that converts original data into intermediate data, and the second conversion unit that converts intermediate data into target data. It is possible to separately perform development of a module program corresponding to 32. In addition, since the intermediate command data consists of a specific command system that does not depend on the printer 20, when developing a module program corresponding to the first conversion unit 31, the second conversion unit 32 is completely conscious. You don't have to. Similarly, when developing a module program corresponding to the second conversion unit 32, the first conversion unit 31 need not be conscious of at all.
 そして、元データのコマンド体系に対応して作成された第1の変換部31と、目的データのコマンド体系に対応して作成された第2の変換部32とを任意に組み合わせてプラットフォーム30に登録すれば、第1のコマンド体系による元のコマンドデータを第2のコマンド体系に対応した目的のコマンドデータに変換することができる。 Then, the first conversion unit 31 created corresponding to the command system of the original data and the second conversion unit 32 created corresponding to the command system of the target data are arbitrarily registered and registered in the platform 30 Then, the original command data based on the first command system can be converted into the target command data corresponding to the second command system.
 このとき、第1のコマンド体系→第2のコマンド体系という変換の組み合わせが新しいものであったとしても、第1のコマンド体系に対応した第1の変換部31のモジュールプログラムまたは第2のコマンド体系に対応した第2の変換部32のモジュールプログラムが別の組み合わせで既に作成済みであれば、第1の変換部31または第2の変換部32に対応したモジュールプログラムを新たに作成する必要はない。 At this time, even if the combination of the conversion from the first command system to the second command system is new, the module program of the first conversion unit 31 corresponding to the first command system or the second command system If the module program of the second conversion unit 32 corresponding to is already created in another combination, there is no need to newly create a module program corresponding to the first conversion unit 31 or the second conversion unit 32. .
 例えば、図6および図7で例示したように、ホスト装置10に接続するプリンタ20を変更した場合、第2の変換部32に対応するモジュールプログラムを新たにプラットフォーム30に登録すればよく、第1の変換部31のモジュールプログラムはそのまま利用することができる。 For example, as illustrated in FIGS. 6 and 7, when the printer 20 connected to the host device 10 is changed, a module program corresponding to the second conversion unit 32 may be newly registered in the platform 30. The module program of the conversion unit 31 can be used as it is.
 また、図面による例示はしていないが、プリンタ20に接続するホスト装置10を変更する場合、すなわち、第1のコマンド体系とは異なるコマンド体系に対応したプリンタドライバ12がインストールされたホスト装置10にプリンタ20を接続する場合は、第1の変換部31に対応するモジュールプログラムを新たにプラットフォーム30に登録すればよく、第2の変換部32のモジュールプログラムはそのまま利用することができる。 Although not illustrated in the drawings, when the host device 10 connected to the printer 20 is changed, that is, in the host device 10 in which the printer driver 12 corresponding to a command system different from the first command system is installed. When the printer 20 is connected, a module program corresponding to the first conversion unit 31 may be newly registered in the platform 30, and the module program of the second conversion unit 32 can be used as it is.
 さらに言えば、接続するホスト装置10とプリンタ20との組み合わせを変更した場合、その組み合わせが新しいものであれば、従来はその新しい組み合わせに係るエミュレーションプログラムを新たに開発する必要があった。これに対して、本実施形態によれば、第1のコマンド体系と第2のコマンド体系との組み合わせが新しいものであっても、第1のコマンド体系に対応する第1の変換部31のモジュールプログラムと第2のコマンド体系に対応する第2の変換部32のモジュールプログラムとが個別に作成済みであれば、それらを組み合わせてプラットフォーム30に登録するだけでよく、エミュレーションプログラムの新たな開発は全く不要である。 Furthermore, when the combination of the host device 10 and the printer 20 to be connected is changed, if the combination is new, it has conventionally been necessary to newly develop an emulation program related to the new combination. On the other hand, according to this embodiment, even if the combination of the first command system and the second command system is new, the module of the first conversion unit 31 corresponding to the first command system If the program and the module program of the second conversion unit 32 corresponding to the second command system have been created individually, they need only be registered in the platform 30 by combining them, and new development of the emulation program is completely possible. It is unnecessary.
 以上のことから、本実施形態によれば、ホスト装置10に接続するプリンタ20を変更する場合や、プリンタ20に接続するホスト装置10を変更する場合などに必要となるエミュレーションプログラムの開発を、より少ない工数で効率的に行うことができるようになる。 From the above, according to the present embodiment, the development of an emulation program necessary for changing the printer 20 connected to the host device 10 or changing the host device 10 connected to the printer 20 is further improved. It becomes possible to carry out efficiently with less man-hours.
 なお、上記実施形態では、コマンドのタイプを表すデータ“type”と、パラメータの値を表すデータ“value”との組み合わせによって中間のコマンドデータを記述する例について説明したが、表現形式はこれに限定されない。要は、特定のデバイスに依存しない表現形式で、所定のルールに従ってコマンドの内容を意味づけできる形式のコマンド体系であれば適用することが可能である。 In the above-described embodiment, an example in which intermediate command data is described by a combination of data “type” representing a command type and data “value” representing a parameter value has been described. However, the expression format is limited to this. Not. In short, any command system that can express the contents of a command according to a predetermined rule in an expression format that does not depend on a specific device can be applied.
 また、上記実施形態では、ホスト装置10に接続するプリンタ20を変更する場合や、プリンタ20に接続するホスト装置10を変更する場合を例に挙げて、第1の変換部31または第2の変換部32を変更して適用する例について説明したが、このようなケースに限定されない。例えば、複数のコマンド体系に対応可能なプリンタ20において、使用するコマンド体系を切り替えるようなケースにも本発明を適用することが可能である。また、複数のコマンド体系に対応したプリンタドライバ12がインストールされているホスト装置10において、使用するプリンタドライバ12を切り替えるようなケースにも本発明を適用することが可能である。 Moreover, in the said embodiment, the case where the printer 20 connected to the host device 10 is changed or the case where the host device 10 connected to the printer 20 is changed is taken as an example, and the first conversion unit 31 or the second conversion is performed. Although the example which changes and applies the part 32 was demonstrated, it is not limited to such a case. For example, the present invention can be applied to a case where the command system to be used is switched in the printer 20 that can handle a plurality of command systems. Further, the present invention can be applied to a case where the printer driver 12 to be used is switched in the host device 10 in which the printer driver 12 corresponding to a plurality of command systems is installed.
 また、上記実施形態では、プラットフォーム30に登録する第1の変換部31または第2の変換部32を差し替える形で適用する例について説明したが、本発明はこれに限定されない。例えば、複数種類のコマンド体系に対応した第1の変換部31をプラットフォーム30に登録しておき、何れか1つを任意に選択して適用できるようにしてもよい。同様に、複数種類のコマンド体系に対応した第2の変換部32をプラットフォーム30に登録しておき、何れか1つを任意に選択して適用できるようにしてもよい。 In the above embodiment, the example in which the first conversion unit 31 or the second conversion unit 32 registered in the platform 30 is replaced is described, but the present invention is not limited to this. For example, the first conversion unit 31 corresponding to a plurality of types of command systems may be registered in the platform 30, and any one may be arbitrarily selected and applied. Similarly, the second conversion unit 32 corresponding to a plurality of types of command systems may be registered in the platform 30, and any one may be arbitrarily selected and applied.
 また、上記実施形態では、図5~図7において、テキスト文字を印字するといった極めてシンプルな例を説明したが、印刷例はこれに限定されない。例えば、テキスト文字の他に、所定の画像やバーコードといったテンプレートによる構成要素を挿入したドキュメントを印刷することも可能である。この場合、中間データにおいてテンプレートは、例えば以下のように記述する。ここで、“value”の値は、テンプレートの画像の格納場所を示すアドレスである。
 type:template1       value:Address
In the above embodiment, an extremely simple example in which text characters are printed in FIGS. 5 to 7 has been described, but the printing example is not limited to this. For example, in addition to text characters, it is also possible to print a document in which constituent elements such as predetermined images and barcodes are inserted. In this case, the template in the intermediate data is described as follows, for example. Here, the value of “value” is an address indicating the storage location of the template image.
type: template1 value: Address
 また、テンプレート内に差込印刷するフィールドがある場合は、例えば以下のように記述することが可能である。
 type:template1       value:Address
 type:field1          value:MILK
 type:field2          value:$8.99
この例では、“template1”で表されるテンプレート内の2つのフィールドに、“MILK”および“$8.99”という値を差し込んで印刷することを意味している。
Further, when there is a field to be inserted and printed in the template, it can be described as follows, for example.
type: template1 value: Address
type: field1 value: MILK
type: field2 value: $ 8.99
In this example, this means that printing is performed by inserting values of “MILK” and “$ 8.99” into two fields in the template represented by “template1”.
 また、上記実施形態では、ホスト装置10にインストールされているアプリケーション11がPOSアプリケーションで、プリンタ20がレシート画像を印刷するものである例について説明したが、本発明はこれに限定されない。すなわち、アプリケーション11は任意のものを適用することが可能であり、プリンタ20も任意のものを適用することが可能である。 In the above embodiment, an example has been described in which the application 11 installed in the host device 10 is a POS application and the printer 20 prints a receipt image. However, the present invention is not limited to this. In other words, any application 11 can be applied, and any printer 20 can be applied.
 また、上記実施形態では、第2の変換部32により変換された目的のコマンドデータに従って、プリンタ20によって紙媒体に印刷を実行する例について説明したが、本発明はこれに限定されない。例えば、印刷出力イメージをPDF(Portable Document Format)のファイルに出力するようにしてもよい。この場合、目的のコマンドデータに対応する第2のコマンド体系は、印刷イメージをPDFファイルに出力するためのコマンド体系となる。 In the above embodiment, an example has been described in which printing is performed on a paper medium by the printer 20 in accordance with target command data converted by the second conversion unit 32, but the present invention is not limited to this. For example, the print output image may be output to a PDF (Portable Document Format) file. In this case, the second command system corresponding to the target command data is a command system for outputting a print image to a PDF file.
 また、上記実施形態では、ホスト装置10にインストールされているプリンタドライバ12とは別にエミュレータ13を備える構成について説明したが、本発明はこれに限定されない。例えば、エミュレータ13がプリンタドライバ12の中にビルトインされた構成としてもよい。 In the above embodiment, the configuration in which the emulator 13 is provided separately from the printer driver 12 installed in the host device 10 has been described, but the present invention is not limited to this. For example, the emulator 13 may be built in the printer driver 12.
 その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。 In addition, each of the above-described embodiments is merely an example of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the gist or the main features thereof.
 10 ホスト装置
 10A インタフェースカード
 11 アプリケーション
 12 プリンタドライバ
 13 エミュレータ
 14 ポートドライバ
 20 プリンタ
 30 プラットフォーム
 31 第1の変換部
 32 第2の変換部
DESCRIPTION OF SYMBOLS 10 Host apparatus 10A Interface card 11 Application 12 Printer driver 13 Emulator 14 Port driver 20 Printer 30 Platform 31 1st conversion part 32 2nd conversion part

Claims (5)

  1.  ホスト装置で生成された元のコマンドデータを、プリンタに依存しない特定のコマンド体系から成る中間のコマンドデータに変換する第1の変換部と、
     上記第1の変換部により生成された上記中間のコマンドデータを、上記ホスト装置に接続されるプリンタに対応したコマンド体系から成る目的のコマンドデータに変換する第2の変換部とを備えたことを特徴とするエミュレーション装置。
    A first conversion unit that converts original command data generated by the host device into intermediate command data having a specific command system independent of the printer;
    A second conversion unit that converts the intermediate command data generated by the first conversion unit into target command data having a command system corresponding to a printer connected to the host device. A featured emulation device.
  2.  上記第1の変換部に対応したモジュールプログラムおよび上記第2の変換部に対応したモジュールプログラムを登録して実装可能なプラットフォームを有し、上記モジュールプログラムを上記プラットフォームにプラグインにより登録または削除可能に構成したことを特徴とする請求項1に記載のエミュレーション装置。 It has a platform on which a module program corresponding to the first conversion unit and a module program corresponding to the second conversion unit can be registered and mounted, and the module program can be registered in or deleted from the platform by a plug-in The emulation device according to claim 1, wherein the emulation device is configured.
  3.  上記第1の変換部は、上記元のコマンドデータに含まれる複数のコマンドの1つ1つを、上記特定のコマンド体系で表されるコマンドに逐次変換することにより、上記中間のコマンドデータを生成することを特徴とする請求項1に記載のエミュレーション装置。 The first conversion unit generates the intermediate command data by sequentially converting each of a plurality of commands included in the original command data into a command represented by the specific command system. The emulation device according to claim 1, wherein:
  4.  上記第2の変換部は、上記中間のコマンドデータに含まれる複数のコマンドの1つ1つを、上記ホスト装置に接続されるプリンタに対応したコマンド体系で表されるコマンドに逐次変換することにより、上記目的のコマンドデータを生成することを特徴とする請求項3に記載のエミュレーション装置。 The second conversion unit sequentially converts each of a plurality of commands included in the intermediate command data into a command represented by a command system corresponding to a printer connected to the host device. 4. The emulation apparatus according to claim 3, wherein the command data for the purpose is generated.
  5.  ホスト装置で生成された元のコマンドデータを、プリンタに依存しない特定のコマンド体系から成る中間のコマンドデータに変換する第1の変換手段、および
     上記第1の変換手段により生成された上記中間のコマンドデータを、上記ホスト装置に接続されるプリンタに対応したコマンド体系から成る目的のコマンドデータに変換する第2の変換手段
    としてコンピュータを機能させるためのコンピュータ読み取り可能なエミュレーションプログラム。
    First conversion means for converting original command data generated by the host device into intermediate command data having a specific command system independent of the printer, and the intermediate command generated by the first conversion means A computer-readable emulation program for causing a computer to function as second conversion means for converting data into target command data having a command system corresponding to a printer connected to the host device.
PCT/JP2016/055785 2015-08-31 2016-02-26 Emulation device and emulation program WO2017038118A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-170510 2015-08-31
JP2015170510A JP2017049654A (en) 2015-08-31 2015-08-31 Emulation device and emulation program

Publications (1)

Publication Number Publication Date
WO2017038118A1 true WO2017038118A1 (en) 2017-03-09

Family

ID=58186988

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/055785 WO2017038118A1 (en) 2015-08-31 2016-02-26 Emulation device and emulation program

Country Status (2)

Country Link
JP (1) JP2017049654A (en)
WO (1) WO2017038118A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325087A (en) * 2000-05-12 2001-11-22 Seiko Epson Corp Command analysis utilizing rewritable command storing part
JP2012173999A (en) * 2011-02-22 2012-09-10 Seiko Epson Corp Program for changing printer, method for changing printer, and host device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325087A (en) * 2000-05-12 2001-11-22 Seiko Epson Corp Command analysis utilizing rewritable command storing part
JP2012173999A (en) * 2011-02-22 2012-09-10 Seiko Epson Corp Program for changing printer, method for changing printer, and host device

Also Published As

Publication number Publication date
JP2017049654A (en) 2017-03-09

Similar Documents

Publication Publication Date Title
JP3873427B2 (en) Intermediate file processing apparatus in printer control system and recording medium recorded with control program thereof
JP2007034795A (en) Information processor, information processing method and print control program
JP2018147259A (en) Information processing device, program, storage medium, and information processing method
JP4627683B2 (en) Printing system, printing system control method and program
CN106371776B (en) Printer driver and information processing apparatus
US20150302280A1 (en) Data processing apparatus, recording apparatus and control method of the data processing apparatus
JP5446852B2 (en) Print processing apparatus, print processing program, and print processing method
WO2017038118A1 (en) Emulation device and emulation program
US20110007353A1 (en) Image forming apparatus and computer readable medium
JP6060534B2 (en) Image processing apparatus, image processing system, and printing method
JP2012022680A (en) Method for outputting document data sectioned by page, and computer program product
JP6330790B2 (en) Print control system, print control apparatus, and program
JP2007025845A (en) Printer control method and program
JP2009269179A (en) Printer, program and recording medium
US10062019B2 (en) Method, device and computer program product for processing print data to generate a print image on a print substrate
JP2005275545A (en) Document print controller, document print control method and document print control program
JP6421541B2 (en) Printing apparatus, printing apparatus control method, and printing system
JP2020144807A (en) Information processing device and control method thereof, and program
JP5171400B2 (en) Image forming apparatus and image forming program
JP4506371B2 (en) Image forming method and image forming apparatus
JP2006338412A (en) Method of installing print data output program, and program
JP4118834B2 (en) Printer control program and printer control apparatus
KR100528863B1 (en) Printer capable of extracting text data, and method for extracting text data thereof
JP2016043522A (en) Information processing device, information processing method, information processing program, and storage medium
JP2020027476A (en) Image formation device, control method therefor, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16841151

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16841151

Country of ref document: EP

Kind code of ref document: A1