Patentable/Patents/US-8488886
US-8488886

Font matching

PublishedJuly 16, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Methods, computer readable media, and apparatuses for font matching are presented. A glyph may be received and processed. The processing of the received glyph may include reducing the glyph, computing bounds associated with the glyph, and normalizing the glyph. The processed glyph may be compared to a repository of image prototypes. The comparison may include determining a distance of the processed glyph from one or more the image prototypes, sorting the determined distances, and selecting one or more of the image prototypes based on the determined distances. Additional techniques may be used to enhance the resolution or accuracy associated with the various methods and algorithms.

Patent Claims
21 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method, comprising: receiving, by at least one computing device, a glyph; reducing, by the at least one computing device, the received glyph to a predefined format; normalizing, by the at least one computing device, the reduced glyph; comparing, by the at least one computing device, the normalized glyph to a plurality of image prototypes; and outputting, by the at least one computing device, at least one of the plurality of image prototypes based on the comparison of the normalized glyph to the plurality of image prototypes, wherein comparing the normalized glyph to the plurality of image prototypes includes: determining a number of rows in the normalized glyph and a number of rows in a selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the selected one of the plurality of image prototypes; accumulating a result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the selected one of the plurality of image prototypes; for each row of the normalized glyph and the selected one of the plurality of image prototypes that was not xor'ed, adding to the result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the selected one of the plurality of image prototypes; and saving the added result.

Plain English Translation

A method for font matching implemented on a computing device involves: receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a collection of stored image prototypes. The comparison outputs the best-matching image prototype. The comparison process calculates a difference score between the normalized glyph and each image prototype. This involves comparing rows of pixels using an XOR operation. For any rows that differ in number, the pixel count is added. The resulting difference score indicates how well the glyph matches each stored prototype, enabling font identification or character recognition.

Claim 2

Original Legal Text

2. The method of claim 1 , wherein reducing the received glyph to a predefined format comprises reducing the received glyph to a 1-bit depth bitmap format.

Plain English Translation

The method of claim 1 refines the glyph reduction step by specifically reducing the received glyph to a 1-bit depth bitmap format. This means each pixel is represented by a single bit (either black or white), simplifying the image and making the subsequent comparison process more efficient. Therefore the method involves: receiving a glyph (character image); reducing the glyph to a 1-bit depth bitmap format; normalizing the reduced glyph; comparing the normalized glyph to a collection of stored image prototypes; and outputting the best-matching image prototype.

Claim 3

Original Legal Text

3. The method of claim 1 , wherein normalizing the reduced glyph comprises normalizing the reduced glyph to a predefined width and a proportional height.

Plain English Translation

The method of claim 1 further specifies that normalizing the reduced glyph includes adjusting it to a predefined width and a proportional height. This ensures that glyphs of different sizes are scaled consistently before comparison. Therefore the method involves: receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph to a predefined width and proportional height; comparing the normalized glyph to a collection of stored image prototypes; and outputting the best-matching image prototype.

Claim 4

Original Legal Text

4. The method of claim 3 , wherein each of the plurality of image prototypes are normalized to the predefined width.

Plain English Translation

Building upon claim 3, this clarifies that each of the stored image prototypes are also normalized to the same predefined width used for normalizing the input glyph. This ensures consistent scaling for both the input and stored glyphs during comparison. Therefore, the method involves ensuring each of the stored image prototypes are normalized to the predefined width used for normalizing the input glyph, in addition to the processes of claim 3: receiving, reducing, normalizing, comparing and outputting.

Claim 5

Original Legal Text

5. The method of claim 1 , further comprising: storing, by the at least one computing device, the plurality of image prototypes in a repository.

Plain English Translation

The method of claim 1 includes storing the plurality of image prototypes (the collection of reference glyphs) in a repository accessible to the computing device. This implies a database or other storage mechanism is used to hold the glyph images for comparison. Therefore, the method involves: storing the plurality of image prototypes in a repository, in addition to the processes of claim 1: receiving, reducing, normalizing, comparing and outputting.

Claim 6

Original Legal Text

6. The method of claim 1 , wherein comparing the normalized glyph to the plurality of image prototypes further includes: determining a number of rows in at least a second selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the at least second selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the at least second selected one of the plurality of image prototypes; accumulating at least a second result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the at least second selected one of the plurality of image prototypes; for each row of the normalized glyph and the at least second selected one of the plurality of image prototypes that was not xor'ed, adding to the at least second result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the at least second selected one of the plurality of image prototypes; saving the added at least second result; and determining a minimum of the added result and the added at least second result.

Plain English Translation

The method of claim 1 elaborates on the comparison process by comparing the normalized glyph to at least a second selected image prototype. It calculates a second difference score using the XOR operation, row comparison, and pixel counting method described in claim 1. Finally, it determines the minimum of the two difference scores. Therefore the method involves: receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a collection of stored image prototypes; calculating a first difference score; calculating a second difference score against another prototype; determining a minimum of the two scores, and outputting the best-matching image prototype based on the minimum.

Claim 7

Original Legal Text

7. The method of claim 6 , wherein the outputting of the at least one of the plurality of image prototypes comprises outputting an image prototype corresponding to the determined minimum of the added result and the added at least second result.

Plain English Translation

Building on claim 6, the outputting step specifically involves selecting and outputting the image prototype that corresponds to the determined minimum difference score. This means the prototype with the lowest difference (best match) is the one presented as the result. Therefore, instead of just outputting "at least one of the plurality of image prototypes", the method specifically involves outputting the image prototype corresponding to the determined minimum difference score, in addition to the processes of claim 6.

Claim 8

Original Legal Text

8. The method of claim 1 , further comprising: computing, by the at least one computing device, bounds associated with the received glyph, wherein the normalization of the reduced glyph is based on the computed bounds.

Plain English Translation

The method of claim 1 includes an initial step of computing bounds (e.g., bounding box) associated with the received glyph. The normalization process then uses these bounds to properly scale and center the glyph. Therefore the method involves: computing bounds associated with the received glyph; receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph based on the computed bounds; comparing the normalized glyph to a collection of stored image prototypes; and outputting the best-matching image prototype.

Claim 9

Original Legal Text

9. One or more non-transitory computer-readable media having instructions stored thereon, that when executed by one or more computers, cause the one or more computers to perform: receiving a glyph; reducing the received glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison of the normalized glyph to the plurality of image prototypes, wherein comparing the normalized glyph to the plurality of image prototypes includes: determining a number of rows in the normalized glyph and a number of rows in a selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the selected one of the plurality of image prototypes; accumulating a result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the selected one of the plurality of image prototypes; for each row of the normalized glyph and the selected one of the plurality of image prototypes that was not xor'ed, adding to the result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the selected one of the plurality of image prototypes; and saving the added result.

Plain English Translation

This claim describes one or more non-transitory computer-readable media having instructions stored thereon to perform a method for font matching. The method involves: receiving a glyph; reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes using an XOR operation on pixel rows and pixel counts; and outputting the best-matching image prototype based on the comparison.

Claim 10

Original Legal Text

10. The one or more non-transitory computer-readable media of claim 9 , wherein the instructions, when executed by the one or more computers, cause the one or more computers to perform: reducing the received glyph to a 1-bit depth bitmap format.

Plain English Translation

The computer-readable media of claim 9 further specifies that reducing the glyph involves reducing it to a 1-bit depth bitmap format. Therefore, the computer-readable media comprises instructions for: receiving a glyph; reducing the received glyph to a 1-bit depth bitmap format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 11

Original Legal Text

11. The one or more non-transitory computer-readable media of claim 9 , wherein the instructions, when executed by the one or more computers, cause the one or more computers to perform: normalizing the reduced glyph to a predefined width and a proportional height.

Plain English Translation

The computer-readable media of claim 9 specifies that normalizing the reduced glyph involves normalizing it to a predefined width and a proportional height. Therefore, the computer-readable media comprises instructions for: receiving a glyph; reducing the received glyph to a predefined format; normalizing the reduced glyph to a predefined width and a proportional height; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 12

