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
Aric Stewart
19857ec45b
usp10: Add Bengali script.
2011-06-03 13:42:30 +02:00
Aric Stewart
b8aad9d3cd
usp10: Add Devanagari script.
2011-06-03 13:42:22 +02:00
Aric Stewart
397c3ac51f
usp10: Improve Sinhala shaping using Indic rules.
2011-06-03 13:41:58 +02:00
Aric Stewart
2bd19a89ff
usp10: Handle new OpenType tags for Microsoft Indic fonts.
2011-06-02 16:24:35 +02:00
Alexandre Julliard
76319e3a8d
usp10/tests: Load GetGlyphIndicesW dynamically.
2011-05-27 12:19:35 +02:00
Aric Stewart
eaaf157f6c
usp10: Zero Width Joiners and Non-Joiners should, like spaces, not split runs.
2011-05-26 16:32:03 +02:00
Francois Gouget
792a9eb689
usp10/tests: Make enumFontProc() static.
2011-05-25 16:35:05 +02:00
Aric Stewart
c5f2ac3eea
usp10/test: Add Tibetan shaping test.
2011-05-25 11:54:42 +02:00
Aric Stewart
2b3da5389c
usp10: Determine glyph properties after shaping for Tibetan script.
2011-05-25 11:54:38 +02:00
Aric Stewart
850336d936
usp10/test: Make sure to only trace on _test_shape_ok number of glyphs if font is not valid.
2011-05-25 11:54:31 +02:00
Marcus Meissner
f9779bbee2
usp10: Mark internal symbols with hidden visibility.
2011-05-25 11:52:05 +02:00
Aric Stewart
b22b80019a
usp10/test: Add Lao shaping test.
2011-05-24 18:12:36 +02:00
Aric Stewart
852c8fd60e
usp10/test: Add Phags-pa shaping test.
2011-05-24 18:12:33 +02:00
Aric Stewart
42274ed8ab
usp10/test: Add Thaana shaping test.
2011-05-24 18:12:31 +02:00
Aric Stewart
2d8955429c
usp10/tests: Add Syriac shaping test.
2011-05-24 18:12:28 +02:00
Aric Stewart
ee450d5041
usp10: Add Thai shaping test.
2011-05-24 16:55:51 +02:00
Aric Stewart
0d324b1fab
usp10: Add Arabic shaping test.
2011-05-24 16:55:48 +02:00
Aric Stewart
670f27104a
usp10: Add Hebrew shaping test.
2011-05-24 16:55:42 +02:00
Aric Stewart
50a1ed1b94
usp10/tests: Update test_ScriptShapeOpenType framework to shape in a given font.
2011-05-24 16:55:39 +02:00
Aric Stewart
953c7a3427
usp10: Determine glyph properties after shaping for scripts with no justification.
2011-05-24 12:47:27 +02:00
Aric Stewart
9dd700206a
usp10: Determine glyph properties after shaping for Thai and other SE asian scrpts.
2011-05-24 12:47:27 +02:00
Aric Stewart
38d4409641
usp10: Determine glyph properties after shaping for Arabic.
2011-05-24 12:47:27 +02:00
Aric Stewart
342de4c128
usp10: Update LogClust from glyph properties.
2011-05-24 12:47:27 +02:00
Aric Stewart
8e8d4be5a4
usp10: Use the font GDEF table to update glyph properties.
2011-05-24 12:47:27 +02:00
Aric Stewart
c7e42c05a5
usp10: Add default glyph properties proc.
2011-05-24 12:47:27 +02:00
Aric Stewart
d26bdd9121
usp10: Framework for determing glyph properties after shaping.
2011-05-24 12:47:27 +02:00
Aric Stewart
9a6cf4a391
usp10: If a feature changes a glyph reapply the feature to the new glyph.
2011-05-20 10:29:15 +02:00
Aric Stewart
ecd43b4bd8
usp10: Correct lookahead offset in Coverage-based Chaining Context Glyph Substitution.
2011-05-20 10:29:09 +02:00
Aric Stewart
2587f702c5
usp10: Make use of MS_MAKE_TAG instead of numeric constants.
2011-05-18 16:56:00 +02:00
Aric Stewart
9f7c390ec8
usp10/test: Rewrite test_ScriptShapeOpenType to be more expandable.
2011-05-18 10:51:05 +02:00
Aric Stewart
3c26fa9136
usp10: Correct default fCanGlyphAlone value.
2011-05-18 10:51:02 +02:00
Aric Stewart
9edaaae99b
usp10/tests: Add ScriptShapeOpenType tests mirroring ScriptShape tests.
2011-05-18 10:50:59 +02:00
Aric Stewart
d0012622d3
usp10: Correct a few fallback conditions in Syriac shaping.
2011-05-18 10:49:49 +02:00
Francois Gouget
f73b860bc2
usp10/tests: Add a '\n' to an ok() call.
2011-05-16 16:35:29 +02:00
Aric Stewart
e3ed47bf95
usp10: Implementation of ScriptPlaceOpenType.
2011-05-13 10:45:44 +02:00
Aric Stewart
3ad7822d85
usp10: Implementation of ScriptShapeOpenType.
2011-05-13 10:45:38 +02:00
Aric Stewart
4d8012795f
usp10/tests: Test ScriptItemizeOpenType.
2011-05-11 18:14:18 +02:00
Aric Stewart
f221aea66c
usp10: Implement ScriptItemizeOpenType.
2011-05-11 18:12:51 +02:00
Francois Gouget
5920de5ffb
Assorted spelling and case fixes.
2011-05-09 12:09:27 +02:00
Aric Stewart
f026616c22
usp10: Rewrite ScriptStringXtoCP to make use of ScriptXtoCP.
2011-03-28 17:10:18 +02:00
Aric Stewart
d7ea24d56d
usp10: Rewrite ScriptStringCPtoX to make use of ScriptCPtoX.
2011-03-28 17:09:52 +02:00
Aric Stewart
c7b4964b7e
usp10: Rewrite of ScriptXtoCP to handle pwLogClust for LTR and RTL runs.
2011-03-18 11:30:52 +01:00
Aric Stewart
7acd2ba264
usp10: Correct fTrailing handling for RTL runs in ScriptCPtoX.
2011-03-18 11:30:39 +01:00
Aric Stewart
3f7ad460ef
usp10: Update ScriptCPtoX to handle RTL runs.
2011-03-14 12:15:43 +01:00
Aric Stewart
73f743f6d2
usp10: Corrections to ScriptCPtoX.
2011-03-10 16:30:15 +01:00
Austin English
408d068915
usp10/tests: Remove dead assignment (LLVM/Clang).
2011-02-17 18:33:42 +01:00
Andrew Nguyen
6d0983972e
usp10/tests: Avoid passing optional pointers to uninitialized structures in ScriptString tests.
2011-02-16 14:26:26 +01:00
Austin English
fe628d4932
usp10/tests: Make sure to use return value (LLVM/Clang).
2011-02-07 10:10:39 -06:00
Hans Leidekker
ba107a0de1
usp10: Add stub exports for the OpenType functions.
2010-11-18 12:37:04 +01:00
Francois Gouget
b990617a95
Assorted spelling fixes.
2010-11-02 13:16:57 +01:00
Aric Stewart
7891f05b88
ups10: Corrected rtl implementation for ScriptStringXtoCP and ScriptStringXtoCP.
2010-11-01 11:32:30 +01:00
Alexandre Julliard
6410ab1ce8
libwine: Update Unicode tables to the Unicode 6.0 standard.
2010-10-30 20:42:09 +02:00
Aric Stewart
fa7cc46063
usp10/tests: Update test_ScriptStringXtoCP_CPtoX to test both rtl and ltr characters.
2010-10-29 14:24:15 +02:00
Aric Stewart
0c5d0f80bc
usp10: When checking font for shaping the font needs at least 1 of the features but does not need all.
2010-10-07 15:58:09 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Francois Gouget
0d3b4b3c0c
usp10: Add a trailing '\n' to a TRACE() call.
2010-09-13 13:27:09 -05:00
Aric Stewart
7bf4db877a
usp10: Check font for required features and report error if missing.
2010-09-13 09:55:49 -05:00
Aric Stewart
29d2c5a208
usp10: Improve handling of spaces during Itemization.
2010-09-13 09:55:46 -05:00
Aric Stewart
facc7b0306
usp10: Implement handling fMergeNeutralItems.
2010-09-09 19:56:36 +02:00
Aric Stewart
e881635741
usp10: Attempt to shape with non TMPF_TRUETYPE fonts.
...
Just do not do the parts that are known to require ttf tables.
2010-09-08 21:03:37 +02:00
Francois Gouget
673d7538cb
usp10: Add a trailing '\n' to a TRACE() call.
2010-08-31 14:23:47 +02:00
Francois Gouget
f0253f3035
usp10: Make SHAPE_ApplyOpenTypeFeatures() static.
2010-08-26 13:44:45 +02:00
Aric Stewart
68ab5e2689
usp10: Add Lao script.
2010-08-25 11:58:04 +02:00
Aric Stewart
331c8cdef6
usp10: Add Thai Script.
2010-08-25 11:57:57 +02:00
Aric Stewart
57053fa51e
usp10: Add Phags-pa Script.
2010-08-25 11:57:50 +02:00
Aric Stewart
29d896e40a
usp10: Add Tibetan Script.
2010-08-25 11:57:41 +02:00
Aric Stewart
2fe30b377c
usp10: Add Sinhala Script.
2010-08-25 11:57:35 +02:00
Aric Stewart
7b11524ec3
usp10: Add Georgian script.
2010-08-24 12:29:34 +02:00
Aric Stewart
703dd4b1fc
usp10: Add Armenian script.
2010-08-24 12:29:26 +02:00
Aric Stewart
b21ca5628e
usp10: Add Cyrillic script.
2010-08-24 12:29:13 +02:00
Aric Stewart
2701b8f97a
usp10: Add Greek Script.
2010-08-24 12:28:57 +02:00
Aric Stewart
2585d41eeb
usp10: Add Thaana script.
2010-08-24 12:28:43 +02:00
Henri Verbeet
7200f91c06
usp10: Pass the correct buffer size to lstrcpynA() in load_GSUB_feature().
2010-08-20 13:21:20 +02:00
Aric Stewart
f4d142e277
usp10: Update pwLogClust with glyph transformations.
2010-08-16 15:54:23 +02:00
Aric Stewart
4ffd3e6af6
usp10: Add Syriac contextual shaping.
2010-08-16 15:54:23 +02:00
Aric Stewart
0401f6c088
usp10: Add contextual shaping proc to the script shaping data.
2010-08-16 15:54:23 +02:00
Aric Stewart
2fb344c117
usp10: Generalize out applying Opentype features and define default features for currently known scripts.
2010-08-16 15:54:22 +02:00
Aric Stewart
b6f2f10b12
usp10: Have ScriptIsComplex reflect information in our scripts.
2010-08-16 15:54:22 +02:00
Aric Stewart
08c6d79d45
usp10: Report accurate information about our currently known scripts.
2010-08-16 15:54:22 +02:00
Aric Stewart
8c0e5483d8
usp10: Factor out script ranges in an more expandable way.
2010-08-16 15:54:22 +02:00
Aric Stewart
d4befda3c7
usp10: Add beginning support for GSUB Alternate Substitution Subtable.
2010-08-03 19:24:07 +02:00
Aric Stewart
1b37809dba
usp10: Start implementing Chaining Context Substitution Format 3: Coverage-based Chaining Context Glyph Substitution.
2010-07-23 11:43:08 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Francois Gouget
7649c75b40
Assorted typo and spelling fixes.
2010-06-24 10:37:05 +02:00
Francois Gouget
e39b983f49
usp10/tests: Add a trailing '\n' to an ok() call.
2010-06-22 20:03:44 +02:00
Aric Stewart
baaaee823f
usp10/tests: Windows 95 does not set invalid glyphs to 0 but instead 0x80.
2010-06-17 11:48:07 +02:00
Aric Stewart
5c5e6a5fc9
usp10/tests: Remove a test for a bug corrected in later versions of usp10.
...
The undocumented interaction with ScriptStringCPtoX causing
ScriptStringFree is an undocumented bug that appears to have been
fixed in later versions of Uniscribe. We should not be trying to
conform to that.
2010-06-17 11:47:57 +02:00
Aric Stewart
25f45df11d
usp10/tests: Having numbers in the ScriptStringXtoCP tests causes unpredictable behavior.
2010-06-16 11:44:49 +02:00
Aric Stewart
cddb5d6455
usp10: Apply all the GSUB features specified in Microsofts Typesetting documentation for Arabic Shaping.
2010-05-28 16:22:24 +02:00
Aric Stewart
5ad2f6e152
usp10: Break out a function to apply a GSUB feature to an entire string of glyphs.
2010-05-28 16:22:23 +02:00
Austin English
21dac9f6cd
usp10/tests: Check return value of SelectObject.
2010-05-24 12:53:15 +02:00
Aric Stewart
18b310a703
usp10: Apply the GSUB 'rlig' feature for Required ligature substitution.
2010-05-24 11:19:03 +02:00
Aric Stewart
6c73258725
usp10: Handle Ligature Substitution Subtable from GSUB.
...
This also involves a restructuring of the handling of glyph lookups
from GSUB since Ligature Substitution can result in many glyphs being
replaced with 1 glyph, and future looksup may result in one glyph
being replaces with many glyphs.
2010-05-24 11:18:59 +02:00
Aric Stewart
a27e03bf5d
usp10: Use font chartype only as a fallback if we do not know the characters script already.
2010-05-24 11:18:15 +02:00
Marcus Meissner
163c7021b1
usp10: Check heap_alloc return value (Coverity).
2010-05-24 11:15:25 +02:00
Aric Stewart
e276fbc222
usp10: Correct Left and Right confusions for Arabic joining and shaping.
2010-05-21 18:58:05 +02:00
Aric Stewart
8412028562
usp10: Attempt to do shaping via the font GSUB table first.
...
Modern fonts expect this and the presentation form B glyphs are a fallback.
2010-05-19 18:02:08 +02:00
Aric Stewart
32b9b63a42
usp10: Add Arabic shaping.
2010-05-19 17:59:35 +02:00
Alexandre Julliard
a5fe688704
libwine: Generate Unicode data for Arabic shaping.
2010-05-19 17:52:42 +02:00
Aric Stewart
421a997085
usp10: Add ETO_IGNORELANGUAGE when calling ExtTextOut so we do not re-reverse already formated RTL strings inside of GDI.
2010-05-08 13:12:54 +02:00
Aric Stewart
1ee497ae25
usp10/test: Initialize local structures.
2010-05-08 13:12:28 +02:00
Aric Stewart
4377cc62f8
usp10: Implement mirroring for bidi support.
2010-05-06 19:54:58 +02:00
Alexandre Julliard
6f3f505f04
libwine: Generate a table for BiDi character mirroring.
2010-05-06 19:54:45 +02:00
Aric Stewart
2ba0048541
usp10: ScriptTextOut reorders glyphs that are RTL if they have been processed with fLogicalOrder in previous calls.
2010-05-06 14:18:17 +02:00
Aric Stewart
abae85b976
usp10: Fix ScriptGetCMap handling of unsupported glyphs.
2010-05-06 14:18:04 +02:00
Aric Stewart
d5672fee0a
usp10: Update ScriptItemize to use the baselevel of a unified run.
2010-04-29 10:19:40 -05:00
Aric Stewart
d979afc4c8
usp10/test: Restructure test_ScriptItemize to make the test easier to manage and expand.
2010-04-28 15:04:18 -05:00
Jeff Latimer
a7fc0c65c1
usp10/tests: Remove some redundant tests and fully test bidi flag setting.
2010-04-27 14:38:21 -05:00
Jeff Latimer
b367e902c9
usp10: Check that there are sufficient script_items before setting the last pointer.
2010-04-27 14:38:03 -05:00
Jeff Latimer
0b9b96a81b
usp10/tests: Add tests for CR and LF chars and remove some trailing white space.
2010-04-22 12:19:45 +02:00
Aric Stewart
af3dfc198a
usp10: Improve support for Syriac in ScriptItemize.
2010-04-19 16:22:29 +02:00
Aric Stewart
4459c5b619
usp10: Improve Hebrew support in ScriptItemize.
2010-04-19 16:22:23 +02:00
Aric Stewart
d4b8536952
usp10/tests: Expanded tests for ScriptShape.
2010-04-15 17:06:10 +02:00
Aric Stewart
51bbd9299f
usp10: Have ScriptShape respect fLogicalOrder and fRTL when ordering glyphs.
2010-04-15 14:18:04 +02:00
Alexandre Julliard
65ad399032
usp10: Use the more detailed libwine information to classify bidi chars.
2010-04-14 18:00:45 +02:00
Aric Stewart
b9c30445c7
ups10: Reimplement ScriptLayout to properly handle mixed runs.
2010-04-14 18:00:45 +02:00
Aric Stewart
6c3659c3d4
usp10: Improve ScriptItemize with a SCRIPT_CONTROL and SCRIPT_STATE set.
...
Reduce bidi duplications from gdi32 by using the newly corrected usp10
functions.
2010-04-14 18:00:44 +02:00
Mikhail Maroukhine
2a8972378f
usp10: Fix compiler warnings with flag -Wcast-qual.
2010-03-29 12:16:58 +02:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Jeff Latimer
ee891d3b59
usp10: Change default glyph returned from 0xffff to 0.
2010-03-15 15:08:02 +01:00
Jeff Latimer
3b6498a520
usp10: Remove duplicate code.
2010-03-04 17:29:17 +01:00
Jeff Latimer
d970ea7fd7
usp10: Fix trace to remove an incorrect assignment.
2010-03-01 11:48:35 +01:00
Alexandre Julliard
6164ce2d82
makefiles: Use the standard C_SRCS variable as the list of test files.
...
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Eric van Beurden
2d3caa516e
usp10: Change the header includes to pull in 'windows.h' instead of the component headers.
2009-12-18 13:14:02 +01:00
Hans Leidekker
7d3f37fcbd
usp10: Fix a memory leak.
...
Found by Valgrind.
2009-12-07 14:18:29 +01:00
Hans Leidekker
d974a4b29f
usp10: Add a stub implementation of ScriptJustify.
2009-11-23 10:35:35 +01:00
Hans Leidekker
7714a3f798
usp10: Add a stub implementation of ScriptApplyLogicalWidth.
2009-11-23 10:35:31 +01:00
Hans Leidekker
f7a4936fc4
usp10: Make tests pass on Win7. Conform to the more recent behavior.
2009-09-08 12:12:18 +02:00
Paul Vriens
69d27865f6
usp10/tests: Skip some tests on WinME.
2009-04-13 17:33:31 -05:00
Paul Vriens
a12cc39ca3
usp10/tests: Fix some test failures on Vista and W2K8 (ScriptPlace).
2009-04-10 14:49:39 +02:00
Paul Vriens
277a84a989
usp10/tests: Fix some test failures on Vista and W2K8 (ScriptShape).
2009-04-10 14:49:31 +02:00
Paul Vriens
0af0bafd6a
usp10: Remove an unneeded check.
2009-04-10 11:21:39 +02:00
Hans Leidekker
8a2d97ac3d
usp10: Don't test digit substitution data.
...
It has apparently changed in Vista.
2009-03-04 13:06:11 +01:00
Hans Leidekker
9a847b3ab0
usp10: Improve some traces.
2009-01-06 14:52:18 +01:00
Hans Leidekker
83f66d0246
usp10: Set better visual attribute values in ScriptShape.
2009-01-06 14:52:13 +01:00
Hans Leidekker
8a5eae2122
usp10: Handle CR/LF in ScriptItemize.
2009-01-06 14:52:08 +01:00
Hans Leidekker
020456f71b
usp10: Improve handling of whitespace in ScriptBreak.
2009-01-06 14:52:00 +01:00
Andrew Talbot
bf92d68330
usp10: Sign-compare warnings fix.
2008-11-20 12:18:29 +01:00
Paul Vriens
80011be100
usp10/tests: Use win_skip instead of trace.
2008-10-21 11:43:56 +02:00
Hans Leidekker
addcf866cb
usp10: Store glyph mappings and widths in the script cache.
2008-10-10 12:26:41 +02:00
Rob Shearman
89a3ad7626
usp10: Add explicit "!= S_OK" to expressions that use HRESULTs as booleans.
2008-09-12 16:50:05 +02:00
Hans Leidekker
e691de4a1a
usp10: Use a valid string analysis when testing ScriptXtoCP and ScriptCPtoX.
2008-07-24 11:52:04 +02:00
Jeff Latimer
85d191937b
usp10/tests: Remove incorrect tests.
2008-07-08 12:01:14 +02:00
James Hawkins
a4c10fda8e
usp10: Fix several failing test in win2k3.
2008-05-27 19:37:52 +02:00
Hans Leidekker
c1e686429a
usp10: Fix a few failing tests and make them pass on Wine.
2008-05-01 19:36:27 +02:00
Hans Leidekker
20ae9be595
usp10: Remove redundant code from ScriptTextOut.
2008-05-01 19:36:19 +02:00
Guy Albertelli
c0aa44bb6c
usp10: Use passed hdc instead of cached one for ScriptTextOut with test to check.
2008-05-01 12:35:44 +02:00
Rob Shearman
48000893f9
makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
...
Only specify the root to keep platform-specifics out of the individual
DLL makefiles.
2008-03-04 20:55:01 +01:00
Francois Gouget
29ef0b90ee
Assorted spelling, punctuation and case fixes.
2008-03-03 12:04:48 +01:00
James Hawkins
eedfacdfe7
janitorial: Remove links to any microsoft site.
2008-03-01 12:04:03 +01:00
Hans Leidekker
25e836e83c
usp10: Do glyph translation for truetype fonts only.
2007-12-13 13:09:14 +01:00
Hans Leidekker
d5e76042c5
usp10: Add some tests for ScriptShape/Place and make them pass.
2007-12-12 13:49:19 +01:00
Michael Stefaniuc
8f1b74a846
usp10: Rename the wrappers around HeapAlloc() &Co to use the standard names.
2007-12-11 12:09:00 +01:00
Hans Leidekker
e19b2360f0
usp10: Don't trace char to glyph mappings.
2007-12-10 12:04:54 +01:00
Hans Leidekker
68efae1615
usp10: Store original font in the script cache and reselect it on successive calls.
2007-12-10 12:04:45 +01:00
Hans Leidekker
143f2421b6
usp10: Use GetCharABCWidthsI to implement ScriptGetGlyphABCWidth.
2007-12-10 12:04:35 +01:00
Hans Leidekker
106dbd5617
usp10: Fix some more memory leaks.
2007-11-09 12:25:38 +01:00