Windows 7 β

13日から日本語版のダウンロードが開始されたということで、14日にはダウンロードを試みていたものの、途中でダウンロードツールが固まったり、レジュームするにも対象ファイルが更新されたとかでもう一度やり直したりで散々な目にあいました。
回線がもう少し太ければよかったのかもしれませんが。

さて、インストールを試みましたが、性能的に対応している予備マシンがないためVMWareを利用することにしました。
が、やはり無理がありました。
重いの何の、マシンがもっさりどころか正常に動きません。
何とかブートしたものの、アップグレード版?なのかOSが見つからないと怒られて進まなくなりました。
もういいや。

GIMPで動画ブラシを作る方法

GIMPをインストールすると簡単なブラシが付いてきますが、あまり種類も多くなく、ちょっと凝った絵を描くには物足りません。
しかし、GIMPではブラシを自作できますので、このページではその方法を解説したいと思います。
また、通常のブラシでは面白くないので、ストロークが伸びるごとにブラシの形が変わる動画ブラシに挑戦します。
なお、この解説で使用したGIMPのバージョンは2.6.3です。
通常のGIMPブラシについては、別の機会に解説します。

ブラシの基礎知識

GIMPのブラシは、GIMPで読み書きできる通常のファイルです。
通常のブラシファイルは拡張子が「gbr」もしくは「gpb」です。
拡張子が2つある理由は調べていないのでわかりません。
今回扱う動画ブラシは「gih」の1種類です。

動画ブラシのファイル構成

動画ブラシはストロークが伸びるにつれて、ブラシの形状が変化します。
変化のパターンはブラシファイルのレイヤー数に準じます。
カラーモードはRGBであればそのレイヤーの画像自体がブラシになりますが、グレースケールの場合は、黒がブラシになります。
アンチエイリアスを適用した場合には、白以外がブラシになります。

動画ブラシの1コマ目を作る

何はともあれ、実際に作っていきましょう。
まずは、「新しい画像を作成」します。

GIMP-動画ブラシ01

キャンバスの大きさは64×64でカラーモードはグレースケール、そしてここでは塗りつぶしを透明にします。
ブラシとしては背景が白でも抜きになりますが、加工するには少し邪魔になるので、透明で作成します。
ブラシの模様には、文字のハートを利用しました。
通常では入力できないので、IMEツールから選択しました。
フォントはメイリオ、ポイントサイズで72を指定しました。
入力した文字を、キャンバスの中央に配置するには次の方法が確実です。

  1. メニュー > レイヤー > レイヤーの自動切抜き
  2. メニュー > ツールボックス > 整列
  3. (以下、パネル操作)キャンバスを選択 > 中央揃え(中央の) > 中央揃え(垂直の)

GIMP-動画ブラシ02
予断ですが、表示倍率のセレクトメニューが文字化けしているのと、文字レイヤー1枚なのにタイトルバーでは2枚になっています。
また、名称未設定の通し番号がバラバラになりますが、気にしないでください。

動画ブラシの2コマ目を作る

ここで作る動画ブラシは、ハートマークがくるくると回るもにします。
まずは1コマ目のレイヤーを複製して、60度回転します。
そして、1コマ目と同じように、中心に配置しましょう。
特に難しいところはありませんが、レイヤーウィンドウは次のようになっています。

GIMP-動画ブラシ03

動画ブラシのコマを全て作る

ハートが60度ずつ回転するので、6コマで一周します。
2コマ目を作ったのと同じ要領で、残りの4コマを作ります。
レイヤーウィンドウでは、次のようになっています。

GIMP-動画ブラシ04

動画ブラシの最終調整

6コマ全て作り終わったら、xcf形式で保存しておきましょう。
そして、動画ファイル形式で保存・・・の前にもう1段階あります。
このファイルはカラーモードがグレーケールなので、ブラシでは透明度が機能しません。
透明度は黒と同じ扱いになってしまうので、白で塗りつぶす必要があるのです。
それなら最初から背景を白にすればいいのかもしれませんが、背景があると中央に配置するときに邪魔になるので、透明なレイヤーを使っていたのです。
多少面倒かもしれませんが、背景が白のレイヤーを1枚ずつ合成していきましょう。
レイヤーウィンドウでは次のようになっています。

GIMP-動画ブラシ05

ブラシを保存する

