Patent ID: 8451469

Claim:
A controller for a printing device including a print performing unit, the controller comprising: a processor configured to operate as: a data file selecting unit configured to sequentially select a data file from a plurality of data files in accordance with a predetermined order; an index printing data generating unit configured to generate index printing data, including plural sets of printing data corresponding to plural data files, by sequentially processing the sequentially selected data file using a memory, and by sequentially storing a set of printing data in the memory, wherein the set of printing data defines an image described by the sequentially selected data file; and a providing unit configured to provide the index printing data to the print performing unit each time when the index printing data is generated, wherein, after the providing unit provides the index printing data to the print performing unit, the index printing data generating unit becomes capable of generating subsequent index printing data using an area in the memory which has been used for generating the index printing data, wherein in a case where the index printing data generating unit cannot process a particular data file due to a shortage of remaining capacity in the memory when first index printing data is generated, the index printing data generating unit is configured to postpone processing of the particular data file, wherein the data file selecting unit is configured to select the particular data file when second index printing data is generated, wherein the second index printing data is generated after the first index printing data has been generated, wherein the data file selecting unit is configured to sequentially select one or more data files which are to be selected subsequent to the particular data file when the index printing data generating unit generates the first index printing data, and wherein the index printing data generating unit is configured to generate the first index printing data including one or more sets of printing data corresponding to the one or more data files.