Original Legal Text

12. The one or more non-transitory computer-readable media of claim 9 , wherein comparing the normalized glyph to the plurality of image prototypes further includes: determining a number of rows in at least a second selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the at least second selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the at least second selected one of the plurality of image prototypes; accumulating at least a second result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the at least second selected one of the plurality of image prototypes; for each row of the normalized glyph and the at least second selected one of the plurality of image prototypes that was not xor'ed, adding to the at least second result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the at least second selected one of the plurality of image prototypes; saving the added at least second result; and determining a minimum of the added result and the added at least second result.

Plain English Translation

The computer-readable media of claim 9 elaborates on the comparison process by comparing the normalized glyph to at least a second selected image prototype. It calculates a second difference score using the XOR operation, row comparison, and pixel counting method described in claim 9. Finally, it determines the minimum of the two difference scores. Therefore the computer-readable media comprises instructions for: receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a collection of stored image prototypes; calculating a first difference score; calculating a second difference score against another prototype; determining a minimum of the two scores, and outputting the best-matching image prototype based on the minimum.

Claim 13

Original Legal Text

13. The one or more non-transitory computer-readable media of claim 12 , wherein the outputting of the at least one of the plurality of image prototypes comprises outputting an image prototype corresponding to the determined minimum of the added result and the added at least second result.

Plain English Translation

Building on claim 12, the outputting step specifically involves selecting and outputting the image prototype that corresponds to the determined minimum difference score. This means the prototype with the lowest difference (best match) is the one presented as the result. Therefore, instead of just outputting "at least one of the plurality of image prototypes", the computer-readable media comprises instructions for outputting the image prototype corresponding to the determined minimum difference score, in addition to the processes of claim 12.

Claim 14

Original Legal Text

14. An apparatus, comprising: at least one processor; and memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform: receiving a glyph; reducing the received glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison of the normalized glyph to the plurality of image prototypes, wherein comparing the normalized glyph to the plurality of image prototypes includes: determining a number of rows in the normalized glyph and a number of rows in a selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the selected one of the plurality of image prototypes; accumulating a result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the selected one of the plurality of image prototypes; for each row of the normalized glyph and the selected one of the plurality of image prototypes that was not xor'ed, adding to the result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the selected one of the plurality of image prototypes; and saving the added result.

Plain English Translation

An apparatus (device) for font matching includes a processor and memory. The memory stores instructions that, when executed, cause the apparatus to perform: receiving a glyph; reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes using an XOR operation on pixel rows and pixel counts; and outputting the best-matching image prototype based on the comparison.

Claim 15

Original Legal Text

15. The apparatus of claim 14 , wherein the instructions, when executed by the at least one processor, cause the apparatus to perform: reducing the received glyph to a 1-bit depth bitmap format.

Plain English Translation

The apparatus of claim 14 further specifies that reducing the glyph involves reducing it to a 1-bit depth bitmap format. Therefore, the memory stores instructions for: receiving a glyph; reducing the received glyph to a 1-bit depth bitmap format; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 16

Original Legal Text

16. The apparatus of claim 14 , wherein the instructions, when executed by the at least one processor, cause the apparatus to perform: normalizing the reduced glyph to a predefined width and a proportional height.

Plain English Translation

The apparatus of claim 14 specifies that normalizing the reduced glyph involves normalizing it to a predefined width and a proportional height. Therefore, the memory stores instructions for: receiving a glyph; reducing the received glyph to a predefined format; normalizing the reduced glyph to a predefined width and a proportional height; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 17

Original Legal Text

17. The apparatus of claim 14 , wherein the instructions, when executed by the at least one processor, cause the apparatus to perform: rotating the normalized glyph; and comparing the rotated glyph to the plurality of image prototypes.

Plain English Translation

The apparatus of claim 14 includes instructions to rotate the normalized glyph before comparing it to the image prototypes. This allows for matching glyphs that may be slightly rotated. Therefore, the memory stores instructions for: receiving a glyph; reducing the received glyph to a predefined format; normalizing the reduced glyph; rotating the normalized glyph; comparing the rotated glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 18

