IP Library Granted Patent US 9,075,816
Granted Patent B2
US 9,075,816 · App. 13/592,644 · Granted Jul 7, 2015

System and method of compressing data in font files

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,075,816
App. No.
13/592,644
Granted
Jul 7, 2015
Kind
B2
Abstract

A compressed font file including compressed data is received. The compressed data is decompressed to generate decompressed data. An attempt to validate the decompressed data is made. Within the decompressed data, a predetermined pattern of invalid data corresponding to an element of a font file is detected. The font file is reconstructed by replacing at least some of the invalid data with the element.

Claims (35)

1. A method comprising:

receiving a compressed font file comprising compressed data;

decompressing the compressed data to generate decompressed data;

attempting to validate the decompressed data;

detecting within the decompressed data a predetermined pattern of invalid data;

determining a location of the predetermined pattern of invalid data;

determining an element of a font file based on the predetermined pattern of invalid data and the location of the predetermined pattern of invalid data, wherein the determined element comprises at least one of a bounding box associated with a glyph in the font file and a loca table that includes an indication of a start position of an entry within the loca table; and

reconstructing the font file by replacing at least some of the invalid data with the determined element.

2. The method of claim 1 , wherein the loca table is derived by scanning through a glyph table.

3. The method of claim 1 further comprising:

detecting within the decompressed data, valid data.

4. The method of claim 3 , wherein reconstructing the font file further comprises:

reconstructing the font file to include the valid data.

5. The method of claim 1 , wherein the predetermined pattern of invalid data comprises a predetermined number of zeroes.

6. A method comprising:

identifying redundant and non-redundant data in a table within a font file wherein the redundant data comprises at least one of a bounding box associate with a glyph in at least one of a plurality of tables in the font file and a loca table that includes an indication of a start position of an entry within the loca table;

applying a zeroing out procedure to replace the identified redundant data, wherein the identified redundant data is replaced with data arranged in a predetermined pattern based on a location of the redundant data in the table;

compressing the font file to generate a compressed font file; and

transmitting the compressed font file.

7. The method of claim 6 , wherein the loca table is derived by scanning through a glyph table.

8. The method of claim 6 , wherein the predetermined pattern comprises a predetermined number of zeroes.

9. A non-transitory computer readable medium storing computer program instructions, which, when executed on a processor, cause the processor to perform a method comprising:

receiving a compressed font file comprising compressed data;

decompressing the compressed data to generate decompressed data;

attempting to validate the decompressed data;

detecting within the decompressed data a predetermined pattern of invalid data;

determining a location of the predetermined pattern of invalid data;

determining an element of a font file based on the predetermined pattern of invalid data and the location of the predetermined pattern of invalid data, wherein the determined element comprises at least one of a bounding box associated with a glyph in the font the and a loca table that includes an indication of a start position of an entry within the loca table; and

reconstructing the font file by replacing at least some of the invalid data with the determined element.

10. The non-transitory computer readable medium of claim 9 , wherein the loca table is derived by scanning through a glyph table.

11. The non-transitory computer readable medium of claim 9 , further comprising instructions defining the step of:

detecting within the decompressed data, valid data.

12. The non-transitory computer readable medium of claim 11 , wherein reconstructing the font file further comprises:

reconstructing the font file to include the valid data.

13. The non-transitory computer readable medium of claim 9 , wherein the predetermined pattern of invalid data comprises a predetermined number of zeroes.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2012
From: KUETTEL, DAVID; LEVIEN, RAPHAEL LINUS
To: GOOGLE INC.
Reel/Frame 028835/0680 →