いよいよ動画ブラシとして保存しましょう。
「名前をつけて保存」を選び、ファイル名は「hearts.gih」とします。
パラメータを設定するダイアログが開きますので、感覚を50、セル数と並びをコマと同じ6、そして、コマを表示する順番はincremental(順次)にします。
説明はブラシの選択画面で表示されるもので、ここでは「original hearts(movie)」としておきます。
設定が終われば保存します。
ブラシファイルとして読み込める場所にコピーして、GIMPを再起動または、ブラシダイアログよりブラシの再読み込みで、作ったばかりの動画ブラシが表示されていれば成功です。
これでハートが回り続ける動画ブラシの完成です。
最後に、このブラシを使ったテクスチャの例をご覧ください。

(間隔は50のまま、グラデーション描画でなぞった場合)
GIMP-動画ブラシ07
(不透明度を50、間隔を30に、揺らぎを揺らぎ1.00にしてグラデーション描画で塗りつぶした場合)
GIMP-動画ブラシ08
実際に作成したxcfとgihの書庫ファイル
GIMP-動画ブラシ書庫ファイル

おつかれさまでした。

SSLのインストールに失敗する

SSLの更新期限が近づいてきたのですが、新しいブランドでサービスを行うとのことから、乗り換えることにしました。
前回と同じようにか秘密鍵を生成して証明書を発行してもらって、Apacheにインストール・・・に失敗します。
よくよく調べてみると、モジュラスが異なっているためにhttpdが起動できない模様です。
なぜこうなったのかよくわからないまま、再発行をお願いすることになりました。

とりあえず、モジュラスの確認方法をメモで残しておきます。

<サーバ>
Apache + mod_ssl + openssl

<エラーメッセージ>
Unable to configure RSA server private key

<調べ方>
証明書のモジュラスを表示
openssl x509 -noout -text -in certfile

秘密鍵のモジュラスを表示
openssl rsa -noout -text -in keyfile

この結果において、「modulus」と「public exponent」が同じでない場合、認証できないのでApacheが起動しないようです。

アップロードする方法がわからない

いまひとつ使い方を理解していないWordPressですが、ふと画像をアップロードしようと思ったものの、方法がわからなくなりました。
以前は「メディアの追加」のような名前でメニューがあったような気がしたのですが、今探すとどこにもない。
うーんこ、待った。
基、うーん、困った。

OOo3 BaseでMySQLに接続する

いつもはphpMyAdminというツールを使って操作していますが、HTMLで構成される画面には何かと限界を感じるものです。
かなり昔にMicrosoftのAccessで簡単なデータベースを作ったことがありますが、Windowsに限定されるのは何かと不便だし、一から作るのであれば新しいものに手を出してみようとOOoのBaseからMySQLに接続してみることにしました。
Baseを起動するとデータベースウィザードが開始されますので、指示通りに進めます。

「既存のデータベースに接続」を選択し、「MySQL」を指定
 ↓
JDBCを使って接続を選択
 ↓
データベースの名前、サーバーURLを入力
 ↓
ユーザー名を入力し、必須パスワードにチェックを入れて「テスト接続」ボタンを押下
 ↓
パスワードを入力して「OK」ボタンを押下
 ↓
ワクテカしながら結果を待つ・・・まもなくエラーメッセージが表示される

さて、ここまで進めたのにエラーが表示されて進めなくなりました。

The driver class 'com.mysql.jdbc.Driver' could not be loaded.

com/mysql/jdbc/Driver

つまり、ドライバが見つかりませんということのようです。
このエラーはJRE対応であってもなくても表示されます。インストールしなおして実験したので間違いありません。
Javaの環境によってはこの作業が必要ではないのかもしれません。
OOo自体にはMySQL用のドライバ(他のDBも?)が入っていないので、別途用意してあげる必要があります。
今回はMySQLへの接続ですので、MySQLのサイトからJDBCドライバをダウンロードします。
この記事の作成時点ではConnector/J 5.1が用意されていました。
ダウンロードにはオーナーの情報を求められますので、適当に入力します。
入力内容に不備が無ければ画面が推移しますので、あちこちに用意されているミラーからダウンロードします。
このファイルはOOo以外からも利用できますので、OOoのディレクトリの中に入れるのではなく、パブリックな場所においておくといいでしょう。
次に、ダウンロードしたドライバを認識させなければなりません。
Baseを起動するとまたウィザードが表示されますので、設定を無視して「完了」ボタンを押下し、ウィンドウのメニューを操作できる状態にします。もちろん、OOoのスタートウィンドウを起動してもかまいません。

ツール>オプション
 ↓
OpenOffice.org>Java
 ↓
「クラスパス」ボタンを押下
 ↓
「アーカイブを追加」ボタンを押下
 ↓
先ほど保存した「mysql-connector-java-5.1.7-bin.jar」を選択し、「OK」ボタンを押下
 ↓
指示に従ってOOoを再起動

これで、最初に行った手順どおりに進めると、無事

接続テスト

接続が正常に確立できました。

と表示されます。
あとは、設定をファイルに保存すれば完了です。
データベース操作の解説はまた別の機会に。

OOo Version.3公開

MicrosoftOfficeとほぼ互換があるオフィススイート、オープンオフィスのバージョンが3になりました。
個人的にはOfficeは2000までしか使っておらず、それ以降は基本的にOOoでの作業です。
動作が少々もたつきますが、MS高額を払っても全機能を使うわけでもないし、立派に機能しているといえるでしょう。
まぁ、よそとやり取りするときには困ったりしますが。

さて、3で何が変わったのかといいますと・・・
アイコン?
ほかは・・・何が違うんだろう。
微妙にツールバーに変化があったぐらいでしょうか。
官公庁での導入も始まっているとも聞きますので、新しい物好きにはお勧めかもしれません。

Excelで読めるHTMLを書く

Webサービスなどから、Excelで読めるHTMLを出力する場合、
以下の2行をヘッダで出力すればいいのは有名な話。
Content-Type: application/vnd.ms-excel
Content-Disposition: attachment; filename="file.xls"

しかし、今回も同じ技を使おうと思って困ったことになった。
それは、改行が反映されない。
Officeは2000までしか持ってないので、他のバージョンはどうなのかわからないけれど、
MSのことなので、この仕様(不具合)は2007でも継承されているに違いない(かもしれない)。
tdセル内に<br>を書くと行が分離してしまう。
純粋にプレーンなtableを書くとこうなってしまうらしい。
仕方が無いので、ExcelでHTMLを出力させ、改行が反映できるHTMLファイルのテンプレートを作ることにした。
以下がそのコード

<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=UTF-8">
<style>
<!--tr
	{mso-height-source:auto;
	mso-ruby-visibility:none;}
br
	{mso-data-placement:same-cell;}
.style0
	{mso-number-format:General;
	text-align:general;
	vertical-align:bottom;
	white-space:nowrap;
	mso-rotate:0;
	mso-background-source:auto;
	mso-pattern:auto;
	color:windowtext;
	font-size:11.0pt;
	font-weight:400;
	font-style:normal;
	text-decoration:none;
	font-family:"MS Pゴシック";
	mso-generic-font-family:auto;
	mso-font-charset:128;
	border:none;
	mso-protection:locked visible;
	mso-style-name:標準;
	mso-style-id:0;}
td
	{mso-style-parent:style0;
	mso-ignore:padding;
	color:windowtext;
	font-size:11.0pt;
	font-weight:400;
	font-style:normal;
	text-decoration:none;
	font-family:"MS Pゴシック";
	mso-generic-font-family:auto;
	mso-font-charset:128;
	mso-number-format:General;
	text-align:general;
	vertical-align:bottom;
	border:none;
	mso-background-source:auto;
	mso-pattern:auto;
	mso-protection:locked visible;
	white-space:nowrap;
	mso-rotate:0;}
.xl24
	{mso-style-parent:style0;
	white-space:normal;}
-->
</style>
<!--[if gte mso 9]><xml>
 <x:ExcelWorkbook>
  <x:ExcelWorksheets>
   <x:ExcelWorksheet>
    <x:Name>Sheet1</x:Name>
    <x:WorksheetOptions>
     <x:Selected/>
    </x:WorksheetOptions>
   </x:ExcelWorksheet>
  </x:ExcelWorksheets>
 </x:ExcelWorkbook>
</xml><![endif]-->
</head>
<body>
<table>
 <tr>
  <td class=xl24>あ<br>い</td>
 </tr>
</table>
</body>
</html>

tdタグのxl24というクラスがあることで改行が反映されるらしい。
表示が1行のみになってしまうが、データとしては問題ないらしい。
もう少し削れそうだけど、テーブルの中身さえスッキリすれば、テンプレートとして問題ないので今はここまで。
この方法はMSのExcel用のものなので、OpenOfficeOrgのCalcではやはり分離する。

SSL証明書インストールに関するメモ

Windows Server(IIS)で使っていたSSL証明書を、Apacheに移し変える作業が必要になっていましたが、なかなか解決の糸口が見つからず2ヶ月ぐらい経過してしまいました。SSL自体の理屈はシスアドでも個人情報保護士でも必要な知識なので理解はしてますが、実際の設定となると上手くいかないものです。いろいろ調べてみても、どのサイトも説明がまちまちでなかなか理解に苦しみました。ここではメモを書き起こすことで、頭に叩き込むことにしました。

