chemfig를 사용하여 삼중 블록 폴리머 구조 그리기

chemfig를 사용하여 삼중 블록 폴리머 구조 그리기

이 MWE 및 그림에 제시된 것과 같은 일반적인 삼중 블록 공중합체를 그려야 합니다. 내가 가진 문제는 분자의 왼쪽과 오른쪽에 있습니다. 나는 그것들이 "("와 ")"로만 끝나고 화학 결합은 표현되지 않기를 원합니다. "-"를 유지하면 이미지 왼쪽에 화학 결합이 있는 결과가 표시됩니다. 포함하지 않으면 ")" 배치 오류와 일부 정크 문자와 함께 이미지 오른쪽에 결과가 표시됩니다.

저는 Ubuntu 18.04 아카이브의 chemfig 1.2e를 사용하고 있습니다. 이는 최신 버전의 패키지에 도입된 새로운 기능이 없다는 의미입니다.

감사해요 !

편집 : 화학 결합이 더 짧아지면 보너스 포인트도 있습니다 :)

\documentclass{article}
\usepackage{mwe}
\usepackage{chemfig}

\begin{document}

% Define a function to draw polymer structures
\newcommand\setpolymerdelim[2]{\def\delimleft{#1}\def\delimright{#2}}
\def\makebraces[#1,#2]#3#4#5{%
    \edef\delimhalfdim{\the\dimexpr(#1+#2)/2}%
    \edef\delimvshift{\the\dimexpr(#1-#2)/2}%
    \chemmove{%
        \node[at=(#4),yshift=(\delimvshift)]
        {$\left\delimleft\vrule height\delimhalfdim depth\delimhalfdim
            width0pt\right.$};%
        \node[at=(#5),yshift=(\delimvshift)]
        {$\left.\vrule height\delimhalfdim depth\delimhalfdim
            width0pt\right\delimright_{\rlap{$\scriptstyle#3$}}$};}}
\setpolymerdelim()


\chemfig{
    -[@{opa,.75}]A-[@{cla,0.25}]
    -[@{opb,.75}]B-[@{clb,0.25}]
    -[@{opc,.75}]A\ [@{clc,0.25}]
}
\makebraces[5pt,5pt]{\!\!n_{i}}{opa}{cla}
\makebraces[5pt,5pt]{\!\!n_{i+1}}{opb}{clb}
\makebraces[5pt,5pt]{\!\!n_{i+2}}{opc}{clc}

\end{document}

MWE

답변1

환영! 한 가지 방법은 다음과 같습니다. 이러한 결합의 불투명도를 0으로 설정합니다.

\documentclass{article}
\usepackage{chemfig}

\begin{document}

% Define a function to draw polymer structures
\newcommand\setpolymerdelim[2]{\def\delimleft{#1}\def\delimright{#2}}
\def\makebraces[#1,#2]#3#4#5{%
    \edef\delimhalfdim{\the\dimexpr(#1+#2)/2}%
    \edef\delimvshift{\the\dimexpr(#1-#2)/2}%
    \chemmove{%
        \node[at=(#4),yshift=(\delimvshift)]
        {$\left\delimleft\vrule height\delimhalfdim depth\delimhalfdim
            width0pt\right.$};%
        \node[at=(#5),yshift=(\delimvshift)]
        {$\left.\vrule height\delimhalfdim depth\delimhalfdim
            width0pt\right\delimright_{\rlap{$\scriptstyle#3$}}$};}}
\setpolymerdelim()


\chemfig{
    -[@{opa,.75},,,,opacity=0]A-[@{cla,0.25}]
    -[@{opb,.75}]B-[@{clb,0.25}]
    -[@{opc,.75}]A-[@{clc,0.25},,,,opacity=0]
}
\makebraces[5pt,5pt]{\!\!n_{i}}{opa}{cla}
\makebraces[5pt,5pt]{\!\!n_{i+1}}{opb}{clb}
\makebraces[5pt,5pt]{\!\!n_{i+2}}{opc}{clc}

\end{document}

여기에 이미지 설명을 입력하세요

더 좋은 방법이 있을 수도 있다는 점을 참고하세요. 그래도 이건이 채권을 없애는 방법.

관련 정보