IP Library Granted Patent US 7,821,515
Granted Patent B2
US 7,821,515 · App. 11/819,377 · Granted Oct 26, 2010

Method for automatic font character height restriction

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 7,821,515
App. No.
11/819,377
Granted
Oct 26, 2010
Kind
B2
Abstract

A method is provided for reducing a height of a font character in a nonlinear scaling process. The method includes reducing the height of the character by interacting with hinting instruction to adjust relevant instructions to thereby reduce the overall height of a font character while preserving as much of the integrity of the character as possible. The method includes an iterative process which selectively removes various pixels, defining an outline of a font character while maintaining a removal criteria, which results in a nonlinear height reduction in order to produce a font of a desired height.

Claims (45)

1. A method for reducing a height of a font character, said method comprising:

executing font character instructions for rendering a font character to produce a font outline;

determining points which comprise an outline for a font character to be rendered based on the font character instruction;

calculating, in a processor, new y positions for various points which comprise the outline so that the outline does not exceed preset boundaries for the character, said calculating a new y position using a pixel removal criteria in which pixels are removed in an iterative process until a predetermined font height is achieved, said removal criteria comprising:

a. maintaining at least one off pixel between zones, said zones being defined as areas in the font character separated by a horizontal stripe of off pixels, and at least three on pixels between two points when removing pixels during the iterative process, if possible, and, if not possible;

b. eliminating the one off pixel between zones, and reducing the number of on pixels between points in succession, from three to two to one, during the iterative process;

setting an adjustment value for each instruction;

and

executing the font instruction while applying the adjustment value to each point.

2. The method of claim 1 , wherein said iterative process comprises:

i. removing an off pixel between zones comprising the font until the number of pixels to be removed is reached, or until there is only one off pixel separating one zone from another zone;

ii. if there is only one zone, shifting the character towards the baseline if there is only one zone in the character bitmap, and the character lies entirely above or below the baseline;

iii. removing an on pixel between composite parts which comprise the character, if any;

iv. removing an on pixel from the topmost or bottommost portion of the character;

v. removing an on pixel between the instruction trees previously constructed; and

vi. removing a pixel from the largest on pixel portion of the character, wherein pixels are only removed while maintaining the removal criteria.

3. The method of claim 1 , wherein the appearance of the character is maintained with minimal distortion.

4. A method for reducing a height of a font character, said method comprising:

executing font character instructions for rendering a font character to produce a font outline;

determining an outline for a font character to be rendered based on the font character instruction;

determining whether a y component of a character outline is to be adjusted and, therefore, the freedom vector in they direction is not zero;

storing instruction code, a point number, and, optionally, a parent number, if there is a parent number for a respective point number, and any other point number, if the point number is an interpolation;

storing the x and y coordinate values of each point, a respective part number to which the instruction belongs, and a status value, indicating whether or not the instruction applies to a single character part or to a composite character;

identifying key points from the outline of the character corresponding to points having instructions applied thereto, to adjust their respective position;

constructing a data structure comprising a set of trees where roots of a tree correspond to points which do not have parents, and each parent has a branch for each of its children;

identifying a set of zones as areas in a bitmap of the character separated by a horizontal stripe of off pixels within the character;

defining a y line by data added to the typeface, which sets a baseline point which does not move;

calculating, in a processor, a number of pixels needed to be removed from above or below the baseline; removing pixels, one at a time, in an iterative process, until the number of pixels to be removed is reached, said iterative process comprising:

i. removing off pixels between zones comprising the font, until the number of pixels to be removed is reached, or until there is only one off pixel separating one zone from another zone;

ii. if there is only one zone; shifting the character towards the baseline if there is only one zone in the character bitmap, and the character lies entirely above or below the baseline;

iii. removing an on pixel between composite parts which comprise the character, if any;

iv. removing an on pixel from the topmost or bottommost portion of the character;

v. removing an on pixel between the instruction trees previously constructed;

vi. removing a pixel from the largest on pixel portion of the character;

wherein removing pixels occurs based on removal criteria setting an amount of off pixels between regions and an amount of on pixels between points;

setting an adjustment value for each instruction;

and

executing the font instruction while applying the adjustment value to each point.

5. The method of claim 4 , wherein the key point instructions are selected as points having instructions applied thereto selected from the group consisting of MIAP, MDAP, MIRP, MIRP, MDRP, SHP, SHC, SHPIX and DELTA.

6. The method of claim 4 , wherein the pixel removal criteria comprises first removing pixels in the iterative process from i-vi, while maintaining at least one off pixel between zones, and at least three on pixels between two points, if possible, and, if not possible, eliminating the one off pixel between zones, and reducing the number of on pixels between points in succession, from three to two to one, during the iterative process.

