珍しいなぁと思ったのでメモがてらご紹介です。
HTML5のCanvasを使用してパターン背景を
生成出来る、というWebサービス。線を描いて
数枚重ね、パターンのような背景を作成する
ことが出来ます。まだ実用段階とは行きません
けど。
簡単にHTML5製の背景を作成出来るジェネレーターです。Canvasは非プログラマーにとっては若干ハードルが高い印象ですので、この手のジェネレーターで使い方を覚えていくのもいいかもしれません。
Patternizer
こんな感じ。線の太さ、角度などを調整し、複数の線の連続を重ねてパターンを生成します。
使い方はこんな感じ。直感で分かるんじゃないですかね。
使い方
まず、patternizer.jsというスクリプトを読み込みます。
<script src="js/patternizer.js"></script>
で、マークアップ
<canvas id="bgCanvas"></canvas> <div class="wrapper"> <div class="content-wrapper"> <!-- コンテンツ --> </div> </div>
canvasをfixed指定します。
#bgCanvas { position: fixed; } .wrapper { position: absolute; left: 0px; right: 0px; } .content-wrapper { width: 920px; margin: 40px auto; padding: 30px; background-color: #fff; }
あとは先ほど作ったジェネレーターで生成されたコードを使う。
<script> var bgCanvas = document.getElementById('bgCanvas'); function render() { bgCanvas.patternizer({ { stripes : [ { color: '#bebac2', rotation: 335, opacity: 50, mode: 'normal', width: 3, gap: 130, offset: 286 }, { color: '#bfbac2', rotation: 25, opacity: 50, mode: 'normal', width: 3, gap: 98, offset: 123 }, { color: '#3e122c', rotation: 25, opacity: 60, mode: 'normal', width: 100, gap: 100, offset: 156 }, { color: '#3e122c', rotation: 335, opacity: 60, mode: 'normal', width: 100, gap: 100, offset: 156 } ], bg : '#d1d1b6' }); } function onResize() { var buffer = 100; if (bgCanvas.width - window.innerWidth < buffer || bgCanvas.height - window.innerHeight < buffer) { bgCanvas.width = window.innerWidth + (buffer * 2); bgCanvas.height = window.innerHeight + (buffer * 2); render(); } } function init() { onResize(); window.addEventListener('resize', Cowboy.throttle(200, onResize), false); } init(); </script>
まぁ実用性はあんまり感じませんけど、勉強にはいいかもですね。以下よりどうぞ。