CN114756182A - Printing method based on server and related equipment - Google Patents

Printing method based on server and related equipment Download PDF

Info

Publication number
CN114756182A
CN114756182A CN202210454867.9A CN202210454867A CN114756182A CN 114756182 A CN114756182 A CN 114756182A CN 202210454867 A CN202210454867 A CN 202210454867A CN 114756182 A CN114756182 A CN 114756182A
Authority
CN
China
Prior art keywords
printing
image
print
images
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210454867.9A
Other languages
Chinese (zh)
Inventor
郭飞
雷增强
徐星
江洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Runtianzhi Digital Equipment Co Ltd
Original Assignee
Shenzhen Runtianzhi Digital Equipment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Runtianzhi Digital Equipment Co Ltd filed Critical Shenzhen Runtianzhi Digital Equipment Co Ltd
Priority to CN202210454867.9A priority Critical patent/CN114756182A/en
Publication of CN114756182A publication Critical patent/CN114756182A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1241Dividing a job according to job requirements, e.g. black/white and colour pages, covers and body of books, tabs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Facsimiles In General (AREA)

Abstract

The embodiment of the application provides a printing method based on a server, which is used for solving the problem of image printing. The method in the embodiment of the application comprises the following steps: configuring M print servers, wherein M is greater than or equal to 1; after N original images are obtained, segmenting the N original images to obtain M × N segmented images, wherein N is larger than or equal to 1; uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images; and after uploading the M by N segmentation images is finished, sending printing starting information to the M printing servers so that the M printing servers print the M by N segmentation images.

Description

