Patent Description:
Specifically, the present invention pertains to a print job cancellation method as defined in the generic part of claim <NUM> attached, to a terminal device connected to an image forming device and configured to execute such method, to a related computer-readable storage medium, and a related computer program product.

Document <CIT> discloses a print job cancellation method of the generic type as defined above. Specifically, this document discloses a printing apparatus which cancels a print job without any influence on subsequent other print jobs when a print cancel instruction is issued. During printing, if a print cancel instruction is inputted from a printer operation unit, a printer function manager notifies a print command interpreter of the cancellation. The print command interpreter searches data processed at that time in a transmission/reception buffer for an end mark command indicating the end of the cancelled job. Then the print command interpreter deletes the data before the end mark command.

In the case where a user's terminal device is connected to an image forming apparatus, the user may execute a print job by transmitting print job content to the image forming apparatus. When the user finds that the print job content transmitted to the image forming apparatus is not the print job content expected to be printed, the user may instruct the image forming apparatus to stop printing through a print cancellation manner.

In the existing technology, when the user wants to cancel the print job content that is not expected to be printed, three following possible manners may be used. The user may perform a job cancellation operation through relevant keys on the operation panel of the image forming apparatus; or the user may also perform a job cancellation operation through the application software on the user's terminal device; or the user may also perform a job cancellation operation in the print spooler on the Windows side of the terminal device. Printing may be cancelled by the cancellation manner through relevant keys on the operation panel of the image forming apparatus or the cancellation manner through the application software on the user's terminal device, which may both cancel the print job directly without affect normal printing operations of subsequent print jobs.

However, when the user chooses to cancel printing by canceling the print job in the print spooler on the Windows side of the terminal device, since the terminal device transmits the print job content to the image forming apparatus in real time for the image forming apparatus to print out the print job content, the print job content currently being processed may be directly truncated, which may result in incomplete print job content transmitted to the image forming apparatus. Therefore, after the image forming apparatus receives incomplete print job content and when the user's terminal device issues print job content again, the image forming apparatus may print abnormally due to incomplete content of previous print job, which may affect subsequent print jobs.

In view of this, the present invention provides a print job cancellation method as defined in claim <NUM> attached, a terminal device connected to an image forming device and configured to execute such method, a related computer-readable storage medium, and a related computer program product, according to the respective independent claim attached. Preferred embodiments of the invention are defined in dependent claims attached.

In technical solutions provided by embodiments of the present disclosure, if the print job is determined to be canceled, adding specific data to print job content of the print job to generate print data, wherein the specific data is configured to instruct an end of analyzing the print data and/or instruct an end of the print job; and transmitting the print data to an image forming apparatus, such that the image forming apparatus ends the print job according to the specific data analyzed from the print data. In embodiments of the present disclosure, the image forming apparatus may end the current print job in time by using the specific data added in the print job content, which may avoid the case that when print job content is transmitted to the image forming apparatus again, the image forming apparatus may print abnormally because previous print job content is incomplete, thereby avoiding the influence of incomplete content on subsequent print jobs due to print job cancellation.

To clearly describe technical solutions of various embodiments of the present disclosure, the drawings need to be used for describing various embodiments are described below. Obviously, the drawings in the following description are merely some embodiments of the present disclosure. For those skilled in the art, other drawings may be obtained in accordance with these drawings without creative efforts.

To better understand technical solutions of the present disclosure, embodiments of the present disclosure are described in detail with reference to accompanying drawings.

It should be noted that described embodiments are only a part of embodiments of the present disclosure, rather than all embodiments. Based on embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work shall fall within the protection scope of the present disclosure.

The terms used in embodiments of the present disclosure are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure.

The singular forms of "a", "the" and "said" used in embodiments of the present disclosure and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings.

It can be understood that the term "and/or" used in the specification may only be an association relationship describing associated objects, which means that there may be three types of relationships. For example, A and/or B can mean that: A alone exists, A and B exist at the same time, and B exists alone. In addition, the character "/" in the specification normally indicates that associated objects before and after are in an "or" relationship.

<FIG> illustrates a structural schematic of a print system provided by exemplary embodiments of the present disclosure. As shown in <FIG>, the system may include an image forming apparatus <NUM> and a terminal device <NUM>.

