1
0
mirror of https://github.com/OpenTTD/OpenTTD.git synced 2025-08-13 09:39:10 +00:00

Add: [Win32] Text layout using the native Windows Uniscribe library.

Uniscribe is sometimes producing different results compared to ICU, especially
when RTL and LTR content is mixed. Comparing the results to other programs
(like editors or web browsers) leads me to believe that the result are at least
not worse than ICU and possibly better.
This commit is contained in:
Michael Lutz
2018-05-26 16:13:12 +02:00
parent a4278c302b
commit 768a31bfe3
15 changed files with 651 additions and 5 deletions

View File

@@ -631,6 +631,7 @@
<ClInclude Include="..\src\string_base.h" />
<ClInclude Include="..\src\string_func.h" />
<ClInclude Include="..\src\string_type.h" />
<ClInclude Include="..\src\os\windows\string_uniscribe.h" />
<ClInclude Include="..\src\stringfilter_type.h" />
<ClInclude Include="..\src\strings_func.h" />
<ClInclude Include="..\src\strings_type.h" />
@@ -1303,6 +1304,7 @@
<ClCompile Include="..\src\sound\xaudio2_s.cpp" />
<ClCompile Include="..\src\os\windows\crashlog_win.cpp" />
<ResourceCompile Include="..\src\os\windows\ottdres.rc" />
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp" />
<ClCompile Include="..\src\os\windows\win32.cpp" />
<ClInclude Include="..\src\thread\thread.h" />
<ClCompile Include="..\src\thread\thread_win32.cpp" />

View File

@@ -1050,6 +1050,9 @@
<ClInclude Include="..\src\string_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\os\windows\string_uniscribe.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\stringfilter_type.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -3066,6 +3069,9 @@
<ResourceCompile Include="..\src\os\windows\ottdres.rc">
<Filter>Windows files</Filter>
</ResourceCompile>
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp">
<Filter>Windows files</Filter>
</ClCompile>
<ClCompile Include="..\src\os\windows\win32.cpp">
<Filter>Windows files</Filter>
</ClCompile>

View File

@@ -652,6 +652,7 @@
<ClInclude Include="..\src\string_base.h" />
<ClInclude Include="..\src\string_func.h" />
<ClInclude Include="..\src\string_type.h" />
<ClInclude Include="..\src\os\windows\string_uniscribe.h" />
<ClInclude Include="..\src\stringfilter_type.h" />
<ClInclude Include="..\src\strings_func.h" />
<ClInclude Include="..\src\strings_type.h" />
@@ -1324,6 +1325,7 @@
<ClCompile Include="..\src\sound\xaudio2_s.cpp" />
<ClCompile Include="..\src\os\windows\crashlog_win.cpp" />
<ResourceCompile Include="..\src\os\windows\ottdres.rc" />
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp" />
<ClCompile Include="..\src\os\windows\win32.cpp" />
<ClInclude Include="..\src\thread\thread.h" />
<ClCompile Include="..\src\thread\thread_win32.cpp" />

View File

@@ -1050,6 +1050,9 @@
<ClInclude Include="..\src\string_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\os\windows\string_uniscribe.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\stringfilter_type.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -3066,6 +3069,9 @@
<ResourceCompile Include="..\src\os\windows\ottdres.rc">
<Filter>Windows files</Filter>
</ResourceCompile>
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp">
<Filter>Windows files</Filter>
</ClCompile>
<ClCompile Include="..\src\os\windows\win32.cpp">
<Filter>Windows files</Filter>
</ClCompile>

View File

@@ -652,6 +652,7 @@
<ClInclude Include="..\src\string_base.h" />
<ClInclude Include="..\src\string_func.h" />
<ClInclude Include="..\src\string_type.h" />
<ClInclude Include="..\src\os\windows\string_uniscribe.h" />
<ClInclude Include="..\src\stringfilter_type.h" />
<ClInclude Include="..\src\strings_func.h" />
<ClInclude Include="..\src\strings_type.h" />
@@ -1324,6 +1325,7 @@
<ClCompile Include="..\src\sound\xaudio2_s.cpp" />
<ClCompile Include="..\src\os\windows\crashlog_win.cpp" />
<ResourceCompile Include="..\src\os\windows\ottdres.rc" />
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp" />
<ClCompile Include="..\src\os\windows\win32.cpp" />
<ClInclude Include="..\src\thread\thread.h" />
<ClCompile Include="..\src\thread\thread_win32.cpp" />

View File

@@ -1050,6 +1050,9 @@
<ClInclude Include="..\src\string_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\os\windows\string_uniscribe.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\stringfilter_type.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -3066,6 +3069,9 @@
<ResourceCompile Include="..\src\os\windows\ottdres.rc">
<Filter>Windows files</Filter>
</ResourceCompile>
<ClCompile Include="..\src\os\windows\string_uniscribe.cpp">
<Filter>Windows files</Filter>
</ClCompile>
<ClCompile Include="..\src\os\windows\win32.cpp">
<Filter>Windows files</Filter>
</ClCompile>

View File

@@ -1710,6 +1710,10 @@
RelativePath=".\..\src\string_type.h"
>
</File>
<File
RelativePath=".\..\src\os\windows\string_uniscribe.h"
>
</File>
<File
RelativePath=".\..\src\stringfilter_type.h"
>
@@ -4518,6 +4522,10 @@
RelativePath=".\..\src\os\windows\ottdres.rc"
>
</File>
<File
RelativePath=".\..\src\os\windows\string_uniscribe.cpp"
>
</File>
<File
RelativePath=".\..\src\os\windows\win32.cpp"
>

View File

@@ -1707,6 +1707,10 @@
RelativePath=".\..\src\string_type.h"
>
</File>
<File
RelativePath=".\..\src\os\windows\string_uniscribe.h"
>
</File>
<File
RelativePath=".\..\src\stringfilter_type.h"
>
@@ -4515,6 +4519,10 @@
RelativePath=".\..\src\os\windows\ottdres.rc"
>
</File>
<File
RelativePath=".\..\src\os\windows\string_uniscribe.cpp"
>
</File>
<File
RelativePath=".\..\src\os\windows\win32.cpp"
>