summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex
blob: 90096a0f34a5b50ddb8aad4a7ad16224fd69345b (plain)
1
2
3
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Print out mcf data list  (LuaLaTeX)                 by A.Yamaji   2022.03.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% ** mcf2graph.mf must be version 4.82
% ** use mcf_library.mcf
% ** typeset by LuaLaTeX(luamplib)
\documentclass{article}
\usepackage{luamplib}%
\usepackage[T1]{fontenc}%
\mplibcodeinherit{enable}%
\mplibnumbersystem{double}%
\mpliblegacybehavior{disabled}%
%-------------------------------------------------------------------------
\everymplib{%
  if unknown Ph1:
    input mcf2graph;
    outputformat:="eps";
    sw_output:=Fig+Calc;
    fsize:=(35mm,34mm);
    max_blength:=4mm;
    row_h:=3.8mm;
    def make_frame=
      draw (0,0)--(185mm,0)--(185mm,h)--(0,h)--cycle wpcs thickness_frame;
      draw (w,h-row_h)--(185mm,h-row_h) wpcs thickness_frame;
      draw (w,h)--(w,0) wpcs thickness_frame;
      draw ( 75mm,h)--( 75mm,h-row_h) wpcs thickness_frame;
      draw (105mm,h)--(105mm,h-row_h) wpcs thickness_frame;
      draw (130mm,h)--(130mm,h-row_h) wpcs thickness_frame;
      draw (155mm,h)--(155mm,h-row_h) wpcs thickness_frame;
    enddef;
  fi
}%
%-------------------------------------------------------------------------
\pagestyle{empty}
\topmargin=-25mm
\oddsidemargin=-12mm
\textwidth=192mm
\textheight=280mm
\parindent=0mm
\makeatletter
%-------------------------------------------------------------------------
\newcount \fig@num%
\newif\ifCONT@%
\edef\one{1}%
\fig@num=0%
%-------------------------------------------------------------------------
\begin{document}
\noindent%
\begin{mplibcode}
  beginfigm(":<0,0~nb")
    if check(mc)=0:
      MC(scantokens(mc))
      ext(
        defaultfont:="cmtt9";
        label.lrt("[(No)]",(0,h));
        label.llft("(EXA)",(w,h));
        label.lrt("(Structure)",(8mm,18mm));
        label.lrt("(Name)",(w,h));
        label.lrt("(Category)",(75mm,h));
        label.lrt("(MW)*1",(105mm,h));
        label.lrt("(mw)*2",(130mm,h));
        label.lrt("(fm)*3",(155mm,h));
        label.lrt("(Molecular_Coding_Format)",(46mm,18mm));
        label.lrt("*1_(MW):Molecular_weight(data)",(105mm,26mm));
        label.lrt("*2_(mw):Molecular_weight(calculated)",(105mm,21mm));
        label.lrt("*3_(fm):Molecular_formula(calculated)",(105mm,16mm));
        make_frame;
      )
  fi
  endfigm
  fig_num:=0;
\end{mplibcode}\vspace{-1.2pt}\\
%------------------------------------------------------------------------
\CONT@true%
\loop%
\advance\fig@num\@ne\relax%
\begin{mplibcode}%
%%%%%%  beginfigm("t:EXA","v+:*")
%%%%%%  beginfigm("t:EXA","v+:1")
  beginfigm("t:EXA","v+:2")
    if check(mc)=0:
      MC(scantokens(mc))
      ext(
        defaultfont:="cmtt9";
        label.lrt("["&decimal(fig_num)&"]",(0,h));
        label.llft(inf_EXA,(w,h));
        if length(inf_EN)>23:
          nA:=defaultscale; defaultscale:=23/length(inf_EN);
          label.lrt(inf_EN, (w,h));
          defaultscale:=nA;
        else:
          label.lrt(inf_EN, (w,h));
        fi
        label.lrt(inf_Cat,(75mm,h));
        label.lrt(inf_MW,(105mm,h));
        label.lrt(cal_MW,(130mm,h));
        label.lrt(cal_FM,(155mm,h));
        make_frame;
        if mc_row>12: defaultscale:=0.6; row_h:=5.25;
        ef mc_row>8:  defaultscale:=0.8; row_h:=6.5;
        else: row_h:=10;
        fi
        for i=1 upto mc_row:
          label.lrt(mc[i],(w+mc_indent[i]*4.25,h-(i-1)*row_h-11.5));
        endfor
      )
      VerbatimTeX("\gdef\EN{"&inf_EN&"}");
   fi
  endfigm
  VerbatimTeX("\gdef\EOF{"&decimal(f_EOF)&"}");
\end{mplibcode}\vspace{-1.2pt}\\
%------------------------------------------------------------------------
%%%%%%%\ifnum\fig@num=10 \CONT@false \fi%
\ifx\EOF\one \CONT@false \fi%
\message{[\the\fig@num:\EN]}%
\ifCONT@ \repeat%
%------------------------------------------------------------------------------
\end{document}