また、テキストで表現できないときは、スクリーンショットを撮り、
そこに色付きで範囲を示し「この(左の)空白を削除したい」のように書き込んだものをアップされると良いと思います。
さて、私も TONE さんの意見に賛成ですが、
「enumitem」を利用されているという前提ですが、
「texdoc enumitem」で表示される「3.2 Horizontal spacing of labels」の p6-9 を参考に試行錯誤してみました。
その結果を添付しますので、参考にしてください。
- 「箱の中の文字全体が左寄り」
通常、なにもしなければ左寄せになりますが、右寄せしたいのでしょうか
私には、箱の中が通常の文章になっているので段落開始の1文字分のインデントが気になります。これが気になるのであれば、以下のように箱の最初に \noindent を入れれば解消できます。
\begin{framed} ...
それと、やや左が空き過ぎていると感じるならあまり効果は感じられませんが、 \leftskip = -.5zw を入れてみてください。入れるところは framed の中でも外でも良いです。外に挿入すると、それ以降のものに反映・影響するので、留意しておいてください。
また、framed を利用することで項番・項目名と箱の間のスペースが気になってしまいます。
- 和田案と frmaed は相性が悪い
左の空白が空き過ぎているというのであれば、相性は多少あるようですね。 以下のように framed 内で leftskip を調整すると良いかと思います。
\begin{enumerate}[ label = \fbox{\arabic*}, itemindent = \parindent, leftmargin = \parindent, ] \item あいうえお \begin{framed} かきくけこさしすせそたちつ ... \end{framed}
もし、和田案をというのであれば、うまく行かない時の .tex .log .pdf の三つのファイルを zip などで纏めたものを添付してください。
左右の幅の調整は -0.5zw だけでなく 0.1 刻みなどで微調整してください。
でもきっと「自動番号付け」の要求は出てきそうなので、enumitem ではなく、 tcolorbox云々とあったので、それを使った方法を試行錯誤してみたので参考にしてください。処理したものを添付しておきます。
\documentclass[12pt,dvipdfmx]{jsbook} \usepackage{tcolorbox} \tcbuselibrary{breakable,skins,listingsutf8} %幾つかは不要かもしれないが \newtcolorbox[auto counter]{mybox}[1]{ enhanced, attach boxed title to top left, title=\fbox{\thetcbcounter}~ #1, % 背景色があるので fbox は不要 } \begin{document} \begin{mybox}{こんな風にしたかったのかな} texdoc tcolorbox でマニュアル見ながら試行錯誤してみた \end{mybox} \begin{mybox}{TODO} \begin{itemize} \item タイトルを背景色で強調しているので fbox は不要かもしれない \item これでも、ボック内の左右の空白を埋めたいかもしれない \item 右マージンを詰めたいのかもしれない \item 一頁に収まらないケースはまだ未検証 \end{itemize} \end{mybox} \begin{mybox}{あいうえ} かきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん かきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん \end{mybox} \end{document}
ちょっとお節介かもしれないけど ... 少々気になったので ...
>左右の幅の調整は -0.5zw だけでなく 0.1 刻みなどで微調整
-0.25zw だといい感じのようですが ... もうちょっと調べてみました。
framed の元になったと思われる fbox もそうですが、フレーム枠と 本文の間、つまり上下左右≒周囲に可読性対策だと思いますが、 若干の空白を設けてあります。
この空白は、どちらも \fboxsep の値によって制御されています。
「texdoc framed 」で表示されるマニュアル一ページ目に、 \fboxsep=\FrameSep としてるとのこと。
なので、\FrameSep の値を変えることで、左右の空白を調整することができますが、上下の枠線との間も同様に変化します。
ちなみに規定の \fboxsep は 3.0pt で \FrameSep は 9.0pt です。
0pt では枠線が文字とくっついてしまい見辛いので、 私がギリギリおすすめは以下のように \fboxsep を \FrameSep に前もって代入しておくことです。
\leftline{\fbox{1}あいうえお} \begin{framed} ... \end{framed}
framed の代わりに fbox + minipage 環境の方法も検討してありますので、ご興味があれば、例示しますが ...
- 利点1 ... 行幅一杯利用も可能(この場合二文字多く表示)
- 利点2 ... framed の開始部分の空行が抑制できる
> zwの値は1や2変えても全く変化がないのですが。。。
うまく行かなかっったら、pdf だけでなく、拡張子 .tex と .log の も添付してください。
.log のファイルが必要なのは、こちらで読み込んだスタイルファイルと同じか確認するためです。
> framedってこのボックスのこと?
そうだと思いますが、あいさんがどのような方法でやっているか、 少なくともソースの .tex ファイルだけでも添付してください。
> FrameSepの値の設定
前回赤字で \setlength{\FrameSep}{\fboxsep} と書いたのですが ... texdoc framed でマニュアルを見ると「\setelength」を使うとのことでしたし。
結果のPDFファイルを添付します。
お示しのソースファイルの書き方では
\itemize をどこまで有効にさせたいのかが判然としなかったのですが、
こちらで試してみた次の例のように、
framed の枠線で囲まれたものが \item の項目内にあるという理解で良いですか?
## なお、\itemize と直接 \itemize マクロを起動するのではなく、
## \begin{itemize}...\end{itemize}のように
## 環境として扱うのがLaTeXの流儀だと思います。
## \itemize という書き方を推奨している解説サイトかなにかがありましたか?
\begin{document}
\begin{itemize}
\item あいうえお
\item かきくけこ\\
\leftline{\fbox{1} さしすせそ}
\begin{framed}
かきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん
\end{framed}
\item アイウエヲ
\end{itemize}
itemize環境の外
\begin{framed}
かきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん
\end{framed}
\end{document}
で、itemize環境で \itemの項目内に置いたものと、
itemaize環境から出して地の文に置いたものとを見比べてみると、
\item 内にあるときに文章が右寄りになるというよりも、
\item 内にあるときでも枠線の位置は字下げされずに
左のほうに残ってしまうという現象かなと思いました。
\item の中に置いたときでも、\item から外に出して地の文として配置した場合と
枠線自体の位置は同じなのですね。
枠線の位置がこんなに左に残されてしまうと、
読者には \item の項目内のものだと認識できなさそうです。
さて、それでこれをどのようになさりたいのでしょうか?
これまでの書き込みを読んでみた限りでは、
\item の項目内にある場合でも枠線の位置はこのままにして中の文章だけを枠線の近くまで左に伸ばしたい
という希望のように読めるのですが、
中の文章の位置は今のまま変えずに枠線の位置をもっと右に移動して
中の文章に近づける方がよさそうにも思います。
とにかく、何をどうしたいのかをもう少し詳しくお願いいたします。
激しく同意します.
framed,styのframed環境は
list系環境との共存は考えてない節がありますよね.
framed.styの中の
snugshade環境なんかはlist系環境との共存を
考慮してるように見えるコードになってますので,
framed環境(もしくはoframed環境)と
snugshade環境を組み合わせてみれば
いいのかもしれません.
snugshade環境のの定義の中の\colorbox{shadecolor}{##1}をばっさりと
\fbox{##1}に変えると,framed環境のlist系環境対応版みたいな感じになります.
同様のoframed環境の枠の定義を
snugshade環境に移植すると
似たようなものができるのではないかと思います.
ちなみに,私ならtcolorboxか,
boites(eclbkbox)をカスタマイズして使います
%--------
framed.styって,枠で囲むための仕組みと
そのサンプルを提供しているという感じのコードなので,
これをベースにいろいろ自前で頑張れということなのかもしませんね.
実際,framed環境そのものはその仕組みの下で
シンプルなものになってます.
framed.styの中のコメントを見ると
そういうふうに思えます.
>>>>>
% This is still a `pre-production' version because I can think of many
% features/improvements that should be made. Also, a detailed manual needs
% to be written. Nevertheless, starting with version 0.5 it should be bug-free.
%
% ToDo:
% Test more varieties of list
% Improve and correct documentation
% Propagation of \marks
% Handle footnotes (how??) floats (?) and marginpars.
% Stretchability modification.
% Make inner contents height/depth influence placement.
>>>>
footnotes (how??)って。。。
golden-luckyさんの論考
https://golden-lucky.hatenablog.com/entry/2019/12/24/002646
を拝見する限り
無茶なんじゃないかと思ったりもします.