Aric Stewart
10e9adfb27
usp10: Fix Contextual Shaping for Languages with RTL write order.
...
Including Arabic, Syriac, Phags pa, and Mongolian.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 21:38:47 +01:00
André Hentschel
961e1e6857
usp10: Fix ScriptRecordDigitSubstitution spec file entry.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-29 10:16:06 +01:00
Huw Davies
427caff915
usp10/tests: Reorder the todo and broken arrays to match the order of the expected values.
...
Also ensure that all elements of the broken arrays are explicitly initialized.
This allows many tests to run that were previously incorrectly skipped.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 16:57:26 +01:00
Aric Stewart
aae5a831e2
usp10: Implement Chaining Context Substitution Format 2: Class-based Chaining Context Glyph Substitution.
...
Used by the font Noto Nastaliq Urdu.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 20:04:52 +01:00
Aric Stewart
b98a70aa40
usp10: Implement Contextual Positioning Subtable: Format 2.
...
Used by the font Noto Nastaliq Urdu.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 20:04:52 +01:00
Aric Stewart
5e6b2c0ed6
usp10: Implement GSUB Context Substitution types 1 and 2.
...
Used by the font Noto Nastaliq Urdu.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 20:04:51 +01:00
Huw Davies
55c5a77b47
usp10/tests: Add a second set of glyph props that have changed in Windows 10.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 15:54:45 +01:00
Francois Gouget
c705eca8cb
usp10: A spelling fix in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-10 19:19:15 +01:00
Huw Davies
0dbd2e37f9
usp10: Free the final page.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 00:36:45 +09:00
Nikolay Sivov
0695368406
usp10: Better implementation for ScriptGetLogicalWidths().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 23:56:11 +09:00
Bernhard Übelacker
d900c758b7
usp10/tests: Reserve for InClass a byte for every character in teststr.
...
Signed-off-by: Bernhard Übelacker <bernhardu@mailbox.org>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:21 +09:00
Michael Stefaniuc
ac740f17dc
usp10/tests: Use SetRect() instead of open coding it.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-16 15:54:58 +09:00
Thomas Faber
3784524265
usp10: Avoid buffer overrun in ReplaceInsertChars.
...
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 11:50:02 +09:00
Nikolay Sivov
58e0972c5c
Update data tables to Unicode 9.0.0.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:09:28 +09:00
Hadrien Boizard
37840f84ff
usp10: Use wine_dbgstr_point in TRACES.
...
Signed-off-by: Hadrien Boizard <h.boizard@gmail.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:21 +09:00
Henri Verbeet
5098bddf90
usp10: Replace zero-width glyphs with 0x20 when psa->fNoGlyphIndex is set in ScriptShapeOpenType().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 01:03:19 +09:00
Henri Verbeet
9f5389de15
usp10: Replace more control characters with blanks.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 01:03:17 +09:00
Henri Verbeet
68830f12e7
usp10: Don't replace control characters with blanks when psa->fNoGlyphIndex is set.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 01:03:11 +09:00
Henri Verbeet
d73f2b02b0
usp10: Don't modify psa->fNoGlyphIndex in ScriptShapeOpenType().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 01:03:09 +09:00
Henri Verbeet
acf2d54fb3
usp10: Set fZeroWidth when replacing control characters with blanks.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 01:03:06 +09:00
Henri Verbeet
21586466ac
usp10: Set the base embedding level for Script_Arabic_Numeric to 2.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:06:54 +09:00
Henri Verbeet
2ce0f7e4a3
usp10: Arabic numerals are written left-to-right.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:06:52 +09:00
Henri Verbeet
4be7accf2a
usp10: Handle C2_ARABICNUMBER as numeric.
...
I.e., make sure ٬ and ٫ get classified as Script_Arabic_Numeric.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:06:48 +09:00
Henri Verbeet
f1628183ab
usp10/tests: Add an itemisation test for Arabic numerals and punctuation.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:06:43 +09:00
Henri Verbeet
e54bee4415
usp10: Properly check for numeric scripts.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:49 +09:00
Henri Verbeet
ae1c02a27f
usp10: Set the base embedding level for Script_Persian to 2.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:49 +09:00
Henri Verbeet
8b114ddaf6
usp10: Persian numerals are written left-to-right.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:48 +09:00
Henri Verbeet
e49ad1cc5b
usp10: Fix the script tag and fallback font for Script_Persian.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:48 +09:00
Henri Verbeet
fd5860d2f2
usp10/tests: Add an itemisation test for Persian numerals and punctuation.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:47 +09:00
Francois Gouget
65893a7142
usp10: Punctuation fixes.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-31 11:30:54 +09:00
Henri Verbeet
71cabaa4b9
usp10: Resolve BNs and explicit formatting characters to the preceding level in resolveResolved().
...
As in section 5.2 of the Unicode Bidirectional Algorithm.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 21:26:20 +09:00
Nikolay Sivov
9da5adce66
usp10: Some spelling fixes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-06 12:50:31 +09:00
Nikolay Sivov
9aa8b1847f
usp10: Trace RECT arguments in text output functions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-06 12:50:29 +09:00
Alexandre Julliard
0bbeaae678
make_unicode: Mark most data tables as hidden.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:01 +09:00
Nikolay Sivov
e6e0bc4a06
usp10/tests: Use todo_wine_if() in tests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-18 00:22:01 +09:00
Aric Stewart
12fb74ac56
usp10: Handle GSUB SubType 7: Extension Substitution.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-13 13:23:31 +09:00
Nikolay Sivov
a8c6c9f49a
usp10: Use memcpy() to return ScriptLayout() results.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:33 +09:00
Huw Davies
fc028e99c1
usp10: ScriptPlace should honour the fZeroWidth attribute.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 01:26:43 +09:00
Alexandre Julliard
cb65a3fbf9
make_unicode: Fix typo in Indic syllable table generation.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 17:23:27 +09:00
Aric Stewart
e395d4e766
usp10: Implement fOverrideDirection.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 01:01:47 +09:00
Aric Stewart
144a7aa6ef
usp10: Correct math punctuation handling in itemization.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 18:21:47 +09:00
Aric Stewart
6c470a8bd3
usp10: Directional control codes force complex itemization.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 18:20:45 +09:00
Aric Stewart
c160ad9e89
usp10: Rewrite ScriptXtoCP.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 21:48:03 +09:00
Nikolay Sivov
f47f8d2acd
usp10: Remove unused helper (Clang).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-29 12:46:08 +09:00
Nikolay Sivov
9cede2f0a6
usp10/tests: Use BOOL variable for BOOL retval (PVS-Studio).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Nikolay Sivov
e8c1cf4402
Update data tables to Unicode 8.0.0.
2015-10-02 15:37:05 +09:00
Aric Stewart
6b657e0760
usp10/tests: fix some tests on Hebrew and Arabic locales.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-01 16:34:45 +09:00
Aric Stewart
0072188b69
usp10/tests: Catch case where enumerated font name is too long.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-01 16:27:57 +09:00
Jacek Caban
efb1cf0299
usp10: Added test of ScriptStringAnalyse call with 0 length string.
2015-09-10 20:10:32 +09:00
Thomas Faller
f1334dbb8d
usp10: Fix invalid read.
2015-09-03 21:11:06 +09:00
Nikolay Sivov
f01bab5be1
usp10/tests: Fix some tests failures caused by Tahoma changes (Win10).
2015-08-24 14:42:09 +09:00
Akihiro Sagawa
e083986df5
usp10: Display the blank glyph for some control characters (non truetype/opentype).
2015-08-12 23:00:08 +09:00
Akihiro Sagawa
22e8046fcb
usp10: Display the blank glyph for some control characters (truetype/opentype).
2015-08-12 23:00:06 +09:00
Akihiro Sagawa
311fce671d
usp10/tests: Add tests for control character glyphs.
2015-08-12 23:00:03 +09:00
Nikolay Sivov
7a02782f48
usp10: Remove dead null check that can't fail (Coverity).
2015-06-08 18:52:02 +09:00
Nikolay Sivov
c7b5a2f851
usp10/tests: Fix some leaks on error path (Valgrind).
2015-04-16 15:14:10 +09:00
Michael Stefaniuc
7d1203a741
usp10: Remove an unused assignment (PVS-Studio).
2015-01-22 12:04:19 +01:00
Aric Stewart
b2ef877506
usp10: Correct an off-by-one error in page cache allocation.
2014-12-17 17:08:23 +01:00
André Hentschel
bc94ee099a
usp10: Remove unused function (Clang).
2014-12-05 20:48:04 +01:00
Qian Hong
0cf62bec41
usp10: Make sure fallbackFont is NULL terminated.
2014-12-03 21:34:28 +01:00
Sebastian Lackner
ebd1b86bbb
usp10: Silence repeated GSUB_apply_ChainContext[Subst|Pos] FIXMEs.
2014-11-06 23:47:11 +09:00
Michael Stefaniuc
7585859986
usp10: Removed unused variable (PVS-Studio).
2014-10-29 20:31:07 +09:00
Nikolay Sivov
5281bff120
usp10: Remove comment that's no longer true.
2014-10-01 18:08:10 +02:00
Nikolay Sivov
e65307f29f
usp10: Use proper type for return value.
2014-09-22 19:08:40 +02:00
Nikolay Sivov
1183a781ec
usp10: Add a missing 'break' for rule LB20.
2014-09-05 14:41:29 +02:00
Nikolay Sivov
5f52333d34
usp10/tests: Test for S_OK return value in a clean way.
2014-08-29 09:57:52 +02:00
Piotr Caban
4387192120
usp10: Limit trace length in iso_dump_types.
2014-07-14 17:22:42 +02:00
Piotr Caban
6d7ce98fec
usp10: Limit trace length in dump_types.
2014-07-14 17:22:41 +02:00
Aric Stewart
710e23797f
usp10: Implement N0: bracketing pairs.
2014-07-09 16:21:33 +02:00
Aric Stewart
2a12c6a7d4
tools: Generate the Unicode Bidi Bracketing table.
2014-07-08 17:00:24 +02:00
Alexandre Julliard
18d410dec1
tools: Don't include wine/unicode.h if not necessary.
2014-07-08 17:00:22 +02:00
Alexandre Julliard
96ff3daaa3
usp10: Update the character data tables to Unicode 7.0.0.
2014-06-23 16:05:13 +02:00
Frédéric Delanoy
2ab8729020
Assorted spelling/grammar fixes.
2014-06-20 12:19:31 +02:00
Bruno Jesus
3c16044410
usp10: Fix a memory leak in _ItemizeInternal (valgrind).
2014-06-11 16:11:39 +02:00
Frédéric Delanoy
0ec7907c61
usp10: Silence a noisy fixme in ScriptPlaceOpenType.
2014-05-08 17:41:53 +02:00
Huw Davies
ee14105afd
usp10/tests: Mark two failing Hebrew strings as broken under win8.
...
The strings are tagged as Hebrew, yet the RTL and bidi levels are not correctly set.
2014-05-06 19:20:22 +02:00
Vijay Kiran Kamuju
8b50762b18
usp10: Show fixme once in ScriptShapeOpenType.
2014-05-06 09:56:13 +02:00
Thomas Faber
3f9c9eaa54
usp10: Do not write to last script item if buffer space is insufficient.
2014-05-01 10:18:11 +02:00
Marcus Meissner
b6a081ea44
usp10: Fixed border condition in shifts (Coverity).
2014-04-08 18:28:29 +02:00
Hermès Bélusca-Maïto
8fb52c7c5d
usp10: Avoid non-standard array initialization.
2014-03-25 19:01:33 +01:00
Alexandre Julliard
99ef0d6ff0
makefiles: Get rid of the MAKE_TEST_RULES variable.
2014-01-02 12:13:16 +01:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
Frédéric Delanoy
62da5f2604
usp10: Constify a character string.
2013-12-18 11:39:36 +01:00
Aric Stewart
9ccfebd615
usp10: Implement resolveResolved (L1) for Unicode 6.3.
2013-11-04 11:30:34 +01:00
Aric Stewart
de5dc96f85
usp10: Rewrite resolveNeutral and resolveImplicit for Unicode 6.3.
2013-11-04 11:30:32 +01:00
Aric Stewart
c767733631
usp10: Rewrite resolveWeak for Unicode 6.3.
2013-11-04 11:24:54 +01:00
Aric Stewart
2531d40b51
usp10: Rewrite resolveExplicit for Unicode 6.3.
2013-11-04 11:20:23 +01:00
André Hentschel
f309e01282
usp10/tests: Fix tests compilation with __WINESRC__ defined.
2013-10-25 13:36:01 +02:00
Alexandre Julliard
13479aa7b8
tools: Update the character data tables to Unicode 6.3.0.
2013-10-15 16:09:16 +02:00
Michael Stefaniuc
0e681027a2
tests: Compile the tests by default with -D__WINESRC__.
2013-10-02 11:04:02 +02:00
Marcus Meissner
90117bd175
usp10: Added missing break (Coverity).
2013-08-19 12:53:20 +02:00
Alexandre Julliard
1f44de3f65
usp10: Update the character data tables to Unicode 6.2.0.
2013-07-22 17:16:01 +02:00
Alexandre Julliard
2c5c2b5546
usp10: Update the line breaking algorithm to Unicode 6.2.0.
2013-07-22 17:16:00 +02:00
Aric Stewart
e909665db3
usp10: Correct access to -1 index of array.
...
Issue found by Phil Krylov.
2013-03-25 14:04:12 +01:00
Phil Krylov
c9cbde73c0
usp10: Support GPOS extension lookup subtables.
2013-03-25 14:03:52 +01:00
Huw Davies
28adfd4c3c
usp10: Don't read past the end of the context_type array.
2013-03-14 17:44:21 +01:00
Andrew Talbot
4ef6a96890
usp10: Avoid signed-unsigned integer comparisons.
2013-02-28 21:00:58 +01:00
Huw Davies
5e5d8d215b
usp10: Clusters are represented by glyph indices not character positions.
2013-02-20 13:17:26 +01:00
Alexandre Julliard
6af3e91cf8
usp10: Remove an unnecessary DllMain entry point.
2013-02-14 21:38:00 +01:00
Aric Stewart
9a59d81f72
usp10: Correct error with ScriptLayout log2vis.
...
Issue found and test written by Huw Davies.
2013-02-14 20:05:11 +01:00
Aric Stewart
237ed21737
usp10: Fix memory leak when a font has 0 languages, scripts or features.
...
Based on original fix proposded by Wojciech Pyczak.
2013-02-08 19:31:31 +01:00
Aric Stewart
c8b5a16f0c
usp10: Free default_language items when freeing script cache.
2013-02-08 19:31:22 +01:00
Michael Stefaniuc
9f6f8bfc00
usp10: Let C look like C.
2013-02-07 12:04:05 +01:00
Aric Stewart
ef4b7c5948
usp10: Update diacritical script handling for non OpenType Itemization.
2013-02-05 20:15:47 +01:00
Aric Stewart
e70b9b1c1e
usp10: Split the core Itemize function out to be able to support differences between the normal and OpenType versions.
2013-02-05 20:15:38 +01:00
Aric Stewart
8077975e70
usp10: Fix typo with Script_Khmer_Numeric.
2013-02-05 20:15:38 +01:00
Francois Gouget
a5ff4b8088
Assorted spelling fixes.
2013-01-29 12:13:04 +01:00
Aric Stewart
6c4f35f345
usp10: Do not apply SSA_LINK to right to left text.
2013-01-25 17:31:07 +01:00
Aric Stewart
6d1d7eedd9
usp10: Add ShapeCharGlyphProp and ContextualShape for Control characters.
2013-01-25 11:17:28 +01:00
Aric Stewart
8df64b8589
usp10: Add ShapeCharGlyphProp_Latin to properly handle zero width character properties for Latin.
2013-01-25 11:17:23 +01:00
Aric Stewart
f6bdaf369c
usp10: Only fall back to latin features if the base script tag is not found at all.
2013-01-21 16:27:27 +01:00
Aric Stewart
ddf6b6e585
usp10: Add locl and ccmp to Latin features.
2013-01-21 16:27:15 +01:00
Aric Stewart
c1f190a0c5
usp10: GPOS Mark to Base seeks back in the string to the first glyph that is not a mark for its base.
2013-01-21 12:14:34 +01:00
Aric Stewart
287243a9b9
usp10: Group the GDEF table loading with the other opentype tables.
2013-01-21 12:14:19 +01:00
Aric Stewart
6b8c910b37
usp10: MarkToMark calculations may need to happen even if the offset is 0.
2013-01-18 14:47:11 +01:00
Aric Stewart
62b4f31d6d
usp10: Implement GPOS Cursive Attachment Positioning Subtable.
2013-01-17 20:28:48 +01:00
Aric Stewart
e5ab22d684
ups10: Mark to Base, Mark and Ligature are not cumulative offsets.
2013-01-15 14:39:08 +01:00
Huw Davies
6ae41d015c
usp10: Fix MarkToMark offset for RTL text.
2013-01-14 17:35:25 +01:00
Huw Davies
464bf22fdf
usp10: Fix pair adjustment for RTL text.
2013-01-14 17:35:24 +01:00
Huw Davies
0783987a26
usp10: Don't compute a pair adjustment for the last glyph.
2013-01-14 17:35:24 +01:00
Huw Davies
7ba38ad62e
usp10: Fix MarkToBase offset for RTL text.
2013-01-14 17:35:23 +01:00
Huw Davies
b864b4aae2
usp10: Propagate the script analysis to the GPOS lookup functions.
2013-01-14 17:35:14 +01:00
Huw Davies
a66efc2631
usp10: Don't invert the y-offsets in RTL mode.
2013-01-14 17:30:09 +01:00
Huw Davies
bd08cecbb6
usp10: Fix the offset calculations for rtl display.
2013-01-11 18:14:07 +01:00
Huw Davies
f5ab208ce8
usp10: Handle an offset of the first glyph.
2013-01-11 18:14:07 +01:00
Huw Davies
83cbc07141
usp10: Simplify the reordering of glyphs.
2013-01-11 18:14:07 +01:00
Aric Stewart
7254a0ab4c
usp10: Implement GPOS MarkToLigature Attachment Positioning Subtable.
2013-01-10 12:23:01 +01:00
Huw Davies
082f989575
usp10: Simplify the offset calculation by always using ETO_PDY.
2013-01-08 19:09:45 +01:00
Aric Stewart
a1648ac5e7
usp10: Add GSUB ccmp feature to Hebrew.
2013-01-08 19:09:40 +01:00
Aric Stewart
9dd91d3198
usp10: Correct issues if a feature tag is duplicated between GSUB and GPOS.
...
Identified by Huw Davies.
2013-01-08 19:09:35 +01:00
Francois Gouget
f963f93964
Assorted spelling fixes.
2013-01-07 11:10:40 +01:00
Marcus Meissner
02722c4d8e
usp10: Mark SHAPE_ApplyOpenTypePositions as hidden.
2012-12-28 11:25:25 +01:00
Andrew Talbot
c5ce8c8e08
usp10: Indentation fix.
2012-12-24 13:31:42 +01:00
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