Printing method based on server and related equipment
Technical Field
The embodiment of the application relates to the field of computer printing, in particular to a printing method based on a server.
Background
As networks continue to sweep around the world, local area networks are becoming increasingly popular as an important component of the networks. The network printing client integrating the network and the printing function is continuously entering the field of network office, the use and popularization of the network printing client embody the convenience and the rapidness of the network and save a large amount of office equipment, so that the network printing client has multiple purposes. The network printing refers to accessing a printing client as an independent device to a local area network or the internet through a printing server (built-in or external), so that the printing client gets rid of the affiliated position of being always used as a computer peripheral, becomes an independent member in the network, becomes a network node which can be driven by the printing client and an output terminal for information management, and other members can directly access and use the printing client.
The existing printer is only used for printing images, and the problem of image printing width supported by the printer to the maximum is not considered. That is, when the size (width) of an image file printed by the printer is large and exceeds the maximum printing width, an excess portion of the image is cut out. The printer cannot print out a complete image according to the actual image file size, and thus cannot meet the customer requirements.
Disclosure of Invention
The embodiment of the application provides a printing method based on a server, which is used for solving the problem of image printing.
A first aspect of the embodiments of the present application provides a server-based printing method, applied to a print client, including:
configuring M print servers, wherein M is greater than or equal to 1;
after N original images are obtained, segmenting the N original images to obtain M × N segmented images, wherein N is larger than or equal to 1;
uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and after uploading the M by N segmentation images is finished, sending printing starting information to the M printing servers so that the M printing servers print the M by N segmentation images.
In the embodiment of the application, the original image is cut into a plurality of cut images, the cut images are uploaded to a plurality of printing servers, and the cut images are printed. Therefore, partial images exceeding the maximum printing width cannot be cut off, and the printing server can print complete images according to the size of the actual image file, so that the requirements of clients are met.
A second aspect of the embodiments of the present application provides a server-based printing method, applied to a print client, including:
configuring M print servers, wherein M is greater than or equal to 1;
after N original images are obtained, segmenting the N original images to obtain M × N segmented images, wherein N is larger than or equal to 1;
uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and after uploading the M by N segmentation images is finished, sending printing starting information to the M printing servers so that the M printing servers print the M by N segmentation images.
Optionally, the segmenting the N original images includes:
and segmenting the N original images by adopting an image segmentation algorithm.
Optionally, the uploading the M × N sliced images to the image queues corresponding to the M print servers includes:
uploading the M x N sliced images to the image queues of the M print servers by a multi-server concurrent communication technique.
Optionally, after the printing the M × N sliced images, the method further includes:
and acquiring a next period image to take the next period image as an original image, and returning to the step of segmenting the N original images.
Optionally, after the uploading the M × N sliced images to the image queues corresponding to the M print servers, the method further includes:
and after the M x N segmented images are uploaded, uploading completion information fed back by the printing server is received, wherein the uploading completion information is used for indicating that the M x N segmented images are uploaded completely.
The embodiment of the application provides a printing method based on a server, wherein multiple paths of servers are used for parallel communication, all slice images of the same large image file are transmitted to all the servers, and the idea that a central processing unit in a system multi-core executes multithreading is utilized to simultaneously upload all slice data of the large image file to the servers, so that the image file is uploaded to the servers more quickly, and the waiting time of a user in the actual production process is shortened.
A third aspect of the embodiments of the present application provides a server-based printing method, which is applied to a print server, and includes:
acquiring a segmentation image obtained by segmenting an original image by a print client;
adding the sliced image to an image queue corresponding to the print server, wherein the sliced image contained in the image queue belongs to different original images;
and after the uploading of the segmented image is finished, receiving printing starting information sent by the printing client so as to print the segmented image.
The embodiment of the application provides a printing method based on a server, and the realizability of the scheme is improved by printing the segmented images in the image queue.
A fourth aspect of the embodiments of the present application provides a server-based printing method, which is applied to a print server, and includes:
acquiring a segmentation image obtained by segmenting an original image by a print client;
adding the sliced image to an image queue corresponding to the print server, wherein the sliced image contained in the image queue belongs to different original images;
and after the uploading of the segmented image is finished, receiving printing starting information sent by the printing client to print the segmented image.
Optionally, the receiving printing start information sent by the printing client to print the sliced image includes:
receiving printing starting information sent by the printing client to enter a printing state;
and printing the segmentation image after the printing server enters the printing state.
Optionally, the receiving printing start information sent by the printing client to print the sliced image includes:
receiving printing starting information sent by the printing client;
and after the printing server receives the printing starting information, acquiring the segmentation image from the image queue and printing the segmentation image.
Optionally, after receiving the printing start information sent by the printing client to enter the printing state, the method further includes:
and feeding back the information of the printing state to the printing client.
The embodiment of the application provides a printing method based on a server, wherein the printing server prints the segmented images in the image queue by receiving a printing starting instruction sent by a printing client, so that the realizability of the scheme is improved.
A fifth aspect of the embodiments of the present application provides a server-based printing system, applied to a print client, including:
a configuration unit configured to configure M print servers, M being greater than or equal to 1;
the segmentation unit is used for segmenting the N original images after the N original images are obtained so as to obtain M × N segmented images, wherein N is greater than or equal to 1;
the uploading unit is used for uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and the sending unit is used for sending printing starting information to the M printing servers after the M x N segmentation images are uploaded, so that the M printing servers print the M x N segmentation images.
A fifth aspect of embodiments of the present application provides a server-based printing system for performing the method according to the first aspect.
A sixth aspect of the embodiments of the present application provides a server-based printing system, which is applied to a print client, and includes:
a configuration unit configured to configure M print servers, M being greater than or equal to 1;
the segmentation unit is used for segmenting the N original images after the N original images are obtained so as to obtain M × N segmented images, wherein N is greater than or equal to 1;
the uploading unit is used for uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and the sending unit is used for sending printing starting information to the M printing servers after the M x N sliced images are uploaded, so that the M printing servers print the M x N sliced images.
Optionally, the slicing unit includes: and cutting the subunits.
And the segmentation subunit is used for segmenting the N original images by adopting an image segmentation algorithm.
Optionally, the uploading unit includes: and an uploading subunit.
And the uploading subunit is used for uploading the M x N sliced images to the image queues of the M printing servers by a multi-server concurrent communication technology.
Optionally, the system further comprises: and an execution unit.
And the execution unit is used for acquiring a next period image, taking the next period image as an original image, and returning to the step of cutting the N original images.
Optionally, the system further comprises: and a receiving unit.
The receiving unit is configured to receive upload completion information fed back by the print server after the uploading of the M × N segmented images is completed, where the upload completion information is used to indicate that the uploading of the M × N segmented images is completed.
A sixth aspect of the embodiments of the present application provides a server-based printing system for executing the method according to the second aspect.
A seventh aspect of the embodiments of the present application provides a server-based printing system, applied to a print server, including:
an acquisition unit configured to acquire a segmented image obtained by segmenting an original image by a print client;
the adding unit is used for adding the sliced image to an image queue corresponding to the printing server, wherein the sliced image contained in the image queue belongs to different original images;
and the receiving unit is used for receiving the printing starting information sent by the printing client side after the uploading of the segmented image is finished so as to print the segmented image.
A seventh aspect of the embodiments of the present application provides a server-based printing system for executing the method according to the third aspect.
An eighth aspect of the embodiments of the present application provides a server-based printing system, which is applied to a print server, and includes:
an acquisition unit configured to acquire a segmented image obtained by segmenting an original image by a print client;
the adding unit is used for adding the sliced image to an image queue corresponding to the printing server, wherein the sliced image contained in the image queue belongs to different original images;
and the receiving unit is used for receiving the printing starting information sent by the printing client side after the uploading of the segmented image is finished so as to print the segmented image.
Optionally, the receiving unit includes: a first receiving subunit, a printing subunit.
The receiving subunit is configured to receive print starting information sent by the print client to enter a print state;
and the printing subunit is used for printing the segmented image after the printing server enters the printing state.
Optionally, the receiving unit includes: and a second receiving subunit for acquiring the subunits.
The second receiving subunit is configured to receive print starting information sent by the print client;
and the obtaining subunit is configured to obtain the segmented image from the image queue and print the segmented image after the print server receives the print starting information.
Optionally, the system further comprises: and a feedback unit.
And the feedback unit is used for feeding back the information of the printing state to the printing client.
An eighth aspect of the present embodiment provides a server-based printing system for executing the method according to the fourth aspect.
A ninth aspect of embodiments of the present application provides a server-based printing apparatus, including:
the system comprises a central processing unit, a memory, an input/output interface, a wired or wireless network interface and a power supply;
the memory is a transient storage memory or a persistent storage memory;
the central processor is configured to communicate with the memory and execute the instructions in the memory to perform the method of any of the first to fourth aspects.
A tenth aspect of embodiments of the present application provides a computer-readable storage medium, where the computer-readable storage medium includes instructions that, when executed on a computer, cause the computer to perform the method according to any one of the first aspect to the fourth aspect.
According to the technical scheme, the embodiment of the application has the following advantages:
the embodiment of the application provides a server-based printing method, an original large image is cut into a plurality of cut images, the cut images are uploaded to a plurality of printing servers and printed, therefore, partial images exceeding the maximum printing width cannot be cut off, a printer can print out complete images according to the size of an actual image file, and the requirements of clients are met.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments described in the present application, and other drawings can be obtained by those skilled in the art according to the drawings.
FIG. 1 is a schematic diagram of a system architecture according to an embodiment of the present disclosure;
FIG. 2 is a block diagram of an embodiment of a printing method based on a server according to an embodiment of the present disclosure;
FIG. 3 is a block diagram of an implementation framework of a multi-server large image file transfer communication technique disclosed in an embodiment of the present application;
fig. 4 is a frame diagram of an implementation of a RIP image multi-server splitting technique disclosed in an embodiment of the present application;
FIG. 5 is a block diagram of an implementation of a multi-server initiated print technique disclosed in an embodiment of the present application;
FIG. 6 is a schematic flow chart diagram illustrating a server-based printing method according to an embodiment of the present disclosure;
FIG. 7 is a schematic diagram of a server-based printing system according to an embodiment of the present disclosure;
FIG. 8 is a schematic block diagram of another server-based printing system disclosed in an embodiment of the present application;
FIG. 9 is a schematic diagram of a server-based printing system according to an embodiment of the present disclosure;
FIG. 10 is a schematic block diagram of another server-based printing system disclosed in an embodiment of the present application;
fig. 11 is a schematic structural diagram of a server-based printing apparatus according to an embodiment of the present application.
Detailed Description
The terms "first," "second," "third," "fourth," and the like in the description and in the claims of the present application and in the drawings described above, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein. Moreover, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that the descriptions in this application referring to "first", "second", etc. are for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In addition, technical solutions between various embodiments may be combined with each other, but must be realized by a person skilled in the art, and when the technical solutions are contradictory or cannot be realized, such a combination should not be considered to exist, and is not within the protection scope of the present application.
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
As networks continue to sweep around the world, local area networks are becoming increasingly popular as an important component of the networks. The network printing client integrating the network and the printing function is continuously entering the field of network office, the use and the popularization of the network printing client not only embody the convenience and the rapidness of the network, but also save a large amount of office equipment, so that the network printing client achieves multiple purposes. The network printing refers to accessing a printing client as an independent device to a local area network or the internet through a printing server (built-in or external), so that the printing client gets rid of the affiliated position of being always used as a computer peripheral, becomes an independent member in the network, becomes a network node which can be driven by the printing client and an output terminal for information management, and other members can directly access and use the printing client.
The prior art only prints images, does not consider the problem of the maximum supported image printing width of the printer, and when the size (width) of an image file printed by the printer is large, partial images exceeding the maximum printing width can be cut out. The printer cannot print out a complete image according to the size of an actual image file, so that the production requirement of a client cannot be met, and multi-server printing is introduced to solve the problem of printing large-size (wide) images. Of course, it should be noted that unless a single server or Personal Computer (PC) hardware supports printing over 8 nozzles, multi-server printing is the most desirable option for printing large wide image files.
Therefore, the embodiment of the application provides a server-based printing method for solving the problem of image printing. Of course, it should be understood that the method is implemented based on a Transmission Control Protocol (TCP)/Internet Protocol (IP) or a client/server mode communication technology. The method is based on a client/server communication technology and an image segmentation technology, and is born in the background of an image segmentation processing technology and the client/server communication technology. It will be appreciated that TCP is used for data transmission control from an application to a network. TCP is responsible for breaking data into IP packets before they are transmitted and then reassembling them as they arrive. IP is responsible for communication between computers and sends and receives data packets over the internet. For convenience of description, the technology applied in the embodiments of the present application is not described in detail in the following, and the technology applied in the embodiments of the present application is not limited, and is not described in detail in the following.
Meanwhile, the method is based on the (Client/Server) communication mode technology, and the printing Client and the printing Server together complete the printing task. It should also be understood that the Client and the Server are often located on two computers that are far apart, and the task of the Client program is to submit the user's request to the Server program and then display the results returned by the Server program to the user in a specific form. The task of the Server program is to receive the service request from the client program, to process the corresponding processing, and to return the result to the client program. Although the traditional C/S architecture adopts an open mode, the traditional C/S architecture is only open at one level of system development, and specific software support is required in specific applications, namely a Client side and a Server side. Because the open environment really expected by the user cannot be provided, the software of the C/S structure needs to develop different versions of software aiming at different operating systems, and the product is updated very quickly, so that the product is difficult to adapt to simultaneous use of more than one hundred local area network users. And the cost is high and the efficiency is low. For convenience of description, the technology applied by the print client or the print server is not described in detail in the following, and the technology applied by the print client or the print server is not limited, and is not described in detail in the following.
Referring to fig. 1, fig. 1 is a schematic diagram of a system architecture disclosed in the present embodiment, which includes a print client 101 and a print server 102. The print client 101 is connected to the print server 102, but it should be understood that the print client 101 may be connected to a plurality of print servers 102, that is, the number of print servers 102 is not limited in the embodiment of the present application. Generally, the number of print servers 102 depends on the printer being unable to print out a complete image according to the actual image file size, and if possible, only one print server 102 may be needed; if not, it depends on objective conditions such as size and width, and is not described herein in detail.
The print client 101 may segment an original image into a plurality of segment images by an image segmentation algorithm and then upload the segmented segment images to the print server 102 based on a service communication framework.
Specifically, the idea of reading and segmenting the large image file at the print client 101 from the image header by using the background thread is adopted, so that the defect that the next segmented image is segmented when the image header is returned again after one segmented image is segmented is avoided, that is, time is wasted, the file only needs to be opened for 1 time in the whole segmentation process, and the image file only needs to be read, so that the large image can be represented to be segmented, and the image segmentation and color separation speed is greatly improved compared with other algorithms.
The print server 102 includes a board driver layer, a nozzle driver layer for driving the board and the physical nozzle, and the print server 102 may place the acquired segmented image in an image queue, and when the print server 102 prints, the print server may sequentially print the image according to an arrangement order in the image queue. It will also be appreciated that the board driver layer, which is generally composed of a Hardware Abstraction Layer (HAL), a board level support package (BSP), and drivers, is an essential part of the embedded system. It functions to provide an operation interface of an external device for an upper layer program and to implement a driver of the device. In the embodiment of the present application, the board driver layer is only used for executing the program instructions sent by the print client 101. The nozzle driving plate card is mainly used for receiving a nozzle operation instruction and printing an image file in the embodiment of the application. The physical ejection head is mainly used for ejecting ink in the embodiment of the present application.
It should be understood that, in the embodiment of the present application, specific functions or modules included in the print client 101 and the print server 102 are not limited, and the print client 101 and the print server 102 may further have other functions or modules, which are not limited specifically here, and are not described in detail later.
Referring to fig. 2, fig. 2 is a structural diagram of an implementation of a server-based printing method according to an embodiment of the present application.
Fig. 2 is a configuration diagram mainly illustrating an example of 2 server configurations, that is, an implementation configuration diagram in which 2 print servers are provided per print unit. Taking the Y print unit as an example, the Y print unit is configured with 2 print servers, i.e., a print server 1 and a print server 2. In conjunction with the above description of the print client and the print server, it can be understood that when two print servers are configured, the print client may divide a large image file or other images into two divisional maps (divisional map 1, divisional map 2), and then the print client uploads the two divisional maps to the print server 1 and the print server 2, that is, the print server 1 or the print service area 2 respectively acquires the divisional map 1 or the divisional map 2. It should be understood that the number of print servers is not limited in the embodiments of the present application, but it should be noted that the number of the split maps after splitting a large image file or other image is related to the number of print servers.
It can also be understood that 1 example of the server configuration is 1 printing unit configuring 1 printing server (i.e. normal single-server printing mode), or only one printing server under each printing unit in fig. 2. The multi-server printing also includes a print server, and the technology of the print server is also applicable. It will be understood that other numbers of server configuration examples are analogized to the above figures and are not described in detail herein.
Referring to fig. 3, fig. 3 is a frame diagram of an implementation of a multi-server large image file transmission communication technique according to an embodiment of the present disclosure. Fig. 3 mainly describes an example of uploading Raster Image Processor (RIP) images (3 print servers), and it should be noted that this is only one example of uploading RIP images, and in practical cases, there may be N print servers, where N is an integer greater than or equal to 1, and the specific details are not limited herein.
Specifically, the RIP is a tool capable of converting PostScript information formed by image processing and layout software into a high-resolution dot matrix image, and the formed image can be output on paper or film by a laser printer, an ink jet printer, a photocopier, or the like. Meanwhile, the RIP is also an interpreter for interpreting and converting layout information (various images, graphics, and characters) described by a page description language into data information that can be output by an output apparatus and outputting it to a specified output apparatus. It can also be said that the graphics, images, and characters are interpreted into a language that can be recognized by a printer or a photocopier. For convenience of description, the RIP will not be described in detail later.
The print client in fig. 3 divides the RIP source image into a slice image 1, a slice image 2, and a slice image 3, then uses multiple servers to communicate in parallel, transmits each slice image of the same large image file to each server (print server 1, print server 2, and print server 3), and uploads each slice data of the large image file to the server at the same time by using a Central Processing Unit (CPU) in a system multi-core to execute multithreading, so that the image file is uploaded to the server more quickly, and the waiting time of a user in the actual production process is reduced.
It will also be appreciated that the slice images 1 may be uploaded to the print server 1, to the print server 2, or to the print server 3, as may other slice images. The embodiment of the application does not limit the print servers to which the slice images are uploaded, and only needs to satisfy the condition that the slice images in each print server are not the slice images obtained by segmenting the same original image.
Referring to fig. 4, fig. 4 is a frame diagram of an implementation of a RIP image multi-server splitting technique according to an embodiment of the present disclosure. Fig. 4 mainly describes an example of splitting the RIP image (3 print servers), and it should be noted that this is only one embodiment of the splitting of the RIP image, and in practical cases, there may be N print servers, where N is an integer greater than or equal to 1, and this is not limited herein.
Specifically, the multi-server segmentation of the RIP source images is performed at the print client, not by the print server, that is, the technique is a technique in which the print client performs the segmentation of the RIP image files according to the number of the print servers. The method comprises the steps that the printing width of each server needs to be calculated in multi-server printing, then the RIP image is cut into a plurality of slice images according to the printing width, the physical characteristics of nozzle joints among the servers need to be considered when the image is cut, namely the length of the joints needs to be accurately calculated, and the image cutting starting position is determined according to the length of the joints among the servers.
In fig. 4, there are three print servers, which are a print server 1, a print server 2, and a print server 3, respectively. And the printing client divides the RIP source image into a slice image 1, a slice image 2 and a slice image 3 according to the number of the three printing servers.
Referring to fig. 5, fig. 5 is a frame diagram of an implementation of a multi-server initiated printing technique according to an embodiment of the present disclosure. Fig. 5 mainly describes an example of starting printing by a print client (3 print servers), and it should be noted that this is only one example of starting printing by the print client, and in practical cases, there may be N print servers, where N is an integer greater than or equal to 1, and this is not limited herein.
Specifically, the print client transmits a print-start network print message, which includes a print job ID (i.e., an ID of each slice image), to all print servers.
In fig. 5, the print client transmits a print network start message to the print server 1, the print server 2, and the print server 3. The message of starting printing network includes the ID of the slice image, such as the ID of slice image 1, the ID of slice image 2, and the ID of slice image 3.
In combination with the various technologies described above, an embodiment of the present application provides a server-based printing method. The method is used for solving the problem of printing large-size (wide) images and comprises steps 601-606.
601. And configuring the number of the multiple servers.
The number of print servers needs to be configured before printing a large image file. It is understood that the large image file mentioned in the present embodiment is the original image described in the above section. For convenience of understanding and description, the description of the large image file is described by using the original image, and is not described in detail later.
It is understood that the number of configured print servers may be 1, or M, where M is an integer greater than or equal to 1. It should be understood that, in this embodiment, the number of the print servers is not limited, and the number of the print servers may be any integer greater than or equal to 1, but for convenience of description, the number of the print servers is set to 3 in this embodiment, and details of this are not described again in the following.
602. And segmenting an original image file.
After the printing client side obtains the original image, the original image is segmented.
Specifically, when the print client acquires N original images, it can be understood that one file Word may have N pages, and the print client may perform overall recognition on the file Word, thereby recognizing the N images. Then, the print client takes the N images as N original images. It should be understood that the obtaining of the original image in step 602 in this embodiment is only one example, and the obtaining manner or the number of the original images is not limited in this embodiment, and is not described herein again in the following. The print client may acquire the original image in other manners, for example, one document PPT may have N PPT pages, and the print client may perform overall recognition on the document PPT, so as to recognize N images. Then, the print client takes the N images as N original images.
The method has the advantages that the original file segmentation of the printing client side adopts the idea that the background thread reads and segments from the head of the image, the defect that the segmentation of the next image is started by returning the head of the image again after one segmentation image is segmented is avoided (time is consumed), the file is only opened for 1 time in the whole segmentation process, the image is segmented after the image file is read, and the image segmentation and color separation speed is greatly improved compared with other algorithms.
It should be further understood that image segmentation is performed at a print client, and is a technology for performing original image segmentation according to the number of servers, where multi-server printing requires to calculate a printing width of each server, and then the original image is segmented into a plurality of slice images according to the printing width, and when segmenting an image, physical characteristics of a nozzle seam between servers need to be considered (seam length needs to be accurately calculated), and an image segmentation starting position is determined according to the seam length between servers.
It is understood that the number of original images may be 1 or N, where N is an integer greater than or equal to 1. It should be understood that the number of original images is not limited in this embodiment, and the number of original images may be any integer greater than or equal to 1, and thus, it is understood that the number of split images is the number of print servers multiplied by the number of original images, i.e., N × M. For convenience of description, the present embodiment sets the number of original images to 2. Since the number of print servers is 3, there are the sliced image 1, the sliced image 2, the sliced image 3, the sliced image 4, the sliced image 5, and the sliced image 6. The image 1 is cut, the image 2 is cut, and the image 3 belongs to a first original image. The segmented image 4, the segmented image 5 and the segmented image 6 belong to the second original image.
603. Uploading all slice image data.
And uploading the M × N cut images to image queues corresponding to the M printing servers.
Specifically, the printing client divides the slice image data in advance, and then the client uploads the slice images to each printing server job queue by adopting a multi-server concurrent communication technology. It is to be understood that the job queue described in this embodiment is an image queue described in the above section, and for convenience of description, the job queue is described later. It can also be understood that, the multi-path servers are used for parallel communication, all slice images of the same original image file are transmitted to all the servers, and all slice data of the original image file are uploaded to the servers at the same time by utilizing the multi-core CPU of the system to execute the multi-thread idea, so that the image file is uploaded to the servers more quickly, and the waiting time of users in the actual production process is reduced.
In the present embodiment, specifically, the slice images 1 to 6 are uploaded to the job queues on the print server 1, the print server 2, and the print server 3. Correspondingly, the print server 1 has a slice image 1 and a slice image 4 in the job queue, the print server 2 has a slice image 2 and a slice image 5 in the job queue, and the print server 3 has a slice image 3 and a slice image 6 in the job queue. It should be understood that the present embodiment is not limited to the data of the slice images in the print server job queue, and for example, the print server 1 job queue may include the slice images 2 and 4, the print server 2 job queue includes the slice images 3 and 5, and the print server 3 job queue includes the slice images 1 and 6. The job queue in the print server only needs to satisfy that the included sliced image belongs to different original images.
604. And waiting for all the slice image data to be uploaded to all the servers.
And after all the slice image data are uploaded to all the servers, the print server uploads a feedback completion message, so that the print client determines that the job uploading is completed.
In this embodiment, after the 6 slice image data are uploaded to the 2 print servers, the print server will feed back the uploaded information to the print client, so that the print client can determine that the image uploading is completed.
605. All servers are started to print images.
And after the M × N sliced images are uploaded, the printing client sends printing starting information to the M printing servers, so that the M printing servers print the M × N sliced images.
Specifically, the print client sends a message of starting printing network to all the print servers, and when all the print servers enter a printing state, the print client starts printing successfully.
In the present embodiment, the print client transmits a print start message including the image ID information of the slice images 1 to 6 to the print server 1, the print server 2, and the print server 3. And when the printing server receives the printing starting message, the printing server takes out the slice images from the corresponding job queue according to the printing starting message for printing.
For example, when the print server 1 receives the print start message, it analyzes and analyzes the print start message, and takes out the slice image 1 and the slice image 4 from the job queue based on the analysis result. Correspondingly, the print server 2 takes out the slice images 2 and 5 from the job queue; the print server 3 takes out the slice image 3 and the slice image 6 from the job queue. It can be understood that the data of the slice image and the corresponding ID that are taken out from the job queue by the print server are caused by the final result of the print client uploading the slice image to the print server, and thus, it is not difficult to understand that the data or the ID of the slice image that is taken out from the job queue by the print server is not limited in the embodiment.
When the print server takes out the slice image from the job queue and prints the slice image, the print server enters a printing state, and then the print server feeds back a result of entering the printing state to the print client. That is, the client-initiated printing at this time succeeds.
606. Waiting for printing completion or printing end.
When all the slice images are printed, the print server sends an image printing completion notification to the print client.
Specifically, in this embodiment, after the printing of the 6 slice images is completed, the print server 1, the print server 2, and the print server 3 send a print completion notification to the print client to notify the print client that the printing is completed.
It should be understood that, after the print client acquires the new large image file (original image file), step 601 may not be executed, but step 602 may be directly executed, that is, the acquired new large image file (original image file) is directly sliced, that is, steps 602 to 606 are executed.
It should also be understood that, in the various embodiments of the present application, the sequence numbers of the above steps do not mean the execution sequence, and the execution sequence of the steps should be determined by their functions and inherent logic, but should not constitute any limitation on the implementation process of the embodiments of the present application.
The embodiment provides a server-based printing method, which includes the steps of segmenting an original large image into a plurality of segmented images, uploading the segmented images to a plurality of printing servers, and printing the segmented images, so that partial images exceeding the maximum printing width cannot be cut off, and a printer can print out complete images according to the size of an actual image file, and therefore customer requirements are met.
Having described the method in the embodiment of the present application, the following describes a structure of a server-based printing system in the embodiment of the present application, referring to fig. 7, where the structure of a server-based printing system, applied to a print client, includes:
a configuration unit 701 configured to configure M print servers, M being greater than or equal to 1;
a segmentation unit 702, configured to segment the N original images after acquiring the N original images, so as to acquire M × N segmented images, where N is greater than or equal to 1;
an uploading unit 703, configured to upload M × N sliced images to image queues corresponding to the M print servers, where the sliced images included in the image queues belong to different original images;
a sending unit 704, configured to send print start information to the M print servers after the M × N sliced images are uploaded, so that the M print servers print the M × N sliced images.
In this embodiment, an original image is divided into a plurality of divided images, the divided images are uploaded to a plurality of print servers, and the divided images are printed. Therefore, partial images exceeding the maximum printing width cannot be cut off, and the printing server can print complete images according to the size of the actual image file, so that the requirements of clients are met.
In the above description of the structure of a server-based printing system in this embodiment, please refer to fig. 8, the structure of another server-based printing system disclosed in this embodiment is applied to a print client, and includes:
a configuration unit 801 for configuring M print servers, M being greater than or equal to 1;
a segmentation unit 802, configured to segment the N original images to obtain M × N segmented images after obtaining the N original images, where N is greater than or equal to 1;
an uploading unit 803, configured to upload M × N sliced images to image queues corresponding to the M print servers, where the sliced images included in the image queues belong to different original images;
a sending unit 804, configured to send print start information to the M print servers after the M × N sliced images are uploaded, so that the M print servers print the M × N sliced images.
Illustratively, the slicing unit 802 includes: the subunits 8021 are diced.
The segmentation unit 8021 is configured to segment the N original images by using an image segmentation algorithm.
Illustratively, the upload unit 803 includes: upload sub-unit 8031.
The uploading subunit 8031 is configured to upload the M × N sliced images to the image queues of the M print servers through a multi-server concurrent communication technique.
Illustratively, the system further comprises: an execution unit 805.
The execution unit 805 is configured to obtain a next period image, to use the next period image as an original image, and return to the step of slicing the N original images.
Illustratively, the system further comprises: a receiving unit 806.
The receiving unit 806 is configured to receive upload completion information fed back by the print server after the uploading of the M × N segmented images is completed, where the upload completion information is used to indicate that the uploading of the M × N segmented images is completed.
The embodiment provides a printing method based on a server, wherein multiple paths of servers are used for parallel communication, each slice image of the same large image file is transmitted to each server, and the idea of multithreading executed by a central processing unit in a system multi-core is utilized to simultaneously upload each slice data of the large image file to the server, so that the image file is uploaded to the server more quickly, and the waiting time of a user in the actual production process is reduced.
In the following description of the structure of a server-based printing system in the embodiment of the present application, referring to fig. 9, a structure of a server-based printing system applied to a print server includes:
an obtaining unit 901 configured to obtain a segmented image obtained by segmenting an original image by a print client;
an adding unit 902, configured to add the sliced image to an image queue corresponding to the print server, where the sliced image included in the image queue belongs to different original images;
the receiving unit 903 is configured to receive print start information sent by the print client after uploading the split image is completed, so as to print the split image.
The embodiment provides a printing method based on a server, which improves the realizability of the scheme by printing the segmentation images in the image queue.
In the above detailed description of the structure of a server-based printing system in the embodiment of the present application, referring to fig. 10, another structure of a server-based printing system disclosed in the embodiment of the present application is applied to a printing server, and includes:
an obtaining unit 1001 configured to obtain a split image obtained by splitting an original image by a print client;
an adding unit 1002, configured to add the sliced image to an image queue corresponding to the print server, where the sliced image included in the image queue belongs to different original images;
the receiving unit 1003 is configured to receive, after uploading of the split image is completed, print start information sent by the print client, so as to print the split image.
Illustratively, the receiving unit 1003 includes: the first receiving subunit 10031 and the printing subunit 10032.
A receiving subunit 10031, configured to receive print start information sent by the print client to enter a print state;
a printing subunit 10032, configured to print the split image after the print server enters the printing state.
Illustratively, the receiving unit 1003 includes: the second receiving subunit 10033, acquires the subunit 10034.
A second receiving subunit 10033, configured to receive print start information sent by the print client;
an acquiring subunit 10034, configured to acquire the sliced image from the image queue and print the sliced image after the print server receives the print start information.
Illustratively, the system further comprises: a feedback unit 1004.
A feedback unit 1004, configured to feed back information of the printing status to the print client.
The embodiment provides a printing method based on a server, wherein the printing server prints the cut images in the image queue by receiving a printing starting instruction sent by a printing client, so that the realizability of the scheme is improved.
Referring to fig. 11, a schematic structural diagram of a server-based printing apparatus disclosed in the embodiment of the present application includes:
a central processing unit 1101, a memory 1105, an input/output interface 1104, a wired or wireless network interface 1103 and a power supply 1102;
memory 1105 is a transient storage memory or a persistent storage memory;
the central processor 1101 is configured to communicate with the memory 1105 and execute the operations of the instructions in the memory 1105 to perform the methods in the embodiments illustrated in FIG. 6 and described previously.
An embodiment of the present application further provides a chip system, where the chip system includes at least one processor and a communication interface, where the communication interface and the at least one processor are interconnected by a line, and the at least one processor is configured to execute a computer program or instructions to perform the method in the foregoing embodiment shown in fig. 6.
It can be clearly understood by those skilled in the art that, for convenience and simplicity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and the like.

