Commit Graph

114 Commits

Author SHA1 Message Date
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
Marcus Meissner 163c7021b1 usp10: Check heap_alloc return value (Coverity). 2010-05-24 11:15:25 +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
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 4377cc62f8 usp10: Implement mirroring for bidi support. 2010-05-06 19:54:58 +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
Jeff Latimer b367e902c9 usp10: Check that there are sufficient script_items before setting the last pointer. 2010-04-27 14:38:03 -05: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 51bbd9299f usp10: Have ScriptShape respect fLogicalOrder and fRTL when ordering glyphs. 2010-04-15 14:18:04 +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
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
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 0af0bafd6a usp10: Remove an unneeded check. 2009-04-10 11:21:39 +02: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
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 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
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
Aric Stewart 73bec11865 usp10: Do not crash in ScriptPlace if pABC is null. 2007-04-25 11:49:54 +02:00
Hans Leidekker df2c8a2551 usp10: Implement ScriptGetLogicalWidths. 2007-02-19 12:40:19 +01:00
Hans Leidekker dfcdbba181 usp10: Document ScriptPlace and ScriptShape. 2007-01-24 11:57:53 +01:00
Hans Leidekker 06ed81ecc0 usp10: Move text metrics into the script cache. Start using accessor functions. 2007-01-24 11:57:44 +01:00
Hans Leidekker fb46c5f1c1 usp10: Initialise the caller supplied ABC structure in ScriptPlace.
Fixes a regression found by Lei Zhang.
2007-01-12 20:41:02 +01:00
Hans Leidekker 586e16de76 usp10: Document ScriptItemize. Get rid of the remaining tabs. 2007-01-04 09:51:45 +01:00
Hans Leidekker f152153f15 usp10: Implement and test ScriptStringGetOrder and ScriptString_pcOutChars. 2007-01-04 09:51:30 +01:00
Hans Leidekker e0c38fd10f usp10: Use macro functions for memory allocation and start checking for allocation failures. 2007-01-04 09:51:14 +01:00