カスタムCSS機能の追加

本日、Visual Studio Code(VS Code)の小説執筆用機能拡張、novel-writer 2.1.0を公開しました。

ダウンロードはこちらから→ novel-writer

novel-writerにはCSS組版システムVivilostyleに対応したPDF出力機能があり、一行の文字数、一ページの行数を指定するだけでA5用紙に縦・横で組版されたPDFを生成することができます。一行の文字数が少ないときは自動的に段組になりますし、文字数と行数はページの柱にも記載されます。

novel-writerでPDFプレビューを行っているところ
プロジェクト名と一行の文字数、ページの行数、ページ番号が記載された柱

入稿するテキストのプレビューには申し分のない機能でしたが、ページのサイズや天地・小口ノドの空きの量、文字のサイズやフォントなどを直接できなかったため、印刷の版下としては不十分な部分も数多くありました。

しかしこの数年、文フリや技術書典、BOOTHを舞台に少部数の印刷物を販売する軽出版の需要が高まっていることもあり、出版に使えるデータを自分でも作りたくなってきたため、novel-writerから入稿用のPDFを出力したくなってきたというわけです。

novel-writer 2.1.0では、これまでプログラムの中で生成していたCSSを固定し、組版を行うことが可能になります。原稿を配置するプロジェクトフォルダーの中に📁cssという名前のフォルダを作成し、その中にprint.cssというファイルを作ると、print.cssを利用したPDFのプレビューと作成を行うようになります。

print.cssはゼロから書き上げても構いませんが、縦書きCSSに慣れていない方は、novel-writerの内部で作っていたCSSはGitHubの vscode-language-japanese-novel/htdocs/css
/print.css
からダウンロード(あるいはコピーペースト)したものを改造していくといいでしょう。

カスタムCSSの内部では、novel-writerが内部的に使っていた変数も利用できます。ページのサイズだけ、あるいは天地のアキだけ変えて、あとは自動組版に任せてしまいたい、というような場合には以下の変数をCSSの中に書き込むことで、指定と自動組版の両方を利用した版下を作ることも可能です。

${writingDirection}: 縦書き、横書きの組み方向
${fontSizeWithUnit}: 文字サイズ
${originPageNumber}: ノンブルの開始ページ
${pageNumberFormatR}: ページの柱
${pageStartingCss}: PDFが右ページ開始か、左ページ開始かの設定
${columnCSS}: 自動段組の段数
${columnHeitghtRate}: 一段の高さ

カスタムCSSを使うことで、作品ごとに異なるデザインの版下を作ることができます。入稿するPDFのスタイルを固定できるので、編集者とのやりとりに使う特別なレターヘッドを持つ入稿原稿を作ってもいいかもしれません。また、会話にアイコンを付与するような特別なクラスを使うスタイルシートを作成してもいいでしょう。活用してくれることを期待しています。

私は、そうですね。出版するアテのない原稿を集めて、また自主出版をやってみようかな。

カスタムCSS機能の追加” への1件のフィードバック

コメントを残す