まず、拡張子に惑わされないこと。当たり前ですが、拡張子がファイルの内容を証明できるわけではありません。解説サイトに出てくる拡張子には、pem、key、cer、crtというものがありました。SSLも歴史が古いですから、きちんと取り決めがあると思い込んでいたのが最初の間違いです。

つぎに、必要なファイルの呼び方がまちまちなこと。サーバーにインストールする証明書は、秘密鍵です。外部に洩らすような管理をしてはいけません。この秘密鍵は、ほぼ秘密鍵と呼ばれていますが、サイトによっては証明書とだけ呼ばれていることもあります。(ちなみにこのサイトでは秘密鍵という説明が全然無く、どこかのサイトをパクったものの、バレないように編集したら肝心な事が抜けてしまったのではないでしょうか。)

そして、CSRを元に認証局より発行されるのが公開鍵です。先ほどの秘密鍵と公開鍵が対になって暗号化通信が成立します。この公開鍵はサーバー証明書と呼ばれたり、サーバーID(Verisign)と呼ばれています。SSLの解説では、基本的にこの2つについて説明されています。なので、文章上の知識はここまでが限界です。

そして、今でもよく分かっていないのが中間証明書。CA証明書などと呼ばれています。証明をしてもらうための仲介的な存在らしいです。紹介状とでも言いましょうか。もうちょっと正確に知識を吸収するべきなのでしょう。善処します。

秘密鍵
このファイル名はおおよそ*.keyとなっています。一部サイトでは*.pemや*.key.pemとされています。秘密鍵かどうかを確認するには、ファイルの内容を確認します。「-----BEGIN RSA PRIVATE KEY-----」で始まり、「----END RSA PRIVATE KEY-----」で終わります。場合によっては「RSA」が無いものもあるようです。「PRIVATE KEY」という文字列があればほぼ間違いないでしょう。
CSRファイル
認証局に認証してもらうために提出するファイルです。秘密鍵を基にした(秘密鍵そのものとある解説サイトもあるけど、秘密鍵を送ると秘密鍵の意味が無いので間違いと思われ)情報と、サーバーの管理者情報から生成されたファイルは、*.csrとなっています。一部サイトでは*.csr.pemやcsr.pemとされています。CSRファイルかどうかを確認するには、ファイルの内容を確認します。「-----BEGIN CERTIFICATE REQUEST-----」で始まり、「-----END CERTIFICATE REQUEST-----」で終わります。もしくは「-----BEGIN NEW CERTIFICATE REQUEST-----」で始まり、「-----END NEW CERTIFICATE REQUEST-----」で終わります。「CERTIFICATE REQUEST」という文字列があればほぼ間違いないでしょう。
公開鍵
認証局より送り返されてくるファイルです。COMODOの場合はサーバ証明書と中間証明書が書庫ファイルになってメールに添付されます。Verisignの場合はメールの本文に挿入されるので、新規にファイルを作成しコピペして保存することになります。このファイルの保存名が*.cerや*.crtといったものから、certificate.txtなど、ファイルの内容を連想するにも困難なものまであります。COMODOの場合は中間証明書が*.ca-bundleでした。ファイルとしては公開鍵なので、内容を確認すると「-----BEGIN CERTIFICATE-----」で始まり、「-----END CERTIFICATE-----」で終わります。公開鍵に関しては見て回ったサイトの中ではどれも一致していました。
ルート証明書
これは認証局を証明するためのファイルです。公的な認証局ではなく、独自に証明する場合はオレオレ証明書などと呼ばれます。基本的にはブラウザに既にインストールされています。ここではオレオレ証明書については説明しません。一部サイトではサーバ証明書とルート証明書が混同して解説されています。このようなサイトもパクっ(以下略)。このファイルは公開鍵なので、上記公開鍵と同じ「-----BEGIN CERTIFICATE-----」で始まり、「-----END CERTIFICATE-----」で終わります。

なぜだかいつもフルスクラッチ

このサイトは最近WordPressに移行したので、いろいろと楽(だが面倒)なのですが、
ここ以外の趣味ページやお仕事ページはなぜか一から書き起こしてます。
テンプレートが使えないような独自のものがほとんどだからなのですが、
この仕事量を普通に金額にしたら相当な額ですね。
フルスクラッチとはいえ、自分用のテンプレートがあるのですが、
一から作った完全オリジナル。
いつか限界が来ないことを祈りつつ(それなりに柔軟に作ってはいますが)
今日も980円のUSBキーボードをこれでもかと叩きまくる。