From: Nikolay Shaplov Date: Wed, 7 Jan 2026 10:30:58 +0000 (+0300) Subject: Пример презентации в формате LaTeX позаимствованный у Игоря Федорова X-Git-Url: http://gitweb.nataraj.world/?a=commitdiff_plain;h=ac11b8f02f784f5ea86e642d6c8d6b9787d3b334;p=articles.git Пример презентации в формате LaTeX позаимствованный у Игоря Федорова --- diff --git a/slides/0000 - LaTeX Stub/.gitignore b/slides/0000 - LaTeX Stub/.gitignore new file mode 100644 index 0000000..6605412 --- /dev/null +++ b/slides/0000 - LaTeX Stub/.gitignore @@ -0,0 +1,10 @@ +# LaTeX +*\~ +*.swp +*.log +*.aux +*.out +*.snm +*.nav +*.toc +*.vrb diff --git a/slides/0000 - LaTeX Stub/README.md b/slides/0000 - LaTeX Stub/README.md new file mode 100644 index 0000000..0f5bc10 --- /dev/null +++ b/slides/0000 - LaTeX Stub/README.md @@ -0,0 +1,8 @@ +# Шаблон презентаций для Beamer + +При подготовке шаблона использованы: +* [Шаблон презентации PostgresPro для Openoffice](https://confluence.postgrespro.ru/download/attachments/169509420/_PostgresPro_ШАБЛОН.odp?version=1&modificationDate=1675418955114&api=v2) +* Шрифт [Gilroy](https://oc.postgrespro.ru/index.php/s/oXFIYT9dLwLCle6) +* Тема [gcr2019](https://github.com/schors/gcr2019theme) для Beamer + +Для сборки запустите команду: `xelatex example.tex` diff --git a/slides/0000 - LaTeX Stub/beamercolorthemePgPro.sty b/slides/0000 - LaTeX Stub/beamercolorthemePgPro.sty new file mode 100644 index 0000000..a0bb186 --- /dev/null +++ b/slides/0000 - LaTeX Stub/beamercolorthemePgPro.sty @@ -0,0 +1,21 @@ +\mode + +% Settings +\AtBeginDocument{\setromanfont{Times New Roman}} +\AtBeginDocument{\setsansfont{Gilroy}} +\AtBeginDocument{\setmonofont{Consolas}} +\setbeamercolor*{title page header}{fg=white} +\setbeamerfont*{title}{size*={32pt}{1},family=\sffamily} +\setbeamercolor*{author}{fg=white} +\setbeamerfont*{author}{size*={18pt}{1},family=\sffamily} +\setbeamercolor*{frametitle}{fg=cyan} +\setbeamerfont*{frametitle}{size*={22pt}{1},family=\sffamily,series=\bfseries} +%\definecolor{text}{HTML}{595959} +\definecolor{text}{HTML}{000000} +\setbeamercolor{normal text}{fg=text} +\setbeamerfont{normal text}{size*={12pt}{18},family=\sffamily} +\AtBeginDocument{\usebeamerfont{normal text}} +\setbeamertemplate{itemize items}{\textbullet}% отключает кошмарные синие треугольники +\setbeamercolor{itemize/enumerate body}{fg=text} +\mode + diff --git a/slides/0000 - LaTeX Stub/beamerinnerthemePgPro.sty b/slides/0000 - LaTeX Stub/beamerinnerthemePgPro.sty new file mode 100644 index 0000000..c39a509 --- /dev/null +++ b/slides/0000 - LaTeX Stub/beamerinnerthemePgPro.sty @@ -0,0 +1,30 @@ +\mode + +\setbeamertemplate{background}{ + \begin{tikzpicture} + \ifnum\thepage=1\relax% + \node[anchor=south west,inner sep=0] at (0,0) {\includegraphics[width=\the\paperwidth, height=\the\paperheight]{bgpics/pgpro_title_bg.png}}; + \fi + \ifnum\thepage>1\relax% + \node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\the\paperwidth, height=\the\paperheight]{bgpics/pgpro_page_bg.png}}; + \node[anchor=east] at(\textwidth+1cm,0.5cm) {\color{text}\tiny\insertframenumber}; + \fi + \end{tikzpicture} +} + +% Title page +\defbeamertemplate*{title page}{gcr2019}[1][] +{ + \vskip3cm% + \begin{beamercolorbox}[leftskip=0.7cm,left,#1]{title page header} + \usebeamerfont{title}\inserttitle\par% + \end{beamercolorbox}% + \vskip0.75cm% + \begin{beamercolorbox}[leftskip=0.7cm,left,#1]{author} + \usebeamerfont{author}\insertauthor% + \end{beamercolorbox} + \vspace{9cm} +} + +\mode + diff --git a/slides/0000 - LaTeX Stub/beamerouterthemePgPro.sty b/slides/0000 - LaTeX Stub/beamerouterthemePgPro.sty new file mode 100644 index 0000000..a03dd07 --- /dev/null +++ b/slides/0000 - LaTeX Stub/beamerouterthemePgPro.sty @@ -0,0 +1,13 @@ +\mode + +% Frame title +\defbeamertemplate*{frametitle}{gcr2019}[1][] +{ + \vskip1cm + \begin{beamercolorbox}[wd=\paperwidth,leftskip=0.7cm]{frametitle} + \usebeamerfont{frametitle}% + \insertframetitle + \end{beamercolorbox} +} + +\mode \ No newline at end of file diff --git a/slides/0000 - LaTeX Stub/beamerthemePgPro.sty b/slides/0000 - LaTeX Stub/beamerthemePgPro.sty new file mode 100644 index 0000000..3af4da9 --- /dev/null +++ b/slides/0000 - LaTeX Stub/beamerthemePgPro.sty @@ -0,0 +1,19 @@ +% Based on gcr2019 theme (https://github.com/schors/gcr2019theme) +% Used backghround pictures from template https://confluence.postgrespro.ru/download/attachments/169509420/_PostgresPro_ШАБЛОН.odp?version=1&modificationDate=1675418955114&api=v2 +% and Gilroy font from https://oc.postgrespro.ru/index.php/s/oXFIYT9dLwLCle6 +\mode + +% Requirement +\RequirePackage{tikz} + +% Settings +\useinnertheme{PgPro} +\useoutertheme{PgPro} +\usecolortheme{PgPro} + +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{blocks}[rounded][shadow=true] +\setbeamertemplate{footline}{\vspace{1cm}} +\setbeamersize{text margin left=0.7cm,text margin right=0.7cm} + +\mode diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro.png b/slides/0000 - LaTeX Stub/bgpics/pgpro.png new file mode 100644 index 0000000..7c459a8 Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro.png differ diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg.png b/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg.png new file mode 100644 index 0000000..af85d09 Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg.png differ diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg2.png b/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg2.png new file mode 100644 index 0000000..f62056c Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro_page_bg2.png differ diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro_thanks_bg.png b/slides/0000 - LaTeX Stub/bgpics/pgpro_thanks_bg.png new file mode 100644 index 0000000..92f3cc7 Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro_thanks_bg.png differ diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg.png b/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg.png new file mode 100644 index 0000000..3de8436 Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg.png differ diff --git a/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg2.png b/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg2.png new file mode 100644 index 0000000..969dbca Binary files /dev/null and b/slides/0000 - LaTeX Stub/bgpics/pgpro_title_bg2.png differ diff --git a/slides/0000 - LaTeX Stub/code.tex b/slides/0000 - LaTeX Stub/code.tex new file mode 100644 index 0000000..9c504c3 --- /dev/null +++ b/slides/0000 - LaTeX Stub/code.tex @@ -0,0 +1,45 @@ +\usepackage{listings} + +% for listings +\definecolor{acmebg}{HTML}{FFFFEF} +\definecolor{acmeh}{HTML}{EFFFFF} +\definecolor{acmec}{HTML}{8C8ACE} +\definecolor{acmel}{HTML}{52AAAD} +\definecolor{acmel1}{HTML}{EFEF9C} +\definecolor{acmel2}{HTML}{9CEFEF} +\lstset{ + columns=flexible, + keepspaces=true, + showstringspaces=false, + showtabs=false, + tabsize=4, + frame=single, + basicstyle=\fontsize{10pt}{12}\bf\ttfamily\color{black}, + backgroundcolor=\color{acmebg}, + commentstyle=\color{black}, + keywordstyle=\color{black}, + stringstyle=\color{red}, + rulecolor=\color{acmel}, + framerule=1pt +} + +% for listings background +\makeatletter +\let\old@lstKV@SwitchCases\lstKV@SwitchCases +\def\lstKV@SwitchCases#1#2#3{} +\makeatother +\usepackage{lstlinebgrd} +\makeatletter +\let\lstKV@SwitchCases\old@lstKV@SwitchCases + +\lst@Key{numbers}{none}{% + \def\lst@PlaceNumber{\lst@linebgrd}% + \lstKV@SwitchCases{#1}% + {none:\\% + left:\def\lst@PlaceNumber{\llap{\normalfont + \lst@numberstyle{\thelstnumber}\kern\lst@numbersep}\lst@linebgrd}\\% + right:\def\lst@PlaceNumber{\rlap{\normalfont + \kern\linewidth \kern\lst@numbersep + \lst@numberstyle{\thelstnumber}}\lst@linebgrd}% + }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}} +\makeatother \ No newline at end of file diff --git a/slides/0000 - LaTeX Stub/diag.tex b/slides/0000 - LaTeX Stub/diag.tex new file mode 100644 index 0000000..1f49bdb --- /dev/null +++ b/slides/0000 - LaTeX Stub/diag.tex @@ -0,0 +1,49 @@ +% библиотеки +\usetikzlibrary{% + arrows, % стрелки + shapes.misc, % фигуры + shapes.geometric, % фигура ellipse + chains, % цепочки + positioning, % позиционирование элементов + scopes, % создание дополнительных веток + shadows % тени +} +% указание цветов +\definecolor{Gray}{RGB}{102,102,102} +\definecolor{LightGray}{RGB}{178,178,178} +\definecolor{Red}{RGB}{204,0,0} +\definecolor{Pink}{RGB}{255,102,102} + +% установки для элементов +\tikzset{ + every node/.style={on chain}, + every join/.style={->}, % со стрелками + Rectangle/.style={ + rectangle, % обычный прямоугольник + % размер блока + minimum size=6mm, + very thick, % двойная линия + draw=Gray, % указываем заданный ранее цвет + % цвета узлов + top color=white, + bottom color=LightGray, + % шрифт моноширинный + font=\ttfamily + }, + Rounded/.style={ + rounded rectangle, % прямоугольник со скруглёнными углами + drop shadow={opacity=0.35}, % тень от узлов + minimum size=6mm, % размер узла + very thick, % двойная линия + draw=black!50, % цвет обводки + top color=white,bottom color=black!20, % цвета градиента + font=\itshape}, % шрифт курсив +Ellipse/.style={ + ellipse, % прямоугольник со скруглёнными углами + drop shadow={opacity=0.35}, % тень от узлов + minimum size=6mm, % размер узла + very thick, % двойная линия + draw=black!50, % цвет обводки + top color=white,bottom color=black!20, % цвета градиента + font=\itshape}, % шрифт курсив +} \ No newline at end of file diff --git a/slides/0000 - LaTeX Stub/example.pdf b/slides/0000 - LaTeX Stub/example.pdf new file mode 100644 index 0000000..a98858e Binary files /dev/null and b/slides/0000 - LaTeX Stub/example.pdf differ diff --git a/slides/0000 - LaTeX Stub/example.tex b/slides/0000 - LaTeX Stub/example.tex new file mode 100644 index 0000000..7065234 --- /dev/null +++ b/slides/0000 - LaTeX Stub/example.tex @@ -0,0 +1,102 @@ +\documentclass[aspectratio=169]{beamer} + +\usepackage{xltxtra} +\defaultfontfeatures{Ligatures=TeX,Mapping=tex-text} +\usepackage[russian]{babel} +\usepackage[utf8]{inputenc} + + % Цвета для гиперссылок + \definecolor{linkcolor}{HTML}{799B03} % цвет ссылок + \definecolor{urlcolor}{HTML}{6633FF} % цвет гиперссылок + + \hypersetup{pdfstartview=FitH, linkcolor=linkcolor,urlcolor=urlcolor, colorlinks=true} + +\title{Название презентации} +\author{Автор} + +\usetheme{PgPro} +\input{code.tex} + +\begin{document} + +\begin{frame} +\titlepage +\end{frame} + +\begin{frame}{Первый слайд} + Какой-то список + \begin{itemize} + \item Элемент 1 + \item Элемент 2 + \item Элемент 3 + \item Элемент 4 + \end{itemize} +\end{frame} + +\begin{frame}{Схемка} + \input{diag.tex} + \resizebox{\textwidth}{!}{ + \begin{tikzpicture}[start chain, node distance=15mm and 12mm] % начало цепочки + \node (client)[Ellipse, bottom color=cyan]{Клиент}; + \node (element1)[Rectangle, right= of client]{Элемент 1}; + \node (element2)[Rectangle, right=of element1]{Элемент 2}; + \node (element3)[Rectangle, right=of element2]{Элемент 3}; + + \node (data)[Ellipse, below=of client]{Данные}; + \node (log1)[Rounded, below=of element1, align=center]{Текст 1\\Текст 2}; + \node (log2)[Rounded, below=of element2, align=center]{Текст 3\\Текст 4}; + \node (export)[Rounded, below=of element3, align=center]{Текст 5\\Текст 6}; + \path[->] (element1) edge (log1); + \path[->] (element2) edge (log2); + \path[->] (element3) edge (export); + + \node (pgpro)[Ellipse, below=of data, bottom color=cyan]{PostgresPro}; + \node (element4)[Rectangle, below=of log2]{Элемент 4}; + \path[->] (log1) edge (element4); + \path[->] (log2) edge (element4); + \path[->] (export) edge (element4); + \end{tikzpicture} % конец блока + } +\end{frame} + +\begin{frame}[fragile, shrink=10]{Еще слайд} + Опять список: + \begin{itemize} + \item Элемент 1 + \item Пример ссылки (\href{https://postgrespro.ru}{https://postgrespro.ru}) \\~\\ + \end{itemize} + + Пример кода: + \begin{lstlisting}[linewidth=0.9\textwidth] + pip install -r requirements.txt + \end{lstlisting} +\end{frame} + +{\setbeamertemplate{background}{ + \begin{tikzpicture} + \node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\the\paperwidth, height=\the\paperheight]{bgpics/pgpro_title_bg2.png}}; + \node[anchor=east] at(\textwidth+1cm,0.5cm) {\color{white}\tiny\insertframenumber}; + \end{tikzpicture} + } + \setbeamercolor{normal text}{fg=white}\usebeamercolor*{normal text} + \setbeamerfont{normal text}{size*={32pt}{1},family=\sffamily}\usebeamerfont*{normal text} + \begin{frame} + \vskip1cm + Демонстрация + \end{frame} + \begin{frame} + \vskip1cm + Q\&A + \end{frame} +} + +{\setbeamertemplate{background}{ + \begin{tikzpicture} + \node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\the\paperwidth, height=\the\paperheight]{bgpics/pgpro_thanks_bg.png}}; + \node[anchor=east] at(\textwidth+1cm,0.5cm) {\color{white}\tiny\insertframenumber}; + \end{tikzpicture} + } + \begin{frame} + \end{frame} +} +\end{document}