WebエリアにPDFやJPEGを表示する

base64で受け取った画像をWebエリアに表示する。

デコードして一時ファイルに保存、それからファイルパスをWebエリアに渡す。

	$base64:=$aryObj{1}.base64
	BASE64 DECODE($base64; $blob)
	
	//ファイル保存  一時ファイルの保存場所はドキュメントフォルダ
	C_TEXT($tempPath)
	$tempPath:=JCL_file_UserTemporaryFilePath(vTY08_txtFileName; "JIRO_TMP")
	BLOB TO DOCUMENT($tempPath; $blob)
	
	//表示
	C_TEXT($posixPath)
	$posixPath:="file:///"+Convert path system to POSIX($tempPath)+"#zoom-toolbar=0&toolbar=0&statusbar=0&scrollbar=0&navpanes=0&view=FitH&page=1"
	WA OPEN URL(vTY08_webTokkyoShou; $posixPath)

テストしたのはJPEGとPDF。PNGも大丈夫。

ファイルに書き出さずにオンメモリーでやろうとしたが、ファイルタイプによって書式が異なること、下手なコードを書いて失敗すると4Dが落ちるとかあって、時間がかかりそうだったので一時ファイル方式に落ち着いた。この方法だとPDFやJPEGだけでなく、色々なファイルタイプに対応できる。