한국어텍 ko.tex v0.1.0 사용설명서 은광희 김도현 김강수 2007 년 7 월

Size: px
Start display at page:

Download "한국어텍 ko.tex v0.1.0 사용설명서 은광희 김도현 김강수 2007 년 7 월"

Transcription

1 한국어텍 ko.tex v0.1.0 사용설명서 은광희 김도현 김강수 2007 년 7 월

2 일러두기 ko.tex 은 HL A TEX 과 hangul-ucs 가결합하여탄생한, 명실상부한 한국어 ( 한글 ) 텍시 스템 입니다. 한글라텍 (HL A TEX) 은 1990 년대이후텍에서의한글사용에 사 실 상 표 준이었으며, hangul-ucs 는한글라텍의현저한영향아래서성장한유니코드한글 텍매크로였던것입니다. 이제한국텍학회 (KTS) 의주도아래, 한글라텍과 hangul-ucs 가하나의매크로 시스템으로통합된것을매우기쁘게생각합니다. 이와더불어더욱알차고유용한 사용자안내서를작성하기위해많은노력을하였습니다. 한글라텍의표준문서였던 한글라텍길잡이 ( 은광희 ) 는아마도가장많이 읽힌한글로된라텍관련문서중하나가아닐까합니다. 이문서는단순히한글 사용법을넘어서서, 텍에입문하는데있어서도많은도움을주었습니다. 이문서는한글라텍길잡이를바탕으로 ko.tex 에맞도록개정하여쓴것입니다. 감사의말과머리말은거의그대로보존하였으며, ko.tex 이등장하는경과를설명하 는소절을하나추가하는정도에그쳤습니다. 다만문체의일치를유지하기위하여 이일러두기와감사의말을제외하고는경어체를평어체로고쳐썼습니다. 또한사 용법에있어서한글라텍이후의여러가지발전사항을새로운편제로서술하려 하였습니다. 지나치게기술적인서술을피하고실제사용자에게구체적인지침을 제공하는데이문서의목적이있습니다. 이문서가 ko.tex 을사용하는분에게조금이라도도움이되기를바랍니다. 뜻하 지않은잘못된내용이나실수, 빠진내용, 오식을바로잡아주시면더나은사용자 안내서를만드는데크게도움이될것입니다. 은광희김도현김강수 ( 識 ) 1

3 감사의말 라텍은쪽판짜기에탁월한기능을가진문서식자체계 (document typesetting system) 입니다. 한글라텍은이런우수한문서식자체계로한글도쓸수있도록하자는취지에서만들어진라텍꾸러미입니다. 라텍은사용에아무런제한이없이보급되고한글라텍또한한글을쓰고자하는모든이에게별다른조건없이유용한도구로제공됩니다. 이안내서에서다음과같은정보를얻을수있습니다. 한글라텍역사. 한글라텍설치. 한글라텍사용. 우리말글꼴선택. 이글이한글라텍을사용하는분들에게조그마하나마도움이될수있기를바랍니다. 한글라텍을발표하면서한글글자체작성에도움을주신고려대학교언어과학과李基用교수님, 문화관광부 1 포스트스크립트글자체를제공하신연세대학교국문과洪允杓교수님, 한글을보는눈을깨우쳐주신충남대학교의노용균교수님, 한글라텍의문제점과개선점을지적하고도와주신원세연님과이천우님, 우리말글자체선택모듬명령 (macro) 을제안 수정 실험해주신이형석님, 항상컴퓨터에서의한글사용에대해전반적으로도움을주시는신정식님, KTUG을운영하시는조진환님, 한글글자체를비롯하여다방면에서활동하시는박원규님, 한글라텍윈도우즈포팅에노력을아끼지않으시는김강수님그리고한글라텍의발전에기여하신많은여러분께감사의마음을전합니다. 특히李基用교수님은한글라텍의발전을위하여 2GB 굳은저장판 (hard disk) 을 2개기증하셨습니다. 한글라텍은이를바탕으로새로운완성형글자체와 UHC 글자체들을만들수있었습니다. 한글라텍을완성해가면서李基用교수님께감사합니다. 殷光熙. 1 이전의문화체육부 2

4 차례 제 I 편 총론 8 제 1 장 텍, 라텍, 한글라텍 9 제 1 절텍에대해 제 2 절라텍에대해 제 3 절한글라텍에대해 제 4 절 Omega(Ω) 에대해 제 5 절유니코드를이용한실험들 ( ) 제 6 절 ko.tex 의탄생 (2007) 제 2 장 설치 16 제 1 절 TEX 배포판 제 2 절 ϵ-tex 제 3 절디렉터리구조 (TDS) 제 4 절일반적인설치지침 다운로드 매크로와유틸리티 글자체의설치 제 5 절각플랫폼별설치패키지 제 6 절 CVS 개발버전 제 3 장 사용 22 제 1 절기본사용법 제 2 절 pdf 문서작성을위한설정 ko.tex/utf 문서 ko.tex/euc 문서 요약 제 3 절폰트에대하여 기본글꼴 추가글꼴

5 3.3 은글꼴트루타입폰트세트 타자글꼴에관한주석 요약 폰트의라이센스 제 4 절 utf 버전과 euc 버전의관계 제 II 편 ko.tex/utf 32 제 4 장 유니코드문서작성하기 33 제 1 절개관 제 2 절첫번째문서 간단한문서작성 컴파일 영문글꼴 옵션들 부가패키지들 제 3 절글꼴사용과선택 기본글꼴을변경하는방법 일시적으로폰트를변경하는방법 사용자폰트를활용하는방법 엄격한문자체크 제 4 절몇가지한글화 기호문자처리 한글문서서식 장절명령 강조 자간, 행간 장평 nonfrench spacing 각주 한글식카운터 자동조사명령 enumerate의항목머리 제 5 절미세조정

6 5.1 수식과의간격 한글폰트스펙 Micro Typography 제 6 절행나눔 영문자와숫자뒤의한글개행 여는괄호앞의행자름 이른바 고아 문제 제 7 절한글 PDF 만들기 하이퍼링크 폰트문제 pdf 한글텍스트의검색과추출 한글책갈피 제 8 절찾아보기와참고문헌 제 9 절옛한글구현 제 10 절다른패키지및클래스와의호환성 AMS-L A TEX 클래스 beamer 지원 prosper/powerdot 지원 제 11 절일본어와중국어문단 제 5 장 memhangul 과 oblivoir 66 제 1 절소개 제 2 절 memhangul 제 3 절 oblivoir 간단한문서만들기 용지, 여백, trim mark 글꼴선택 기타 제 III 편 ko.tex/euc 69 제 6 장 ko.tex/euc의의의와사용법 70 제 1 절 ko.tex/euc의의의 문자의범위

7 1.2 ko.tex/euc의한계 하위호환성 사용설명서에관하여 제 2 절 ko.tex/euc의사용설명 한글문서의틀 문서의모양새설정 글자체선택 우리말숫자모듬명령 우리말각주판짜기 조사이형태, 매개모음, 지정사탈락 우리말이름 그외의우리말화 제 3 절한글화 제 IV 편 한글문서작성 92 제 7 장 한글문서서식 93 제 1 절각주형식 hangulfn의각주판짜기 각주문단모양관련 제 2 절자간, 행간, 단어간격 자간 단어간격 행간 제 3 절 ko.tex/euc에서의밑줄 제 4 절장절표제 제 5 절문장부호 우리말문장부호의사용법 문장부호에관련된문제 제 8 장 색인과문헌목록 105 제 1 절 ko.tex/euc 의 hbibtex과 halpha 우리말문헌인용 참고문헌데이터베이스

8 제 2 절색인 ko.tex/utf의색인처리 ko.tex/euc의우리말색인처리 제 9 장 한글트루타입폰트의사용 113 제 1 절 ttf2kotexfont 사용법 제 2 절문서에서폰트설정하기 제 3 절 pdf 문서제작을위한 pdfl A TEX 사용 제 10 장 plaintex 과 ko.tex 116 제 1 절 kotexplain.tex 제 2 절 hangulcweb.tex 제 11 장 html 제작 118 참고문헌 119 부록 124 부록 A 완성형한글문자 부록 B 윈도우즈유니코드편집기 부록 C 이문서에대하여 부록 D 글꼴예문 부록 E 용어대조

9 제 I 편 총론 8

10 제 1 장 텍, 라텍, 한글라텍 제 1 절 텍에대해 텍 (TEX) 은 1 미국스탠퍼드대학전산학과의 Donald E. Knuth 교수가 1977년 5월에처음으로만들었고, 그해여름에 Michael F. Plass 씨와 Frank M. Liang 씨가지금의텍의전신을만드는공동작업을하였으며같은해말에서다음해초사이에 Knuth 교수가다시완성시킨문서식자체계이다. 텍은원래 SAIL 2 언어로쓰여졌으나 1979년초에는 Knuth 교수와 Luis Trapp Pardo에의해공동개발된 WEB 언어로전환시키는작업이시작되었고 1979년과 1980년에 Ignacio A. Zabala 씨가이를완성시켰다. 텍은 1979년후반기와 1980년전반기에걸쳐 Knuth 교수가더욱안정된프로그램으로정착시켰고그해 9월에 TEX82 버전 0으로발표되기시작했다. 그후많은사람들의조언을반영하여 1989년 9월에최종검토를거쳐발표된텍은현재, 전문적인자연과학문서를작성하는데가장좋은문서식자기로인정받고있다 ((Knuth, 1984) (Knuth, 1986) 을참고 ). 수학자이기도한 Knuth 교수는이문서식자체계를사용하여수학공식도자유자재로쓸수있도록했다. Knuth 교수는텍외에도 METAFONT 를개발하여텍문서를인쇄하는데필요한양질의글자체를만들어낼수있도록하였고이로써텍은출판서적을만드는데손색이없는문서식자체계로자리를잡게되었다. 제 2 절 라텍에대해 텍의식자기능은매우탁월하지만일반사용자의측면에서는프로그래머의사고 1 텍 은그리이스어 τεχ 에서유래된낱말이다. English words like technology stem from a Greek root beginning with the letters τεχ...; and this same Greek word means art as well as technology. Hence the name 텍, which is an uppercase form of τεχ. Insiders pronounce the χ of 텍 as Greek chi, not as an x, so that 텍 rhymes with the word blecchhh. It s the ch sound in Scottish words like loch or German words like ach; it s a Spanish j and a Russian kh. When you say it correctly to your computer, the terminal may become slightly moist. 2 Stanford Artificial Intelligence Language The TEXbook 에서발췌. 9

11 능력을요구하기때문에많은노력과경험으로텍의기능을이해하여야문서를작성할수있다. 예를들어사용자는글자체를스스로정의하고문장과문장사이의간격을넓혀주는등의일을일일이손으로처리해야했다. 그래서텍은전문적인프로그래머층에서나사용할수있었다. 그러나미국의전산과학자인 Leslie Lamport 는사용자와텍의사이를좁히는역할을할수있도록라텍 (L A TEX) 을개발하여쉽게문서를작성하게끔기여하였다 ((Lamport, 1985) 를참고 ). 그는일반적인문서모양새를텍의모듬명령 (macro) 으로정의함으로써, 프로그래밍의경험이없는사용자도쉽게문서를작성할수있도록하였다. 사용자는쓰고자하는글의전체적인윤곽에맞는양식을지정한후, 작성하는문서의내용에만집중하면원하는모양새의문서를작성할수있게되었다. 그리하여사용자는텍에대한전문지식이없어도짧은시간내에좋은문서를작성할수있게되었다. 세월이흐르면서라텍은전세계적으로많이보급되었고이에따라라텍이해내야하는과제의폭도넓어졌다. 그결과로라텍은근본적인바탕을바꾸고국제화되어야한다는여론이높아졌고 1992말부터는라텍버전 3 일감팀 (project team) 3 이구성되어새로운라텍버전 3의개발작업에착수하였다. 1994년 6월 1일을기해라텍버전 2ϵ 을공식적으로내놓은이팀은현재 (94년 11월 ) 깁기수준 (patchlevel) 4를발표하면서계속라텍버전 3을위해작업하고있다. Frank Mittelbach 씨와 Rainer Schöpf 씨는 (Scherber, 1994) 에서라텍버전 3 개발의목표를다음과같이설명하고있다. 라텍의사용범위를이전의자연과학분야에서벗어나, 각분야의문서모양새에도만족할수있는모양새파일을제공하고이런여러모양새를간단한방법으로사용자가선택할수있도록한다. 위와같은모양새파일을자세히설명함으로써사용자가이런기본적인문서모양새를바탕으로자신의독자적요구를쉽게이룰수있게한다. 제 3 절 한글라텍에대해 이렇게라텍이국제화되어가는동안한국 KAIST 전산학과에서는라텍으로한글 을쓸수있도록모듬명령을만들고한글글자체를준비하여 hlatex 을 ( 최우형, 3 Leslie Lamport, Johannes Braams, David Carlisle, Alan Jeffrey, Frank Mittelbach, Chris Rowley, Rainer Schöpf: 이들은 (Mittelbach et al., 2004) 를출간하였는데이책의수입은그절반이라텍버 전 3 개발팀에게할당되어이팀을지원하게끔되어있다. 10

12 백윤주 ) 보급하였다. 4 (( 최우형, 1992) 를참고 ) hlatex은기존의라텍에한글글자체를추가하는 hfont.tex, 한글문서작성환경을정의하는 harticle.sty과 hreport.sty, hbook.sty 그리고한글 KS 완성형부호체계를텍의모듬명령으로변환해주는앞처리기 (preprocessor) htex으로구성되어있었다. 보급되는글자체의사용을제한받으면서출발한 hlatex은그런대로통신망을통해 KAIST 외부의일반에게퍼지게되었고 5, 이를바탕으로, 한자의사용을추가한 jhtex이 ( 殷光熙 ) 만들어지게되었다. 여기에는손쉽게구할수있는일본의간지글자체를 hlatex에덧붙여사용할수있도록하였고문서모양새도좀더한국적인것을사용할수있도록하였으며글자체가늘어남으로써불가피해진 NFSS의도입이이루어졌다. 6 이두프로그램은좀더나은, 하나의프로그램으로일반에게보급될수있고자한글라텍으로통합되었는데이로써한글라텍은다음과같이변화하였다 ( 한글라텍버전 0.92e). 1 라텍버전 2ϵ 에의한한글문서작성 2 한국표준부호체계및한자사용 3 앞처리기 (preprocessor) 의기능을라텍모듬명령으로대체 KAIST 전산학과에서시작된 hlatex은다양한글자체를보급하여어느정도변화있는한글문서를작성할수있도록하였지만, 글자체의원천 (source) 이공개될수없어서, 미리만들어진 300dpi와 600dpi의 pk 파일만제공되었다. 따라서문서의인쇄는 300dpi와 600dpi의해상도를갖는인쇄기에서만가능했다. 그래서한글라텍버전 0.93부터는문화관광부에서공개한글자체와포스트스크립트 type I 글자체, 그외에도두값본그림 (bitmap graphic) 에서추출된외곽선글자체가 META- FONT 원천으로보급됩으로써사용자는아무런제약없이한글라텍을사용할수있게되었다. 글자의배치도이전의 KAIST식인조합완성혼합식을따르지않고일반적인한국표준완성형방식을지향하게되었다. 4 유명한한글라텍패키지들의명칭은다음과같이쓴다. hl A TEXp, HL A TEX, Hangul-ucs, ko.tex.... 이곳 에서 hlatex 이라고쓴것은 HL A TEX 의전신으로 HL A TEX( 한글라텍 ) 을말하는것이아니므로모두소문자로 써서구별하였다. 5 그당시 hlatex 의사용은 KAIST 이내와해외에서만허용되었다. 6 NFSS 는라텍버전 2ϵ 의주된기능으로 New Font Selection Scheme 의약자이다. 라텍의글자체선 택방식을대폭개선함으로써그동안라텍의취약점으로남아있던글자체선택문제를완벽히해결한 기능이다. 11

13 제 4 절 Omega(Ω) 에대해 현재텍의발전방향을바라보면라틴알파벳처럼비교적간단한방법으로처리하기어려운한글과같은문자의처리에도상당한노력이기울여지고있음을알수있다. 그러나근본적인문제는, 텍자체가 7비트부호체계를바탕으로만들어져있는반면한글부호화방식은 8비트의문자가두번연속되는이중바이트의체계 (KS X 1001, UCS2) 이거나세번연속되는다중바이트체계 (Unicode/UTF-8) 라는데에서발생한다. 텍버전 3 7 의출현으로유럽언어와같은 8비트부호체계의처리는해결되었지만우리말과같은다중바이트부호를처리하는데에는아직많은문제점을안고있다. 세계적인추세도각나라의모든언어를동시에부호화할수있는통일된부호화방식을지향하게되었고, 국제표준화단체 (ISO) 는 32비트코드체계인국제부호화문자세트 (UCS4) 를발표하였다. 이에따라텍에서이문자세트를사용할수있도록하기위해 8비트코드체계를확장하여 16비트코드체계에바탕을둔 Omega(Ω) 로텍을대체하는시도가나오게되었다. Omega(Ω) 는 16비트텍의구현으로서, 유니코드를처리할수있는텍이라고간단히표현할수있다. Omega(Ω) 는 Yannis Haralambous와 John Plaice가공동으로개발하였는데 1996년 11월에 tetex 버전 0.4를바탕으로시험판이나온이래, 1998년 3월에발표된 web2c 버전 7.2 에는 Omega(Ω) 버전 1.5를공식적으로채택하여함께보급하게되는단계에까지오게되었다. 그후 Omega(Ω) 와 ϵ-tex 을결합한 Aleph(ℵ) 가 TEXLive에포함되어배포되고있다. 비록현재는개발이잠시주춤하고있는듯하나, Omega(Ω) 를통한실험은유니코드를이용하는조판이라는방향을옳게잡았던것이라고생각한다. 제 5 절유니코드를이용한실험들 ( ) Omega(Ω) 에주목하기시작하면서한글라텍은 EUC-KR 부호계밖에표현할수없는한계를넘어서기위해 Omega(Ω) 의 L A TEX 판인 Lambda 매크로를개발하였다. 특히 2002년 KTUG을중심으로이루어진일련의실험과그성과인 u8hangul 스타일은 2005년의한글라텍 1.0.1의형성에결정적인토대가되었다. 한글라텍 1.0.1은여전히 EUC-KR 한글을처리하는 L A TEX 매크로와더불어, 모든한글 (UHC) 을표현하고식자할수있는 Lambda 패키지로도개발되었던것이다. Omega(Ω) 는이제거의완숙한단계에도달하고있고앞으로는텍을완전히대체하고본격적으로사용되는방향으로전개될것을희망하고있습니다. ( 은광희, 2005) 7 현재의 TEX 버전은 이다. 12

