php_mecabがインストールできない←解決

[形態素解析で検索キーワードの続き]

php_mecab の拡張をインストールしようと0.3.0のパッケージ

を入手して取ってきてもうまくコンパイルできない。(その前に、README には「./phpize」とシステムにインストールされているコマンドがカレントディレクトリ付で実行例が示されているので、ここでまずひと躓き…)。

$ ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for gcc... gcc
  ...
checking PHP version... configure: error: need at least PHP 4.0.0

config.m4 でのPHPのバージョンチェックがPHP5用になっていないらしくて引っかかる。

皆さん苦労されてるようで、

って、ほとんどが2007年末から2008年頭あたりまでの情報しか見つからない。PECL自体が廃れてるのかなぁ。

config.m4 を下記のように変更し、phpize をやり直し。
Reeeead the rest of this entry »

ページ取り込みPDFのファイルサイズ縮小

取り込みPDFのサイズ

事務的な書類としてメール配信されてくる、文書のスキャン取り込みPDFファイルのサイズ(数MB程度)がかなり大きくて、扱いに困ることがある。これをなんとかできないか。

まずは、ページの取り込み設定をPDF上から確認できないかとプロパティを開いてみたが、そういう値はなく、また、それを表示するようなツールも出回っていないようだった。そこで、xyzzy で強引にPDFファイルをバイナリとして開いて眺めてみると「/Width 1169」というような記述があり、これをA4縦紙面横幅の8.3inで割ると解像度が求まる(1664/8.3=>200dpi?)のかと思ったが、サイズが1/7程度になっていても同じ記述の場合があるから、この値だけでは算出できないらしい。

/Image/Length 9808/Filter/CCITTFaxDecode/Name/Img1/BitsPerComponent 1/ColorSpace/DeviceGray/Width 1664/DecodeParms<>/Height 2338

元の取り込み設定はすぐには取得できそうにないため、ひとまずそれは置いておき、いくつか仮想PDFプリンタを試してデータを再生成してみることにした。

試したのは、doPDFBullzip PDF PrinterPrimoPDFPDF reDirect v2CutePDFの5つ。
Reeeead the rest of this entry »

BullZipでのPDFプリンタ

これまでフリーのPDFプリンタとしては、RedMonからGhostscriptを利用するものがあったが、インストールや利用時のインターフェースが泥臭い感じがあって、ちょっと面倒だった。今回ちらっと検索すると、PDF生成には同じくGhostscriptを利用するんだが、GUIがより洗練されているらしきBullZipというのが見つかった。

インストールしてすぐに使えたが、GUIが文字化けする。どうもVistaだとダメらしくて、メッセージファイルの設定に不足があるらしい。対応としては英語版としてインストールするか、UNICODEのメッセージファイルに日本語の設定を追加し、さらにGUIプログラムをXP SP2互換モードで起動する方法があるみたい。

「C:\Program Files\Bullzip\PDF Printer\labels.txt」に以下を追加

WindowsLanguage=JPN
CultureID=1041
CultureName=ja-JP
CultureNativeName=日本語 (日本)
MissingTranslations=0

さらに「C:\Program Files\Bullzip\PDF Printer\gui.exe」を右クリックし,「プロパティ→互換性→互換モードでこのプログラムを実行する→Windows XP (Service Pack 2) を指定」

  • このようにするとダイアログの文字化けは解消されるが,保存ファイル名の日本語対応はできず、漢字コード値がずらずらと並んだようなファイル名になってしまう。

また、こちらから生成したPDFファイルでは、日本語テキストがイメージ出力されちゃうようで、閲覧時にテキスト選択ができない。何か生成オプションがあるのかな。


*

そもそも今回PDFプリンタを使おうとしたのは、OpenOffice Draw から生成するPDFファイルで、生成ページを選択したかったから、というのがあり、印刷時のPDFプリンタへのページ指定でこれを行おうとしていたのだが、あとから改めて Draw 側の PDF エクスポートのオプションを見ると、全般タブの冒頭に「範囲」の項目があり、ここで生成するページ指定ができたのだった…(最近付いたオプションかも??)。

で、生成PDF中のテキスト選択はDraw以外の例えば、Firefoxから印刷生成したPDFならBullZipを使っていても問題ないらしい。とすると、OpenOffice側からの印刷時の問題か?

形態素解析で検索キーワード

学生向けに来る就職求人の情報をまとめているが、この入力データからキーワードを抽出したい。

形態素解析すれば手間が省けるだろうとのことで、MeCabを試してみる。

php から使える拡張もあるようだが、まずはコマンドラインで実行してみた。結果は、以下の感じ。
Reeeead the rest of this entry »

WordPress:過去記事タイトルを簡潔に

WordPressの過去記事って、「ブログ名 » Blog Archive » 記事タイトル」ってなってるんだけど、この真ん中の「Blog Archive」って要らなくなーい?

ということで、wp-content/themes/*/header.php を変更してみた(is_single()の際に「» Blog Archive」と表示している箇所を削除)。見ると、どうやら、この処理は元のdefaultテーマには入っていないらしい。

あとつなぎに使われてる「&raquo;」のHTML特殊文字も、コピー・ペースト時などに文字化けする場合があるみたいなんで、外してもいいかも。wp_title()関数 (wp-includes/general-template.php) は第1引数がこのつなぎ(分割)文字の指定になっていて、指定なしの場合に「&raquo;」が出力されるようだ。

--- wp-content/themes/librio/header.php.org     2009-08-05 00:59:51.000000000 +0900
+++ wp-content/themes/librio/header.php 2009-08-05 00:59:10.000000000 +0900
@@ -5,7 +5,7 @@
 <head profile="http://gmpg.org/xfn/11">
        <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

-       <title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> &raquo; Blog Archive <?php } ?> <?php wp_title(); ?></title>
+       <title><?php bloginfo('name'); ?> <?php wp_title('|'); ?></title>

        <link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" />
        <link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />

これも本来はプラグイン化か何かがいいんだろうなぁ。あと、記事タイトルを先に持ってきて、ブログ名との順序を入れ替えたほうがよさそうな気もするけど、今回は真ん中外しのみで。

参考