tcolorboxに関して

tcolorboxに関して

- A S の投稿
返信数: 9
tcolorboxについて勉強しています。
大変愚問かとは思いますが、下のURLのサイトにはtcolorboxで作られたBOXの画像が複数添付されていまして、その一番最後の1つ(「例題&問題」)のBOXが生成されるソースコードを \documentclass から \end{document} まで書いてくれますでしょうか?
サイト主の方がソースコードを書いてくださっているのですが、「例題」の「番号」の定義がわかりかねます。

(注)問題文や解答の部分は画像の通りでなく「問題文」や「解答部分」などと記してくださると助かります。



https://marukunalufd0123.hatenablog.com/entry/2019/03/15/071717
A S への返信

Re: tcolorboxに関して

- m c の投稿
当該ブログではコメントをつけることができますので,直接ご本人にお尋ねになるのが一番確実かと思いますが.
m c への返信

Re: tcolorboxに関して

- A S の投稿
ご回答ありがとうございます。
当該ブログは昨年の夏以来更新されていなかったので、こちらで質問させていただきました。
A S への返信

Re: tcolorboxに関して

- 和田 勇 の投稿
示されたページだけではストレートに解は得られない様ですね。

いくつか対応方法のポイントです。

1)今回のは skins のオプションが必要のようですので

   \usepackage[skins]{tcolorbox}

2)section カウンタを参照して居るので \section{....} というようなものが必要です。

  また問題番号や例題番号のためのカウンターの宣言が必要です。
  さらに上記二つの番号用カウンターと section との関係も必要です。
  ドキュメント全体での通し番号なら何もすることはないのですが、 sectionと親子関係を持たせるなら section 毎にリセットしてあげる必要があります。

3)nigoriao aoao の色定義が明確でなかったので適当なものを使いました。

4)ちょっとバグっぽい所あったのでちょっと修正

5)示されたマクロ(?)の使い方は、 texdoc tcolorbox を参考にすると基本は以下のように記述するようです。

\begin{mondai}
問題
\end{mondai}

以上を修正したもので添付しますので参考にしてください。
なお問題や例題の中身の記述は省略しています。
和田 勇 への返信

Re: tcolorboxに関して

- A S の投稿
和田勇様
お忙しい中稚拙な質問に付き合ってくださり大変恐縮です。
TeX自体の知識が曖昧であるため、修正点をわかりやすく説明してくださり助かりました。
本当にありがとうございました。
また機会があればよろしくお願いします。
A S への返信

Re: tcolorboxに関して

- A S の投稿
度々の質問で恐縮です。
もしご覧になられていたら、こちらの方も見ていただけると幸いです。

当該URLの最後から二番目の方も試みましたがうまくいきませんでした。

添付ファイルにソースコードを置きましたが、どこが誤りかわかりますでしょうか…?
A S への返信

Re: tcolorboxに関して

- 和田 勇 の投稿
以下のようなメッセージでていませんか?

   ! Undefined control sequence.
   \ba
   {\thereidaibangou }


上記は「{\thereidaibangou }」の前あたりに「 \ba 」っていう定義使っているけど、なんですか」と言っているのでそこを探して直します。




で、想像して見ました。きっと枠とかを描きたいのかな?

というので \ba --> \framebox にして見ました。

やって見た所黒塗りの海苔弁が表示。
そこを見ると black だからなので black!25 で描こうとしていらっしゃる文字を見えるようにして見ました。

# 直に貼り付けるとインデントが潰れてしまいそうなので添付ファイルにしました。


お節介なアドバイス
複雑な指定をぐしゃっとかくと何を書いているか分からなくなります。
できるだけ意味のあるブロックになるよう適宜改行とインデントするとデバッグしやすくなります。場合によっては妙な空白が入り込む時がありますが、しばらくはそういうことがあることだけ覚えて、出来るだけわかりやすく記述すると良いと思います。デバッグするのは半年後のあなたになるケースが多いからね。

そのほか、細いぶつぶつを添付ファイルに記述しておきました。
和田 勇 への返信

Re: tcolorboxに関して

- A S の投稿
お忙しい中丁寧に回答してくださり大変感謝いたします。確かに所望のPDFが得られました。

知識が軽薄なあまりお手を煩わせまして申し訳ありません。

これからしっかり勉強したいと思います。

A S への返信

Re: tcolorboxに関して

- ut の投稿

# 和田さんのご回答への 「後出しじゃんけん」 ばかりですいません…。

こういうことを言うと、「知りたいのは回答であってお説教じゃない!」 とウザがられるんじゃないかなと思って、ちょっと回答を躊躇していました。

最初のご質問は結局、カウンタの定義の仕方をご存知なかったということで、また、次のご質問は、\ba が未定義というエラーに対する対処法がお分かりにならなかったということで、どちらも tcolorbox そのものに由来する問題ではありませんでした。

また、一つ目のご質問についても、参照されてらっしゃるサイト主の方は tcolorbox のコードとしてはひとまず問題ないコードを公開されていて、その上で、

> toibangouとreidaibangouは自分で定義してます。また,色のaoaoも自分で定義しています。
> ちょっと暗めの青をつくったかんじだよ!

とおっしゃっているので、これは 「カウンタは各自で適宜宣言して、あと、色の手当ても適当にしといてくださいね」 という意味です。

二つ目のご質問についても、log のエラーと、コードの該当箇所を見れば、とりあえず、

   \newcommand{\ba}[1]{#1}

とでもしておけばコンパイル自体は通るだろうな、ということが推測できます。

いろいろとご事情もおありなのかも知れませんけれど、いきなり tcolorbox のような複雑なものに挑戦するのではなくて、基本から順番に進んでいくのが結局近道なような気がします (エラそうにすいません…)。

私が手元で試してみた回答も一応載せておきます:

% ------------------------------------------------------------
\documentclass[dvipdfmx]{jsarticle}

\PassOptionsToPackage{dvipsnames}{xcolor}
\usepackage[skins]{tcolorbox}

\colorlet{aoao}{MidnightBlue}
\colorlet{skyblue}{SkyBlue}

%\newcommand{\ba}[1]{#1}
\newcommand{\ba}[1]{{\large\usefont{T1}{ugq}{m}{n} #1}}

%\newcounter{reidaibangou}[section]
\newcounter{reidaibangou}

% ----- https://marukunalufd0123.hatenablog.com/entry/2019/03/15/071717 -----
% tcolorboxのお誘い - ぱるちのものおき ver 2.0
% 2019-03-15
\newtcolorbox{reidai}[1][]{enhanced,
left=36pt,right=4pt,bottom=0pt,
arc=0mm,
before upper={
\addtocounter{reidaibangou}{1}\hspace{-3.3zw}\colorbox{blue!10!white}{\bfseries\textcolor{blue!50!black}{例題\raisebox{-1pt}{\ba{\thereidaibangou}}}}\hspace{1zh}
},
before lower={\hspace{-3zw}\colorbox{skyblue!30!white}{\textgt{解}}\hspace{2zw}\hspace{-2pt}},
colframe=aoao,
boxrule=1pt,
#1
}
% ----- https://marukunalufd0123.hatenablog.com/entry/2019/03/15/071717 -----

\renewcommand{\kanjifamilydefault}{\gtdefault}


\begin{document}

\begin{reidai}
一般項が
\tcblower
$a_1=1^2-2=1-2=-1$
\end{reidai}

\begin{reidai}
次の数列
\tcblower
(1)
\end{reidai}

\begin{reidai}
次の等差数列
\tcblower
(1)
\end{reidai}

\begin{reidai}
初項が
\tcblower
この等差数列
\end{reidai}

% ----- https://marukunalufd0123.hatenablog.com/entry/2019/03/09/084425 -----
% 演習用のpdf作成を目指して - ぱるちのものおき ver 2.0
% 2019-03-09
% EnsyuZikken0308.pdf
% ----- https://marukunalufd0123.hatenablog.com/entry/2019/03/09/084425 -----

\end{document}
% ------------------------------------------------------------
ut への返信

Re: tcolorboxに関して

- A S の投稿
ut様。ご回答ありがとうございます。

あなた様のおっしゃる通りで、浅はかな知識のまま不毛な質問をして申し訳ございません。

有益な質問ができるよう、しっかり勉強いたします。