[ros-dev] [ros-diffs] [dchapyshev] 40644: - Add Font Embedding Dll (it is necessary for Iron and Chrome)
Aleksey Bragin
aleksey at reactos.org
Wed Apr 22 13:38:48 CEST 2009
I checked too - indeed Iron browser statically links to t2embed.dll.
It's Wine's fault to not have it and not supporting at least that app :)
WBR,
Aleksey.
On Apr 22, 2009, at 2:49 PM, Dmitry Chapyshev wrote:
> I did not check Chrome, but Iron is not started without this dll.
> This dll is available since NT 4.0 and 95. All functions in it are
> documented.
> I do not see the reasons not to have this dll.
>
> On Wed, 22 Apr 2009 13:27:26 +0400, Ged <gedmurphy at gmail.com> wrote:
>
>> Wine have been running Google Chrome for a while now.
>> Why don’t they have this dll if it's necessary????
>>
>> Ged.
>>
>>
>>
>> -----Original Message-----
>> From: ros-diffs-bounces at reactos.org
>> [mailto:ros-diffs-bounces at reactos.org] On Behalf Of
>> dchapyshev at svn.reactos.org
>> Sent: 22 April 2009 09:51
>> To: ros-diffs at reactos.org
>> Subject: [ros-diffs] [dchapyshev] 40644: - Add Font Embedding Dll
>> (it is
>> necessary for Iron and Chrome)
>>
>> Author: dchapyshev
>> Date: Wed Apr 22 12:51:09 2009
>> New Revision: 40644
>>
>> URL: http://svn.reactos.org/svn/reactos?rev=40644&view=rev
>> Log:
>> - Add Font Embedding Dll (it is necessary for Iron and Chrome)
>>
>> Added:
>> trunk/reactos/dll/win32/t2embed/ (with props)
>> trunk/reactos/dll/win32/t2embed/t2embed.c (with props)
>> trunk/reactos/dll/win32/t2embed/t2embed.rbuild (with props)
>> trunk/reactos/dll/win32/t2embed/t2embed.rc (with props)
>> trunk/reactos/dll/win32/t2embed/t2embed.spec (with props)
>> trunk/reactos/include/psdk/t2embapi.h (with props)
>> Modified:
>> trunk/reactos/baseaddress.rbuild
>> trunk/reactos/boot/bootdata/packages/reactos.dff
>> trunk/reactos/dll/win32/win32.rbuild
>>
>> Modified: trunk/reactos/baseaddress.rbuild
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/
>> baseaddress.rbuild?rev=40644&r1=40643&r2=40644&view=diff
>> =====================================================================
>> =========
>> --- trunk/reactos/baseaddress.rbuild [iso-8859-1] (original)
>> +++ trunk/reactos/baseaddress.rbuild [iso-8859-1] Wed Apr 22 12:51:09
>> 2009
>> @@ -13,6 +13,7 @@
>> <property name="BASEADDRESS_WLANAPI" value="0x470F0000" />
>> <property name="BASEADDRESS_PIDGEN" value="0x473e0000" />
>> <property name="BASEADDRESS_DWMAPI" value="0x4A3F0000" />
>> + <property name="BASEADDRESS_T2EMBED" value="0x4b310000" />
>> <property name="BASEADDRESS_LOADPERF" value="0x4B920000" />
>> <property name="BASEADDRESS_MPRAPI" value="0x4C400000" />
>> <property name="BASEADDRESS_MSFTEDIT" value="0x4b460000" />
>>
>> Modified: trunk/reactos/boot/bootdata/packages/reactos.dff
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/
>> packages/reactos.dff?rev=40644&r1=40643&r2=40644&view=diff
>> =====================================================================
>> =========
>> --- trunk/reactos/boot/bootdata/packages/reactos.dff [iso-8859-1]
>> (original)
>> +++ trunk/reactos/boot/bootdata/packages/reactos.dff [iso-8859-1] Wed
>> Apr 22 12:51:09 2009
>> @@ -412,6 +412,7 @@
>> dll\win32\sti\sti.dll 1
>> dll\win32\sxs\sxs.dll 1
>> dll\win32\syssetup\syssetup.dll 1
>> +dll\win32\t2embed\t2embed.dll 1
>> dll\win32\tapi32\tapi32.dll 1
>> dll\win32\tapiui\tapiui.dll 1
>> dll\win32\traffic\traffic.dll 1
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/
>> ---------------------------------------------------------------------
>> ---------
>> --- bugtraq:logregex (added)
>> +++ bugtraq:logregex Wed Apr 22 12:51:09 2009
>> @@ -1,0 +1,2 @@
>> +([Ii]ssue|[Bb]ug)s? #?(\d+)(,? ?#?(\d+))*(,? ?(and |or )?#?(\d+))?
>> +(\d+)
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/
>> ---------------------------------------------------------------------
>> ---------
>> bugtraq:message = See issue #%BUGID% for more details.
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/
>> ---------------------------------------------------------------------
>> ---------
>> bugtraq:url = http://www.reactos.org/bugzilla/show_bug.cgi?id=%
>> BUGID%
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/
>> ---------------------------------------------------------------------
>> ---------
>> tsvn:logminsize = 10
>>
>> Added: trunk/reactos/dll/win32/t2embed/t2embed.c
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/t2embed/
>> t2embed.c?rev=40644&view=auto
>> =====================================================================
>> =========
>> --- trunk/reactos/dll/win32/t2embed/t2embed.c (added)
>> +++ trunk/reactos/dll/win32/t2embed/t2embed.c [iso-8859-1] Wed Apr 22
>> 12:51:09 2009
>> @@ -1,0 +1,205 @@
>> +/*
>> + * PROJECT: Font Embedding Dll
>> + * FILE: dll\win32\t2embed\t2embed.c
>> + * PURPOSE: Main file
>> + * PROGRAMMERS: Dmitry Chapyshev (dmitry at reactos.org)
>> + */
>> +
>> +#include <windows.h>
>> +#include <t2embapi.h>
>> +#include "wine/debug.h"
>> +
>> +WINE_DEFAULT_DEBUG_CHANNEL(t2embed);
>> +
>> +LONG
>> +WINAPI
>> +TTCharToUnicode(HDC hDC,
>> + UCHAR* pucCharCodes,
>> + ULONG ulCharCodeSize,
>> + USHORT* pusShortCodes,
>> + ULONG ulShortCodeSize,
>> + ULONG ulFlags)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTDeleteEmbeddedFont(HANDLE hFontReference,
>> + ULONG ulFlags,
>> + ULONG* pulStatus)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFont(HDC hDC,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + USHORT* pusCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFontFromFileA(HDC hDC,
>> + LPCSTR szFontFileName,
>> + USHORT usTTCIndex,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + USHORT* pusCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTEnableEmbeddingForFacename(LPSTR lpszFacename,
>> + BOOL bEnable)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTGetEmbeddedFontInfo(ULONG ulFlags,
>> + ULONG* pulPrivStatus,
>> + ULONG ulPrivs,
>> + ULONG* pulStatus,
>> + READEMBEDPROC lpfnReadFromStream,
>> + LPVOID lpvReadStream,
>> + TTLOADINFO* pTTLoadInfo)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTGetEmbeddingType(HDC hDC,
>> + ULONG* pulPrivStatus)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTIsEmbeddingEnabled(HDC hDC,
>> + BOOL* pbEnabled)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTIsEmbeddingEnabledForFacename(LPSTR lpszFacename,
>> + BOOL* pbEnabled)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTLoadEmbeddedFont(HANDLE *phFontReference,
>> + ULONG ulFlags,
>> + ULONG* pulPrivStatus,
>> + ULONG ulPrivs,
>> + ULONG* pulStatus,
>> + READEMBEDPROC lpfnReadFromStream,
>> + LPVOID lpvReadStream,
>> + LPWSTR szWinFamilyName,
>> + LPSTR szMacFamilyName,
>> + TTLOADINFO* pTTLoadInfo)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTRunValidationTests(HDC hDC,
>> + TTVALIDATIONTESTPARAMS* pTestParam)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFontEx(HDC hDC,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + ULONG* pulCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTRunValidationTestsEx(HDC hDC,
>> + TTVALIDATIONTESTPARAMSEX* pTestParam)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +LONG
>> +WINAPI
>> +TTGetNewFontName(HANDLE* phFontReference,
>> + LPWSTR szWinFamilyName,
>> + long cchMaxWinName,
>> + LPSTR szMacFamilyName,
>> + long cchMaxMacName)
>> +{
>> + UNIMPLEMENTED;
>> + return E_NONE;
>> +}
>> +
>> +
>> +BOOL
>> +WINAPI
>> +DllMain(IN HINSTANCE hinstDLL,
>> + IN DWORD dwReason,
>> + IN LPVOID lpvReserved)
>> +{
>> + switch (dwReason)
>> + {
>> + case DLL_PROCESS_ATTACH:
>> + DisableThreadLibraryCalls(hinstDLL);
>> + break;
>> + }
>> +
>> + return TRUE;
>> +}
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/t2embed.c
>> ---------------------------------------------------------------------
>> ---------
>> svn:eol-style = native
>>
>> Added: trunk/reactos/dll/win32/t2embed/t2embed.rbuild
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/t2embed/
>> t2embed.rbuild?rev=40644&view=auto
>> =====================================================================
>> =========
>> --- trunk/reactos/dll/win32/t2embed/t2embed.rbuild (added)
>> +++ trunk/reactos/dll/win32/t2embed/t2embed.rbuild [iso-8859-1]
>> Wed Apr
>> 22 12:51:09 2009
>> @@ -1,0 +1,13 @@
>> +<module name="t2embed" type="win32dll"
>> baseaddress="${BASEADDRESS_T2EMBED}" installbase="system32"
>> installname="t2embed.dll" unicode="yes">
>> + <importlibrary definition="t2embed.spec" />
>> + <include base="t2embed">.</include>
>> + <include base="ReactOS">include/reactos/wine</include>
>> + <library>kernel32</library>
>> + <library>gdi32</library>
>> + <library>user32</library>
>> + <library>advapi32</library>
>> + <library>version</library>
>> + <library>wine</library>
>> + <file>t2embed.c</file>
>> + <file>t2embed.rc</file>
>> +</module>
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/t2embed.rbuild
>> ---------------------------------------------------------------------
>> ---------
>> svn:eol-style = native
>>
>> Added: trunk/reactos/dll/win32/t2embed/t2embed.rc
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/t2embed/
>> t2embed.rc?rev=40644&view=auto
>> =====================================================================
>> =========
>> --- trunk/reactos/dll/win32/t2embed/t2embed.rc (added)
>> +++ trunk/reactos/dll/win32/t2embed/t2embed.rc [iso-8859-1] Wed
>> Apr 22
>> 12:51:09 2009
>> @@ -1,0 +1,7 @@
>> +#include <windows.h>
>> +
>> +#define REACTOS_VERSION_DLL
>> +#define REACTOS_STR_FILE_DESCRIPTION "Font Embedding Dll\0"
>> +#define REACTOS_STR_INTERNAL_NAME "t2embed\0"
>> +#define REACTOS_STR_ORIGINAL_FILENAME "t2embed.dll\0"
>> +#include <reactos/version.rc>
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/t2embed.rc
>> ---------------------------------------------------------------------
>> ---------
>> svn:eol-style = native
>>
>> Added: trunk/reactos/dll/win32/t2embed/t2embed.spec
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/t2embed/
>> t2embed.spec?rev=40644&view=auto
>> =====================================================================
>> =========
>> --- trunk/reactos/dll/win32/t2embed/t2embed.spec (added)
>> +++ trunk/reactos/dll/win32/t2embed/t2embed.spec [iso-8859-1] Wed
>> Apr 22
>> 12:51:09 2009
>> @@ -1,0 +1,25 @@
>> +@ stdcall TTCharToUnicode(ptr ptr long ptr long long)
>> +@ stdcall TTDeleteEmbeddedFont(ptr long ptr)
>> +@ stdcall TTEmbedFont(ptr long long ptr ptr ptr ptr ptr long long
>> ptr)
>> +@ stdcall TTEmbedFontFromFileA(ptr str long long long ptr ptr ptr
>> ptr
>> ptr long long ptr)
>> +@ stdcall TTEnableEmbeddingForFacename(str long)
>> +@ stdcall TTGetEmbeddedFontInfo(long ptr long ptr ptr ptr ptr)
>> +@ stdcall TTGetEmbeddingType(ptr ptr)
>> +@ stdcall TTIsEmbeddingEnabled(ptr ptr)
>> +@ stdcall TTIsEmbeddingEnabledForFacename(str ptr)
>> +@ stdcall TTLoadEmbeddedFont(ptr long ptr long ptr ptr ptr wstr
>> str ptr)
>> +@ stdcall TTRunValidationTests(ptr ptr)
>> +@ stub _TTCharToUnicode at 24
>> +@ stub _TTDeleteEmbeddedFont at 12
>> +@ stub _TTEmbedFont at 44
>> +@ stub _TTEmbedFontFromFileA at 52
>> +@ stub _TTEnableEmbeddingForFacename at 8
>> +@ stub _TTGetEmbeddedFontInfo at 28
>> +@ stub _TTGetEmbeddingType at 8
>> +@ stub _TTIsEmbeddingEnabled at 8
>> +@ stub _TTIsEmbeddingEnabledForFacename at 8
>> +@ stub _TTLoadEmbeddedFont at 40
>> +@ stub _TTRunValidationTests at 8
>> +@ stdcall TTEmbedFontEx(ptr long long ptr ptr ptr ptr ptr long
>> long ptr)
>> +@ stdcall TTRunValidationTestsEx(ptr ptr)
>> +@ stdcall TTGetNewFontName(ptr wstr long str long)
>>
>> Propchange: trunk/reactos/dll/win32/t2embed/t2embed.spec
>> ---------------------------------------------------------------------
>> ---------
>> svn:eol-style = native
>>
>> Modified: trunk/reactos/dll/win32/win32.rbuild
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/
>> win32.rbuild?rev=40644&r1=40643&r2=40644&view=diff
>> =====================================================================
>> =========
>> --- trunk/reactos/dll/win32/win32.rbuild [iso-8859-1] (original)
>> +++ trunk/reactos/dll/win32/win32.rbuild [iso-8859-1] Wed Apr 22
>> 12:51:09 2009
>> @@ -511,6 +511,9 @@
>> <directory name="syssetup">
>> <xi:include href="syssetup/syssetup.rbuild" />
>> </directory>
>> +<directory name="t2embed">
>> + <xi:include href="t2embed/t2embed.rbuild" />
>> +</directory>
>> <directory name="tapi32">
>> <xi:include href="tapi32/tapi32.rbuild" />
>> </directory>
>>
>> Added: trunk/reactos/include/psdk/t2embapi.h
>> URL:
>> http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/
>> t2embapi.h?rev=40644&view=auto
>> =====================================================================
>> =========
>> --- trunk/reactos/include/psdk/t2embapi.h (added)
>> +++ trunk/reactos/include/psdk/t2embapi.h [iso-8859-1] Wed Apr 22
>> 12:51:09 2009
>> @@ -1,0 +1,286 @@
>> +#ifndef __T2EMBED_API_H
>> +#define __T2EMBED_API_H
>> +
>> +#ifndef CHARSET_UNICODE
>> +#define CHARSET_UNICODE 1
>> +#define CHARSET_DEFAULT 1
>> +#define CHARSET_SYMBOL 2
>> +#define CHARSET_GLYPHIDX 3
>> +#endif
>> +
>> +#ifndef EMBED_PREVIEWPRINT
>> +#define EMBED_PREVIEWPRINT 1
>> +#define EMBED_EDITABLE 2
>> +#define EMBED_INSTALLABLE 3
>> +#define EMBED_NOEMBEDDING 4
>> +#endif
>> +
>> +#ifndef LICENSE_INSTALLABLE
>> +#define LICENSE_INSTALLABLE 0x0
>> +#define LICENSE_DEFAULT 0x0
>> +#define LICENSE_NOEMBEDDING 0x2
>> +#define LICENSE_PREVIEWPRINT 0x4
>> +#define LICENSE_EDITABLE 0x8
>> +#endif
>> +
>> +#ifndef TTEMBED_RAW
>> +#define TTEMBED_RAW 0x0
>> +#define TTEMBED_SUBSET 0x1
>> +#define TTEMBED_TTCOMPRESSED 0x4
>> +#define TTEMBED_FAILIFVARIATIONSIMULATED 0x10
>> +#define TTEMBED_EMBEDEUDC 0x20
>> +#define TTEMBED_VALIDATIONTESTS 0x40
>> +#define TTEMBED_WEBOBJECT 0x80
>> +#define TTEMBED_ENCRYPTDATA 0x10000000
>> +#endif
>> +
>> +#ifndef E_NONE
>> +#define E_NONE 0x0
>> +#endif
>> +
>> +#ifndef E_CHARCODECOUNTINVALID
>> +#define E_CHARCODECOUNTINVALID 0x2
>> +#define E_CHARCODESETINVALID 0x3
>> +#define E_DEVICETRUETYPEFONT 0x4
>> +#define E_HDCINVALID 0x6
>> +#define E_NOFREEMEMORY 0x7
>> +#define E_FONTREFERENCEINVALID 0x8
>> +#define E_NOTATRUETYPEFONT 0xA
>> +#define E_ERRORACCESSINGFONTDATA 0xC
>> +#define E_ERRORACCESSINGFACENAME 0xD
>> +#define E_ERRORUNICODECONVERSION 0x11
>> +#define E_ERRORCONVERTINGCHARS 0x12
>> +#define E_EXCEPTION 0x13
>> +#define E_RESERVEDPARAMNOTNULL 0x14
>> +#define E_CHARSETINVALID 0x15
>> +#define E_WIN32S_NOTSUPPORTED 0x16
>> +#define E_FILE_NOT_FOUND 0x17
>> +#define E_TTC_INDEX_OUT_OF_RANGE 0x18
>> +#define E_INPUTPARAMINVALID 0x19
>> +#endif
>> +
>> +#ifndef E_ERRORCOMPRESSINGFONTDATA
>> +#define E_ERRORCOMPRESSINGFONTDATA 0x100
>> +#define E_FONTDATAINVALID 0x102
>> +#define E_NAMECHANGEFAILED 0x103
>> +#define E_FONTNOTEMBEDDABLE 0x104
>> +#define E_PRIVSINVALID 0x105
>> +#define E_SUBSETTINGFAILED 0x106
>> +#define E_READFROMSTREAMFAILED 0x107
>> +#define E_SAVETOSTREAMFAILED 0x108
>> +#define E_NOOS2 0x109
>> +#define E_T2NOFREEMEMORY 0x10A
>> +#define E_ERRORREADINGFONTDATA 0x10B
>> +#define E_FLAGSINVALID 0x10C
>> +#define E_ERRORCREATINGFONTFILE 0x10D
>> +#define E_FONTALREADYEXISTS 0x10E
>> +#define E_FONTNAMEALREADYEXISTS 0x10F
>> +#define E_FONTINSTALLFAILED 0x110
>> +#define E_ERRORDECOMPRESSINGFONTDATA 0x111
>> +#define E_ERRORACCESSINGEXCLUDELIST 0x112
>> +#define E_FACENAMEINVALID 0x113
>> +#define E_STREAMINVALID 0x114
>> +#define E_STATUSINVALID 0x115
>> +#define E_PRIVSTATUSINVALID 0x116
>> +#define E_PERMISSIONSINVALID 0x117
>> +#define E_PBENABLEDINVALID 0x118
>> +#define E_SUBSETTINGEXCEPTION 0x119
>> +#define E_SUBSTRING_TEST_FAIL 0x11A
>> +#define E_FONTVARIATIONSIMULATED 0x11B
>> +#define E_FONTVALIDATEFAIL 0x11C
>> +#define E_FONTFAMILYNAMENOTINFULL 0x11D
>> +#endif
>> +
>> +#ifndef E_ADDFONTFAILED
>> +#define E_ADDFONTFAILED 0x200
>> +#define E_COULDNTCREATETEMPFILE 0x201
>> +#define E_FONTFILECREATEFAILED 0x203
>> +#define E_WINDOWSAPI 0x204
>> +#define E_FONTFILENOTFOUND 0x205
>> +#define E_RESOURCEFILECREATEFAILED 0x206
>> +#define E_ERROREXPANDINGFONTDATA 0x207
>> +#define E_ERRORGETTINGDC 0x208
>> +#define E_EXCEPTIONINDECOMPRESSION 0x209
>> +#define E_EXCEPTIONINCOMPRESSION 0x20A
>> +#endif
>> +
>> +#ifdef __cplusplus
>> +extern "C" {
>> +#endif
>> +
>> +typedef unsigned long(WINAPIV *WRITEEMBEDPROC)
>> +(
>> + void* lpvWriteStream,
>> + const void* lpvBuffer,
>> + const unsigned long cbBuffer
>> +);
>> +
>> +typedef unsigned long(WINAPIV *READEMBEDPROC)
>> +(
>> + void* lpvReadStream,
>> + void* lpvBuffer,
>> + const unsigned long cbBuffer
>> +);
>> +
>> +
>> +typedef struct
>> +{
>> + unsigned long ulStructSize;
>> + long lTestFromSize;
>> + long lTestToSize;
>> + unsigned long ulCharSet;
>> + unsigned short usReserved1;
>> + unsigned short usCharCodeCount;
>> + unsigned short* pusCharCodeSet;
>> +} TTVALIDATIONTESTPARAMS;
>> +
>> +typedef struct
>> +{
>> + unsigned long ulStructSize;
>> + long lTestFromSize;
>> + long lTestToSize;
>> + unsigned long ulCharSet;
>> + unsigned short usReserved1;
>> + unsigned short usCharCodeCount;
>> + unsigned long* pulCharCodeSet;
>> +} TTVALIDATIONTESTPARAMSEX;
>> +
>> +typedef struct
>> +{
>> + unsigned short usStructSize;
>> + unsigned short usRootStrSize;
>> + unsigned short *pusRootStr;
>> +} TTEMBEDINFO;
>> +
>> +typedef struct
>> +{
>> + unsigned short usStructSize;
>> + unsigned short usRefStrSize;
>> + unsigned short *pusRefStr;
>> +} TTLOADINFO;
>> +
>> +LONG
>> +WINAPI
>> +TTCharToUnicode(HDC hDC,
>> + UCHAR* pucCharCodes,
>> + ULONG ulCharCodeSize,
>> + USHORT* pusShortCodes,
>> + ULONG ulShortCodeSize,
>> + ULONG ulFlags);
>> +
>> +LONG
>> +WINAPI
>> +TTDeleteEmbeddedFont(HANDLE hFontReference,
>> + ULONG ulFlags,
>> + ULONG* pulStatus);
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFont(HDC hDC,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + USHORT* pusCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo);
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFontFromFileA(HDC hDC,
>> + LPCSTR szFontFileName,
>> + USHORT usTTCIndex,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + USHORT* pusCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo);
>> +
>> +LONG
>> +WINAPI
>> +TTEnableEmbeddingForFacename(LPSTR lpszFacename,
>> + BOOL bEnable);
>> +
>> +LONG
>> +WINAPI
>> +TTGetEmbeddedFontInfo(ULONG ulFlags,
>> + ULONG* pulPrivStatus,
>> + ULONG ulPrivs,
>> + ULONG* pulStatus,
>> + READEMBEDPROC lpfnReadFromStream,
>> + LPVOID lpvReadStream,
>> + TTLOADINFO* pTTLoadInfo);
>> +
>> +LONG
>> +WINAPI
>> +TTGetEmbeddingType(HDC hDC,
>> + ULONG* pulPrivStatus);
>> +
>> +LONG
>> +WINAPI
>> +TTIsEmbeddingEnabled(HDC hDC,
>> + BOOL* pbEnabled);
>> +
>> +LONG
>> +WINAPI
>> +TTIsEmbeddingEnabledForFacename(LPSTR lpszFacename,
>> + BOOL* pbEnabled);
>> +
>> +LONG
>> +WINAPI
>> +TTLoadEmbeddedFont(HANDLE *phFontReference,
>> + ULONG ulFlags,
>> + ULONG* pulPrivStatus,
>> + ULONG ulPrivs,
>> + ULONG* pulStatus,
>> + READEMBEDPROC lpfnReadFromStream,
>> + LPVOID lpvReadStream,
>> + LPWSTR szWinFamilyName,
>> + LPSTR szMacFamilyName,
>> + TTLOADINFO* pTTLoadInfo);
>> +
>> +LONG
>> +WINAPI
>> +TTRunValidationTests(HDC hDC,
>> + TTVALIDATIONTESTPARAMS* pTestParam);
>> +
>> +LONG
>> +WINAPI
>> +TTEmbedFontEx(HDC hDC,
>> + ULONG ulFlags,
>> + ULONG ulCharSet,
>> + ULONG* pulPrivStatus,
>> + ULONG* pulStatus,
>> + WRITEEMBEDPROC lpfnWriteToStream,
>> + LPVOID lpvWriteStream,
>> + ULONG* pulCharCodeSet,
>> + USHORT usCharCodeCount,
>> + USHORT usLanguage,
>> + TTEMBEDINFO* pTTEmbedInfo);
>> +
>> +LONG
>> +WINAPI
>> +TTRunValidationTestsEx(HDC hDC,
>> + TTVALIDATIONTESTPARAMSEX* pTestParam);
>> +
>> +LONG
>> +WINAPI
>> +TTGetNewFontName(HANDLE* phFontReference,
>> + LPWSTR szWinFamilyName,
>> + long cchMaxWinName,
>> + LPSTR szMacFamilyName,
>> + long cchMaxMacName);
>> +
>> +#ifdef __cplusplus
>> + }
>> +#endif
>> +
>> +#endif /* __T2EMBED_API_H */
>>
>> Propchange: trunk/reactos/include/psdk/t2embapi.h
>> ---------------------------------------------------------------------
>> ---------
>> svn:eol-style = native
>>
>>
>> _______________________________________________
>> Ros-dev mailing list
>> Ros-dev at reactos.org
>> http://www.reactos.org/mailman/listinfo/ros-dev
>
>
>
> --
> WBR,
> Dmitry Chapyshev
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
More information about the Ros-dev
mailing list