14 이시기에 Lambda를이용하여한글및한자로이루어진고문헌의식자에성공한일련의실험은 KTUG 게시판에그흔적이아직도남아있다. 이때야말로한글이라는문자를텍에서표현하는데있어한번의도약을이룬시기였다고볼수있다. 한글표현의한계가없어진것이다. 8 그러나 Lambda를일상적인문서작성에쓰기에는몇가지문제가존재했다. 우선 pdf 최종출력물을얻는중요한방법인 pdftex 을사용할수없다는것, 그대신 DVIPDFMx 9 가 pdf 변환기역할을해줄수있었지만 Omega(Ω) 자체의한계로인하여불편한점들이보고된것, 그리고 2003년에 Omega(Ω) 가더이상개발되지않을것이라는소식을듣게된것, L A TEX 의수많은패키지솔루션들을그대로사용하는데한계를보인것, Omega(Ω) 를위한편리한글꼴세트가충분히마련되어있지않았던것등이었다. 10 한편, pdf 문서제작이초미의관심사로떠오르면서, 한글라텍에대한약간의추가적인보완이시도되기도하였다. hyperref라는 pdf 제작에필수적인패키지와 hangul 패키지의불일치를해결하기위하여 hangul-k 라는 third-party 패키지가제작되기도하였으며, 한글라텍에자간과행간을좀더쉽게적용하려는일련의노력들이이루어지기도하였다. 2004년과 2005년을전후하여, 김도현과김강수에의해 hangul-ucs 패키지가탄생한다. 이것은 Dominique Unruh 의 latex-ucs 패키지를기반으로 UTF-8 인코딩된 유니코드한글텍스트를식자하는것이었다. 11 L A TEX 에서유니코드문자를식자하는 방법으로 utf8.def 와 utf8x.def 가있었는데, 이가운데 latex-ucs 패키지는 utf8x.def 를포함하고있는것이었다. 이패키지에는한글라텍을연구하고수정한결과가반영되어있었으며, 한글문서화서식은거의한글라텍의것을그대로가져와서사용하였다. 자동조사처리나행나눔과같이독자적인연구의결과도물론포함하고있었다. 2005년과 2006년에걸쳐, 더완성된한글라텍과 hangul-ucs 패키지는각각그용도에알맞게발전하였다. 한글라텍의지배적인위치에는변함이없었으나, 빠르게발전하고있는 hangul-ucs도점차그사용층을넓혀가고있었다. 8 한글윈도우즈운영체제의 확장완성형 (CP949) 은 Lambda 를테스트하던시기에잠시고려한적이 없지않으나, 원칙적으로그후고려대상에서제외되었다. 유니코드를이용하여한글을표현하는것이 표준에도부합하며혼선을최소화하는방법이라는데동의했기때문이다. 9 KTUG 의조진환교수가개발한 dvi 드라이버프로그램으로서, 이를바탕으로 X 만들어지기도하였다. 10 이런저런이유로인해, ko.tex 은 Omega(Ω) 를위한지원을제거하기로결정하였다. 11 hangul-ucs 4.0 이후버전과현재의 ko.tex 은 latex-ucs 에의존하지않는다. TEX 의 xdvipdfmx 가 E 13

15 그림 1.1: ko.tex 의탄생 제 6 절 ko.tex 의탄생 (2007) 그림 1.1은 HL A TEX 에서출발하여 ko.tex 에이르는한글텍의발전과정을요약한것이다 년 6 월 30 일, 한국텍학회모임에서, 은광희 김도현 김강수등한글라텍 hangul-ucs의저자들과 KTS 임원 회원등이모인자리에서이두한글매크로패키지를통합하여통합한글텍패키지를제작하기로의견을모은것이다. 이것은그동안한글사용에있어서둘이상의패키지가존재함으로인해빚어진혼란을불식하고향후한글텍 / 라텍의발전의근거를마련했다는점에서도중요한일보전진이었고, 한글라텍으로부터오랜시간발전해온라텍에서의한글사용을총체적으로점검할기회를얻게되었다는점에서도의미가있는결정이었다. 그로부터일개월정도의작업을통하여 ko.tex 베타버전이공개되었다. ko.tex 은 Unicode/UTF-8 인코딩과 EUC-KR을모두지원하기로하였으나원칙적으로향후의발전방향은 Unicode로합의하였다. 또한은광희의 UHC 글꼴을발전시킨 은 14

16 글꼴 type 1 을기본글꼴로채택하고이를 EUC-KR 버전에도적용시킴으로써, 폰 트를둘러싼이런저런불편한점을일소하였으며, pdf 제작및매크로의호환성과 안정성에있어서몇가지중요한진보를이루었다. 15

17 제 2 장 설치 제 1 절 TEX 배포판 각플랫폼별로유명한 TEX 배포판 1 들이있다. 리눅스에서는 Thomas Esser의 tetex 이부동의지위를오랜동안지켜왔으며, 매킨토시에서는 Classic Mac 시기의 OzTEX 이퇴조하고 Mac OS X 하에서 Gerben Wierda의 gwtex 이널리쓰였다. 윈도우즈는사정이복잡하지만 MiKTEX 이사실상가장많은사용자를가진시스템이되었으나 Fabrice Popineau의 fptex 도한동안유수한사용자를보유하고있었다. MiKTEX 을제외하면이모두가 web2c에서파생된시스템이라는공통점을지니고있다. MiKTEX 도종래에는 web2c를변형해서나마받아들이게되었다. 그런데 2007년에접어들면서사정이일변한다. 우선 tetex 과 gwtex 의개발이중단되었다. 또한 web2c 역시독자적인배포판 ( 소스 ) 로서유지되지않게되었다. 그대안으로 TEXLive가새로운표준으로등장했기때문이다. 윈도우즈의경우, 사정은더욱복잡해졌다. KTUG에서는 2006년, TEXLive와무관하게독자적인배포판 KTUG Collection을제작하였는데, 이것은 web2c로부터파생된 Akira Kakuto의 W32TeX의바이너리를가져다쓴것이었다. 다행히도 TEXLive 자체가 W32TeX을채택함으로써, KC2006과 TEXLive는그차이가미미한대단히유사한시스템이되었다. 2 이글은 TEXLive 2007을기준으로작성한다. 매킨토시와리눅스등유닉스-류운영체제에서는 TEXLive 이외의대안이현재로서는없다. 일부리눅스시스템에서 tetex 이여전히주류를이루고있으나조만간 TEXLive로이행하게되리라고기대한다. TEXLive는방대하기도하거니와대단히안정적으로동작하는시스템으로, 사실상다양한배포판의시대를종결시킨 유일 배포판의지위를차지할것으로예측된다. 3 일부상업용 TEX 배포판의경우는, 그배포판을판매하는측에서한글사용에 1 TEX implementations 2 내부적으로차이점은많다. 특히한글운영에필요한다양한유틸리티를제공하는것, 일괄인스톨 러를제공하는것, 패키지관리유틸리티와업데이트유틸리티를제공하는것, 셸유틸리티 (KCmenu) 를 제공하는것등은 TEXLive 보다 KC2006 을더욱편리한시스템이되게한면이있다. 3 MiKTEX 에대하여별도로언급하지못하는것은유감이다. 그러나 MiKTEX 사용자들은 MiKTEX 에서 ko.tex 을설치하는적절한방법을찾아낼것이라고믿는다. 16

18 관한해결책을제시하는것이옳다고생각한다. 이글은상업용배포판에대해서는 별도의언급을할수없을것이다. 제 2 절 ϵ-tex ko.tex/utf는 ϵ-tex 을요구한다. ϵ-tex 의확장프리미티브를활용하고있기때문이다. kotexplain 패키지도 tex으로는컴파일되지않으며 etex이나 pdftex을이용하여야한다. 다행히 TEXLive 2007에서 latex은 ϵ-tex 엔진을사용하도록조성되어있는것이기본값이므로 L A TEX 사용에있어서사용자가별달리주의할것은없다. 다른 TEX 배포판, 예컨대 tetex 등에서는 elatex이나 pdfelatex을실행하지않으면안되는경우도있을수있다. 텍시스템의기본 L A TEX 엔진을 ϵ-tex 으로바꾸는것은쉽게할수있으나이글의범위를넘어선다. 제 3 절 디렉터리구조 (TDS) 표준적인 web2c 시스템 (TEXLive 는 web2c 시스템이다 ) 에서는방대한파일을간단하게찾기위해서 kpathsearch 라는라이브러리를이용한다. kpathsearch 라이브러리는필요한파일들이일정한디렉터리구조에따라배치되어있다고가정하기때문에 TEX 시스템에서파일은이러한디렉터리구조 (TDS 4 ) 를따라배치되어있어야한다. 이글에서는 2004년발표된 TDS version 1.1을기반으로설명한다. 5 이규정에따르면, 텍에필요한파일들은 TDS 의출발점인 TEXMF 밑에두게된다. TEXMF 는텍의원천코드를컴파일할때결정되며, 둘이상을둘수있다. TEXLive 는 texmf, texmf-dist, texmf-doc라는기본 TEXMF 트리와더불어사용자가설정할수있는 texmf-local, $HOME/texmf 등을사용한다. 이들을편의상 TEXMF root라고부르기로하겠다. 한시스템에여러사용자가있을때, 시스템전체에적용되는 TEXMF들과개별사용자자신이이용하는 TEXMF도분리할수있다. 이미설치된텍운영체계에서도 texmf.cnf 파일에서 TEXMF를다시설정할수있다. TDS를준수할경우, 서로다른텍배포판에서도 TEXMF root의경로만다를뿐이고그이하의디렉터리구조는같다. 4 TeX Directory Structure. 5 MiKTEX 2.6 은 TDS 1.1 을잘따르지않는것으로알려져있다. 그러므로아래의설명은 MiKTEX 에 적용되지않는다. 17

19 ko.tex 은위의어떤 TEXMF root 아래설치되어도무방하다. 이위치를편의상 [texmf] 라고표시하겠다. 예컨대 /usr/local/texlive/texmf-local 을 ko.tex 이설치될위치로선정할수있을것이다. 되도록이면.../texlive/2007/texmf 이나, texmf-dist 와같은시스템디렉터리와는분리하는것이좋다. Top-level directories 는텍운영체계의구성요소로서 tex ( 텍파일 ), fonts ( 폰트관련파일 ), metafont ( 폰트가아닌 METAFONT 파일 ), metapost (METAPOST 파일 ), bibtex(bibtex 파일 ), scripts ( 운영체계독립적인실행파 일 ), doc ( 사용자용문서파일 ), source ( 원천파일 ), < 구현 > (emtex, vtex, web2c 와같은텍구현관련파일 ), < 프로그램 > (mft, dvips 와같은프로그램에따른입 력및설정파일 ) 등등이해당된다. 텍체계를구성하는모듬명령 ( 매크로 ) 파일의위치는다음과같은계층구조 를갖는다. TEXMF/tex/ 틀 / 꾸러미 틀 은텍의용어로 \dump 되는것들을말하는데, ko.tex 은플레인텍 (plaintex) 을위한 kotexplain, 라텍을위한 ko.tex-euc/utf 등으로이루어지므로, 거기에맞게 [texmf]/tex/plain/kotex 또는 [texmf]/tex/latex/kotex 등의위치에놓이 게된다. 글자체는다음과같은규정에의해설치할것을요구한다. TEXMF/fonts/ 형식 / 제공자 / 글자체 TEXMF/fonts/{enc,lig,map}/ 하위경로 형식 은글자체의종류를가리킨다. 즉, tfm, vf, type1, afm 등이이에해당한다. 글자체의부호화나합자혹은글자체이름대응파일들은각각 enc, lig, map 형 식 디렉터리에평행한디렉터리에따로둔다. 제공자 의대상은글자체를만드는 업체나만든이등인데, adobe 회사의 type 1 글자체 (adobe), bitstream 회사의 type 1 글자체 (bitstrea), D. Knuth 교수의 METAFONT 글자체 (public), J. Knappen 씨의 METAFONT 글자체 (jknappen) 등을예로들수있다. 글자체 는글자의모 양에따른이름이다. adobe 회사에서만든글자체에는 times, helvetic 등의이름 이사용되고 D. Knuth 교수가텍운영체계를위해서만든글자체의경우는 cm, ec 등의이름이사용되며 ko.tex 에서제공하는글자체에서는 myoungjo, gothic 등의 이름이사용된다. ko.tex 의글자체들은다음처럼위치하게된다. [texmf]/fonts/ 형식 /kotex/{base,extra}/{myoungjo,gothic,...} [texmf]/fonts/map/dvips/kotex 18

20 제 4 절 일반적인설치지침 4.1 다운로드 ftp://ftp.ktug.or.kr/ktug/ko.tex/ 디렉터리에서배포되는압축파일은다음두개이다. ko.tex-macro.tar.gz ko.tex-unfonts-base.tar.gz 둘다.tar.gz로압축된파일로서 gunzip과 tar를이용하여압축해제할수있다. 4.2 매크로와유틸리티 먼저 *-macro-* 압축파일을적당한곳에풀면, 몇개의파일 (INSTALL, LICENSE 등 ) 과일곱개의하위디렉터리를얻을수있다. 이것을다음과같이이동한다. ================================================================ subdirectories and/or files destination ================================================================ bibtex/euc [texmf]/bibtex/bst/kotex/euc doc/* [texmf]/doc/latex/kotex/* latex/* [texmf]/tex/latex/kotex/* makeindex/* [texmf]/makeindex/kotex/* plain/* [texmf]/tex/plain/kotex/* sfd/* [texmf]/fonts/sfd/* util/*.pl [texmf]/scripts/kotex/perl/*.pl ================================================================ util 디렉터리안에는두개의.c 소스와몇개의 *.pl 스크립트가있다. 이 중.c 는컴파일하고 6 *.pl 은실행권한을부여하여 /usr/local/bin/ 으로이동 한다. 7 hbibtex.c $ gcc -o hbibtex hbibtex.c $ cp./hbibtex /usr/local/bin/ 6 윈도우즈용으로.exe 파일이함께제공된다. 7 윈도우즈에서는 Active Perl 등을설치하여이스크립트를실행가능하게해두어야한다. 혹은설치 패키지를이용하는경우.exe 형식파일로제공하는경우도있을것이다. 19