The image forming apparatus <NUM> may be a device with a printing function, such as a printer or a multifunction machine, where the multifunction machine may be a device that integrates functions such as printing, copying, scanning, and faxing. The terminal device <NUM> may be a desktop computer, a portable computer, or the like.

The image forming apparatus <NUM> and the terminal device <NUM> may be communicatively connected through a universal serial bus (USB) or a wireless fidelity (Wi-Fi) network. The terminal device <NUM> may be installed with a print driver adapted to the image forming apparatus <NUM>, such that the application software installed in the terminal device <NUM> may drive the image forming apparatus <NUM> to execute the print job. When the user uses the application software in the terminal device <NUM> for printing, the printing driver may be called through the application software to configure a print manner, and the image forming apparatus <NUM> may be driven for printing according to the configured print manner through the print driver.

<FIG> illustrates a structural schematic of a terminal device provided by exemplary embodiments of the present disclosure. As shown in <FIG>, the terminal device <NUM> may include an application software module <NUM>, a print drive module <NUM>, and a background print processing module <NUM>, where the print drive module <NUM> may include a print data processing module <NUM> and a print control module <NUM>.

It should be noted that the Windows side of the terminal device <NUM> may be provided with a print spooler which may be understood as a logical printer used to manage the print job content. In embodiments of the present disclosure, as shown in <FIG>, the print spooler may be the background print processing module <NUM>.

It should be noted that the terminal device <NUM> may be provided with a language monitor. In embodiments of the present disclosure, as shown in <FIG>, the language monitor may be the print control module <NUM>.

The application software module <NUM> is configured to receive and edit the original print job content and transmit the original print job content to the print data processing module <NUM>. The print data processing module <NUM> is configured to perform language conversion on the original print job content to generate print job content recognizable by the image forming apparatus and transmit the print job content to the background print processing module <NUM>. The background print processing module <NUM> may be configured to transmit the print job content to the print control module <NUM> in the form of a data stream. The print control module <NUM> may be configured to transmit the print job content in the form of a data stream to the image forming apparatus <NUM>. The image forming apparatus <NUM> may execute the print job based on the print job content in the form of a data stream.

Based on the terminal device <NUM> shown in <FIG>, a print job cancellation method is provided in the existing technology. <FIG> illustrates a flow chart of a print job cancellation method. As shown in <FIG>, the method may include following exemplary steps.

At step <NUM>, transmit the original print job content of the print job.

The application software module <NUM> may transmit the original print job content of the print job to the print data processing module <NUM>.

The user may edit, and store acquired original print job through the application software module <NUM> and transmit edited original print job content to the print data processing module <NUM>.

At step <NUM>, determine whether the original print job is transmitted successfully.

The print data processing module <NUM> may determine whether the original print job content received from the application software module <NUM> is transmitted successfully.

If it is successful, step <NUM> may be executed; if it is not successful, the process may be ended.

At step <NUM>, language conversion and transmit of the original print job.

The print data processing module <NUM> may perform language conversion on the original print job content to generate print job content recognizable by the image forming apparatus and transmit the print job content to the background print processing module <NUM>.

At step <NUM>, monitor the print cancellation instruction and notify to termination the transmission print job.

If the print cancellation instruction inputted by the user is monitored, the background print processing module <NUM> may transmit the print job content before the print job is cancelled to the print control module <NUM> and transmit a transmission termination notification to the print data processing module <NUM>.

When the user chooses to cancel the print job task in the background print processing module <NUM>, the background print processing module <NUM> may monitor the print cancellation instruction inputted by the user. Then, the background print processing module <NUM> may transmit the transmission termination notification to the print data processing module <NUM> to notify the print data processing module <NUM> to terminate the transmission of the print job content transmitted by the application software module <NUM>, such that continuous transmission of the print job content from the application software module <NUM> may be prevented. The background print processing module <NUM> may only transmit received print job content before the print job is canceled to the print control module <NUM>.

At step <NUM>, transmit the print job content before the print job is canceled.

The print control module <NUM> may transmit the print job content before the print job is canceled to the image forming apparatus <NUM>.

The image forming apparatus <NUM> may execute the print job according to the print job content before the print job is canceled.

