IP Library › Granted Patent US 9,846,684
Granted Patent B2
US 9,846,684 · App. 14/503,209 · Granted Dec 19, 2017

Dynamic text layout rules

Inventors: Jason Clay Beaver (San Jose, CA); Elizabeth Caroline Furches Cranfill (San Francisco, CA); Eric Lance Wilson (San Jose, CA); David Chance Graham (Campbell, CA); Johannes Fortmann (San Francisco, CA); Olivier Gutknecht (San Francisco, CA); Antonio Cavedoni (Mountain View, CA)
Assignee: APPLE INC.
G06F17/214G06F3/03G06F17/212G06F17/2294G09G5/243G09G5/26G09G5/30G09G2340/145
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,846,684
App. No.
14/503,209
Granted
Dec 19, 2017
Kind
B2
Abstract

A system, method and non-transitory, computer-readable storage medium are disclosed for implementing dynamic layout rules for attributed text strings having different type styles. In some implementations, developers can use an Application Programming Interface (API) or a design tool to specify dynamic text layout rules for rendering attributed text strings in a user interface (UI). Various text attributes associated with the different type styles (e.g., font metrics) are dynamically adjusted based on the dynamic text layout rules to improve the readability of the text when, for example, font sizes are adjusted. In some implementations, one or more parameters of a text container, text container region, line-fragment or display object are dynamically adjusted based on the dynamic text layout rules to improve the readability of the text.

Claims (41)

1. A method comprising:

at an electronic device with a display and one or more input devices;

displaying on the display of the electronic device, a first text string with a first type style and a second text string with a second type style, wherein the first type style is different than the second type style;

the first text string is displayed proximate to the second text string on the display with a first spatial arrangement that is determined based at least in part on the first type style and the second type style;

after displaying the first text string and the second text string on the display, receiving, via the one or more input devices, input that changes a font size of the first text string and changes the respective font size of the second text string;

in response to receiving the input, dynamically adjusting, by the electronic device, one or more font metrics that determine the spatial arrangement of text in accordance with text layout rules based on the first type style and the second type style; and

displaying, on the display of the electronic device, the first text string and the second text string with the respective font size changed and with a second spatial arrangement that is determined based on the first type style, the second type style and the dynamically adjusted one or more font metrics.

2. The method of claim 1 , wherein receiving the input comprises receiving one or more of a user input and a programmatic input.

3. The method of claim 1 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting a size of a bounding rectangle of a text container object for at least on of the first text string and the second text string.

4. The method of claim 3 , wherein dynamically adjusting the one or more font metrics further comprises:

adjusting one or more of a size and a shape of a text container region of the text container object.

5. The method of claim 1 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting line fragment padding for at least one of the first text string and the second text string.

6. The method of claim 1 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting a size of a display object for displaying at least one of the first text string and the second text string.

7. The method of claim 1 , wherein at least one of the text layout rules specifies an amount of leading between baselines of text strings.

8. The method of claim 1 , wherein at least one of the text layout rules specifies a linear equation.

9. The method of claim 8 , where the linear equation is a sum of a default leading and a fraction of the default leading.

10. A system comprising:

a display;

one or more input devices;

one or more processors; and

a memory coupled to the one or more processors and configured for storing instructions, which, when executed by the one or more processors, causes the one or more processors to perform operations comprising:

displaying, on the display, a first text string with a first type style and a second text string with a second type style, wherein the first type style is different than the second type style;

the first text string is displayed proximate to the second text string on the display with a first spatial arrangement that is determined based at least in part on the first type style and the second type style;

after displaying the first text string and the second text string on the display, receiving, via the one or more input devices, input that changes a font size of the first text string and changes the respective font size of the second text string;

in response to receiving the input, dynamically adjusting one or more font metrics that determine the special arrangement of text in accordance with text layout rules based on the first type style and the second type style; and

displaying, on the display, the first text string and the second text string with the respective font size changed and with a second spatial arrangement that is determined based on the first type style, the second type style and the dynamically adjusted one or more font metrics.

11. The system of claim 10 , wherein receiving the input comprises receiving one or more of a user input and a programmatic input.

12. The system of claim 10 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting a size of a hounding rectangle of a text container object for at least one of the first text string and the second text string.

13. The system of claim 12 , wherein dynamically adjusting the one or more font metrics further comprises:

adjusting one or more of a size and a shape of a text container region of the text container object.

14. The system of claim 10 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting line fragment padding for at least one of the first text string and the second text string.

15. The system of claim 10 , wherein dynamically adjusting the one or more font metrics comprises:

adjusting a size of a display object for displaying at least one of the first text string and the second text string.

16. The system of claim 10 , wherein at least one of the text layout rules specifies an amount of leading between baselines of text strings.

17. The system of claim 10 , wherein at least one of the text layout rules specifies a linear equation.

18. The system of claim 17 , where the linear equation is a sum of a default leading and a fraction of the default leading.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2015
From: BEAVER, JASON CLAY; CRANFILL, ELIZABETH CAROLINE FURCHES; WILSON, ERIC LANCE; GRAHAM, DAVID CHANCE; FORTMANN, JOHANNES; GUTKNECHT, OLIVIER; CAVEDONI, ANTONIO
To: APPLE INC.
Reel/Frame 034879/0798 →
Continuity (2)
Provisional Application 62005706 · May 30, 2014
Related Publication 20150347356A1 · Dec 3, 2015