%#!lualatex

\documentclass{ltjsarticle}
\usepackage{luatexja-fontspec,luatexja-adjust,xcolor,amsmath,amssymb}

\def\sq{%
  \hbox to 1\zw{\hss\fboxsep=-.5\fboxrule\fbox{%
  　\hskip\dimexpr-.5\zw-.2pt\vrule width.4pt height.08\zw depth.12\zw%
  \hskip\dimexpr.5\zw-.2pt\relax}\hss}}
\def\sb{\hbox to 1\zw{\hss\fboxsep=-.5\fboxrule\fbox{%
  ■\hskip\dimexpr-.5\zw-.2pt\vrule width.4pt height.08\zw depth.12\zw%
  \hskip\dimexpr.5\zw-.2pt\relax}\hss}}
\newbox\gridbox
\setbox\gridbox=\hbox to 20\zw{\sq\sq\sq\sq\sb\sq\sq\sq\sq\sb\sq\sq\sq\sq\sb\sq\sq\sq\sq\sb}
\def\outbox#1{%
  \leavevmode\hbox to 2em{\tt #1\hss}\vrule
  \textcolor{cyan!50!white}{\copy\gridbox}\hskip-20\zw\copy0\vrule\par
}

\ltjdisableadjust
\long\def\testbox#1{%
  \textcolor{red!80!black}{\ltjenableadjust[all, lineend=extended]
    \setbox0=\vbox{%
      \hsize=20\zw#1%
	}\ltjdisableadjust\outbox{ON}}\par
  \textcolor{black!90!white}{%
    \ltjdisableadjust\setbox0=\vbox{%
	  \hsize=20\zw#1%
    }\outbox{OFF}}\par\medskip
}

\usepackage[textwidth=52\zw,lines=47,centering]{geometry}
\parindent0pt
\begin{document}
\jfontspec[YokoFeatures={JFM=hang}]{ipam.ttf}

\ltjsetparameter{kanjiskip=.0\zw plus .4pt minus .5pt}
{\tt kanjiskip: \ltjgetparameter{kanjiskip}

\ltjsetparameter{xkanjiskip=.25\zw plus .25\zw minus .125\zw}
xkanjiskip: \ltjgetparameter{xkanjiskip}}

このテストでは，行末の句読点・中点類の位置調整を有効にした
\texttt{jfm-hang.lua}を用いている．
\begin{itemize}
\item 句点は，調整量に合わせて，ぶら下げ，全角取りの2種類から選択される．
\item 読点は，調整量に合わせて，ぶら下げ，二分取り，全角取りの3種類から選択される．
\item 中点類は，行末に四分空きを追加することのみ対応．
詰める際の「直前の四分空きも取る」は未実装，

\item \texttt{lineend=true}のときは，\TeX による行分割後に行末文字の位置調整が行われる．
行われる条件は，
\begin{description}
\item[最終行以外] 無限大の伸長度を持つグルーが関わっていない
\item[最終行] 無限大の伸長度を持つグルーは\verb+\parfillskip+のみで，かつ
\begin{align*}
 \min\{(\hbox{許される最小の行末文字と行末の間}),0\}
  &\leq(\hbox{\texttt{\textbackslash parfillskip}のこの行における実際の長さ})\\
  &\leq\max\{(\hbox{許される最大の行末文字と行末の間}),0\}
\end{align*}
となっている
\end{description}

\item \texttt{lineend=extended}のときは，\TeX による行分割の時点で行末位置の文字調整を考慮
      する．但し，段落の最後の文字については例外的に行わず，代わりに
上の「\texttt{lineend=true}の場合」の最終行のときと同じ補正を行う．
\end{itemize}

\testbox{%
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
%あいうえおかきくけこさしすせそたちつてと
}

\testbox{%
あいうえおかきくけこ「「さしすせそたちつて
}

\testbox{%
あうえおかきAI M M Dこさ\texttt{DO i=1,10}『
}

\testbox{%
「\texttt{\textbackslash expandafter}ユーザの集い」が開催された
}

\testbox{%
あいうえおきくけこ「」さ123456そたちつて
}

\typeout{あいうえお}


\def\pTeX{p\kern-.2em\TeX}
\testbox{%
日本で\pTeX，p\LaTeX がよく使われている。
}

中点類の空き詰めは括弧類より優先
\typeout{中点類の空き詰め}

\testbox{%
あいうえおかきくけ・こさしすせそたち「「あ
}

中点類の後ろ空き（\verb+\parfillskip+を0にしている）

\testbox{%
\parfillskip0pt日本では\pTeX，p\LaTeX が使われている。
}
\testbox{%
\parfillskip0ptあいうえおかきくけこさしすせそたちつて・
}