In the existing technology, canceling the print job does not mean that all print jobs are canceled. For example, the user may issue a print job through the application software module <NUM> on the terminal device <NUM>, and the print control module <NUM> may transmit the print job content including <NUM> pages of print content to the image forming apparatus <NUM>. According to the time interval between the time when the user inputs the print cancellation instruction and the transmission time, the image forming apparatus <NUM> may print out <NUM> to <NUM> pages of print job content. That is, if the user cancels the print job quickly, the image forming apparatus <NUM> may not print out even one page; and if the user cancels the print job slowly, the image forming apparatus <NUM> may print out a part or all of the print job content. The print control module <NUM> transmits the print job content to the image forming apparatus <NUM> in real time for the image forming apparatus <NUM> to execute the print job according to the print job content. Therefore, when the user cancels the print job in the background print processing module <NUM>, the print job content may not be completely transmitted, but only a part of the content may be transmitted. In such scenario, the image forming apparatus <NUM> may be abnormal due to incomplete received print job content, thereby affecting normal execution of subsequent print jobs.

To solve above-mentioned technical problem, embodiments of the present disclosure provide a print job cancellation method. <FIG> illustrates a flow chart of a print job cancellation method provided by exemplary embodiments of the present disclosure. As shown in <FIG>, the method may include following exemplary steps.

At step <NUM>, determine that the print job is canceled, add specific data to the print job content of the print job to generate print data.

In the case that the terminal device determines that the print job is canceled, the terminal device may add specific data to the print job content of the print job to generate print data, where the specific data may be configured to instruct the end of analyzing the print data and/or instruct the end of the print job.

In embodiments of the present disclosure, the terminal device may monitor whether a print cancellation instruction inputted by the user in the print spooler is received. If the print cancellation instruction inputted by the user is monitored, it determines that the print job may be canceled.

In embodiments of the present disclosure, as shown in <FIG>, the background print processing module <NUM> of the terminal device <NUM> may determine the status information in the print queue information (JOB_INFO_1) structure by accessing the "EndDocPort" function and monitor whether the print cancellation instruction inputted by the user is received, thereby determining whether the print job is canceled.

In embodiments of the present disclosure, if the terminal device monitors the print cancellation instruction inputted by the user, the terminal device may add specific data to the print job content. Optionally, the terminal device may add specific data at the end of the print job content. The specific data may be configured to indicate the end of analyzing the print data; or the specific data may be configured to indicate the end of the print job; or the specific data may be configured to instruct the end of analyzing the print data and the end of the print job.

In embodiments of the present disclosure, the specific data may include dummy data and/or a print job end mark.

Optionally, when the specific data includes dummy data, the dummy data may be configured to indicate the end of analyzing the print data. When the dummy data is analyzed, the image forming apparatus exits the analyzing operation. For example, the dummy data may be "0x00".

Optionally, the specific data may include a print job end mark, where the print job end mark may be configured to indicate the end of the print job. When the print job end mark is analyzed, the image forming apparatus may complete reception of all print data of the print job and end the print job.

According to the claimed invention, the specific data includes dummy data and a print job end marker. As shown in <FIG>, when receiving the print cancellation instruction inputted by the user, the background print processing module <NUM> may prevent the print data processing module <NUM> from continuing to transmit the print job content transmitted by the application software module <NUM> and transmit the print data before the print job is canceled to the image forming apparatus <NUM>. The print control module <NUM> may add specific data to the print job content before the print job is canceled to generate print data and transmit the print data to the image forming apparatus <NUM>. A copy of the print job content may include a pair of print job marks. A print job start mark may be configured at the beginning of each print job, and a print job end mark may be configured at the end of each print job. In embodiments of the present disclosure, the print job content may be truncated because the print job is canceled, such that in addition to adding dummy data to the print job content before the print job is canceled, the print control module <NUM> may also add the print end mark to the print job content before the print job is canceled, thereby exiting the analyzing operation of current print job and ending the print job. If dummy data is not added to the print job content to end the analyzing operation of current print job, the image forming apparatus <NUM> may not be able to identify the print job end mark, such that the analyzing operation of the print job may not exit to end printing. Therefore, in embodiments of the present disclosure, by adding specific data to the print job content to exit the analyzing operation, the image forming apparatus <NUM> may normally analyze the print job end mark, such that the analyzing operation of current print job may be closed normally to end current print job.

The terminal device may transmit the print data to the image forming apparatus.

At step <NUM>, analyze the print data and end the print job.

The image forming apparatus may end the print job according to the specific data analyzed from the print data.

In embodiments of the present disclosure, the image forming apparatus <NUM> may scan and print out data blocks (bands) one by one in the process of performing the print job. In order to avoid the case that received dummy data has insufficient bytes to be discarded when the image forming apparatus <NUM> analyzes the print data of one data band, the byte length of the dummy data may be configured to be greater than the byte length of the data band scanned by the image forming apparatus <NUM> from the print data, which may ensure that the flow of analyzing one data band must end during the printing operation process of the image forming apparatus <NUM>, so that subsequent operations may be performed normally.

Optionally, the image forming apparatus may analyze the dummy data from the print data and exit the analyzing operation of current data band in the print data according to the dummy data. That is, the dummy data may be added to the print job content, so that the image forming apparatus may exit analyzing operation flow of current data band and the print job may end normally.

Optionally, the image forming apparatus may analyze the print end mark from the print data and end the print job according to the print end mark. That is, the print end mark may be added to the print job content, so that the image forming apparatus may normally end the print job according to analyzed print job end mark.

Optionally, the image forming apparatus may analyzed the dummy data and the print end mark from the print data and exit the analyzing operation of current data band in the print data according to the dummy data. That is, the dummy data may be added to the print job content, so that the image forming apparatus may exit analyzing operation flow of current data band and end the print job according to the print end mark, thereby ending the print job normally.

In technical solutions provided by embodiments of the present disclosure, if it determines that the print job is cancelled, specific data may be added to the print job content of the print job to generate print data. The specific data may be configured to instruct the end of analyzing the print data and/or instruct the end of the print job, and the print data may be transmitted to the image forming apparatus, such that the image forming apparatus may end the print job according to the specific data analyzed from the print data. In embodiments of the present disclosure, the image forming apparatus may end the current print job in time by using the specific data added in the print job content, which may avoid the case that when print job content is transmitted to the image forming apparatus again, the image forming apparatus may print abnormally because previous print job content is incomplete, thereby avoiding the influence of incomplete content on subsequent print jobs due to print job cancellation.

Based on the terminal device <NUM> shown in <FIG>, a print job cancellation method is provided. <FIG> illustrates a flow chart of a print job cancellation method provided by exemplary embodiments of the present disclosure in accordance with the present invention. The method includes following exemplary steps.

At step <NUM>, transmit original print job content of the print job.

The application software module <NUM> is configured to transmit original print job content of the print job to the print data processing module <NUM>.

At step <NUM>, perform language conversion on original print job content.

The print data processing module <NUM> performs language conversion on original print job content, generate print job content recognizable by the image forming apparatus <NUM>, and transmit the print job content to the background print processing module <NUM>.

At step <NUM>, transmit the print job content to the image forming apparatus.

The background print processing module <NUM> transmits the print job content to the print control module <NUM>, and the print control module <NUM> transmits the print job content to the image forming apparatus <NUM>.

The background print processing module <NUM> may transmit the print job content to the print control module <NUM> in the form of a data stream. The print control module <NUM> may transmit the print job content to the image forming apparatus <NUM> in the form of a data stream.

At step <NUM>, execute the print job according to the print job content.

The image forming apparatus <NUM> may execute the print job according to the print job content.

The image forming apparatus <NUM> may execute the print job based on the print job content in the form of a data stream.

At step <NUM>, determine whether the print job is canceled.

The background print processing module <NUM> determines whether the print job is canceled. If it is cancelled, step <NUM> is executed; if it is not cancelled, step <NUM> may be executed.

When the user needs to cancel the print job, the user may directly cancel the print job through relevant keys on the operation panel of the image forming apparatus <NUM> or cancel the job directly through the application software on the user's terminal device <NUM> or cancel the job through the background processing module <NUM> on the Windows side of the terminal device <NUM>.

