v01
This commit is contained in:
93
python/basalt/latex/templates.py
Normal file
93
python/basalt/latex/templates.py
Normal file
@@ -0,0 +1,93 @@
|
||||
#
|
||||
# BSD 3-Clause License
|
||||
#
|
||||
# This file is part of the Basalt project.
|
||||
# https://gitlab.com/VladyslavUsenko/basalt.git
|
||||
#
|
||||
# Copyright (c) 2019-2021, Vladyslav Usenko and Nikolaus Demmel.
|
||||
# All rights reserved.
|
||||
#
|
||||
screenread_sty = r"""
|
||||
\ProvidesPackage{screenread}
|
||||
% Copyright (C) 2012 John Collins, collins@phys.psu.edu
|
||||
% License: LPPL 1.2
|
||||
|
||||
% Note: To avoid compatibility issues between geometry and at least one
|
||||
% class file, it may be better to set all the dimensions by hand.
|
||||
|
||||
% 20 Nov 2014 - use `pageBreakSection` instead of clobbering `section`
|
||||
% - increase longest page size to 575cm
|
||||
% - make top, right, and left margins something sensible and
|
||||
% a bit more aesthetically pleasing
|
||||
% 24 Jan 2012 Argument to \SetScreen is screen width
|
||||
% 23 Jan 2012 Remove package showlayout
|
||||
% 22 Jan 2012 Initial version, based on ideas in
|
||||
% B. Veytsman amd M. Ware, Tugboat 32 (2011) 261.
|
||||
|
||||
\RequirePackage{everyshi}
|
||||
\RequirePackage{geometry}
|
||||
|
||||
%=======================
|
||||
|
||||
\pagestyle{empty}
|
||||
|
||||
\EveryShipout{%
|
||||
\pdfpageheight=\pagetotal
|
||||
\advance\pdfpageheight by 2in
|
||||
\advance\pdfpageheight by \topmargin
|
||||
\advance\pdfpageheight by \textheight % This and next allow for footnotes
|
||||
\advance\pdfpageheight by -\pagegoal
|
||||
}
|
||||
|
||||
\AtEndDocument{\pagebreak}
|
||||
|
||||
\def\pageBreakSection{\pagebreak\section}
|
||||
|
||||
\newlength\screenwidth
|
||||
\newlength{\savedscreenwidth}
|
||||
|
||||
\newcommand\SetScreen[1]{%
|
||||
% Argument #1 is the screen width.
|
||||
% Set appropriate layout parameters, with only a little white space
|
||||
% around the text.
|
||||
\setlength\screenwidth{#1}%
|
||||
\setlength\savedscreenwidth{#1}%
|
||||
\setlength\textwidth{#1}%
|
||||
\addtolength\textwidth{-2cm}%
|
||||
\geometry{layoutwidth=\screenwidth,
|
||||
paperwidth=\screenwidth,
|
||||
textwidth=\textwidth,
|
||||
layoutheight=575cm,
|
||||
paperheight=575cm,
|
||||
textheight=575cm,
|
||||
top=1cm,
|
||||
left=1cm,
|
||||
right=1cm,
|
||||
hcentering=true
|
||||
}%
|
||||
}
|
||||
|
||||
\newcommand\SetPageScreenWidth[1]{%
|
||||
\setlength\savedscreenwidth{\screenwidth}%
|
||||
\setlength\screenwidth{#1}%
|
||||
\pdfpagewidth\screenwidth%
|
||||
\setlength\textwidth{\screenwidth}%
|
||||
\addtolength\textwidth{-2cm}%
|
||||
}
|
||||
|
||||
\newcommand\RestorePageScreenWidth{%
|
||||
\setlength\screenwidth{\savedscreenwidth}%
|
||||
\pdfpagewidth\screenwidth%
|
||||
\setlength\textwidth{\screenwidth}%
|
||||
\addtolength\textwidth{-2cm}%
|
||||
}
|
||||
|
||||
|
||||
% Compute a reasonable default screen width, and set it
|
||||
\setlength\screenwidth{\textwidth}
|
||||
\addtolength\screenwidth{1cm}
|
||||
\SetScreen{\screenwidth}
|
||||
|
||||
\endinput
|
||||
|
||||
"""
|
||||
Reference in New Issue
Block a user