Claims (10)

1. A printing method based on a server is applied to a printing client, and the method comprises the following steps:
configuring M print servers, wherein M is greater than or equal to 1;
after N original images are obtained, segmenting the N original images to obtain M × N segmented images, wherein N is larger than or equal to 1;
uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and after uploading the M by N segmentation images is finished, sending printing starting information to the M printing servers so that the M printing servers print the M by N segmentation images.
2. The method of claim 1, wherein the segmenting the N original images comprises:
and segmenting the N original images by adopting an image segmentation algorithm.
3. The method of claim 1, wherein uploading the M x N sliced images to image queues corresponding to the M print servers comprises:
uploading the M x N sliced images to the image queues of the M print servers by a multi-server concurrent communication technique.
4. The method of claim 1, wherein after printing the M x N sliced images, the method further comprises:
and acquiring a next period image to take the next period image as an original image, and returning to the step of segmenting the N original images.
5. A server-based printing method, applied to a print server, the method comprising:
acquiring a segmentation image obtained by segmenting an original image by a print client;
adding the sliced image to an image queue corresponding to the print server, wherein the sliced image contained in the image queue belongs to different original images;
and after the uploading of the segmented image is finished, receiving printing starting information sent by the printing client to print the segmented image.
6. The method of claim 5, wherein the receiving print initiation information sent by the print client to print the sliced image comprises:
receiving printing starting information sent by the printing client to enter a printing state;
and after the printing server enters the printing state, printing the segmentation image.
7. The method of claim 5, wherein the receiving print initiation information sent by the print client to print the sliced image comprises:
receiving printing starting information sent by the printing client;
and after the printing server receives the printing starting information, acquiring the segmentation image from the image queue and printing the segmentation image.
8. A system, characterized in that the system comprises:
a configuration unit configured to configure M print servers, M being greater than or equal to 1;
the segmentation unit is used for segmenting the N original images after the N original images are obtained so as to obtain M × N segmented images, wherein N is larger than or equal to 1;
the uploading unit is used for uploading the M x N sliced images to image queues corresponding to the M printing servers, wherein the sliced images contained in the image queues belong to different original images;
and the sending unit is used for sending printing starting information to the M printing servers after the M x N segmentation images are uploaded, so that the M printing servers print the M x N segmentation images.
9. An apparatus, characterized in that the apparatus comprises:
the system comprises a central processing unit, a memory, an input/output interface, a wired or wireless network interface and a power supply;
the memory is a transient memory or a persistent memory;
the central processor is configured to communicate with the memory and execute the operations of the instructions in the memory to perform the method of any of claims 1 to 7.
10. A computer-readable storage medium comprising instructions which, when executed on a computer, cause the computer to perform the method of any one of claims 1 to 7.
CN202210454867.9A 2022-04-24 2022-04-24 Printing method based on server and related equipment Pending CN114756182A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210454867.9A CN114756182A (en) 2022-04-24 2022-04-24 Printing method based on server and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210454867.9A CN114756182A (en) 2022-04-24 2022-04-24 Printing method based on server and related equipment

