人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linuxで漢字の画像を生成したいと考えています。

■開発環境
Redhat9

HTMLフォームからテキストを入力し
PHPのスクリプトから シェルを実行し画像を生成(ImageMagick)しています。
英数字に関しては、問題なく生成されるのですが
日本語が化けてしまします。(添付画像)

スクリプト上で
EUCへ変換、UTF8へ変換
のエンコードを行っておりますが改善されませんでした。

サーバ上に日本語フォント(RPM)を入れて再度試してみたのですが うまくいかず
インストールが悪いのか、フォントしていのコマンドが悪いのか分からない状況になっています。

1153386344
●拡大する

●質問者: bayfm
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:EUC HTML ImageMagick Linux PHP
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● hive7134
●27ポイント

文字コードの問題かと思われます。

ためしにコマンドライン上で

$ convert -font /usr/share/fonts/japanese/TrueType/kochi-gothic-subst.ttf -pointsize 13 -fill blue -draw "text 20,30 'こんにちは'" old.png new.png

としたところ、日本語の表示には問題ありませんでした。


http://q.hatena.ne.jp/1125040950

◎質問者からの返答

残念ながら文字化けしました。フォントを変えたり、エンコードを変えたりしましたがダメでした。参考までに使用OSや環境などを教えていただけますでしょうか。


2 ● yocchan731
●27ポイント

フォントを指定するときにフルパスで指定すると,うまくいくかもしれません.

以下は参考になりそうなURL.

http://www.rescue.ne.jp/CGI-BBS/image/magic/20031016172346.shtml

http://blog.unknown.jp/mt/archives/000423.html

◎質問者からの返答

フルパスで指定しています。


3 ● hive7134
●26ポイント

OSはFedoraCore4です。

ImageMagickはRPMで導入しております。

Version: ImageMagick 6.2.2 05/24/06 Q16 file:/usr/share/ImageMagick-6.2.2/doc/index.html

Copyright: Copyright (C) 1999-2005 ImageMagick Studio LLC

Puttyからアクセスしていますが、文字セットは「UTF-8(CJK)」です。


<?php
$font = "/usr/share/fonts/japanese/TrueType/kochi-gothic-subst.ttf";
$old = "old.png";
$new = "new.png";
$string = mb_convert_encoding("aiueoあいうえお", 'UTF-8', 'SJIS');

$command = "convert -font $font -pointsize 10 -fill red -draw \"text 20,30 '$string'\" $old $new";

exec($command, $out, $ret);
?>

<html>
<body>
<p>command = <?=$command?></p>
<pre><?php var_dump($out,$ret);?></pre>
<hr>
<img src="<?=$old?>"> => <img src="<?=$new?>">
</body>
</html>
</code>

を文字コードSJISで作成し、アップロード・実行したところ、以下のように無事表示されました。

command = convert -font /usr/share/fonts/japanese/TrueType/kochi-gothic-subst.ttf -pointsize 10 -fill red -draw "text 20,30 'aiueoあいうえお'" old.png new.png

array(0) {
}
int(0)


[無地の画像] => [文字入りの画像]

http://q.hatena.ne.jp

◎質問者からの返答

OSを同じにしたらできました。何が原因なのかは結局わかりませんでした…

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