私は、make4ht
執筆中の記事の HTML 出力を生成し、それをオンラインで投稿するために使用しています。 これまでのところ、順調です。 常に左側のペインにメニュー、右側のペインにコンテンツなどが表示されるように、フレーム化された HTML 出力を生成できるかどうかを知りたいです。
私は、左側に生成されたメイン HTML make4ht
(基本的にはメニュー) を引き出し、右側のペインに初期コンテンツ ページを表示するフレーム化された index.html ページを設定できると考えていました。生成されたメイン ページをmake4ht
(事後に) 変更して、すべてのリンクに別のフレームを設定することもできます (HTML でこれを行う方法を正しく覚えていれば)... しかし、そうする方"_target"
がはるかに便利です。make4ht
自動的に私にとって。
答え1
ぜひお試しくださいframes
フレームを本当に使用したい場合は、オプションを選択します。次の例のように:
\documentclass{book}
\usepackage{kantlipsum}
\begin{document}
\chapter{Hello}
\kant[1-3]
\chapter{World}
\section{Section}
\kant[4-5]
\section{Another Section}
\kant[6-7]
\end{document}
ファイルをコンパイルするには
make4ht filename.tex "3,frames"
そして、次の HTML ページが生成されます。
もう一つの選択肢は、私が使用している方法を使用することです進行中のTex4htドキュメントを参照してくださいGithubリポジトリ私が使用した構成について。
フレームとは対照的に、目次は各ページに挿入されますが、最上位のセクション レベルへのリンクのみが含まれます。現在の章のセクションのみが表示されます。
特に、目次を挿入するHTMLコードは、config.cfg:
% Mini TOC
\Configure{crosslinks+}{%
\bgroup
% container for the page toc
\Configure{tableofcontents}{\IgnorePar\EndP\HCode{<nav class="TOC">}\IgnorePar}
{\HCode{\Hnewline}}{\IgnorePar\HCode{</nav>\Hnewline}\ShowPar}{}{}%
\TableOfContents[chapter,section,subsection]% Print table of contents before crosslinks
\egroup
\ifvmode\IgnorePar\fi\EndP%
\HCode{<main class="main-content">\Hnewline<nav class="crosslinks-top">} }
{\HCode{</nav>\Hnewline}}
{\ifvmode\IgnorePar\fi\EndP%
\HCode{<nav class="crosslinks-bottom">}}{\HCode{</nav>}}{}{}
TOCに含まれるセクションコマンドは、\TableOfContents
コマンドを使用して選択されます。TOCの外観は、スタイル.cssTOC処理の最後のコンポーネントはビルド.mk4フィルターcollapsetoc
により目次がクリーンアップされ、現在のセクションのみが表示されます。
こんな感じです: