whiteleaf7 / narou

Narou.rb - 小説家になろうのダウンローダ&縦書き整形&管理アプリ。Kindle(などの電子書籍端末)でなろうを読む場合に超便利です!
Other
496 stars 55 forks source link

挿絵の圧縮 #372

Closed jam7 closed 4 years ago

jam7 commented 4 years ago

いつもお世話になっています。最近、改造版のAozoraEpub3で挿絵が入るようになって快適です。ありがとうございます。

ただ、挿絵が巨大な場合もあり、google mailの25MB制限を超えることが増えてきました。挿絵の圧縮のような機能があると便利なのかと思っています。AozoraEpub3で圧縮するということも考えたのですが、挿絵をDLして用意するあたりで圧縮すれば自然に対応できるかと考えて、narou.rbを対応したいと思っています。

確認なのですが、すでにそうした機能が存在したり、ここに付けようと考えていたみたいなポイントなどがあったりするでしょうか?なければ、試して、うまくいきそうならまたPRさせて貰えればと思っています。まずは相談させていただきました。

whiteleaf7 commented 4 years ago

でかすぎるなら直接転送すればいいのでは? という気持ちです… 個人的には挿絵は全部削除してますし不要ですが、PRを投げる分には構いません

もしやるなら https://github.com/whiteleaf7/narou/pull/364 しばらく前にバグってたサムネイルを保存してしまっていた、というのをあえてできるようにするというのがお手軽そうですね Ruby で画像の縮小とかするのはハードルが高いです。minimagick などを Windows で動かすのが辛い (gem を使うのだとしても、Windows 環境を考慮してコンパイルが必要なものは使わないようにしています)

whiteleaf7 commented 4 years ago

もし直接画像を加工するなら、Narou.rb ではなく AozoraEpub3 側でやるのを推奨します あちらは画像変換ライブラリなどをつかってますし、土台はあります。(画像回転とかで使ってるはずです)

whiteleaf7 commented 4 years ago

あらためて AozoraEpub3 の設定画面みたら画像縮小のオプションありますし、それを使えばいいのでは

jam7 commented 4 years ago

コメントありがとうございます。

「AozoraEpub3 の設定画面みたら画像縮小のオプションがある」「それを使えば」という下りがまだ理解できていませんが、「narou.rbで設定しているAozoraEpub3.iniを書き換えてやればうまくいくんじゃないか」といった話でしょうか?

恥ずかしながら、AozoraEpub3を直接触ったことがなかったため、「AozoraEpub3の設定画面」が何を指すのかわかっていません。とりあえずヘルプを表示しようと、java -jar AozoraEpub3.jar -hしてみたのですが、それだけでもX11サーバーが見つからないエラーが出るなどして、ネット越しのLinuxだけで作業すると難しいなとなっています。コメント頂いたことを理解するだけで少し掛かりそうですが、忙しい中コメントいただきありがとうございました。

whiteleaf7 commented 4 years ago

「narou.rbで設定しているAozoraEpub3.iniを書き換えてやればうまくいくんじゃないか」といった話でしょうか?

narou init 「後」に、コピーされた AozoraEpub3.ini を手動で変更すればいいと思います Narou.rb は AozoraEPub3 の設定をあとから変更しようとそれは関知しません

ResizeNumW=
ResizeNumH=

という設定があるのでいじってください

それだけでもX11サーバーが見つからないエラーが出るなどして、ネット越しのLinuxだけで作業すると難しいなとなっています。

Windows なり mac 環境なりで試せば良いと思います AozoraEpub3 の設定にフルでアクセスできるのは GUI だけなので、GUI を起動できないのは厳しいです

image

jam7 commented 4 years ago

結論から言うとAozoraEpub3.iniを手で修正することで上手く行きました。これでクローズします。@whiteleaf7 さん、色々教えていただきありがとうございました。

他の人の参考になればと、設定を書いておきます。以下のように設定することで、自動リサイズするようになりました。#以降はコメントなので必要ないです。

ResizeW=1  # リサイズする判定をするかどうか
ResizeH=1 # リサイズする判定をするかどうか
ResizeNumW=658 # これ以上のドット数があるとリサイズ
ResizeNumH=905 # これ以上のドット数があるとリサイズ
RotateImage=0 # リサイズ時に回転するかどうか。0=回転なし、1=右、2=左

ただ、kindlegenを通すと、以下のようにサイズが増えていたのでkindlegen側でも再度何かしているのかもしれないですね。

 size       filename
 15408115   a.epub
 23641860   a.mobi