Printer and print method
The printing device and method address the challenge of varying command cancellation in label printers by implementing a system to determine and cancel associated non-print commands with print commands, ensuring accurate and resource-efficient operation.
Patent Information
- Application Number
- JP2023149898
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-15
- Publication Date
- 2025-03-28
AI Technical Summary
Label printers face challenges in accurately canceling commands due to varying format configurations across different middleware and applications, leading to unintended cancellation results.
A printing device and method that include a reception unit for accepting print and non-print commands, a judgment unit to determine command relationships, a printing unit for executing print commands, and a cancellation unit that cancels non-print commands associated with print commands upon user instruction.
This solution ensures that non-print commands are properly canceled along with print commands, preventing unnecessary consumption of resources and ensuring intended cancellation results, even when command group configurations differ.
Smart Images

Figure 2025042774000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a printing apparatus and a printing method. [Background technology]
[0002] Conventionally, in addition to printing from a driver provided by the manufacturer, label printers have been able to print using methods such as middleware, command direct, and RIP, and these printing methods achieve printing by using printer control commands (e.g., ESC / Label, etc.) Patent Document 1 describes how form data is created in a form overlay printing device according to a description language. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 9-254483 Summary of the Invention [Problem to be solved by the invention]
[0004] Printer control commands have units called formats that indicate groups of commands. Developers who create middleware and applications can freely design the command configuration within a format. Therefore, how multiple commands that cause the printer to perform the same operation are written to belong to a format can differ depending on the type of middleware or application. However, label printers have a cancellation function on a format basis, and there was a problem in that the range of commands that can be canceled changes depending on the format configuration. [Means for solving the problem]
[0005] A printing device that solves the above problems includes an acceptance unit that accepts print commands and non-print commands as commands belonging to different command groups, a judgment unit that judges whether the print commands and non-print commands of the different command groups are related to each other, a printing unit that causes a printing mechanism to print in accordance with the print commands, and a cancellation unit that, in response to accepting an instruction to cancel a print command, cancels the non-print commands that are determined to be related to the print command together with the print command.
[0006] A printing method for solving the above problems includes accepting print commands and non-print commands as commands belonging to different command groups, determining whether the print commands and non-print commands of the different command groups are related to each other, causing a printing mechanism to print in accordance with the print commands, and, upon receiving an instruction to cancel a print command, canceling the non-print commands determined to be related to the print command together with the print command. [Brief description of the drawings]
[0007] [Figure 1] FIG. [Diagram 2] FIG. 11 is a diagram showing an example of a command transmitted from the host device. [Diagram 3] FIG. 13 is a diagram showing an example of an association setting screen. [Figure 4] 13 is a flowchart of a setting process. [Diagram 5] 13 is a flowchart of an automatic association process. [Figure 6] FIG. 13 is a diagram showing an example of command reconstruction. [Figure 7] FIG. 13 is a diagram showing an example of command reconstruction. [Figure 8] 13 is a flowchart of a cancellation process. [Figure 9] 13 is a flowchart of a manual association process. [Figure 10] 13 is a flowchart of a manual association sub-process. [Figure 11] FIG. 13 is a diagram showing an example of command reconstruction. [Figure 12] FIG. 13 is a diagram showing an example of command reconstruction. [Figure 13] FIG. 13 is a diagram showing an example of a cancellation target notification screen. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] Here, the embodiments of the present invention will be described in the following order. (1) Printer configuration: (2) Association settings: (3) Executing and canceling commands: (4) Other embodiments:
[0009] (1) Printer configuration: FIG. 1 is a block diagram showing the configuration of a printing device 10 according to an embodiment of the present invention. The printing device 10 of this embodiment is a label printer that prints on labels. The printing device 10 includes a processor 20, a non-volatile memory 30, a UI unit 40, a communication unit 50, and a printing mechanism 60. The processor 20 includes a CPU, a ROM, a RAM, etc. (not shown), and can execute various programs recorded in the non-volatile memory 30 to control each part of the printing device 10. The processor 20 may be configured as a single chip or multiple chips. For example, an ASIC may be used instead of the CPU, or the CPU and the ASIC may work together.
[0010] The communication unit 50 includes a communication interface for communicating with external devices according to various wired or wireless communication protocols. The communication unit 50 also includes an interface for communicating with various removable memories attached to the printing device 10. The printing device 10 is capable of communicating with the host device 100 via the communication unit 50. The host device 100 is a terminal that can issue printing instructions to the printing device 10 and perform various settings related to the printing device 10, such as a PC or a tablet.
[0011] The printing mechanism 60 prints content on a print medium under the control of the processor 20. In this embodiment, it is assumed that the printing device 10 is a label printer, the printing method in the printing mechanism 60 is inkjet printing, and the print medium is roll paper. The printing mechanism 60 includes actuators and various devices, sensors, drive circuits, mechanical parts, etc. for printing on the print medium. The printing mechanism 60 may be configured to be able to realize various functions related to printing. For example, in this embodiment, the printing mechanism 60 includes a cutting mechanism that cuts the roll paper, and a feed mechanism that transports the roll paper.
[0012] The UI unit 40 includes a touch panel display, various keys and switches, a buzzer, and the like. The touch panel display includes a display panel that displays various information based on the control of the processor 20, and a touch detection panel overlaid on the display panel, and detects touch operations by a human finger or the like. The processor 20 can also display various information on the display of the UI unit 40 and notify the user. The keys provided on the UI unit 40 include a cancel button for inputting a cancel instruction by the user. The processor 20 can obtain the contents of the user's operation via the UI unit 40. The buzzer sounds at a timing according to the control of the processor 20.
[0013] The non-volatile memory 30 stores a print control program (to be described later) and association setting information indicating the contents of association settings made by the user. The processor 20 refers to the association setting information and reconfigures the command association. Details will be described later.
[0014] The processor 20 can execute a print control program (not shown) that is recorded in the non-volatile memory 30. When the processor 20 that executes the print control program receives various commands for controlling the printer 10 from the host device 100, it analyzes the commands and executes the processing indicated by the commands.
[0015] The commands include operation commands that operate the mechanisms of the printing device 10 and non-operation commands that do not operate the mechanisms. The operation commands include commands for printing on the print medium (hereinafter referred to as print commands) and other commands (hereinafter referred to as non-print commands). The non-print commands include, for example, a cut command that cuts the print medium, a feed command that feeds the print medium, and a buzzer command that sounds a buzzer. The non-operation commands include, for example, a setting change command that changes various settings of the printing device 10 and a status acquisition command that acquires the status of the printing device 10. Of these commands, the operation commands can be canceled by the cancel button. By being able to cancel the operation commands, it is possible to reduce the amount of roll paper and ink that is wasted due to printing failure, and also to prevent the buzzer from sounding at an unnecessary time. In this embodiment, the non-operation commands are not subject to cancellation by the cancel button.
[0016] FIG. 2 is a diagram showing an example of a command sent from the host device 100 to the printer 10. A command is sent from the host device 100 in a form belonging to one of the command groups (called a "format"). One or more commands included in one command group are enclosed by a start string and an end string that indicate the range of the command group. In this embodiment, the start string is, for example, "^XA", and the end string is, for example, "^XZ". Therefore, the printer 10 can specify the range of the command group by the start string and the end string.
[0017] Depending on the type of application or middleware for label printing executed by the host device 100, multiple commands may belong to a command group or may belong to the same command group. For example, as shown in c1 of FIG. 2, a print command and a cut command may belong to the same command group, or as shown in c2 of FIG. 2, a print command and a cut command may belong to different command groups. Regardless of the manner in which multiple operation commands belong to a command group, as long as the same operation commands are arranged in the same order, the printing device 10 executes the operation indicated by the operation commands in the same manner. For example, whether the command group c1 or the command group c2 of FIG. 2 is received, the printing device 10 performs printing according to the print commands and then cuts according to the cut commands in the same manner in either case.
[0018] The printer 10 has a function to cancel all commands that the printer 10 has accepted but not yet completed execution (called "cancel all formats"), and a function to issue a cancel instruction for an operation command on a command group basis (called "cancel first format"). When a cancel instruction is issued on a command group basis (cancel first format), the range of commands that are cancelled for one cancel instruction will differ if the configuration of the command group is different. For example, in the case of command group c1 in FIG. 2, both print commands and non-print commands (cut commands in this example) are cancelled by one cancel instruction, and in the case of command group c2 in FIG. 2, only print commands are cancelled by one cancel instruction. Therefore, in the case of command group c2, even if printing is cancelled, only cutting is performed.
[0019] However, there are cases where the user is not aware of or does not understand how the command group that the user instructs to be executed via an application or the like of the host device 100 is included in and configured as a command group in the application or middleware of the host device 100. In such cases, the result of the cancellation instruction issued by the user to the printing device 10 while the command is being processed may not be as intended. Therefore, the processor 20 realizes a function to reconstruct the association between commands on the printing device 10 side so that the intended cancellation result can be obtained when a user who does not understand how a command group is configured issues a cancellation instruction. The print control program is a program for realizing this function in the processor 20.
[0020] (2) Association settings: In this embodiment, in order to reconstruct the association between commands, the user is provided with an opportunity to set the command association. This setting is for the purpose of allowing the user to set the cancellation range when a cancel instruction is given to the range intended by the user, and can be set at any time when the user wishes to change the setting contents.
[0021] Specifically, the processor 20 allows the user to select whether to set the command association automatically or manually. In the case of manual setting, the processor 20 further allows the user to set, for each operation command, whether to associate the operation command with the operation command immediately before, the operation command immediately after, or not to associate the operation command immediately before or after.
[0022] Fig. 3 is a diagram showing an example of an association setting screen. The user can operate the host device 100 to display the association setting screen of the printing device 10 on the display of the host device 100 and perform association setting from the host device 100. The setting contents set by the user via the association setting screen of Fig. 3 are transmitted to the printing device 10. Note that the association setting screen shown in Fig. 3 may be displayed on the UI unit 40 of the printing device 10, and the user may be configured to perform association setting via the screen shown in Fig. 3 displayed on the UI unit 40 of the printing device 10.
[0023] The association setting screen shown in FIG. 3 includes an association selection section g1 for selecting whether the association is on or off. When off is selected in the association selection section g1, no association is made between the commands, and the command group configured by the application or middleware of the host device 100 remains valid. When the user issues a cancellation instruction to the printing device 10 to "cancel first format", the commands included in the command group including the command being executed are subject to cancellation. The association setting screen includes a manual / automatic selection section g2 for selecting between manual association and automatic association. When on is selected in the association selection section g1, manual or automatic can be selected in the manual / automatic selection section g2. When automatic is selected in the manual / automatic selection section g2, the command details setting section g3 cannot be set.
[0024] In this embodiment, when "Auto" is selected in the manual / automatic selection section g2, if a print command is followed by one or more consecutive non-print commands, the print command is associated with the one or more consecutive non-print commands (automatic association rule). Successive print commands are not associated with each other, and a print command following a non-print command is not associated with each other. Based on the design concept that an operation following a non-print command is often set with a print operation following the print command immediately preceding it, this embodiment employs such an automatic association rule in the case of automatic setting.
[0025] The user can cancel all commands stored in the printing device 10 by specifying "Cancel all formats," and can cancel commands using the automatic association rule described above (associating a print command with one or more subsequent non-print commands) by specifying "Cancel first format" with "Automatic" selected on the association setting screen shown in Fig. 3. When "Cancel first format" is specified with "Manual" selected on the association setting screen shown in Fig. 3, a command detail setting section g3 is presented so that the cancellation range can be realized according to the user's more detailed intentions.
[0026] When manual is selected in the manual / automatic selection section g2, the command details setting section g3 can be set by the user. The command details setting section g3 includes an association setting section g30 for each command, an association upper limit setting section g35, and an isolated command setting section g36. The association setting section g30 for each command is a setting section for selecting whether to associate the command with the command immediately before (before), to associate with the command immediately after (after), or to not associate the command at all (off). One of "before", "after", and "off" is presented as an alternative selection. In the example shown in FIG. 3, the association setting section g30 for each command includes a print command setting section g31, a buzzer command setting section g32, a cut command setting section g33, and a feed command setting section g34. The buzzer command is a command for sounding a buzzer, the cut command is a command for cutting the print medium, and the feed command is a command for transporting the print medium. The buzzer command, the cut command, and the feed command correspond to non-print commands.
[0027] The association upper limit setting section g35 is a setting section that sets the upper limit of the number of commands to be associated. For example, if "10" is set, the maximum number of associated operation commands can be 10, regardless of the order in which the print commands and non-print commands are arranged, with the exception of the association of isolated commands, which will be described later. In cases where the user does not want to cancel everything at once, such as "cancel all formats," but allows a certain number of commands to be canceled together, the number set in this association upper limit setting section g35 allows the user to control as intended.
[0028] The isolated command setting section g36 is a setting section for selecting, when association is performed based on the settings of the association setting section g30 for each command and the settings of the association upper limit setting section g35, if a single command is generated that is not associated with other commands and becomes isolated, whether to associate the isolated command with the command "before" the isolated command, to associate the isolated command with the command "after" the isolated command, or to leave the isolated command isolated.
[0029] FIG. 4 shows a setting process executed to acquire the setting contents when the contents set on the association setting screen shown in FIG. 3 are sent to the printing device 10. First, the processor 20 judges whether or not the selection in the association presence / absence selection section g1 is ON (step S100), and if ON is selected, judges whether or not manual is selected in the manual / automatic selection section g2 (step S105). If manual is selected, the processor 20 reconstructs the association with the contents specified by the user when a command is received (reconstruction mode: manual), and acquires the setting contents in the association setting section g30 for each command, the setting contents in the association upper limit setting section g35, and the setting contents in the isolated command setting section g36 (steps S110, 115, 120). If it is determined that automatic is selected in step S105, the processor 20 regards it as automatic association (step S125). That is, when a command is received, the processor 20 reconstructs the association according to the above-mentioned automatic association rule (reconstruction mode: automatic). If it is determined in step S100 that off has been selected, the processor 20 will not reconfigure the association on the printing device 10 when a command is accepted, and if a cancellation instruction is received, will execute cancellation based on the command group configuration of the accepted command group (reconfiguration mode: off).
[0030] (3) Executing and canceling commands: When a group of commands is sent from the host device 100, the processor 20 executes a print control program to analyze the commands, reconfigures the association of the commands according to the state of the reconstruction mode, and controls each part of the printing device 10 to execute processing according to the commands. Furthermore, when the processor 20 receives a cancel instruction, it cancels according to the state of the reconstruction mode.
[0031] When the print control program is executed, the processor 20 functions as a reception unit 20a, a judgment unit 20b, a printing unit 20c, and a cancellation unit 20d. The reception unit 20a functions to cause the processor 20 to receive commands sent from the host device 100. As described above, the commands include operation commands and non-operation commands, and the operation commands include print commands and non-print commands. In addition, the print commands and non-print commands may be sent from the host device 100 as commands belonging to the same command group, or may be sent as commands belonging to different command groups. Therefore, when the host device 100 sends print commands and non-print commands configured to belong to different command groups, the processor 20 receives the print commands and non-print commands as commands belonging to different command groups.
[0032] Using the function of the judgment unit 20b, the processor 20 judges whether there is an association between the received commands. For example, when a print command and a non-print command are received as belonging to different command groups, the processor 20 judges whether there is an association between the print command and the non-print command of the different command group. Specifically, when the reconfiguration mode is manual, the processor 20 reconfigures the association between the commands according to the association setting unit g30 for each command (see FIG. 3), and when the reconfiguration mode is automatic, the processor 20 reconfigures the association between the commands according to the automatic association rules. When the reconfiguration mode is off, the processor 20 does not reconfigure the association between the commands.
[0033] Regardless of whether the reconstruction mode is automatic or manual, the processor 20 associates consecutive operation commands in the command execution order. Therefore, for example, when operation commands A, B, and C are consecutive, command A and command B, or command B and command C, become targets for association determination. Note that, when the reconstruction mode is automatic, the processor 20 determines that one or more consecutive non-print commands following a print command are associated (see Figs. 6 and 7). That is, the processor 20 associates a print command with one or more consecutive non-print commands following it. By associating in this way, one or more consecutive non-print commands following immediately after a print command can be canceled in response to a cancel instruction for the print command. Note that, even when the configuration mode is manual (details will be described later), it is possible to associate a print command with a subsequent non-print command depending on the settings of the association setting section g30 for each command.
[0034] The automatic association process shown in FIG. 5 is a process executed by the processor 20 when a group of commands is received in the automatic reconfiguration mode. Before the automatic association process is executed, variables used in the automatic association process are initialized (for example, the last processed print command=NULL, etc.). When the automatic association process is started, the processor 20 determines whether there is an unanalyzed command (step S200), and repeats the processes of steps S205 to S230 for each command from the top in the execution order until there are no unanalyzed commands (i.e., until all commands have been analyzed). The command that is the earliest in the execution order and whose analysis has not been completed is called the command to be processed. In step S205, the processor 20 analyzes the command. That is, it is determined which command is the command to be processed. Next, the processor 20 determines whether the command to be processed is a print command (step S210), and if it is a print command, holds the print command to be processed as the last processed print command (step S215), and returns to step S200. Each time step S215 is executed, the last processed print command is updated with the print command to be processed.
[0035] If it is determined in step S210 that the command being processed is not a print command, the processor 20 determines whether or not the command being processed is a non-print command (step S220). If it is not determined in step S220 that the command is a non-print command (i.e., if the command is a non-operation command), the processor 20 returns to the process of step S200. If it is determined in step S220 that the command is a non-print command, the processor 20 determines whether the last processed print command is held (step S225). If it is determined in step S225 that the command is held, the processor 20 associates the non-print command being processed with the last processed print command (step S230) and returns to step S200. If it is determined in step S225 that the command is not held, the processor 20 does not associate the non-print command being processed with any of the previous or next commands and returns to step S200.
[0036] In this embodiment, the processor 20 creates a job for each command and saves it until execution is complete. For commands that are determined to be related, the job data is saved with a designation in one job indicating that it is related to the other job. In this embodiment, the processor 20 can recognize the association relationship of the commands (reconstructed command group) by referring to the presence or absence and content of this designation in the job data corresponding to each command.
[0037] 6 and 7 show examples of reconfiguration when the automatic association process of FIG. 5 is executed. FIG. 6 shows an example of reconfiguration of a command group in the execution order of a print command, a feed command, a print command, a print command, and a cut command. Regardless of the command group configuration of the command group sent from the host device 100, when reconfiguration is performed in the printing device 10, association is determined for each command, so FIG. 6 does not show an example of the command group when the command group is received. As shown in FIG. 6, when a print command is followed by a non-print command according to the automatic association rule, the print command and the non-print command are associated with each other. The job data of the associated non-print command contains a specification of the job to be associated.
[0038] Also, for example, Fig. 7 shows an example of reconstruction when five consecutive print commands are followed by a cut command and a feed command. According to the automatic association rules as shown in Fig. 7, the first through fourth print commands are not associated with each other, and the fifth print command is associated with the two consecutive non-print commands that follow it (the sixth cut command and the seventh feed command). The job data of the associated non-print commands includes a specification of the job with which they are associated.
[0039] When the reconfiguration mode is automatic, the association is reconfigured in this manner and the command is executed. That is, through the function of the printing unit 20c, the processor 20 causes the printing mechanism to print in accordance with the print command. In this embodiment, the processor 20 causes printing to be performed on roll paper. The processor 20 also causes the operation indicated by the non-print command to be executed in accordance with the non-print command (e.g., feed, cut, buzzer, etc.).
[0040] Next, a case will be described where, with the command associations reconfigured, a cancel instruction is input to the printing device 10. In response to receiving an instruction to cancel a print command, the processor 20 uses the function of the cancellation unit 20d to cancel the print command together with the non-print command determined to be associated with the print command.
[0041] Specifically, when the cancel button is pressed, the processor 20 suspends the operation of the command being executed and presents the user with the option to select either cancel first format or cancel all formats. Cancel first format cancels all commands belonging to a command group to which the command at the top of the execution order belongs among the operation commands (not yet completed) stored in the printing device 10 (commands in the group following this command group are not canceled). Cancel all formats cancels all operation commands (not yet completed) stored in the printing device 10. In this embodiment, when cancel first format is selected and the reconfiguration mode is automatic or manual, the range of commands to be canceled is determined based on the reconfigured association. Note that when the reconfiguration mode is off, the cancellation range is determined by directly using the configuration of the command group received from the host device 100.
[0042] The cancellation process will be described in detail with reference to Fig. 8. The cancellation process shown in Fig. 8 is executed when the cancel button of the printing device 10 is pressed and the user selects either canceling the first format or canceling all formats. When the cancellation process is started, the processor 20 determines whether canceling the first format has been selected (step S300). If it is determined in step S300 that canceling the first format has been selected, the processor 20 acquires the first command (step S305). Next, the processor 20 adds the acquired command to the commands to be canceled (step S310).
[0043] Next, the processor 20 determines whether or not the acquired command has an associated command (step S315). That is, the processor 20 refers to the association designation in the job data of the acquired command and determines whether or not there is another command associated with the acquired command, or whether or not the acquired command is associated with another command.
[0044] If it is determined in step S315 that there is an associated command, the processor 20 acquires the associated command (step S320). That is, the processor 20 acquires all commands that belong to the same group as the acquired command in the reconfigured association relationship based on the association designation of the job data. After executing step S320, the processor 20 returns to step S310. If it is not determined in step S315 that there is an associated command, the processor 20 executes cancellation of the command to be canceled (step S325). That is, the execution of the job corresponding to each command to be canceled is canceled.
[0045] If it is not determined in step S300 that the first format is to be cancelled, the processor 20 determines that all formats are to be cancelled, adds all commands to the list of commands to be cancelled (step S330), and executes step S325.
[0046] Next, the association process when the reconstruction mode is manual will be described. Fig. 9 is a flowchart of the manual association process. The manual association process is a process executed by the processor 20 when a group of commands is received in the manual reconstruction mode. Note that before the manual association process is executed, variables used in the manual association process are initialized (for example, the number of already associated commands = 0, the previous command (the command immediately before the command to be processed) = NULL, etc.). When the manual association process is started, the processor 20 determines whether there are any unanalyzed commands (step S400), and performs the processes from step S405 onward on the unanalyzed commands one by one in the execution order as the processing target.
[0047] If it is determined in step S400 that there is an unanalyzed command, the processor 20 analyzes the command to be processed (step S405), that is, it identifies which command is the command to be processed.
[0048] Next, the processor 20 determines whether the command to be processed is an operation command (step S410). That is, it is determined whether the command is an operation command listed in the association setting section g30 for each command on the association setting screen shown in Fig. 3. If it is not determined to be an operation command in step S410, the processor 20 returns to step S400.
[0049] If it is determined in step S410 that the command is an operation command, processor 20 determines whether or not it can be separated (step S415). That is, processor 20 determines whether or not the command to be processed and the command immediately preceding the command to be processed in the execution order are not associated with each other. For example, if the immediately preceding command is set to be associated with the "previous" command and the command to be processed is set to be associated with the "following" command, processor 20 determines that a command group can be separated between the immediately preceding command and the command to be processed.
[0050] If it is not determined in step S415 that the number of associated parts can be divided, the processor 20 determines whether or not the number of associated parts is less than the upper limit number (step S420). That is, it is determined whether or not the number is equal to or less than the upper limit number set in the association upper limit setting unit g35 in Fig. 3. If it is determined in step S420 that the number is equal to or less than the upper limit number, the processor 20 performs the manual association sub-processing shown in Fig. 10 (step S425).
[0051] In the process of step S500, processor 20 determines whether there is a subsequent association waiting command (step S500). That is, when the command to be processed is the nth command (n is an integer equal to or greater than 2), it is determined whether the association setting of the n-1th command is "later." When the command to be processed is the first command in a series of commands accepted by printer 10 (i.e., when n=1), there is no subsequent association waiting command, so step S500 results in an N determination.
[0052] If the answer is N in step S500, that is, if it is not determined that there is a subsequent associated command waiting, processor 20 determines whether the association setting of the command to be processed is "previous" (step S510). If it is determined in step S510 that the association setting of the command to be processed is "previous", processor 20 associates it with the previous command (step S515). In other words, if there is a command held as the immediately preceding command, processor 20 associates the held command with the command to be processed (if there is no held command, no association is made).
[0053] Next, the processor 20 holds the command currently being processed as the immediately previous command (step S520). The held command will be referred to the next time step S515 is executed.
[0054] If it is not determined in step S510 that the association setting of the command to be processed is "before", processor 20 determines whether or not the association setting of the command to be processed is "after" (step S525). If it is determined in step S525 that the association setting of the command to be processed is "after", processor 20 sets the command to be processed to wait for later association (step S530) and executes step S520. If step S530 is executed, the next time step S500 is executed, a Y determination is made. Note that if step S530 is not executed for the command to be processed, this indicates that the command is not in a state of waiting for later association.
[0055] If it is not determined in step S525 that the association setting of the command to be processed is "LATER", that is, if the association setting of the command to be processed is "OFF", the processor 20 proceeds to the process of step S520.
[0056] If it is determined in step S500 that there is a subsequent associated command waiting, processor 20 associates the subsequent associated command with the command to be processed (step S505). That is, the command held in the previous step S520 is associated with the command to be processed. After step S505 is executed, the above-mentioned processing from step S510 onwards is performed. Note that there are cases in which both step S505 and step S515 are executed in the current manual association sub-processing, in which case steps S505 and S515 associate the same commands (the command immediately before the command to be processed and the command to be processed).
[0057] Returning to the description of Fig. 9, after step S425 is executed, processor 20 updates the associated number (step S430). That is, as a result of the processing of step S425 and steps S445 and S455 described below, the associated number is updated to the total number of associated commands (the total number of commands belonging to the target group being reconfigured at that time).
[0058] If it is determined in step S415 that the command can be separated, or if it is not determined in step S420 that the number of associated commands is equal to or less than the upper limit, the processor 20 determines whether the command is isolated (step S435). Step S435 is executed when it is determined that the command to be processed is not associated with the immediately preceding command, and in step S435, the processor 20 refers to the association setting of the next command of the command to be processed and determines whether the command to be processed is isolated. Isolation indicates a state in which the command is not associated with either the immediately preceding command or the immediately succeeding command, and is isolated by itself. For example, the command immediately preceding the command to be processed is command A, the command to be processed is command B, and the command immediately succeeding the command to be processed is command C. In the case where the association setting of command A is "before", the association setting of command B is "before", and the association setting of command C is "after", and the number of associated commands has reached the upper limit by the time of command A, it is determined that command B is isolated. In addition, for example, command B may be isolated when there are consecutive commands with the association setting "off".
[0059] If it is determined in step S435 that the command is isolated, the processor 20 determines whether the association setting of the isolated command is "previous" (step S440). That is, the contents set in the isolated command setting section g36 of FIG. 3 are referenced. If it is determined in step S440 that it is "previous", the processor 20 associates the command to be processed with the command immediately preceding the command to be processed (step S445). Associating with the immediately preceding command may exceed the upper limit of associations, but in this embodiment, the contents set in the isolated command setting section g36 take precedence, and association is performed even if the upper limit is exceeded.
[0060] If it is not determined to be "before" in step S440, processor 20 determines whether the association setting of the isolated command is "after" (step S450). If it is determined to be "after" in step S450, processor 20 associates it with the later command (step S455). That is, the process target command determined to be isolated is associated with the next command following the process target command so that it is not isolated. For example, if the process target command is command B and the next command following the process target command is command C, command B and command C are associated with each other in step S455.
[0061] If it is not determined in step S435 that the command is isolated, the processor 20 resets the number of associated commands (step S460). When step S460 is executed, the association is terminated with the command to be processed as the terminal, so the processor 20 resets the number of associated commands to 0.
[0062] An example of reconfiguration of commands by the manual association process described above will be described with reference to Figs. 11 and 12. As shown in Fig. 11, consider a case where the association settings of the print command, cut command, and feed command are "after", "after", and "before", respectively, and where these commands are received in the execution order of the print command, cut command, feed command, print command, and cut command. The association setting of the first print command is "after", so it is associated with the second cut command. The association setting of the second cut command is also "after", so it is further associated with the third feed command. The association setting of the feed command is "before", so it is associated with the second cut command, which is one command before. The association setting of the feed command is "before", and the association setting of the print command, which is the fourth command, is "after", so the association is separated between the third feed command and the fourth print command. Similarly, the fourth print command and the fifth cut command are associated with each other, and the fourth print command is not isolated, so the first group is a print job as job 1, a cut job as job 2, and a feed job as job 3, and the second group is a print job as job 4 and a cut job as job 5. In this way, even if a non-print command is immediately before a print command, the processor 20 may determine that the two commands are not associated with each other depending on the contents previously set by the user (the contents of the association settings of both commands, the upper limit number of associations, and the contents of the association settings in the case of isolation). Therefore, even if the commands are consecutive, they can be made not to be associated with each other depending on the contents of the manual settings by the user. Note that the job data of job 2 indicates that it is associated with job 1, the job data of job 3 indicates that it is associated with job 2, and the job data of job 5 indicates that it is associated with job 4.
[0063] As shown in Fig. 12, when the association settings for the print command, cut command, and feed command are all "off" and the association setting for the isolated command is also "off", the processor 20 does not associate the print command, cut command, and feed command. In this way, even if a non-print command immediately follows a print command, it may be determined that the commands are not associated based on the contents of the association settings previously set by the user. Therefore, even if the commands are consecutive, they can be made not to be associated based on the contents of the manual settings by the user.
[0064] Note that when a cancel instruction for the first print command is received in a state reconfigured as shown in Fig. 12, the processor 20 determines that the print command is not related to any other command. In response to a single cancel instruction, the processor 20 performs the cancel process of Fig. 8, and cancels the single print command. In other words, according to this embodiment, the processor 20 can also delete one command with a single cancel instruction, in accordance with the contents of the manual settings made by the user.
[0065] FIG. 13 shows an example of a cancellation target information screen displayed on the UI unit 40 of the printing device 10 when the cancel button is pressed and "cancel first format" is selected. In the cancellation target information screen, a group of commands that have been accepted by the printing device 10 but have not been completed and will be canceled in response to one cancellation instruction is displayed. In the example of FIG. 13, it is assumed that the reconfiguration mode is manual, and "manual" is displayed as the association setting. In the example of FIG. 13, the command groups are arranged in the order of execution from the left and are displayed. The command group displayed on the leftmost side is a group that includes commands that are being executed (command groups that have been executed are not displayed), and all commands belonging to that group are listed and displayed. Therefore, the user can recognize the commands that will be canceled if the user presses the cancel button again to input a cancellation instruction. Note that the cancellation target information screen shown in FIG. 13 is not limited to when the reconfiguration mode is manual, and may be displayed when the reconfiguration mode is automatic or off. It may also be displayed when "cancel all formats" is selected.
[0066] (3) Other embodiments: The above embodiment is an example for implementing the present invention, and various other embodiments can be adopted. For example, the printing method can be various methods such as an inkjet method, a toner method, a dye-sublimation method, etc., and the printing medium can be cut paper or is not limited to printing paper, and can be various printing media. In addition, the printing device can be applied to a printer for purposes other than printing on labels.
[0067] In the above embodiment, it is assumed that there is one host device 100 for the printing device 10, but the configuration may be such that a group of commands is transmitted from multiple host devices 100 to one printing device 10. In that case, the reconfiguration of the association may be performed without distinction between the host devices 100 that are the transmission source, or the reconfiguration of the association may be performed for each host device 100 that is the transmission source, or the configuration may be such that the user can select between these. In addition, the reconfiguration of the association may be performed for each user who has sent a group of commands to execute a series of jobs, or the reconfiguration of the association may be performed without distinction between users, or the configuration may be such that the user can select between these. In addition, the printing device 10 may store the time when a command was received and reconstruct the association for commands received within a certain period of time, but not reconstruct associations between commands received with an interval exceeding a certain period of time.
[0068] The operation commands to be canceled may include various commands other than the four types listed in the above embodiment. The types of commands to be associated and how they are associated are not limited to those listed in the above embodiment. After the cancellation target guide screen shown in Fig. 13 is displayed, the screen may transition to the association setting screen shown in Fig. 3 in accordance with a user operation, and the user may be able to reset the settings in the association presence / absence selection section g1, manual / automatic in the manual / automatic selection section g2, and command detail setting section g3 while the command job is paused. Then, after the resetting, the processor 20 may be configured to reconfigure the command association again based on the settings.
[0069] When a cancel instruction is received while an operation command other than a print command (a non-print command) is being executed, the cancel unit cancels the non-print command along with other commands determined to be related to the non-print command.
[0070] The determination unit may be configured to determine that a print command is related to a consecutive non-print command, and to determine that the print command is not related to another print command. For example, in the example shown in FIG. 6, the print command of job 1 and the cut command of job 5 are not determined to be related (because there is another print command between the print command of job 1 and the non-print command of job 5). In the example shown in FIG. 7, the print command of job 5 and the feed command of job 7 are non-consecutive when the feed command of job 7 is viewed alone, but the print command of job 5 is followed by two consecutive non-print commands, and these two consecutive non-print commands can be considered to be consecutive to the print command of job 5.
[0071] Furthermore, the present invention can also be applied as a program or method executed by a computer. For example, the above content can also be applied as a printing method invention that includes accepting a print command and a non-print command as commands belonging to different command groups, determining whether the print command and the non-print command of the different command groups are related to each other, causing a printing mechanism to print according to the print command, and canceling the non-print command determined to be related to the print command together with the print command in response to accepting an instruction to cancel the print command.
[0072] The above-mentioned system, program, and method may be realized as a single device or may be realized by using components of multiple devices, and include various aspects. In addition, they can be modified as appropriate, such as being partly software and partly hardware. Furthermore, the invention can also be established as a recording medium for a program that controls the system. Of course, the recording medium for the program may be a magnetic recording medium or a semiconductor memory, and any recording medium developed in the future can be considered in the same way. [Explanation of symbols]
[0073] 10...printing device, 20...processor, 20a...reception unit, 20b...judgment unit, 20c...printing unit, 20d...cancellation unit, 30...non-volatile memory, 40...UI unit, 50...communication unit, 60...printing mechanism, 100...host device, c1...command group, c2...command group, g1...presence / absence selection unit, g2...manual / automatic selection unit, g3...command detail setting unit, g30...setting unit, g31...print command setting unit, g32...buzzer command setting unit, g33...cut command setting unit, g34...feed command setting unit, g35...association upper limit setting unit, g36...isolation command setting unit
Claims
1. a reception unit that receives print commands and non-print commands as commands belonging to different command groups; a determination unit that determines whether or not there is a relationship between the print command and the non-print command of another command group; a printing unit that causes a printing mechanism to perform printing in accordance with the print command; a cancel unit that, in response to receiving an instruction to cancel the print command, cancels the non-print command determined to be related to the print command together with the print command; A printing device comprising:
2. the determination unit determines that the non-print command subsequent to the print command is related to the print command; The printing device of claim 1 .
3. the determination unit determines that a command preset by a user among the non-print commands immediately before the print command is not related; The printing device according to claim 2 .
4. the determination unit determines that a command preset by a user among the non-print commands immediately following the print command is not related; The printing device according to claim 2 .
5. the cancel unit cancels one of the print commands in response to one of the cancel instructions when it is determined that the print command is not related to any command; The printing device of claim 1 .
6. the determination unit creates jobs for the print command and the non-print command determined to be related to each other, and writes in one job a specification indicating that the one job is related to the other job. The printing device of claim 1 .
7. The print commands and the non-print commands each included in a different command group are each surrounded by a start string and an end string that indicate the range of the command group. The printing device of claim 1 .
8. The printing unit causes printing to be performed on roll paper. The printing device of claim 1 .
9. Accepts print commands and non-print commands as commands belonging to different command groups, determining whether or not the print command and the non-print command of another command group are associated with each other; causing a printing mechanism to print in accordance with the print command; In response to receiving an instruction to cancel the print command, canceling the non-print command determined to be related to the print command together with the print command. A printing method comprising:
Citation Information
Patent Citations
Form overlay printing apparatus
JP1997254483A