行末の句点
\typeout{行末の句点}

\testbox{%
あいうえおかきくけこさしすせそたちつて．
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .25\zw て．
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .5\zw て．
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .75\zw て．
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width 1\zw て．
}

行末の読点
\typeout{行末の読点}

\testbox{%
あいうえおかきくけこさしすせそたちつて，
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .25\zw て，
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .5\zw て，
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width .75\zw て，
}
\testbox{%
あいうえおかきくけこさしすせそたちつ\vrule width 1\zw て，
}

\newpage

\def\USTCON{\hbox{USTCON}}
\def\sample#1{\small\hsize=17\zw\jfontspec[YokoFeatures={JFM=hang}]{ipam.ttf}
{\centering\scriptsize\textbf{\ttfamily #1}\par}\parindent1\zw%
\ltjsetparameter{kanjiskip=.0\zw plus .4pt minus .5pt}
1913年、ニールス・ボーアはラザフォードらによって得られた原子構造と、それ以前から報告されて
いた原子のスペクトル線に関する結果から、原子に束縛された電子はある定常状態にあって、定常状
態の電子は電磁波を放出せず、原子のスペクトル線の周波数は電子が異なる定常状態へ遷移する際に
生じるエネルギー準位の差によって決定される、という仮定を導き出した。このモデルは今日、
ボーアの原子模型と呼ばれる。ボーアは定常状態に関する仮定から、水素原子の問題に関する量子条
件を得た。この量子条件はボーアの量子条件（英: Bohr's quantum condition）と呼ばれる。ボーア
の量子条件によって、原子の定常状態が実現し得るためには水素原子核の周りを運動する束縛電子の
角運動量が換算プランク定数の整数倍になっていなければならないが、その物理的な意味は明らかで
はなかったが、後にド・ブロイの物質波を導入することで電子波が軌道上で定常波を成す条件として
理解されるようになった。1915年から1916年にかけてアルノルト・ゾンマーフェルトによってボーア
の方法が拡張された。ゾンマーフェルトによる量子条件はボーア＝ゾンマーフェルトの量子化条件と
して知られる。ゾンマーフェルトはボーアの理論をニュートン力学の形式から解析力学の正準形式に
置き換え、これにより1つのエネルギー準位に対して、ボーアの円軌道の他に楕円軌道をとる束縛電
子が存在することが示された。これにより磁場中の原子のスペクトルが分裂するという正常ゼーマン
効果は、同じエネルギー準位を持つ異なる電子軌道が、磁場によって別々のエネルギー準位を持つこ
ととして理解できるようになった。ボーアのモデルについて、電子が定常状態から別の定常状態へ遷
移する機構は知られていなかったが、アルベルト・アインシュタインは1917\nobreak 年に、原子核崩壊からの
類推によって、電子・原子核系すなわち原子の状態遷移が確率的に起こるというモデルを導入した。
アインシュタインは、自身のモデルと古典的な統計力学を組み合わせることにより、原子集団の熱放
射のエネルギー分布としてプランクの公式が得られることを示した。
}


\ltjenableadjust[lineend=extended, priority=true]
\setbox40000=\vtop{\sample{lineend=extended, priority=true}}
\ltjdisableadjust
\ltjenableadjust[lineend=true, priority=false, priority=true]
\setbox40002=\vtop{\sample{linened=true,priority=true}}
\ltjdisableadjust
\ltjenableadjust[lineend=false, priority=false, priority=true]
\setbox40004=\vtop{\sample{lineend=false,priority=true}}
\ltjdisableadjust
\ltjenableadjust[lineend=extended, priority=false]
\setbox40010=\vtop{\sample{lineend=extended, priority=false}}
\ltjdisableadjust
\ltjenableadjust[lineend=true, priority=false, priority=false]
\setbox40012=\vtop{\sample{linened=true,priority=false}}
\ltjdisableadjust
\ltjenableadjust[lineend=false, priority=false, priority=false]
\setbox40014=\vtop{\sample{lineend=false,priority=false}}
\ltjdisableadjust

\noindent
\vrule\copy40000\vrule\hfill\vrule\copy40002\vrule\hfill\vrule\copy40014\vrule

\begin{flushright}
 出典：Wikipedia日本語版「量子力学」の記事（一部，改段落削除），2016/08/10閲覧\\
\catcode`\%=11\texttt{https://ja.wikipedia.org/wiki/%E9%87%8F%E5%AD%90%E5%8A%9B%E5%AD%A6}
\end{flushright}
\newpage
\noindent
\vrule\copy40000\vrule\hfill\vrule\copy40002\vrule\hfill\vrule\copy40004\vrule

\end{document}
