Q&A

  • Win2K 와 Win98의 폰트 호환 문제..
윈도우 2000에서 프로그램을 작성하여 윈도우 98에서 동작을 시켜보면



프로그램 작성시 설정한 화면 디자인이 다르게 나옵니다.



보통 굴림체 9포인트로 작성을 하는데.. 더 작게 나오는것 같더군요..



이 문제를 어떻게 해결해야 하나요...



혹시 2000과 98이 폰트가 다른가요? 그러면 98의 폰트를 복사해서 사용하면



문제를 해결 할 수 있나요?



빠른 도움 부탁 드립니다.

4  COMMENTS
  • Profile
    안명호 2000.04.20 02:03
    프로그래밍시 한글 폰트 사용할때 스크립트를 영문으로 두어 그런 현상이



    나타나더군요... 2000에서는 스크립트를 영문으로 해도 정상적으로 잘



    보이는데.. 98에서 실행할경우 한글이 다르게 나오는데.. 스크립트를 한글로



    바꾸어 주면 원하는데로 정상적으로 나옵니다.



    안명호 wrote:

    > 윈도우 2000에서 프로그램을 작성하여 윈도우 98에서 동작을 시켜보면

    >

    > 프로그램 작성시 설정한 화면 디자인이 다르게 나옵니다.

    >

    > 보통 굴림체 9포인트로 작성을 하는데.. 더 작게 나오는것 같더군요..

    >

    > 이 문제를 어떻게 해결해야 하나요...

    >

    > 혹시 2000과 98이 폰트가 다른가요? 그러면 98의 폰트를 복사해서 사용하면

    >

    > 문제를 해결 할 수 있나요?

    >

    > 빠른 도움 부탁 드립니다.

  • Profile
    구창민 2000.04.19 09:43
    안명호 wrote:

    > 윈도우 2000에서 프로그램을 작성하여 윈도우 98에서 동작을 시켜보면

    >

    > 프로그램 작성시 설정한 화면 디자인이 다르게 나옵니다.

    >

    > 보통 굴림체 9포인트로 작성을 하는데.. 더 작게 나오는것 같더군요..

    >

    > 이 문제를 어떻게 해결해야 하나요...

    >

    > 혹시 2000과 98이 폰트가 다른가요? 그러면 98의 폰트를 복사해서 사용하면

    >

    > 문제를 해결 할 수 있나요?

    >

    > 빠른 도움 부탁 드립니다.





    안녕하세요~ 구창민입니다.



    저는 2000을 사용하지 않으니 2000을 잘 모릅니다만,

    제 눈이 짧은 건지 네트웍이나, 하드웨어 지원말구는

    NT와 크게 변한바가 없는 거 같던데..역시 제가 눈이 짧은 건가요 ^^



    만약 저 같으면 2000도 OS가 언 놈이 조사해보면 NT로 나올테니,

    먼저 OS를 조사하는 루틴을 가미해서 98인경우는

    시스템 폰트를 사용하거나, 또는 특정한 폰트를 사용하여 그게 여의치않으면

    폰트를 98에 맞는 폰트로 이것저것 바꾸어 테스트 해보거나 하겠습니다.



    참고로, SystemParametersInfo함수를 사용하면 시스템과 똑같은 글꼴을

    Window9x 에서는 얻어낼 수 있을 겁니다.



    다음과 같은 코드로..



    procedure TForm1.Button1Click(Sender: TObject);

    var

    NonClientMetrics: TNonClientMetrics;

    begin

    NonClientMetrics.cbSize := sizeof(NonClientMetrics);

    if

    SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, @NonClientMetrics,0)

    then

    Self.Font.Handle := CreateFontIndirect(NonClientMetrics.lfMenuFont);

    end;



    헌데 SystemParametersInfo 첫인자중 SPI_GETNONCLIENTMETRICS 때문에 이놈이

    NT에서 지원을 안하는 것 같더라구요..^^;



    혹시나, 한번 2000에서 테스트를 해 보시기 바랍니다.



    역시 여의치 않으시면, OS를 구분하시어 모듈을 작성하심이...^^;



    참, OS를 구분하는 건 아실테지만

    아래 방식도 참고하세요..



    var

    OS: TOSVersionInfo;

    begin

    OS.dwOSVersionInfoSize := Sizeof(OS);

    GetVersionEx(OS);

    with OS do

    case dwPlatformId of

    VER_PLATFORM_WIN32s :

    Label1.Caption := 'Windows 3.1x/32s';

    VER_PLATFORM_WIN32_WINDOWS :

    begin

    if (dwMajorVersion = 4) and (dwMinorVersion > 0) then

    Label1.Caption := 'Windows 98'

    else

    Label1.Caption := 'Windows 95';

    end;

    VER_PLATFORM_WIN32_NT :

    Label1.Caption := 'Windows NT' ;

    end;

    end;

    그럼~ 즐거운 프로그래밍 하시길~

  • Profile
    안명호 2000.04.20 02:01
    구창민님 우선 성의 있는 답변 감사드립니다.



    하지만 다른 방법으로 문제를 해결 하였습니다.



    다른분의 NT에서 프로그래밍 경험을 말해 주셔서



    2000에서도 비슷하리라 생각하고 해보았더니.. 되더군요...



    한글폰트 쓸때 스크립트가 디폴트로 영문이 되어 있던데 이를 한글로



    바꾸어 주니 해결 되더군요...



  • Profile
    구창민 2000.04.20 09:41
    안명호 wrote:

    > 구창민님 우선 성의 있는 답변 감사드립니다.

    >

    > 하지만 다른 방법으로 문제를 해결 하였습니다.

    >

    > 다른분의 NT에서 프로그래밍 경험을 말해 주셔서

    >

    > 2000에서도 비슷하리라 생각하고 해보았더니.. 되더군요...

    >

    > 한글폰트 쓸때 스크립트가 디폴트로 영문이 되어 있던데 이를 한글로

    >

    > 바꾸어 주니 해결 되더군요...

    >

    > 아
    • 구창민
      2000.04.19 09:46
      델파이어 wrote: > 안녕하세요..^^ > 개인적으로 사용 할 CD타이틀을 만드는데요, > CD타이틀 프로그램...
    • 안명호
    • 2000.04.19 05:59
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 안명호
      2000.04.20 02:03
      프로그래밍시 한글 폰트 사용할때 스크립트를 영문으로 두어 그런 현상이 나타나더군요... 2000에서는 ...
    • 구창민
      2000.04.19 09:43
      안명호 wrote: > 윈도우 2000에서 프로그램을 작성하여 윈도우 98에서 동작을 시켜보면 > > 프로그램 ...
    • 안명호
      2000.04.20 02:01
      구창민님 우선 성의 있는 답변 감사드립니다. 하지만 다른 방법으로 문제를 해결 하였습니다. 다른분...
    • 구창민
      2000.04.20 09:41
      안명호 wrote: > 구창민님 우선 성의 있는 답변 감사드립니다. > > 하지만 다른 방법으로 문제를 해결 ...
    • HART
      2000.04.19 18:36
      어떤 형식으로 디비 세개를 연결하여 출력하는야 따라서 코딩 조금씩 변경되는데.. 먼저 연결 출력 형태가...
    • 이언주
      2000.04.19 20:01
      답변해주셔서 감사드립니다.제가 출력을 해야될 부분은 일일일정표로서 금일일정,행사일정,차량정보,생일자...
    • HART
      2000.04.21 00:56
      델파이 예제에 보면 잘 나와 있습니다 위치는 bolanddemosquickrpt 있습니다. 소스 4줄 ~ 5줄 정도 됩니...
    • TeamX
      2000.04.19 11:45
      저도 잘은 모르지만 권장되는 폴더당 파일갯수는 500-600개 정도 인걸로 들은것 같습니다... 많으면 속...
    • 초보1
    • 2000.04.19 05:06
    • 5 COMMENTS
    • /
    • 0 LIKES
    • Mr.Q
      2000.04.19 11:41
      초보1 wrote: > > 안녕하십니까 ... > 두개의 maskedit3, maskedit4로 일자를 구하려 하는데 잘안되네...
    • 초보1
      2000.04.19 18:59
      그렇게 하니 error가 ''20000301' is not a valid date and time' 라고 하네요.
    • Mr.Q
      2000.04.20 00:19
      초보1 wrote: > > 그렇게 하니 error가 > ''20000301' is not a valid date and time' 라고 하네요. ...
    • 조규춘
      2000.04.19 05:29
      초보1 wrote: > > 안녕하십니까 ... > 두개의 maskedit3, maskedit4로 일자를 구하려 하는데 잘안되네...
    • 초보1
      2000.04.19 19:08
      EditMask의 값를 ####-##-##;0; 에서 !9999/99/00;1;_ 로 변경하여 실행하니 그렇게 하니 error...
    • mad
    • 2000.04.19 04:31
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.04.19 05:38
      mad wrote: > 멤버 디비에 저장된 총 멤버수는 어떻게 나타내죠? > > 그리고 만약 조건을 넣어도 상관 ...
    • mad
      2000.04.20 09:33
      레코드 숫자는 결국 어떻게 나타냅니까? Table1.RecordCount; 이건 어따가 쓰는거죠? 이걸 Edit에 연결...
    • 조규춘
      2000.04.20 09:56
      inttostr은 정수형을 문자형으로 바꾸는 겁니다. 히~! Edit1.text := inttostr(Table1.RecordCount); ...
    • mad
    • 2000.04.19 04:27
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.04.19 06:04
      mad wrote: > 모르겄어요. > 폼1에서 edit1,2가 있고 우편번호 버튼을 누르면 > 폼2가 뜨고 우편번호를 ...
    • mad
    • 2000.04.19 04:20
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.04.19 05:52
      mad wrote: > 폼에다가 타일 이미지를 까는 건데 FormPaint는 어떻게 선언하고 폼을 선택하고 오브젝...
    • mad
      2000.04.20 09:38
      저 에러는 안뜨는데 폼의 타일이 안보이네요. 이거 혹시 그냥폼에서 사용하는 건가요? 책에 있는 것은 무...
    • 조규춘
      2000.04.20 10:02
      저에게 그 소스를 압축해서 보내주이소.... 그럼 제가 아주 친절하게 주석문까정 다 달아서 보내드리...
    • mad
    • 2000.04.19 04:09
    • 2 COMMENTS
    • /
    • 0 LIKES
    • Mr.Q
      2000.04.19 12:04
      mad wrote: > 파라독스를 사용하고 있습니다. > > 그런데 근디 > Datasorce1,Datasorce2, table1, DBG...
    • mad
      2000.04.20 09:28
      그런디 > with query1 do > begin > close; > sql.clear; > sql.add('select * from inout.db wher...
    • allenive
    • 2000.04.19 04:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 장경임
      2000.04.26 03:23
      allenive wrote: > procedure TForm1.BitBtn1KeyDown(Sender: TObject; var Key: Word; > Shift: TShif...
    • 구창민
      2000.04.19 09:54
      꿈틀이 wrote: > 제목 그대로 브라우져 안에 있는 text중에서 마우스 포인터가 위치한 곳에 text를 캡쳐하...
    • 꿈틀이
      2000.04.20 19:14
      답변 감사합니다. ^^; 야후에서 못 찾고 네이버에서 찾았는데 그곳이 맞는지 몰라도 이제는 컴포넌트 파...
    • hee
    • 2000.04.19 02:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.04.19 03:13
      hee wrote: > 폼의 크기에 따라 컨트롤의 크기를 변하게 하는 프로퍼티