In the existing technology, when the user selects to cancel the print job through a related key (such as a "Cancel" key) on the operation panel of the image forming apparatus <NUM>, the print job content at this point may be the print job content that has been completely transferred from the user's terminal device <NUM> to the image forming apparatus <NUM>. That is, the image forming apparatus <NUM> may have received recognizable complete print job content. Therefore, when the user chooses to cancel printing, current print job may be interrupted directly, and normal operation of subsequent print jobs may not be affected. For example, the print job content issued by the user through the application software module <NUM> may include <NUM> pages of print content; after the image forming apparatus <NUM> prints out two pages of the print content, the user may find that the print job content is not what the user wants to print, the user may select to immediately interrupt current print job by pressing the "Cancel" button on the operation panel of the image forming apparatus <NUM>. Then, the print job content may only print out <NUM> pages of the print content and remaining <NUM> pages of the print content may be interrupted and may not be printed out. At this point, if the user transmits the second copy of the print job content which is expected to be printed through the application software module <NUM>, the image forming apparatus <NUM> may immediately print out the second copy of the print job content.

In another existing technology, the user may directly cancel the print job through the application software on the terminal device <NUM>. That is, in the process of transmitting print job content from the application software module <NUM> to the print drive module <NUM> (at this point, the transmission has not been completed, and the interface displays relevant information "XX pages have been transmitted", where "XX pages" is less than <NUM> pages and used to represent the value of transmitted pages), the "Cancel" option in the application for opening the print job content may be clicked to cancel current print job. At this point, the print job content may only be transmitted from the application software module <NUM> to the print drive module <NUM>, and the print job content may have not been transmitted to the image forming apparatus <NUM>, such that when the job cancellation is selected, the transmission of the print job content may be directly cancelled without affecting normal printing operation of subsequent print jobs of the image forming apparatus <NUM>.

In another existing technology, by canceling the print job in the background print processing module <NUM> of the Windows side of the terminal device <NUM>, after the print data processing module <NUM> transmits the print job content to the background print processing module <NUM>, the background print processing module <NUM> may normally transmit the print job content to the image forming apparatus <NUM> in real time, unless the image forming apparatus <NUM> is offline to be in a state to be printed. At this point, it may have time to cancel the print job. Otherwise, the user chooses to cancel the print job during the process of transmitting the print job content data from the print drive module <NUM> to the image forming apparatus <NUM>, which may interrupt analyzing operation of the print job content data by the image forming apparatus <NUM>, thereby interrupting the print job. In addition, different timing of canceling the job may affect how much the image forming apparatus <NUM> analyzes the print job content, such that timing of ending the print job may be affected, thereby affecting the end of the print job operation. For example, when the user transmits a print job content containing <NUM> pages of print content in the application software module <NUM> and when the user cancels the print job in the background print processing module <NUM>, the image forming apparatus <NUM> may be analyzing the data of the first data band of the print job content at this point. Therefore, after monitoring the print cancellation instruction, the analyzing operation of current first data band may be interrupted, that is, the byte length of currently analyzed data may be less than the byte length of one data band. Therefore, the image forming apparatus <NUM> may not be able to exit the analyzing operation flow of current data band, and thus may not further normally analyze the print job end mark to end current print job, which may make the image forming apparatus <NUM> determine that current print job has not ended, and always wait to analyze the print job end mark. Therefore, even if subsequent print job content is issued, the image forming apparatus <NUM> may not normally execute the print job.

When the user issues the print cancellation instruction in the background print processing module <NUM>, the background print processing module <NUM> monitors the print cancellation instruction inputted by the user to determine that current print job is canceled, and steps <NUM> and <NUM> are executed.

If the user does not input the print cancellation instruction, the background print processing module <NUM> determines that the print job has not been canceled and executes step <NUM> to continue normal print job operation.

The background print processing module <NUM> transmits the print job content before the print job is canceled to the print control module <NUM>.

The background print processing module <NUM> transmits the print job content before the print job is canceled to the print control module <NUM> in the form of a data stream.

The background print processing module <NUM> only transmits received print job content before the print job is canceled to the print control module <NUM>. For received print job content after the print job is cancelled, the background print processing module <NUM> may not transmit received print job content after the print job is cancelled to the print control module <NUM>. Therefore, previously received print job content after the print job is canceled is prevented from being transmitted to the print control module <NUM>.

