2009-08-13 5 views
8

Delphi는 어떤 식 으로든 국제화를 지원합니까?Delphi 및 i18n

프로젝트에 다른 언어를 추가 할 수 있지만 dfm 파일의 인스턴스가 여러 개 생성 된 것 같습니다. 런타임에서 언어를 변경할 수 없다는 것이 맞습니까?

어떻게하면 국제화를 처리합니까? 모범 사례가 있습니까?

+1

(하나는 더 이상는 resourcestring 사용을 변경할 수 없음) : http://stackoverflow.com/questions/1019822/process-for-localization-of-delphi-2009-app-by-volunteer-translators – Argalatyr

답변

1

나는 언어의 런타임 변경으로 한 번 실험했다. 훌륭하게 작동했지만 많은 코드를 직접 작성해야했습니다 (그리고 dfm 파일을 우회하는). 문제는, 번거롭고 거의 필요 없다는 것입니다.

내 의견으로는 더 나은 옵션은 기본 언어 버전을 만들고 다른 언어의 번역기 도구를 사용하는 것입니다. 실행 파일과 dll에서 작동하는 third party translator을 사용합니다. 자원의 문자열을 대체하고 새 2 진 파일을 작성합니다.

이 도구의 큰 장점 중 하나는 번역 된 대화 상자 (표준 Windows 구성 요소 만 해당)를 표시하므로 레이블이 너무 큰 경우 사용자가 직접 피드백을받을 수 있다는 것입니다.

+0

감사. 번역기 도구에 관한 모든 권장 사항은 무엇입니까? – jpfollenius

+0

링크를 추가했습니다. 그것은 무료는 아니지만 우리는 매우 만족합니다. –

0

이전에 SiComponents을 사용해 왔습니다. 실행 파일에서 모든 텍스트를 독립적으로 변경할 수 있습니다. 실행 파일 (권장하지 않음)에 다른 언어를 포함 시키거나 파일에서로드 할 수 있습니다. 번역을 지원하는 편집자도 있습니다. 그들은 매우 좋고 안정적이며 빠릅니다.

도구, 옵션, 변환 도구 옵션에서 Delphi 2006의 번역 도구, 특히 번역 저장소를 구성 할 수 있습니다. 보기, 번역 관리자에서 찾을 수 있습니다. 모든 번역 된 문자열은 ressource 문자열이되며 언어 별 dll로 저장할 수 있습니다. Translation Manager에 대한 도움말을 검색하면 올바른 방향으로 안내해줍니다.

5

델파이에는 이와 같은 도구가 포함되어 있습니다. 여기

델파이 2005에 대한 tutorial이며, 델파이 2009 년

-1

의 최신 버전을 보여주는 닉 스의 video 나는 두 번째 TsiLang 구성 요소를 사용하기위한 권장 사항 (www.sicomponents.com). 나는 방금 영어 - 영어에서 영어 + 중국어로 업그레이드하기 위해 런타임에 선택할 수 있도록 사용했으며, 예상했던 것보다 훨씬 더 쉽게 프로세스를 찾을 수있었습니다. 최종 결과는 완벽하지는 않지만 확실하게 작업하기에 충분합니다.

1

AMD는 dxgettext있다 : 다시 시작하지 않고 언어 런타임을 변경하는 데 사용되는 도구의

http://dxgettext.po.dk/

전통적으로 하나. 델파이/유니 코드로이 패키지 코드 변경의 양이 감소했다고

참고이 질문에 대한 답변에 인용 된 자료 중 일부는 당신에게 유용 할 수 있습니다