Q&A

  • GDI - BeginPath + EndPath + PathToRegion...
안녕하세요?



여러가지 도움을 많이 받고 있는 사이트입니다.. 이곳은.. ^^*



GDI 를 이용한 모듈을 작성중에 이상한 점을 찾아서요..



DC 에 직접 TextOut 을 시켜주면 아무런 문제 없이 출력이 되는데,



BeginPath 를 걸고 EndPath 를 한 후에 FillPath 를 하면 왜 글꼴이 깨질까요?



이상한 현상입니다.



예를 들어 다음은 문제가 없거든요.



Form1.Canvas.TextOut (0,0,'이것은 문제가 없는 TextOut입니다');



그런데...



아래의 문장은 이상해 집니다.



BeginPath;

Form1.Canvas.TextOut (0,0,'이것은 이상하게 깨지네요...');

EndPath;

FillPath(Form1.Canvas.Handle);



그런데 언뜻 보면 문제가 없어보일수도 있는게,



글꼴사이즈를 크게 (Form1.Canvas.Font 를 말이죠) 하면



문제가 없어 보입니다... 글꼴이 크니 깨지는 현상이 별로 나타나지 않죠.



하지만 굴림, 9포인트 정도로 Form1.Canvas.Font 를 설정하고...



위의 두문장을 실행해 보면 웃기는게 그 뭐라고 하죠?...



글꼴이 나오긴 나오는데 약간 깨지는... (라운드 처리가 안된다고 해야 하나?)



해보시면 압니다.



이게 하도 이상해서 VB6 + SP4 에서도 해보았는데 마찬가지 입니다.



한글 Windows 의 GDI32.DLL 버그인가요? (윈98SE 인데 이 DLL 은 4.10.1998 이더군요)



아니면 Path 를 건 후에는



폰트가 생성되는 데에 차이가 생기는 건가요?



궁금해 죽겠군요.



별의 별 사이트를 다 찾아다녀도 Path 를 걸고 어쩌고 하는 것에 대한



내용조차 별로 없는데다가,



이런 차이점을 발견한 사람이 저 혼자인가 싶기도 하고.. ㅡㅡ;



음... 이거 한글 Windows 에서만 나타나는 현상인가요?



한글 윈도가 문제가 있는건가?



답변 주시면 정말 속이 시원하겠습니당~



구럼 즐~~~

0  COMMENTS