Updated Release Notes for MiniGUI 4.0.0 (markdown)

Vincent Wei
2019-07-16 09:15:06 +08:00
parent 24b127be41
commit 9e231372ef
@@ -1,4 +1,8 @@
## Overview
## 4.0.0
MiniGUI 4.0.0 was released at July 15, 2019.
### Overview
In this version, we mainly enhanced and tuned the APIs related to text
rendering in order that MiniGUI can handle complex writing systems
@@ -42,7 +46,7 @@ chunk allocation.
The following sections will describe these new features in detail.
## New APIs conforming Unicode 12.0
### New APIs conforming Unicode 12.0
* New types:
1. `Uchar32`: the Unicode code point value of a Unicode character.
@@ -90,7 +94,7 @@ conversion, such as from lower case to upper case, single width to
full width. Please see MiniGUI API reference document for the detailed
description.
## New APIs for complex or mixed scripts
### New APIs for complex or mixed scripts
To lay out, shape, and render a text in mixed scripts, you should call
`GetUCharsUntilParagraphBoundary` function first to convert
@@ -156,7 +160,7 @@ in the following respects:
basic shaping engine and other is the complex shaping engine based
on HarfBuzz. The former can be used for some simple applications.
## Enhanced logical font APIs
### Enhanced logical font APIs
The styles of LOGFONT changed.
@@ -249,7 +253,7 @@ the glyph orientation:
- 'D': Glyphs are upside-down.
- 'L': Glyphs are rotated 90 degrees counter-clockwise (sideways left).
## Support for Linux DRI/DRM
### Support for Linux DRI/DRM
In order to support modern graphics card or GPU, we introduced a
new NEWGAL engine of `dri`. The developer can use this engine to
@@ -320,7 +324,7 @@ may need the root privilege to call `drmSetMaster` to set the video mode.
However, under MiniGUI-Processes run-time mode, only the server (`mginit`) will
need this privilege when you use the future `dri` engine.
#### Extra input messages
### Extra input messages
In MiniGUI 4.0.0, we introduce the extra input messages to support modern
input devices including multiple touch panel, gesture, tablet tool, and
@@ -424,7 +428,7 @@ are not implemented:
- `tablet_pad`
- `switch`
## Slice allocator
### Slice allocator
MiniGUI now provides an efficient way to allocate groups of equal-sized
chunks of memory.
@@ -446,7 +450,7 @@ We use the slice allocator when laying out the text in complex scripts.
Note that this implementation is derived from LGPL'd glib.
## Other Enhancements
### Other Enhancements
* A new BITMAP type `BMP_TYPE_REPLACEKEY` was added. When `bmType` of
a BITMAP object has this bit set, any pixel which is equal to
@@ -461,7 +465,7 @@ is re-defined to be 250.
* Support for GCC 7.
## Backward compatibility issues
### Backward compatibility issues
In MiniGUI 4.0.0, we changed some unreasonable APIs which were introduced
in early versions. There are also other changes broke the backward
@@ -515,7 +519,7 @@ if you want to get the height and descent data of one font.
The the basic glyph type and break type have been removed from GLYPHINFO
structure. You should use `GetACharType` instead.
## Deprecated features
### Deprecated features
Support for FreeType1 was removed.