Skip to content

Instantly share code, notes, and snippets.

@zr-tex8r
Created January 2, 2014 16:41
Show Gist options
  • Save zr-tex8r/8222041 to your computer and use it in GitHub Desktop.
Save zr-tex8r/8222041 to your computer and use it in GitHub Desktop.
LaTeX: 行取りマクロをテストする文書
\documentclass[a4paper]{jsarticle}
\usepackage[papersize={100mm,60mm},margin=10mm]{geometry}
%\usepackage{some-package}
\makeatletter %!!!!!!!!!!!!!!!!!!!!!!!!!
% code from http://qiita.com/_yyu_/items/b497320b78301eba79f3
\def\linespace{%
\@ifnextchar[\@linespace\@linespace@auto}
\newcount\c@linespace
\long\def\@linespace@auto#1{%
\c@linespace = 1%
\setbox\@tempboxa\vbox{#1}
\setlength\@tempdima{\ht\@tempboxa}
\addtolength\@tempdima{\dp\@tempboxa}
\def\@rec{%
\setlength\@tempdimb\Cvs%
\multiply\@tempdimb\c@linespace%
\ifdim \@tempdimb>\@tempdima%
\def\@k{\@linespace[\c@linespace]{\box\@tempboxa}}
\else
\advance\c@linespace1%
\def\@k{\@rec}
\fi
\@k}
\@rec%
}
\long\def\@linespace[#1]#2{%
\par\noindent%
\setlength\@tempdima\Cvs%
\multiply\@tempdima#1%
\advance\@tempdima-\Cvs%
\advance\@tempdima-\Cht%
\advance\@tempdima\Cdp%
\setbox\z@\vbox{#2}%
\advance\@tempdima-\ht\z@%
\advance\@tempdima-\dp\z@%
\vtop to\z@{%
\vskip.5\@tempdima%
\box\z@\vss}
\setlength\@tempdima\Cvs%
\multiply\@tempdima#1%
\advance\@tempdima-2\Cvs%
\vspace\@tempdima%
\par\nobreak}
\makeatother %!!!!!!!!!!!!!!!!!!!!!!!!!
\newcommand{\InTwoLines}[1]{\linespace[2]{#1}}
%%%
\usepackage{ifthen}
\newcommand*{\xExpr}{$\sqrt{x(t)^2+y(t)^2}$}
\newcommand*{\testCase}[3]{%
\newpage
\ifthenelse{#1>0}{%
\ifthenelse{#1=1}{%
ページの途中にある場合。
\ifthenelse{\equal{#2}{Y}}{\xExpr}{Excel}はアレ。\par
}{}%
\InTwoLines{{\LARGE Excel はアレ}}\par
\ifthenelse{#1=2}{%
ページの先頭にある場合。
\ifthenelse{\equal{#3}{Y}}{\xExpr}{Excel}はアレ。\par
}{}%
\ifthenelse{\equal{#3}{Y}}{\xExpr}{Excel}はアレ。\par
}{%
比較の規準として、行どりの無い場合。\par
\ifthenelse{\equal{#3}{Y}}{\xExpr}{Excel}はアレ。\par
\ifthenelse{\equal{#3}{Y}}{\xExpr}{Excel}はアレ。\par
\ifthenelse{\equal{#3}{Y}}{\xExpr}{Excel}はアレ。\par
}%
□←この位置が変動しないことを確かめます。
}
\usepackage{yacshowd}
\begin{document}
\testCase{0}{N}{N}
\testCase{0}{N}{Y}
\testCase{1}{N}{N}
\testCase{1}{N}{Y}
\testCase{1}{Y}{N}
\testCase{1}{Y}{Y}
\testCase{2}{N}{N}
\testCase{2}{N}{Y}
\end{document}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment