Commit Graph

706 Commits

Author SHA1 Message Date
Huw Davies 496898db51 usp10: Add support for format 2 pair adjustments. 2012-12-20 18:04:41 +01:00
Huw Davies 08fcdd5f6f usp10: Move the application of pair values to a helper function. 2012-12-20 18:04:37 +01:00
Huw Davies 79cbcf9612 usp10: Glyph class tables are just generic class tables. 2012-12-20 18:04:33 +01:00
Huw Davies b83216c124 usp10: PairValueRecord is a variable length struct, so don't use a C array to index into them. 2012-12-19 14:38:59 +01:00
Huw Davies c28897f3e9 usp10: Add the ability to just return the size of the value record. 2012-12-19 14:38:59 +01:00
Qian Hong dd2be15118 usp10/tests: Added tests for wgBlank, wgDefault, wgInvalid and wgKashida. 2012-11-21 15:21:37 +01:00
Qian Hong 33cefcf8ea usp10: Fixed wgBlank, wgDefault, wgInvalid and wgKashida. 2012-11-21 15:21:30 +01:00
Michael Stefaniuc b4712d2e16 usp10: Use FIELD_OFFSET to calculate the size of a struct with variable length array. 2012-10-31 18:07:19 +01:00
André Hentschel 4ee73e69b5 usp10: Avoid memory leak in ScriptTextOut (coverity). 2012-10-31 16:12:27 +01:00
André Hentschel c41bdf98bb usp10: Add missing break in switch (coverity). 2012-10-24 11:33:27 +02:00
Aric Stewart af318c5fd0 usp10: Implement MarkToMark Attachment Positioning Subtable. 2012-08-16 17:13:09 +02:00
Aric Stewart cd8c1b28ad usp10: Correct rounding of negative offsets in GPOS. 2012-08-15 13:58:46 +02:00
Aric Stewart e2250ce6cb usp10: Correct implementation of Pair Positioning Adjustment: Format 1. 2012-08-15 13:55:25 +02:00
Aric Stewart 7819ce61b5 usp10: Use cached values in GPOS functions. 2012-08-13 12:07:39 +02:00
Aric Stewart ef5daa9aa5 usp10: Cache OUTLINETEXTMETRICW in addition to TEXTMETRICW. 2012-08-13 12:07:34 +02:00
Aric Stewart 6ae4cfe973 usp10: Implement GPOS Coverage-based Chaining Context Glyph Positioning. 2012-07-17 14:23:53 +02:00
Aric Stewart ea9f2266de ups10: Implement Single Adjustment Positioning: Format 2. 2012-07-17 14:23:44 +02:00
Aric Stewart 5a45e34741 usp10: Implement GPOS Pair Adjustment Positioning Subtable. 2012-07-16 17:03:14 +02:00
Aric Stewart e3a98b437b usp10: Implement GPOS Single Adjustment Positioning. 2012-07-16 17:03:05 +02:00
Aric Stewart 1dc148d7cc usp10: Handle GPOS ValueRecords. 2012-07-16 17:02:56 +02:00
Aric Stewart 85c9984389 usp10: Implement GPOS MarkToBase. 2012-07-16 17:02:45 +02:00
Aric Stewart b65d0b96ce usp10: In ScriptTextOut make use of piAdvance and pGoffset to position glyphs. 2012-07-16 17:02:36 +02:00
Aric Stewart f70864b827 usp10: Add GPOS features to scripts as defined by VOLT. 2012-07-16 17:02:25 +02:00
Aric Stewart 69351a9cea usp10: Implement GPOS Anchor formats. 2012-07-16 17:02:14 +02:00
Aric Stewart 940961fcf7 usp10: Implement SHAPE_ApplyOpenTypePositions using GPOS table. 2012-07-16 17:02:02 +02:00
Aric Stewart 84b8dbfa8a usp10: Change OpenType_GSUB_GetFontFeatureTags to OpenType_GetFontFeatureTags and load features from GPOS table. 2012-07-16 17:01:40 +02:00
Aric Stewart 2123f049d3 usp10: Change OpenType_GSUB_GetFontLangaugeTags to OpenType_GetFontLanguageTags and load languages from GPOS table as well. 2012-07-16 17:01:31 +02:00
Aric Stewart e031293521 usp10: Change OpenType_GSUB_GetFontScriptTags to OpenType_GetFontScriptTags and load scripts from GPOS table as well. 2012-07-16 17:01:15 +02:00
Aric Stewart 9d408bbbf0 usp10: Load the GPOS table. 2012-07-16 17:00:38 +02:00
Aric Stewart 6189568072 ups10: Rename common opentype tables used in both GSUB and GPOS to OT_. 2012-07-16 16:59:41 +02:00
Michael Stefaniuc f596c747ef usp10: Remove unreachable break after return (Smatch). 2012-06-26 12:41:05 +02:00
Aric Stewart 91f161c8b1 usp10: Add ShapeCharGlyphProp_Hebrew. 2012-06-20 10:27:25 +02:00
Aric Stewart 9ea4543d12 usp10: In ShapeCharGlyphProp_BaseIndic set justification to SCRIPT_JUSTIFY_NONE for glyphs with no characters. 2012-06-12 17:27:19 +02:00
Aric Stewart 3447b716a6 usp10: Do not use custom indic ShapeCharGlyphProp when shaping Indic numeric scripts. 2012-06-12 17:27:12 +02:00
Aric Stewart f241014f46 usp10: Corrections for ShapeCharGlyphProp_Thai. 2012-06-11 21:03:45 +02:00
Aric Stewart 6c43ef46d8 usp10: Properly handle fonts with scripts without a default language. 2012-06-11 21:03:45 +02:00
Aric Stewart 7fbf72c400 usp10: Correct glyph caching beyond the BMP. 2012-06-05 10:24:07 +02:00
Aric Stewart 4f7ea5737a usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Lao. 2012-06-04 16:35:37 +02:00
Aric Stewart 28854b452e usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Thai. 2012-06-04 16:35:34 +02:00
Aric Stewart 14f42cdcbc usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Thaana. 2012-06-04 16:35:32 +02:00
Aric Stewart 3fd459b232 usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Syriac. 2012-06-04 16:35:29 +02:00
Aric Stewart 8b9a7a1ed8 usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Hebrew. 2012-06-04 16:35:26 +02:00
Aric Stewart a2c1bd1ff5 usp10: Insert dotted circle (U+25CC) for invalid combining sequences in Arabic. 2012-06-01 17:46:42 +02:00
Aric Stewart 1f4554d141 usp10: Check bounds before checking value in array. 2012-05-25 15:56:38 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Francois Gouget 7796895b74 usp10: Fix the spelling of the Consonant_is_post_base_form() function. 2012-05-15 16:26:42 +02:00
Aric Stewart 9f6217e831 usp10: Add fallback font for Myanmar. 2012-03-27 11:38:19 +02:00
Aric Stewart 5bb7590fad usp10: Properly handle invalid arguments to ScriptBreak. 2012-03-26 12:41:28 +02:00
Aric Stewart 9af6b11808 usp10: Better handle 0 cases when caching scripts, languages and features. 2012-02-28 11:56:56 +01:00
Aric Stewart 17cd9d3325 usp10: We do not yet shape hangul properly so allow for SSA_LINK flags to take effect. 2012-02-02 09:52:45 +01:00
Aric Stewart 3ae30a676a usp10: Implement SSA_LINK flag. 2012-02-01 16:42:43 +01:00
Aric Stewart f50f05da23 usp10: Limit runs in ScriptStringAnalyse to 255. 2012-01-30 20:44:46 +01:00
Aric Stewart 4df4929198 usp10: Use a bsearch function to find a glyph in the LogClust array. 2012-01-30 20:44:45 +01:00
Aric Stewart 2ab625bf2f usp10: pwLogClust is ordered so its max will be on one end. 2012-01-30 20:44:45 +01:00
Thomas Faber 8ab4f85bbb usp10: Fix build with MSVC. 2012-01-27 14:57:55 +01:00
Aric Stewart 4019987391 usp10: Move GSUB functions to opentype.c. 2012-01-04 19:00:13 +01:00
Aric Stewart bf1ef214e6 usp10: Move GDEF functions to opentype.c. 2012-01-04 18:59:57 +01:00
Aric Stewart 6311ccfe97 usp10: Move CMAP functions to opentype.c. 2012-01-04 18:59:52 +01:00
Aric Stewart ece423b858 usp10: Add more Microsoft Sans Serif fallbacks. 2012-01-04 18:58:27 +01:00
André Hentschel d845510170 usp10: Check for pointer before using it (Coverity). 2012-01-04 18:54:27 +01:00
Aric Stewart f7a21f8cba usp10: Cache feature lookups. 2012-01-03 18:06:53 +01:00
Aric Stewart c632f71e08 usp10: Have load_GSUB_feature return LoadedFeature*. 2012-01-03 18:06:47 +01:00
Aric Stewart f04b6b2fc8 usp10: Replace GSUB_get_feature with GSUB_GetFontFeatureTags. 2012-01-03 18:06:38 +01:00
Aric Stewart 3d98085d65 usp10: Implement ScriptGetFontFeatureTags. 2012-01-03 18:06:31 +01:00
Aric Stewart dbe02b96c5 usp10: Convert tag in LoadedFeature to OPENTYPE_TAG. 2012-01-03 18:06:03 +01:00
Aric Stewart f07321a82b usp10: Replace GSUB_get_lang_table with GSUB_GetFontLanguageTags. 2012-01-03 18:05:52 +01:00
Aric Stewart 0661d2d202 usp10: Implement ScriptGetFontLanguageTags. 2012-01-03 18:05:47 +01:00
Marcus Meissner 77a3d90abf usp10: Mark two functions as hidden. 2012-01-03 12:37:32 +01:00
Aric Stewart ee2981c6ef usp10: Convert newOtTag to an OPENTYPE_TAG. 2011-12-30 15:41:09 +01:00
Aric Stewart ef98d143d7 usp10: Remove redundant information by making scriptData accessible and removing otTag. 2011-12-30 15:41:09 +01:00
Aric Stewart 419d3d7100 usp10: Update get_opentype_script to return OPENTYPE_TAG. 2011-12-30 15:41:08 +01:00
Aric Stewart 71373552ff usp10: Replace GSUB_get_script_table with GSUB_GetFontScriptTags. 2011-12-30 15:41:08 +01:00
Aric Stewart 1090cd2f11 usp10: Cache FontScriptTags information. 2011-12-30 15:41:08 +01:00
Aric Stewart 1fc015636e usp10: Updates to ScriptGetFontScriptTags. 2011-12-30 15:41:07 +01:00
Aric Stewart 91e0f56c05 usp10: Add currency scripts to match windows. 2011-12-23 13:44:45 +01:00
Aric Stewart 525d9d1519 usp10: Implement ScriptGetFontScriptTags. 2011-12-22 17:49:54 +01:00
Aric Stewart dbe168fe99 usp10: Improve selection drawing if selection starts in the middle of a cluster. 2011-12-20 20:06:33 +01:00
Aric Stewart 00588673c6 usp10: Add Mathematical Alphanumeric Symbols script. 2011-12-19 20:15:45 +01:00
Aric Stewart 88c6b7ef00 usp10: Add Osmanya script. 2011-12-19 20:15:45 +01:00
Aric Stewart 095276073c usp10: Add Deseret script. 2011-12-19 20:15:44 +01:00
Aric Stewart 4fbb6fd66d usp10: Handle surrogate pairs when shaping. 2011-12-19 20:15:44 +01:00
Aric Stewart 0404d68999 usp10: Decode surrogate pairs in get_char_script and handle ranges beyond the BMP. 2011-12-19 20:15:43 +01:00
Aric Stewart 10ec7dacde usp10: Code for the cmap format 12 table for unicode code points beyond the BMP. 2011-12-19 20:15:43 +01:00
Aric Stewart 6589516db1 usp10: N'Ko uses the Ebrima font as a fallback. 2011-12-19 11:06:01 +01:00
Aric Stewart 6fe14a0153 usp10: Do not try to fallback if no fallback font is specified. 2011-12-15 17:52:08 +01:00
Aric Stewart 447384e7b8 usp10: Add Spacing Modifier Letters to the Latin script block. 2011-12-14 19:35:19 +01:00
Aric Stewart 4d188aa20e usp10: Add Private Use Area and Surrogates Area from Unicode Chapter 16. 2011-12-14 19:35:19 +01:00
Aric Stewart ad71c95e59 usp10: Add Braille script. 2011-12-14 19:35:18 +01:00
Aric Stewart 1c079ad196 usp10: Add Runic Script. 2011-12-14 19:35:17 +01:00
Aric Stewart 8b415ee99f usp10: Add Ogham script. 2011-12-14 19:35:16 +01:00
Aric Stewart 1c40824572 usp10: Add Canadian Aboriginal Syllabics script. 2011-12-14 19:35:15 +01:00
Aric Stewart fa5d9da009 usp10: Add Cherokee script. 2011-12-14 19:35:15 +01:00
Aric Stewart c697d95967 usp10: Add Vai script. 2011-12-14 19:35:14 +01:00
Aric Stewart e7112792ef usp10: Add N'Ko script. 2011-12-14 19:35:14 +01:00
Aric Stewart e5ad5cd11a usp10: Add Tifinagh script. 2011-12-14 19:35:13 +01:00
Aric Stewart be9369e7fe usp10: Add Mongolian script. 2011-12-14 19:35:12 +01:00
Aric Stewart eb084562be usp10: Allow for multiple broken item counts. 2011-12-14 19:35:11 +01:00
Aric Stewart a65c818ca0 usp10: Add Ethiopic script. 2011-12-14 19:35:11 +01:00
Aric Stewart 4d34ea52ad usp10: Add Yi script. 2011-12-13 18:59:02 +01:00
Aric Stewart 345102ed13 usp10: Add Hangul script. 2011-12-13 18:59:01 +01:00
Aric Stewart 30dc47557a usp10: Add Kana script. 2011-12-13 18:59:00 +01:00
Aric Stewart 513a8c5020 usp10: Add Bopomofo script. 2011-12-13 18:59:00 +01:00
Aric Stewart df2e40bc34 usp10: Add CKJ Han and Ideographic scripts. 2011-12-13 18:58:59 +01:00
Aric Stewart f68c03c4b2 usp10: Add Khmer script. 2011-12-12 15:50:44 +01:00
Aric Stewart 05cd57b4f0 usp10: Add New Tai Lue script. 2011-12-12 15:50:44 +01:00
Aric Stewart 51b5e6090a usp10: Add script Tai Le. 2011-12-12 15:50:43 +01:00
Aric Stewart 1dc4c151d7 usp10/tests: Check broken value for script tag as well. 2011-12-12 15:50:42 +01:00
Aric Stewart 0d15c70a60 usp10: Resync script_props table. 2011-12-12 15:50:42 +01:00
Aric Stewart 486a20c17c usp10: Add Myanmar script. 2011-12-09 21:15:39 +01:00
Pierre Schweitzer 06f65740b2 usp10: Fix memory leak. 2011-12-09 21:15:25 +01:00
Aric Stewart 7b95ac8238 usp10: Some Indic scripts, Sinhala, want GDEF to set glyph properties. 2011-12-08 18:04:30 +01:00
Aric Stewart 746679e186 usp10: Handle dangling joiners when processing Indic GlyphProps. 2011-12-07 17:57:42 +01:00
Pierre Schweitzer 783683be2d usp10: Fix memory leaks. 2011-12-07 17:49:58 +01:00
Aric Stewart c481cdd25e usp10: Unicode does not compose the Gurmukhi letter SHA. 2011-12-07 17:49:57 +01:00
Aric Stewart acf1343f34 usp10: Handle Halant, ZWJ and ZWNJ in ShapeCharGlyphProp_BaseIndic. 2011-12-06 17:04:21 +01:00
Aric Stewart 93a8499b95 usp10: Sinhala, while behaving like a base Indic, does not set GlyphProps based on indic syllable. 2011-12-06 17:04:15 +01:00
Aric Stewart a9058605d6 usp10: Use UpdateClusters in DecomposeVowels. 2011-12-06 17:04:09 +01:00
Aric Stewart 4dffb0aa43 usp10: The top logclust value may be different than the number of chars. 2011-12-06 17:04:04 +01:00
Aric Stewart 894f2dc9ba usp10: Use GDEF in baseIndic GlyphProp processing. 2011-12-06 17:03:59 +01:00
Aric Stewart 9cddd18cb9 usp10: Initialize the GSUB table before doing any contextual shaping. 2011-12-06 17:03:51 +01:00
Aric Stewart 6673694847 usp10: Correct issues with LTR logclust indexing after Multiple substitution. 2011-12-05 17:39:10 +01:00
Aric Stewart 225de02a29 usp10: Handle Thai SARA AM differently than GDEF. 2011-12-02 17:25:52 +01:00
Aric Stewart 183fdedb90 usp10: More properly handle the glyph properties on glyphs added by multiple substitutions. 2011-12-02 15:59:59 +01:00
Aric Stewart ceca716999 usp10: Phags-Pa wants the calt feature enabled. 2011-12-02 15:59:54 +01:00
Aric Stewart ff9ae10ba5 usp10: Handle the Gurmukhi addak. 2011-12-01 18:16:20 +01:00
Aric Stewart 302409ebe4 usp10: Always apply features in logical order. 2011-12-01 18:16:11 +01:00
Aric Stewart c4c9f8b041 usp10: Apply lookups in order over the whole range of glyphs instead of individually to each glyph. 2011-12-01 18:16:03 +01:00
Aric Stewart 711dd9b13a usp10: Standard features are only ccmp and locl. 2011-12-01 18:15:06 +01:00
Aric Stewart 5ed8160ec7 usp10: Turn off dlig feature for hebrew. It is not used by default. 2011-12-01 18:14:59 +01:00
Francois Gouget 51a256e65f Assorted spelling fixes and wording tweaks. 2011-11-28 16:40:50 +01:00
Aric Stewart 25d43d7a09 usp10: Cache the script with the feature so that in caches with multiple scripts we do not fetch the wrong feature from the cache. 2011-11-21 11:02:53 +01:00
Aric Stewart 9097226a3c usp10: Itemize numbers outside of the basic ascii set in a seperate script. 2011-11-21 11:02:39 +01:00
Aric Stewart 2fe60ff696 usp10: Windows breaks punctuation into 2 different script types. 2011-11-21 11:02:34 +01:00
Aric Stewart 714408684d usp10: Handle Combining Diacritical Marks. 2011-11-21 11:02:28 +01:00
Aric Stewart 2abb8193b9 usp10: Add a facility to mark itemization test elements as broken. 2011-11-21 11:02:22 +01:00
Aric Stewart fce22eadc1 usp10: Some unicode code points will force us into bidi mode. 2011-11-21 11:02:10 +01:00
Aric Stewart bba75dd0a7 usp10: Improve handling for ZWJ and ZWNJ in itemization. 2011-11-21 11:01:58 +01:00
Aric Stewart ed15053837 usp10: In Arabic only fallback to presentation form B for isolated glyphs. 2011-11-21 11:01:50 +01:00
Aric Stewart 105704534d usp10: When converting common indic items use the main indic script not the Numeric or currency script, even if that was the most recent. 2011-11-17 18:10:19 +01:00
Aric Stewart 41db79a855 usp10: If leading with a strong character use its bidi level for our intial LayoutRTL. 2011-11-17 18:10:11 +01:00
Aric Stewart 2c8fb3aba1 usp10: Keep the levels array in more cases. 2011-11-17 18:09:56 +01:00
Aric Stewart 92f706cd74 usp10: Windows 7 defines a Tibetan numeric script but never uses it. 2011-11-17 18:09:52 +01:00
Aric Stewart 7868be6e70 usp10: Properly set LayoutRTL. 2011-11-15 19:37:28 +01:00
Aric Stewart e5d33f08c7 usp10: Devanagari danda and double danda are used for all Indic scripts. 2011-11-15 19:37:15 +01:00
Aric Stewart 6c3398d957 usp10: Pay attention to script changes for bidi run itemization. 2011-11-15 16:09:10 +01:00
Aric Stewart 145102c7fd usp10: Merge neutral scripts. 2011-11-15 16:09:10 +01:00
Aric Stewart 3767cebc88 usp10: Move scripts to an array initialized once to minimize get_char_script calls. 2011-11-15 16:09:09 +01:00
Aric Stewart 9c9513f94a usp10: Break with a better understanding on the handling of bidi strengths. 2011-11-15 16:09:09 +01:00
Aric Stewart e6ee421e88 usp10: Add some additional Latin script ranges. 2011-11-14 15:25:24 +01:00
Aric Stewart 65710af292 usp10: Better understand and handle numbers level in RTL runs. 2011-11-09 11:34:49 +01:00
Aric Stewart 2781ac1e6d usp10: Better handle the absorption of whitespace in bidi runs. 2011-11-09 11:34:45 +01:00
Aric Stewart c5db60200f usp10/tests: Add Kannada shaping test. 2011-11-08 18:19:18 +01:00
Aric Stewart cd3d305b60 usp10: Add a few chars that Windows itemizes as punctuation. 2011-11-08 18:19:18 +01:00
Aric Stewart 38aa7696c5 usp10: Avoid an end of buffer overrun when seeking non space characters at an end of a BiDi string. 2011-11-08 18:19:17 +01:00
Aric Stewart 89a53d6f81 usp10: Sinhala does glyph props like Indic languages. 2011-10-28 12:46:19 +02:00
Aric Stewart ec23fe6543 usp10: All glyphs in a single indic syllable are part of the same cluster. 2011-10-28 12:46:14 +02:00
Aric Stewart 729de083f3 usp10: Correct itemizing multiple spaces at the beginning of a run. 2011-10-24 11:14:06 +02:00
Aric Stewart f0c85ff83d usp10: Correct some reading buffer overruns when parsing indic syllables.
Found with help from Dan Kegel and Valgrind.
2011-10-20 11:02:47 +02:00
Aric Stewart 8836da818e usp10/tests: Initialize our SCRIPT_VISATTR array.
Found by Valgrind and Dan Kegel.
2011-10-20 11:02:37 +02:00
Aric Stewart 250a132545 usp10: Correct read overflow in ScriptBreak found by Valgrind. 2011-10-19 19:45:38 +02:00
Aric Stewart 0aa30c4673 usp10: Handle multi-glyph clusters in ScriptStringOut. 2011-10-19 12:25:35 +02:00
Aric Stewart 61e82e2c8c usp10: Properly adjust LogClust when decomposing indic vowels. 2011-10-18 15:11:58 +02:00
Aric Stewart db03d6452d usp10: Properly adjust LogClust when composing indic consonants. 2011-10-18 15:11:52 +02:00
Aric Stewart 42db0c0593 usp10: Handle advance for multi-glyph clusters correctly. 2011-10-18 15:09:53 +02:00
Aric Stewart 6fb71f5354 usp10: Break out get_cluster_size and use it to correct ScriptStringGetLogicalWidths for clusters. 2011-10-18 15:09:44 +02:00
Aric Stewart 8f4fab2483 usp10: Handle the fNeedsCaretInfo flag in XtoCP and CPtoX. 2011-10-17 17:45:08 +02:00
Marcus Meissner 76702f3391 usp10: Fixed some oom handling (Coverity). 2011-10-17 17:45:05 +02:00
Aric Stewart 29b52fa575 usp10: Add fallback font for Armenian and Georgian. 2011-10-14 20:26:42 +02:00
Aric Stewart 85d33f4139 usp10: Correct buffer reading overrun.
Found by Dan Kegel using valgrind.
2011-10-14 20:26:42 +02:00
Aric Stewart c1607a04b9 usp10: Correct where the trailing flag transitions in the middle of a glyph. 2011-10-12 20:52:46 +02:00
Aric Stewart 14eaa18dae usp10: Implement SSA_FALLBACK. 2011-10-11 13:37:49 +02:00
Aric Stewart 314553f194 usp10: Improve handling of tabs and SSA_TAB. 2011-10-11 13:37:49 +02:00
Aric Stewart 95ca444692 usp10: Handle the SSA_PASSWORD flag in ScriptStringAnalyse. 2011-10-08 20:21:26 +02:00
Aric Stewart 63490ce038 usp10: Correct ScriptStringGetLogicalWidths to be based on char not glyph. 2011-10-06 12:28:06 -05:00
Aric Stewart b8f1b5adfe usp10: ScriptShape needs a number of SCRIPT_VISATTR equal to glyphs not chars. 2011-09-23 17:40:49 +02:00
Aric Stewart 7ccf31bde8 usp10: Set fNoGlyphIndex only if the fonts has no opentype/truetype tables. 2011-09-14 17:00:19 +02:00
Aric Stewart 7ae0b72e2f usp10: Respect the presence or absence of the SSA_GLYPHS flag. 2011-09-09 13:32:54 +02:00
Aric Stewart dd4dd261f5 usp10: Respect the presence or absence of the SSA_BREAK flag. 2011-09-09 13:32:49 +02:00
Aric Stewart 4e760d8914 usp10: Disable glyph indexes for Symbol, non-TrueType, and device fonts. 2011-09-06 15:59:16 +02:00
Aric Stewart 8b14f3f542 usp10: When calling ShapeIndicSyllables we need to use cChars which is the actual number of original characters. 2011-08-30 11:54:32 +02:00
Aric Stewart 49dc1570b7 usp10: Draw selected glyphs in ScriptStringOut. 2011-08-29 17:09:00 +02:00
Aric Stewart f1796a94a5 usp10: Modify ScriptStringOut to paint the string item by item. 2011-08-29 17:03:51 +02:00
Aric Stewart a7071662f7 usp10: Display and handle bidi runs in the correct order in ScriptString functions. 2011-08-29 17:03:42 +02:00
Aric Stewart 515dd2543e usp10/test: Test ScriptXtoX on an RTL set with differing cChars and cGlyphs. 2011-08-25 17:56:26 +02:00
Francois Gouget c992ca277d Assorted spelling fixes. 2011-08-24 19:07:46 +02:00
Aric Stewart 74a0a3fdd8 usp10: In ScriptXtoX use cChars as the item is the character index. 2011-08-24 15:05:51 +02:00
Aric Stewart 126c779832 usp10/tests: Refactor test_ScriptXtoX to make testing varying datasets easier. 2011-08-24 15:05:44 +02:00
Aric Stewart 1ad1474be5 usp10: Always use a SCRIPT_STATE and SCRIPT_CONTROL structure in ScriptStringAnalyse. 2011-08-24 11:58:14 +02:00
Aric Stewart fda05436d1 usp10: Implement Multiple Substitution Subtable. 2011-08-23 16:53:51 +02:00
Frédéric Delanoy 760faf01a9 tests: Assorted spelling fixes. 2011-08-04 18:27:37 +02:00
Frédéric Delanoy 7e309601f3 dlls: Assorted spelling fixes. 2011-08-03 14:15:50 +02:00
André Hentschel a6a7bceb1a usp10: Fix possible crashes (clang). 2011-07-14 14:46:56 +02:00
Aric Stewart 94e057dde5 usp10: Add missing Bengali entry. 2011-07-09 11:47:08 +02:00
Alexandre Julliard b99b9565e8 usp10: Make the various lookup tables more compact. 2011-07-07 17:30:35 +02:00
Aric Stewart 7339c04b7b usp10: Shift to using the unicode data for most of the indic lexical functions. 2011-07-07 14:59:37 +02:00
Aric Stewart 95166855bb usp10: Implement ScriptBreak using the Unicode Line Breaking Algorithm. 2011-07-07 14:56:50 +02:00
Aric Stewart cf40ef178e usp10: Restart Indic syllable processing immediately after malformed syllable. 2011-06-27 15:08:16 -05:00
Aric Stewart df16d37b67 usp10: Correct Pre Base glyph index shifting. 2011-06-24 11:56:34 -05:00
Aric Stewart 152d179149 usp10: Non modern Indic fonts want blwf applied pre and post base. 2011-06-23 09:47:33 +02:00
Aric Stewart 1fed1473a0 usp10: Update Indic framework to handle non-modern fonts. 2011-06-23 09:47:33 +02:00
Aric Stewart 3d56d674aa usp10: Correct ralf glyph offset calculation in PostBase. 2011-06-21 17:38:16 +02:00
Aric Stewart 648b7f2afa usp10: Correct Post Base glyph index shifting. 2011-06-21 17:38:13 +02:00
Marcus Meissner c2748cfba5 usp10: Removed 2 superflous lines of code (Coverity). 2011-06-16 21:04:28 +02:00
Aric Stewart 520f07a4b0 usp10: Pre-base consonants need to be reordered like pre-base matras for scripts that have them. 2011-06-16 21:04:17 +02:00
Aric Stewart 9a849038ec usp10: Do matra second reorderings for Tamil and Malayalam to prevent blocking consonant ligatures. 2011-06-16 21:04:12 +02:00
Aric Stewart 4a6364d3c0 usp10: Enable a second reorder step after basic shaping. 2011-06-16 21:04:03 +02:00
Aric Stewart 75520505de usp10: Refine post-matra Ralf reordering to be post below form consonants as well. 2011-06-16 21:03:58 +02:00
Aric Stewart 2a8e004bcf usp10: More corrections to the Telugu lexical function. 2011-06-16 21:03:42 +02:00
Aric Stewart 88ad318fb8 usp10: Correct an error with the Telugu lexical function. 2011-06-16 18:24:45 +02:00
Aric Stewart 4709b0bf58 usp10: Condense duplicate Indic feature sets. 2011-06-15 20:04:41 +02:00
Aric Stewart 1be7e1bd62 usp10: Apply 'cjct' to the Indic syllable. 2011-06-15 20:04:41 +02:00
Aric Stewart c582e3b2a2 usp10: Apply 'vatu' to the Indic syllable. 2011-06-15 20:04:41 +02:00
Aric Stewart 7f0b49fd9d usp10: Apply 'pstf' to the Indic syllable. 2011-06-15 20:04:41 +02:00
Aric Stewart 5a315fed8d usp10: Apply 'pref' only to the pre-base consonants in Indic syllables. 2011-06-15 20:04:41 +02:00
Aric Stewart d942d959a6 usp10: Apply 'blwf' only to the below-base consonants in Indic syllables. 2011-06-15 20:04:41 +02:00
Aric Stewart f670d3b184 usp10: Apply 'rphf' only to the reph forms in Indic syllables. 2011-06-15 20:04:41 +02:00
Aric Stewart c1d4db0d78 usp10: Apply 'half' only to the pre-base consonants in Indic syllables. 2011-06-15 20:04:41 +02:00
Aric Stewart e626019be8 usp10: Apply 'rkrf' to the Indic syllable. 2011-06-15 20:04:41 +02:00
Aric Stewart 7058b3a38b usp10: Shape Indic syllables basic forms per syllable. 2011-06-15 20:04:41 +02:00
Aric Stewart 80531cac3f usp10: Ignore ralf as well as pre, post and below base consonants when finding base. 2011-06-15 20:04:41 +02:00
Aric Stewart 5f22264c1d usp10: Do not require a separate call to find Indic base consonant. 2011-06-15 20:04:40 +02:00
Aric Stewart 35948c6fdd usp10: Return the set of Indic syllables after reorder. 2011-06-15 20:04:40 +02:00
Aric Stewart 4b2bfb4a8b usp10: Correct an endless loop in Chaining Contextual Substitution if it is a dead rule. 2011-06-14 17:52:54 +02:00
Aric Stewart 0f795650f8 usp10: Strip dangling joiners for Sinhala. 2011-06-09 13:23:43 +02:00
Aric Stewart 428d3b025e usp10: Sinhala vowels are not fully decomposed. The Kombuva is simply split off. 2011-06-09 13:23:41 +02:00
Aric Stewart 4fbb13a2c8 usp10: Bengali initial form is only applied to the beginning of words. 2011-06-08 17:16:12 +02:00
Aric Stewart b913e44d89 usp10: Execute half after pstf. 2011-06-08 17:16:02 +02:00
Aric Stewart 3cc6129681 usp10: Refine Ralf reordering location for Devanagari and Gujarati. 2011-06-08 17:07:19 +02:00
Henri Verbeet 90d673e961 usp10: Store the GDEF table in the script cache.
To avoid reloading it all the time.
2011-06-08 14:12:40 +02:00
Henri Verbeet 90cf60c796 usp10: Fix a memory leak in GDEF_UpdateGlyphProps(). 2011-06-08 14:12:40 +02:00
Aric Stewart 5bf7622fc3 usp10: Correct matra type for Oriya 0x0B57. 2011-06-07 18:54:10 +02:00
Aric Stewart ab36da264b usp10: Gurmukhi has Ras but no Ralf. So do not treat them as a lex_Ra for reordering. 2011-06-07 18:12:13 +02:00
Aric Stewart 6657bf2d69 usp10: Do not over increment glyph index in Chaining Contextual Substitution. 2011-06-07 18:12:08 +02:00
Aric Stewart 1e115d65e0 usp10: Don't return prematurely from Chaining Contextual Substitution. 2011-06-06 21:49:19 +02:00
Aric Stewart 7ab744d3c7 usp10: Correct indic vowel marker name. 2011-06-06 21:49:17 +02:00
Aric Stewart 687b030c85 usp10/tests: Add Malayalam shaping test. 2011-06-03 13:44:28 +02:00
Aric Stewart e3f92669ed usp10/tests: Add Telugu shaping test. 2011-06-03 13:44:24 +02:00
Aric Stewart bdb3a53269 usp10/tests: Add Tamil shape test. 2011-06-03 13:44:20 +02:00
Aric Stewart ee45ab66ba usp10/tests: Add Oriya shaping test. 2011-06-03 13:44:16 +02:00
Aric Stewart a1795cfc9a usp10/tests: Add Gujarati shaping test. 2011-06-03 13:44:12 +02:00
Aric Stewart 856b272635 usp10/tests: Add Gurmukhi shaping test. 2011-06-03 13:44:09 +02:00
Aric Stewart bd07f67571 usp10/tests: Add Bengali shaping test. 2011-06-03 13:44:05 +02:00
Aric Stewart adfd870ba6 usp10/tests: Add Devanagari shaping test. 2011-06-03 13:44:01 +02:00
Aric Stewart 8d83e5d370 ups10: Add Malayalam script. 2011-06-03 13:43:55 +02:00
Aric Stewart 20f5613e61 usp10: Add Kannada script. 2011-06-03 13:43:47 +02:00
Aric Stewart af02c0e29c usp10: Add Telugu script. 2011-06-03 13:43:38 +02:00
Aric Stewart c5747304f0 usp10: Add Tamil script. 2011-06-03 13:43:32 +02:00
Aric Stewart bafc5f0f30 usp10: Add Oriya script. 2011-06-03 13:43:25 +02:00
Aric Stewart 858ecd1c54 usp10: Add Gujarati script. 2011-06-03 13:43:19 +02:00
Aric Stewart fdf2ab5bfa usp10: Add Gurmukhi script. 2011-06-03 13:43:12 +02:00