読者です 読者をやめる 読者になる 読者になる

Perl日記

PerlとかRubyとかPHPとかPythonとか

はてブ毎時ランキングを作った

Webサービス

リハビリがてら作ってみた。

hateb-rank.herokuapp.com

週刊少年サンデーを自炊して約6年経った

雑記

websunday.net


10年以上サンデーを読んでいる。
読んだら捨ててたけど、ちょうど自炊の環境を整えたのもあって、2010年くらいから電子化して捨てるようにした。(さすがに現物をとっておくには場所をとりすぎる……)


なんとなく、やってること書いてみる。

ちなみに、自炊しだしてから、買い逃したことは1回もない

思い出した

kyozai.noblog.net


こちらの記事を読んで、自炊してみようと思ったのだった。


裁断

↓を使ってる。

http://bungu.plus.co.jp/product/cut/papercutter/pk513l.html

前述の記事に出てた断裁機。

いま見たら生産終了してた……。

一度、切れ味が悪くなったかなと思って、刃を自分で替えたこともあるけど、すごく難儀したのを覚えてる。


サンデーのようなごっつい雑誌だと、断裁機にセットできないので、カッターでまず三分割してから、裁断している。


2016年Vol.10

スキャナ

スキャナは、ScanSnap S1500Mをずっと使ってる。

こっちもだいぶ前に販売終了してるけど、一応、El Capitanまで対応してくれてる。

漫画雑誌のインクで汚れた。



設定は、

  • 画質の選択:「ファイン(カラー/グレー:200dpi、白黒:400dpi相当)」
  • カラーモードの選択:「カラー」
  • 読み取り面の選択:「両面読み取り」
  • 読み取りモードのオプション
    • 濃度:「標準」
    • 文字をくっきりします:チェックしない
    • 白紙ページを自動的に削除します:チェックしない
    • 文字列の傾きを自動的に補正します:チェックしない
    • 原稿の向きを自動的に補正します:チェックしない
  • ファイル形式:「PDF」
  • ファイルサイズ:「3」


「白黒」ではなくて「カラー」にしてるのは、表紙とか巻頭カラーとかセンターカラーとかあるからイチイチ分けてスキャンするのは面倒くさいのと、漫画のページも雑誌の色味があった方が、後で見た時に雑誌を読んでる感があって良かったから。

「プレビュー.app」での2枚表示。左右が逆になるので、普段は1枚ずつ見てる。


「PDF」なのは、なんとなく管理しやすそうだったから。


「文字をくっきりします」などのオプションは、チェックすると、余計な編集をされてしまうのでしない方がマシだった。(ソフトのバージョンアップが何回かあったから、いまはわからない)

ファイルサイズ

これでだいたい1冊が200MBから300MBくらいになる。ページ数によってばらつきがある。

調べたら、いま290冊で、70GBくらいあった。いま調べて自分でちょっと引いた。

$ find . -name "*.pdf" | wc -l
     290
$ du -h -d 1
461M	./2009年
8.7G	./2010年
 11G	./2011年
 12G	./2012年
 12G	./2013年
 12G	./2014年
 12G	./2015年
1.6G	./2016年
 70G	.

所要時間

スキャン自体は、だいたいつきっきりで、1冊あたり、12〜15分くらいかかる。
消耗品のパッドユニットとピックローラユニットが弱くなってくると、ジャムって直してで、もっとかかる。

つまり、これまでサンデーのスキャンだけで、72時間くらいを使ってきたのか……。

まとめ

サンデーには、ジャンプやマガジンを見習って電子版を早く出してもらいたい……。

ちなみに

サンデー以外にもコミックや技術書も自炊できるものはしていて、本棚も一時期は4つあったけど、いまは1つだけに収まった。

スキャンした数は、1,643冊で、だいたい161GBあった(サンデー含む)。


消耗品使用カウンタによると、総スキャン枚数は199,989枚で、20万枚目前というところだった。

Scalaでクラスを継承したときのコンストラクタのパラメータ

Scala

newするときに渡す引数は、子クラス定義時も親クラス名といっしょに指定しないといけない。

class Hoge(a: Int)

class Fuga extends Hoge
// error: not enough arguments for constructor Hoge: (a: Int)Hoge.

class Fuga(a: Int) extends Hoge(a)
// ok
// Fugaの引数がHogeに渡される

デフォルト引数が親クラスで設定されているときは、指定しなくてもいい。
あるいは、子クラス定義の時に変更できる。

class Bar(val a: Int = 123, val b: Int = 234)

class Baz() extends Bar

val baz = new Baz()
baz.a //=> 123
baz.b //=> 234


class Foo() extends Bar(b = 345) // 名前付き引数で渡す

val foo = new Foo()
foo.a //=> 123
foo.b //=> 345