
Поэтому я просто пытаюсь освоиться с созданием постера с помощью beamer
. Я хотел бы иметь возможность настраивать несколько различных сред типа блока, но не уверен, как лучше всего это сделать. Кроме того, меня смущают возможные конфликты между различными пакетами и темами. До сих пор я изучал два подхода: (1) изменение s block
, alert block
s и example block
s внутри beamer
и (2) определение новых сред типа блока с помощью \newenvironment
.
Я потерпел неудачу ни с тем, ни с другим, и у меня есть некоторые вопросы по обоим. В любом случае базовый код, который я использую, это:
\documentclass[final]{beamer}
\usepackage[scale=0.90]{beamerposter} %scale is for fontsize?
\usepackage[absolute,overlay]{textpos}
\usepackage{color}
\usepackage{tikz}
\usepackage{amsmath,amssymb,latexsym}
\setlength{\TPHorizModule}{\paperwidth}
\setlength{\TPVertModule}{1 cm}
\usetheme{confposter}
\title{Title}
\author{Some People}
\institute{Department of Blah}
\begin{document}
\begin{textblock}{0.3}(.01,10)
\begin{exampleblock}{An exampleblock environment}
Some text.
\end{exampleblock}
\begin{block}{A block environment}
Some text.
\end{block}
\begin{alertblock}{An alertblock environment}
Some text.
\end{alertblock}
\end{textblock}
\end{document}
Итак, сначала с подходом (1) я хотел бы независимо изменить и определить три типа блоков, чтобы я мог получить три различных типа текстовых полей по своему вкусу. Глядя на руководство, beamer
оказалось, что его \setbeamertemplate{block}
можно использовать, но это не может изменить блоки alert
и example
. Кроме того, я не могу найти подробное объяснение различных опций с \setbeamertemplate
командой. Я поигрался с некоторыми готовыми цветовыми темами, такими как whale
и и, orchid
и в основном я хотел бы сделать то, что они делают, сам. Есть ли способ лично повлиять на подобные изменения в документе latex? Кроме того, это \usetheme{confposter}
повлияет/конфликтует с шаблонами блоков? Я использую его только потому, что он не будет компилировать заголовок, авторов и т. д. сверху, когда я его вытащу.
Другой подход (2), с которым я экспериментировал, был \newenvironment
основан на том, что я пыталсяОпределить новую блочную среду в LaTeX beamer. Например, делая
\newenvironment<>{test1}[1][]{
\setbeamercolor{block body example}{fg=black,bg=blue}
\setbeamercolor{block title example}{fg=white,bg=red!75!black}
\setbeamertemplate{blocks}[rounded][shadow=false]
\begin{example}[]}{\end{example}
}
И затем, вызывая
\begin{test1}[blah title]
stuff
\end{test1}
Однако я не смог найти дополнительную документацию, которая действительно подробно описывала бы параметры в \newenvironment
. Например, я не мог заставить его не говорить example в заголовке и т. д. Можете ли вы указать мне направление на какую-либо документацию о \newenvironment
и соответствующих параметрах?
Итак, в целом, вы считаете, что какой-либо из этих подходов хорош? Можете ли вы предложить что-то еще или подробную документацию, которая будет иметь отношение к моей цели?
решение1
Вы можете изменить атрибуты цвета переднего плана и фона для каждого типа блока независимо, используя
%For example blocks \setbeamercolor{block title example}{fg=red,bg=orange} \setbeamercolor{block body example}{fg=cyan,bg=yellow} %For alert blocks \setbeamercolor{block title alerted}{fg=olive,bg=pink} \setbeamercolor{block body alerted}{fg=blue,bg=magenta} %For blocks \setbeamercolor{block title}{fg=white,bg=blue} \setbeamercolor{block body}{fg=white,bg=green!40!black}
Используя шаблоны шрифтов с такими же именами, при желании вы также можете управлять атрибутами шрифтов.
Пример кода:
\documentclass[final]{beamer} \usepackage[scale=0.90]{beamerposter} %scale is for fontsize? \usepackage[absolute,overlay]{textpos} \usepackage{color} \usepackage{tikz} \usepackage{amsmath,amssymb,latexsym} \setlength{\TPHorizModule}{\paperwidth} \setlength{\TPVertModule}{1 cm} %For example blocks \setbeamercolor{block title example}{fg=red,bg=orange} \setbeamercolor{block body example}{fg=cyan,bg=yellow} %For alert blocks \setbeamercolor{block title alerted}{fg=olive,bg=pink} \setbeamercolor{block body alerted}{fg=blue,bg=magenta} %For blocks \setbeamercolor{block title}{fg=white,bg=blue} \setbeamercolor{block body}{fg=white,bg=green!40!black} %\usetheme{confposter} \title{Title} \author{Some People} \institute{Department of Blah} \begin{document} \begin{textblock}{0.3}(.01,10) \begin{exampleblock}{An exampleblock environment} Some text. \end{exampleblock} \begin{block}{A block environment} Some text. \end{block} \begin{alertblock}{An alertblock environment} Some text. \end{alertblock} \end{textblock} \end{document}
Я бы посоветовал вам взглянуть на
tcolorbox
пакет со своимbeamer
скином для определения новых типов блоков; вот небольшой пример:\documentclass[final,dvipsnames]{beamer} \usepackage[scale=0.90]{beamerposter} %scale is for fontsize? \usepackage[absolute,overlay]{textpos} \usepackage{color} \usepackage{tikz} \usetikzlibrary{shadings} \usepackage{amsmath,amssymb,latexsym} \usepackage[many]{tcolorbox} %\usetheme{confposter} \newtcolorbox{myblock}[1][]{ beamer, width=\textwidth+7pt, enlarge left by=-3pt, colframe=block body.bg, bottom=0pt, top=-2pt, left=0pt, right=0pt, toptitle=-1pt, bottomtitle=-1pt, fonttitle=\normalfont, adjusted title=#1, interior titled code={ \shade[left color=Maroon!80,right color=Dandelion,middle color=Salmon] (title.south west) -- (title.south east) {[rounded corners] -- (title.north east) -- (title.north west)} -- (title.south west); } } \title{Title} \author{Some People} \institute{Department of Blah} \begin{document} \begin{frame} \begin{columns} \column{0.3\textwidth} \begin{block}{A standard block} This box ia a box provided by the \texttt{beamer} class. \end{block} \begin{myblock}[An example with \texttt{tcolorbox}] This box looks like a box provided by the \texttt{beamer} class. \end{myblock} \end{columns} \end{frame} \end{document}
Результат: