Transform

잡다한 수학 기능, 비트별 연산, 그리고 ASCII/유니코드 변환 같은 작업을 수행합니다.

비추천: 이 명령어는 새 스크립트에 사용을 추천하지 않습니다. For details on what you can use instead, see the sub-command sections below.

Transform, OutputVar, SubCommand, Value1 , Value2

The OutputVar parameter is the name of the output variable in which to store the result. SubCommand, Value1 그리고 Value2 매개변수는 서로 의존적입니다. 그리고 그 사용법은 아래에 기술합니다.

부-명령어

For SubCommand, specify one of the following:

유니코드

비추천: 새 스크립트에 사용을 추천하지 않습니다. Use the Unicode version of AutoHotkey instead.

Retrieves or stores Unicode text on the clipboard (for ANSI builds only).

Transform, OutputVar, Unicode , String

주의: The entire clipboard may be saved and restored by means of ClipboardAll, which allows this sub-command to operate without losing the original contents of the clipboard.

다음 예제에 보여주는 바와 같이 두 가지 연산 모드가 있습니다:

Transform, OutputVar, Unicode  ; 클립보드의 유니코드 텍스트를 UTF-8 문자열로 열람합니다.
Transform, Clipboard, Unicode, %MyUTF_String%  ; 유니코드 텍스트를 클립보드에 배치합니다.

위의 두 번째 예제에서 %MyUTF_String% 대신에, 기호 그대로의 UTF-8 문자열을 선택적으로 사용할 수 있습니다.

다음과 같은 핫키를 사용하면 주어진 유니코드 문자열에 상응하는 UTF-8 문자열을 알아낼 수 있습니다:

^!u::  ; Control+Alt+U 핫키.
MsgBox 유니코드 텍스트를 클립보드에 복사한 다음, 이 창으로 돌아옵니다. 계속하려면 OK를 누르십시오.
Transform, ClipUTF, Unicode
Clipboard := "Transform, Clipboard, Unicode, %ClipUTF%`r`n"
MsgBox 클립보드에 이제 다음 줄이 담겨 있습니다. 스크립트에 붙여 넣을 수 있습니다. 실행하면, 이 줄은 여러분이 복사한 원래의 유니코드 문자열을 클립보드에 배치합니다:`n`n%Clipboard%
return

주의: Send {U+nnnn} 명령어는 유니코드 문자를 생산하는 또다른 방법입니다.

Deref

비추천: 새 스크립트에 사용을 추천하지 않습니다. Use the expression syntax or a custom function such as Deref() instead.

변수 참조 그리고 다른 변수 안에 들어 있는 피신 연속열을 확대합니다.

Transform, OutputVar, Deref, String

형식이 나쁜 변수 참조는 확대 결과에서 생략됩니다. OutputVar가 자신으로 확대되는 경우에도 마찬가지입니다; 다른 말로, String의 변수 안에서 OutputVar를 참조하면 확대 결과로부터 제외됩니다 (그렇지만 String 자체%OutputVar%가 될 수 있습니다). 다음 예제에서, Var1에 문자열 "test"가 담겨 있고 Var2에 기호 그대로의 문자열 "%Var1%"이 담겨 있다면, OutputVar는 문자열 "test"가 설정될 것입니다: Transform, OutputVar, Deref, %Var2%. 함수 안에서, String 안의 각 변수는 언제나 지역 변수로 결정납니다. 단, 그런 변수가 없을 경우는 전역 변수로 결정됩니다 (또는 아무것도 없다면 비워집니다).

HTML

비추천: 새 스크립트에 사용을 추천하지 않습니다. Use a custom function such as EncodeHTML() instead.

문자열(String)을 그의 HTML 동등물로 변환합니다. ASCII 값이 127이 넘는 문자를 상응하는 HTML 이름으로 변환합니다 (예, ££가 됩니다).

Transform, OutputVar, HTML, String , Flags

게다가, 다음 네 개의 "&<> 문자는 &quot;&amp;&lt;&gt;로 변환됩니다. 마지막으로, 각 라인피드(`n)는 <br>`n으로 변환됩니다 (즉, <br> 다음에 라인피드). Flags 매개변수는 무시됩니다.

유니코드 실행파일에 대하여: 위의 기능 말고도, Flags는 0이 되거나 아니면 다음 값들이 조합(합)이 될 수 있습니다. 생략하면, 기본값은 1입니다.

오직 비-ASCII 문자만 영향을 받습니다. If Flags is the number 3, numbered expressions are used only where a named expression is not available. 다음 문자들은 언제나 변환됩니다: <>"& 그리고 `n (라인피드).