21 hmakeindex.c $ gcc -o hmakeindex hmakeindex.c $ cp./hmakeindex /usr/local/bin/ *.pl $ chmod a+x *.pl $ cp./*.pl /usr/local/bin/ 4.3 글자체의설치 *-fonts-base-* 압축파일을내려받은다음적당한곳에풀면라이센스관련파 일몇개와함께두개의하위디렉터리가있다. 이것을아래와같이이동한다. 기 본으로배포되는폰트패키지에는명조, 고딕, 타자, 그래픽, 네글꼴가족만포함 되어있다. 이밖의 은글꼴 시리즈는 extra 폰트라는이름으로배포되는데, 만약 많은글자체를필요로한다면 extra 패키지까지설치해야할것이다. 설치방법은 동일하다. ======================================================== directory destination ======================================================== fonts [texmf]/fonts tex [texmf]/tex ======================================================== 이글자체들에대한정보를텍엔진에게알려주는것이 updmap 을통한 map 의 생성이다. TEXLive 2007 은이과정을매우간편하게진행할수있는데, 다음절차를 따르면된다. $ mktexlsr $ updmap-sys --enable Map=kotex-base.map 만약 super user 권한을가지고있지않다면 updmap-sys 대신 updmap 을실행한다. extra 폰트패키지도설치했다면 # mktexlsr # updmap-sys --enable Map=kotex-extra.map 이것으로끝이다. 20

22 제 5 절 각플랫폼별설치패키지 앞절에서설명한일반적설치지침을따르는것이번거롭고불편할수도있으므로그럴때는간편한각배포판, 플랫폼별설치패키지를이용하는방법이있다. install package 8 디렉터리에가면윈도우즈 KC2006 및매킨토시 TEXLive를위한설치패키지가마련되어있다. 리눅스는각배포판별로간편한설치유틸리티를제작할수있을것인데, 이에대한정보는 KTUGFaq::ko.TeX/instpack 페이지 9 에서찾을수있다. 제 6 절 CVS 개발버전 CVS::ko.TeX 10 에서최신의개발버전을확인할수있다. 4.1 절에서언급한파일들 은 CVS snapshot 을정기적으로릴리스한것이므로비교적안정적이나, CVS 개발버 전은사용자가개발에참여할의사가있거나최신버전을활용하고자할때, cvs 를 통하여다운로드받을수있을것이다. anonymous 로 CVS 를리트리브하려면다음과같이한다. $ cvs -d :pserver:anonymous@cvs.ktug.or.kr:/home/cvsroot login $ cvs -d :pserver:anonymous@cvs.ktug.or.kr:/home/cvsroot \ checkout ko.tex 패스워드를물어오면그냥엔터를치면진행할수있다

23 제 3 장 사용 한글라텍 ko.tex 은은광희의 HL A TEX 과김도현 김강수의 hangul-ucs를합쳐서하나의패키지로구성한것이다. 1990년대이래한글사용의사실상표준이었던이두패키지가결합함으로써명실공히라텍에서의한글사용에새로운장을열었다고평가해도좋으리라. ko.tex 은본격적인한국어 ( 한글 ) 텍시스템이다. 1 라텍은물론이고플레인텍에서컨텍스트에이르기까지거의모든텍관련매크로에서한글을구현하도록할수있다. 그래도그중심은역시한글 라텍 일것이다. 이글은한글 라텍 에대해서주로다루고다른매크로에서의한글구현에관한사항은별도의장으로설명하겠다. 앞으로별다른언급이없으면 ko.tex 이한글라텍매크로를 ( 주로 ) 가리키는것으로하자. 한글라텍으로서 ko.tex 은 EUC-KR 코드와 UTF-8 한글코드를지원한다. 2 그가운데 EUC-KR 지원은일종의 하위호환성 측면에서제공되는것으로, 향후발전은 UTF-8 부분만반영될것이다. EUC-KR 코드로작성된기존의한글문서를컴파일할수있고이것을더쉽게 UTF-8 문서로바꿀수있게하는것이두코드를모두지원하는원래의목적이며 EUC-KR 버전은 UTF-8 버전과항상동일하게동작하지않는다. 또한 EUC-KR 한글문서는비교적쉽게 UTF-8로포팅할수있으나그역의경우는잘되지않거나많은노력이필요할수있다. 그럼에도불구하고 ko.tex/euc는 HL A TEX 에비해서다음과같은점이개선되었다. 주로 pdf 제작과관련된것들이많다. euc 1. pdf 책갈피를만들어도한글이 깨지지 않게할수있다. 2. pdf 문서에서한글텍스트의검색과추출이되게할수있다. 3. KTUG에서발전한한글타이포그래피의성과를부분적으로나마이용하여비교적잘정돈된한글문서를만들어낸다. 그러나 utf 버전은더욱발전된타이포그래피를다루고있으므로되도록이면 utf 버전이사용되기를희망한다. 1 ko.tex 은텍스트상황에서 ko.tex 이라고쓰고 케이오텍 또는 코리언텍 이라고읽는다. ko 는 한국어를의미하는국제부호에서취한것이다. ko 를소문자로쓴다. 2 윈도우즈에친숙한 CP949 코드는지원하지않는다. CP949 는사실상유니코드의현대한글음절 영역에서다룰수있는모든문자에해당하므로유니코드를통하여지원하는것이바람직하다고판단하 였다. 22

24 한편, hangul-ucs 에비해서는주로 (linux 에서의 ) 설치와관련된문제가현저히 개선되었다. utf 1. latex-ucs 패키지에의의존성이없다. 2. ttf2pk를사용하지않음으로써 ttf2pk에대한의존성도사라졌다. 3. HL A TEX 과통합되었으므로 hlatex에대한의존성도필요없다. 4. 트루타입 은글꼴 을사용하지않기때문에별도로폰트를설치해야하는불편이없다. 5. dvipdfmx.cfg나 ttf2pk.cfg 등의설정파일수정을일일이해야하는불편이없어지고 updmap에의한일괄명령한번으로모든폰트설정이이루어진다. 6. 기본패키지의크기가이전에비하여현저히줄었다. 제 1 절 기본사용법 ko.tex 의기본스타일은 kotex.sty 이다. 다음과같이쓴다. \usepackage{kotex} 언어코드를첫번째인자로지정하는데, 디폴트는 utf이다. 그러므로 utf는별도로명시하지않아도되지만 euc 문서를작성할때는반드시 euc 옵션을되도록맨처음에지정한다. utf euc \usepackage[euc]{kotex} 명령 \usepackage{kotex} \usepackage[hangul]{kotex} \usepackage[euc]{kotex} \usepackage[euc,hangul]{kotex} 대응 \usepackage{dhucs} \usepackage[hangul]{dhucs} \usepackage{hfont} \usepackage{hangul} HL A TEX 에는두가지사용법이있었다. 하나는 hfont이고다른하나는 hangul 이었다. ko.tex 에서는한글서식 hangul 옵션이주어진상태와그렇지않은상태로구분한다. 영문위주문서에한글을사용할때는 hangul 옵션없이쓰고, 한글위주의문서에서한글식서식을설정하려면 hangul 옵션을지정한다. 23

25 kotex.cfg 사용자는일반적으로 utf나 euc 가운데한가지를주로쓰지둘다쓰게되는경우는거의없을것이다. kotex.cfg 파일은이럴경우에대비하여자신이쓰는 kotex 옵션을미리지정해두고단순히 \usepackage{kotex} 이라고만하여그옵션들을활성화하게할수있다. 이파일은 [texmf-ktug]/tex/latex/kotex/ 에있으므로자신에게맞게적절하게수정해서쓰도록한다. 제 2 절 pdf 문서작성을위한설정 2.1 ko.tex/utf 문서 utf 문서는다음과같이한다. 유니코드문서에서는 hyperref 에 [unicode] 옵션을 지정하는것으로 pdf bookmark 문제가모두해결되므로,.out 파일의코드변환과 같은문제에신경쓸필요가없다. \usepackage{kotex} \usepackage{ifpdf} \newcommand\mydriver{\ifpdf pdftex\else dvipdfm\fi} \usepackage{\mydriver,unicode,bookmarks]{hyperref} utf 여기서는 [unicode] 옵션이반드시지정되어야한다. 그리고 CJKbookmarks 를쓰지 않는점이다르다. 또한 euc-bookmark 와같은번거로운절차가필요없다. 위의예 에상당하는컴파일절차예시는다음과같다. 3 $ (pdf)latex foo $ bibtex foo $ komkindex -s kotex foo $ (pdf)latex foo $ (dvipdfmx foo) pdf 문서의텍스트검색과추출은매우중요한문제이다. 이것은어떤드라이 버로 pdf 를생성하느냐에따라조금달라지는데, 일괄요약하면다음과같다. dvipdfmx 기본폰트인 type 1 글꼴을매우잘처리하고이로부터검색및추출이 가능한 pdf 를만들어낸다. 별도의조치가필요없다. dvips 트루타입을처리하지못하는점때문에이전부터문제가있다고생각되었으 나적어도 ko.tex 이제공하는폰트를사용하는한검색추출에문제는없다. 역시별도의조치가필요없다. 다. 3 komkindex 는 Perl Script 이므로경우에따라 komkindex.pl 을실행해야할것이다. 이후로도같 24

26 pdftex 이때는 \pdfgentounicode 를활성화해주어야한다. 그러므로, preamble 에다음과같이선언하는것으로될것이다. \ifpdf \input glyphtounicode \pdfgentounicode=1 \fi 어떤드라이버를사용하든모두포스트스크립트윤곽선글꼴이사용되고, pdf 북마크가잘만들어져있으며한글텍스트의검색및추출이자유롭다. 2.2 ko.tex/euc 문서 \usepackage[euc]{kotex} \usepackage{ifpdf} \newcommand\mydriver{\ifpdf pdftex\else dvipdfm\fi} \usepackage[\mydriver,cjkbookmarks]{hyperref} euc 위의것은 euc 문서를위한설정이다. hyperref 는거의필수이므로이를로드 하여야하고, 북마크는 CJKbookmarks 옵션을준다. 이제이문서를처리하는과정 에서, 맨마지막 L A TEX 컴파일직전에 euc-bookmark 유틸리티를한번실행해주면된 다. 이유틸리티가하는일은북마크를위한파일의인코딩을 hyperref 가이해하는 유니코드인코딩으로바꾸어주는일이다. 그러므로컴파일과정을예시하면다음과 같이될것이다. 4 $ pdflatex foo $ hbibtex foo $ komkindex -euc -s hind foo $ euc-bookmark.pl foo.out >foo-a.out $ cp foo-a.out foo.out $ pdflatex foo DVIPDFMx 를이용하려하는경우불편한 euc-bookmark 를쓰지않아도한글 북마크를잘만들어준다. 이때는다음과같은코드가필요하다. \ifpdf\else \AtBeginDvi{\special{pdf: tounicode KSCms-UHC-UCS2}} \fi 4 KC2006 을위한설치패키지에서는 komkindex.exe 등을제공하기도한다. 이때는굳이.pl 과같은 확장명을붙이지않아도된다. 또한 cp 명령은윈도우즈에서는 copy 이다. 25

27 그리고다음순서로컴파일하면된다. $ latex foo $ hbibtex foo $ komkindex -euc -s hind foo $ latex foo $ dvipdfmx foo 이것은오직 DVIPDFMx 를쓰는경우에만유효하다. 2.3 요약 이상을요약하면, 다음과같다. UTF: \documentclass{article} \usepackage{kotex} \usepackage{ifpdf} \ifpdf \usepackage[unicode]{hyperref} \input glyphtounicode\pdfgentounicode=1 \else \usepackage[unicode,dvipdfm]{hyperref} \fi EUC: \documentclass{article} \usepackage[euc]{kotex} \usepackage{ifpdf} \ifpdf \usepackage[cjkbookmarks]{hyperref} \input glyphtounicode\pdfgentounicode=1 \else \usepackage[dvipdfm,cjkbookmarks]{hyperref} \AtBeginDvi{\special{pdf: tounicode KSCms-UHC-UCS2}} \fi 이와관련하여다음두가지를지적해두기로한다. 26

28 1. 위의코드가제대로동작하려면 KSCms-UHC-UCS2라는이름의 cmap이있어야한다. 이 cmap은 ghostscript의 resource 디렉터리에들어있으므로, 만약 cmap을찾는데실패하는에러를만난다면자신의 TEX 시스템에게이 cmap 위치를알려주도록하라. 2. 위의 pdfgentounicode에관련된것은 type 1 글꼴이사용되었을때유효하다. 사용자가자신의개인적인용도로트루타입으로조판하려한다면이코드보다는 \usepackage{dhucs-cmap} 을선언하도록하여야한다. 제 3 절 폰트에대하여 ko.tex 의가장큰특징이폰트에관련된부분이다. 기본글꼴로 은글꼴 type 1 을채택하였는데이것은 HL A TEX 의기본글꼴이었던 UHC 글꼴을트루타입으로바꾼은글꼴 (hangul-ucs의기본글꼴 ) 로부터얻어진 type 1이다. 원래 UHC 글꼴이 type 1이었는데왜은글꼴로부터별도로 type 1 글꼴을만들어내어야했던가? 그것은 UHC 글꼴이가진독특한특성, 즉자소글꼴이라는점때문이었다. UHC 폰트자체는일종의자소글꼴로서, 이것을실제의문자에대응시키기위해서는 vf를통하여자소조합을실행해야한다. 각문자에유니코드코드포인트를대응시켜주어야텍스트의검색추출이가능해질것이므로 UHC 폰트자체만으로는이것을하는것이어려웠다. 반면은글꼴 type 1은유니코드배열에따라완성된문자를가지고있는글꼴이다. 은글꼴 type 1 자체가 UHC에기원을두고있으니만치, 은글꼴 type 1은 UHC의자소를미리조합하여유니코드코드포인트를부여한글꼴 이라고이해할수있으리라생각한다. UHC 글꼴 (HL A TEX) 은글꼴 (hangul-ucs) 은글꼴 type 1 (ko.tex) 3.1 기본글꼴 기본 (base) 폰트는명조 ( 바탕 ), 돋움 ( 고딕 ), 타자, 굴림의네종류이다. 글꼴 file name(utf) name(euc) 한자 볼드 변형 (c,o) 명조 outbtmxx utbt mj (wmj) O O O 고딕 outgtmxx utgt gt (wgt) O O O 타자 outtzmxx uttz tz (wtt) X 5 X X 그래픽 outgrmxx utgr gr (wgr) X O O 5 고딕의한자를가져다쓴다. 27

29 euc 와 utf 양쪽에서모두동일한글꼴을사용하는데, 다만 euc 에서는 vf 를통 하여필요한글자를뽑아서완성형인코딩에맞게재배열하여사용한다. 3.2 추가글꼴 추가폰트 (extra) 에는은글꼴의나머지폰트들이들어있다. 한자등이들어있거 나변형글꼴이제공되는것은다음과같다. 글꼴 file name(utf) name(euc) 한자 볼드 변형 (c,o) 신문 outshmxx utsh sh (wsh) O X O 옛글 outytmxx utyt yt (wyt) O X O 궁서 outgsmxx utgs gs (wgs) O X O 필기 outpgmxx utpg pg (wpg) X O O 봄 outbmmxx utbm bm (wbm) X X O 다음추가글꼴은굵은글꼴, 기울인글꼴, 장평줄인글꼴등의변형서체를전 혀지원하지않고오직기본모양하나만으로제작된것들이다. 글꼴 file name(utf) name(euc) 한자 볼드 변형 (c,o) 자모명조 outjbtmxx utjbt jbt X X X 자모고딕 outjgtmxx utjgt jgt X X X 자모노벨 outjnvmxx utjnv jnv X X X 자모소라 outjsrmxx utjsr jsr X X X 펜글씨 outpnmxx utpn pn X X X 펜흘림 outphmxx utph ph X X X 이상 15종의폰트가트루타입은글꼴시리즈에대응한다. 여기에 HL A TEX 1.0에 서새로도입된세종류글꼴중두종류를추가글꼴 (extra-hl) 로제공한다. 이추 가글꼴들도기울임 / 장평줄임등의변형글꼴없이 ( 즉, m-시리즈만으로 ) 제공된다. 글꼴 file name(utf) name(euc) 한자 볼드 변형 (c,o) 디나루 outdnmxx utdn dn (wdn) X O X 필기a outpgamxx utpga pga X X X 참고로, euc 에서 extra-hl 폰트를사용하려면 \usepackage{extra-hlfont} 를지 시해주어야한다. 각폰트의인쇄된모양을보려면부록을참고하라. euc 28

30 3.3 은글꼴트루타입폰트세트 hangul-ucs에서사용하던은글꼴트루타입폰트도사용이가능하다. 이것은별도로설치를하여야하며, 은글꼴트루타입도별도로시스템에등록하여야한다. utf 에서는일반적인방법으로이폰트를사용할수있다. 다만폰트명칭이 ut.. 가아니라 un.. 이라는점을알아두자. 따라서예컨대 \SetHangulFonts{unbt}{ungt}{untz} \SetHanjaFonts{unbt}{ungt}{ungtz} 와같이선언하여은글꼴트루타입을쓰도록할수있다. euc 에서은글꼴트루타입을쓰려면 \usepackage{unttf} 를선언한다. 트루타입사용은 DVIPDFMx 로 pdf를제작할때유용하다. pdftex 에서사용하지못하는바는아니지만기울인글꼴등이잘처리되지않는다. 은글꼴 type 1과은글꼴트루타입은사실상같은글꼴이라고보아도무방하다. utf euc 3.4 타자글꼴에관한주석은타자는현재거의유일한고정폭 (monospaced) 글꼴이다. 이글꼴에대해서그디자인을두고논란이없는것은아니지만그래도 \ttfamily에대응하는고정폭글꼴의필요성을고려한다면매우중요한글꼴이라고할수있다. 고정폭으로쓰일것이므로볼드나기울임등은불필요하다. 또한폭을변경시키는변경폭 (c-시리즈, x-시리즈 ) 도제공될필요가없다. 타자글꼴자체에한자가들어있지않은데, ko.tex 의타자글꼴은 uttz로지정해도가상글꼴을통해고딕 ( 돋움 ) 의한자부분을타자체의폭에맞게조절하여사용한다. 은글꼴트루타입은그렇지않으므로위의예와같이 ungtz로해야한다. 3.5 요약 ko.tex 은 은글꼴 type 1 을기본폰트로한다. 이로부터얻을수있는이점은다음과같다. 1. pdftex 에친화적인폰트세트이다. pdftex 과 DVIPDFMx, 심지어 dvips까지모두이형식의폰트를잘다루므로범용성과호환성이매우높아졌다. pstricks 를위해서폰트를바꾸어야하는불편을없앴다. 2. TEX 배포판의유용한유틸리티 updmap을이용하여설치하므로설치과정이깔끔하게끝난다. 29

31 3. pdftex, DVPIDFMx, dvips 어떤것으로도한글텍스트의검색과추출이되는 pdf를제작할수있게되었다. 4. 폰트의품위는은글꼴트루타입과마찬가지이며, pdf에임베드되었을때도훌륭하다. 생각해볼수있는결점은, pdf의폰트정보를확인했을때수백개의 outbtmac, outbtmad... 하는식으로확인되는것이좀거슬릴수있고, 임베드된 pdf의크기가약간커지는정도인데, 둘다치명적인문제는아니라고생각한다. 파일크기는무시할수있을정도이며 DVIPDFMx 를쓰면현저히줄일수있고, 폰트정보는... pdf를제작하는목적이폰트정보를제공하기위해서는아니지않겠는가. 3.6 폰트의라이센스은글꼴 type 1 15 종 (base, extra) 은 GNU GPL 로배포된다. extra-hl 2 종폰트는 ko.tex 의라이센스 (LPPL) 를따른다. 은글꼴 type 1을내장 ( 임베드 ) 한 pdf의라이센스문제에대해서는김도현의글 ( 김도현, 2007) 을참고하라. 결론은 GPL인은글꼴을임베드하였다해도, GPL의감염성이텍스트의내용에미치는것은아니라는것이다. 제 4 절 utf 버전과 euc 버전의관계 원칙적으로 hangul-ucs에서계승한 ko.tex/utf 버전과 HL A TEX 에서이어받은 ko.tex/euc 버전은상호독립적이다. 또한그출력결과가완전히동일하지않으며특히폰트선택과관련된부분은명령간의호환성을현단계에서는보증하지못한다. 그이유는, ko.tex/euc의의미를 하위호환성 측면에비중을두었기때문이다. 이와더불어완성형한글코드를처리하는방식에있어서 UTF-8을처리하는방식 (L A TEX 표준 ) 과다른점이엄연히존재하며이를호환가능하게만드는데드는노력에비해그성과가우리가지향하는바에비추어크지않다고판단한점도작용하였다. 1. 폰트선택명령체계가서로다르다. ko.tex/euc는 HL A TEX 의 HFSS를그대로이어받고있다. 즉예컨대 \hfontfamily나 \hfontseries, 심지어 \pgfamily 와같은명령이제공된다. 반면 ko.tex/utf는이러한종류의명령은제공하지않으며다만한글글꼴가족을선택할수있는몇개의일괄명령만이제공된다. 30

32 2. 행자름방법이다르다. ko.tex/euc는 ( 약간의개선이없지않으나 ) 여전히한글앞에영문자등에잇대어있을때행이나누어지지않을수있다. 3. 미세간격과같은새로운타이포그래피가 ko.tex/euc 에는적용되지않는다. 즉 [finemath] 옵션이하는일을 ko.tex/euc는전혀하지않는다. 4. 식자할수있는문자의범위가다르다. 원칙적으로 ko.tex/utf는문자범위의제한이없으나, ko.tex/euc는 EUC-KR 완성형한글로그범위가제한된다. 5. ko.tex/euc 는항상 nonfrenchspacing 으로만조판한다. frenchspacing 과유사한효과를얻으려면마침표뒤의공백을일반공백과같도록맞추어야할것이다. 반면 ko.tex/utf 는 nonfrenchspacing 을옵션으로선택할수있다. 6. ko.tex/euc로는다국어문서를조판할수없거나더많은노력이필요하다. 7. oblivoir나 memhangul은 euc 버전이없다. 궁극적으로한글텍은유니코드를지향할수밖에없다. 그러므로향후한글텍 의개선과발전에대한노력도 ko.tex/utf 를중심으로이루어질수밖에없을것이다. ko.tex/euc 는예외적으로부득이하게필요한경우에한하여사용되기를희망한다. 31

33 제 II 편 ko.tex/utf 32

34 제 4 장 유니코드문서작성하기 제 1 절 개관 ko.tex/utf 은 UTF-8 유니코드로입력되는한글을 L A TEX 문서에서식자하고조판하게 하려는스타일패키지로서, 그핵심부분인 dhucs 패키지를김도현이작성하였다. 제 2 절 첫번째문서 2.1 간단한문서작성그림 4.1과같은간단한문서를작성해보자. ko.tex/utf의기본스타일은 kotex 패키지이다. 그러나이스타일은 dhucs 패키지를부른다. 또한대부분의 contrib 패키지의명칭은 dhucs-로시작한다. 제 10 행이후에서 hyperref 패키지를로드한다. 반드시 [unicode] 옵션을주어야한다. 한글 PDF 책갈피 (bookmarks) 설정은 hyperref 의 default 이므로별도로지정하지않아도책갈피가만들어진다. 만약책갈피를만들지않고자한다면 bookmarks=false를옵션에추가한다. 패키지를로드한후 \hypersetup 명령을이용해서설정값을추가할수도있다. 1 제9행이후의 \ifpdf.. \else.. \fi 구문은 pdfl A TEX 의실행여부에따라서로다른설정을하는부분이다. 이구문을사용하려면 ifpdf 패키지가필요하다. 제12행은 pdfl A TEX 에서텍스트의검색 추출을가능하게하는행이다. DVIPDFMx 를위해서는별도의설정이필요없다. 제4행부터제7행까지는반드시필요한경우가아니면꼭지정하지않아도상관없다. 각 ( 부가 ) 패키지의작용등은이문서를읽으면알수있다. 제 5 행은 dhucs-interword 패키지를로드했기때문에선언한것으로서이에관련된문제는 97 페이지의 2.2절에설명되어있다. 이내용을 firsttest.tex이라는이름으로저장한다. 1 hangul-ucs 4.0 이전버전에서는 dhucs-ucshyper 라는부가패키지가제공되었으나, hyperref 의 기능향상에따라불필요해졌으므로 ko.tex 에서는이부가패키지를제공하지않는다. 33

35 1 \documentclass{article} 2 3 \usepackage[hangul,nonfrench,finemath]{kotex} 4 \usepackage[default]{dhucs-interword} 5 \usehangulfontspec{ut} 6 \usepackage[hangul]{dhucs-setspace} 7 \usepackage{dhucs-gremph} 8 9 \usepackage{ifpdf} 10 \ifpdf 11 \usepackage[unicode,pdftex,colorlinks]{hyperref} 12 \input glyphtounicode\pdfgentounicode=1 13 \else 14 \usepackage[unicode,dvipdfm,colorlinks]{hyperref} 15 \fi \begin{document} \section{ 들어가기 } 20 처음문서를작성합니다 \end{document} 그림 4.1: 첫번째문서, 예제 2.2 컴파일이문서를컴파일하려면명령행에서다음과같이한다. $ latex firsttest PDF 출력을얻으려면, latex 대신 pdflatex을실행한다. 또는, latex으로얻어진.dvi에대하여 dvipdfmx를실행한다. $ dvipdfmx firsttest 2.3 영문글꼴영문글꼴은일반적인 L A TEX 문서의경우와마찬가지로사용할수있다. ko.tex/utf의영문글꼴기본값은 OT1 인코딩의 CM이다. T1 인코딩으로 EC 글꼴을사용하려면다음을 preamble 에적어준다. \usepackage[t1]{fontenc} 34

36 예를들어 pxfonts를본문에서쓰려면, \usepackage{pxfonts} 와같이한다. dhucs 자체가 font encoding을정의하고있기때문에, font encoding을바꾸는명령, 예를들면 \usepackage[t1]{fontenc} 과같은행은 dhucs 가로드되기전에부르는것이좋다. 2.4 옵션들 ko.tex/utf가제공하는옵션은다음과같다. hangul 한글문서서식을설정한다. 장과절포맷은 제 1 장 과같은형태로식자된다. 기본값은한글문서서식을설정하지않는것이다. nojosa 자동조사기능을끈다. dhucs 초기버전에서다른패키지와의호환을위하여제공되었던것이지만현재는굳이이옵션을사용해야할필요가현저히줄었다. 그러나옵션으로서는유지되고있다. hanja 한글문서서식을설정하는것은 hangul 옵션과같으나, 한글이름대신한자이름을사용한다. nonfrench 한글문장에대해서도 non-french-spacing 을적용한다. 즉, 마침표등의뒤의공백이다른공백보다조금더길다. 기본값은 french-spacing으로식자하는것이다. finemath 원래는문장중의수학식과이어지는한글사이에적절한 (fine) 간격을부여하기위한것이었으나, 곧문장부호등을포함한개념으로확대되었다. strictcharcheck 한글폰트가운데.tfm은있으나해당문자가결락되어있는것이있다. 이럴경우에에러를보여주도록하는옵션이다. 이옵션을지시하지않으면문자가없어서식자하지못한것을.log에기록만하고에러는발생시키지않는다. 2.5 부가패키지들 ko.tex/utf과함께제공되는부가 (contrib) 패키지들은다음과같다. dhucs-cmap pdfl A TEX 을이용하여한글문서를작성할때한글텍스트의검색과추출을가능하게하는패키지이다. 주로트루타입글꼴을사용할때필요하다. 35

37 dhucs-interword 한글문서의자간과단어간격을설정한다. default 옵션과 HWP 옵션을쓸수있다. dhucs-setspace 한글문서의행간을설정한다. hangul 옵션을반드시지정해야한다. dhucs-gremph \itshape에해당하는한글문자를그래픽글꼴로바꾼다. 그래픽대신굵은글꼴로대신하는 bfemph 옵션을쓸수있다. dhucsfn 한글라텍의 hangulfn을 dhucs로포팅한것으로, 한글문서에알맞은여러가지각주짜기방법을제공한다. dhucs-trivcj 간단한일본어또는중국어문단을식자할수있게하는부가패키지이다. dhucs-midkor 1933년이전 옛한글 을식자하기위한패키지이다. dhucs-enumitem enumitem 패키지에한글식글머리정의를추가하는작은패키지이다. enumitem 패키지를로드한후에불러쓰면된다. dhucs-enumerate enumerate 패키지에한글식글머리정의를추가하는작은패키지이다. dhucs-paralist dhucs-enumerate 패키지와같으나 paralist 패키지를사용할때발생하는문제를해결하기위한것이다. 제 3 절 글꼴사용과선택 ko.tex/utf에서사용할수있는기본글꼴은 은글꼴 type 1 이다. 이에대해서는 27 페이지 3절에서이미상세히밝혀두었다. 여기서는이기본글꼴을문서에서사용자가사용하는방법에대해서기술한다. 우리는글꼴문제에있어서상대적으로보수적인태도를취하려한다. 즉, 하나의문서에기본적으로사용되는글꼴은 rm, sf, tt 세가지라고보는것이다. 다른아무런설정없이기본값으로문서를작성하면, rm은은바탕, sf는은돋움, tt 는은타자로설정되어있다. 이이상의글꼴을하나의문서에서사용하는것을권장하지는않지만불가능하지도않다. 필요하다면은글꼴이외의글꼴을사용하는것도가능하다. 36

38 표 4.1: 글꼴사용방법 글꼴가족 rm sf tt emph 한글 utbt utgt uttz utgr 한자 utbt utgt uttz utgt 3.1 기본글꼴을변경하는방법 ko.tex/utf의기본글꼴설정을요약하면표 4.1과같다. 여기서 emph란, dhucs-gremph 패키지를불렀을경우이탤릭과슬랜티드에대응하는한글글꼴을가리키는것이다. 이패키지를로드하지않은상태에서는 emph(itshape) 에기울임글꼴이대응된다. 2 강조의방법으로서글꼴치환과기울임방법에대한논란은이글뒷편에서더상세히다룬다. ko.tex/utf는모두세영역의폰트를사용하여문서를식자한다. 1. 영문자영역. ASCII 문자들은모두여기에들어간다. 즉로마자알파벳과숫자, 일부문장부호들이다. 이것은영문문서에서와동일한영문자폰트를이용하여식자한다. 다른설정이없으면 OT1 인코딩의 CM이기본값이며 T1 인코딩을호출하면 cm-super 폰트를 EC 글꼴문자로사용한다. 만약 lmodern을이용하고싶으면 \usepackage{lmodern} 이라고하면된다. 2. 한글 영역이란 [U+AC00] 에서 [U+D7FF] 까지한글음절문자영역의글자와한글자모및한글호환자모글자들에해당한다. 지정된한글폰트로식자한다. 3. 한자 영역이란위의영문자영역과한글영역을제외한모든문자가포함된다. 한중일호환문장부호, 한자는물론이고일부폰트에서발견할수있는 PUA( 사용자영역 ) 옛한글문자도여기에속한다. 이세영역은완전히분리되어있고서로영향을미치지않는다. 즉한글영역의글꼴을바꾸더라도영문자나한자영역의글꼴의선택이바뀌지않는다는것이다. 다만 rm, sf, tt 라는세글꼴군에한하여각각해당되는한글글꼴과한자글꼴을가져다가식자한다. 예를들어 \sffamily 명령이불리면영문자와숫자는 \sfdefault인 cmss 폰트가사용될것이며, 한글은이미정의되어있는 sfhangulfont, 여기서는 utgt가식자될것이다. 2 다만 oblivoir 클래스에서는 gremph 가기본설정이다. 37

39 글꼴가족의호칭은대부분네개의알파벳문자로표현된다. 기본글꼴은각각 ut라는폰트제작자부호와 bt라는폰트가족대표호칭으로이루어져있는데, utbt라는이름으로호출되는실제의폰트들은수백개의서브폰트들로이루어져있다. 문서작성자는실제폰트자체의이름에는신경쓸필요가없고 utbt 또는 utgt라는호출가족명칭만기억하면될것이다. 기본글꼴설정을변경하려면다음과같이한다. 여기예시된 XXaa 등은임의의폰트명칭인데, 이런형식의폰트세트가미리시스템에설치되어야할것은당연하다. \SetHangulFonts{XXaa}{XXbb}{XXcc} \SetHanjaFonts{XXba}{XXbc}{XXca} 위의명령은각각한글글꼴과한자글꼴을지정한다. 인자 (parameter) 는세개인데각각 rm, sf, tt 글꼴에대응한다. 예를들어본문서체 ( 바탕또는명조 ) 만을한겨레결체로바꾸고자하는경우, ( 한겨레결체가 hkbt라는이름으로시스템에이미설치되어있다고하고 ) 다음명령을지정하면된다. \SetHangulFonts{hkbt}{utgt}{uttz} 한겨레결체는한자영역이없는글꼴이므로한자폰트로지정할수는없을것이다. 문서전체의기본글꼴을변경하면서폰트에특정한미세타이포그래피조절값 을적용하려면, 5.2 절에서다루고있는대로 hfontspec 을이용하는방법을쓰는 것이좋다. 새로운폰트를설치할때그폰트에해당하는 hfontspec 파일이있는 지살펴본후, 이것을다음처럼호출하는것으로충분하다. \usehangulfontspec{xx} 물론이방법은 hfontspec.xx 가잘설정되어시스템에설치되어있어야할것 이다. oblivoir 클래스의부수스타일인 hfontsel 패키지를이용하여다음처럼하 는방법도있다. \usepackage{hfontsel} \SelectHfonts{XXaa,*,*}{*} 본문의바탕 ( 명조 ) 서체만을 XXaa 로바꾼다. 한자글꼴을별도로지정해야한다면, 예컨대 \SelectHfonts{hkbt,*,*}{utgt,*,*} 38

40 와같은방법이있다. 본문에서는다음과같이글꼴을바꾼다. 이렇게이루어진지정은현재의구역안에서 3 유효하다. \SetSerifFonts{utbt}{utbt} \SetSansFonts{utgt}{utgt} \SetMonoFonts{uttz}{uttz} 두인자는각각한글영역글꼴과한자영역글꼴에해당한다. 다음단락은 sanshangul에 utgs를할당하고한자는 은옛글 로식자한예이다. 4 이단락을시작하기전에다음과같이선언하였다. \SetSansFonts{utgs}{utyt}\sffamily TEX 은스탠퍼드대학의도날드크누쓰 (D. Knuth) 교수가만든文書組版言語이다. L A TEX 은문서準備시스템이다. 문서의일부에대해서폰트를바꿀때는이방법을사용하기를권장한다. 그래서 \grfamily, \gtfamily 또는 \hfontfamily 등의 ko.tex/euc 명령은제공하지않는다. 폰트의남용은한글문서의중요한폐해이다. 이를억제하게하기위해서는, 기본폰트들은아주쉽게사용하게하고, 다른글꼴은변경을가능하게는하되, 되도록쉽지않게만드는것이옳다고생각한다. 3.2 일시적으로폰트를변경하는방법기본세글꼴이외의별도글꼴을일시적으로사용하려하는경우를생각해보자. 일시적으로글꼴을바꾸는데사용되는명령으로 \SetAdhocFonts가제공된다. 이명령도두개의인자를취하는데, 하나는한글글꼴이름이고, 두번째것은한자글꼴이름이다. 앞서언급한대로이매크로에의하여한글과한자글꼴이바뀌더라도영문폰트에는영향을끼치지않는다. 우선사용하려는글꼴이은글꼴의일부라면, 간단히다음과같이새로운명령을자신이정의해서활용하도록한다. 여기서는은필기서체를사용하는경우를생각해보자. \newcommand\myfnt{\ttfamily\setadhocfonts{utpg}{utgt}} 3 \begingroup( 또는여는중괄호 ) 에서 \endgroup( 또는닫는중괄호 ) 까지 4 이부분이에러없이컴파일되려면 extra 폰트까지설치되어있어야한다. 39

41 이와같이설정한다음, 본문에서다음과같이사용한다. {\MYFNT 여기에단락이옴 } 위의예에서중괄호로이단락을묶어준이유는 \MYFNT 명령의범위를한정하기위해서이다. 중괄호로닫은이후에는다시원래의폰트설정으로복귀한다. 중괄호가혼란스러우면명령형명령을정의하여사용한다. 명령형 \textmyfnt를다음과같이정의할수있다. \DeclareTextFontCommand{\textMYFNT}{\ttfamily\SetAdhocFonts{utpg}{utgt}} 이명령을사용하여, \textmyfnt{ 여기에단락이옴 } 과같이코딩한결과는그림 4.2와같다. 여기에단락이옴 그림 4.2: 폰트지정예제 이명령의첫째줄 \ttfamily 를먼저선언한이유는영문글꼴을 tt family 로 하기위해서이다. 이선언은한글에도영향을미치므로 ( 앞서설명하였다 ), 한글글 꼴을바꾸기전에선언해둔다. 3.3 사용자폰트를활용하는방법만약, 원하는글꼴이은글꼴이아닌경우라면어찌할것인가? 사용자자신의트루타입한글폰트를 ko.tex/utf에서활용하려한다면, 먼저해당폰트를사용하기위해필요한파일세트가 KTUG 등에서제공되지않는지확인해보는것이필요하다. 예를들면백묵글꼴, 문화부글꼴, 윈도기본바탕 굴림글꼴, 한겨레결체, 아리따글꼴등에대한.tfm 및부수파일들이별도로제공되고있다. 이이외의폰트를활용하는것은, 호환성이나폰트의라이센스등의문제로그다지권장할만한일이라고하기어렵다고생각한다. 그러나정말로새로운트루타입폰트를사용하려하며, 폰트라이센스등에대하여자신이책임질수있고, 약간의복잡한설정작업을기꺼이해내려한다면, ttf2kotexfont 유틸리티를사용하면된다. 이유틸리티의사용법은이문서말미에별도의장으로마련되어있다 (113 페이지, 9장 ). 한편, 일반적인트루타입폰트의사용방법에대해서는 한글레이텍에서임의의트루타입사용하기 ( 김강수 & 주철, 2004:2007) 라는문서를참고하라. 40

42 3.4 엄격한문자체크한글문서작성상황은매우복잡해서, 현재사용중인폰트에사용자가표현하고자하는모든문자가구비되어있지않은경우가많다. 기본글꼴인은바탕만하더라도예컨대한자는 KS X 1001에해당하는 4888자밖에는들어있지않다. 그런데 TEX 은.tfm이아예없다면에러를내지만.tfm은있으나그.tfm의문자정의에해당글자가없는경우에는다만글자를식자하지않고경고만을보이고지나가면서.log에기록하는것에그친다. 그결과.log를세심하게살피지않으면혹부지불식간에특정문자를식자하지못하는결과를초래하게된다. 이를위하여도입된옵션이 [strictcharcheck] 이다. 이옵션을활성화하면 ϵ-tex 의원시명령을이용하여만약.tfm은있는데특정문자가없다면에러를발생시키면서컴파일을멈추게한다. 문서작성자는이를통해현재의상황을보다잘인식하고폰트를교체하거나임시폰트를지정하는등의조치를취할수있을것이다. 이옵션을지정하지않으면에러를보여주지않고다만.log에만기록한다. 제 4 절 몇가지한글화 4.1 기호문자처리기호문자중일부에대해서는미리식자방법을정의해두었다. 1 / 2, 1 / 4, 등의문자와같은몇가지한글기호문자는 [hangul] 옵션을준경우에식자할수있다. babel 패키지등을사용하거나하는경우한글기호문자의 \euro( ) 역시 TEX 코드로변환되므로, 예컨대 eurofont 패키지또는 eurosym 패키지를사용하여식자하도록하여야할것이다. Windows 기본한글입력기에서특수문자를입력하는방법은 ㄱ, ㄴ 등의키를누른다음 [ 한자 ] 키를눌러서선택하는것이다. 이방법으로입력되는특수문자의예를표 4.2에서보였다. 5 ㅎ 행에는그리스문자가할당되어있다. 텍스트그리스문자는현재본문기본한자글꼴에있는것으로식자되는데, 만약더나은텍스트그리스문자가필요하다면 babel 패키지를이용하여입력하도록한다. 은바탕글꼴로식자하면이러하다 : Τεχνή. 기호문자의직접입력과처리가가능하기는하지만, 일반적으로이기호문자를문서에서사용하는것을권장하지는않는다. 기호문자를써야할경우에는알맞은 L A TEX 의기호문자명령으로얻도록하는편이나을것이다. 5 \DeclareUnicodeCharacter 명령을이용하여 ucs 의문자설정을변경하는방법도있다. 41

43 자판 ㄱ! ',. / : ;? ^ _ `... \ ~ ˇ Ð ㄴ " ( ) [ ] { } ㄷ + - < = > ± ㄹ $ % F A % μl ml dl l kl cc mm3 cm3 m3 km3 fm nm μm mm cm km mm2 cm2 m2 km2 ha μg mg kg kt cal kcal db m s m s2 ps ns μs ms pv nv μv mv kv MV pa na μa ma ka pw nw μw mw kw MW Hz khz MHz GHz THz Ω kω MΩ pf nf μf mol cd rad rad s rad s2 sr Pa kpa MPa GPa Wb lm lx Bq Gy Sv C kg ㅁ # & Co. TM a.m. p.m. R a o 표 4.2: Windows 특수문자입력방식에의한특수문자 42

44 4.2 한글문서서식한글문서는외국어문서와는달리몇가지보조적서식을가지고있다. 장절명령이별도로짜여져야하고, 행간이나단어간격도적절하게배치되어야한다. 이를위하여이패키지는 [hangul] 패키지옵션을제공한다. 이옵션이지시되면한글이름, 한글장절표제등을활성화하고행간을한글에알맞게설정한다. 또한, 장절명령과관련해서 ko.tex/euc 와동일한 \kscntformat 명령이작동한다. 그리고한글이름과관련해서 \ksnamedef 명령도작동한다. 이명령의의미와사용법에대해서는 88 페이지의 2.7절을보라. 한글이름에관한사항은 ko.tex/euc와 ko.tex/utf가동일하다. 89 페이지표 6.2 를참고하라. 4.3 장절명령 article 문서에서한글서식을사용하면서장절표제의 제 1 절 과같은양식을쓰지않으려면다음과같이설정하는것이일반적이다. 이매크로는 ko.tex/utf에 [hangul] 옵션을지정한경우에만쓸수있다. \kscntformat{section}{}{} 장절표제형식을설정하기위해서 ko.tex/utf와함께제공되는 dhucs-sectsty 를사용하는방법도있다. 이것은 Rowland MacDonnell 씨의 sectsty 패키지를한글화한것이다. 100 페이지의 4절을보라. sectsty 패키지에없는새로추가된옵션은 [ensec] 인데, 이옵션을주면 ko.tex/utf에 [hangul] 옵션을주었더라도제 1 절과같은형식이아니라영문문서에서와같이제와절이붙지않는형식으로식자된다. 그밖의사용법은 sectsty 패키지에서와같다. 다음은절모양을바꾸는한가지보기이다. \sectionfont{\nohang\sffamily\centering} 다음소절을이런방식으로바꾸어보았다. 4.4 강조 한글문서에서강조 ( 드러냄 ) 를처리하는방법은몇가지가있다 기울인글꼴강조 강조 (emph) 선언 \em 이나명령 \emph 는일반적으로이탤릭글자로식자하는것 이영문문서의관행이다. 그러나우리글자에는이탤릭이없어서, 종래에는 fake 43

45 slanted 글꼴을사용하여왔다. 그러나 fake slanted 는 pdfl A TEX 이지원하지않을뿐 아니라, 설령구현된다하더라도강조의의미는별로드러나지않는장식적인문자 꼴이되어버리고만다 드 러 냄 표 강조 ( 한글맞춤법, 1988) 의부록 문장부호 에드 러 냄 표가 규정되어있다. 이것은과거한글세로쓰기서적에서사용되던방점을찍는방법의연장선상에있는것이다. 드러냄표강조는한글라텍에서시작된것으로, ko.tex/euc와 ko.tex/utf가모두지원한다. \dotemph가드러냄표를식자하는명령인데, 이차이를간단히요약하면다음과같다. ko.tex/utf ko.tex/euc 비고 상점 \dotemph \dotemph \dotem a a 선언형 고리상점 \circemph \circemph \circem a [hangul] 임의의상점 \useremph \dotemph 명령으로점을한글글자위에찍을수있다. [hangul] 옵션을지시하면 \circemph와 \dotemph 그리고 \useremph, 세개의명령을사용할수있고, 이가운데 \useremph는사용자가설정가능하다. ko.tex/euc에서와는달리선언형은제공하지아니한다. 한글의본이름은 훈 민 정 음이다. 중요한것은 왜 사 느 냐가아니라 어 떻 게 사 느 냐하는문제이다. 사 용 자 정 의 드 러 냄 표는다음과같은방식으로사용할수있다. \renewcommand\useremphchar{\tiny } \setlength\useremphraisedim{10pt} \useremph{ 사용자정의드러냄표 } 글꼴변경강조최근들어서는돋움체글꼴을사용하는것이하나의관례가되어가고있다. hl A TEXp 는여기에그래픽글꼴을사용하였는데, 이것도시각적으로두드러지기만한다면나쁘지않은선택이라고생각한다. 이기능을사용하려면 dhucs-gremph 패키지를로드한다. 만약 emph에해당하는글꼴을그래픽이아닌다른글꼴로바꾸고싶다면다음과같이한다. 44

46 \usepackage[gremphhangul=unbm,gremphhanja=unyt]{dhucs-gremph} 첫번째인자는한글, 두번째인자는한자글꼴을지정하는것이다. 또, emph에해당하는문자를굵은글꼴로하고싶으면, \usepackage[bfemph]{dhucs-gremph} 와같이 [bfemph] 옵션을지정한다. 6 문서의중간에서기울임방식과글꼴변경 \emph 방식을바꿀수도있다. 각각 \regremph 명령과 \ungremph 를사용한다. \regremph 를지정한경우에는, 테스트. test. 와같이식자되고, \ungremph 를설정한경우에는, 테스트. test. 와같이식자된다 밑줄강조 한글맞춤법에는밑줄강조에대해서도언급하고있다. \underline 으로밑줄을 그을수있지만, ulem 패키지를사용하면더나은결과를얻을수있다. 다음보기에서명사가 \uline{ 아닌 } 것은? 다음보기에서명사가아닌것은? ulem 패키지는옵션없이로드하면모든 \emph를밑줄강조로바꿔놓는다. 이를억제하고 \uline을썼을때만밑줄을그으려한다면 \usepackage[normalem]{ulem} 과같이하여야한다. 또한, ulem 패키지를 ko.tex/euc에서바로사용할수는없으므로 ko.tex/utf에서만 ulem을이용한밑줄방식을써야한다. ko.tex/euc에대해서는 99 페이지의 3절을참고하라. 6 은글꼴중에는 boldface 글꼴이따로마련되어있지않은것이많다는점에주의하라. 이경우에는 약간의 Warning 을내면서그냥보통글꼴로식자된다. 45

47 4.5 자간, 행간한글타이포그래피의가장기본적인요소인자간은 5.2에서소개한한글폰트스펙의일부로포함하여취급하게되었다. 종래자간 단어간격을지원하던 dhucs-interword 패키지는여전히제공되는데, 자간만을일시적으로바꾸거나할경우부분적으로활용할수있을것이다. 그러나이제자간의변경은폰트스펙을이용하는바꾸는것이좋겠다. 이패키지는단어간격의제어를위해사용하는정도로활용될수있을것으로본다. 행간을조절하기위해서는 dhucs-setspace 패키지를사용한다. 한글자간의설정에있어서반드시알아두어야하는사실을, [finemath] 옵션이활성화된경우에만자간설정이의미를갖는다는것이다. 이옵션을주지않은경우에는자간이언 제 나 0pt이며이것을바꿀수없다. dhucs-interword 패키지를로드하면 finemath가활성화되어있지않을경우오직단어간격에만영향을미친다. 이패키지를사용할때는순서에주의하여야하는데, dhucs-interword 패키지를 dhucs-setspace 패키지보다먼저올리도록하는것이좋다. \usepackage[hangul]{dhucs} \usepackage[default]{dhucs-interword} \usehangulfontspec{ut} \usepackage[hangul]{dhucs-setspace} dhucs-interword 패키지를로드한직후에문서에서사용되는한글폰트의폰트스펙을활성화해주는것은좋은선택이다 ( 세번째줄 ). dhucs-interword 패키지에대해서는 97 페이지 2.2 절, dhucs-setspace 패키지에대해서는 98 페이지 2.3절을보라. 4.6 장평특별한효과를위해서 좁은장평 을사용하려하는경우가있을수있다. 기본글꼴에 c-series의 93% 장평 7 이정의되어있으므로이것을사용할수있다. 다음문단은좁은장평으로텍스트를식자한것이다. \fontseries{c}\selectfont를선언하였다. 당연한말이겠지만, 좁은장평이준비되어있지않은글꼴 자모바탕등 은이렇게하더라도좁은장평을얻을수없다. 어떤폰트에좁은장평이마련되어있는지에대해서는 27 페이지 3절에서설명하였다. 7 표준 NFSS 에서 c-series 는보통 75% 의좁은폭이다. 그러나 ko.tex 에서는 92 또는 93% 를 c-series 에할당하였다. 한글의 75% 장평은거의무의미한변형이라고생각한다. 46

48 아아, 나는이제야도 ( 道 ) 를알았도다. 마음이어두운자는이목이누 ( 累 ) 가되지않는다. 이목만을믿는자는보고듣는것이더욱밝혀져서병이되는것이다. 이제내마부가발을말굽에밟혀서뒷차에실리었으므로, 나는드디어혼자고삐를늦추어강에띄우고, 무릎을구부려발을모으고안장위에앉았다. 한번떨어지면강이나물로땅을삼고, 물로옷을삼으며, 물로몸을삼고, 물로성정을삼을것이다. 이제야내마음은한번떨어질것을판단한터이므로, 내귓속에강물소리가없어졌다. 무릇아홉번건너는데도걱정이없어의자위에서좌와 ( 坐臥 ) 하고기거 ( 起居 ) 하는것같았다. 장평을자유로이바꾸는것은허용되지않는다. 8 다만미세타이포그래피를위하여아주미세한장평의조절을 pdftex 이행하는경우가있는데이것은 c-series 를선택하는것과는다른문제이다. 4.7 nonfrench spacing nonfrench spacing이란, 마침표뒤에별도의공백을조금더주는조판양식을말한다. 문장의마침을더잘드러나게할목적으로사용하는공백이라고한다. 유럽에서는이추가공백을허용하지않는것이일반적인조판형식인듯하다. 이기능을활성화하려면 [nonfrench] 옵션을지정한다. 추가공백의기본크기가마음에들지않으면 \xspaceskip으로변경할수있다. 다음두단락은동일한문장을각각 french-spacing과 nonfrench-spacing으로식자한예이다. 이인용문은연암의 하룻밤에아홉번물을건너다 ( 박지원, 1780) 로부터왔다. Frenchspacing: 아아, 나는이제야도 ( 道 ) 를알았도다. 마음이어두운자는이목이누 ( 累 ) 가되지않는다. 이목만을믿는자는보고듣는것이더욱밝혀져서병이되는것이다. 이제내마부가발을말굽에밟혀서뒷차에실리었으므로, 나는드디어혼자고삐를늦추어강에띄우고, 무릎을구부려발을모으고안장위에앉았다. 한번떨어지면강이나물로땅을삼고, 물로옷을삼으며, 물로몸을삼고, 물로성정을삼을것이다. 이제야내마음은한번떨어질것을판단한터이므로, 내귓속에강물소리가없어졌다. 무릇아홉번건너는데도걱정이없어의자위에서좌와 ( 坐臥 ) 하고기거 ( 起居 ) 하는것같았다. 8 그러나사용자가꼭필요하다면주어진폰트로부터특정장평의 tfm 을얻어내고이것을사용하도록 하는방법은있다. 다만그절차가좀복잡할따름이다. 이방법을설명하는것은이문서의목적과 무관하다. 47

49 Nonfrenchspacing: 아아, 나는이제야도 ( 道 ) 를알았도다. 마음이어두운자는이목이누 ( 累 ) 가되지않는다. 이목만을믿는자는보고듣는것이더욱밝혀져서병이되는것이다. 이제내마부가발을말굽에밟혀서뒷차에실리었으므로, 나는드디어혼자고삐를늦추어강에띄우고, 무릎을구부려발을모으고안장위에앉았다. 한번떨어지면강이나물로땅을삼고, 물로옷을삼으며, 물로몸을삼고, 물로성정을삼을것이다. 이제야내마음은한번떨어질것을판단한터이므로, 내귓속에강물소리가없어졌다. 무릇아홉번건너는데도걱정이없어의자위에서좌와 ( 坐臥 ) 하고기거 ( 起居 ) 하는것같았다. 4.8 각주한글라텍은한글문서의각주판짜기를위한 hangulfn.sty를제공한다. 이각주판짜기스타일의 ko.tex/utf 버전은 dhucsfn 패키지이다. 둘사이의다른점은 dhucsfn 이영문옵션만을받아들인다는점이다. 기본값은 superscript, hang 이다. 첨자괄호내어쓰기다항이어쓰기단순이어쓰기왼쪽맞춤들여쓰기들여왼쪽맞춤들여내어쓰기들여괄호맞춤 superscript parenthesis hang multipara para leftflush indent leftflushindent hangpar varhangpar 이패키지의사용법과각각의각주모양예시는 93 페이지 1 절을보라. 4.9 한글식카운터그림 4.3과같은한글카운터형식을제공한다. [hangul] 옵션을주면다음과같은카운터형식을몇개더사용할수있다. \hnum{cnt}, \hanjanum{cnt}, \HArabic{cnt} 48

50 \newcounter{test} \setcounter{test}{2} \jaso{test} ㄴ \pjaso{test} \ojaso{test} ᄂ \gana{test} 나 \ogana{test} 나 \pgana{test} \onum{test} 2 \pnum{test} ⑵ \oeng{test} b \peng{test} \hnum{test} 둘 \Hnum{test} 둘째 \hroman{test} ⅱ \hroman{test} Ⅱ 그림 4.3: 한글식카운터 cnt 값이 2 일때, 각각이, 二, 2 로표현된다 자동조사명령자동조사는주로사후적으로결정되는숫자및문자열 ( 예컨대 \ref의결과확정되는참조번호 ) 에붙는조사의형태교체를자동화해주는기능을말한다. 참조된숫자가 1일경우에목적격조사는 을 이붙어야하지만 2일경우에는 를 이붙어야한다. 이참조된숫자들은사후적으로확정되므로미리 을 또는 를 가운데어떤것을써야할지알수없기때문에, 우리말문서의작성에서는빼놓을수없는기능이다. 자동조사명령은다음열두가지가있다. 9 \ 이 \ 가, \ 을 \ 를, \ 와 \ 과, \ 로 \ 으로, \ 은 \ 는, \ 라 \ 이라마지막의 \ 라, \ 이라는서술격조사어간 이 에어미 ( 의일부 ) 가붙은형태로서서술격조사어간이생략되는경우가이이외에도더있지만, 다른경우에는명백히생략되지않아도문장이어색하지않다고보아 ( 이 ) 라 만을자동조사명령으로채택한것이다. 자동조사의기능과그사용법은 85 페이지 2.6 절을참조하라. 9 ko.tex/euc 에는 \ ㅡ 와 \ ㅣ 가더있다. 49

51 자동조사사용에있어서알아두어야할점이하나있다. \section 등장절명령이나 \caption과같은명령의인자로들어간 ( 소위 moving arguments ) 자동조사명령은 \ref 등이 \protect되어있다면대체로잘작동한다. 그러나 \nameref 되는문자열안에들어있는자동조사명령은 hyperref 패키지의문제점으로인하여오류를토해내므로주의를요한다 enumerate 의항목머리 enumerate 환경에서글머리로한글식카운터를쓰고자할때가있다. 보통의방법은다음과같이하는것이다. \renewcommand\theenumi{\pgana{enumi}} \renewcommand\labelenumi{\theenumi} \begin{enumerate} \item 가나다 \item 라마바 \item 사자차 \item 카파하 \item 카타파 \end{enumerate} 결과는다음과같다. 가나다 라마바 사자차 카파하 카타파이코딩은상당히번거롭고, 일단카운터형식이바뀐후로계속영향을미친다는문제가있다. 한글식카운터형식을글머리에붙이는쉬운방법으로두가지가있다. 하나는 enumerate 패키지의옵션정의를이용하는방법인데, 원래이패키지가제공하던기능을한글식글머리로확장한것이다. \usepackage{dhucs-enumerate} 이선언은 enumerate 패키지를스스로로드한다. 그리고본문에서 50

52 \begin{enumerate}[ 항목가 )] \item 가나다 \item 라마바 \end{enumerate} 과같이항목머리의첫글자를옵션으로지시한다. 위의결과는다음과같다. 항목가 ) 가나다 항목나 ) 라마바 이렇게항목머리로지정할수있는것은원래의 enumerate 패키지가제공하는 A, a, i, I, 1 이외에추가로정의된가, ㄱ, ᄀ, 가,,, 1, ⑴,, a, ⅰ, Ⅰ 들이있다. 한편, 문단형리스트를구현하는역할을하는 paralist 패키지도이와비슷한 기능을제공하는데, 이를위하여 dhucs-paralist 패키지가마련되어있다. enumitem 패키지를이용하는경우에는먼저 preamble 에다음과같이선언한다. %\usepackage{enumitem} \usepackage{dhucs-enumitem} 그리고, 다음과같이코딩한다. \begin{enumerate}[label={\bfseries\pgana*.}] \item 가나다 \item 라마바 \end{enumerate} enumitem 패키지에는이외에도요긴한기능이많다. 예컨대만약문서전체의 enumerate 의항목머리를전부일정한형식으로바꾸고자한다면 enumitem 패키 지의전역형식선언을이용할수있다 (ver2.0). 다음예는 label 과더불어항목간 간격도함께없앤예이다. \setenumerate[1]{label={\pgana*},noitemsep} \setenumerate[2]{label={\ogana*},nolistsep} enumerate 패키지와 enumitem 패키지는서로동일한환경을다른방식으로 재정의하기때문에함께쓰기는어려울것이다. 둘가운데적당한것을골라서사 용하면되는데, 어느경우든한글식항목머리를정의할수있게되었다. 51

53 제 5 절 미세조정 ko.tex/utf 의가장큰특징중하나는한글문서전반에걸쳐미세조정을적용하여, 미세타이포그래피를부분적으로구현하려하였다는것이다. 이기능은 [finemath] 옵션에의하여모두활성화된다. 5.1 수식과의간격 TEX 의탁월한점가운데하나가수식조판일것이다. 특히 TEX 수식은미세한간격을적절하게배분함으로써아름다운수식을만들어내는것으로유명하다. 영문의경우행중수식은항상앞뒤에스페이스를두면서다음단어와연결되므로문장중에들어가도어색하지않은데비해, 한글문서에서는조사등이수식뒤에잇대어붙기때문에이사이에간격이없으면수식폰트와한글폰트사이에약간어색한상충이생긴다. 이문제를해결하기위한다양한연구와토론이 KTUG에서이루어졌다. 그결과, [finemath] 라는새로운옵션이생기게되었다. [finemath] 옵션을주면대부분의행중수식과의간격을자동으로설정한다. 이효과는수식, 영문자, 괄호등에도영향을미친다. 다음은 [finemath] 로조판한결과이다. 한글문자와이어지는위치에미세한간격이추가되고있음을확인해보라. x 에임의의값이주어지면 f (x) 를통해서그 x 에대응하는 y 를계산 할수있다. 예를들어 x = 2 로 x 값이주어졌다면 x + y 는.... 숫자 과영문 ( 알파벳 ) 자모 abcd 와괄호에도영향을미친다. 5.2 한글폰트스펙한글문서의조판에서영문폰트와의불일치또는부조화가오래도록문제가되어왔다. 이문제를근원적으로해결하려면한글폰트의사용방법과디자인전반에걸친재검토가요구된다. 궁극적으로만족할만한해결책을얻기까지는더많은연구와노력, 폰트디자인등이필요할것으로생각하나, 우선이문제를피해가면서아름다운한글문서를조판하기위하여 ko.tex/utf는한글폰트스펙이라는개념을도입하였다. 10 한글폰트스펙은 hfontspec.?? 라는별도의파일로지정한다. 이파일에적어넣을수있는스펙값들은대략다음과같다. 10 폰트스펙은 finemath 옵션을선언해야활성화된다. 52

54 hangul unit 값 (hu) 한글기본자간 (interhchar) 문장부호수직위치조정값 한글및한자폰트패밀리명칭예를들면, hfontspec.ut이라는기본글꼴폰트스펙의내용은다음과같이되어있다. hu = em interhchar = em fullstoplower =.15ex exclamationlower =.2ex questionlower =.2ex serifhangulfont = utbt sanshangulfont = utgt monohangulfont = uttz serifhanjafont = utbt sanshanjafont = utgt monohanjafont = uttz 위의모든값이지정되어야한다. hu (hangul unit) 이라는단위는 ko.tex 이내부적으로사용하는 ( 논리적인 ) 길이단위로서, 한글 1전각폭의 1/16 로정의된다. 여기서 1전각이란 1em을의미하는것이아니라폰트디자인상평균적인가로폭의길이를의미하는것인데, 위의기본설정에서이값을 em 으로잡은것은 ko.tex 의기본자간 em 을제외한 em 을 16등분한값이다. 즉, 16 hu + interhchar = 1em 이되도록되어있다. 이길이단위의필요성과사용에대해서 ( 김강수, 2007b) 에서논의된바있다. hu는 [finemath] 의수평간격에영향을미친다. 사용자가이폰트스펙값을임의로바꾸는것은판면에심각한영향을미칠수있으므로, 자신이무슨일을하고있는가확신이있을때만변경하도록하라. 폰트스펙값들은폰트패키지를만드는사람이제공하는것이옳을것이다. 위에적은값을이용하여자간을설정하고문장부호의수직위치를조절하게하려면, [finemath] 옵션을활성화하면된다. 문서전체에대해서또는일부에대해서문장부호수직위치조절이적용되지않게하려면 \disablehangulfontspec 53

55 이라고선언한다. 특정폰트스펙을적용하도록하는매크로는다음과같다. 예를들어 xx라는폰트에대하여 hfontspec.xx가준비되어있다면, \usehangulfontspec{xx} 를선언하면된다. 기본글꼴 ( 은글꼴 type 1) 에대한폰트스펙 (ut) 은 kotex을 \usepackage하는시점에서자동으로불러들인다. 아래예문은각각의경우문장부호및자간등이어떻게달라지는가를예시한것이다. 문장부호의타이포그래피에대해서는 ( 김강수, 2007b) 에서그간의토론을요약하고의견을제시하였고이것을 ko.tex 에서구현한것이다. 한글문장부호에영문폰트의것을쓸때는베이스라인불일치등을교정해주어야한다. 예를들어, 온점, 느낌표, 물음표등의수직위치가그러하다. 자! 비교해볼까? 한글문장부호에영문폰트의것을쓸때는베이스라인불일치등을교정해주어야한다. 예를들어, 온점, 느낌표, 물음표등의수직위치가그러하다. 자! 비교해볼까? 5.3 Micro Typography pdftex 의저자인 Hàn Th ê Thành 의박사학위논문 Micro-typographic extensions to the TEX typesetting system(thành, 2000) 은 pdftex 이라는엔진으로 margin kerning 과 font expansion 을가능하게해주는마이크로타이포그래피개념을 TEX 세계에도입하였다. 마진커닝 (margin kerning) 이란, 여백공간이가지런히보이도록하기 위해글자들을텍스트블록의마진쪽으로아주조금이동시켜주는테크 닉이다. 마진커닝을적용하지않으면일부문자들이마진경계가시작 하기전에끝나기때문에오히려울퉁불퉁하게보인다. 이것은문장부호 끌어내기 (hanging punctuation) 와비슷한것이지만문장부호만이아니라 일반적인글자에도적용할수있다. 이를적용함으로써텍스트블록의모 양을현저히개선할수있다. 폰트확장 (font expansion) 이란단어간격이좀더균일하게보이도록 하기위해폰트의폭을약간좁게혹은넓게만드는테크닉이다.... 폰트 를넓게혹은좁게만듦으로써개행엔진이더나은행나눔을할수있게 된다 Hàn Th ê Thành, (Thành, 2001), p

56 나는여름방학이되어집선이나음식솜씨도나타내에내려오면한번씩은이기시작했다. 나는사랑에집을찾는다. 이집에는나들어가어른들을뵙고수인보다한살아래인, 열세살사겸이런이야기저런이되는누이뻘되는소녀가있야기로얼마지체한뒤에, 었다. 실상촌수를따져가안건넌방으로안내를받았며통내외까지할절척도아다. 점심대접을하려는것니지만, 서로가깝게지내는이다. 사랑방은머슴이며일터수라, 내가가면여간반꾼들이드나들고어수선했가워하지아니했고, 으레그으나, 건넌방은조용하고깨소녀를오빠가왔다고불러끗하다. 방도말짱히치워내어인사를시키곤했다. 져있고, 자리도깔려있었소녀의몸매며옷매무새는다. 아주머니는오빠에게나제법색시꼴이박히어가기와인사하라고소녀를불러시작했다. 그때만해도시골냈다. 서좀범절있다는가정에서는열살만되면벌써처녀로서의예모를갖추었고침 font expansion 적용안함 1 나는여름방학이되어집이나음식솜씨도나타내기에내려오면한번씩은이시작했다. 나는사랑에들어집을찾는다. 이집에는나가어른들을뵙고수인사겸보다한살아래인, 열세살이런이야기저런이야기로되는누이뻘되는소녀가있얼마지체한뒤에, 안건넌었다. 실상촌수를따져가방으로안내를받았다. 점심며통내외까지할절척도아대접을하려는것이다. 사랑니지만, 서로가깝게지내는방은머슴이며일꾼들이드터수라, 내가가면여간반나들고어수선했으나, 건넌가워하지아니했고, 으레그방은조용하고깨끗하다. 방소녀를오빠가왔다고불러도말짱히치워져있고, 자내어인사를시키곤했다. 소리도깔려있었다. 아주머니녀의몸매며옷매무새는제는오빠에게나와인사하라법색시꼴이박히어가기시고소녀를불러냈다. 작했다. 그때만해도시골서좀범절있다는가정에서는열살만되면벌써처녀로서의예모를갖추었고침선 font expansion 적용 1 그림 4.4: Font Expansion 한글문서에있어서행나눔을결정할때부득이하게 벙벙한 공백을남기고개행해야하는경우가빈번했다. 또한문장부호가행끝에걸리는경우여백의모양이균일하지않게보이는것을어찌할수없었다. 마진커닝과폰트확장이매우요긴하게요청되는바였지만, 이를쉽게구현하기어려웠으며, 간간이마진커닝정도가쓰이는데그쳤다. ko.tex/utf v0.1.0은 pdftex 의폰트확장을활용할수있게한다. 12 폰트확장을한글에적용하기위해서는다음조건이갖추어져야한다. 1. pdfl A TEX 으로컴파일할것 2. type 1 혹은트루타입글꼴이사용될것 3. microtype 패키지에의한설정이활성화될것그림 4.4는폰트확장을적용하지않은경우와그것을적용한경우의행나눔과스페이스간격을비교해본것이다. 더균일하고아름다운판면이생성되는것을눈으로확인할수있을것이다. 샘플문서의소스중에서 font expansion과관련된부분은다음과같다. \usepackage[verbose=true]{microtype} 12 김도현, microtype 을아시나요, 55

2 C freetype ttf2tfm 18 D ttf.sh 19 E FD 20

2 C freetype ttf2tfm 18 D ttf.sh 19 E FD 20 L A TEX Truetype 2003 2 8 1. 3 1.1................................... 3 1.2?............................... 4 2. 5 2.1.............................. 5 2.2................................ 6 3. 7 3.1 TEX.............................

More information

The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 Oblivoir 를이용한문서작성 Document P

The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 Oblivoir 를이용한문서작성 Document P The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 Oblivoir 를이용한문서작성 Document Preparation with Oblivoir 이기황 Kihwang Lee 연세대학교대학원언어정보학과정

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

hl A TEXp 의한글폰트와 xpttf 폰트패키지 nobody 2006 년 4 월 19 일 1 개요 hl A TEXp의한글글꼴을기억하시는지? 모두서른한개의글꼴을제공하던 hl A TEXp는, 비록 pk 글꼴로만일반에공개하였지만오히려 HL A TEX 의완성형글꼴보다더좋아

hl A TEXp 의한글폰트와 xpttf 폰트패키지 nobody 2006 년 4 월 19 일 1 개요 hl A TEXp의한글글꼴을기억하시는지? 모두서른한개의글꼴을제공하던 hl A TEXp는, 비록 pk 글꼴로만일반에공개하였지만오히려 HL A TEX 의완성형글꼴보다더좋아 hl A TEXp 의한글폰트와 xpttf 폰트패키지 nobody 2006 년 4 월 19 일 1 개요 hl A TEXp의한글글꼴을기억하시는지? 모두서른한개의글꼴을제공하던 hl A TEXp는, 비록 pk 글꼴로만일반에공개하였지만오히려 HL A TEX 의완성형글꼴보다더좋아하던분도많았으리라생각한다. 알려진바에따르면그글꼴들은원래매킨토시한국판매원이던엘렉스컴퓨터사가 KAIST

More information

한글 L 읁 TEX 에서임의의트루타입한글폰트사용하기 김강수 주철 윲윰윰윷년윷월윶일 일러두기 이글은괲괰괰괳년에썼던굜굈굌 A 굔굅굘에서임의의트루타입글꼴사용하기괢라는괬김강수 주철공저의글을고쳐쓴것이다괮한글트루타입폰트를굌 A 굔굅굘에서사용할수있게된과정은이전의글에정리되어있다괮이글

한글 L 읁 TEX 에서임의의트루타입한글폰트사용하기 김강수 주철 윲윰윰윷년윷월윶일 일러두기 이글은괲괰괰괳년에썼던굜굈굌 A 굔굅굘에서임의의트루타입글꼴사용하기괢라는괬김강수 주철공저의글을고쳐쓴것이다괮한글트루타입폰트를굌 A 굔굅굘에서사용할수있게된과정은이전의글에정리되어있다괮이글 한글 L 읁 TEX 에서임의의트루타입한글폰트사용하기 김강수 주철 윲윰윰윷년윷월윶일 일러두기 이글은괲괰괰괳년에썼던굜굈굌 A 굔굅굘에서임의의트루타입글꼴사용하기괢라는괬김강수 주철공저의글을고쳐쓴것이다괮한글트루타입폰트를굌 A 굔굅굘에서사용할수있게된과정은이전의글에정리되어있다괮이글은괲괰괰괳년이후달라진한글굌 A 굔굅굘환경을위한것이므로해당사항에대해서는이전글을참조하기바란다괮괲괰괰괷년괶월까지괬굨굡굮굧굵구괭굵굣굳에서완성형인코딩폰트를사용하지못하는것으로알려져있었다괮그러나이글은굋굔굓제괱차워크샵의결과로서이일을가능하게한성과가반영되어있다괮

More information

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5] The Asian Journal of TEX, Volume 3, No. 1, June 2009 Article revision 2009/5/7 KTS THE KOREAN TEX SOCIETY SINCE 2007 2008 ko.tex Installing TEX Live 2008 and ko.tex under Ubuntu Linux Kihwang Lee * kihwang.lee@ktug.or.kr

More information

<B3EDB9AEC0DBBCBAB9FD2E687770>

<B3EDB9AEC0DBBCBAB9FD2E687770> (1) 주제 의식의 원칙 논문은 주제 의식이 잘 드러나야 한다. 주제 의식은 논문을 쓰는 사람의 의도나 글의 목적 과 밀접한 관련이 있다. (2) 협력의 원칙 독자는 필자를 이해하려고 마음먹은 사람이다. 따라서 필자는 독자가 이해할 수 있는 말이 나 표현을 사용하여 독자의 노력에 협력해야 한다는 것이다. (3) 논리적 엄격성의 원칙 감정이나 독단적인 선언이

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

초간단 xoblivoir under X E TEX 사용법 x-ob-liv-oir 2008 년 9 월 8 일 12 월 3 일 ( 열번째고쳐씀 ) 요약 xoblivoir는 LuaLATEX 과 X LATEX 에서사용할수있는 oblivoir이다. 이문서는 E X LATEX 에

초간단 xoblivoir under X E TEX 사용법 x-ob-liv-oir 2008 년 9 월 8 일 12 월 3 일 ( 열번째고쳐씀 ) 요약 xoblivoir는 LuaLATEX 과 X LATEX 에서사용할수있는 oblivoir이다. 이문서는 E X LATEX 에 초간단 xoblivoir under X TX 사용법 x-ob-liv-oir 2008 년 9 월 8 일 12 월 3 일 ( 열번째고쳐씀 ) 요약 xoblivoir는 LuaLATX 과 X LATX 에서사용할수있는 oblivoir이다. 이문서는 X LATX 에서 xoblivoir를사용하는방법을기술한다. oblivoir와공통인부분은기 술에서제외하였다. 이문서에서언급하지않은것은모두

More information

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상 Android 용 Brother Image Viewer 설명서 버전 0 KOR 아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상표입니다. Android는

More information

수식모드수식의표현법 수학식표현 조남운 조남운 수학식표현

수식모드수식의표현법 수학식표현 조남운 조남운 수학식표현 조남운 mailto:namun.cho@gmail.com 2008.2.20 AMS-TEX 미국수학회 (American Mathematical Society) 에서만든수학패키지 대부분의수학표현은 AMS-TEX 을이용하고있음. 자세한내용은 AMS-TEX 매뉴얼을참조할것. http://www.ams.org/tex/amstex.html AMS-TEX 패키지선언 \usepackage{amssymb,

More information

outline_표준연3파트.indd

outline_표준연3파트.indd 단위를 알면 세상이 보인다 μg W ng C mol GHz J ns cm MV m/s Gy W MHz mv ms ma Ω A Hz lx m 2 /s Bq rad Mg A/m km/s km C m/s 2 m 3 /s Pa g cd/m 2 m N/m Wb μa T m 3 pm nm mg MW K m 2 rad/s F sr V/m V S cd J/K mm lm H

More information

HL A T E X PDF

HL A T E X PDF HL A T E X PDF 1 1 3 2 3 2.1 PDF :.............. 3 2.2............................ 4 3 4 3.1......................... 4 3.1.1 PDF......... 4 3.1.2 PDF............ 6 3.2 PDF.................. 7 3.2.1 T

More information

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse

More information

초간단 oblivoir v2.1 사용법 x-ob-liv-oir 2015 년 4 월 요약 oblivoir 클래스 2.0 버전은그동안별도의브랜치로개발되어오던 xoblivoir 와 oblivoir 를통합하여완전히동일한클래스가되었다. 이문서는 oblivoir 즉 xoblivo

초간단 oblivoir v2.1 사용법 x-ob-liv-oir 2015 년 4 월 요약 oblivoir 클래스 2.0 버전은그동안별도의브랜치로개발되어오던 xoblivoir 와 oblivoir 를통합하여완전히동일한클래스가되었다. 이문서는 oblivoir 즉 xoblivo 초간단 oblivoir v2.1 사용법 x-ob-liv-oir 2015 년 4 월 요약 oblivoir 클래스 2.0 버전은그동안별도의브랜치로개발되어오던 xoblivoir 와 oblivoir 를통합하여완전히동일한클래스가되었다. 이문서는 oblivoir 즉 xoblivoir 를사용하는방법을간략히기술한다. 차례 제 1 절 oblivoir와 xoblivoir.............................

More information

SIGIL 완벽입문

SIGIL 완벽입문 누구나 만드는 전자책 SIGIL 을 이용해 전자책을 만들기 EPUB 전자책이 가지는 단점 EPUB이라는 포맷과 제일 많이 비교되는 포맷은 PDF라는 포맷 입니다. EPUB이 나오기 전까지 전 세계에서 가장 많이 사용되던 전자책 포맷이고, 아직도 많이 사 용되기 때문이기도 한며, 또한 PDF는 종이책 출력을 위해서도 사용되기 때문에 종이책 VS

More information

Contributors: Myung Su Seok and SeokJae Yoo Last Update: 09/25/ Introduction 2015년 8월현재전자기학분야에서가장많이쓰이고있는 simulation software는다음과같은알고리즘을사용하고있다.

Contributors: Myung Su Seok and SeokJae Yoo Last Update: 09/25/ Introduction 2015년 8월현재전자기학분야에서가장많이쓰이고있는 simulation software는다음과같은알고리즘을사용하고있다. Contributors: Myung Su Seok and SeokJae Yoo Last Update: 09/25/2015 1. Introduction 2015년 8월현재전자기학분야에서가장많이쓰이고있는 simulation software는다음과같은알고리즘을사용하고있다. 2. Installation 2.1. For Debian GNU/Linux 국내에서사용되는컴퓨터들의

More information

Windows 10 General Announcement v1.0-KO

Windows 10 General Announcement v1.0-KO Windows 10 Fuji Xerox 장비와의호환성 v1.0 7 July, 2015 머리말 Microsoft 는 Windows 10 이 Windows 자동업데이트기능을통해예약되어질수있다고 6 월 1 일발표했다. 고객들은 윈도우 10 공지알림을받기 를표시하는새로운아이콘을알아차릴수있습니다. Fuji Xerox 는 Microsoft 에서가장최신운영시스템인 Windows

More information

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

152*220

152*220 152*220 2011.2.16 5:53 PM ` 3 여는 글 교육주체들을 위한 교육 교양지 신경림 잠시 휴간했던 우리교육 을 비록 계간으로이지만 다시 내게 되었다는 소식을 들으니 우 선 반갑다. 하지만 월간으로 계속할 수 없다는 현실이 못내 아쉽다. 솔직히 나는 우리교 육 의 부지런한 독자는 못 되었다. 하지만 비록 어깨너머로 읽으면서도 이런 잡지는 우 리

More information

제 1 절 복습 \usepackage{ g r a p h i c x }... \ i n c l u d e g r a p h i c s [ width =0.9\ textwidth ] { b e a r. j p g } (a) includegraphics 사용의일반적인유형

제 1 절 복습 \usepackage{ g r a p h i c x }... \ i n c l u d e g r a p h i c s [ width =0.9\ textwidth ] { b e a r. j p g } (a) includegraphics 사용의일반적인유형 그림배치 이주용 jlee@formal.korea.ac.kr 2011 년 9 월 28 일 제 1 절 복습 \usepackage{ g r a p h i c x }... \ i n c l u d e g r a p h i c s [ width =0.9\ textwidth ] { b e a r. j p g } (a) includegraphics 사용의일반적인유형 (b)

More information

현대적 레이텍 활용 Modern Coding Conventions

현대적 레이텍 활용   Modern Coding Conventions 현대적레이텍활용 Modern Coding Conventions Nova De Hi KTUG/ 공주대학교문서작성워크숍 Fall/2014 입력 \usepackage[utf8]{inputenc} pdftex 에서유니코드를처리하기위해서쓰던코드 LuaTEX 이나 X TEX 에서는불필요 E \'{a} á ã \'{a} 와같이입력할필요없음 유니코드문자를직접입력한다. 기호문자도마찬가지.

More information

View Licenses and Services (customer)

View Licenses and Services (customer) 빠른 빠른 시작: 시작: 라이선스, 라이선스, 서비스 서비스 및 주문 주문 이력 이력 보기 보기 고객 가이드 Microsoft 비즈니스 센터의 라이선스, 서비스 및 혜택 섹션을 통해 라이선스, 온라인 서비스, 구매 기록 (주문 기록)을 볼 수 있습니다. 시작하려면, 비즈니스 센터에 로그인하여 상단 메뉴에서 재고를 선택한 후 내 재고 관리를 선택하십시오. 목차

More information

3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < >

3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < > . 변수의수 ( 數 ) 가 3 이라면카르노맵에서몇개의칸이요구되는가? 2칸 나 4칸 다 6칸 8칸 < > 2. 다음진리표의카르노맵을작성한것중옳은것은? < 나 > 다 나 입력출력 Y - 2 - 3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < > 2 2 2 2 2 2 2-3 - 5. 다음진리표를간략히한결과

More information

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

More information

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Microsoft PowerPoint - chap03-변수와데이터형.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num %d\n", num); return 0; } 1 학습목표 의 개념에 대해 알아본다.

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

1809_2018-BESPINGLOBAL_Design Guidelines_out

1809_2018-BESPINGLOBAL_Design Guidelines_out 베스핀글로벌 디자인 가이드라인 베스핀글로벌은 경험과 기술을 바탕으로 고객에게 신뢰를 주는 기업이기를 지향합니다. 모든 서비스와 소통채널에서 우리의 가치를 일관되게 표현하도록 합니다. SIGNATURE SIGNATURE + SLGAN SIGNATURE [CHINA] SIGNATURE + SYMBL 2018년 1.ver 베스핀글로벌 디자인 가이드라인 디자인 가이드라인을

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

슬라이드 1

슬라이드 1 Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치

More information

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Microsoft Word - windows server 2003 수동설치_non pro support_.doc Windows Server 2003 수동 설치 가이드 INDEX 운영체제 설치 준비과정 1 드라이버를 위한 플로피 디스크 작성 2 드라이버를 위한 USB 메모리 작성 7 운영체제 설치 과정 14 Boot Sequence 변경 14 컨트롤러 드라이버 수동 설치 15 운영체제 설치 17 운영체제 설치 준비 과정 Windows Server 2003 에는 기본적으로

More information

Windows Server 2012

Windows Server  2012 Windows Server 2012 Shared Nothing Live Migration Shared Nothing Live Migration 은 SMB Live Migration 방식과다른점은 VM 데이터파일의위치입니다. Shared Nothing Live Migration 방식은 Hyper-V 호스트의로컬디스크에 VM 데이터파일이위치합니다. 반면에, SMB

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

참을성 없는 초보자들을 위한 해법 2 1 참을성 없는 초보자들을 위한 해법 이 글의 제목에 마음이 끌렸다면 당신은 분명 매우 절박한 처지에 있을 것이다. 하지만 당신은 참을성이 없기 때문에 시간이 없다고 변명하겠지만 이 책에서 만족할 만한 아무런 해법도 얻지 못할 수

참을성 없는 초보자들을 위한 해법 2 1 참을성 없는 초보자들을 위한 해법 이 글의 제목에 마음이 끌렸다면 당신은 분명 매우 절박한 처지에 있을 것이다. 하지만 당신은 참을성이 없기 때문에 시간이 없다고 변명하겠지만 이 책에서 만족할 만한 아무런 해법도 얻지 못할 수 레이텍을 빨리 쓸 수 있는 방법 2009 이호재 * 차 례 1 참을성 없는 초보자들을 위한 해법...................... 2 1.1 텍 배포판의 선택과 구입........................ 3 1.2 설치................................... 3 1.3 참고서..................................

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터 운영체제실습 Raspbian 설치 2017. 3 표월성 wspyo74@naver.com cherub.sungkyul.ac.kr 목차 Ⅰ. 설치 1. 라즈비안 (Raspbian 설치 ) 2. 설치후, 설정 설정사항 Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로

More information

PowerPoint Presentation

PowerPoint Presentation 5 불대수 IT CookBook, 디지털논리회로 - 2 - 학습목표 기본논리식의표현방법을알아본다. 불대수의법칙을알아본다. 논리회로를논리식으로논리식을논리회로로표현하는방법을알아본다. 곱의합 (SOP) 과합의곱 (POS), 최소항 (minterm) 과최대항 (mxterm) 에대해알아본다. 01. 기본논리식의표현 02. 불대수법칙 03. 논리회로의논리식변환 04.

More information

*074-081pb61۲õðÀÚÀ̳ʸ

*074-081pb61۲õðÀÚÀ̳ʸ 74 October 2005 현 대는 이미지의 시대다. 영국의 미술비평가 존 버거는 이미지를 새롭 게 만들어진, 또는 재생산된 시각 으로 정의한 바 있다. 이 정의에 따르 면, 이미지는 사물 그 자체가 아니라는 것이다. 이미지는 보는 사람의, 혹은 이미지를 창조하는 사람의 믿음이나 지식에 제한을 받는다. 이미지는 언어, 혹은 문자에 선행한다. 그래서 혹자는

More information

한글 TEX 사용기 노바디 2006 년 3 월 2 일 차례 1 글머리에 기원 MiKTEX 의발견....

한글 TEX 사용기 노바디 2006 년 3 월 2 일 차례 1 글머리에 기원 MiKTEX 의발견.... 한글 TEX 사용기 노바디 2006 년 3 월 2 일 차례 1 글머리에......................................... 3 2 기원............................................ 3 3 MiKTEX 의발견..................................... 5 4 HL A TEX, pdf에주목하다.................................

More information

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc Visual Studio 2005 + Intel Visual Fortran 9.1 install Intel Visual Fortran 9.1 intel Visual Fortran Compiler 9.1 만설치해서 DOS 모드에서실행할수있지만, Visual Studio 2005 의 IDE 를사용하기위해서는 Visual Studio 2005 를먼저설치후 Integration

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

1997 4 23 2000 9 5 2003 9 10 2008 2 20 2008 12 10 2011 7 1 2012 8 17 2014 9 19 2015 3 31 2015 6 30 2016 9 30 2017 6 30 2019 3 31 326 327 328 < >

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

글자가족 type family AG 안상수체 2012 ExtraLight AG안상수체2012 Light AG안상수체2012 Medium AG안상수체2012 Bold AG안상수체2012 ExtraBlod

글자가족 type family AG 안상수체 2012 ExtraLight AG안상수체2012 Light AG안상수체2012 Medium AG안상수체2012 Bold AG안상수체2012 ExtraBlod AG 글꼴미리보기 AG type overview AG 안상수체 2012 안상수체는 1985년안상수가디자인한탈네모틀글꼴이다. 한글쪽자는수직선, 수평선, 사선, 정원의기하학모양이며, 홀자기둥이받침의정가운데맞닿아있는것이특징이다. AG 안상수체 2012는기존안상수체에서로마자, 기호활자를다듬고굵기를판올림한것이다. 글자가족은아주가는 (EL), 가는 (L), 중간 (M),

More information

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우. 소프트웨어매뉴얼 윈도우드라이버 Rev. 3.03 SLP-TX220 / TX223 SLP-TX420 / TX423 SLP-TX400 / TX403 SLP-DX220 / DX223 SLP-DX420 / DX423 SLP-DL410 / DL413 SLP-T400 / T403 SLP-T400R / T403R SLP-D220 / D223 SLP-D420 / D423

More information

Chapter 05. 파일접근권한관리하기

Chapter 05. 파일접근권한관리하기 Chapter 05. 파일접근권한관리하기 00. 개요 01. 파일의속성 02. 파일의접근권한 03. 기호를이용한파일접근권한변경 04. 숫자를이용한파일접근권한변경 05. 기본접근권한설정 06. 특수접근권한 파일의속성을이해하고설명할수있다. 접근권한의종류와표기방법을이해하고설명할수있다. 접근권한을바꾸기위해기호모드에서원하는권한을기호로표기할수있다. 접근권한을바꾸기위해숫자모드에서원하는권한을숫자로표기할수있다.

More information

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y

More information

연구노트

연구노트 #2. 종이 질 - 일단은 OK. 하지만 만년필은 조금 비침. 종이질은 일단 합격점. 앞으로 종이질은 선택옵션으로 둘 수 있으리라 믿는다. 종이가 너무 두꺼우면, 뒤에 비치지 는 않지만, 무겁고 유연성이 떨어진다. 하지만 두꺼우면 고의적 망실의 위험도 적고 적당한 심리적 부담도 줄 것이 다. 이점은 호불호가 있을 것으로 생각되지만, 일단은 괜찮아 보인다. 필자의

More information

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자 SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전

More information

Microsoft Word - Armjtag_문서1.doc

Microsoft Word - Armjtag_문서1.doc ARM JTAG (wiggler 호환 ) 사용방법 ( IAR EWARM 에서 ARM-JTAG 로 Debugging 하기 ) Test Board : AT91SAM7S256 IAR EWARM : Kickstart for ARM ARM-JTAG : ver 1.0 ( 씨링크테크 ) 1. IAR EWARM (Kickstart for ARM) 설치 2. Macraigor

More information

Microsoft PowerPoint - kandroid_for_HI-CNU.ppt

Microsoft PowerPoint - kandroid_for_HI-CNU.ppt 온누리한글의유니코드 (Unicode) 적용방안연구 일시 : 00 년 0 월 일목요일, 한글날오후 시 장소 : 충남대학교인문대학문원강당 발표자 : 사이트관리자, 양정수 ( 들풀 ), yangjeongsoo@gmail.com,, 00,, 6 목차 문자집합과인코딩, 유니코드 한글코드표준의역사 유니코드와한글 한글 : 폰트파일과글자모양 한글 : 입력방식 (Input

More information

i - ii - iii - 1 - 연도 보험급여 총계 (A) 장해급여 유족급여 일시금연금일시금연금 연금계 (B) 연금비중 (B/A, %) 기타 급여 1) 1998 14,511 3,377 979 1,657 30 1,009 7.0 8,467 1999 12,742 2,318 1,120 1,539 38 1,158 9.1 7,727 2000 14,563 2,237 1,367

More information

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770> IT OOKOOK 87 이론, 실습, 시뮬레이션 디지털논리회로 ( 개정 3 판 ) (Problem Solutions of hapter 9) . T 플립플롭으로구성된순서논리회로의해석 () 변수명칭부여 F-F 플립플롭의입력 :, F-F 플립플롭의출력 :, (2) 불대수식유도 플립플롭의입력 : F-F 플립플롭의입력 : F-F 플립플롭의출력 : (3) 상태표작성 이면,

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

Overleaf 에서 L A TEX 체험 nanim 2015 년 7 월 9 일 차례 Overleaf을통한 L A TEX 체험 사이트접속과사용자등록 프

Overleaf 에서 L A TEX 체험 nanim 2015 년 7 월 9 일 차례 Overleaf을통한 L A TEX 체험 사이트접속과사용자등록 프 Overleaf 에서 L A TEX 체험 nanim 2015 년 7 월 9 일 차례 Overleaf을통한 L A TEX 체험................................. 2 사이트접속과사용자등록.............................. 2 프로젝트만들기.................................... 4 한글문서로만들기...................................

More information

JDK이클립스

JDK이클립스 JDK 와이클립스설치 A. JDK 다운로드, 설치및환경설정 지금부터 JDK를다운로드받아설치하고 JDK를윈도우에서활용할수있도록환경을설정하는전과정을소개한다. 다운로드 www.oracle.com 사이트에접속하여 Downloads 메뉴를선택한후 [ 그림 1] 과같이 "Java for Developers" 를클릭한다. [ 그림 1] www.oracle.com 사이트

More information

Tcl의 문법

Tcl의 문법 월, 01/28/2008-20:50 admin 은 상당히 단순하고, 커맨드의 인자를 스페이스(공백)로 단락을 짓고 나열하는 정도입니다. command arg1 arg2 arg3... 한행에 여러개의 커맨드를 나열할때는, 세미콜론( ; )으로 구분을 짓습니다. command arg1 arg2 arg3... ; command arg1 arg2 arg3... 한행이

More information

MySQL-.. 1

MySQL-.. 1 MySQL- 기초 1 Jinseog Kim Dongguk University jinseog.kim@gmail.com 2017-08-25 Jinseog Kim Dongguk University jinseog.kim@gmail.com MySQL-기초 1 2017-08-25 1 / 18 SQL의 기초 SQL은 아래의 용도로 구성됨 데이터정의 언어(Data definition

More information

벤처연구사업(전동휠체어) 평가

벤처연구사업(전동휠체어) 평가 운영체제실습 Raspbian 설치 2019. 3 표월성 wspyo74@naver.com cherub.sungkyul.ac.kr 목차 Ⅰ. 개요 1. 설치전준비시항 - H/W 및 S/W - Raspbian 이미지파일 2. 라즈비안 (Raspbian) 설치 - Destop 설치 ( 가상화시스템이용 ) - NOOBS를이용한설치 - Raspbian 이미지를이용한설치

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

041~084 ¹®È�Çö»óÀбâ

041~084 ¹®È�Çö»óÀбâ 1998 60 1 1 200 2 6 4 7 29 1975 30 2 78 35 1 4 2001 2009 79 2 9 2 200 3 1 6 1 600 13 6 2 8 21 6 7 1 9 1 7 4 1 2 2 80 4 300 2 200 8 22 200 2140 2 195 3 1 2 1 2 52 3 7 400 60 81 80 80 12 34 4 4 7 12 80 50

More information

The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 한글라텍에서조사이형태교체의자동화에관하여 On the

The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 한글라텍에서조사이형태교체의자동화에관하여 On the The Asian Journal of TEX, Volume 1, No. 2, October 2007 Article revision 2007/10/31 KTS THE KOREAN TEX SOCIETY SINCE 2007 한글라텍에서조사이형태교체의자동화에관하여 On the Automation of JOSA Allomorph Alterations in Hangul

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

소개 Mac OS X (10.9, 10.10, 10.11, 10.12) 와 OKI 프린터호환성 Mac OS X 를사용하는 PC 에 OKI 프린터및복합기 (MFP) 제품을연결하여사용할때, 최고의성능을발휘할수있도록하는것이 OKI 의목 표입니다. 아래의문서는 OKI 프린터및

소개 Mac OS X (10.9, 10.10, 10.11, 10.12) 와 OKI 프린터호환성 Mac OS X 를사용하는 PC 에 OKI 프린터및복합기 (MFP) 제품을연결하여사용할때, 최고의성능을발휘할수있도록하는것이 OKI 의목 표입니다. 아래의문서는 OKI 프린터및 OKI 프린터호환성 Mac OS X 와호환성 Ma(10.9) Ma(10.10) Ma(10.11) Ma(10.12) 버전 : 7.8 날짜 : 2017-05-10 소개 Mac OS X (10.9, 10.10, 10.11, 10.12) 와 OKI 프린터호환성 Mac OS X 를사용하는 PC 에 OKI 프린터및복합기 (MFP) 제품을연결하여사용할때, 최고의성능을발휘할수있도록하는것이

More information

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수있다. 학습내용 1 : 현재디렉토리확인 1. 홈디렉토리 - 로그인을한후, 사용자가기본으로놓이게되는디렉토리위치를홈디렉토리 (home directory)

More information

자연언어처리

자연언어처리 제 7 장파싱 파싱의개요 파싱 (Parsing) 입력문장의구조를분석하는과정 문법 (grammar) 언어에서허용되는문장의구조를정의하는체계 파싱기법 (parsing techniques) 문장의구조를문법에따라분석하는과정 차트파싱 (Chart Parsing) 2 문장의구조와트리 문장 : John ate the apple. Tree Representation List

More information

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할 저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할수없습니다. 변경금지. 귀하는이저작물을개작, 변형또는가공할수없습니다. 귀하는, 이저작물의재이용이나배포의경우,

More information

31. 을전개한식에서 의계수는? 를전개한식이 일 때, 의값은? 을전개했을때, 의계수와상수항의합을구하면? 을전개했을때, 의 계수는? 를전개했을때, 상수항을 구하여라. 37

31. 을전개한식에서 의계수는? 를전개한식이 일 때, 의값은? 을전개했을때, 의계수와상수항의합을구하면? 을전개했을때, 의 계수는? 를전개했을때, 상수항을 구하여라. 37 21. 다음식의값이유리수가되도록유리수 의값을 정하면? 1 4 2 5 3 26. 을전개하면상수항을 제외한각항의계수의총합이 이다. 이때, 의값은? 1 2 3 4 5 22. 일때, 의값은? 1 2 3 4 5 27. 를전개하여간단히 하였을때, 의계수는? 1 2 3 4 5 23. 를전개하여 간단히하였을때, 상수항은? 1 2 3 4 5 28. 두자연수 와 를 로나누면나머지가각각

More information

Microsoft PowerPoint - lect13-LaTeX사용법.ppt

Microsoft PowerPoint - lect13-LaTeX사용법.ppt 강의 13 : LaTeX 사용법 이도훈 부산대학교공과대학정보컴퓨터공학부 LaTeX 이란? Donald E. Knuth( 커누스 ' 라발음 ) 가수식이들어가는문서를쓰던도중, 여러가지문제점을접했다. 수식의위치라던가크기등을출력용으로컴퓨터로입력하기어려운부분이매우많았던것이다. 따라서수식을포함한문서인쇄용언어 TeX 를개발했다 (5년동안). 지금 TeX 의개발은종료된상태이다.

More information

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다. 1.1. 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 만별도로필요한경우도있어툴체인설치및설정에대해알아봅니다. 1.1.1. 툴체인설치 다음링크에서다운받을수있습니다.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 05. 파일접근권한관리하기 00. 개요 01. 파일의속성 02. 파일의접근권한 03. 기호를이용한파일접근권한변경 04. 숫자를이용한파일접근권한변경 05. 기본접근권한설정 06. 특수접근권한 파일의속성을이해하고설명할수있다. 접근권한의종류와표기방법을이해하고설명할수있다. 접근권한을바꾸기위해기호모드에서원하는권한을기호로표기할수있다. 접근권한을바꾸기위해숫자모드에서원하는권한을숫자로표기할수있다.

More information

Windows 8에서 BioStar 1 설치하기

Windows 8에서 BioStar 1 설치하기 / 콘텐츠 테이블... PC에 BioStar 1 설치 방법... Microsoft SQL Server 2012 Express 설치하기... Running SQL 2012 Express Studio... DBSetup.exe 설정하기... BioStar 서버와 클라이언트 시작하기... 1 1 2 2 6 7 1/11 BioStar 1, Windows 8 BioStar

More information

TEX 과그언저리 Karnes 2006 년 9 월 요약 이글은 2006년 9월 17일 KDLP F/OSS 컨퍼런스의부대행사로준비하는 KTUG BoF의토론자료로작성하는것이다. TEX 에관심이있거나언젠가한번쯤 TEX 을써보았던기억이있는분들에게최근 TEX 시스템자체의변화와발

TEX 과그언저리 Karnes 2006 년 9 월 요약 이글은 2006년 9월 17일 KDLP F/OSS 컨퍼런스의부대행사로준비하는 KTUG BoF의토론자료로작성하는것이다. TEX 에관심이있거나언젠가한번쯤 TEX 을써보았던기억이있는분들에게최근 TEX 시스템자체의변화와발 TEX 과그언저리 Karnes 2006 년 9 월 요약 이글은 2006년 9월 17일 KDLP F/OSS 컨퍼런스의부대행사로준비하는 KTUG BoF의토론자료로작성하는것이다. TEX 에관심이있거나언젠가한번쯤 TEX 을써보았던기억이있는분들에게최근 TEX 시스템자체의변화와발전을개략적으로소개하고토론을유도해내는것이목적이기때문에자세한보고서형식의글이되지는못하였다. 목차

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx OOPT Stage 2040 - Design Feesual CPT Tool Project Team T8 Date 2017-05-24 T8 Team Information 201211347 박성근 201211376 임제현 201411270 김태홍 2017 Team 8 1 Table of Contents 1. Activity 2041. Design Real Use

More information

로거 자료실

로거 자료실 redirection 매뉴얼 ( 개발자용 ) V1.5 Copyright 2002-2014 BizSpring Inc. All Rights Reserved. 본문서에대한저작권은 비즈스프링 에있습니다. - 1 - 목차 01 HTTP 표준 redirect 사용... 3 1.1 HTTP 표준 redirect 예시... 3 1.2 redirect 현상이여러번일어날경우예시...

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드] Chapter 03 변수와자료형 2009 한국항공대학교항공우주기계공학부 (http://mercury.kau.ac.kr/sjkwon) 1 변수와자료유형 변수 프로그램에서자료값을임시로기억할수있는저장공간을변수 (variables) 변수 (Variables) 는컴퓨터의메모리인 RAM(Random Access Memory) 에저장 물건을담는박스라고생각한다면박스의크기에따라담을물건이제한됨

More information

Chapter ...

Chapter ... Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR Configure Kernel Build Environment And kernel & root file system Build 2018-09-27 VLSI Design Lab 1 지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함.

More information

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다 10 강. 쉘스크립트 쉘스크립트 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다른운영체제로이식되지않음 -스크립트언어를사용하면컴파일과정이없고인터프리터가소스파일에서명령문을판독하여각각의명령을수행

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

MPAL-VI-Pneu_BES_V_ a_ k1

MPAL-VI-Pneu_BES_V_ a_ k1 MPAL-VI 755054 2017-07a [8073531] MPAL-VI MPAL-VI-KO TORX, IO-Link (). : :, : 1. / 2 Festo MPAL-VI-KO 2017-07a MPAL-VI... 7... 7... 8... 8... 8 1... 9 1.1... 9 1.2... 9 1.3... 9 1.3.1... 9 1.3.2... 10

More information

<B3EDB4DC28B1E8BCAEC7F6292E687770>

<B3EDB4DC28B1E8BCAEC7F6292E687770> 1) 초고를읽고소중한조언을주신여러분들게감사드린다. 소중한조언들에도불구하고이글이포함하는오류는전적으로저자개인의것임을밝혀둔다. 2) 대표적인학자가 Asia's Next Giant: South Korea and Late Industrialization, 1990 을저술한 MIT 의 A. Amsden 교수이다. - 1 - - 2 - 3) 계량방법론은회귀분석 (regression)

More information

FGB-P 학번수학과권혁준 2008 년 5 월 19 일 Lemma 1 p 를 C([0, 1]) 에속하는음수가되지않는함수라하자. 이때 y C 2 (0, 1) C([0, 1]) 가미분방정식 y (t) + p(t)y(t) = 0, t (0, 1), y(0)

FGB-P 학번수학과권혁준 2008 년 5 월 19 일 Lemma 1 p 를 C([0, 1]) 에속하는음수가되지않는함수라하자. 이때 y C 2 (0, 1) C([0, 1]) 가미분방정식 y (t) + p(t)y(t) = 0, t (0, 1), y(0) FGB-P8-3 8 학번수학과권혁준 8 년 5 월 9 일 Lemma p 를 C[, ] 에속하는음수가되지않는함수라하자. 이때 y C, C[, ] 가미분방정식 y t + ptyt, t,, y y 을만족하는해라고하면, y 는, 에서연속적인이계도함수를가지게확 장될수있다. Proof y 은 y 의도함수이므로미적분학의기본정리에의하여, y 은 y 의어떤원시 함수와적분상수의합으로표시될수있다.

More information

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

PowerPoint Presentation

PowerPoint Presentation 웹과인터넷활용및실습 (Web & Internet) Suan Lee - 웹과인터넷활용및실습 (Web & Internet) - 04. CSS3 스타일속성기본 1 04. CSS3 스타일속성 04. CSS3 Style Properties - 웹과인터넷활용및실습 (Web & Internet) - 04. CSS3 스타일속성기본 2 CSS3 단위 1 CSS 는각각의스타일속성에다양한값을입력

More information

전자회로 실험

전자회로 실험 전자회로실험 2 조 고주현허영민 BJT의고정바이어스및 부품 * 실험목적 1) 고정바이어스와 회로의직류동작점을결정한다. 다이오드의특성 * 실험장비 계측장비 - Digital Multi Meter 부품 -저항 다이오드의특성 부품 - 트랜지스터

More information

16<C624><D22C><ACFC><D0D0> <ACE0><B4F1><BB3C><B9AC><2160>_<BCF8><CC45>.pdf

16<C624><D22C><ACFC><D0D0> <ACE0><B4F1><BB3C><B9AC><2160>_<BCF8><CC45>.pdf I I 02 03 04 05 06 II 07 08 09 III 10 11 12 13 IV 14 15 16 17 18 a b c d 410 434 486 656 (nm) Structure 1 PLUS 1 1. 2. 2 (-) (+) (+)(-) 2 3. 3 S. T.E.P 1 S. T.E.P 2 ) 1 2 (m) 10-11 10-8 10-5 C 10-2 10

More information

STARFIELD BRAND IDENTITY DESIGN GUIDELINES 2

STARFIELD BRAND IDENTITY DESIGN GUIDELINES 2 STARFIELD BRAND IDENTITY DESIGN GUIDELINES 1 STARFIELD BRAND IDENTITY DESIGN GUIDELINES STARFIELD BRAND IDENTITY DESIGN GUIDELINES 2 STARFIELD BRAND IDENTITY DESIGN GUIDELINES 3 STARFIELD BRAND IDENTITY

More information

국어 순화의 역사와 전망

국어 순화의 역사와 전망 전문용어의국어화 강현화 1. 들어가기 이해할 수 있는 쉬운 언어 사용의 전형을 만들고자 노력하고 있다. 따라서 본고는 전문 용어의 사용자가 전문가뿐만 아니라 일반인도 포 될 수 있다는 데에서 출발한다. 이러한 출발점을 시작으로 과연 전문 함 용어의 국어화가 어떻게 나아가야 하는지에 대해 고민해 보고자 한다. 2. 전문 용어 연구의 쟁점 2.1. 전문 용어

More information

3 4 5 6 7 8 2/25 26 27 28 2 3 3. 2 3. 2~8 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 3.15 3.28 3.29~30 1 8 15 2 9 16 3 10 17 4 11 18 5 12 19 6 13 20 7 14 21 4. 2~5 4.18

More information

@ p a g e c o n te n tt y p e = " te x t/ h tm l;c h a rs e t= u tf- 8 " fo r (in t i= 0 ; i< = 1 0 ; i+ + ) { o u t.p rin tln (" H e llo W o rld " + i + " < b r/> " ); = re s u lt + re s u lts u m ()

More information