| 654 |
</section> |
</section> |
| 655 |
|
|
| 656 |
|
|
| 657 |
<section title="イメージ画像変換"> |
<section title="イメージ画像変換機能"> |
| 658 |
mod_chxjには、JPEG、GIF、PNG、BMPファイルを置いておくだけで、デバイス定義に従って、それぞれのキャリア対応のフォーマットに変換する機能があります。 |
mod_chxjには、JPEG、GIF、PNG、BMPファイルを置いておくだけで、デバイス定義に従って、それぞれのキャリア対応のフォーマットに変換する機能があります。 |
| 659 |
画像のサイズ(縦X横)も、端末の画面サイズに合わせて変換します。 |
画像のサイズ(縦X横)も、端末の画面サイズに合わせて変換します。 |
| 660 |
画像のサイズ(バイト数)については、デバイス定義中のキャッシュサイズを見て、その値よりも小さくなるように<b>努力</b>しますが、元の画像が |
画像のサイズ(バイト数)については、デバイス定義中のキャッシュサイズを見て、その値よりも小さくなるように<b>努力</b>しますが、元の画像が |
| 691 |
<li>hパラメータ<br /> |
<li>hパラメータ<br /> |
| 692 |
縦幅を指定します。 |
縦幅を指定します。 |
| 693 |
</li> |
</li> |
|
</ol> |
|
| 694 |
<program title="w/hパラメータ 使用例"> |
<program title="w/hパラメータ 使用例"> |
| 695 |
<IMG SRC="/img/logo?w=100&h=200"> |
<IMG SRC="/img/logo?w=100&h=200"> |
| 696 |
</program> |
</program> |
| 697 |
|
<li>User-Agentパラメータ(uaパラメータ)<br /> |
| 698 |
|
User-Agentを指定します。指定した場合は、リクエストヘッダ中のUser-Agentを本パラメータの値で上書きします。 |
| 699 |
|
このパラメータに"IGN"を指定した場合は、User-Agentを無視します。Thumbnailモード、壁紙モードと併用時は、 |
| 700 |
|
640x480を元に画像サイズを算出します。 |
| 701 |
|
</li> |
| 702 |
|
</ol> |
| 703 |
</subsection> |
</subsection> |
| 704 |
上記全てのモード、パラメータはGETリクエストとしてのみ使用できます。 |
上記全てのモード、パラメータはGETリクエストとしてのみ使用できます。 |
| 705 |
</section> |
</section> |
| 706 |
|
|
| 707 |
|
<section title="QRコード出力機能"> |
| 708 |
|
<subsection title="QRコード出力ハンドラの登録"> |
| 709 |
|
QRコード出力機能を使用するには、QRコードハンドラを登録します。 |
| 710 |
|
httpd.confに以下の記述を追加します。 |
| 711 |
|
<program title="httpd.conf"> |
| 712 |
|
AddHandler chxj-qrcode .qrc |
| 713 |
|
</program> |
| 714 |
|
なお、ハンドラを登録しないでも、出力フィルターを経由させることで、QRコードを出力させることも可能です。(※QRコードの動的出力を参照) |
| 715 |
|
</subsection> |
| 716 |
|
<subsection title="QRコードソースファイルの設置"> |
| 717 |
|
ハンドラを登録したら、その登録した拡張子を持つファイルを用意します。 |
| 718 |
|
<program title="例:a.qrc"> |
| 719 |
|
<?xml version=1.0 ?> |
| 720 |
|
|
| 721 |
|
<qrcode> |
| 722 |
|
<version>13</version> |
| 723 |
|
<level>H</level> |
| 724 |
|
<mode>8bit</mode> |
| 725 |
|
<size>1</size> |
| 726 |
|
<data>テストデータです</data> |
| 727 |
|
</qrcode> |
| 728 |
|
</program> |
| 729 |
|
.qrcファイルは、qrcode要素、version要素、level要素、mode要素、size要素、data要素から成り立ちます。 |
| 730 |
|
<ol> |
| 731 |
|
<li>versionタグ |
| 732 |
|
versionタグは出力するQRコードの生成に利用するバージョンを指定します。 |
| 733 |
|
使用できるバージョンは、1〜40までの40種類です。 |
| 734 |
|
</li> |
| 735 |
|
<li>levelタグ |
| 736 |
|
levelタグは出力するQRコードの生成に利用する誤り検出レベルを指定します。 |
| 737 |
|
使用できるレベルは、L、Q、M、Hの4つです。 |
| 738 |
|
</li> |
| 739 |
|
<li>modeタグ |
| 740 |
|
modeタグは出力するQRコードの生成に利用するモードを指定します。 |
| 741 |
|
使用できるモードは、NUM(数字モード)ALPHA(英数字モード)8BIT(8ビットバイトモード)KANJI(漢字モード)です。 |
| 742 |
|
</li> |
| 743 |
|
<li>sizeタグ |
| 744 |
|
sizeタグは1モジュールを何ピクセルであらわすかを指定します。 |
| 745 |
|
0を指定した場合は、4を指定した場合と同じ動作をします。 |
| 746 |
|
使用できるサイズは、0〜20までです。 |
| 747 |
|
</li> |
| 748 |
|
<li>dataタグ |
| 749 |
|
dataタグは、QRコードに出力するデータを指定します。改行した場合は、改行文字もQRコード内に符号化されます。 |
| 750 |
|
</li> |
| 751 |
|
</ol> |
| 752 |
|
</subsection> |
| 753 |
|
<subsection title="QRコードの動的出力機能"> |
| 754 |
|
プログラム等を使用し、動的にQRコードを出力したい場合は、上記の.qrcファイルの内容をそのままOutputFilterに通してあげればOKです。 |
| 755 |
|
|
| 756 |
|
<program title="phpでQRコードを動的に出力する例"> |
| 757 |
|
<php |
| 758 |
|
$version = $_POST["version"]; |
| 759 |
|
$level = $_POST["level"]; |
| 760 |
|
$mode = $_POST["mode"]; |
| 761 |
|
$size = $_POST["size"]; |
| 762 |
|
$data = $_POST["data"]; |
| 763 |
|
|
| 764 |
|
echo "<qrcode>\n"; |
| 765 |
|
echo "<version>".$version."</version>\n"; |
| 766 |
|
echo "<level>".$level."</level>\n"; |
| 767 |
|
echo "<mode>".$mode."</mode>\n"; |
| 768 |
|
echo "<size>".$size."</size>\n"; |
| 769 |
|
echo "<data>".$data."</data>\n"; |
| 770 |
|
echo "</qrcode>\n"; |
| 771 |
|
> |
| 772 |
|
</program> |
| 773 |
|
そして、上記のコードを、OutputFilterを通るところに設置すれば完了です。 |
| 774 |
|
なお、OutputFilterを通る場合は、画像変換エンジンも動作してしまうため、使用するクライアントのUser-Agentを定義するか、もしくは、 |
| 775 |
|
ua=IGNを指定して、リクエストしなければなりません。(もちろん、画像変換エンジンをそのまま使用する場合は何もしないでいいです。) |
| 776 |
|
|
| 777 |
|
|
| 778 |
|
</subsection> |
| 779 |
|
</section> |
| 780 |
</body> |
</body> |
| 781 |
</doc> |
</doc> |