お絵かき掲示板Relmを改造してNEO動画再生に対応させる

公開 更新

うれしい事にお絵かき掲示板の希望の光「PaintBBS NEO」が動画再生に対応したようです。
開発者のfunigeさんに心から感謝です。ありがとうございます。

今回は「お絵かき掲示板CGIのRelm」で、NEOの動画再生が出来るように改造したいと思います。

RelmにNEOを組み込む改造については前回の記事をご参照お願いします。

まず用意する物は、NEOの1.4.5以上のバージョン。
Relm側で改造するのは毎度おなじみ「paint.pl」だけです。
(l_paint.htmにJavascript追加するだけでも動きそうなので解る人はお好みで)

目次

NEOの動画再生用ソース

以下のソースを動画再生ページのHTMLのHEAD部分に追加します。
Relm以外のCGIに応用する場合でも同じです。

<!– ■NEO動画再生用 –>
<script>
document.paintBBSCallback = function (str)
{//neo
console.log(‘paintBBSCallback’, str)
if (str == ‘check’) { return true; }
else { return; }
}//neo
</script>
<link rel=”stylesheet” href=”neo.css” type=”text/css”>
<script src=”neo.js” charset=”UTF-8″></script>

paint.plの改造【1/3】

改造箇所は、すべて、paint.plのサブルーチン sub animation{〜} 内です。

paint.plに元からあるif文 (動画ファイルの拡張子がspch以外だった場合に〜)を利用します。
spch以外だった場合に、変数$NEOPCHTAGに、NEO動画再生用のタグをセットします。

#■NEO動画再生用タグ追加【1/3】■NEO■NEO■NEO■NEO■NEO■
$NEOPCHTAG = <<“HTML”;

<!– ■NEO動画再生用 –>
<script>
document.paintBBSCallback = function (str)
{//neo
console.log(‘paintBBSCallback’, str)
if (str == ‘check’) { return true; }
else { return; }
}//neo
</script>
<link rel=”stylesheet” href=”neo.css” type=”text/css”>
<script src=”neo.js” charset=”UTF-8″></script>

HTML
#■NEO■NEO■NEO■NEO■NEO■NEO■NEO■NEO■NEO■NEO■NEO■

画像で追加位置が1行ズレていたので修正しました(2018/10/23)
relmのpaint.plの改造箇所

paint.plの改造【2/3】

すぐ下の行にあるname=”pchapp”をname=”pch”に書き換えます。
例では、副作用が出た時に、元に戻せるように、元の行を#でコメントアウトして、新しい行を追加しています。

# Applet タグの中
$applettag = qq|code=”$appclass” archive=”$apparchive” name=”pch” \n\t width=”$appwid” height=”$apphei”|;
#■$applettag = qq|code=”$appclass” archive=”$apparchive” name=”pchapp” \n\t width=”$appwid” height=”$apphei”|;

paint.plの改造【3/3】

最後にHTMLスキンファイル(skin/l_paint.htm)の置き換え処理の部分に、最初に作った変数$NEOPCHTAGを追加します。
スキンHTMLファイルの<!–PAINT_JAVASCRIPT–>の部分をRelmの拡張機能Javascript類が入っている$paintjsに置き換えています。
その先頭にNEOの動画再生用のタグ$NEOPCHTAGを追加しています。

s//$NEOPCHTAG$paintjs/io;

動画ファイルでツールを判定する処理 (Relm以外のCGIに応用する場合のメモ)

「NEO」と「しぃペイント」を併用している場合など、拡張子で判定が出来ない場合などに。
動画ファイルの1行目を読み込んで、先頭を見て振り分ける処理です。

$PCH=”test.pch”;
open ( IN, “$PCH”);
flock(IN, 2);
binmode IN;
$TES=<IN>;
close(IN);
#■動画ファイルの1行目の先頭で種類を判定する
if ( $TES =~ /^NEO/i ) { $KEKA=”NEOの動画です”; }
elsif ( $TES =~ /^layer/i ) { $KEKA=”しぃペインターの動画です”; }
else { $KEKA=”しぃペイントの動画です”; }

あとがき

これでRelmお絵かき掲示板でも、NEOの動画再生が出来るようになりました。
NEOの「動画から続きを描く」については、改造なしで動作します。
chromeはブラウザのキャッシュが強烈に出る場合があるので、続きを描いても更新されない場合はキャッシュを消してみましょう。

Relm以外のCGIについても、似たような改造で出来ると思います
(私はPHPはまったく解らないので、その辺の解説は詳しい人のページを参照してください)
ぜひ皆さんも、この機会に、お絵かき掲示板を設置してはいかがでしょう!
最後まで、お読みいただきありがとうございました。

簡単設置の新型お絵かき掲示板PHP【篝火】配布所

篝火お絵かき掲示板
しぃペインターもPaintBBSもNEOも標準装備でアップロードしてすぐに使える令和生まれの新型PHPお絵かき掲示板!無料です。

関連記事

JAVA不要!お絵かき掲示板が使える Chromeブラウザ用アドオン「CheerpJ」で、しぃぺインター復活!

JAVA不要!お絵かき掲示板が使える Chromeブラウザ用アドオン「CheerpJ」
Chromeブラウザに「CheerpJ」を追加するだけで、JAVAが無いパソコンでも、お絵かき掲示板 しぃペインターで絵を描いたり、描画アニメを再生する事が出来ます。

お絵かき掲示板NEOの設置方法(BBSnote編)

お絵かき掲示板NEOの設置方法(BBSnote編)
java無しで描ける新しいお絵かき掲示板NEOを「BBSNote」で使う為の改造方法。

お絵かき掲示板PaintBBS NEOの設置方法(Relm簡単改造)

お絵かき掲示板NEOの設置方法(BBSnote編)
お絵かき掲示板Relmを改造してNEOを設置する方法。RelmやNEOのダウンロード方法なども解説します。

お絵かき掲示板Art.net ARTNETブログ

Posted by ミミニャ〜