Beamer プレゼンテーションで、フレームなしで、左 (ライト グレー) から右 (ダーク グレー) へのグラデーションとテキストで塗りつぶされたボックスを作成したいと考えています。また、ボックスが紙の端 (上、左、右) に触れるようにしたいので、余白なしでスライドに配置します。tcolorboxes でこれを行うことは可能ですか?
答え1
編集後、私はまだ何をやっているのか全く分かりませんが、何とか に物事を入れることができましたbeamer
。 の物理的な寸法、特に の 4.2 インチ\makebox
と幅の 4.65 インチ\tcbox
は、余白幅などに対応する変数名が分からないため、物理的な寸法で示されています。beamer
そのため、テンプレートによっては変更が必要になる場合がありますbeamer
。
\documentclass{beamer}
\usepackage{tcolorbox,lipsum}
\tcbuselibrary{skins}
\begin{document}
\begin{frame}
\raisebox{4cm}{\makebox[4.2in]{
\tcbox[enhanced, boxrule=0pt, arc=0pt, width=4.65in, top=.2in,bottom=.3in,
interior style={left color=gray!05,right color=gray!50}]
{\begin{minipage}{4.65in}
\lipsum[1]
\end{minipage}
}}}
\end{frame}
\end{document}
私は次の 3 つの回答から一部を採用しました。
tcolorbox で 2 つ以上の派手なグラデーション ストライプを作成するにはどうすればよいでしょうか?
そして
答え2
これは Steven B. Segletes の回答のバリエーションです。gradientbox
オプションのパラメータを取る新しい環境を作成しましたtcolorbox
。スタイル ファイルの寸法設定を使用しようとしましたbeamer
。それでも、上部のスペースのカーニングは固定されており2mm
、ビーマー実装では妥当な時間内に見つけることができませんでした。
[t]
ボックスをスライドの一番上に表示するには、フレームをオプションとともに使用し、タイトルなしで使用する必要があります。
\documentclass{beamer}
\usepackage{tcolorbox,lipsum}
\tcbuselibrary{skins}
\makeatletter%
\newtcolorbox{gradientbox}[1][]{%
enhanced,boxrule=0pt,boxsep=0pt,sharp corners,
before=\nointerlineskip\kern-2mm,%
width=\paperwidth,
enlarge left by=-\beamer@leftmargin-\beamer@leftsidebar,
enlarge right by=-\beamer@rightmargin-\beamer@rightsidebar,
frame hidden,interior style={left color=gray!05,right color=gray!50},
#1
}
\makeatother%
\begin{document}
\begin{frame}[t]
\begin{gradientbox}
\lipsum[1]
\end{gradientbox}
\end{frame}
\begin{frame}[t]
\begin{gradientbox}[top=8mm,bottom=8mm,left=10mm,right=10mm]
\lipsum[1]
\end{gradientbox}
\end{frame}
\end{document}