7. The method of claim 4 , further comprising defining a second y-line and a third y-line, said second y-line corresponding to a second reference line and a minimum or maximum value to which the second y-line can be moved.

8. The method of claim 7 , wherein the second y-line and the third y-line are specified by data added to the typeface.

9. The method of claim 4 , wherein said setting an adjustment value comprises computing an amount each instruction needs to be adjusted based on the pixels removed during the iterative process.

10. The method of claim 9 , wherein instruction for pixels with no parents move the pixels by the amount computed, and for instructions for pixels with parents, determining how much a point needs to be shifted, factoring that the parent point will be shifted.

11. The method of claim 4 , wherein constructing a data structure comprises a set of trees comprising roots corresponding to points which do not have parents, since the instruction to be applied to the points are move indirect relative point (MIRP) or move direct absolute point (MDAP).

Assignments (15)
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2024
From: AUDAX PRIVATE DEBT LLC
To: MONOTYPE IMAGING INC.; MYFONTS INC.
Reel/Frame 066739/0610 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2024
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: MONOTYPE IMAGING INC.; MYFONTS INC.
Reel/Frame 066651/0123 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 14, 2019
From: MONOTYPE IMAGING INC.; MYFONTS INC.
To: AUDAX PRIVATE DEBT LLC, AS COLLATERAL AGENT
Reel/Frame 050716/0514 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Oct 14, 2019
From: MONOTYPE IMAGING INC.; MYFONTS INC.
To: DEUTSCHE BANK AG NEW YORK BRANCH
Reel/Frame 050716/0539 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513 Recorded Oct 11, 2019
From: BANK OF AMERICA, N.A.
To: MONOTYPE IMAGING INC.; MONOTYPE IMAGING HOLDINGS INC.; IMAGING HOLDINGS CORP.; MYFONTS INC.; MONOTYPE ITC INC.; OLAPIC, INC.
Reel/Frame 050711/0170 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT Recorded Mar 25, 2019
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: MONOTYPE IMAGING INC.; MONOTYPE IMAGING HOLDINGS INC.; MYFONTS INC.; IMAGING HOLDINGS CORP.; MONOTYPE ITC INC.; SWYFT MEDIA INC.
Reel/Frame 048691/0513 →
PATENT SECURITY AGREEMENT Recorded Mar 22, 2019
From: MONOTYPE IMAGING INC.; MONOTYPE IMAGING HOLDINGS INC.; IMAGING HOLDINGS CORP.; MYFONTS INC.; MONOTYPE ITC INC.; OLAPIC, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 049566/0513 →
CHANGE OF NAME Recorded Mar 21, 2019
From: MONOTYPE IMAGING HOLDINGS CORP.
To: IMAGING HOLDINGS CORP.
Reel/Frame 048670/0228 →
CHANGE OF NAME Recorded Mar 18, 2019
From: MONOTYPE IMAGING, INC.
To: IMAGING HOLDINGS CORP.
Reel/Frame 048630/0232 →
SECURITY AGREEMENT Recorded Sep 17, 2015
From: MONOTYPE IMAGING INC.; MONOTYPE IMAGING HOLDINGS INC.; MYFONTS INC.; IMAGING HOLDINGS CORP.; MONOTYPE ITC INC.; SWYFT MEDIA INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 036627/0925 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Sep 17, 2015
From: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
To: MONOTYPE IMAGING HOLDINGS CORP.; INTERNATIONAL TYPEFACE CORPORATION; MONOTYPE IMAGING INC.; LINOTYPE CORP.; IMAGING HOLDINGS CORP.
Reel/Frame 036628/0848 →
PATENT SECURITY AGREEMENT Recorded Aug 18, 2011
From: MONOTYPE IMAGING HOLDINGS INC.; MONOTYPE IMAGING INC.; IMAGING HOLDINGS CORP.; LINOTYPE CORP.; INTERNATIONAL TYPEFACE CORPORATION
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 026772/0939 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2007
From: GODDEAU, BARBARA
To: MONOTYPE IMAGING, INC.
Reel/Frame 019962/0331 →
CHANGE OF NAME Recorded Oct 15, 2007
From: MONOTYPE IMAGING, INC.
To: MONOTYPE IMAGING INC.
Reel/Frame 019962/0355 →
SECURITY AGREEMENT Recorded Oct 2, 2007
From: MONOTYPE IMAGING INC.
To: WELLS FARGO FOOTHILL, INC.
Reel/Frame 019899/0676 →