RSS Pipesã®è£œå®Œæ©Ÿèƒ½ã¨ã—ã¦ã®RSSリーダーをã€HTML5 Canvasã®ã¿ã‚’使ã£ã¦ã©ã“ã¾ã§ã‚¹ãƒžãƒ›ã‚¢ãƒ—リãŒä½œã‚Œã‚‹ã®ã‹æŒ‘戦ä¸ã§ã™ã€‚
GoogleリーダãŒãªããªã‚‹ã‹ã‚‰ã€ãれã®ä»£æ›¿ã¨ã—ã¦ä½œã‚ã†ã¨å§‹ã‚ã¾ã—ãŸãŒã€Googleãƒªãƒ¼ãƒ€ã®æœŸé™ã¾ã§ã«ã¯å®Œæˆã—ãã†ã«ã‚りã¾ã›ã‚“。
今日ã¯ã€RSSã®è¨˜äº‹ã®ãƒªãƒ³ã‚¯ã‚’é–‹ãæ©Ÿèƒ½ã‚’作りã¾ã—ãŸã€‚ Canvasã§ã¯HTMLã¯è¡¨ç¤ºã§ãã¾ã›ã‚“。ãã“ã§ã€Canvasã®å¤–å´ã«ç‹¬ç«‹ã—㦠iframeを使ã†ã“ã¨ã§è¡¨ç¤ºã—ã¾ã—ãŸã€‚ iframeã®è¡¨ç¤ºã¯jQueryを使ã„ã¾ã—ãŸã€‚KineticJSã®ã‚ˆã†ãªpure JavaScriptを使ã£ã¦ã„ã‚‹ã¨ã€DOMæ“作ã¯ã¡ã‚‡ã£ã¨å¤ã³ãŸã‚‚ã®ã«æ„Ÿã˜ã¾ã™ã€‚
ã•ã¦ã€RSSã®ãƒªãƒ³ã‚¯ã‚’é–‹ããŸã‚ã®ãƒœã‚¿ãƒ³ã‚‚作ã£ã¦ã¿ã¾ã—ãŸã€‚ å³ä¸Šã®æ–¹ã«çŸ¢å°ã®ã‚¢ã‚¤ã‚³ãƒ³ã‚’ç½®ã„ã¦ã€ãれを押ã™ã¨iframeãŒé–‹ãã¾ã™ã€‚ ãã®çŸ¢å°ã‚¢ã‚¤ã‚³ãƒ³ã§ã™ãŒã€Kineticã®shapeã§ä½œæˆã™ã‚‹ã®ã¯é¢å€’ã ã£ãŸã®ã§ã€inkscapeã§ä½œæˆã—ã¦SVG Dataã‚’Kineticã®pathã§èªã¿è¾¼ã¿ã¾ã—ãŸã€‚
コードã¯ã“ã‚“ãªæ„Ÿã˜ã§ã™ã€‚
var path = new Kinetic.Path({
x: 0,
y: -6,
data: 'M 23.618434,50.171286 41.144607,36.346769 23.23155,22.400304 l 0.0092,8.18132 c 0,0 -7.445838,-1.03921 -11.864782,3.095364 -4.4188829,4.134559 -4.3930939,13.742678 -4.3930939,13.742678 0,0 2.442808,-4.269676 6.9240349,-5.841822 4.481182,-1.572147 9.583341,-0.746586 9.583341,-0.746586 l 0.127874,9.340028 z',
fill: '#f0f0f0',
scale: 0.43
});
全コードã¯ã“ã¡ã‚‰ã§ã™ã€‚
https://github.com/dai-shi/canvas-rss-reader/
実行サンプルã¯ã“ã¡ã‚‰ã§ã™ã€‚
http://canvas-rss-reader.herokuapp.com/
æœªèªæ—¢èªã®æ©Ÿèƒ½ã¾ã§ã§ããŸã‚‰ã€ã¨ã‚Šã‚ãˆãšã¯ä½¿ãˆã‚‹ã‚ˆã†ã«ãªã‚‹ã‹ã¨æ€ã†ã®ã§ã™ãŒã€ã©ã†ã§ã—ょã†ã€‚