Data processing system, information processing apparatus, and data processing device

The data processing system optimizes font cache storage by calculating character frequency and priority, enhancing usage rates and preventing memory errors in Chinese character documents by prioritizing storage of frequently used characters and deleting infrequently used ones.

JP2025173719APending Publication Date: 2025-11-28KYOCERA DOCUMENT SOLUTIONS INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024079420
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-15
Publication Date
2025-11-28

AI Technical Summary

Technical Problem

The use of Chinese characters in text documents strains the font cache storage area, leading to memory shortages and low font cache usage due to the higher number of characters and frequency of use not being adequately addressed by existing techniques.

Method used

A data processing system that calculates the frequency of use of characters with the same font name and size, generates priority information, and stores font caches accordingly, preferentially storing frequently used characters and deleting infrequently used ones to optimize font cache usage.

Benefits of technology

Improves font cache usage rates, particularly in Chinese character-based documents, preventing memory errors by prioritizing storage of frequently used characters and freeing space by deleting infrequently used ones, thus optimizing memory allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025173719000001_ABST
    Figure 2025173719000001_ABST
Patent Text Reader

Abstract

To improve use rate of a font cache and to prevent occurrence of an error due to memory shortage.SOLUTION: An information processing apparatus 3 calculates the use frequency of characters having the same font name and font size for a plurality of characters included in a text document, generates first print data including priority information showing the use frequency of each character as the priority and the text document, and transmits them to an image forming apparatus 2. When receiving the first print data, the image forming apparatus 2 determines a character to be drawn, generates a font cache of the character to be drawn and stores the font cache in an area corresponding to the priority of the character to be drawn in a font cache storage area 211 when the font cache storage area 211 has a free space, and deletes the font cache of the character having the lowest priority from the font cache storage area 211 when the font cache storage area 211 does not have the free space.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a data processing system, an information processing device, and a data processing device, and more particularly to a technique for storing a font cache in a font cache storage area. [Background technology]

[0002] Various techniques are known for preventing memory shortages in the font cache storage area. For example, Patent Document 1 discloses a technique for expanding the font cache storage area in expansion units according to the font size, character resolution, and number of character types when there is no capacity left in the unused portion of the font cache storage area to store character bitmap images.

[0003] Patent Document 2 discloses a technique in which, when printing, a usage frequency table is referenced, and if the usage frequency of the scalable font to be printed is equal to or greater than a predetermined number of times, the scalable font is expanded into a bitmap and registered in RAM.

[0004] Patent document 3 discloses a technology in which, when there is insufficient free space in the font cache storage area, a character list showing characters from the most recently used to the least recently used character is referenced and the least recently used character is deleted from the font cache storage area. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2013-169763 [Patent Document 2] Japanese Patent Application Laid-Open No. 2003-175647 [Patent Document 3] U.S. Patent No. 5,592,594 Summary of the Invention [Problem to be solved by the invention]

[0006] Incidentally, Chinese characters used in languages ​​such as Chinese and Japanese are ideographic characters, and therefore there are more of them than alphabets, which are phonetic characters. Therefore, when drawing characters in a text document written in a language that uses Chinese characters, the capacity of the font cache storage area is strained, which makes it easy for errors to occur due to memory shortages, and there is also the problem of low font cache usage.

[0007] The techniques disclosed in Patent Documents 1 and 3 can secure free space, but are insufficient to improve font cache usage because they do not take into account the frequency of character use. The technique disclosed in Patent Document 2 may cause memory shortages when there are many characters that are used more than a certain number of times. In other words, the techniques disclosed in Patent Documents 1 to 3 cannot solve the above problems.

[0008] The present invention has been made in view of the above circumstances, and has as its object to improve the utilization rate of the font cache and prevent errors caused by memory shortages. [Means for solving the problem]

