기능요?
아무것도 없습니다.
그냥 2바이트로 변환 기능.
단 차이가 있다면
FixLine 내부에 있어도 잘 동작한다는거죠
소스는 기본 ATPlugin 프레임에서 후처리부만 이렇게 변경하면 됩니다.
아무것도 없습니다.
그냥 2바이트로 변환 기능.
단 차이가 있다면
FixLine 내부에 있어도 잘 동작한다는거죠
소스는 기본 ATPlugin 프레임에서 후처리부만 이렇게 변경하면 됩니다.
const char * szDiv="_-/_";
const int nDivLen = strlen(szDiv);
BOOL __stdcall PostTranslate(LPCSTR cszInKorean, LPSTR szOutKorean, int nBufSize)
{
// TODO: 번역 후처리를 한다.
// 특별한 처리를 하지 않더라도 문자열을 복사해 돌려주어야 한다.
int nIdx1=0;
int nIdx2=0;
while(cszInKorean[nIdx1]!='�')
{
if(cszInKorean[nIdx1]==szDiv[0] &&
strncmp(cszInKorean+nIdx1,szDiv,nDivLen)==0)
{
strcpy(szOutKorean+nIdx2,szDiv);
nIdx1+=nDivLen;
nIdx2+=nDivLen;
continue;
}
if( 0x20 <= (BYTE)cszInKorean[nIdx1] && (BYTE)cszInKorean[nIdx1] <= 0x7E )
{
if(' ' == cszInKorean[nIdx1])
{
szOutKorean[nIdx2++] = (char)0xA1;
szOutKorean[nIdx2++] = (char)0xA1;
}
else
{
szOutKorean[nIdx2++] = (char)0xA3;
szOutKorean[nIdx2++] = (char)(0x80 + cszInKorean[nIdx1]);
}
nIdx1++;
}
else if(IsDBCSLeadByteEx(949,BYTE(cszInKorean[nIdx1])))
{
szOutKorean[nIdx2++] = cszInKorean[nIdx1++];
szOutKorean[nIdx2++] = cszInKorean[nIdx1++];
}
else
{
szOutKorean[nIdx2++] = cszInKorean[nIdx1++];
}
}
szOutKorean[nIdx2]='�';
// 작업 성공시 TRUE, 실패시 FALSE 반환
return TRUE;
}