Publications (1)

Publication Number Publication Date
CN114756182A true CN114756182A (en) 2022-07-15

Family

ID=82333755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210454867.9A Pending CN114756182A (en) 2022-04-24 2022-04-24 Printing method based on server and related equipment

Country Status (1)

Country Link
CN (1) CN114756182A (en)

Similar Documents

Publication Publication Date Title
US8659777B2 (en) Server system, print device, network print system including server system and print device, and downloading method in network print system
US6327050B1 (en) Printing method and apparatus having multiple raster image processors
US8164785B2 (en) Method and apparatus for selecting printing devices according to resource availability
CN1955916A (en) Distributed printing controlling system and distributed printing controlling method
CN110134350B (en) Print file segmentation and transmission method
US8867065B2 (en) Page parallel RIP printing methods and systems
JP2004164645A (en) Device, method and program for print control
JP2011198231A (en) Print controller, image forming system, and program
JP3847970B2 (en) Print data processing apparatus, print data processing method, and recording medium
US7880913B2 (en) Methods and systems for segmenting logical pages into work units for processing on multiple compute systems
EP2720136A1 (en) Distributed digital inkjet printing method and system supporting variable data
CN114756182A (en) Printing method based on server and related equipment
US8693022B2 (en) Distributed print processing
US20100315666A1 (en) High speed page transmission
JP4086770B2 (en) Information processing apparatus and transfer control method thereof
US8374902B2 (en) Information processing apparatus and information processing method
JP2010181999A (en) Printing system, printer, and print control program
JP2003345534A (en) Printer system and its printing method
JP5786394B2 (en) Printing apparatus, printing system, printing method, and program
JP7143695B2 (en) Information processing device, image forming device, printing system, program
EP1116095B1 (en) Printing method and apparatus having multiple raster image processors
JP2001202208A (en) Print system and print controller and printer
JP2004341891A (en) Printing system
JP2002132758A (en) Device and method for processing document
CN114968139A (en) Universal printing method and device applied to server, electronic equipment and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination