Plain text
复制到剪贴板
Open code in new window
EnlighterJS 3 Syntax Highlighter
; CharHalfShape4FullShape(Char, ToFullShape = true)
; 功能:全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。
; 作者:amnesiac
; 参数说明:
; Char 需转换的字符。
; ToFullShape 为真时转换为全角,否则转换为半角。
; StringHalfwidth2Fullwidth(ByRef String,toHalf:=false)
; 功能:全角半角字符串互相转换函数
; 作者:蜜罐哥
; 参数说明:
; String 需要转换的字符串
; toHalf=true转半角,toHalf=false转全角
/*
CharHalfShape4FullShape(Char, ToFullShape = true)
全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。
作者: amnesiac
参数说明:
Char 需转换的字符。
ToFullShape 为真时转换为全角,否则转换为半角。
StringHalfwidth2Fullwidth(ByRef String,toHalf:=false)
作者:蜜罐哥
参数说明:
String 需要转换的字符串
toHalf=true转半角,toHalf=false转全角
*/
InputBox, Key, 输入框, 请输入要转换成全角的字符
MsgBox, % Key ":" CharHalfShape4FullShape(Key, true)
InputBox, string, 输入框, 请输入要转换成全角的字符串
MsgBox, % string ":" StringHalfwidth2Fullwidth(string,false)
return
CharHalfShape4FullShape(Char, ToFullShape = true) {
if ToFullShape && (Asc(Char) < 256) && Asc(Char)
return, Chr(Asc(Char) + 65248)
else if !ToFullShape && (Asc(Char) < 65504) && (Asc(Char) > 65248)
return, Chr(Asc(Char) - 65248)
else
return, Char
}
StringHalfwidth2Fullwidth(ByRef String,toHalf:=false) {
LCMAP_FULLWIDTH := 0x00800000,LCMAP_HALFWIDTH := 0x00400000
VarSetCapacity(output, 256)
DllCall("kernel32\LCMapString", "UInt", DllCall("kernel32\GetUserDefaultLCID"), "UInt", (!toHalf?LCMAP_FULLWIDTH:LCMAP_HALFWIDTH), "WStr", String, "Int", -1, "WStr", output, "Int", 256)
String:=output,VarSetCapacity(output, -1)
Return String
}
; CharHalfShape4FullShape(Char, ToFullShape = true) ; 功能:全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。 ; 作者:amnesiac ; 参数说明: ; Char 需转换的字符。 ; ToFullShape 为真时转换为全角,否则转换为半角。 ; StringHalfwidth2Fullwidth(ByRef String,toHalf:=false) ; 功能:全角半角字符串互相转换函数 ; 作者:蜜罐哥 ; 参数说明: ; String 需要转换的字符串 ; toHalf=true转半角,toHalf=false转全角 /* CharHalfShape4FullShape(Char, ToFullShape = true) 全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。 作者: amnesiac 参数说明: Char 需转换的字符。 ToFullShape 为真时转换为全角,否则转换为半角。 StringHalfwidth2Fullwidth(ByRef String,toHalf:=false) 作者:蜜罐哥 参数说明: String 需要转换的字符串 toHalf=true转半角,toHalf=false转全角 */ InputBox, Key, 输入框, 请输入要转换成全角的字符 MsgBox, % Key ":" CharHalfShape4FullShape(Key, true) InputBox, string, 输入框, 请输入要转换成全角的字符串 MsgBox, % string ":" StringHalfwidth2Fullwidth(string,false) return CharHalfShape4FullShape(Char, ToFullShape = true) { if ToFullShape && (Asc(Char) < 256) && Asc(Char) return, Chr(Asc(Char) + 65248) else if !ToFullShape && (Asc(Char) < 65504) && (Asc(Char) > 65248) return, Chr(Asc(Char) - 65248) else return, Char } StringHalfwidth2Fullwidth(ByRef String,toHalf:=false) { LCMAP_FULLWIDTH := 0x00800000,LCMAP_HALFWIDTH := 0x00400000 VarSetCapacity(output, 256) DllCall("kernel32\LCMapString", "UInt", DllCall("kernel32\GetUserDefaultLCID"), "UInt", (!toHalf?LCMAP_FULLWIDTH:LCMAP_HALFWIDTH), "WStr", String, "Int", -1, "WStr", output, "Int", 256) String:=output,VarSetCapacity(output, -1) Return String }
; CharHalfShape4FullShape(Char, ToFullShape = true)
; 功能:全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。
; 作者:amnesiac
; 参数说明:
        ; Char        需转换的字符。
        ; ToFullShape        为真时转换为全角,否则转换为半角。
        
; StringHalfwidth2Fullwidth(ByRef String,toHalf:=false)

; 功能:全角半角字符串互相转换函数

; 作者:蜜罐哥
; 参数说明:
        ; String 需要转换的字符串
        ; toHalf=true转半角,toHalf=false转全角


/*
CharHalfShape4FullShape(Char, ToFullShape = true)
        全角半角字符互相转换函数。需要 AutoHotkey_L Unicode 版本。
作者: amnesiac
参数说明:
        Char        需转换的字符。
        ToFullShape        为真时转换为全角,否则转换为半角。
        
StringHalfwidth2Fullwidth(ByRef String,toHalf:=false)
作者:蜜罐哥
参数说明:
        String 需要转换的字符串
        toHalf=true转半角,toHalf=false转全角
*/
InputBox, Key, 输入框, 请输入要转换成全角的字符
MsgBox, % Key ":" CharHalfShape4FullShape(Key, true)
InputBox, string, 输入框, 请输入要转换成全角的字符串
MsgBox, % string ":" StringHalfwidth2Fullwidth(string,false)
return
CharHalfShape4FullShape(Char, ToFullShape = true) {
  if ToFullShape && (Asc(Char) < 256) && Asc(Char)
    return, Chr(Asc(Char) + 65248)
  else if !ToFullShape && (Asc(Char) < 65504) && (Asc(Char) > 65248)
    return, Chr(Asc(Char) - 65248)
  else
    return, Char
}

StringHalfwidth2Fullwidth(ByRef String,toHalf:=false) {
  LCMAP_FULLWIDTH := 0x00800000,LCMAP_HALFWIDTH := 0x00400000
  VarSetCapacity(output, 256)
  DllCall("kernel32\LCMapString", "UInt", DllCall("kernel32\GetUserDefaultLCID"), "UInt", (!toHalf?LCMAP_FULLWIDTH:LCMAP_HALFWIDTH), "WStr", String, "Int", -1, "WStr", output, "Int", 256)
  String:=output,VarSetCapacity(output, -1)
  Return String
}

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。