コード例 #1
0
        bool TextOut(void *dc, int xStart, int yStart, byte *pStr, int strLen)
        {
            CString OriStr = pStr;

            OriStr.FixedLength = (uint)strLen;

            WCString Str = EntryPoint.ProcessW((WCString)(string)OriStr);

            if (Config.Default.TextOutAUndoRemap)
            {
                Str = Remaper.Default.Restore(Str);
            }

            return(TextOutW(dc, xStart, yStart, Str, (int)Str.LongCount()));
        }
コード例 #2
0
        bool ExtTextOut(void *hdc, int x, int y, uint options, void *lprect, byte *lpString, uint c, int *lpDx)
        {
            WCString OriStr = lpString;

            OriStr.FixedLength = c;

            WCString InStr = EntryPoint.ProcessW((WCString)(string)OriStr);

            if (Config.Default.ExtTextOutWUndoRemap)
            {
                InStr = Remaper.Default.Restore(InStr);
            }

            if (Config.Default.ExtTextOutWRemapAlt)
            {
                InStr = RemaperAlt.Default.Apply(InStr, null);
            }

            return(Bypass(hdc, x, y, options, lprect, InStr, (uint)InStr.LongCount() / 2, lpDx));
        }
コード例 #3
0
        bool hTextOut(void *dc, int xStart, int yStart, byte *pStr, int strLen)
        {
            CString OriStr = pStr;

            OriStr.FixedLength = (uint)strLen;

            WCString InStr = EntryPoint.ProcessW((WCString)(string)OriStr);

            if (Config.Default.TextOutAUndoRemap)
            {
                InStr = Remaper.Default.Restore(InStr);
            }

            if (Config.Default.TextOutARemapAlt)
            {
                InStr = RemaperAlt.Default.Apply(InStr, null);
            }

            return(TextOutW(dc, xStart, yStart, InStr, (int)InStr.LongCount()));
        }