[0009] A data processing system according to one aspect of the present invention includes an information processing device and a first control unit that, upon receiving a drawing instruction for a text document including a plurality of characters, calculates the frequency of use of characters having the same font name and font size for the plurality of characters, generates print data including priority information indicating the frequency of use of each character as a priority, and transmits the print data to the data processing device via the first control unit. The data processing device comprises a second communication unit that communicates with the information processing device via a network, a memory unit that includes a font cache storage area, and a second control unit that, when print data is received via the second communication unit, determines a character to be drawn from among a plurality of characters, and if the font cache storage area has at least enough free space to store a font cache for one character, generates a font cache for the character to be drawn and stores the generated font cache in an area in the font cache storage area that corresponds to the priority of the character to be drawn, and if the font cache storage area does not have enough free space, deletes the font cache of the character with the lowest priority from the font caches stored in the font cache storage area to secure free space. [Effects of the Invention]

[0010] According to the present invention, font caches for frequently used characters are stored preferentially in the font cache storage area. As a result, the font cache usage rate can be increased, particularly in text documents written in languages ​​that use Chinese characters, compared to when font caches for all characters are stored. Furthermore, it is possible to prevent unnecessary allocation of memory to infrequently used characters. Furthermore, because font caches for infrequently used characters are deleted when there is no free space, errors due to insufficient memory can be prevented. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 1 illustrates a configuration of a data processing system. [Figure 2] FIG. 2 is a front cross-sectional view showing the structure of the image forming apparatus. [Figure 3] FIG. 1 is a block diagram showing a configuration of an image forming apparatus. [Figure 4] FIG. 1 is a block diagram showing a configuration of an information processing device. [Figure 5] 10 is a flowchart illustrating a print data generation process. [Figure 6] 10 is a flowchart illustrating a data analysis process. [Figure 7] FIG. 10 is a diagram illustrating an example of a character table. [Figure 8] 10 is a flowchart showing a font cache storage process. [Figure 9] FIG. 10 is a diagram showing how a font cache is stored. [Figure 10] FIG. 10 is a diagram showing how a font cache is deleted. DETAILED DESCRIPTION OF THE INVENTION

[0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A data processing system, an information processing device, and a data processing device according to an embodiment of the present invention will be described below with reference to the accompanying drawings.

[0013] Fig. 1 is a diagram showing the configuration of a data processing system 1 according to one embodiment of the present invention. Referring to Fig. 1, the data processing system 1 includes an image forming device 2 and an information processing device 3. The image forming device 2 and the information processing device 3 are connected to each other via a network 4. The image forming device 2 is an example of a data processing device in the claims.

[0014] [Configuration of image forming device 2] Fig. 2 is a front cross-sectional view showing the structure of image forming apparatus 2. Fig. 3 is a block diagram showing the configuration of image forming apparatus 2. Referring to Fig. 2, image forming apparatus 2 is a multifunction peripheral having multiple functions such as a copy function, a transmission function, a printer function, and a facsimile function.

[0015] The housing of the image forming apparatus 2 accommodates an image reading unit 11, an image forming unit 12, a fixing unit 13, a paper feeding unit 14, and the like.

[0016] The image reading unit 11 reads an image of a document by a moving document method or a fixed document method, and generates image data.

[0017] The image forming unit 12 includes a photosensitive drum, a charging device, an exposure device, a developing device, and a transfer device. The image forming unit 12 forms an image made of a toner image on a sheet P conveyed along a conveying path T based on image data.

[0018] The fixing unit 13 applies heat and pressure to the paper P on which the toner image has been formed by the image forming unit 12, thereby fixing the toner image to the paper P. The paper P on which the toner image has been fixed is discharged onto a discharge tray.

[0019] The paper feed unit 14 includes a manual feed tray and multiple paper feed cassettes. The paper feed unit 14 uses a pickup roller to pull out paper P stored in one of the multiple paper feed cassettes or paper placed on the manual feed tray one by one, and feeds the paper to the transport path T.

[0020] 3, the image forming apparatus 2 includes a control unit 100. The control unit 100 includes a processor, a random access memory (RAM) 200, and a read only memory (ROM). The processor is, for example, a central processing unit (CPU), a micro processing unit (MPU), or an application specific integrated circuit (ASIC).

[0021] The control unit 100 functions as a control unit 110, a PDL (Page Description Language) interpretation unit 111, a font management unit 112, a rasterization unit 113, a rendering unit 114, and a job management unit 115 by the above-mentioned processor executing various computer programs stored in the built-in ROM or HDD (Hard Disk Drive) 18.

[0022] The control unit 110 performs overall control of the image forming apparatus 2. The PDL interpretation unit 111 interprets PDL data. If a file to be processed by a job contains characters, the font management unit 112 executes processing to generate a font cache or object for the characters.

[0023] The rasterization unit 113 rasterizes the outline font characters to generate a font cache. The font management unit 112 and the rasterization unit 113 execute the font cache storage process according to this embodiment. The font cache storage process will be described in detail later.

[0024] The rendering unit 114 generates image data by rendering characters, graphics, etc. included in the job target file in accordance with the drawing commands included in the PDL data. The job management unit 115 executes a predetermined job, such as a print job or a transmission job, on the image data generated by the rendering unit 114.

[0025] Each functional unit such as the control unit 110 may be configured to be operable by a logic circuit rather than by operation based on a computer program, or may be configured to be realized by two or more control units.

[0026] The RAM 200 is used as a work memory and includes a font cache storage area 211. The font cache storage area 211 stores a font cache indicating characters to be drawn.

[0027] The control unit 100 is electrically connected to an image reading unit 11, an image forming unit 12, a fixing unit 13, a paper feeding unit 14, a display unit 15, an operation unit 16, a conveying unit 17, an HDD 18, an image processing unit 19, an image memory 20, a facsimile communication unit 21, and a communication unit 22, etc.

[0028] The display unit 15 is a display device including a liquid crystal display or an organic light-emitting diode (EL) display, and displays various screens.

[0029] The operation unit 16 includes a plurality of hard keys and a touch panel that is placed over the display unit 15. The operation unit 16 receives instructions from the user.

[0030] The conveying unit 17 includes a pair of conveying rollers 17A, a pair of discharge rollers 17B, and a conveying motor. The control unit 110 drives the conveying motor to rotate the pair of conveying rollers 17A and the pair of discharge rollers 17B, thereby conveying the paper P along the conveying path T.

[0031] The HDD 18 stores image data generated by the image reading unit 11, and various computer programs for implementing the operations of the image forming apparatus 2. As part of the various computer programs, the HDD 18 stores a control program for executing the font cache storage process according to this embodiment.

[0032] The image processing unit 19 performs image processing as necessary on the image data generated by the image reading unit 11. The image memory 20 temporarily stores the image data generated by the image reading unit 11. The facsimile communication unit 21 transmits and receives the image data via a public line.

[0033] The communication unit 22 includes a communication module such as a LAN (Local Area Network) board. The control unit 110 performs data communication with an external device such as the information processing device 3 connected via the network 4 via the communication unit 22. The communication unit 22 is an example of a second communication unit in the claims.

[0034] A power supply is connected to each part of the image forming apparatus 2. When the power supply is turned on by a user, power is supplied to each part of the image forming apparatus 2 from the power supply.

[0035] [Configuration of information processing device 3] Fig. 4 is a block diagram showing the configuration of the information processing device 3. The information processing device 3 is, for example, a PC (Personal Computer). Referring to Fig. 4, the information processing device 3 includes a control unit 300, an operation unit 31, a display unit 32, an HDD 33, and a communication unit 34. The control unit 300 includes a processor, RAM, ROM, etc. The processor is, for example, a CPU, an MPU, or an ASIC, etc.

[0036] The control unit 300 functions as the control unit 30 when a computer program stored in the ROM or HDD 33 is executed by the processor. The control unit 30 is responsible for overall control of the information processing device 3. The control unit 30 executes a print data generation process according to this embodiment. Details of the print data generation process will be described later.

[0037] The control unit 30 may be configured to be operable by a logic circuit, not by operation based on a computer program, or may be configured to be realized by two or more control units.

[0038] The operation unit 31 includes a keyboard for inputting characters, etc., and a mouse which is a pointing device. User instructions are input to the operation unit 31.

[0039] The display unit 32 is a display device including a liquid crystal display or an organic EL display, and displays various screens.

[0040] The HDD 33 is a large-capacity storage device for storing various data such as image data. The HDD 33 stores various computer programs for realizing general operations of the information processing device 3. The HDD 33 stores, as one of the various computer programs, a printer driver for executing the print data generation process according to this embodiment.

[0041] The communication unit 34 includes a communication module such as a LAN board. The communication unit 34 performs data communication with external devices such as the image forming apparatus 2 via the network 4. The communication unit 34 is an example of a first communication unit in the claims.

[0042] A power supply is connected to each unit of the information processing device 3. When the power supply is turned on by the user, power is supplied to each unit of the information processing device 3 from the power supply.

[0043] [Operation] Hereinafter, the operation of the data processing system 1 when executing the print data generation process and font cache storage process according to this embodiment will be described with reference to FIGS.

[0044] [Operation of information processing device 3] It is assumed that a user operates the operation unit 31 of the information processing device 3 to create a text document containing multiple characters and input a print instruction including a drawing instruction. In this embodiment, a text document refers to a document file that contains a predetermined percentage (e.g., 50 percent) or more of characters for which a font cache can be generated.

[0045] Here, the first page of the generated text document contains multiple characters in an outline font with the font name "MSP Gothic" and a font size of either "18" point, "72" point, or "20" point.

[0046] JPEG2025173719000002.jpg35156

[0047] When the control unit 30 of the information processing device 3 receives the above-mentioned print instruction, it starts executing the print data generation process shown in Fig. 5. The control unit 30 is an example of a first control unit in the claims. In the print data generation process, the control unit 30 first determines whether the analysis of the file to be printed is valid (step S10).

[0048] In this case, since the file to be printed is a text document, the control unit 30 determines that the analysis of the file to be printed is valid (YES in step S10), and starts the execution of the data analysis process shown in FIG. 6 (step S11).

[0049] In the data analysis process, the control unit 30 first extracts from the text document a plurality of characters for which a font cache can be generated (i.e., character data of outline fonts) (step S20). After the process of step S20, the control unit 30 calculates the frequency of use of characters with the same font name and font size for each page of the text document based on the extracted plurality of characters (step S21).

[0050] JPEG2025173719000003.jpg55155

[0051] After the process of step S21, the control unit 30 generates priority information indicating the frequency of use of each character as the priority for each combination of font name and font size for each page based on the calculated frequency of use (step S22). Specifically, the control unit 30 rearranges the characters for each combination of font name and font size for each page in descending order of frequency of use, and generates a character table indicating the order of the characters rearranged in descending order of frequency of use as priority information.

[0052] JPEG2025173719000004.jpg55154

[0053] By generating the character table in this way, the control unit 30 can easily generate priority information indicating the level of priority for each character. After the process of step S22, the control unit 30 ends the data analysis process.

[0054] 5, after the data analysis process of step S11, the control unit 30 generates first print data including a PJL (Printer Job Language) command indicating the content of the print instruction, character information, priority information, etc., and a text document (step S12). The first print data is PDL (Page Description Language) data. The character information is information indicating, for example, a font name, a font size, a delimiter, etc.

[0055] After the process of step S12, the control unit 30 transmits the first print data to the image forming device 2 via the communication unit 34 (step S13). After the process of step S13, the control unit 30 ends the print data generation process.

[0056] On the other hand, if the file to be printed is not a text document (for example, if it is an image file that contains graphics or photographs but no text), the control unit 30 determines that the analysis of the file to be printed is invalid (NO in step S10), and generates second print data that includes PJL commands indicating the content of the print instruction, text information, etc., and the file to be printed (step S14). The second print data is PDL data and does not include priority information.

[0057] After the process of step S14, the control unit 30 transmits the second print data to the image forming device 2 via the communication unit 34 (step S15). After the process of step S15, the control unit 30 ends the print data generation process.

[0058] [Operation of image forming device 2] When the communication unit 22 of the image forming device 2 receives the first print data, the PDL interpretation unit 111 interprets the PDL data. If the PJL command includes priority information (i.e., if the PDL interpretation unit 111 interprets the PDL data as the first print data), the PDL interpretation unit 111 requests the font management unit 112 and the rasterization unit 113 to start executing the font cache storage process shown in FIG.

[0059] The font management unit 112 and the rasterization unit 113 are an example of a second control unit in the claims.

[0060] In the font cache storage process, the font manager 112 first determines a page in the text document to be drawn, and extracts a plurality of characters to be drawn from the page to be drawn (step S30). In this case, the font manager 112 determines the first page of the text document as the page to be drawn.

[0061] The font manager 112 extracts from the first page a number of characters in an outline font whose font name is "MSP Gothic" and whose font size is either "18" point, "72" point, or "20" point. The font manager 112 extracts 32 characters whose font size is "18" point.

[0062] JPEG2025173719000005.jpg40153

[0063] JPEG2025173719000006.jpg35153

[0064] At this time, since the font cache storage area 211 does not store anything, the font management unit 112 determines that the font cache for the character to be drawn is not stored (NO in step S33), and determines whether the font cache storage area 211 has enough free space to store the font cache for at least one character (step S34).

[0065] 9, the font cache storage area 211 includes areas 91 to 94, arranged in this order, as storage areas for 18-point characters. Each of areas 91 to 94 can store the font cache for one character. In other words, the upper limit of the number of 18-point characters that can be stored in the font cache storage area 211 is four characters.

[0066] JPEG2025173719000007.jpg52153

[0067] After processing step S35, the font management unit 112 refers to the priority information contained in the first print data and determines whether the priority of the character to be drawn is higher than at least one of the character priorities indicated by each of all font caches already stored in the font cache storage area 211 (step S36).

[0068] At this time, since the font cache storage area 211 does not store anything, the font management unit 112 determines that the priority of the character to be drawn is not high (NO in step S36), and stores the font cache of the character to be drawn in the font cache storage area 211 according to the rules for storing the font cache in the order of creation (step S37).

[0069] Here, the rules for storing font caches in the order of creation will be explained. When storing font caches created according to these rules, the font manager 112 stores the font caches so that older font caches are stored from area 91 to area 94 shown in Fig. 9 (i.e., the newest font cache is stored in area 91, and the oldest font cache is stored in area 94).

[0070] In step S37, if there is a font cache already stored, the font manager 112 moves the font cache to an adjacent area and stores the latest generated font cache in area 91.

[0071] In this case, as shown in Figure 9(A), the font manager 112 stores font cache F1 in area 91. Note that, for ease of understanding, Figure 9 also shows the priority of the characters indicated by the font cache. After processing step S37, the font manager 112 determines whether or not storing the font cache for the last character in the page to be drawn has been completed (step S38).

[0072] In this case, the font manager 112 determines that the storage of the last character in the font cache has not been completed (NO in step S38), and proceeds to the processing of step S31. The font manager 112 determines the next (i.e., second) character "F" on the first page as the character to be drawn (step S31). The font manager 112 executes the processing from step S32 to step S35 for the character "F" to be drawn in the same manner as described above.

[0073] JPEG2025173719000008.jpg42155

[0074] The font manager 112 again determines that storage of the last character in the font cache has not been completed (NO in step S38), and proceeds to the processing of step S31. The font manager 112 determines the next (i.e., third) character "a" on the first page as the character to be drawn (step S31). The font manager 112 executes the processing from step S32 to step S35 for the character "a" to be drawn in the same manner as described above.

[0075] JPEG2025173719000009.jpg29154

[0076] Therefore, the font management unit 112 determines that the character to be drawn has a high priority (YES in step S36), and inserts and stores the font cache of the character to be drawn at a position in the font cache storage area 211 that is older in generation order than the font caches of all characters that have a lower priority than the character to be drawn (step S39).

[0077] In this case, the font manager 112 inserts and stores the generated font cache F3 for "a" into area 93 corresponding to a position where the generated font cache F3 is older in generation order than font caches F1 and F2, as shown in Figure 9(C). After processing step S39, the font manager 112 again determines that storing the font cache for the last character is not complete (NO in step S38), and proceeds to processing step S31.

[0078] JPEG2025173719000010.jpg42155

[0079] JPEG2025173719000011.jpg32156

[0080] JPEG2025173719000012.jpg42154

[0081] In this way, by executing the processes from step S36 to step S39, the font management unit 112 stores the generated font caches F1, F2, F3, and F4 in an area in the font cache storage area 211 that corresponds to the priority of the character to be drawn.

[0082] JPEG2025173719000013.jpg67156

[0083] At this time, as shown in Figure 9 (D), the free space in the font cache storage area 211 is "0" characters, so the font management unit 112 determines that the font cache storage area 211 has no free space (NO in step S34), and refers to the priority information contained in the first print data to determine whether the priority of the character to be drawn is higher than at least one of the character priorities indicated by each of all font caches already stored in the font cache storage area 211 (step S40).

[0084] JPEG2025173719000014.jpg45153

[0085] Therefore, the font management unit 112 determines that the character to be drawn has a high priority (YES in step S40), and deletes the font cache of the character with the lowest priority from the font caches stored in the font cache storage area 211 to secure free space (step S41).

[0086] JPEG2025173719000015.jpg48155

[0087] JPEG2025173719000016.jpg31155

[0088] Therefore, the font management unit 112 determines that the character to be drawn has a high priority (YES in step S36), and inserts and stores the generated font cache F5 into area 92 corresponding to a position that is older in generation order than font cache F2, as shown in Figure 10 (B) (step S39).

[0089] After processing step S39, the font manager 112 again determines that storage of the last character in the font cache has not been completed (NO in step S38), and proceeds to processing step S31. The font manager 112 determines "K" located next (i.e., the sixth) on the first page as the character to be drawn (step S31). The font manager 112 executes the processing of steps S32 and S33 for the character to be drawn, "K" in the same manner as described above.

[0090] At this time, as shown in FIG. 10B, the free space in the font cache storage area 211 is "0" characters, so the font manager 112 determines that the font cache storage area 211 does not have free space (NO in step S34).

[0091] JPEG2025173719000017.jpg42154

[0092] Therefore, the font manager 112 determines that the character to be drawn does not have a high priority (NO in step S40), outlines the character to be drawn, and generates an object representing the character to be drawn (step S42). In this case, the font manager 112 generates an object representing the character "Kyo." After processing step S42, the font manager 112 proceeds to processing step S38.

[0093] The font manager 112 again determines that storage of the last character in the font cache has not been completed (NO in step S38), and proceeds to the processing of step S31. The font manager 112 determines the next (i.e., the seventh) character "a" on the first page as the character to be drawn (step S31). The font manager 112 executes the processing of step S32 for the character "a" to be drawn in the same manner as described above.

[0094] At this time, as shown in FIG. 10(B), the font cache storage area 211 already stores the font cache F3 for "a" and there is no need to generate a new one, so the font management unit 112 determines that the font cache for the character to be drawn is stored (YES in step S33), and proceeds to processing in step S38.

[0095] The font management unit 112 performs the process from step S31 to step S42 for the remaining characters on the first page in the same manner as described above, and when it has completed storing the last character in the font cache (YES in step S38), it ends the font cache storage process.

[0096] The rendering unit 114 generates image data by drawing characters on the page to be drawn using the font caches F1, F2, F3, and F5 stored in the font cache storage area 211 and the generated objects, etc., in accordance with the drawing commands included in the PDL data. The job management unit 115 causes the image forming unit 12, etc., to form an image indicated by the generated image data on paper P.

[0097] In the above-mentioned font cache storage process, if the character to be drawn is a bitmap font rather than an outline font, the font management unit 112 determines that it is not possible to generate a font cache for the character to be drawn (NO in step S32), and proceeds to the processing of step S42, where it outlines the character to be drawn and generates an object representing the character to be drawn.

[0098] Furthermore, when the communication unit 22 of the image forming device 2 receives the second print data, the PDL interpretation unit 111 interprets the PDL data. If the PJL command does not include priority information (i.e., if the PDL data is the second print data), the PDL interpretation unit 111 does not request the start of execution of the font cache storage process shown in FIG.

[0099] If the file to be printed contains characters, the font management unit 112 and the rasterization unit 113 perform normal processing to generate a font cache or object for the characters contained in the file to be printed, without performing the font cache storage processing shown in Figure 8.

[0100] The rendering unit 114 generates image data by rendering characters or graphics included in the file to be printed in accordance with the drawing commands included in the PDL data. The job management unit 115 causes the image forming unit 12 to form an image indicated by the generated image data on paper P.

[0101] According to the above embodiment, when the control unit 30 of the information processing device 3 receives a drawing instruction for a text document including multiple characters, it calculates the frequency of use of characters with the same font name and font size for the multiple characters, generates first print data including priority information indicating the frequency of use of each character as the priority level, and the text document, and transmits the first print data to the image forming device 2 via the communication unit 34.

[0102] When the font management unit 112 and rasterization unit 113 of the image forming device 2 receive the first print data via the communication unit 22, they determine a character to be drawn from among the multiple characters contained in the text document, and if the font cache storage area 211 has free space to store a font cache for at least one character, they generate a font cache for the character to be drawn and store the generated font cache in an area in the font cache storage area 211 that corresponds to the priority of the character to be drawn, and if the font cache storage area 211 does not have free space, they delete the font cache of the character with the lowest priority from the font caches stored in the font cache storage area 211 to secure free space.

[0103] This allows the font cache of frequently used characters to be stored preferentially in the font cache storage area 211. As a result, the font cache usage rate can be increased, particularly in text documents written in languages ​​that use Chinese characters, compared to when font caches for all characters are stored. This also prevents memory from being wasted for infrequently used characters. Furthermore, since font caches for infrequently used characters are deleted when there is no free space, errors due to insufficient memory can be prevented. Furthermore, since priority information is generated on the information processing device 3 side, the load on the image forming device 2 side can be reduced.

[0104] Furthermore, according to the above embodiment, when the font cache storage area 211 has free space and the priority of the character to be drawn is lower than the priorities of the characters indicated by all of the font caches already stored in the font cache storage area 211, the font management unit 112 stores the font cache of the character to be drawn in the font cache storage area 211 in accordance with the rules for storing in order of creation, and when the priority of the character to be drawn is higher than at least one of the priorities of the characters indicated by all of the font caches already stored, the font management unit 112 inserts and stores the font cache of the character to be drawn at a position in the font cache storage area 211 that is older in order of creation than the font caches of all of the characters that have a lower priority than the character to be drawn.

[0105] This makes it possible to easily store the generated font cache in an area of ​​the font cache storage area 211 that corresponds to the priority of the character to be drawn.

[0106] Furthermore, according to the above embodiment, if the font cache storage area 211 does not have free space and the priority of the character to be drawn is higher than at least one of the priorities of the characters indicated by all the font caches already stored, the font management unit 112 deletes the font cache of the character with the lowest priority from the font caches stored in the font cache storage area 211, and if the priority of the character to be drawn is lower than the priorities of the characters indicated by all the font caches already stored, the font management unit 112 outlines the character to be drawn and generates an object without deleting the font cache.

[0107] This allows the generated font cache to be stored more appropriately in an area corresponding to the priority of the character to be drawn in the font cache storage area 211. Also, compared to generating font caches for all characters, the performance of the character drawing process can be further improved.

[0108] Furthermore, according to the above embodiment, the image forming device 2 further includes a rendering unit 114 and an image forming unit 12. This allows the print process to be executed without causing an error due to insufficient memory.

[0109] (Other variations) In the above embodiment, the information processing device 3 is a PC, but the present invention is not limited to such an embodiment. The information processing device 3 may be, for example, a digital front-end (DFE) server.

[0110] In the above embodiment, the job management unit 115 causes the image forming unit 12 and the like to form an image indicated by the generated image data on the paper P, but the present invention is not limited to such an embodiment. For example, the job management unit 115 may store the generated image data in the HDD 18 in accordance with a user instruction received from the information processing device 3, or may transmit the generated image data to an external device via the facsimile communication unit 21 or the communication unit 22.

[0111] In the above embodiment, the image forming unit 12 etc. forms an image on paper P, but the present invention is not limited to such an embodiment. The image forming unit 12 etc. may form an image on, for example, an OHP (Overhead Projector) sheet.

[0112] The present invention is not limited to the above-described embodiment and modified examples, and various modifications are possible. For example, in the above-described embodiment, a color multifunction peripheral is used as the image forming device 2, but this is merely an example, and other image forming devices such as a monochrome multifunction peripheral, a copier, or a facsimile machine may also be used.

[0113] The configurations and processes of the above-described embodiment and modified examples shown with reference to FIGS. 1 to 10 are merely one embodiment of the present invention, and the present invention is not limited to these configurations and processes. [Explanation of symbols]

[0114] 1. Data Processing System 2. Image forming device 3. Information processing equipment 12 Image forming unit 22,34 Communications Department 30,110 Control unit 112 Font Manager 112 113 Rasterization section 114 Rendering Department 200 RAM 211 Font cache storage area

Claims

1. A data processing system including an information processing device and a data processing device, The information processing device includes: a first communication unit that communicates with the data processing device via a network; a first control unit that, when receiving a drawing instruction for a text document including a plurality of characters, calculates the frequency of use of characters having the same font name and font size for the plurality of characters, generates priority information indicating the frequency of use of each character as a priority level, and print data including the text document, and transmits the print data to the data processing device via the first communication unit; The data processing device includes: a second communication unit that communicates with the information processing device via a network; a memory unit including a font cache storage area; a second control unit that, when receiving the print data via the second communication unit, determines a character to be drawn from among the plurality of characters, and, if the font cache storage area has free capacity to store a font cache for at least one character, generates a font cache for the character to be drawn and stores the generated font cache in an area in the font cache storage area corresponding to the priority of the character to be drawn, and, if the font cache storage area does not have the free capacity, deletes the font cache of the character with the lowest priority from the font caches stored in the font cache storage area to secure the free capacity.

2. When the font cache storage area has the free space, the second control unit if the priority of the character to be drawn is lower than the priorities of the characters indicated by all the font caches already stored in the font cache storage area, storing the font cache of the character to be drawn in the font cache storage area according to a rule for storing the font cache in the order of generation; 2. The data processing system of claim 1, wherein, if the priority of the character to be drawn is higher than at least one of the character priorities indicated by each of all the font caches, the font cache of the character to be drawn is inserted and stored in the font cache storage area at a position in the font cache storage area that is older in generation order than the font caches of all characters that have a lower priority than the character to be drawn.

3. When the font cache storage area does not have the free space, the second control unit If the priority of the character to be drawn is higher than at least one of the priorities of the characters indicated by all of the font caches, delete the font cache of the character with the lowest priority from the font caches stored in the font cache storage area; 3. The data processing system according to claim 2, wherein if the priority of the character to be drawn is lower than the priority of the characters indicated by each of the font caches, the character to be drawn is outlined to generate an object without deleting the font cache.

4. The data processing device includes: a rendering unit that uses the font cache stored in the font cache storage area to draw the characters in the text document and generate image data; 2. The data processing system according to claim 1, further comprising: an image forming unit that forms, on a sheet of paper, an image represented by the image data generated by the rendering unit.

5. a first communication unit that communicates with the data processing device via a network; an information processing device comprising: a first control unit that, when receiving a drawing instruction for a text document including a plurality of characters, calculates the frequency of use of characters having the same font name and font size for the plurality of characters, generates priority information indicating the frequency of use of each character as a priority level, and print data including the text document, and transmits the print data to the data processing device via the first communication unit.

6. a second communication unit that communicates with the information processing device via a network; a memory unit including a font cache storage area; a second control unit that, when it receives from the information processing device via the second communication unit priority information indicating the frequency of use of each of a plurality of characters contained in a text document as a priority level and print data including the text document, determines a character to be drawn from the plurality of characters, and, if the font cache storage area has free capacity to store a font cache for at least one character, generates a font cache for the character to be drawn and stores the generated font cache in an area in the font cache storage area corresponding to the priority of the character to be drawn, and, if the font cache storage area does not have the free capacity, deletes the font cache of the character with the lowest priority from the font caches stored in the font cache storage area to secure the free capacity.

Citation Information

Patent Citations

  • Printer, printing control method, storage medium, and program

    JP2003175647A

  • Image forming apparatus, and character drawing program

    JP2013169763A

  • Method and apparatus for allocating cache memory space for font data

    US5592594A