Chemfig Polymer의 여러 브래킷-오류 제거 불가
chemfig
오른쪽을 사용하여 중합 공정을 보여주는 Reaktion을 얻기 위해 고군분투하고 있습니다.
이것은 내가 사용하는 코드입니다.
\begin{figure}[htb!]
\centering
\schemestart
\chemfig{R-C(-[2])(-[6])-C(-[2])(-[6])-C(-[2])(-[6])-\lewis{0.,C}(-[2])(-[6])}
\+
\chemfig{[@{left,0.5}]C(-[2])(-[6])=C(-[2])(-[6])[@{right,0.5}]}
%\polymerdelim[delimiters ={[]}, height = 40pt, indice = n]{left}{right}
\arrow
\chemfig{R-C(-[2])(-[6])-C(-[2])(-[6])-[@{left,0.5}]C(-[2])(-[6])-C(-[2])(-[6])-[@{right,0.5}]C(-[2])(-[6])-\lewis{0.,C}(-[2])(-[6])}
\polymerdelim[delimiters ={[]}, height = 40pt, indice = n]{left}{right}
\schemestop
\caption{}
\label{}
\end{figure}
이것은 현재 결과입니다.
어떤 이유로 두 번째 브래킷은 내가 원하는 방식이지만 첫 번째 브래킷은 그렇지 않습니다. 에서 만든 사양을 얻지 못하는 것 같아서 위 \polymerdelim
의 라인도 추가해야 할 것 같습니다 \chemfig
.
라인을 활성화하면
%\polymerdelim[delimiters ={[]}, height = 40pt, indice = n]{left}{right}
이 오류 메시지가 나타납니다.
! Package pgf Error: No shape named left is known.See the pgf package documentation for explanation.Type H <return> for immediate help.... \chemfig
누군가 나를 도울 수 있습니까?
감사합니다!
답변
chemfig
섹션 13 의 문서 에서 구문 @{<name>, <coeff>}
은 결합의 선택적 인수 시작 부분에서만 사용할 수 있습니다. 두 번째 \chemfig
예에서
\chemfig{[@{left,0.5}]C(-[2])(-[6])=C(-[2])(-[6])[@{right,0.5}]}
선택적 인수 [@{left,0.5}]
와는 [@{right,0.5}]
아무런 채권, 따라서 노드를 해당하지 않았다 left
및 right
생성되지 않습니다.
옵션 1
채권의 시작과 끝이 괜찮다면
\chemfig{C(-[2])(-[6])(-[@{left,0.5}4])=C(-[2])(-[6])-[@{right,0.5}]}
\polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n]{left}{right}
옵션 2
본드없는 스타일을 유지하려면를 사용 @{<name>}<atom>
하여 원자에 노드를 추가하고 \polymerdelim
옵션을 사용 open xshift
하고 close xshift
구분 기호의 위치를 조정할 수 있습니다 . 이 경우 왼쪽 및 오른쪽 공간은 자동으로 조정되지 않습니다.
\chemfig{@{left}C(-[2])(-[6])=@{right}C(-[2])(-[6])}
\polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n,
open xshift=-8pt, close xshift=]{left}{right}
옵션 3
이것은 옵션 1의 변형으로, 시작 및 종료 채권이 지정되지만 그려지지는 않습니다 (채권 옵션에 의해 [,,,draw=none]
). 더 나은 수평 간격을 얻기 위해이 두 결합도 단축됩니다 (결합 옵션 [,0.5,,,]) and the position of nodes are adjusted (from
@ {left, 0.5} to
@ {left, 1}`).
\chemfig{C(-[2])(-[6])(-[@{left,1}4,.5,,,draw=none])=C(-[2])(-[6])-[@{right,1},.5,,,draw=none]}
\polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n]{left}{right}
전체 예 :
\documentclass[margin=20pt]{standalone}
\usepackage{chemfig}
\begin{document}
\schemestart
\chemfig{R-C(-[2])(-[6])-C(-[2])(-[6])-C(-[2])(-[6])-\lewis{0.,C}(-[2])(-[6])}
\+
%% option 1
% \chemfig{C(-[2])(-[6])(-[@{left,0.5}4])=C(-[2])(-[6])-[@{right,0.5}]}
% \polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n]{left}{right}
%
%% option 2
% \chemfig{@{left}C(-[2])(-[6])=@{right}C(-[2])(-[6])}
% \polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n,
% open xshift=-8pt, close xshift=]{left}{right}
%% option 3
\chemfig{C(-[2])(-[6])(-[@{left,1}4,.5,,,draw=none])=C(-[2])(-[6])-[@{right,1},.5,,,draw=none]}
\polymerdelim[delimiters={[]}, height=40pt, depth=, indice=n]{left}{right}
\arrow
\chemfig{R-C(-[2])(-[6])-C(-[2])(-[6])-[@{left,0.5}]C(-[2])(-[6])-C(-[2])(-[6])-[@{right,0.5}]C(-[2])(-[6])-\lewis{0.,C}(-[2])(-[6])}
\polymerdelim[delimiters ={[]}, height=40pt, depth=, indice=n]{left}{right}
\schemestop
\end{document}