At step <NUM>, transmit transmission termination notification.

The background print processing module <NUM> transmits the transmission termination notification to the print data processing module <NUM>; and the print data processing module <NUM> terminates the transmission of the print job content transmitted by the application software module <NUM> according to the transmission termination notification. Therefore, the print data processing module <NUM> is prevented from continuing to transmit the print job content from the application software module <NUM>.

It should be noted that in embodiments of the present disclosure, step <NUM> may be performed before step <NUM>, or step <NUM> and step <NUM> may be performed simultaneously.

At step <NUM>, add dummy data and the print job end mark to generate and transmit print data.

The print control module <NUM> adds dummy data and the print job end mark to the print job content before the print job is canceled to generate print data and transmit the print data to the image forming apparatus <NUM>.

The print control module <NUM> transmits the print data in the form of a data stream to the image forming apparatus <NUM>.

In the print data received by the print control module <NUM>, there may be print data whose length is less than the byte length of one data band analyzed by the image forming apparatus <NUM>. Therefore, the print control module <NUM> may add dummy data at the end of the print data, and the byte length of the dummy data may be greater than the byte length of one data band, so that the image forming apparatus <NUM> may exit the analyzing operation of current data band according to the analyzed dummy data. It should be further noted that the byte length of the dummy data here is greater than the byte length of the data band scanned by the image forming apparatus <NUM> from the print data, which may avoid the case that received dummy data is discarded due to insufficient bytes of dummy data when the image forming apparatus <NUM> analyzes the print data of one data band. For example, if the byte length of the dummy data "0x00" is greater than the byte length of one data band, the image forming apparatus <NUM> may inevitably end the analyzing process of one data band, so that subsequent operations may be performed normally. For example, subsequent operations may be operations of normally analyzing the print job end mark.

A copy of the print job content may include a pair of print job marks. A print job start mark may be configured at the beginning of each print job, and a print job end mark may be configured at the end of each print job. In embodiments of the present disclosure, the print job content may be truncated because the print job is canceled, such that in addition to adding dummy data to the print job content before the print job is canceled, the print control module <NUM> may add the print end mark to the print job content before the print job is canceled, thereby exiting the analyzing operation of current print job and ending the print job. If dummy data is not added to the print job content to end the analyzing operation of current print job, the image forming apparatus <NUM> may not be able to identify the print job end mark, such that the analyzing operation of the print job may not exit to end printing. Therefore, in embodiments of the present disclosure, by adding specific data to the print job content to exit the analyzing operation, the image forming apparatus <NUM> may normally analyze the print job end mark, such that the analyzing operation of current print job may be closed normally to end current print job.

At step <NUM>, analyze the dummy data and the print job end mark to end the print job.

The image forming apparatus <NUM> analyzes the dummy data from the print data and exits the analyzing operation according to the dummy data; and analyzes the print job end mark from the print data and end the print job according to the print job end mark.

In the technical solution provided by embodiments of the present disclosure, the image forming apparatus may exit the analyzing operation in time through the dummy data in the print data and end current print job in time according to the print job end mark in the print data; therefore, the influence on subsequent print jobs due to incomplete content of canceled print job may be avoided.

Embodiments of the present disclosure provides a computer-readable storage medium. The computer-readable storage medium includes a stored program, where when being executed, the program causes the device where the computer-readable storage medium is located to execute above-mentioned print job cancellation method.

Embodiments of the present disclosure provide a computer program product including an instruction, where when the computer program product is executed on a computer or any at least one processor, the computer program product causes the computer to execute above-mentioned print job cancellation method.

Embodiments of the present disclosure provide a terminal device, including one or more processors, a memory, and one or more computer programs. The one or more computer programs are stored in the memory, the one or more computer programs include instructions, when being executed by the device, the instructions cause the device to execute above-mentioned print job cancellation method.

<FIG> illustrates a schematic of a terminal device provided by exemplary embodiments of the present disclosure. As shown in <FIG>, a terminal device <NUM> in one embodiment may include a processor <NUM>, a memory <NUM>, and a computer program <NUM> which is stored in the memory <NUM> and executable on the processor <NUM>. When the computer program <NUM> is executed by the processor <NUM>, the print job cancellation method in embodiments of the present disclosure may be implemented, which may not be described in detail herein.

