चेम्फिग पॉलीमर में मल्टीपल ब्रैकेट्स - त्रुटियों से छुटकारा नहीं पा सकते हैं
मैं chemfig
अधिकार का उपयोग करके पॉलिमराइजेशन प्रक्रिया दिखाते हुए एक रिसाव प्राप्त करने के लिए संघर्ष कर रहा हूं ।
यह वह कोड है जिसका मैं उपयोग कर रहा हूं:
\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
@ {लेफ्ट, 0.5} to
@ {लेफ्ट, 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}