拡大縮小は救世主
「複写魔法は結構汎用的だからHDDで使うには無駄が多いな」
複写は対象がページまるごとで対象が外部にあるため術者が手に持っているか確認するとか、ページの上下や裏表を確認するとか、様々な処理が盛り込まれている。
「これは拡大縮小のシーケンスか」
それはあるよな。
魔導書の大きさはそれぞれ違う。
これは子供用だからだいぶ小さいし、先生のは一般的な大きさだけど、基本手作りだから微妙にサイズが違うのだ。
元となる紙だって規格化がされているとは言い難い。
羊皮紙の場合、元になる動物の種類や成長具合によって大きさが違ったり形が違ったり、鞣し方による差異があったりで一定していない。
そこから無駄にならないように切り取り、同じような大きさのものをまとめて作るため、ほぼ同じ大きさであるがやはり微妙に大きさがちがう。
紙いっぱいに書き込むと魔導書に収まらないこともあるので、こういったシーケンスが必要になるのであろう。
「あっ!」
そうだ。ページが足りなかったら縮小すればいいじゃないか。
この魔導書に複写するときだって、A4の紙からB5の紙くらいに縮小したのだ。
縮小率をもっと上げればページを節約できるはずだ。
なにせ元のシーケンスは別の紙に書いているのだ。
一回消して、縮小率を変更してから書き込むだけでいい。
「やってみるか」
複写のシーケンスには元々拡大縮小のシーケンスが組込まれていて、通常は自動的に拡大縮小率を紙の大きさに合わせるようになっている。
これは手動で設定できるようになっているから、起動時のパラメータを増やせば好きな縮小率にできる。
また、コピー位置もずれてくるからこれも指定する必要があるだろう。
「とりあえず一ページに四ページ分複写するか」
縮小率はともかく位置指定が面倒くさいので、とりあえずこんなもんでいいだろう。
僕は不要なページを消去してから、再度一ページずつ縮小しながらコピーする。
「さて原理上、これでも動くはずだが」
僕は起動キーワードを唱えた。
そこで意外なものを目にする。
「は、早い!」
表示速度が明らかに上がっている。
端まで表示するのに一秒かかっていない。
全画面表示するのに八秒くらいか?
「何が起こった?」
三〇秒と八秒では雲泥の差だ。気のせいであるはずがない。
「四倍だと……」
だいたい四倍も早い。赤いインクを使ったつもりもないし、そもそも三倍どころか四倍だ。
今回の縮小率は四分の一。
関係があるのか?
「……まさか」
僕は体が震えるのを感じた。
「【消去】」
僕は今複写したばかりのシーケンスを削除して今度は一六分の一。つまり一ページに一〇ページを複写し六ページ分が空きになる。
「【画面表示】」
起動キーワードを唱えると、わずか二秒とかからず表示された。
「シーケンスの処理速度は文字の大きさ、いや、面積に比例するのか?」
結果を見る限りそうとしか思えない。
三二分の一にすれば、一画面を書くのに一秒を切る。
これならパソコンとして十分とは言えないが我慢して使えるレベルだ。
特にこれまでパソコンなるものを見たことも聞いたこともない人なら、そういうものだと納得してくれる程度には早い。
まあ、慣れれば遅く感じられるだろうが、それは定年間際の頃だって同じだった。
人間の欲望にはキリがない。
「よし次は三二分の一に挑戦だ」
僕は同じ手順で消去と複写を繰り返す。
そして。
「【画面表示】」
……。
「起動しないだと!」
何が悪かったんだ?
ページ抜けか? それとも同じページを複数コピーしたのか?
四の累乗じゃないから位置計算をミスったか?
小さすぎて字が読めない。
僕は原紙と複製されたページを見比べて形を比べる。
字が読めなくても形でどのページの複写かわかるはずだ。
「ページ抜けはないか……とすると」
小さすぎて僕だって読めないのだ。
精霊も文字が小さすぎて読めないのかもしれない。
「いや、原子でさえ見える精霊だぞ。それがたかだか三二分の一程度で見えないってことはないだろ」
まさか……
手元のベルを鳴らして僕付きの侍女見習いを呼ぶ。
「アンジェリカ、コップに水と銅貨を一つ持ってきて」
「水と銅貨? ですか?」
僕付きの侍女――まだ見習いだが――が首を傾げて問い返す。
「そう、水は口の広いのに入れてきて、銅貨は一枚でいいよ。あとタオルも」
「……わかりました」
アンジェリカが部屋を出て、控えていたメイドへ僕の用事を言い渡す。
アンジェリカは一応男爵令嬢だからな。
僕の世話以外のことはしない。
メイドに命じたり彼女らの仕事ぶりを監督監視するのが主な仕事だ。
僕の話し相手なんかもしてくれるが、魔導に関することは、許可の降りていない者には教えられないから、このところ別室で控えてもらうことが多くなっている。
「おまたせしました」
メイドが持ってきたお盆をテーブルに置くよう命じ、命じたものがきちんとあるか、余計なものがないかを確認した後、メイドを部屋から出し僕に完了を報告する。
「ありがとう、アンジェリカ」
僕はテーブルに置かれた銅貨を手に取り、水の入ったコップに指を突っ込んだ。
「飲まれるのではないのですか?」
流石に僕の行動が意味不明だったのか、声をかけてきた。
「これはこうするんだ」
僕は手についた水滴を銅貨に空いた穴にそっと落とす。
「うん、こんなものだろう」
僕はタオルで指についた水を拭い、水滴のついた銅貨を魔導書の上に持っていった。
「やっぱり、潰れている」
銅貨と水滴で作った即席の虫眼鏡で三二分の一の面積にコピーされた文字を見たところ羊皮紙の繊維? か凸凹のせいで文字が潰れて読めなくなっていた。
「人間の読めない文字は精霊も読めないってことか」
こうなると縮小は一六分の一が限界か。
一画面三〇秒よりはマシになったが、二秒は実用ギリギリだ。
僕なら全然アウトと言いたい。
画像の拡大縮小はちゃんとやろうとするとけっこう大変です。
縦横二倍にすれば一ドットが四ドットになるため、ギザギザになってしまいます。
逆に縦横半分に縮小しようとすれば四ドットが一ドットになってしまうため三ドット分の情報が消えます。
そこでいろいろな補完処理をして、人が見て違和感のない画像にする必要があるのですが、基本的に周囲のドットを距離に従って重み付けして、対象の一ドットの色や明るさなどを決定します。
この重み付けの仕方や距離計算の精度などによって綺麗さ見え方が変わってきますし、画質にこだわれば処理時間も長くなりますので、そのへんのバランスも考える必要があります。
拡大率も整数値なら楽なのですが、小数点付きだとまたまた面倒。
人類補完計画ならぬ画像補完計画。
違うようで似ているこの二つ。
片や心の壁を取り払って一つになる、片やドットの壁を取り払って一つになる。
画像の方は簡単に一ドットに縮小できますが、それは画像として成り立つのでしょうか?
ましてや人間は?
ちょっとエセ哲学的に終わってみたw