The terminal device <NUM> may include, but may not be limited to, the processor <NUM> and the memory <NUM>. Those skilled in the art should understand that <FIG> only illustrates an example of the terminal device <NUM>, which may not limit the terminal device <NUM>. The terminal device may include more or less components than the one shown in <FIG>, or some components may be combined to form the terminal device, or different components may be used to form the terminal device. For example, network devices may also include input and output devices, network access devices, buses, and the like.

The processor <NUM> may be an element, including a central processing unit (CPU), other general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and the like. A general-purpose processor may be a microprocessor, or the processor may be any conventional processor or the like.

The memory <NUM> may be an internal storage unit of the terminal device <NUM>, such as a hard disk or a memory of the terminal device <NUM>. The memory <NUM> may also be an external storage device of the terminal device <NUM>, for example, a plug-in hard disk, a smart memory card (SMC), a secure digital (SD) card, a flash memory card, or the like equipped on the terminal device <NUM>. Furthermore, the memory <NUM> may also include both an internal storage unit of the terminal device <NUM> and an external storage device. The memory <NUM> may be configured to store computer programs, and other programs and data required by the network device. The memory <NUM> may also be configured to temporarily store data that has been outputted or will be outputted.

From the above-mentioned embodiments, it may be seen that the solutions provided by the present disclosure may achieve at least the following beneficial effects.

Those skilled in the art may clearly understand that, for the convenience and brevity of description, for the working process of above-mentioned system, device and unit, reference may be made to corresponding process in above-mentioned method embodiments, which may not be described in detail herein.

In some embodiments provided by the present disclosure, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are merely exemplary. For example, the division of the unit may only be a logical function division. In actual implementation, there may be other division manners. For example, multiple units or components may be combined or integrated into another system, or some features may be omitted or may not be implemented. On the other hand, shown or discussed mutual coupling or direct coupling or communication connection may be through indirect coupling or communication connection of some interfaces, devices or units, and may be in electrical, mechanical or other forms.

The units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one location, or may be distributed to multiple network units. Some or all of units may be selected according to actual needs to achieve the objective of the solution in one embodiment.

In addition, each functional unit in each embodiment of the present disclosure may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. Above-mentioned integrated units may be implemented in the form of hardware or may be implemented in the form of hardware plus software functional units.

Above-mentioned integrated units implemented in the form of software functional units may be stored in a computer-readable storage medium. Above-mentioned software functional units may be stored in a computer-readable storage medium which may include multiple instructions causing a computer device (which may be a personal computer, a server, a network device, or the like) or a processor to execute some steps of methods described in various embodiments of the present disclosure. Above-mentioned computer-readable storage medium may include U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, and other various programs that can store programs medium of code.

Claim 1:
A print job cancellation method for canceling a print job, comprising:
transmitting (<NUM>), within a terminal device (<NUM>), original print job content of the print job, performing (<NUM>) language conversion on the original print job content, transmitting, by the terminal device (<NUM>), the print job content to an image forming apparatus (<NUM>),
and executing the print job according to the print job content by the image forming apparatus (<NUM>); characterized by
during transmitting the print job content to the image forming apparatus (<NUM>),
determining (<NUM>), by the terminal device (<NUM>), whether the print job is canceled;
if the print job is determined to be canceled, adding (<NUM>), by the terminal device (<NUM>), specific data to the print job content before the print job is cancelled, prior to transmitting print job content received after the print job is cancelled, wherein the specific data is configured to instruct an end of analyzing the print data and to
instruct an end of the print job to the image forming apparatus (<NUM>); and
transmitting, by the terminal device (<NUM>), the print data to the image forming apparatus (<NUM>), such that the image forming apparatus (<NUM>) ends the print job according to the specific data analyzed (<NUM>) from the print data; wherein:
the specific data includes dummy data and a print job end mark;
the dummy data configured to instruct the image forming apparatus (<NUM>) to exit an analyzing operation; and
when the print job end mark is analyzed, the image forming apparatus completes (<NUM>) reception of all print data of the print job and ends the print job; and wherein:
a byte length of the dummy data is configured to be greater than a byte length of a data band scanned by the image forming apparatus (<NUM>) from the print data.