URL-Farben in Überschrift/Fußzeile der Beamer-Vorlage ändern

URL-Farben in Überschrift/Fußzeile der Beamer-Vorlage ändern

Problem:

Ich muss URLs über \href{}{} in der Präsentation als blauen Text einfärben. Die Verwendung von \hypersetup{colorlinks=true,linkcolor = blue} ändert jedoch den Text im Abschnitt, den Unterabschnittstext in der Überschrift und den Titeltext in der Fußzeile. Diese Änderungen sind problematisch, da die Hintergrundfarbe der Bereiche blau ist.

Brauchen:

Ich würde mich sehr über eine bessere Modifikation für Abschnitt und Unterabschnitt hinsichtlich der Reihenfolge der ersten möglichen Lösung mit \renewcommand\insertsshorttitle oder zumindest einen Zeiger in die Richtung freuen, in die ich gehen sollte.

Ziel ist es, mit der Modifikation ein Beamer-Theme erstellen zu können.


Mögliche Korrekturen (irgendwie):

Ich habe ein paar Ideen gefunden und sie mit unterschiedlichem Erfolg umgesetzt. Eine davon ist, die automatische Farbgebung von Links zu deaktivieren. Dies hat mich dazu gebracht, \textcolor{blue}{\href{}{}} zu verwenden, was nicht ideal ist.

InBeamer: Hyperlinks und Kurztitelfarben

Es gibt einen Lösungsvorschlag mit Kurztitel:

\makeatletter
\renewcommand\insertshorttitle[1][]{%
  \beamer@setupshort{#1}%
  \let\thanks=\@gobble%
  \ifnum\c@page=1%
  \hyperlinkpresentationend{\beamer@insertshort{\usebeamercolor*[fg]{title in head/foot}\beamer@shorttitle}}%
  \else%
  \hyperlinkpresentationstart{\beamer@insertshort{\usebeamercolor*[fg]{title in head/foot}\beamer@shorttitle}}%
  \fi}
\makeatother

Ich habe es nicht geschafft, dies mit \insertsectionhead und \insertsubsectionhead zum Laufen zu bringen. Ich würde diese Alternative der Definition einer neuen Methode für \hrefs vorziehen.

Es gab noch eine weitere Idee zum Deaktivieren der Verlinkung:So entfernen Sie einen Link aus dem Titel im Fuß

Die Hauptidee bestand darin, Folgendes zu verwenden: \let\hyperlink\@secondoftwoum die Erstellung des Links zu unterdrücken.

Ich habe es mit der Überschrift markiert

\setbeamertemplate{headline}
{
  \leavevmode%
  \hbox{%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right,rightskip=1em]{section in head/foot}%
    \usebeamerfont{subsection in head/foot}\hspace*{2ex} \let\hyperlink\@secondoftwo\insertsectionhead
  \end{beamercolorbox}%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,left,leftskip=1em]{subsection in head/foot}%
    \usebeamerfont{section in head/foot} \let\hyperlink\@secondoftwo\insertsubsectionhead \hspace*{2ex}
  \end{beamercolorbox}}%
  \vskip0pt%
}

Bei diesem Ansatz wird jedoch „secondoftwo“ an die Abschnitts- und Unterabschnittszeichenfolgen angehängt.

Die letzte Option, die ich gefunden und implementiert habe, scheint das Problem zu lösen. Der einzige Nachteil ist, dass ich ein neues Paket (etoolbox) einbinden muss. Die Idee kam von:

Fehler mit MakeUppercase und Beamers insertsectionhead

\usepackage{etoolbox}
\makeatletter
\patchcmd{\beamer@section}
  {\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
  {\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{\usebeamercolor*[fg]{section in head/foot}#1}}}
  {}{}
\patchcmd{\beamer@subsection}
  {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
  {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{\usebeamercolor*[fg]{subsection in head/foot}#1}}}
  {}{}
\makeatother

MWE (visuelle Darstellung des Problems)

\documentclass{beamer}

%normal
\usepackage{color}
\usepackage{beamerthemebars}
\usepackage{lmodern}
\usetheme{AnnArbor}
\usecolortheme{wolverine}

\setbeamercolor{palette tertiary}{bg=blue,fg=white}
\setbeamercolor{palette secondary}{bg=gray,fg=white}
\setbeamercolor{palette primary}{bg=pink,fg=white}

\beamertemplatenavigationsymbolsempty %hides navigation.
\usepackage{hyperref}
\usepackage{amssymb,amsmath}

\author[Coatless]{Lack of Coat}
\institute[Uni]{Uni All}
\date[Date]{\today}
\title[Title]{Fake Presentation}
\begin{document}

\section{Section naught}
\subsection{Subsection Ya}

\hypersetup{colorlinks=true,urlcolor=blue,linkcolor = blue}
% link color causes the section, subsection, and title to fg (font color) to be blue
\frame{\titlepage}

\hypersetup{colorlinks=false,urlcolor=blue,linkcolor = white}
% link color causes the section, subsection, and title to fg (font color) to be white
\frame{\titlepage}

\end{document}

Vorschau: MWE

Antwort1

Sie können

\hypersetup{colorlinks,urlcolor=blue}
\addtobeamertemplate{headline}{\hypersetup{linkcolor=.}}{}
\addtobeamertemplate{footline}{\hypersetup{linkcolor=.}}{}

linkcolorum die aktuelle Farbe .innerhalb der Vorlagen einzustellen headlineund footline.

Bildbeschreibung hier eingeben

Code:

\documentclass[]{beamer}

\usepackage{beamerthemebars}
\usepackage{lmodern}
\usetheme{AnnArbor}
\usecolortheme{wolverine}

\setbeamercolor{palette tertiary}{bg=blue,fg=white}
\setbeamercolor{palette secondary}{bg=gray,fg=white}
\setbeamercolor{palette primary}{bg=pink,fg=white}

\beamertemplatenavigationsymbolsempty %hides navigation.

\hypersetup{colorlinks,urlcolor=blue}
\addtobeamertemplate{headline}{\hypersetup{linkcolor=.}}{}
\addtobeamertemplate{footline}{\hypersetup{linkcolor=.}}{}

\author[Coatless]{Lack of Coat}
\institute[Uni]{Uni All}
\date[Date]{\today}
\title[Title]{Fake Presentation}


\begin{document}

\section{Section naught}
\subsection{Subsection Ya}

\frame{\titlepage}

\begin{frame}{First Frame}
\href{http://tex.stackexchange.com/}{StackExchange}
\end{frame}
\end{document}

Zusätzlich gibt es noch eine kürzere Möglichkeit, wenn nur URLs eingefärbt werden sollen:

\hypersetup{colorlinks,allcolors=.,urlcolor=blue}

Antwort2

Eine ähnliche Frage istHier.

Definieren Sie ein neues Makro \newhref, in dem Sie die Textfarbe angeben oder die Standardfarbe (z. B. Blau) verwenden können.

\newcommand{\newhref}[3][blue]{\href{#2}{\textcolor{#1}{#3}}}

und benutze es wie

\newhref{https://tex.stackexchange.com/}{StackExchange} % to get the default (blue) link - 2nd line

\newhref[red]{https://tex.stackexchange.com/}{StackExchange} % to get red link - 1st line

Also in Ihrem Dokument:

\documentclass{beamer}

\usepackage{color}
\usepackage{beamerthemebars}
\usepackage{lmodern}
\usetheme{AnnArbor}
\usecolortheme{wolverine}

\setbeamercolor{palette tertiary}{bg=blue,fg=white}
\setbeamercolor{palette secondary}{bg=gray,fg=white}
\setbeamercolor{palette primary}{bg=pink,fg=white}

\beamertemplatenavigationsymbolsempty %hides navigation.
\usepackage{hyperref}
\usepackage{amssymb}
\usepackage{amsmath}

% HERE IS THE DEFINITION
\newcommand{\newhref}[3][blue]{\href{#2}{\textcolor{#1}{#3}}}

\author[Coatless]{Lack of Coat}
\institute[Uni]{Uni All}
\date[Date]{\today}
\title[Title]{Fake Presentation}

\begin{document}

\section{Section naught}
\subsection{Subsection Ya}

% HERE IS THE TEXT
\newhref[red]{https://tex.stackexchange.com/}{StackExchange}

\newhref{https://tex.stackexchange.com/}{StackExchange}

\frame{\titlepage}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen