31 if (lpString !=
NULL && cchString > 0)
87 for (; cStrings>0; cStrings--, pptxt++)
116 for (; cStrings>0; cStrings--, pptxt++)
296 DPRINT(
"nMaxExtent is invalid: %d\n", nMaxExtent);
386 StringA.
Length = cchString;
468 if (fuOptions & ETO_GLYPH_INDEX)
476 DPRINT1(
"ERROR: Should convert lpDx properly!\n");
505 if ( !lpDx && fuOptions &
ETO_PDY )
537 if (!(fuOptions & (ETO_GLYPH_INDEX | ETO_IGNORELANGUAGE)))
576 DPRINT(
"GdiBCExtTextOut nothing\n");
597 DxSize = (cwc *
sizeof(
INT)) * (fuOptions &
ETO_PDY ? 2 : 1);
669 if (pFaceName && cwcMax <= 0)
737 if (pszOut && !cwcMax)
758 DPRINT(
"GetFontResourceInfoW: dwType = %lu\n", dwType);
802 if (nCharExtra == 0x80000000)
829 return nOldCharExtra;
978 pdcattr->
cBreak = nBreakCount;
1054 if (bResult && petm)
ACPI_SIZE strlen(const char *String)
static const WCHAR nameW[]
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
#define NT_SUCCESS(StatCode)
#define ERROR_INVALID_PARAMETER
#define HeapFree(x, y, z)
#define WideCharToMultiByte
HDC WINAPI GdiConvertAndCheckDC(HDC hdc)
FORCEINLINE PVOID GdiAllocBatchCommand(HDC hdc, USHORT Cmd)
#define HANDLE_METADC16(_RetType, _Func, dwError, hdc,...)
#define HANDLE_METADC(_RetType, _Func, dwError, hdc,...)
NTSTATUS HEAP_strdupA2W(LPWSTR *ppszW, LPCSTR lpszA)
VOID FASTCALL FONT_TextMetricWToA(const TEXTMETRICW *ptmW, LPTEXTMETRICA ptmA)
BOOL WINAPI LoadLPK(INT LpkFunctionID)
VOID HEAP_free(LPVOID memory)
VOID WINAPI GdiSetLastError(DWORD dwErrCode)
LPKGTEP LpkGetTextExtentExPoint
FORCEINLINE PDC_ATTR GdiGetDcAttr(HDC hdc)
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
NTSYSAPI ULONG WINAPI RtlNtStatusToDosError(NTSTATUS)
static DWORD DWORD void LPSTR DWORD cch
static LPTEXTMETRICW lptm
#define _Out_writes_(size)
#define _In_reads_opt_(size)
#define _Out_writes_to_opt_(size, count)
NTSYSAPI BOOLEAN NTAPI RtlDosPathNameToNtPathName_U(_In_opt_z_ PCWSTR DosPathName, _Out_ PUNICODE_STRING NtPathName, _Out_opt_ PCWSTR *NtFileNamePart, _Out_opt_ PRTL_RELATIVE_NAME_U DirectoryInfo)
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
__kernel_entry W32KAPI DWORD APIENTRY NtGdiGetCharSet(_In_ HDC hdc)
__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextExtentExW(_In_ HDC hdc, _In_reads_opt_(cwc) LPWSTR pwsz, _In_ ULONG cwc, _In_ ULONG dxMax, _Out_opt_ ULONG *pcCh, _Out_writes_to_opt_(cwc, *pcCh) PULONG pdxOut, _Out_ LPSIZE psize, _In_ FLONG fl)
__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFlush(VOID)
__kernel_entry W32KAPI UINT APIENTRY NtGdiGetStringBitmapW(_In_ HDC hdc, _In_ LPWSTR pwsz, _In_ UINT cwc, _Out_writes_bytes_(cj) BYTE *lpSB, _In_ UINT cj)
__kernel_entry W32KAPI INT APIENTRY NtGdiGetTextCharsetInfo(_In_ HDC hdc, _Out_opt_ LPFONTSIGNATURE lpSig, _In_ DWORD dwFlags)
__kernel_entry W32KAPI INT APIENTRY NtGdiGetTextFaceW(_In_ HDC hdc, _In_ INT cChar, _Out_writes_to_opt_(cChar, return) LPWSTR pszOut, _In_ BOOL bAliasName)
__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextExtent(_In_ HDC hdc, _In_reads_(cwc) LPWSTR lpwsz, _In_ INT cwc, _Out_ LPSIZE psize, _In_ UINT flOpts)
_Must_inspect_result_ _Out_ LPSIZE psize
__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetFontResourceInfoInternalW(_In_reads_z_(cwc) LPWSTR pwszFiles, _In_ ULONG cwc, _In_ ULONG cFiles, _In_ UINT cjBuf, _Out_ LPDWORD pdwBytes, _Out_writes_bytes_(cjBuf) LPVOID pvBuf, _In_ DWORD iType)
__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetETM(_In_ HDC hdc, _Out_opt_ EXTTEXTMETRIC *petm)
__kernel_entry W32KAPI BOOL APIENTRY NtGdiExtTextOutW(_In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ UINT flOpts, _In_opt_ LPRECT prcl, _In_reads_opt_(cwc) LPWSTR pwsz, _In_range_(0, 0xffff) INT cwc, _In_reads_opt_(_Inexpressible_(cwc)) LPINT pdx, _In_ DWORD dwCodePage)
#define DC_FONTTEXT_DIRTY
struct _GDIBSTEXTOUT GDIBSTEXTOUT
struct _GDIBATCHHDR * PGDIBATCHHDR
GDI_TEB_BATCH GdiTebBatch
#define RtlCopyMemory(Destination, Source, Length)
BOOL WINAPI GetTextExtentPointI(_In_ HDC hdc, _In_reads_(cgi) LPWORD pgiIn, _In_ int cgi, _Out_ LPSIZE lpSize)
UINT WINAPI GetTextAlign(_In_ HDC hdc)
UINT WINAPI GetStringBitmapA(_In_ HDC hdc, _In_ LPSTR psz, _In_ BOOL bDoCall, _In_ UINT cj, _Out_writes_(cj) BYTE *lpSB)
COLORREF WINAPI SetTextColor(_In_ HDC hdc, _In_ COLORREF crColor)
BOOL WINAPI SetTextJustification(_In_ HDC hdc, _In_ INT nBreakExtra, _In_ INT nBreakCount)
BOOL WINAPI GetTextExtentExPointWPri(_In_ HDC hdc, _In_reads_(cwc) LPCWSTR lpwsz, _In_ INT cwc, _In_ INT dxMax, _Out_opt_ LPINT pcCh, _Out_writes_to_opt_(cwc, *pcCh) LPINT pdxOut, _In_ LPSIZE psize)
BOOL WINAPI GetTextExtentExPointI(_In_ HDC hdc, _In_reads_(cgi) LPWORD pgiIn, _In_ INT cgi, _In_ INT nMaxExtent, _Out_opt_ LPINT lpnFit, _Out_writes_to_opt_(cwchString, *lpnFit) LPINT lpnDx, _Out_ LPSIZE lpSize)
BOOL WINAPI ExtTextOutW(_In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ UINT fuOptions, _In_opt_ const RECT *lprc, _In_reads_opt_(cwc) LPCWSTR lpString, _In_ UINT cwc, _In_reads_opt_(cwc) const INT *lpDx)
UINT WINAPI GetStringBitmapW(_In_ HDC hdc, _In_ LPWSTR pwsz, _In_ BOOL bDoCall, _In_ UINT cj, _Out_writes_(cj) BYTE *lpSB)
BOOL WINAPI TextOutW(_In_ HDC hdc, _In_ INT nXStart, _In_ INT nYStart, _In_reads_(cchString) LPCWSTR lpString, _In_ INT cchString)
BOOL WINAPI GetTextMetricsW(_In_ HDC hdc, _Out_ LPTEXTMETRICW lptm)
BOOL APIENTRY GetTextExtentPointA(_In_ HDC hdc, _In_reads_(cchString) LPCSTR lpString, _In_ INT cchString, _Out_ LPSIZE lpsz)
INT WINAPI GetTextFaceA(_In_ HDC hdc, _In_ INT cchMax, _Out_writes_to_opt_(cchMax, return) LPSTR lpName)
BOOL WINAPI PolyTextOutA(_In_ HDC hdc, _In_reads_(cStrings) const POLYTEXTA *pptxt, _In_ INT cStrings)
BOOL WINAPI GetTextExtentPoint32A(_In_ HDC hdc, _In_reads_(cchString) LPCSTR lpString, _In_ INT cchString, _Out_ LPSIZE lpSize)
BOOL WINAPI TextOutA(_In_ HDC hdc, _In_ INT nXStart, _In_ INT nYStart, _In_reads_(cchString) LPCSTR lpString, _In_ INT cchString)
BOOL APIENTRY GetTextExtentPointW(_In_ HDC hdc, _In_reads_(cchString) LPCWSTR lpString, _In_ INT cchString, _Out_ LPSIZE lpsz)
UINT WINAPI SetTextAlign(_In_ HDC hdc, _In_ UINT fMode)
BOOL WINAPI GetTextExtentExPointW(_In_ HDC hdc, _In_reads_(cchString) LPCWSTR lpszString, _In_ INT cchString, _In_ INT nMaxExtent, _Out_opt_ LPINT lpnFit, _Out_writes_to_opt_(cchString, *lpnFit) LPINT lpnDx, _Out_ LPSIZE lpSize)
INT WINAPI SetTextCharacterExtra(_In_ HDC hdc, _In_ INT nCharExtra)
BOOL WINAPI GetTextExtentPoint32W(_In_ HDC hdc, _In_reads_(cchString) LPCWSTR lpString, _In_ int cchString, _Out_ LPSIZE lpSize)
COLORREF WINAPI GetTextColor(_In_ HDC hdc)
BOOL WINAPI ExtTextOutA(_In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ UINT fuOptions, _In_opt_ const RECT *lprc, _In_reads_opt_(cch) LPCSTR lpString, _In_ UINT cch, _In_reads_opt_(cch) const INT *lpDx)
DWORD WINAPI GdiGetCodePage(_In_ HDC hdc)
static BOOL bBypassETOWMF
BOOL WINAPI PolyTextOutW(_In_ HDC hdc, _In_reads_(cStrings) const POLYTEXTW *pptxt, _In_ INT cStrings)
INT WINAPI GetTextFaceAliasW(_In_ HDC hdc, _In_ INT cwcMax, _Out_writes_to_opt_(cwcMax, return) LPWSTR pszOut)
BOOL WINAPI GetTextExtentExPointA(_In_ HDC hdc, _In_reads_(cchString) LPCSTR lpszStr, _In_ INT cchString, _In_ INT nMaxExtent, _Out_opt_ LPINT lpnFit, _Out_writes_to_opt_(cchString, *lpnFit) LPINT lpnDx, _Out_ LPSIZE lpSize)
BOOL WINAPI GetFontResourceInfoW(_In_z_ LPCWSTR lpFileName, _Inout_ DWORD *pdwBufSize, _Out_writes_to_opt_(*pdwBufSize, 1) PVOID lpBuffer, _In_ DWORD dwType)
INT WINAPI GetTextCharset(_In_ HDC hdc)
INT WINAPI GetTextCharacterExtra(_In_ HDC hdc)
INT WINAPI GetTextFaceW(_In_ HDC hdc, _In_ INT cwcMax, _Out_writes_to_opt_(cwcMax, return) LPWSTR pFaceName)
BOOL WINAPI GetETM(_In_ HDC hdc, _Out_ EXTTEXTMETRIC *petm)
W32KAPI BOOL APIENTRY NtGdiGetTextMetricsW(IN HDC hDC, OUT TMW_INTERNAL *pUnsafeTmwi, IN ULONG cj)
#define ERROR_PATH_NOT_FOUND
DWORD WINAPI GetKerningPairsA(_In_ HDC hdc, _In_ DWORD nPairs, _Out_writes_to_opt_(nPairs, return) LPKERNINGPAIR lpKernPair)
BOOL WINAPI GetTextMetricsA(_In_ HDC, _Out_ LPTEXTMETRICA)
_In_ int _Inout_ LPRECT lprc