#author("2020-04-25T07:46:28+09:00","","")
#author("2020-04-25T08:08:47+09:00","","")
** img64.inc.php [#k8c90a72]
|RIGHT:100|LEFT:360|c
|~サマリ|Base64エンコードされた画像を埋め込み表示|
|~リビジョン|1.0|
|~対応バージョン|1.5.3|
|~投稿者|[[M.Taniguchi]]|
|~投稿日|&new{2020-04-25 (土) 07:41:30};|
**概要 [#q47d21a9]

Base64エンコードされた画像を埋め込み表示するプラグイン。

ファイルをアップロードすることなく、画像をページに直接埋め込むことができます。~
権限のない一般ユーザーでも任意の画像を掲載でき、添付ファイル管理の煩わしさからも解放されます。~
画像のBase64エンコーダーは「画像 Base64 エンコード」等でインターネット検索して見つけてください。

PukiWiki 1.5.3/PHP 7.4 で動作確認済み。旧バージョンでもおそらく動くと思います。

**使い方 [#zb28a44e]

#img64(画像のBase64エンコード文字列)

''使用例''

 #img64(data:image/jpeg;base64,xxxxxxxxx...)

**コード [#w27cf6e5]

img64.inc.php~
(下記のコードをコピーして、plugin ディレクトリに img64.inc.php というファイル名で保存してください)

 <?php
 /*
 PukiWiki - Yet another WikiWikiWeb clone.
 img64.inc.php, v1.0 2020 M.Taniguchi
 License: GPL v3 or (at your option) any later version
 
 Base64エンコードされた画像を埋め込み表示するプラグイン。
 
 ファイルをアップロードすることなく、画像をページに直接埋め込むことができます。
 権限のない一般ユーザーでも任意の画像を掲載でき、添付ファイル管理の煩わしさからも解放されます。
 画像のBase64エンコーダーは「画像 Base64 エンコード」等でインターネット検索して見つけてください。
 
 【使い方】
 #img64(画像のBase64エンコード文字列)
 
 【使用例】
 #img64(data:image/jpeg;base64,xxxxxxxxx...)
 */
 
 define('PLUGIN_IMG64_MAXSIZE', 0);	// Base64文字列最大長(キロバイト)。0なら無制限
 
 function plugin_img64_convert() {
 	list($type, $code) = func_get_args();
 	$code = $type . ',' . $code;
 
 	if (PLUGIN_IMG64_MAXSIZE > 0) {
 		$len = ceil(strlen($code) / 1024);
 		if ($len > PLUGIN_IMG64_MAXSIZE) return '#img64 : Base64 string too long (' . number_format($len) . '&thinsp;KB / ' . number_format(PLUGIN_IMG64_MAXSIZE) . '&thinsp;KB)';
 	}
 
 	return '<div class="img_margin"><img src="' . htmlspecialchars($code) . '"/></div>';
 }
 

***ご注意 [#y327027b]

簡単に画像を掲載できる反面、いたずらで消すのもすげ替えるのも簡単です。~
また、悪意なくちょっとした画像を貼り付けるだけでもウィキページファイル(およびバックアップファイル)のサイズが大きくなります。~
こうした欠点を踏まえたうえで、有効に使える状況であればお使いください。

**ライセンス [#n08e7733]

GPL v3

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.074 sec.

OSDN