スポンサーリンク

このドキュメントの内容は、以下の通りです。

PHPでGDライブラリ・エクステンションを使って、日本語・マルチバイトを表示する方法について紹介します。
ここでのIPAフォントを利用します。結構、綺麗です。
ロゴを作成したり、CAPTCHAの実装に応用できます。

主な手順


1. php5-gd をインストールします。
2. IPAフォント(font-ipa)をインストールします。
3. php.ini の設定を変更します。
4. apacheを再起動して、設定を反映します。
5. プログラムを書いて、実行します。

インストール


cd /usr/ports/graphics/php5-gd
sudo make install clean

portinstallコマンドでインストールする場合
sudo portinstall /usr/ports/graphics/php5-gd

インストール


cd /usr/ports/japanese/font-ipa
sudo make install clean

portinstallコマンドでインストールする場合
sudo portinstall /usr/ports/japanese/font-ipa

php.ini


php.ini か /usr/local/etc/php/foo.ini で open_basedir に下記ディレクトリを追加します。
usr/local/share/font-ipa/

php.ini
open_basedir=/usr/local/share/pear:/tmp:/usr/local/share/font-ipa/

apacheの再起動


phpの設定を反映します。
sudo apachectl restart

サンプルコード


<?php
$img = ImageCreate(300,100);

// 背景を白にする
$white = ImageColorAllocate($img, 0xff, 0xff, 0xff);
ImageFilledRectangle($img, 0,0, 300,100, $white);

$text = 'きゃぷちゃあ試験';
// 必要に応じてUTF-8へ変換してください。
//$text = mb_convert_encoding($text, 'UTF-8', 'auto');

# 文字を黒で表示
$black = ImageColorAllocate($img, 0x00, 0x00, 0x00);
$font = '/usr/local/share/font-ipa/ipamp.otf';
ImageTTFText($img, 24, 0, 5, 30, $black, $font, $text);

header('Content-Type: image/png');
ImagePNG($img);
?>

注意


違うフォントを利用する場合には、open_basedirに違うパスを追加し、プログラムの$fontのフォントのパスを変更してください。

参考



スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

スポンサーリンク
 

過去ログ

2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー