@blog.justoneplanet.info

日々勉強

canvasを使用する

■HTML

以下のようにcanvas要素を置く。

<canvas id="canvas" width="500" height="500"></canvas>

widthとheightの指定には属性を使用する。

■JavaScript

canvasを使う準備。

var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');

円を書いてみる。

context.beginPath();
context.fillStyle = 'red';
context.arc(20, 20, 10, 0, Math.PI * 2, false);
context.fill();
context.closePath();

以下のようになる。


四角形を書く。

context.strokeRect(10, 20, 10, 20);
context.fillStyle = 'red';
context.fillRect(50, 20, 10, 20);

以下のようになる。


ちなみにpathではないのでbeginPath()は不要らしい。

線を書いてみる。

以下のようになる。

context.beginPath();
context.moveTo(0, 0);
context.lineTo(100, 20);
context.stroke();

味気ない。味気ない。


曲線を書いてみる。

以下のようになる。

context.beginPath();
context.moveTo(0, 0);
context.quadraticCurveTo(500, 20, 300, 50);
context.stroke();

第一引数と第二引数で引っ張るイメージだ。


XMLと実体参照

■sample.xhtml

以下のように定義できる。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" 
[
    <!ENTITY phone "03-0123-5678">
]>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
<title>無題ドキュメント</title>
</head>

<body>
<p>&phone;</p>
</body>
</html>

拡張子はxhtmlにしMIMEタイプはapplication/xhtml+xmlとする。残念ながらIEでは動かない。

JavaScriptと正規表現

var r = /^([-+]?[0-9]*)\.?([0-9]*[1-9])?$/;

var a = r.exec (123.0450);
a[1];  // '123'
a[2];  // '045'

var b = r.exec (123.0);
b[1];  // '123'
b[2];  // undefined

3年前のdocumentから発掘。

APCをインストールする

pecl install apc

以下のエラーが出た。

Fatal error: Allowed memory size of 8388608 bytes exhausted

以下のコマンドを実行。

vi /usr/share/php/pearcmd.php

以下のラインを付加。

@ini_set('memory_limit', '16M');

もう一度実行。

pecl install apc

php.iniや/etc/php.d/apc.iniに以下のラインを追加する。

extension=apc.so

apacheを再起動する。

/etc/init.d/httpd restart

インストールが完了する。

■設定

php.iniや/etc/php.d/apc.iniに以下のラインを追加する。

apc.shm_size=64
apc.stat=FALSE

但し、設定はサーバなどの環境により調整しなければならない。