200 Commits

Author SHA1 Message Date
Nikolay Sivov
b4592cbc7c dwrite: Count last cluster length too when building a line. 2015-06-19 17:01:17 +09:00
Nikolay Sivov
e8c4951a2a dwrite: Actually set isWhitespace for space clusters. 2015-06-19 17:01:15 +09:00
Nikolay Sivov
f68f63152f dwrite: Set cluster length together with other metrics. 2015-06-19 17:01:12 +09:00
Nikolay Sivov
0ec13316a7 dwrite: Validate format property values. 2015-06-16 16:50:22 +09:00
Nikolay Sivov
b7fb00e9aa dwrite: Fix the way drawing effects are reported for inline objects. 2015-06-15 15:29:04 +09:00
Nikolay Sivov
6fd4f963f6 dwrite: Initial implementation of Draw() for trimming sign. 2015-06-15 15:29:03 +09:00
Nikolay Sivov
6304a0f50a dwrite: Check format directions in CreateEllipsisTrimmingSign(). 2015-06-15 15:29:03 +09:00
Nikolay Sivov
de2ae5e1b8 dwrite: Fix splitted range length, initial test for GetMetrics(). 2015-06-15 15:29:03 +09:00
Nikolay Sivov
1a2d520ee1 dwrite: Exit earlier when setting property for zero length range. 2015-06-09 22:09:57 +09:00
Nikolay Sivov
ffeba2348a dwrite: Use [0,~0u) as initial range for strikethrough settings. 2015-06-09 22:09:57 +09:00
Nikolay Sivov
7be1159479 dwrite: Validate per-range attribute values. 2015-06-08 15:47:41 +09:00
Nikolay Sivov
496aec11e5 dwrite: Use [0,~0u) as initial text range. 2015-06-08 15:47:39 +09:00
Nikolay Sivov
fc3ec14404 dwrite/tests: Some tests for setting per-range layout properties. 2015-06-05 18:38:43 +09:00
Nikolay Sivov
b8e3fbe0c1 dwrite: Report strikethrough ranges to renderer. 2015-06-05 18:38:38 +09:00
Nikolay Sivov
e31881a6c9 dwrite: Store strikethrough settings in a separate list. 2015-06-05 18:38:32 +09:00
Nikolay Sivov
6d87a451a2 dwrite: Added a range data header to distinguish range kinds. 2015-06-05 18:38:29 +09:00
Nikolay Sivov
6f99f196fc dwrite: Fix potential null pointer access in GetFontCollection() (Coverity). 2015-06-04 15:55:29 +09:00
Nikolay Sivov
9351596538 dwrite: Fix potential null pointer dereference in GetInlineObject() (Coverity). 2015-06-02 20:53:43 +09:00
Nikolay Sivov
c230b32777 dwrite: Handle GetBreakConditions() failure. 2015-06-01 14:48:33 +09:00
Nikolay Sivov
10ff42097f dwrite: Handle inline object GetMetrics() failure. 2015-06-01 14:48:29 +09:00
Nikolay Sivov
fe2f6b77a8 dwrite: Properly report drawing effect in DrawGlyphRun()/DrawInlineObject(). 2015-06-01 14:48:25 +09:00
Nikolay Sivov
89e1a5fb75 dwrite: Fix wrong run data reported to a renderer. 2015-06-01 14:48:21 +09:00
Nikolay Sivov
2099b109ea dwrite: Report inline objects in Draw(). 2015-06-01 14:48:15 +09:00
Nikolay Sivov
76577c8e4b dwrite: Fix breakpoint update logic. 2015-05-25 21:43:17 +09:00
Nikolay Sivov
90ed96a766 dwrite: Fix splitting by bidi levels. 2015-05-22 18:04:45 +09:00
Nikolay Sivov
38775875c7 dwrite: Initial implementation of Draw(). 2015-05-05 23:15:30 +09:00
Nikolay Sivov
4fa8d3a444 dwrite: Improve run tracing format. 2015-05-01 17:39:22 +09:00
Nikolay Sivov
1d815a2801 dwrite: Fix typo in SetStrikethrough(). 2015-05-01 17:39:20 +09:00
Nikolay Sivov
d7a40fd298 dwrite: Track a run this cluster came from. 2015-04-23 20:43:20 +09:00
Nikolay Sivov
68edc995c5 dwrite: Set some more cluster properties. 2015-04-23 20:43:20 +09:00
Nikolay Sivov
b16432f2c2 dwrite: Add cluster metrics entry for inline objects too. 2015-04-06 12:09:03 +09:00
Nikolay Sivov
0c116d7736 dwrite: Fix cluster width and length calculation. 2015-04-03 20:51:46 +09:00
Nikolay Sivov
8303199cbe dwrite: Initial implementation of DetermineMinWidth(). 2015-03-30 19:10:27 +09:00
Nikolay Sivov
93a21a8b57 dwrite: Pass sideways run flag to shaping methods. 2015-03-27 00:12:07 +09:00
Nikolay Sivov
437fb07438 dwrite: Forward IDWriteTextLayout::GetMetrics() to IDWriteTextLayout2::GetMetrics(). 2015-03-24 18:16:42 +09:00
Nikolay Sivov
da1d6097ed dwrite: Remove unused helper. 2015-03-18 19:36:39 +09:00
Nikolay Sivov
fa1fe44c34 dwrite: Implement SetFontFallback(). 2015-03-17 14:19:42 +09:00
Nikolay Sivov
c2c3001387 dwrite: Allow to query for IDWriteTextFormat1 from layout. 2015-03-17 14:19:36 +09:00
Nikolay Sivov
947f8e64d5 dwrite: Initially format and layout don't have a fallback set. 2015-03-17 14:19:22 +09:00
Nikolay Sivov
e6ce0e9f26 dwrite: Fix GetClusterMetrics() return value. 2015-03-13 21:57:29 +09:00
Nikolay Sivov
8a46a01008 dwrite: Store vertical orientation property. 2015-03-13 21:57:28 +09:00
Nikolay Sivov
672aae654e dwrite: Store pair kerning range attribute. 2015-03-13 21:57:28 +09:00
Nikolay Sivov
985bff76be dwrite: Fix excessive refcount increment when setting interface pointers as range attributes. 2015-03-12 13:56:35 +09:00
Nikolay Sivov
c1ecf862a4 dwrite: Make a deep copy of family name string (Valgrind). 2015-03-12 13:56:28 +09:00
Nikolay Sivov
e292385fcd dwrite: Implement GetClusterMetrics(). 2015-01-20 17:52:18 +01:00
Nikolay Sivov
0ee49eb4c8 dwrite: Initial support of cluster metrics computation. 2015-01-20 17:52:16 +01:00
Nikolay Sivov
13083dcd52 dwrite: Use gdi-compatible placements in case of gdi-compatible layouts. 2015-01-09 11:50:22 +01:00
Nikolay Sivov
05fd95e5e4 dwrite: Store additional properties for gdi-compatible layouts. 2015-01-09 11:50:20 +01:00
Nikolay Sivov
b03d4c7a8f dwrite: Set glyph advances and offsets for each run. 2015-01-08 13:12:18 +01:00
Nikolay Sivov
b49a71416d dwrite: Store cluster map and glyph indices for each run. 2015-01-08 13:12:16 +01:00