KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
You will gain money by a speculation or lottery.
FrontPage › MetaPost

목차

1 MetaPost란?
2 MetaPost의 설치 및 사용
3 Hangul-ucsMetaPost
4 검색 추출 가능한 한글 PDF를 얻는 방법
5 MetaPost Processor

1 MetaPost란?

MetaPostMetaFont로부터 그림을 그리는 기본적인 도구들을 차용했지만 MetaFont와는 달리 bitmap 대신 PostScript code를 출력한다.

3 Hangul-ucsMetaPost

  1. MetaPost 0.970 이후 버전 예제
    verbatimtex
    \input ucsplain.tex
    \hfont{outbtm}{}
    etex
    
    filenametemplate "%j-%c.eps";
    prologues:=3;
    
    beginfig(1);
        draw fullcircle scaled 2cm; 
        dotlabel("", origin);
        dotlabel.rt(btex 안녕하세요 etex, (cosd(45),sind(45))*1cm);
    endfig;
    end 
    
    • 파일이름이 file-1.eps 형식으로 만들어진다.
    • eps 파일에 type1 폰트가 임베딩된다.
    • epstopdf 명령을 이용하여 간단히 pdf를 만들 수 있다.
    • pdf 파일에서 한글 검색·추출이 가능하다.
  2. MetaPost로부터 pdf 만들기
    $ mpost foo
    $ mptopdf foo
    
    • 이렇게 얻어진 pdf는 ebb로 바운딩박스를 얻기 어려울 수 있다. bb파일얻기를 참고하라.
  3. 한글 예제
    • 한글 글꼴은 type 1 폰트(UHC-unicode 또는 문화부 type 1 등)를 이용한다. 다음 예제에서는 uhc-unicode를 사용하였음.
    • 한글 텍스트의 검색 추출까지 원한다면, 아래 관련 소절을 볼 것.
  4. verbatimtex
    %&latex
    \documentclass{article}
    \usepackage{dhucs}
    \SetHangulFonts{wbt}{wgt}{wtt}
    \usepackage{mflogo}
    \begin{document}
    etex;
    
    beginfig(1);
    % 태극 모양
    R:=2cm; r:=R/2;
    path p[];
    z0=(0,0); z1-z0=(R,0); z2-z0=(0,R); z3-z0=(-R,0);
    z4-z0=(-r,0); z5-z0=(0,-r); z6-z0=(r,0);
    p0:= z1..z2..z3;
    p1:= p0 rotatedaround(z0,180);
    p2:= (z4..z5..z6) shifted (z4-z0);
    p3:= p2 rotatedaround(z4,180) shifted (z6-z4);
    
    p4:=(p0--p2--reverse p3--cycle) rotatedaround(z0,-angle(3,2));
    p5:=(p1--p3--reverse p2--cycle) rotatedaround(z0,-angle(3,2));
    fill p4 withcolor red;
    fill p5 withcolor blue;
    label(btex \Huge 태극 모양 etex, (0,R+r)-z0);
    label.rt(btex \LARGE\shortstack[l]{\sf \MP 에서 한글을 
    사용하기 위해서는 \\
    \sf PostScript 폰트를 쓰도록 하는 것이 좋다.
    \sf 은글꼴은 트루타입이므로 \\
    \sf UHC-unicode나 은글꼴 type-1 등을 사용하도록 \\
    \sf 소스를 적당히 수정한다.} etex, (1.2R,0)-z0);
    endfig;
    end
    
  5. Graph 그리기

4 검색 추출 가능한 한글 PDF를 얻는 방법

KTUGContrib:3418 (by DohyunKim)
  1. 첨부파일을 작업디렉토리에 풉니다.
  2. 작업디렉토리에서 다음 명령을 내립니다.
       pdftex --ini mptopdf
    
  3. 테스트 삼이 적당한 mp 파일을 컴파일해 봅니다.
       mptopdf mytest.mp
    
  4. 결과물로서 생성된 mytest-?.pdf에서 한글이 검색되는가 확인합니다.
  5. 쓸만하다고 생각되면 $TEXMF/web2c 디렉토리로 mptopdf.fmt를 옮깁니다.
       mv mptopdf.fmt $HOME/texmf/web2c
    
주의:
  • hangul-ucs (ucsplain 포함)에서만 쓸수 있습니다.
  • 한글폰트의 tfm이름이 ounbtm처럼 o로 시작하는 폰트에만 쓸수있습니다. 예컨대 uhc-unicode에서는 안 됩니다.
  • 만약 영문자가 폰트명이 o로 시작한다면 파국적인 결과가 야기됩니다.(하지만 o로 시작하는 영문폰트는 제가 아는한 별로 없습니다.)
  • 따라서 본 구현은 특수한 dirty trick에 불과하며 보편적인 해법이 아님을 분명히 합니다. caveat emptor!!!
  • 압축해제하면 mptopdf.tex이라는 이름의 파일이 생기는데 unttf-pdftex-dhucs.map을 pdftex.map에 이미 붙여넣으신 분(가끔 이런 분이 있습니다)은 이 파일이 쓸모없으니 지워버린 후 위 2.번의 fmt 만드는 작업을 하십시오.

^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-03-17 05:46:33
Processing time 0.0370 sec