Abstract:
The invention provides a method of printing at a POS of register receipts and marketing information in which the required network bandwidth and quantity of ink are both reduced. SVG files are used to specify communications, associated modified image objects are stored locally to the POS, and associated modified image objects are modified version of original objects in which color values are replaced with other color values that result in the same print image, but with printing of less ink.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS  
       [0001]     This application claims priority to provisional application 60/742,909 filed Dec. 7, 2005, attorney docket reference PIP185MOUNP-US, entitled “POS Network Including Color Printing and Color Highlighting” and provisional application 60/778,410 filed Mar. 3, 2006, attorney docket reference PIP189MOUNP-US entitled “POS Network Including Color Printing and Color Highlighting” the entire contents of which are incorporated herein by reference. 
     
    
     FIELD OF THE INVENTION  
       [0002]     This invention is directed to color printing at the Point Of Sale (POS).  
       DISCUSSION OF THE BACKGROUND  
       [0003]     Herein, RS is an acronym for retail store.  
         [0004]     Herein, ID is an acronym for identification.  
         [0005]     Herein, CS is an acronym for computer system.  
         [0006]     Herein, POS is an acronym for point of sale.  
         [0007]     Herein, SVG is an acronym for scalable vector graphics. Scalable Vector Graphics (SVG) is an XML markup language for describing two-dimensional vector graphics, both static and animated, and either declarative or scripted. It is an open standard created by the World Wide Web Consortium.  
         [0008]     Herein, SVG means any XML markup language for describing two-dimensional vector graphics.  
         [0009]     Herein, CID is an acronym for a customer identification.  
         [0010]     Scalable Vector Graphics  
         [0011]     Scalable Vector Graphics (SVG) is an XML markup language for describing two-dimensional vector graphics, both static and animated, and either declarative or scripted. It is an open standard created by the World Wide Web Consortium. SVG allows three types of graphic objects: Vector graphic shapes (e.g. paths consisting of straight lines and curves, and areas bounded by them); Raster graphics images/digital images; and text. Graphical objects can be grouped, styled, transformed and composited into previously rendered objects. Text can be in any XML namespace suitable to the application, which enhances searchability and accessibility of the SVG graphics. The feature set includes nested transformations, clipping paths, alpha masks, filter effects, template objects and extensibility. SVG drawings can be dynamic and interactive. The Document Object Model (DOM) for SVG, which includes the full XML DOM, allows straightforward and efficient vector graphics animation via ECMA Script or SMIL. A rich set of event handlers such as “mouseover” and “onclick” can be assigned to any SVG graphical object. Because of its compatibility and leveraging of other Web standards, features like scripting can be done on SVG elements and other XML elements from different namespaces simultaneously within the same web page. SVG images can be saved with gzip compression, in which case they may be called “SVGZ files”.  
         [0012]     Color Mapping  
         [0013]     The RGB color model is an additive model in which red, green and blue (often used in additive light models) are combined in various ways to reproduce other colors. The name of the model and the abbreviation “RGB” come from the three primary colors, Red, Green and Blue.  
         [0014]     CMYK (sometimes spelled YMCK or CYM) is a subtractive color model used in color printing. This color model is based on mixing pigments of the following colors in order to make other colors: C=cyan; M=magenta; Y=yellow; K=key (black). The mixture of ideal CMY colors is subtractive (cyan, magenta, and yellow printed together on white result in black). CMYK works through light absorption. The colors that are seen are from the part of light that is not absorbed. In CMYK, magenta plus yellow produces red, magenta plus cyan makes blue and cyan plus yellow generates green.  
         [0015]     Color models do not define what is meant by each color, and the results of mixing them are not exact unless the exact spectral make-up of the the colors are defined. The color model then becomes an absolute color space, such as sRGB or Adobe RGB. An absolute color space is a color space in which colors are unambiguous, where they do not depend on any external factors. A popular way to make a color space like RGB into an absolute color is to define an ICC profile, which contains the attributes of the RGB. This is not the only way to express an absolute color, but it is the standard in many industries. RGB colors defined by widely accepted profiles include sRGB and Adobe RGB. The process of adding an ICC profile to a graphic or document is sometimes called tagging; tagging therefore marks the absolute meaning of colors in that graphic or document. The International Color Consortium (CCC) was formed in 1993 by eight industry vendors in order to create a universal color management system that would function transparently across all operating systems and software packages.  
         [0016]     sRGB color space, or standard RGB (Red Green Blue), is an RGB color space created cooperatively by Hewlett-Packard and Microsoft Corporation. It has been endorsed by the W3C, Exif, Intel, Pantone, Corel, and many other industry players. It is also well accepted by Open Source software such as the GIMP, and is used in proprietary and open graphics file formats such as SVG.  
         [0017]     sRGB defines the red, green, and blue primaries as colors where one of the three channels is at the maximum value and the other two are at zero. In CIE xy chromaticity coordinates red is at [0.6400, 0.3300], green at [0.3000, 0.6000] and blue is at [0.1500, 0.0600] and the white point is the D65 white point at [0.3127, 0.3290]. sRGB has been criticized for poor placement of these primary colors. If you restrict the indexes to the 0-to-1 range you are unable to address outside the gamut (the triangle produced by them), which is well inside the set of visible colors to a human.  
         [0018]     sRGB also defines a non-linear transformation between the intensity of these primaries and the actual number stored. The curve is similar to the gamma response of a CRT display. It is more important to replicate this curve than the primaries to get correct display of an sRGB image. This non-linear conversion means that sRGB is a reasonably efficient use of the values in an integer-based image file to display human-discernable light levels.  
         [0019]     The ICC specification allows for fidelity of color when moved between applications and operating systems, from the point of creation to the final print. The main emphasis of the ICC is to define a format for ICC Profiles, which describe the color attributes of a particular device or viewing requirement by defining a mapping between the source or target color space and a profile connection space (PCS). This PCS is either L*a*b* or CIE XYZ color space. Mappings may be done using tables, to which interpolation is applied, or through a series of parameters for transformations.  
         [0020]     To see how this works in practice, suppose we have a particular RGB and CMYK color space, and want to convert from this RGB to that CMYK. The first step is to obtain the two ICC profiles concerned. To perform the conversion, each RGB triplet R,G,B is first converted to the PCS using the RGB profile. If necessary the PCS is converted between L*a*b* and CIE XYZ, a well defined transformation. Then the PCS is converted to the four values of C,M,Y,K required.  
         [0021]     Formula for converting from RGB to CMYK colors are well known. See for example the conversion formula specified at http://en.wikipedia.org/wiki/CMYK_color_model.  
         [0022]     Color Printers and Printer Media  
         [0023]     Ink from a color printer is typically shot at the paper, propelled to the paper, in shots. Each shot of ink of the same color has the same volume of ink. Thus, shots and volume of ink are synonymous. Color printer drivers typically render print files to a flat file for printing.  
         [0024]     Thus, printer driver software would render a single flat print file from an SVG file and the multiple image files the SVG file referenced.  
         [0025]     Printers print to sheet or tape material, typically a paper. These materials have the following quantifiable properties: basis weight; caliper; thickness; density; tensile strength; smoothness; brightness/whiteness; gloss; opacity; tearing strength; porosity; air permeance; elasticity; ink bleed; and abrasion. These quantities may characterize, amongst other things, hydrophilic versus hydrophobic properties, fiber orientation, density, and composition.  
         [0026]     Most color printers print based upon a CMYK standard, and they internally convert image data in RGB format to a CMYK format prior to printing. Most if not all color printer drivers do not now incorporate the SVG standard, that is, they do not render SVG files.  
       DISCLOSURE OF THE INVENTION  
     Objects of the Invention  
       [0027]     It is one object of the invention to reduce the amount of ink used to print certain image objects.  
         [0028]     It is another object of the invention to reduce the amount of network data transfer required to print marketing information at the POS.  
         [0029]     It is another object of the invention to provide color printing of purchase transaction information and marketing information at the POS. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0030]      FIG. 1  is a schematic view of a network computer system  1 ;  
         [0031]      FIG. 2  is a schematic view of an embodiment of local computer system of  FIG. 1 ;  
         [0032]      FIG. 3  is schematic of a data structure included in central CS database  10 A;  
         [0033]      FIG. 4  is a schematic of a data structure included in POS computer database  20 A;  
         [0034]      FIG. 5 a  schematic of a data structure included in incentive computer database  30 A;  
         [0035]      FIG. 6 a  schematic of a data structure included in POS color printer database  40 A; and  
         [0036]      FIG. 7  is a flow chart showing an overview of a method of use of network CS  1 . 
     
    
     BRIEF SUMMARY OF THE INVENTION  
       [0037]     These and other objects are provided by a novel network computer system, including a central CS remote from a RS, a local CS local to the RS, and a POS color printer in the RS. A database of image object files is stored local to the RS. A database of SVG files is stored by the central CS. At least one of the SVG files references an image object in the image objects database. Each such SVG file defines vector locations and sizes (scale) for the image objects it references. Each such SVG file and the files it references defines data necessary to print a corresponding marketing communication.  
         [0038]     The central CS transmits in association with a CID at least one SVG file to the local CS. When the local CS subsequently recognizes a purchase transaction is occurring that involves that CID, the local CS employs the SVG file associated with the CID to print the corresponding marketing communication along with the register receipt for the purchase transaction.  
         [0039]     The central CS preferably also stores the image object database or library including version of the image objects, versions of each SVG file, and the latest version information for versions to be sent to each RS. Each RS may receive different image objects, SVG files, and versions thereof. The central CS generates and transmits to each local CS image object files database updates for image object versions the corresponding RS will need to print new or updated SVG files referencing those new or updated image objects.  
         [0040]     The image objects database would for example include background image field files, such as various color field files, that are image field components of potentially more than one coupon defined using a SVG file. For example all coupons for all products of a specified manufacturer may use a certain background image file.  
         [0041]     The central CS implements rules to determine marketing communications to associate with each CID. The central CS associates the corresponding SVG files with the CID. Image object files referenced by the SVG files are stored in the local CS of the retail store. Recognition of the CID in a transaction at the local store results in a POS color printer printing the marketing communication based upon the SVG file associated with that CID.  
         [0042]     Ink used in color printing is minimized by printing only the minimum number of ink shots of the various colors (Cyan, Magenta, Yellow, and optionally Black) required to result in a print have that desired color. Typically, the four different ink colors are used to generate a print color by shooting shots of each color of ink at paper. Printer driver software typically instructs the printer to shoot more shots of each color of ink than the minimum number of ink shots of the various colors required to result in a print of a specified color.  
         [0043]     The minimum number of ink shots of each color that results in a particular print color (herein after referred to as the minimum number of ink shots) may depend upon printer driver software, printer brand, printer paper properties, and classification of the image object&#39;s properties including whether it is background, foreground, text, and quantification of the image object in print dimensions including length in x and y coordinates and total area.  
         [0044]     As an example, assume a digital representation of a dark magenta background may indicate particular conventional color inkjet printer driver to use 20 ink shots per pixel. The minimum number of ink shots required to produce that color in print is determined, by examination of color of printed matter, for text to be only 5 magenta ink shots, in small cross section foreground material to be only 8 magenta ink shots, and in large area canvass background to be only 12 magenta ink shots.  
         [0045]     The invention provides for generating a modified image object instead of an original image object, and then printing the modified image object, so that only the minimum number of ink shots are used for each point in the print to achieve the specified print color. The modified image object contains data defining each original color in the original image object with data defining a modified color. The data defining the modified color is data that results in printer driver software printing the minimum number of ink shots that result in print of the original color, or a number of ink shots of each color nearly equal to the minimnum number of ink shots that result in print of the original color.  
         [0046]     Returning to the example, the invention provides a modified image object background that replaces the original magenta color data with data for a lighter shade of magenta that will result printing only the 12 magenta ink shots per pixel required to reproduce the desired print color.  
         [0047]     Not all combinations of shots of cyan, magenta, yellow, and black exist as colors in a color map. It may be that some sets of minimum number of ink shots does not exactly correspond to colors. In that case, a color whose set of ink shots is most nearly equal to the set of minimum number of ink shots may be selected to correspond thereto. Most nearly equal may be determined for example by choosing the color having the smallest least squares value of the differences of the number of ink shots for CYMK in the set of minimum number of ink shots and the set of ink shots associated with each color in the CYMK color space.  
         [0048]     The minimum number of CMYK ink shots may be determined for a set of measured colors. An interpolation and/or extrapolation of the minimum number of ink shots from the set of measured colors may then be used to determine a minimum number of ink shots for all colors in the color space. The presently preferred color is an RGB color space that has 256,000 digital color definitions, each for a different color. A color in the color space (that is, a digital representation of a color) nearly equal to the minimum number of ink shots may be selected in various ways. For example, the color may be selected by determining which color in the color space has the minimum least squares difference to the color in the color space specified by the minimum number of ink shots, and selecting that color. Since most color printers print based upon CMYK software must convert the RGB datum to CMYK datum at or prior to transmission of data to the printer. Current printers typically perform this RGB to CMYK conversion internally. Thus, it is sufficient to define colors in RGB that correspond to minimum number of ink shots for an original image object digitally defined in an RGB color space.  
         [0049]     The foregoing image object database or library is formed by starting with a set of original image objects (preferably represented using RGB) and generating modified image objects (preferably represented using RGB) as specified above. For each original image object, there may be a plurality of modified image objects or versions, each of which is associated with meta data. The meta data may define a corresponding paper properties or paper type, printer type, print driver, dimensions and z position of the image object. (Thus, each original object may be associated with a set of original image object files each of which differs in one or more of the associated properties.) The central CS tracks SVG files specifying marketing communication markup data, associated with each RS, determines what subset of the image objects database that RS requires to print its SVG files, and transmits that subset of image objects to that RS&#39;s local CS.  
         [0050]     The inventors have found that the minimum number of ink shots required to print a large area may exceed the number of ink shots required to print the same color to a small area, and the minimum number of ink shots required to print lighter colors exceeds the minimum number of ink shots to print darker colors.  
         [0051]     The image objects in the image objects database are components of images included in marketing communications printed at the POS. The marketing communications may be coupons. The marketing communications may include image elements for manufacturer logs, brand logos, product logos, product pictures, backgrounds, highlights, watermarks, and coupon or communication borders such as peripheral regions of rectangles.  
         [0052]     The amount of ink required depends in part upon the lateral (in the plane of the paper) bleed of ink—how far it spreads. Hence, one obvious variation would be to skip printing at certain pixels, such as alternate pixels, if lateral bleed in a specified paper were sufficient so that ink from alternate pixels would merge in the paper to reproduce the desired color at the non printed pixel locations. In conjunction with that, printing could optionally include all edge pixels, to prevent fuzzy edging. Finally, black ink for printing bar codes could be replaced by printing bars in blue or blue and black.  
       DETAILED DESCRIPTION OF THE EMBODIMENTS  
       [0053]      FIG. 1  schematically shows computer network system  1  including central CS  10 , central CS database  10 A, local CS  80  for retail store RS 1 , and wide area network (WAN)  70 . In addition,  FIG. 1  shows WAN  70  connecting to CSs for retail store RS 2 , etc.  
         [0054]      FIG. 1  shows RS 1  (retail store  1 ) in dashed lines enclosing local CS  80  schematically indicating that local CS  80  operates to support operations of retail store  1 , including logging transaction data, performing accounting functions, and providing register receipts at POSs in RS 1 . RS 2 , RS 3 , etc. indicate the existence of additional retail stores having local CSs similar to local CS  80  and all enabled to communicate with central CS  10  via WAN  70 .  
         [0055]     Preferably, WAN  70  is a packet switched network employing TCP/IP. Preferably, WAN  70  is the Internet. WAN  70  may a private network.  
         [0056]     Preferably, each CS includes at least one digital central processing unit, memory, and operating system software. Lines between CS, databases, and WAN  70  each indicate a means for data transmission, such as network cards, data cables, and wireless transmission and reception hardware. In all embodiments, databases shown having a line connecting to a CS indicate that the CS controls read and write access to the database.  
         [0057]     Local CS  80  and central CS  10  can communicate via WAN  70 .  
         [0058]      FIG. 2  shows one embodiment of local CS  80  for RS 1 . Local CS  80  includes POS computer  20 , POS computer database  20 A, incentive computer  30 , incentive computer database  30 A, POS color printer  40 , POS color printer  40 A, POS terminal  50 , and LAN  60 . In RS 1 , each POS terminal has an associated POS color printer nearby. RS 1  may include a plurality of POS terminals and corresponding POS color printers adjacent each POS terminal.  
         [0059]     POS computer  20  receives transaction data over LAN  60  from each POS terminal  50 . POS computer  20  functions to track product inventory stock, product item costs, sales proceeds, and finances for RS 1 , storing relevant information in POS computer database  20 A.  
         [0060]     Incentive computer  30  functions to determine when, and optionally in some cases, what, marketing communications POS color printer  40  prints. Incentive computer  30  preferably also stores in incentive computer database  30 A transaction data for transactions that occurred at the POSs in RS 1 , and also stores marketing information in association with CIDs. Preferably, Incentive computer database  30 A stores SVG rendering software including an SVG library enabling incentive computer  30  to render into a single image object the individual image objects and text identified in an SVG file. Incentive computer  30  would then transmit that single image object file in Windows (trademark) Graphic Device Interface (GDI) format to POS color printer  40 .  
         [0061]     POS color printer  40  prints marketing communications and preferably also prints register receipts. Each or both may be printed in color. POS color printer database  40 A includes printer driver software, preferably including RGB to CMYK conversion software. Optionally, POS color printer database  40 A includes SVG rendering software including an SVG library enabling POS color printer  40  to both render into a single image object the individual image objects and text identified in an SVG file, and then print SVG file.  
         [0062]     In a currently preferred embodiment, POS color printer  40  driver software includes code for interpreting Windows (trademark) Graphic Device Interface (GDI) format files, and for converting in those files RGB image data to CMYK image data.  
         [0063]     POS terminal  40  preferably includes transaction data input mechanisms, such as scanners for scanning UPC codes and customer identification cards, and a keyboard. It may also include customer biometric data readers and a microphone. POS terminal  40  functions to identify the beginning and end of purchase transactions, to obtain a CID and product identifications for products being purchased in association with the CID. POS terminal  40  also transmits the transaction data (product identifiers, CID, POS ID, etc) over LAN  60  to POS computer  20  and preferably incentive computer  30 . POS terminal  40  may also function to look up pricing and discounting information, or to request that information from POS computer  20  via LAN  60 .  
         [0064]     LAN  60  preferably includes one or more digital network switches enabling it to route packets containing destination address information to the appropriate network address.  
         [0065]     In one alternative embodiment, POS computer  20  may perform all functions associated herein with incentive computer  30  in which case POS computer database  20 A includes the data structures disclosed herein in association with database  30 A.  
         [0066]     POS computer database  20 A or incentive computer database  30 A may store all data disclosed herein for POS color printer database  40 A, in which case POS computer  20  or incentive computer  30  performs the processing functions disclosed herein for printer  40 .  
         [0067]     POS color printer  40  may be connected directly to POS computer  20  instead of via LAN  60 .  
         [0068]     In other embodiments, POS color printer driver software and SVG file rendering software may reside in any database in local CS  80 , and may be invoked by any of the computers in local CS  80 . Other modifications of the local network architecture are obvious to one skilled in the art that preserve the existence of the WAN connection between the central CS and one or more local CS each associated with a RS.  
         [0069]      FIG. 3  shows a relational database embodiment of central CS database  10 A. However, other data structures may accomplish the same result, providing the same or similar data relationships.  
         [0070]      FIG. 3  shows a schema in table design views of tables  310 ,  320 ,  330 ,  340 ,  350 , and  360 , and table relationships  315 ,  325 ,  335 ,  345 , and  355 . Relationships  315  and  325 , are one to many relationships. Relationships  335 ,  345 , and  355  are one to one relationships.  
         [0071]     Image objects table  310  stores image objects and their properties. Table  310  includes fields for image object, Image object identification (IOID), and image object properties (prorp 1 , prop 2 , etc.). Herein all “ID” fields are some form of identification for associated data. Properties of the image object include intended layer position (foreground, background), image dimensions, color or colors. The image objects contained in  310  preferably are modified image objects for an original image object, modified as described herein to reduce the amount of ink used to generate a print similar in color to the original image object.  
         [0072]     Relationship  315  indicates that Image Object ID field IOID in  310  contains the same type of data (image object identification data) as IOID fields in table  320 .  
         [0073]     Marketing communications table  320  stores in associated fields an SVG and the image object that SVG references. Table  320  has fields for SVG, SVGID, and IDs of associated image objects IOID 1 , IOID 2 , IOID 3 , etc.  
         [0074]     Table association  325  indicates that data in the SVGID field in table  320  is the same type of data as data in the SVGID 1 , SVGID 2 , SVGID 3 , etc., fields, in table  330 .  
         [0075]     Table  330  stores IDs of those SVGs associated with each RS. That is, table  330  stores for each RS IDs of only those SVGs associated with CIDs associated with those stores. The number of SVGs associated with any particular RS may be a small subset of all SVGs stored by central CS  10  in database  10 A.  
         [0076]     Table  330  associates fields for RS identification (RSID) with fields for a set of SVG identifications, SVGID 1 , SVGID 2 , SVGID 3 , etc.  
         [0077]     Targeting table  340  contains targeted marketing communication trigger data. Table  340  stores in association with a CID marketing communications for the corresponding customer (SVG files) and the retail store ID associated with purchases by the corresponding customer. The data in table  340  is transmitted to local CS  80 . Local CS  80  can then trigger rendering of an SVG and then printing of the marketing communication defined by the rendered SVG file. Local CS  80  can do this during a transaction when the local CS matches a CID entered at POS terminal with a CID received from central CS  10 .  
         [0078]     Targeting determinations table  350  contains data that central CS  10  uses to determine what marketing communications to target to each CID. Table  350  contains fields for RSID, targeting criteria, marketing communication, and SVGID. Each marketing communication is associated with an SVG file. Each marketing communication is targeted for deliver to a particular CID only if targeting criteria are met for that CID. Targeting criteria frequently depend upon product purchases associated with that CID in some prior time period, which is the data stored in product purchase history table  360 . Thus, central CS  10  may apply the targeting criteria in table  350  to data associated with a CID in product purchase history table  360  to generate data in table  340 .  
         [0079]     Product purchase history table  360  contains field for storing in association with one another RSID, CID, date, total (currency amount total for a purchase transaction), and product identifier, quantity of that product, and price of that product (UPC 1 , NUPC 1 , PUPC 1 , respective, and UPC 2 , NUPC 2 , PUPC 2 , respective, etc,), and coupon identifiers and coupon discount amounts (C 1 , D 1 , respectively, C 2 , D 2 , respectively, etc.).  
         [0080]     Generally speaking, tables  310 ,  320 ,  330 , enable central CS to track SVGs and image objects files previously transmitted to each RS and therefore to determine and transmit to each RS SVG files and image objects data not previously transmitted to that store but currently associated with that RS via table  340 . Tables  340 ,  350 , and  360 , enable central CS to associate with each CID targeted marketing communications (and corresponding SVG files) for consumers that have purchased in the RS.  
         [0081]     An example of associated (1) targeting criteria and (2) marketing communication are (1) existence of UPC for a quart of milk in an immediately preceding 30 day period from the current time and (2) a coupon for a particular dry cereal product.  
         [0082]      FIG. 4  shows a relational database embodiment of POS computer database  20 A. POS computer database  20 A includes RS product purchase history table  360 ′, inventory stock table  420 , and coupon discount table  430 .  
         [0083]     RS product purchase history table  360 ′ has the same data fields as table  360 . However, RS product purchase history table  360 ′ preferably only stores product purchase history for transactions that occurred in RS 1 . Inventory stock table  420  stores by product identifier (UPC code) the number of product items in stock. Coupon discount table  430  stores coupon identification C in association with a discount to include for a purchase including the coupon identification. In operation, the local CS  80  may use the coupon discount table to determine discounts to apply to a customer&#39;s purchase transaction. See the data for coupons and their discounts shown in table  360 ′.  
         [0084]      FIG. 5  shows a relational database embodiment of incentive computer database  30 A including RS image objects table  310 ′, Marketing communications table  320 ′, RS targeting table  340 ′, RS product purchase history table  360 ′, and SVG library code  510 . The RS tables  310 ′,  320 ′,  340 ′, and  360 ′ have the same data structure as tables  310 ,  320 ,  340 , and  360 . However, tables  310 ,  320 ′,  340 ′, and  360 ′ store only data from or for RS 1 . SVG code library  510  is software code capable of rendering SVG files to generate a single image file as specified by the SVG file, including any image object files referenced by the SVG file.  
         [0085]     Preferably, incentive computer  30  determines when a CID read at POS terminal  50  matches a CID stored in targeting table  340 ′, responds by generating an image file in Windows GDI format for an associated marketing incentive, and transmitting that file to POS color printer  40 .  
         [0086]     Preferably, incentive computer  30  periodically or a-periodically transmits new data for RS 1  in table  360 ′ not yet transmitted to central CS  10  to central CS  10 .  
         [0087]      FIG. 6  shows contents of POS color printer database  40 A. This data preferably includes coupon image files data  610 , register receipt data  620 , printer driver  630 , printer/print head control  640 , and printer queue memory  650 .  
         [0088]     Each file in coupon image files data  610  includes image data for one or more marketing communications, typically coupons. Register receipt data  620  includes data for printing descriptions and quantities and prices of items purchased, discounts applied to the purchase, and transaction currency total.  
         [0089]     Alternatively, coupon image files data  610  may be a single image file containing any and all marketing communications data.  
         [0090]     Alternatively, both coupon image files data and register receipt data may be merged by local CS  80  into a single file, such as a file in Windows (trademark) GDI format, prior to transmission to POS color printer  40 . In this case, register receipt data  620  and coupon image files data  610  are a single merged data file in POS color printer database  40 A.  
         [0091]     Printer driver  630  preferably converts RGB color data to CMYK or CMY color data for printing, and orders the data into a data stream for transmission to printer queue memory. Printer queue memory  650  stores in sequence commands to issue to print heads (structures that transmit ink to paper) and to paper position controllers, such as paper rollers.  
         [0092]     Optionally, POS color printer database  40 A also includes a separate printer/head control  640  for rewinding printer paper to enable consecutive printing by more than one print head with at least one print head facing each side of a paper roll.  
         [0093]     In embodiments in which local CS  80  sends to POS color printer  40  more than one file for printing for a transaction, such as a register receipt file and one or more marketing communication, business rules may be implemented to ensure reliability and minimize transaction time. For example, POS color printer  40  may implement time out code such that it will print a register receipt file after a specified time has elapsed, such as 2 seconds, after receipt of that file, if it has not by then received coupon image files data. In addition, it may include code for determining print length of register receipt information and print length of marketing communication, for printing register receipt or marketing communication on one side of paper, rewinding the paper by about the length of the first print, and then printing to the second side of the paper for the other print.  
         [0094]      FIG. 7  shows flow chart  700  showing steps occurring in network CS  1 .  
         [0095]     In step  705 , central CS  10  receives coupon data, which may include image data or image files.  
         [0096]     In step  710 , central CS  10  generates SVG files from the coupon data.  
         [0097]     In step  715 , central CS  10  generates modified image data for the image data or image files associated with each SVG file.  
         [0098]     In step  720 , central CS  10  associates certain SVG files with certain CIDs local CS  80  (RS 1 ). The CIDs are ones previously received from local CS  80 . The SVG files are those that meet targeting criteria applied to those CIDs.  
         [0099]     In step  725 , central CS  10  determines which of the SVG and associated image object files have not previously been sent to RS 1 . It may do this by filtering the SVG newly associated with CIDs for RS 1  against a database of SVGs previously transmitted to RS 1 . For each new SVG for RS 1 , there may be corresponding new image files for RS 1 .  
         [0100]     In step  730 , central CS  10  transmits data to local CS  80 . This data may include the new CIDs and associated SVG and image files for RS 1 .  
         [0101]     In step  735 , local CS  80  identifies a CID as being involved in a transaction at POS terminal  50 . In the preferred embodiment, this function is performed by incentive computer  30 .  
         [0102]     In step  740 , local CS  80  identifies any SVG files stored in local CS  80  in association with that CID. In the preferred embodiment, this function is performed by incentive computer  30 .  
         [0103]     In step  745 , local CS  80  renders to image files the associated SVGs. In the preferred embodiment, this function is performed by incentive computer  30 .  
         [0104]     In step  750 , POS color printer  40  prints the rendered SVGs and register receipt for the transaction.  
         [0105]     In step  755 , local CS  80  transmits transaction logs to central CS  10 .  
         [0106]     In step  750 , local CS  80  renders the SVGs and their associated image files to a single image file per SVG or set of SVGs. These image files may saved in Windows (Trademark) GDI format.