GTk 한글처리 질문입니다..

wonmanajji의 이미지

라벨이나.. 버튼라벨에 한글을 넣으면.. 글자가 아예 나타나지 않습니다.

label=gtk_label_new(" 판매 " );

이렇게 넣어는데.. 한글이 나타나질 않아요..
영어로 하면 잘 나타나는데..

한글처리시에 다른 설정이 필요한가요??

glade에서는 한글처리가 이상이 없었는데..

답변 부탁드립니다~ ^^

jenix의 이미지

잘되는데;; 지금 학교에 나와있어서 직접 확인은 못하였지만,

저같은 경우는 UTF-8 으로 저장을 합니다.

(기본 환경이 UTF-8 이다보니.. )

한번 한글을 UTF-8 포맷으로 저장하고 컴파일해보세요.

나올거같은데 :?

---------------------------------------------------------------------------
http://jinhyung.org -- 방문해 보세요!! Jenix 의 블로그입니다! :D

익명 사용자의 이미지

저장할때요.. utf8형식으로 어떻게 저장하나요??

랜덤여신의 이미지

질문자 wrote:
저장할때요.. utf8형식으로 어떻게 저장하나요??

.vimrc 에

set fenc=utf-8
set fencs=utf-8,cp949,cp932,euc-jp,latin1,ucs-2le

이와 같이 넣으시면 파일 인코딩에 따라 열어주며

파일 편집시 :set fenc=utf-8 하면 utf-8 로 저장됩니다.

익명 사용자의 이미지

저렇게 했는데..
저장하고 빠져나오려하니까..
변환 실패로 뜨네요..
강제로 저장하고 빠져 나오지도 못합니다..
어떻게 해야 하나요??

랜덤여신의 이미지

질문자 wrote:
저렇게 했는데..
저장하고 빠져나오려하니까..
변환 실패로 뜨네요..
강제로 저장하고 빠져 나오지도 못합니다..
어떻게 해야 하나요??

:ver 해서 +iconv 가 아니라 -iconv 로 되어 있으면 iconv 라이브러리를 설치해 보세요.

iolo의 이미지

소스코드에 한글을 넣지 않는 것이 최선입니다.
대신 gettext를 사용해서 번역가능한 문자열로 뽑아내서 번역하는 것이지요.

그게 싫다면 위에 분이 말씀하신대로 utf8로 저장하시면 됩니다.
vi라면 위에분이 말씀하신대로 하면 되고...
그 외에도 utf8을 지원하는 편집기(gedit나 scite같은...)를 쓰셔도 됩니다.

그것도 싫다면
label=gtk_label_new(g_utf8_from_locale("판매"));
str = g_utf8_to_locale(gtk_label_get_text(label))
와 같이 하시면 됩니다만..(메모리 해제를 고려하셔합니다만)

요점은 gtk은 내부적으로 utf8이라고 가정하고 처리한다는 것입니다.
즉, utf8이 아닌 다른 값을 gtk로 보낼때(set)나, gtk에서 가져온값(get)을 utf8이 아닌 다른 코드로 출력할때(예를들면 EUC-KR터미널에 출력할때?)는 반드시
위의 g_utf8_xx나 g_convert등의 함수로 변환해주어야합니다.

wonmanajji wrote:
라벨이나.. 버튼라벨에 한글을 넣으면.. 글자가 아예 나타나지 않습니다.

label=gtk_label_new(" 판매 " );

이렇게 넣어는데.. 한글이 나타나질 않아요..
영어로 하면 잘 나타나는데..

한글처리시에 다른 설정이 필요한가요??

glade에서는 한글처리가 이상이 없었는데..

답변 부탁드립니다~ ^^

----
the smile has left your eyes...

wonmanajji의 이미지

아침에 봐서 아직 해결은 못했지만..

이렇게 빨리 답변을 주시니까... 공부할 맛이 나는거 같네요~! ^^

고맙습니다~

바람이분다..
그래 살아야겠다..

wonmanajji의 이미지

출력은 어떻게 설정해야 하나요??

그리고 제가 참고할만한 Glib 문서가 좀 있을까요??

영문 API만 보고서는 도통 모르겠습니다..

바람이분다..
그래 살아야겠다..

iolo의 이미지

'출력'이란는 것은 무엇을 말하는 것인가요?

위젯으로 출력?
파일로 출력?
터미널로 출력?
프린터로 출력?

위젯으로 출력이라면 UTF8로 바꿔서 해당 위젯의 set함수를 불러주면되겠죠.
파일 출력은 특별하게 gtk라고 달라지지 않습니다만...
역시 적절한 변환이 필요할 수도 있습니다.
(파일이름의 경우에는 더욱 민감할 수 있습니다.)
터미널로의 출력은 파일 출력과 동일합니다.
프린터로의 출력은 여러가지 선택할 수 있는 대안이 있습니다.
gimp-print같은걸 써보셔도 좋겠구요...
(이름에 gimp가 붙어있지만 김프와는 직접관련없습니다)

영문 API문서외에...
여러가지 영문 tutorial들이 있습니다.

번역된 책이 세 권있습니다만, 다 오래된 것들이라 GTK 1.x기준입니다.
그래도 없는 것 보다는 낫겠습니다만...

영어 읽는 것이 어렵다는 것은 이 바닥에서는 조금 곤란한 문제일지도 모르겠네요.
일반 영어도 아니고, 전공 매뉴얼 영어니까요.

----
the smile has left your eyes...

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.