Original Legal Text

18. The apparatus of claim 14 , wherein the instructions, when executed by the at least one processor, cause the apparatus to perform: computing bounds associated with the received glyph, wherein the normalization of the reduced glyph is based on the computed bounds; translating the computed bounds by an offset amount; normalizing the reduced glyph based on the translated bounds; comparing the normalized reduced glyph based on the translated bounds to the plurality of image prototypes; determining at least one image prototype selected from the plurality of image prototypes that most closely matches the received glyph based on the comparisons; and outputting the determined at least one image prototype.

Plain English Translation

The apparatus of claim 14 includes instructions to compute bounds for the received glyph, translate these bounds by an offset, and then normalize the glyph based on the translated bounds. The apparatus then compares the normalized glyph to the prototypes, selects the best match, and outputs that prototype. Therefore, the memory stores instructions for: computing bounds; translating those bounds; normalizing the glyph based on the translated bounds; comparing the normalized glyph to a plurality of image prototypes; determining the best match; and outputting the matching prototype.

Claim 19

Original Legal Text

19. The apparatus of claim 14 , wherein the instructions, when executed by the at least one processor, cause the apparatus to perform: reducing the received glyph based on a nearest-neighbors algorithm.

Plain English Translation

The apparatus of claim 14 involves instructions to reduce the received glyph using a nearest-neighbors algorithm. This method helps to smooth the glyph during reduction, potentially improving matching accuracy. Therefore, the memory stores instructions for: receiving a glyph; reducing the received glyph based on a nearest-neighbors algorithm; normalizing the reduced glyph; comparing the normalized glyph to a plurality of image prototypes; and outputting at least one of the plurality of image prototypes based on the comparison.

Claim 20

Original Legal Text

20. The apparatus of claim 14 , wherein comparing the normalized glyph to the plurality of image prototypes further includes: determining a number of rows in at least a second selected one of the plurality of image prototypes; for the lesser of the number of rows in the normalized glyph and the number of rows in the at least second selected one of the plurality of image prototypes, exclusive-or'ing (xor'ing) pixels of the normalized glyph with corresponding pixels of the at least second selected one of the plurality of image prototypes; accumulating at least a second result of the xor'ing of the pixels of the normalized glyph with the corresponding pixels of the at least second selected one of the plurality of image prototypes; for each row of the normalized glyph and the at least second selected one of the plurality of image prototypes that was not xor'ed, adding to the at least second result a number corresponding to the number of pixels ‘on’ in the normalized glyph or the at least second selected one of the plurality of image prototypes; saving the added at least second result; and determining a minimum of the added result and the added at least second result.

Plain English Translation

The apparatus of claim 14 elaborates on the comparison process by comparing the normalized glyph to at least a second selected image prototype. It calculates a second difference score using the XOR operation, row comparison, and pixel counting method described in claim 14. Finally, it determines the minimum of the two difference scores. Therefore, the memory stores instructions for: receiving a glyph (character image); reducing the glyph to a predefined format; normalizing the reduced glyph; comparing the normalized glyph to a collection of stored image prototypes; calculating a first difference score; calculating a second difference score against another prototype; determining a minimum of the two scores, and outputting the best-matching image prototype based on the minimum.

Claim 21

Original Legal Text

21. The apparatus of claim 20 , wherein the outputting of the at least one of the plurality of image prototypes comprises outputting an image prototype corresponding to the determined minimum of the added result and the added at least second result.

Plain English Translation

Building on claim 20, the outputting step specifically involves selecting and outputting the image prototype that corresponds to the determined minimum difference score. This means the prototype with the lowest difference (best match) is the one presented as the result. Therefore, instead of just outputting "at least one of the plurality of image prototypes", the memory stores instructions for outputting the image prototype corresponding to the determined minimum difference score, in addition to the processes of claim 20.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

August 2, 2010

Publication Date

July 16, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Font matching” (US-8488886). https://patentable.app/patents/US-8488886

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-8488886. See llms.txt for full attribution policy.