my notebook blog

Apache Batik SVG Toolkit による SVG から PNG への変換

単に SVG を PNG に変換したいだけならば、 たとえば inkscape コマンドがあれば簡単にできる。 ただ、今回は諸事情により 画像変換だけでなく、さまざまな加工処理を連続して行いたかったので、 Groovy でそれらをまとめて処理することにした。

continue reading…

MapDB に PDF を保存する、そのために PDFデータを Base64 文字列に encode したり decode したりの話

別に PDF データに限らず Binaryデータを Base64 で文字列にして保存するという話。 時々必要になるがその度にあれどうするんだっけ、となるのでここにまとめておきます。 Groovy の LeftShift Operator (<<) を IO 系のコードで使うと直感的にわかりやす過ぎなのでおすすめです。

continue reading…

MapDB: Javaアプリケーションでちょっとしたデータを保存しておきたい場合に便利

アプリケーションでデータをキャッシュして再利用したい。 たとえば、 Mongo などを使えばそれを実現できるけれど、 UNIXのDBMのような、キーとバリューのセットを保存しておきたいだけなので、 もっと簡単に済ませたい。

Java界隈で DBM っぽいそれと言えば、Berkeley DB がかつては定番だった気がする。 もう少し手軽なものはないかと探してみると MapDB がありました。

continue reading…

Haskell の zip に相当する groovy の transpose が便利

2つのリストをつなぎ合わせたリストをつくる Haskell の zip 相当の機能は、Groovy では transpose で実現できます。

continue reading…

Groovy で画像処理、普段使いのスクリプト その2( 回転 )

Groovy で画像処理、普段使いのスクリプト その1 に続き その2 画像回転をやってみます。

Java2D では 画像を回転させるには AffineTransform を使います。 さらに AffineTransform に与える行列を計算するために、3x3行列の積の計算が必要です。 そのまま地道に計算してもたいしたことはないのですが、 ここでは Apache Commons Math を使います。 Commons Math にはさまざまな機能がありますが、 ここで必要な行列の積の計算には MatrixUtils と RealMatrix を理解しておけば十分のようです。

many-angles-white-donuts-360

continue reading…


Older Posts »