« 2021年9月 | トップページ | 2021年11月 »

2021.10.30

Delphi用のEPUB作成ユニットをつくってみた

Kindle Previewer 3でNaro2mobiで作成したKindle用電子書籍フォーマットであるmobiファイルを開くと以下のダイアログが表示されます。

 

kindlegenのオプションに-dont_append_sourceをつけるか、kindlestripでmobiファイル内のソースファイルを削除している場合(mobiファイル内のソースファイルを削除していると、Kindle Previewerで開くことが出来ません)

Nosource
 

mobiファイル内のソースファイルを削除していない場合

Openmobi

こちらは開くことが出来ます。

 

どちらにしても「EPUBを使用することをお勧めします」と言われるためちょっとだけ気になっていました。

 

Naro2mobiではmobiファイル作成のために、小説本文となるHTMLファイルと目次情報等を保存しているopfファイルを出力しているのですが、将来のことを考えてEPUB形式でも出力出来るようにしていたほうが良いかもと思い、ここしばらくEPUBファイルを作成することにハマってしまっていました。

このEPUBですが、ネット上では思ったよりも情報が少なく(いやしっかりとした仕様書はみつかったのですが、これがまた結構なボリュームでちょっと参考にするには重すぎる・・・)、基本的な部分は以下のサイトを参考にしました

epub3.2仕様を読んで手作業epub作りメモ

EPUBファイルを手で作ってみる。
本好きに送る「電子書籍のつくり方」講座
EPUB3の作り方
EPUBの目次の階層化

 

・・・参考にしたのですが、色々と落とし穴がありました

 

まずは出来たEPUBファイルを確認するためにWindows上のEPUBビュワーを探したのですが、日本語縦書き対応のものは少ないようで最終的には以下の確認環境としました。

超縦書ビュワー

Kinoppy for Windows

calibre

※Windows用としては超縦書ビュワーが起動・動作ともに軽くておすすめです。

また、Androd上ではReasily-EPUB Readerを使用して確認しました。こちらもおすすめです。

 

EPUBの各構成ファイルの構造ですが、特に表紙画像を用いる場合においては上記で参考に上げた各サイトの情報だけでは不十分で、calibreで表紙画像付きのmobiファイルをEPUBに変換して、出来上がった各構成ファイルの内容を解析して試行錯誤を重ねながら最終的な各構成ファイルの内容を決めました。

最初は出来上がったEPUBファイルを上記の各ビュワーで表示させてみてエラーが出るかどうかといったローラー作戦を行っていたのですが、最終的にはEPUB-Checkerという素晴らしいツールを見つけたことで、EPUBのどのファイルのどこがだめなのかが簡単にわかるようになり、一気に完成に向かうことが出来ました。このツールをもっと早く見つけていればと思うのですた(一ヶ月くらいぐだぐだしてました)。

またEPUB構成ファイルの構造の問題ではないのですが他にも、

  • mimetypeは”application/epub+zip”が記述されたテキストファイルですが、この文字列の最後に改行コードがあってはならない、保存コードはASCII(1byte)コードでなくてはならないとの成約があることが判明・・・一部のビュワーでは改行コードを無視してくれるので、中々問題があるとは気付けませんでした。
  • EPUBはZIP書庫ファイルなのですが、zip.exeを普通に起動してEPUBファイルを作成すると格納された各ファイルに「拡張属性」が付いてエラーとなる・・・これまた一部のビュワーではエラーとならないので、中々問題があるとは気付けませんでした。zip.exeのオプションスイッチに”-X”を追加して「拡張属性」を抑制したほうが良いようです。

  • Kinnopy for Windowsで作成したEPUBを本棚に追加するとエラーとなる。これは表紙画像を含んだEPUBだけに出る事象で、表紙画像がないEPUBは問題なく本棚に追加出来る。尚、EPUBファイルをWSL2上のUbuntuターミナルでzipを起動して作成した場合には、表紙画像があるEPUBファイルでも本棚に正常に追加出来るという謎問題。

といった感じでとっても楽しむことが出来ました・・・

 

ということで、Delphi用のEPUBファイル作成ユニットという非常にニッチでとても需要があるとは思えないEpubGenは以下の通りです

 

インターフェイス

InitializeEpub       新しいEpubファイルの作成を準備します

                         引数 TEpubInfo Epubファイルを作成するための基本情報

EPubAddPage     1話分の情報を追加します
                        引数 TEpisInfo 追加する1話の情報

FinalizeEpub       追加した全ての情報を元に目次ファイルを構成しEPUBファイルを作成する

ZipPath              ZIP.EXEのフルパス名を指定する(初期値は'zip.exe')
                         zip.exeにパスが通っている場合は省略可

 

公開アーカイブの構成

EpubGen.pas          EPUB作成ユニット本体
stype.inc                style.css生成用定義ファイル(EpubGen.padと同じフォルダに置いて下さい)
titlepage.inc            titlepage.xhtml生成用定義ファイル(EpubGen.padと同じフォルダに置いて下さい)


Text2Epub.dpr        EpubGenテスト用サンプルプロジェクト
Text2EpubUnit.pas
Text2EpubUnit.dfm

Text2Epub.exe        サンプルプロジェクトの実行ファイル

 

尚、EPUBファイルを作成するためにはzip.exeが必要となります。zip.exeがない場合はここから入手してインストールして下さい。

 

ライセンス

ライセンス
フリーソフトです。個人、業務に関わらず、どなたでも自由に使用することが出来ますが、使用に当たって発生したいかなる不具合に対してもいっさいの保証はしません。使用者個人の責任においてのみ自由に使用することが許可されます。
尚、著作権はINOUE, masahiro(masahiro.inoue@nifty.com)が留保します。

 

テストプロジェクトの実行状況

Text2eoub

※テストプロジェクトの「入力ファイル」は拙作の各Web小説ダウンローダーでダウンロードしたテキストファイルです。

 

ダウンロード - epungenunit.zip

※2021/10/31アーカイブ内のファイルを一部差し替えました

 

#あまり需要があるとは思えませんが、それでも誰かの役に立つかもしれないのでGithubにも上げるかもしれません。

 

 

| | コメント (0)

2021.10.07

スペック未達マシンにWindwos11その2

ネットを検索すると必要スペック要件を満たしていないPCにはインストール出来ない、無理やりインストールするためにはレジストリの書き換えが必要等の情報が出てきます。

私のPCに何ら警告もなくインストール出来てしまったのは何なのでしょうか・・・

Windows11のデバイスマネージャーで見てもTPM1.2と出てますし・・・実はTPM1.2+インテル第4世代CPUでもギリギリセーフだとか・・・

Tpm12

 

て言うか、Windows11になっても「コントロールパネル」が「すべての設定」にマージされなかったんですね。しかもWindwos10ではエクスプローラのフォルダツリーからコントロールパネルにアクセス出来たのに、Windows11ではメニューの深いところに行かないとコントロールパネルまで到達出来ないとか、ついでに言えばコマンドプロンプトも同じ場所にありました。

Controlpanel

  

エクスプローラのコンテキストメニューも階層に埋もれていたりと使いづらいです。

やっぱり当面は様子見ですね。

 

 

| | コメント (0)

アルファポリス小説ダウンローダー[alphadl ver1.8]

[ver1.8での変更点]

  1. エピソードが1話の場合にダウンロード出来なかった不具合を修正した
  2. 前書きがない場合ダウンロードに失敗する不具合を修正した
  3. 本文中に入ることがある‪‬コードを削除する処理を追加した(これはなんでしょうね。調べてもよくわかりませんでした)。
  4. 動作に必要なSSLライブラリssleay32.dllとlibeay32.dllを公開アーカイブに追加した
  5. 本バージョンから「最初に読んで下さい.txt」を追加した

 

ダウンロード - alphadl18.zip

 

[Naro2mobiから使用する場合]

Naro2mobi ver3.0(もしくはそれ以降)をインストールしたフォルダにalphadl.exeを上書きしてください。

 

 

| | コメント (2)

カクヨム小説ダウンローダー[kakuyomudl ver1.8]

[ver1.7での変更点]

 ver1.7のコメントで報告があった不具合を修正しました。

  1. エピソードが1話の場合にダウンロード出来なかった不具合を修正した
  2. 前書きがない場合ダウンロードに失敗する不具合を修正した
  3. 本バージョンから「最初に読んで下さい.txt」を追加した

1と2は他のダウンローダー(alphadl, novelismdl, estardl, novelbadl, alphadl)でも同様の不具合が存在するため、随時修正していきます。

 

ダウンロード - kakuyomudl18.zip

 

Naro2mobiの外部ローダーとして使用する場合はNaro2mobiをインストールしたフォルダに上書きコピーして下さい。

 

| | コメント (0)

2021.10.06

必要スペック未達マシンにWindows11を入れてみた

第4世代Core-i7 4770+TPM1.2という必要スペックに全く引っかからない私のメインPCにWindwos11を入れてみました。

とは言っても何が起こるかわからないので、メインSSDのパーティションを分割しWindows11のインストール領域として100GBを確保。そのパーティションにクリーンインストールしてWindows10とのデュアルブート環境としました。

インストールはWindows11をダウンロードするページの上から二番目「Windows11のインストールメディアを作成する」でUSBメモリにインストールイメージを書き込んで、USBブートでWindows11用に確保したパーティションをインストール先としてクリーンインストールしました。

私おPCスペックがスペックなので、もしかしてインストール途中で弾かれるのかとも思ったのですが、気持ち悪いくらいスムーズに最後までインストール出来てしまいました。

更には期待のWSLgも問題なく動作しました。

Win11_20211006150001

上記はubuntuターミナル上からsynapticとxeyesを起動させているところです。

 

また、拙作MiBarcodeもWindows11にインストールしたExcel2016上でオートメーションサーバ機能が問題なく動作するようです。

Mibarcd

 

とは言っても、あくまでも必要スペックを満足していないPCでWindows11を動かしているわけですから、これが正常に動作している状態なのかどうかわからない訳です。また、このWindows11がいつまで動作し続けるのか、それともいずれ動作しなくなるのか全くわからない状況ですので、私が公開しているアプリケーションがこの状態のWindwos11で動作確認を行ったからと言って、正式にWindwos11でも動きますとは言えないと思っています。

また、当面はWindows11のためにPCをアップグレードするつもりはありませんので(ATXのデスクトップPCで、マザーボード、CPU、メモリを交換すると最低でも4万円くらいかかりそう)、Windows11は動作保証対象外とさせていただきます(まぁ動くとは思うので、どうしてもWindows11で動かしたい方はあくまでも自己責任で)。

 

※て言うか、Windows10でのWSLgサポートはどうなったの?

 

 

 

| | コメント (0)

2021.10.01

エブリスタ小説ダウンローダー[estardl ver1.2]

エブリスタ小説をテキスト形式でダウンロードするものです。

単独でWindows10のコンソール(コマンドプロンプト)上で動作します。

またなろう系Web小説ダウンロード&Kindle用mobiファイル作成アプリケーションNaro2mobiの外部ダウンローダーとして使用することも出来ます。


[ver1.1での変更点]

  1. 各話先頭の文字が欠落する不具合を修正した
  2. 挿絵タグのURLが不完全だった不具合を修正した
  3. あらすじ文中にリンクがあれば[#リンク]タグとして処理するようにした


[単独での使用方法]

コマンドプロンプトで

estardl ダウンロードしたいアルファポリス小説トップページのURL (保存したいテキストファイル名)と入力して実行キーを押します。

尚、保存したファイル名の指定は省略できます。省略した場合はダウンロードした小説のタイトル名からファイル名を作成して保存します。


[Naro2mobiから使用する場合]

Naro2mobi ver3.0(もしくはそれ以降)をインストールしたフォルダにestardl.exeを上書きしてください。

 

ダウンロード - estardl12.zip

 

各外部ダウンローダーの更新が頻発しているのは、それぞれ見切り発車でリリースしているからです(言い切る)。各Web小説サイトの作品をダウンロードする度に不具合を発見して修正することを繰り返していますが、いずれは落ち着くのでしょう。長い目で見ていただければと思います。

 

 

| | コメント (0)

« 2021年9月 | トップページ | 2021年11月 »