Asc

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Asc()를 사용하십시오.

Retrieves the character code (a number between 1 and 255, or 1 and 65535 if Unicode is supported) for the first character in String.

Transform, OutputVar, Asc, String

String이 비어 있으면, OutputVar도 비워집니다. 예를 들어: Transform, OutputVar, Asc, %VarContainingString%. 유니코드 보충 문자를 허용하려면, 대신에 Ord(String)를 사용하십시오.

Chr

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Chr()를 사용하십시오.

Retrieves the single character corresponding to the character code indicated by the specified number.

Transform, OutputVar, Chr, Number

If Number is not between 1 and 255 inclusive (or 1 and 65535 if Unicode is supported), OutputVar will be made blank to indicate the problem. 예를 들어: Transform, OutputVar, Chr, 130. Unlike Chr(), this sub-command does not support Unicode supplementary characters (character codes 0x10000 to 0x10FFFF).

Mod

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Mod()를 사용하십시오.

Retrieves the remainder of the specified dividend divided by the specified divisor.

Transform, OutputVar, Mod, Dividend, Divisor

Divisor가 0이면, OutputVar는 비워집니다. DividendDivisor가 모두 소수점을 담을 수 있습니다. 음수이면, Divisor는 계산을 위해 양수로 취급됩니다. 다음 예제에서, 결과는 2입니다: Transform, OutputVar, Mod, 5, 3.

Exp

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Exp()를 사용하십시오.

e를 (대략 2.71828182845905) N 제곱해 열람합니다.

Transform, OutputVar, Exp, N

N은 음수일 수 있으며 소수 점을 포함할 수 있습니다.

Sqrt

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Sqrt()를 사용하십시오.

Retrieves the square root of the specified number.

Transform, OutputVar, Sqrt, Number

Number가 음수이면, OutputVar는 비워집니다.

Log

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Log()를 사용하십시오.

Retrieves the logarithm (base 10) of the specified number.

Transform, OutputVar, Log, Number

Number가 음수이면, OutputVar는 비워집니다.

Ln

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Ln()를 사용하십시오.

Retrieves the natural logarithm (base e) of the specified number.

Transform, OutputVar, Ln, Number

Number가 음수이면, OutputVar는 비워집니다.

Round

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Round()를 사용하십시오.

Retrieves the specified number rounded to N decimal places.

Transform, OutputVar, Round, Number , N

N을 생략하면, OutputVarNumber이 가장 가까운 정수로 반올림되어 설정됩니다. If N is positive number, Number will be rounded to N decimal places. If N is negative, Number will be rounded by N digits to the left of the decimal point. 예를 들어, -1이면 첫 째 자리에서 반올림되고, -2이면 10이 자리에서, 그리고 -3이면 백의 자리에서 반올림됩니다. 주의: The Round sub-command does not remove trailing zeros when rounding decimal places. 예를 들어, 12.333을 소수 첫 째 자리에서 반올림하면 12.300000이 됩니다. This behavior can be altered by using something like SetFormat, Float, 0.1 prior to the operation (in fact, SetFormat might eliminate the need to use the Round sub-command in the first place).

Ceil

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Ceil()를 사용하십시오.

Retrieves the specified number rounded up to the nearest integer.

Transform, OutputVar, Ceil, Number

Floor

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Floor()를 사용하십시오.

Retrieves the specified number rounded down to the nearest integer.

Transform, OutputVar, Floor, Number

Abs

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Abs()를 사용하십시오.

Retrieves the absolute value of the specified number.

Transform, OutputVar, Abs, Number

This is computed by removing the leading minus sign (dash) from Number if it has one.

Sin

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Sin()를 사용하십시오.

Retrieves the trigonometric sine of the specified number.

Transform, OutputVar, Sin, Number

Number는 라디안으로 표현해야 합니다.

Cos

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Cos()를 사용하십시오.

Retrieves the trigonometric cosine of the specified number.

Transform, OutputVar, Cos, Number

Number는 라디안으로 표현해야 합니다.

Tan

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 Tan()를 사용하십시오.

Retrieves the trigonometric tangent of the specified number.

Transform, OutputVar, Tan, Number

Number는 라디안으로 표현해야 합니다.

ASin

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ASin()를 사용하십시오.

Retrieves the arcsine (the number whose sine is the specified number) in radians.

Transform, OutputVar, ASin, Number

Number가 -1보다 작거나 1보다 크면, OutputVar는 비워집니다.

ACos

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ACos()를 사용하십시오.

Retrieves the arccosine (the number whose cosine is the specified number) in radians.

Transform, OutputVar, ACos, Number

Number가 -1보다 작거나 1보다 크면, OutputVar는 비워집니다.

ATan

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ATan()를 사용하십시오.

Retrieves the arctangent (the number whose tangent is the specified number) in radians.

Transform, OutputVar, ATan, Number

Pow

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ** 연산자을 사용하십시오.

밑수(Base)를 지수(Exponent) 제곱하여 열람합니다.

Transform, OutputVar, Pow, Base, Exponent

BaseExponent 모두 소수점을 포함할 수 있습니다. Exponent가 음수이면, OutputVar는 부동 소수점 수로 포맷됩니다. BaseExponent 둘 다 정수라도 마찬가지입니다. 1.5와 같이 소수형 지수(Exponent)와 결합된 음의 Base는 지원하지 않습니다; 그러면 OutputVar가 비워집니다.

BitNot

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ~ 연산자을 사용하십시오.

Retrieves the bit-inverted version of the specified number.

Transform, OutputVar, BitNot, Number

Floating point values are truncated to integers prior to the calculation. Number이 0부터 4294967295 (0xffffffff) 사이이면, 부호 없는 32-비트 값으로 취급됩니다. 그렇지 않으면 부호 있는 64-비트 값으로 취급됩니다. 다음 예제에서, 그 결과는 0xfffff0f0 (4294963440)입니다: Transform, OutputVar, BitNot, 0xf0f.

BitAnd

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 & 연산자을 사용하십시오.

Retrieves the result of the bitwise-AND of Number1 and Number2.

Transform, OutputVar, BitAnd, Number1, Number2

Floating point values are truncated to integers prior to the calculation. 다음 예제에서, 그 결과는 0xff00 (65280)입니다: Transform, OutputVar, BitAnd, 0xff0f, 0xfff0.

BitOr

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 | 연산자을 사용하십시오.

Retrieves the result of the bitwise-OR of Number1 and Number2.

Transform, OutputVar, BitOr, Number1, Number2

Floating point values are truncated to integers prior to the calculation. 다음 예제에서 그 결과는 0xf0f0 (61680)입니다: Transform, OutputVar, BitOr, 0xf000, 0x00f0.

BitXOr

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 ^ 연산자을 사용하십시오.

Retrieves the result of the bitwise-EXCLUSIVE-OR of Number1 and Number2.

Transform, OutputVar, BitXOr, Number1, Number2

Floating point values are truncated to integers prior to the calculation. 다음 예제에서, 그 결과는 0xff00 (65280)입니다: Transform, OutputVar, BitXOr, 0xf00f, 0x0f0f.

BitShiftLeft

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 << 연산자을 사용하십시오.

Retrieves the result of shifting the specified number to the left by N bit positions.

Transform, OutputVar, BitShiftLeft, Number, N

This is equivalent to multiplying Number by "2 to the Nth power". Floating point values are truncated to integers prior to the calculation. 다음 예제에서 그 결과는 8입니다: Transform, OutputVar, BitShiftLeft, 1, 3.

BitShiftRight

비추천: 새 스크립트에 사용을 추천하지 않습니다. 대신 >> 연산자을 사용하십시오.

Retrieves the result of shifting the specified number to the right by N bit positions.

Transform, OutputVar, BitShiftRight, Number, N

This is equivalent to dividing Number by "2 to the Nth power", truncating the remainder. Floating point values are truncated to integers prior to the calculation. 다음 예제에서, 결과는 2입니다: Transform, OutputVar, BitShiftRight, 17, 3.

FromCodePage / ToCodePage

[AHK_L 54+]: Removed. 대신 StrPut/StrGet을 사용하십시오.

논평

숫치 매개변수를 받는 부-명령어는 그런 매개변수에 대하여 표현식도 받을 수 있습니다.

If one of the parameters is a floating point number, the following sub-commands will retrieve a floating point number rather than an integer: Mod, Pow, Round, 그리고 Abs. 열람된 소수 부분의 자리수는 SetFormat으로 결정됩니다.

호도 값을 각도로 변환하려면, 180/pi (대략 57.29578)를 곱하십시오. 디그리를 라디안으로 변환하려면 pi/180 (대략 0.01745329252)를 곱합니다.

pi의 값 (대략 3.141592653589793)은 1 아크탄젠트의 4 배입니다.

Math Functions, SetFormat, Expressions, Operators, StringLower, if var is type

예제

Retrieves the ASCII code of the letter A and stores it in OutputVar.

Transform, OutputVar, Asc, A