mac os 10.11.6
FileMaker14、FileMakerServerにホストしているファイルを使用
オブジェクトフールド:image_01
image_01の画像をエンコードしたテキストを格納するフィールド:memo
webビューアには以下のように記述しています
"data:text/html," &
List (
"<!doctype html>";
"<html>";
-----中略-----
"<body>";
"<div>";
"<canvas id=\"canvas\" width=\"300px\" height=\"400px\"></canvas>";
"</div>";
-----中略-----
"<script src=\"https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js\"></script>";
"<script type=\"text/javascript\">";
"var img = new Image();";
"img.onload = function() {";
"ctx.drawImage(img, 0, 0);";
"}";
"img.src='data:image/jpeg;base64," & demo2_content::memo & "';";
"var canvas = document.getElementById(\"canvas\");";
"var ctx = canvas.getContext(\"2d\");";
-----以下省略-----
このコードではcanvas上には何も表示されません
canvas以外の要素は表示されます
ただ以下のコードだと画像は正常に表示されます
"data:text/html," &
List (
"<!DOCTYPE html><html><body>";
"<img src='data:image/jpeg;base64," & demo2_content::memo & "' width='300'>";
"</body></html>"
)
どなたかご教示いただけますでしょうか
GetLayoutObjectAttribute( "ウェブビューアのオブジェクト名" ; "content")
で WebViewer で表示されている HTML を .html の書類として保存し、Safari や Internet Explorer で表示させ、デバッグモードで確認してみてください。
Mac OSのようですので関係ないですが、Windows の場合の WebViewer は互換表示モードになってしまうので、
の1行を head タグ内に記述することをお勧めします。
推測ですが今回の場合は、javascript 内の余分な改行コードが邪魔をしているのでは無いかと...
参考: