AU767739B2 - Method and apparatus for the automatic application of shape enhancement - Google Patents

Method and apparatus for the automatic application of shape enhancement Download PDF

Info

Publication number
AU767739B2
AU767739B2 AU57995/01A AU5799501A AU767739B2 AU 767739 B2 AU767739 B2 AU 767739B2 AU 57995/01 A AU57995/01 A AU 57995/01A AU 5799501 A AU5799501 A AU 5799501A AU 767739 B2 AU767739 B2 AU 767739B2
Authority
AU
Australia
Prior art keywords
action
glyphs
modifying
glyph
condition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
AU57995/01A
Other versions
AU5799501A (en
Inventor
Cameron Bolitho Browne
Stephen Robert Bruce
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AUPQ9673A external-priority patent/AUPQ967300A0/en
Application filed by Canon Inc filed Critical Canon Inc
Priority to AU57995/01A priority Critical patent/AU767739B2/en
Publication of AU5799501A publication Critical patent/AU5799501A/en
Application granted granted Critical
Publication of AU767739B2 publication Critical patent/AU767739B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)

Description

S&F Ref: 562693
AUSTRALIA
PATENTS ACT 1990 COMPLETE SPECIFICATION FOR A STANDARD PATENT
ORIGINAL
Name and Address of Applicant: Actual Inventor(s): Canon Kabushiki Kaisha 30-2, Shimomaruko 3-chome, Ohta-ku Tokyo 146 Japan Cameron Bolitho Browne Stephen Robert Bruce Spruson Ferguson St Martins Tower,Level 31 Market Street Sydney NSW 2000 (CCN 3710000177) Method and Apparatus for the Automatic Application of Shape Enhancement Address for Service: Invention Title: ASSOCIATED PROVISIONAL APPLICATION DETAILS [33] Country [31] Applic. No(s) AU PQ9673 [32] Application Date 25 Aug 2000 The following statement is a full description of this invention, including the best method of performing it known to me/us:- 5815c -1- METHOD AND APPARATUS FOR THE AUTOMATIC APPLICATION OF SHAPE ENHANCEMENT Technical Field of the Invention The present invention relates generally to the field of computer graphics and, in particular, to the application of decorative effects to enhance outline shapes such as fonts.
The present invention relates to a method and apparatus for modifying character font set.
The invention also relates to a computer program product including a computer readable medium having recorded thereon a computer program for modifying a character font set.
Background Art Manual placement of graphics to define a specific shape is often used by graphic artists in creating an image. This method allows exact placement of graphics to achieve optimal and aesthetically pleasing results. However, manual placement is labour intensive, and the quality of the results depend on the expertise of the artist.
United States Patent No. 4,933,866 provides a method for automatically generating fonts based on a width value. In the method disclosed by US Patent No. 4,933,866, a user provides control points for a thick font and control points for a thin font. The method generates control points by linearly interpolating between these extremes, with constraints to maintain character height. Further, United States Patent No. 5,444,836 provides a method for automatically placing graphical objects in a CAD system using user-defined rules. However, neither of the methods disclosed by the above-mentioned United States patents provide very precise control in the supervision of graphic placement and again the quality of the results produced can be arbitrary.
Summary of the Invention It is an object of the present invention to substantially overcome, or at least 25 ameliorate, one or more disadvantages of existing arrangements.
562693.doc -2- According to one aspect of the present invention there is provided a method of modifying a character font set, said method comprising the steps of: providing a series of glyphs representing font characters; defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
According to another aspect of the present invention there is provided a method of modifying a character font set, said method comprising the steps of: providing a series of glyphs representing font characters; modifying at least one of said glyphs; defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; 15 and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided a method of modifying graphical objects, said method comprising the steps of: providing a series of graphical objects for modification; defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and applying said rule attributes to a plurality of said objects, wherein any of said plurality of objects satisfying said condition are modified according to said action.
562693.doc 1 I% -3- According to still another aspect of the present invention there is provided an apparatus for modifying a character font set, said apparatus comprising: providing means for providing a series of glyphs representing font characters; defining means for defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and applying means for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided an apparatus for modifying a character font set, said apparatus comprising: providing means for providing a series of glyphs representing font characters; modifying means for modifying at least one of said glyphs; defining means for defining a plurality of rule attributes based on said 'modification, said rule attributes representing at least a condition and an action for 15 modifying said glyphs; and applying means for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided an apparatus for modifying graphical objects, said apparatus comprising: providing means for providing a series of graphical objects for modification; ooloo defining means for defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and 562693.doc applying means for applying said rule attributes to a plurality of said objects, wherein any of said plurality of objects satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided an apparatus for modifying a character font set, said apparatus comprising: a memory for storing a program; and a processor for executing said program, wherein said program comprises code for performing the following steps: providing a series of glyphs representing font characters; defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
15 According to still another aspect of the present invention there is provided an apparatus for modifying a character font set, said apparatus comprising: a memory for storing a program; and a processor for executing said program, wherein said program comprises code for performing the following steps: providing a series of glyphs representing font characters; S(b) modifying at least one of said glyphs; *eo defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any 562693.doc of said plurality of said glyphs satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided an apparatus for modifying graphical objects, said apparatus comprising: a memory for storing a program; and a processor for executing said program, wherein said program comprises code for performing the following steps: providing a series of graphical objects for modification; defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and applying said rule attributes to a plurality of said objects, wherein any of said plurality of objects satisfying said condition are modified according to said action.
"According to still another aspect of the present invention there is provided a 15 program for modifying a character font set, said program comprising: code for providing a series of glyphs representing font characters; code for defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and S"code for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
S S According to still another aspect of the present invention there is provided a program for modifying a character font set, said program comprising: code for providing a series of glyphs representing font characters; code for modifying at least one of said glyphs; 562693.doc -6code for defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; and code for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
According to still another aspect of the present invention there is provided a program for modifying graphical objects, said program comprising: providing means for providing a series of graphical objects for modification; defining means for defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and applying means for applying said rule attributes to a plurality of said objects, wherein any of said plurality of objects satisfying said condition are modified according to said action.
Brief Description of the Drawings One or more embodiments of the present invention will now be described with reference to the drawings, in which: Fig. shows an object outline for the glyph Fig. l(b) shows an object outline for the glyph Fig. 1 shows an object outline for the glyph *Fig. 1(d) shows an object outline for the glyph Fig. 2 shows the basic stroke primitives that occur within a character font glyph; Fig. 3(a) shows two stroke primitives that cross at a point; Fig. 3(b) shows a stroke that terminates at a junction with another stroke; 562693.doc Fig. 3(c) shows curvature at a particular point on a stroke defined by a radius of curvature c; Fig. 3(d) shows a stroke that includes a stroke start point and a stroke end point; Fig. 3(e) shows a stroke that includes an indication of direction at the stroke start and end points; Fig. 4(a) shows two outlines, and a stroke defining a glyph Fig. 4(b) shows a wide region identified by a maximal inflection point for two outlines; Fig. 4(c) shows a thin region identified by a minimal inflection point for two outlines; Fig. 5(a) shows three glyphs and having vertical stems of equal length; r r e r r r r r r r r c Fig 5(b) shows the glyphs and of Fig. whereby and have a serif at their stem top; Fig. 6(a) shows a comer in an outline; Fig. 6(b) shows a comer described by a bisector of the angle that the comer subtends; Fig. 6(c) shows a curvature at a point on an outline; Fig. 6(d) shows the direction of an outline; Fig. 6(e) shows tangent direction at a point on an outline; Fig. 7 shows a graphical effect that can be used to decorate a bounded image defined by a boundary outline; Fig. 8(a) shows the bounded image of Fig. 7 with an additional circle fitted to the top left comer of the packed boundary outline; Fig. 8(b) shows the condition attribute for the example of Fig. 8(a); 562693.doc -8- Fig. 8(c) shows the action attribute for the example of Fig. 8(a); Fig. 8(d) shows the constraint attribute for the example of Fig. 8(a); Fig. 8(e) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig. 8(f) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig 9(a) shows the outline of a glyph before and after being manipulated to include a flourish to the left of the top of the vertical stem; Fig. 9(b) shows the condition attribute for the example of Fig. 9(a); Fig. 9(c) shows the action attribute for the example of Fig. 9(a); Fig. 9(d) shows the constraint attribute for the example of Fig. 9(a); Fig. 9(e) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig. 9(f) shows the glyph before and after having the rule defined by Figs.
15 and applied to the glyph; Fig. 9(g) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig. 10(a) shows the glyph outline and the resulting outline after a hole has e been added to the outline; Fig. 10(b) shows the condition attribute for the example of Fig. Fig. 10(c) shows the action attribute for the example of Fig. Fig. 10(d) shows the constraint attribute for the example of Fig. Fig. 10(e) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; 562693.doc -9- Fig. 10(f) shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig. 1 l(a) shows a glyph outline and a resulting outline after the glyph '0' has been modified to introduce symmetrical spurs at points of inflection of maximal stroke width; Fig. 1 l(b) shows the condition attribute for the example of Fig. 1 l(a); Fig. 1 l(c) shows the action attribute for the example of Fig. 1 l(a); Fig. 1 l(d) shows the constraint attribute for the example of Fig. 1 l(a); Fig. 11 shows the glyph before and after having the rule defined by Figs.
and applied to the glyph; Fig. 1 l(f) shows the glyph before and after having the rule defined by Figs.
1 and applied to the glyph; Fig. 12 is a flow diagram showing a method of modifying a character font set; Fig. 13(a) shows a condition attribute for adding a large flourish to a glyph; 15 Fig. 13(b) shows an action attribute for adding a large flourish to a glyph; Fig. 13(c) shows a constraint attribute which allows for self intersections in adding a large flourish to a glyph; and °e Fig. 14 shows a schematic block diagram of a general purpose computer upon :"which described arrangements can be practiced.
Detailed Description including Best Mode Where reference is made in any one or more of the accompanying drawings to eoooe steps and/or features, which have the same reference numerals, those steps and/or features have for the purposes of this description the same function(s) or operation(s), unless the contrary intention appears.
562693.doc Some portions of the description which follows are explicitly or implicitly presented in terms of algorithms and symbolic representations of operations on data within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that the above and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, and as apparent from the following, it will be appreciated that throughout the present specification, discussions Sutilizing terms such as "scanning", "calculating", "determining", "replacing", "generating" "initializing", "outputting", or the like, refer to the action and processes of a oee computer system, or similar electronic device, that manipulates and transforms data represented as physical (electronic) quantities within the registers and memories of the computer system into other data similarly represented as physical quantities within the S"computer system memories or registers or other such information storage, transmission or display devices.
The present specification also discloses apparatus for performing the operations of the methods. Such apparatus may be specially constructed for the required purposes, or may comprise a general purpose computer or other device selectively activated or 562693.doc -11reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus.
Various general purpose machines may be used with programs in accordance with the teachings herein. Alternatively, the construction of more specialized apparatus to perform the required method steps may be appropriate. The structure of a conventional general purpose computer will appear from the description below.
In addition, the present specification also discloses a computer readable medium comprising a computer program for performing the operations of the methods. The computer readable medium is taken herein to include any transmission medium for communicating the computer program between a source and a designation. The transmission medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a general purpose computer. The transmission medium may also include a hard-wired medium such as exemplified in the Internet system, or wireless medium such as exemplified in the GSM mobile telephone system. The computer program is not intended to be limited to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and coding thereof may be used to implement the teachings of the invention as described herein.
The principles of the method described herein have general applicability to any set of arbitrary object outlines or shapes. However, for ease of explanation, the steps of the method are described with reference to manipulations applied to the outline of a glyph S -contained by a character font set.
A method of modifying a font character set, based on local geometries of the outline defining a particular glyph for the font character set, is described herein. The 562693.doc -12method utilises both manual control and automatic control to provide an aesthetically pleasing object with a minimum of user input.
Figs. and show a set of object outlines for the glyphs 101, 'J' 109, 110 and 111, respectively. Strokes that correspond to pen strokes that can be used by calligraphers to draw the characters of Fig. 1 are shown as dotted lines in Figs.
and Strokes are typically vertical stems 102, horizontal crossbars 103, angled 107 and 108, or curved 106. Strokes may terminate at junctions with other strokes 105, cross other strokes 104, or be composed of more than one characteristic component such as a straight portion 112 and a curved portion 113.
Fig. 2 shows the basic stroke primitives that occur within a character font. These stroke primitives include a vertical stem 201, a horizontal crossbar 202, a backward angle 203, a forward angle 204, and a curve 205. The characters of a font typically share the same forward and backward angles across all of the characters of the font.
Figs. 3(a) and show some relationships that can exist between strokes of a 5 character font. Fig. 3(a) shows two strokes 309 and 311 that cross at a point 301. Fig.
3(b) shows a stroke 315 that terminates at a junction 302 with another stroke 313.
Similarly, Figs. and show characteristics of individual strokes that can be used to distinguish parts of strokes. Fig. 3(c) shows curvature at a particular point 303 on stroke 317 defined by a radius of curvature c 304. Fig. 3(d) shows a stroke 319 that includes a stroke start point 305 and a stroke end point 306. Fig. 3(e) shows a stroke 321 that includes an indication of direction at the stroke start 307 and end points 308.
Fig. 4(a) shows two outlines 401 and 407, and a stroke 402 defining a glyph '0' 400. The glyph 400 contains narrow regions 403 and 405 and wide regions 404 and 406, that may be determined from the stroke 402. These regions 403-406 can be localised to key points along a stroke that correspond to inflection points of width on an outline. For 562693.doc -13example, Fig. 4(b) shows a wide region 409 identified by a maximal inflection point 406 and, Fig. 4(c) shows a thin region 411 identified by a minimal inflection point 407.
Some glyphs have what is referred to as exposed stroke length. For example, as seen in Fig. glyphs 501, 502 and 503 have vertical stems 504, 505 and 507, respectively, of equal length. However, the vertical stems of glyphs 501 and 'T' 503 have junctions 512 and 514 towards their top, whereas the vertical stroke of glyph 'h' is unencumbered with junctions or crossing points for a distance d 506 above the junction 508 of the stem 505 and arch 516. The section of stroke indicated by the distance d 506 is referred to as exposed stroke length.
Exposed stroke length is important when applying features relative to character stem tops. For example, as shown in Fig the glyph 520 can have a symmetrical serif 521 placed on the stem top with the serif 521 having left 509 and right 510 components, since the glyph 520 has an exposed stroke length as discussed above.
However, the stem top of the glyph 516 can only support a left serif 15 component 508 since 516 does not have an exposed stem but is exposed to the left.
Further, the stem top 511 of glyph 518 can not support any serif component, since the glyph 518 does not have any exposed stroke length towards the top of the respective glyphs.
Positional characteristics of an object outline can be defined based on local geometry of the outline defining the object rather than strokes. For example, corners 601 in an outline are readily identified, as shown in Fig. Further, a corner 602 can be described by a bisector 604 of the angle 603 that the corner 602 sub-tends. Other outline characteristics are shown in Figs. and These include direction 605 of an outline 611, tangent direction 607 at a point 606 of an outline 613, and curvature at a point 608 on an outline 615 described by a radius of curvature c 609.
562693.doc -14- Fig. 12 is a flow diagram showing a method of modifying a character font set.
The method comprises three distinct stages. The first stage comprises steps 1202 to 1203, where a character font set is loaded and modified. The second stage comprises steps 1206 to 1210, where further modification can be applied to the entire font set using user defined rule attributes, which will be explained in more detail in the following paragraphs. The third stage comprises steps 1213 to 1216, where further manual modification can be applied to individual glyphs of a character font set. The third stage is optional and allows a user to handle special conditions that are specific to particulaf glyph outline cases.
The process begins at step 1202, where a pre-stored character font set is retrieved by a user, for modification. At the next step 1203, the pre-stored character font set is modified (eg. to decorate the glyphs of the character font set). The entire character font set or a sub-set thereof can be modified at step 1203. Further, step 1203 can be performed S-automatically using any known decoration process or alternatively, the step 1203 can be 15 performed manually by a user. As will be explained in more detail below, the selected font can be modified by, for example, adding a texture based on circle packing to each glyph of the font, manipulating the boundary outline of the glyph (eg. by adding spurs and flourishes to the boundary outline) and adding interior edge outlines to a glyph outline.
*.However, the method described herein is not limited to these particular examples and it will be appreciated by someone skilled in the art that many other modifications can be .made to a character font glyph. The process continues at the next step 1204, where a check is performed to determine if the modified font requires further modification. If the check performed at step 1204 returns false then process ends. Otherwise, the process proceeds to step 1205, where a check is performed to determine if the further modification is to be applied to all of the glyphs in the character font set. If the check 562693.doc performed at step 1205 returns true then the process proceeds to step 1206, where a glyph of the character font set is selected and modified. For example, Fig. 7 shows a graphical effect that can be used to modify a bounded image defined by a boundary outline 701. In particular, a texture based on circle (eg. 703) packing has been applied to the boundary outline 701. Ideally, the initial texture applied to the boundary outline 701 is created manually by a skilled graphic artist. However, as discussed above, manual placement is labour intensive, and the quality of the results depends on the expertise of the artist.
Automatic circle packing algorithms (eg. the tangent-i packing method) can be more efficient but a less aesthetically pleasing result is generally produced.
A tighter packing that describes the boundary outline shape 701 more accurately can be produced by performing further processing on the packed boundary outline 705.
For example, a user can specify that an additional circle 803 be fitted to the top left corner of the packed boundary outline 705 to give a tighter packing that describes the outline 705 more accurately, as shown in Fig. 8 The step of adding the circle 803 to the packed boundary outline 705 can be defined by a rule that contains the following attributes: a 'condition' based on local geometry; an 'action'; and 'constraints' (if required).
'.*The condition in the example of adding the circle 803 is defined as the "top left corner", which can be generalised to any corner 804 whose interior bisector is approximately 315 degrees with respect to a horizontal edge 804 of a bounded image, as shown in Fig. 8(b).
The action in the above example of adding the circle 803 is defined as "fitting an additional circle 803 that is tangential to the outline 806 and any existing circles (eg.
562693.doc -16- 807)", as shown in Fig. For the tightest fit, the maximum radius circle 808 that satisfies the condition and action criteria above, is desired.
The constraints in the above example of adding the circle 803 can include that any fitted circles be above a specified minimum radius m 809. For example, the combination of outline 810 and existing circles 811 and 812 dictates that the fitted circle 820 be smaller than the minimum radius and hence should be discarded.
Returning to the process of Fig. 12, after step 1206, the process proceeds to step 1207, where a condition is defined for the character font set depending on the modification that was performed at step 1206. At the next step 1208, an action is defined for the character font set depending on the modification that was performed at step 1206.
The process continues to step 1209, where a constraint is defined for the character font set.
The above set of rules defined by the condition, action and constraint *can be applied to other glyphs within the character font set. For example, Fig. 8(e) shows how the above defined set of rules can be applied to the glyph 815 after the glyph 'N' 815 has been textured using circle packing. Two outline positions 816 and 817 that satisfy the selection condition (ie. angle with 315 degree bisector) have been found and additional circles 812 and 813 packed at those points. In a further example, Fig. 8(f) shows a situation where the constraint rule defined above is not satisfied and consequently the application of the rule to the glyph 814 fails. As shown in Fig. the glyph 814 has been textured such that the top left corner of the glyph 814 is tightly Sp packed. Packing an additional circle in the top left comer of the glyph 814 would require that a fitted circle be of radius less than a specified minimum radius m, hence the application is not performed and is not reflected in the resulting glyph 823.
562693.doc -17- Returning now to the process of Fig. 12, after step 1209, the process proceeds to step 1210 where the above set of rules defined by the condition, action and (c) constraint are applied to all of the other glyphs within the character font. The process then returns to step 1204.
If at step 1205, the desired modification is not to be applied to all of the glyphs in the character font set, then the process proceeds to step 1213, where a check is performed to determine if the modification is to be applied to at least one single glyph in the character font set. If the check returns true at step 1213, then the process proceeds to step 1214. Otherwise the process ends. At step 1214, a glyph of the character font set is selected. At the next step 1215, a modification is performed on the selected glyph. Any known modification can be performed on the selected glyph at step 1215. This modification can be performed manually or automatically using any known glyph modification process. The process continues at the next step 1216, where a check is performed to determine if the selected glyph requires further modification. If the check at step 1216 returns true, then the process returns to step 1215. Otherwise the process returns to step 1213.
S In a further arrangement, if the above defined constraint rule is not met, circles ,oo o within the relevant local area of a boundary outline (eg. circles 817 and 819 of Fig. 8(f)) can be resized or refitted to allow the placement of an additional circle, or to otherwise optimise the packing in the local region.
Another type of manipulation that can be applied across a character font set, is S boundary outline manipulations that directly affect the boundary outline shape of an object. For example, Fig 9(a) shows the outline of a glyph 901. The outline 901 can be manipulated to include a flourish 902 to the left of the top of the vertical stem 921, as 562693.doc -18seen in Fig. The step of adding the flourish 902 to the boundary outline 901 can be defined by a rule that contains the following attributes: a 'condition' based on local geometry; an 'action'; and 'constraints'.
The condition in the example of Fig 9(a) is "top of vertical stroke end" 903 as shown in Fig. 9(b).
The action in the example of Fig. 9(a) is to "modify the existing outline 901 by adding a flourish 902 to the left of the stroke end 903 such that the flourish 902 fits flush with the terminating edge of the stroke end 903, as shown in Fig. 9(c).
The constraint in the example of Fig. 9(a) is that "self-intersection caused by the flourish 902 must not be allowed." An example, of self-intersection is shown in Fig. 9(d) where a section 906 of an outline intersects the flourish 902. Such self-intersections typically occur when an exposed stem length is smaller than an associated flourish radius.
o°00 o 15 In accordance with the example of Fig. flourishes that do not meet the constraint of
SOS.
Fig. 9(d) are classed as invalid and are discarded.
The rule defined above for adding flourishes to a glyph outline can be applied to 0..
other glyph outlines. For example, Fig 9(e) shows an example where the rule has been applied to the glyph outline 923. The glyph outline 923 has two vertical stems 907 and 908, to which flourishes 909 and 910 can be applied. As shown in Fig. the :'00 outline 923 has been manipulated in accordance with the rule defined above such that the 0 S• flourishes 909 and 910 have been added to the "top of vertical stroke end" (ie. 925, 927) for the two vertical stems 907 and 908; the flourishes 909 and 910 have been added to the left of the associated stroke ends 925, 927 and the flourishes 909 and 910 fit flush with 562693.doc -19the respective terminating edges of the stroke ends 925, 927; and neither of the flourishes 909, 910 intersect the outline 923 and are therefore valid.
As a further example, Fig. 9(f) shows a glyph outline 941 and the resulting outline 943 after the rule defined above for adding flourishes to a glyph outline has been applied to the glyph outline 941. Note that the glyph outline 941 is formed from a single stroke 911 but still has two vertical stems 912 and 913. Again, two flourishes 914 and 915 are added to the glyph outline 941.
As a still further example, Fig. 9(g) shows a glyph outline 929 and the resulting outline 931 after the rule defined above for adding flourishes to a glyph outline has been applied to the glyph outline 929. The glyph outline 929 is formed from a bowl 916 and a short stem 917 with a relatively small exposure 918 above the bowl join 933.
As a result of the small exposure 918 above the bowl join 933 a flourish 919 cannot be fitted without outline intersection occurring and the flourish 919 therefore violates the constraint rule attribute defined in Fig In accordance with this example, since the flourish 919 violates the constraint, the flourish 919 is discarded.
Still another type of manipulation that can be applied across a character font set, is the addition of an edge to an outline to increase the complexity of the outline without actually modifying the original outline. For example, Fig. 10(a) shows a glyph outline 1018 and a resulting outline 1020 after a hole 1003 has been added to the outline 1018.
The hole 1003 has been added at a point where the strokes (not illustrated) used to form the outline 1018 intersect. Preferably, the region of a glyph outline to be filled is defined by the stroke direction of the outline, such that an outline with a clockwise stroke direction is filled. As seen in Fig. 10(a), the glyph outline 1018 has a clockwise stroke direction and the region 1001 defined by the outline 1018 is filled. The additional edge 1003 is oriented to run in the opposite direction to the stroke direction of the outline 1018 562693.doc and as a result the additional edge 1003 defines a hole within the region 1001. The step of adding the hole 1003 to the boundary outline 1018 can be defined by a rule that contains the 'condition', 'action' and 'constraint' attributes as discussed above.
The condition in the example of Fig. 10(a) is "stroke crossing" 1004, as shown in Fig. 10(b). The action in the example of Fig. 10(a) is to "create an edge describing a circle 1006 of a predetermined radius whereby the edge defining the circle 1006 runs in the direction opposite to the exterior outline of the glyph, and add the circle 1006 to the outlines describing the glyph", as shown in Fig. 10(c). Preferably, the radius of the circle 1006 is defined by a predetermined parameter. Alternatively, the radius of the circle 1006 is automatically adapted for best fit to the local geometry of the intersecting strokes.
The constraint attribute for the example of Fig. 10(a) is that self-intersection caused by the added circular hole 1006, as seen in Fig. 10(d), is not allowed. Such selfintersections typically occur when the intersecting strokes narrow towards the point of intersection, as shown in Fig. 15 The rule defined above for adding circular holes to a glyph outline can be applied to other glyph outlines. For example, Fig 10(e) shows a glyph outline 1009 and a resulting outline 1024 after a hole 1013 has been added to the outline 1009. The outline 1009 is oriented in the clockwise direction to satisfy the non-zero winding (NZW) fill rule. The glyph 1009 is composed of a circular stroke 1010 and a short cross-stroke 1011 that intersect at a point 1012. A circular hole running in the anticlockwise direction 1013 is added at the intersection point 1012.
As a still further example, Fig. 10(f) shows a glyph outline of a stylistic 1014 and the resulting outline 1026 after the rule defined above for adding a circular hole to a glyph outline has been applied to the glyph outline 1014. The glyph outline 1014 is formed by two cross strokes 1027 and 1028 that intersect at a point, and both strokes 1027 562693.doc -21 and 1028 narrow towards the intersection point 1015. The resulting circular hole 1030 placed at the crossing point 1016 intersects the glyph outline 1014 and therefore violates the constraint attribute of the rule defined above for adding a circular hole to a glyph outline. Since the circular hole 1030 placed at the crossing point 1016 intersects the glyph outline 1014, the circular hole 1030 is invalid and must be discarded, in accordance with the example of Fig 1 O(f).
Still another type of manipulation that can be applied across a character font set is the addition of a single circular stroke that contains thin sections and thick sections.
For example, Fig. 1 l(a) shows a glyph outline 1101 which includes a single circular stroke 1102 that contains thin sections 1103 and thick sections 1104. Fig. 11(a) also shows a resulting outline 1127 after the outline 1101 has been modified to introduce symmetrical spurs 1106 and 1107 at points of inflection of maximal stroke width 1105.
In accordance with the method described herein, the step of adding the symmetrical spurs 1106 and 1107 to the boundary outline 1101 can be defined by a rule that contains the 15 condition, action and constraint attributes as discussed above.
The condition in the example of Fig. 11(a) is "point of inflection of maximal stroke width", as shown by the section of a thick region 1108 in Fig. 1 That is, only points of inflection whose maximal width falls above a predetermined threshold qualify, so that spurs are only applied to strokes with thick regions.
The action in the example of Fig. 11 is to "introduce symmetrical spurs 1109 and 1110 around the point of inflection 1108", as shown in Fig. 1 l(c).
The constraint in the example of Fig. 1 is that self-intersection caused by spurs added to two or more neighbouring strokes must not be allowed. For example, as shown in Fig. 11l(d), if spurs 1129 and 1131 were added to the stroke 1111 and, spurs 1133 and 1135 were added to the stroke 1112, then intersection of the spurs 1131 and 562693.doc -22- 1133 would occur. Such self-intersection typically occurs when spurs are introduced to neighbouring strokes that are close and parallel, such as strokes 1111 and 1112.
The rule defined above for adding spurs to a glyph outline can be applied to other glyph outlines. For example, Fig l(e) shows a glyph outline 1114. The glyph outline 1114 is composed of a vertical stroke 1115 and curved bowl stroke 1116. In accordance with the example of Fig. the vertical stroke 1115 is uniform in width and hence falls below the condition threshold as defined above and shown in Fig. 11 In contrast, the curved bowl stroke 1116 has a clearly defined thick region that satisfies the condition threshold, in accordance with the example. Therefore, a symmetrical spur 1117 and 1118 can be applied to the outline 1137 at the maximal width inflection point 1119 of the stroke 1116.
As a further example, Fig. 1l 1(f) shows a glyph outline 1120 to which the rule defined above for adding spurs to a glyph outline has initially been applied by adding spurs 1121 and 1141 to the left maximal stroke width inflection point 1122. Note however that the glyph outline 1120 also has a maximal stroke width inflection point 1123 to the right side of the glyph outline 1120, resulting in additional spurs 1124 and 1125 being applied as shown by the outline 1139. Thus, a modification can be applied to ,ooo additional parts of the originally modified glyph.
Preferably, if a constraint attribute is not met for a particular glyph, then a modification is not performed on the glyph. Alternatively, if a constraint attribute of a rule is not met for a particular glyph then the particular glyph can be automatically S manipulated in order that the action defined by the rule can be performed. For example, Figs. 13(a), and show the condition, action and constraint attributes, respectively, for a rule for adding a flourish to the glyphs of a character font set. As shown in Fig. 13(a), the condition for the example is "vertical stroke ends 1301". As shown in 562693.doc 23 Fig. 13(b), the action for the example is to "introduce a flourish 1303 into the character outline 1302." In accordance with the example of Figs. 13(a), and the flourish radius 1304 is larger than the flourish 902 radius defined in Fig. hence the potential for self intersection is greater for the flourish of Fig. 13(b). As shown in Fig. 13(c) the constraint attribute is "handle self intersections." For example, if the flourish 1303 is applied to a short vertical stroke 1305 self-intersection will occur between the outline 1309 and the flourish 1303. However, the flourish 1303 radius 1304 can be automatically reduced until no self-intersection occurs. This results in the flourish 1307. Therefore, every application of the rule of Figs. 13 and can be guaranteed to produce a result if desired, rather than not performing a modification on a glyph that does not meet a constraint rule attribute. Further, a series of actions can be specified to handle situations where a constraint rule attribute fails. For example, a flourish radius can be reduced whilst a vertical stroke is extended until self intersection does not occur.
The aforementioned method comprises a particular control flow. There are many other variants of the method which use different control flows without departing the spirit or scope of the invention. Furthermore one or more of the steps of the method may be performed in parallel rather sequentially.
The method of modifying a character font set is preferably practiced using a conventional general-purpose computer system 1400, such as that shown in Fig. 14 wherein the processes of Figs. 1 to 13 can be implemented as software, such as an application program executing within the computer system 1400. In particular, the steps of method of modifying a character font set are effected by instructions in the software that are carried out by the computer. The software may be divided into two separate parts; one part for carrying out the preferred method; and another part to manage the user interface between the latter and the user. The software may be stored in a computer 562693.doc -24readable medium, including the storage devices described below, for example. The software is loaded into the computer from the computer readable medium, and then executed by the computer. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer preferably effects an advantageous apparatus for modifying a character font set in accordance with the method described herein.
The computer system 1400 comprises a computer module 1401, input devices such as a keyboard 1402 and mouse 1403, output devices including a printer 1415 and a display device 1414. A Modulator-Demodulator (Modem) transceiver device 1416 is used by the computer module 1401 for communicating to and from a communications network 1420, for example connectable via a telephone line 1421 or other functional medium. The modem 1416 can be used to obtain access to the Internet, and other network systems, such as a Local Area Network (LAN) or a Wide Area Network (WAN).
The computer module 1401 typically includes at least one processor unit 1405, a 15 memory unit 1406, for example formed from semiconductor random access memory (RAM) and read only memory (ROM), input/output (1O) interfaces including a video interface 1407, and an 1/0 interface 1413 for the keyboard 1402 and mouse 1403 and oo oi optionally a joystick (not illustrated), and an interface 1408 for the modem 1416. A storage device 1409 is provided and typically includes a hard disk drive 1410 and a floppy disk drive 1411. A magnetic tape drive (not illustrated) may also be used. A CD- ROM drive 1412 is typically provided as a non-volatile source of data. The
I.
t components 1405 to 1413 of the computer module 1401, typically communicate via an interconnected bus 1404 and in a manner which results in a conventional mode of operation of the computer system 1400 known to those in the relevant art. Examples of 562693.doc computers on which the method described herein can be practised include IBM-PC's and compatibles, Sun Sparcstations or alike computer systems evolved therefrom.
Typically, the application program of the method is resident on the hard disk drive 1410 and read and controlled in its execution by the processor 1405. Intermediate storage of the program and any data fetched from the network 1420 may be accomplished using the semiconductor memory 1406, possibly in concert with the hard disk drive 1410.
In some instances, the application program may be supplied to the user encoded on a CD- ROM or floppy disk and read via the corresponding drive 1412 or 1411, or alternatively may be read by the user from the network 1420 via the modem device 1416. Still further, the software can also be loaded into the computer system 1400 from other computer readable medium including magnetic tape, a ROM or integrated circuit, a magneto-optical disk, a radio or infra-red transmission channel between the computer module 1401 and another device, a computer readable card such as a PCMCIA card, and the Internet and Intranets including email transmissions and information recorded on websites and the 15 like. The foregoing is merely exemplary of relevant computer readable mediums. Other o* computer readable media may be practiced without departing from the scope and spirit of the invention.
The method of modifying a character font set may alternatively be implemented in dedicated hardware such as one or more integrated circuits performing the functions or 20 sub functions of Fig 12. Such dedicated hardware may include graphic processors, digital signal processors, or one or more microprocessors and associated memories.
9 The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the scope and spirit of the invention, the embodiments being illustrative and not restrictive. For example, several rule-sets and their application have been described above in detail, 562693.doc -26however any rule-set can be applied to modify an object outline. Further rule set examples can include: 1. Condition: high curvature at outline edge; Action: sharpen to a comer; and Constraint: none.
2. Condition: stroke of uniform width; Action: introduce bulge by fattening stroke; and Constraint: does not intersect existing outline.
3. Condition: outline curve normal points upwards; Action: simulate hair growth; and Constraint: does not intersect existing outline.
In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including" and not "consisting only of'. Variations of the word comprising, such as "comprise" and "comprises" have 15 corresponding meanings.
o* o e, 562693.doc

Claims (9)

1. A method of modifying a character font set, said method comprising the steps of: providing a series of glyphs representing font characters; defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action.
2. The method according to claim 1, wherein said plurality of rule attributes are dependent on an initial modification.
3. The method according to claim 1, wherein said rule attributes are applied to each 15 glyph of said character font set.
4. The method according to claim 1, wherein said plurality of rule attributes comprise a constraint attribute.
5. The method according to claim 4, wherein said action is limited by said constraint attribute.
6. The method according to claim 4, wherein said action is modified according to said constraint attribute.
562693.doc -28-
7. The method according to claim 1, wherein said rule attributes are user defined.
8. The method according to claim 1, wherein said action comprises adding a texture to a glyph.
9. The method according to claim 1, wherein said action comprises manipulating a boundary outline defining a glyph. The method according to claim 1, wherein said action comprises adding interior edge outlines to a glyph. 11. The method according to claim 1, wherein said condition is based on local geometry of an outline defining a glyph. r r e r r r r r r 12. steps. The method according to claim 1, wherein said action comprises a series of 13. A method of modifying a character font set, said method comprising the steps of: providing a series of glyphs representing font characters; modifying at least one of said glyphs; defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any 562693.doc -29- of said plurality of said glyphs satisfying said condition are modified according to said action. 14. The method according to claim 13, wherein said plurality of rule attributes are dependent on an initial modification. The method according to claim 13, wherein said rule attributes are applied to each glyph of said character font set. 16. The method according to claim 13, wherein said plurality of rule attributes comprise a constraint attribute. 17. The method according to claim 16, wherein said action is limited by said 9 a 9 constraint attribute. 18. The method according to claim 16, wherein said action is modified according to said constraint attribute. 19. The method according to claim 13, wherein said rule attributes are user defined. The method according to claim 13, wherein said action comprises adding a texture to a glyph. 21. The method according to claim 13, wherein said action comprises manipulating a boundary outline defining a glyph. 562693.doc 22. The method according to claim 13, wherein said action comprises adding interior edge outlines to a glyph. 23. The method according to claim 13, wherein said condition is based on local geometry of an outline defining a glyph. 24. The method according to claim 13, wherein said action comprises a series of steps. A method of modifying graphical objects, said method comprising the steps of: providing a series of graphical objects for modification; defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and 15 applying said rule attributes to a plurality of said objects, wherein any :#oeoo of said plurality of objects satisfying said condition are modified according to said action. 26. An apparatus for modifying a character font set, said apparatus comprising: providing means for providing a series of glyphs representing font characters; defining means for defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and applying means for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action. 562693.doc -31 27. The apparatus according to claim 26, wherein said plurality of rule attributes are dependent on an initial modification. 28. The apparatus according to claim 26, wherein said rule attributes are applied to each glyph of said character font set. 29. The apparatus according to claim 26, wherein said plurality of rule attributes comprise a constraint attribute. 30. The apparatus according to claim 29, wherein said action is limited by said constraint attribute. 31. The apparatus according to claim 29, wherein said action is modified according to said constraint attribute. e• S32. The apparatus according to claim 26, wherein said rule attributes are user defined. .:o.oi 33. The apparatus according to claim 26, wherein said action comprises adding a texture to a glyph. 34. The apparatus according to claim 26, wherein said action comprises manipulating a boundary outline defining a glyph. 562693.doc -32- The apparatus according to claim 26, wherein said action comprises adding interior edge outlines to a glyph. 36. The apparatus according to claim 26, wherein said condition is based on local geometry of an outline defining a glyph. 37. The apparatus according to claim 26, wherein said action comprises a series of steps. 38. An apparatus for modifying a character font set, said apparatus comprising: providing means for providing a series of glyphs representing font characters; modifying means for modifying at least one of said glyphs; defining means for defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for 15 modifying said glyphs; and applying means for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action. 20 39. The apparatus according to claim 38, wherein said plurality of rule attributes are dependent on an initial modification. °oelo The apparatus according to claim 38, wherein said rule attributes are applied to each glyph of said character font set. 562693.doc 33 41. The apparatus according to claim 38, wherein said plurality of rule attributes comprise a constraint attribute. 42. The apparatus according to claim 41, wherein said action is limited by said constraint attribute. 43. The apparatus according to claim 41, wherein said action is modified according to said constraint attribute. 44. defined. The apparatus according to claim 38, wherein said rule attributes are user S *SSS. The apparatus according to claim 38, wherein said action comprises adding a texture to a glyph. 46. The apparatus according to claim 38, wherein said action comprises manipulating a boundary outline defining a glyph. 47. The apparatus according to claim 38, wherein said action comprises adding interior edge outlines to a glyph. 48. The apparatus according to claim 38, wherein said condition is based on local geometry of an outline defining a glyph. 562693.doc 34 49. The apparatus according to claim 38, wherein said action comprises a series of steps. An apparatus for modifying graphical objects, said apparatus comprising: providing means for providing a series of graphical objects for modification; defining means for defining a plurality of rule attributes representing at least a condition and an action for modifying said series of graphical objects; and applying means for applying said rule attributes to a plurality of said objects, wherein any of said plurality of objects satisfying said condition are modified according to said action. 51. An apparatus for modifying a character font set, said apparatus comprising: a memory for storing a program; and a processor for executing said program, wherein said program comprises code 15 for performing the following steps: providing a series of glyphs representing font characters; defining a plurality of rule attributes representing at least a condition a and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action. 52. An apparatus for modifying a character font set, said apparatus comprising: a memory for storing a program; and 562693.doc a processor for executing said program, wherein said program comprises code for performing the following steps: providing a series of glyphs representing font characters; modifying at least one of said glyphs; defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; and applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action. 53. An apparatus for modifying graphical objects, said apparatus comprising: a memory for storing a program; and a processor for executing said program, wherein said program comprises code 15 for performing the following steps: providing a series of graphical objects for modification; defining a plurality of rule attributes representing at least a condition *5.*4I S00 and an action for modifying said series of graphical objects; and applying said rule attributes to a plurality of said objects, wherein S 20 any of said plurality of objects satisfying said condition are modified according to said action. S 54. A program for modifying a character font set, said program comprising: code for providing a series of glyphs representing font characters; 562693.doc -36- code for defining a plurality of rule attributes representing at least a condition and an action for modifying said glyphs; and code for applying said rule attributes to a plurality of said glyphs, wherein any of said plurality of said glyphs satisfying said condition are modified according to said action. A program for modifying a character font set, said program comprising: code for providing a series of glyphs representing font characters; code for modifying at least one of said glyphs; code for defining a plurality of rule attributes based on said modification, said rule attributes representing at least a condition and an action for modifying said glyphs; and code for applying said rule attributes to a plurality of said glyphs, wherein any S"of said plurality of said glyphs satisfying said condition are modified according to said 15 action. 0 56. A program for modifying graphical objects, said program comprising: 000000 providing means for providing a series of graphical objects for modification; S 20 defining means for defining a plurality of rule attributes representing at least a 0 20 condition and an action for modifying said series of graphical objects; and applying means for applying said rule attributes to a plurality of said objects, o "I wherein any of said plurality of objects satisfying said condition are modified according to said action. 562693.doc -37- 57. The program as claimed in any one of claims 54 to 56, wherein said program is stored in a memory of an apparatus and said program is executed by a processor of said apparatus. 58. A method of modifying a character font set, said method being substantially as hereinbefore described with reference to any one of the embodiments as illustrated in the accompanying drawings. 59. An apparatus for modifying a character font set, said apparatus being substantially as hereinbefore described with reference to any one of the embodiments as illustrated in the accompanying drawings. A computer program for modifying a character font set, said program being substantially as hereinbefore described with reference to any one of the embodiments as 15 illustrated in the accompanying drawings. *°oo 0 fe": DATED this the Tenth Day of August, 2001 Canon Kabushiki Kaisha Patent Attorneys for the Applicant SPRUSON FERGUSON 0.00 0* 562693.doc
AU57995/01A 2000-08-25 2001-08-13 Method and apparatus for the automatic application of shape enhancement Ceased AU767739B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU57995/01A AU767739B2 (en) 2000-08-25 2001-08-13 Method and apparatus for the automatic application of shape enhancement

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AUPQ9673 2000-08-25
AUPQ9673A AUPQ967300A0 (en) 2000-08-25 2000-08-25 Method and apparatus for the automatic application of shape enhancement
AU57995/01A AU767739B2 (en) 2000-08-25 2001-08-13 Method and apparatus for the automatic application of shape enhancement

Publications (2)

Publication Number Publication Date
AU5799501A AU5799501A (en) 2002-02-28
AU767739B2 true AU767739B2 (en) 2003-11-20

Family

ID=25631877

Family Applications (1)

Application Number Title Priority Date Filing Date
AU57995/01A Ceased AU767739B2 (en) 2000-08-25 2001-08-13 Method and apparatus for the automatic application of shape enhancement

Country Status (1)

Country Link
AU (1) AU767739B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721812A (en) * 1995-03-28 1998-02-24 Canon Kabushiki Kaisha Character data processing method and apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721812A (en) * 1995-03-28 1998-02-24 Canon Kabushiki Kaisha Character data processing method and apparatus

Also Published As

Publication number Publication date
AU5799501A (en) 2002-02-28

Similar Documents

Publication Publication Date Title
US7129948B2 (en) Methods and systems for hinting fonts
US6628295B2 (en) Modifying a stylistic property of a vector-based path
US6952210B1 (en) Method of generating multiple master typefaces containing kanji characters
CN101702309B (en) Method for rendering a region of a composite glyph
US5929866A (en) Adjusting contrast in anti-aliasing
US5831632A (en) Automatic graphical pattern placement
US20150325022A1 (en) Technique for processing a character string for graphical representation on a man/machine interface
US7460129B2 (en) Manipulating text and graphic appearance
US6459431B1 (en) Method and apparatus for orientating a set of finite n-dimensional space curves
AU767739B2 (en) Method and apparatus for the automatic application of shape enhancement
JP2001175881A (en) Morphing processor, morphing method, storage medium, program transmission device, and moving picture generating device
US7028260B1 (en) Text layout in path corner regions
US8355025B2 (en) System and method for displaying text
JP4330954B2 (en) Grid tracking and character set spacing for Japanese text adjustment
AU774975B2 (en) Method and apparatus for determining the area enclosed by a planar curve
AU770371B2 (en) Method and apparatus for fast skeleton and stroke extraction
AU2005200528B2 (en) Compositing with clip-to-self functionality without using a shape channel
AU768344B2 (en) Animating character outlines
AU745125B2 (en) Flexible typesetting
AU767523B2 (en) Method and apparatus for constrained osculatory packing
AU742564B2 (en) A method and apparatus for parametric variation of text
AU9731401A (en) Method and apparatus for adaptive polygonisation
JP2960889B2 (en) Method and apparatus for creating shadow font with contour
AU2005200007A1 (en) Data format for rendering text
AU2007202834A1 (en) Applying vector effects

Legal Events

Date Code Title Description
DA3 Amendments made section 104

Free format text: THE NATURE OF THE AMENDMENT IS: SUBSTITUTE PATENT REQUEST REGARDING ASSOCIATED DETAILS

FGA Letters patent sealed or granted (standard patent)