OSDN Git Service

updated file tree. working in opera11
authoritozyun <itozyun@git.sourceforge.jp>
Wed, 1 Feb 2012 13:08:54 +0000 (22:08 +0900)
committeritozyun <itozyun@git.sourceforge.jp>
Wed, 1 Feb 2012 13:08:54 +0000 (22:08 +0900)
162 files changed:
0.4.x/diary/diary.xsl
0.4.x/help/help.xsl
0.4.x/images/error.png [moved from 0.4.x/error.png with 100% similarity]
0.4.x/images/folder_album.png [moved from 0.4.x/folder_album.png with 100% similarity]
0.4.x/images/folder_general.png [moved from 0.4.x/folder_general.png with 100% similarity]
0.4.x/images/grid.gif [moved from 0.4.x/grid.gif with 100% similarity]
0.4.x/images/loading.gif [moved from 0.4.x/loading.gif with 100% similarity]
0.4.x/images/opacity0.gif [moved from 0.4.x/opacity0.gif with 100% similarity]
0.4.x/images/sprite.gif [moved from 0.4.x/sprite.gif with 100% similarity]
0.4.x/index.html
0.4.x/javascripts/common.js [moved from 0.4.x/common.js with 96% similarity]
0.4.x/javascripts/jquery-1.6.2.min.js [moved from 0.4.x/jquery-1.6.2.min.js with 100% similarity]
0.4.x/javascripts/system.js [moved from 0.4.x/system.js with 96% similarity]
0.4.x/javascripts/work.js [moved from 0.4.x/work.js with 93% similarity]
0.4.x/resource_pictures/1.gif [moved from 0.4.x/images/1.gif with 100% similarity]
0.4.x/resource_pictures/1.png [moved from 0.4.x/images/1.png with 100% similarity]
0.4.x/resource_pictures/10.gif [moved from 0.4.x/images/10.gif with 100% similarity]
0.4.x/resource_pictures/11.gif [moved from 0.4.x/images/11.gif with 100% similarity]
0.4.x/resource_pictures/12.gif [moved from 0.4.x/images/12.gif with 100% similarity]
0.4.x/resource_pictures/13.gif [moved from 0.4.x/images/13.gif with 100% similarity]
0.4.x/resource_pictures/14.gif [moved from 0.4.x/images/14.gif with 100% similarity]
0.4.x/resource_pictures/15.gif [moved from 0.4.x/images/15.gif with 100% similarity]
0.4.x/resource_pictures/16.gif [moved from 0.4.x/images/16.gif with 100% similarity]
0.4.x/resource_pictures/17.gif [moved from 0.4.x/images/17.gif with 100% similarity]
0.4.x/resource_pictures/1751.gif [moved from 0.4.x/images/1751.gif with 100% similarity]
0.4.x/resource_pictures/1752.gif [moved from 0.4.x/images/1752.gif with 100% similarity]
0.4.x/resource_pictures/1753.gif [moved from 0.4.x/images/1753.gif with 100% similarity]
0.4.x/resource_pictures/1754.gif [moved from 0.4.x/images/1754.gif with 100% similarity]
0.4.x/resource_pictures/18.gif [moved from 0.4.x/images/18.gif with 100% similarity]
0.4.x/resource_pictures/1876.gif [moved from 0.4.x/images/1876.gif with 100% similarity]
0.4.x/resource_pictures/1877.gif [moved from 0.4.x/images/1877.gif with 100% similarity]
0.4.x/resource_pictures/1878.gif [moved from 0.4.x/images/1878.gif with 100% similarity]
0.4.x/resource_pictures/1885.gif [moved from 0.4.x/images/1885.gif with 100% similarity]
0.4.x/resource_pictures/1886.gif [moved from 0.4.x/images/1886.gif with 100% similarity]
0.4.x/resource_pictures/1887.gif [moved from 0.4.x/images/1887.gif with 100% similarity]
0.4.x/resource_pictures/1891.gif [moved from 0.4.x/images/1891.gif with 100% similarity]
0.4.x/resource_pictures/1892.gif [moved from 0.4.x/images/1892.gif with 100% similarity]
0.4.x/resource_pictures/1893.gif [moved from 0.4.x/images/1893.gif with 100% similarity]
0.4.x/resource_pictures/1894.gif [moved from 0.4.x/images/1894.gif with 100% similarity]
0.4.x/resource_pictures/19.gif [moved from 0.4.x/images/19.gif with 100% similarity]
0.4.x/resource_pictures/1911.gif [moved from 0.4.x/images/1911.gif with 100% similarity]
0.4.x/resource_pictures/1946.gif [moved from 0.4.x/images/1946.gif with 100% similarity]
0.4.x/resource_pictures/1947.gif [moved from 0.4.x/images/1947.gif with 100% similarity]
0.4.x/resource_pictures/1987.gif [moved from 0.4.x/images/1987.gif with 100% similarity]
0.4.x/resource_pictures/1990.gif [moved from 0.4.x/images/1990.gif with 100% similarity]
0.4.x/resource_pictures/2.gif [moved from 0.4.x/images/2.gif with 100% similarity]
0.4.x/resource_pictures/20.gif [moved from 0.4.x/images/20.gif with 100% similarity]
0.4.x/resource_pictures/2084.gif [moved from 0.4.x/images/2084.gif with 100% similarity]
0.4.x/resource_pictures/21.gif [moved from 0.4.x/images/21.gif with 100% similarity]
0.4.x/resource_pictures/2153.gif [moved from 0.4.x/images/2153.gif with 100% similarity]
0.4.x/resource_pictures/2157.gif [moved from 0.4.x/images/2157.gif with 100% similarity]
0.4.x/resource_pictures/2158.gif [moved from 0.4.x/images/2158.gif with 100% similarity]
0.4.x/resource_pictures/2165.gif [moved from 0.4.x/images/2165.gif with 100% similarity]
0.4.x/resource_pictures/2168.gif [moved from 0.4.x/images/2168.gif with 100% similarity]
0.4.x/resource_pictures/22.gif [moved from 0.4.x/images/22.gif with 100% similarity]
0.4.x/resource_pictures/2276.gif [moved from 0.4.x/images/2276.gif with 100% similarity]
0.4.x/resource_pictures/2277.gif [moved from 0.4.x/images/2277.gif with 100% similarity]
0.4.x/resource_pictures/2278.gif [moved from 0.4.x/images/2278.gif with 100% similarity]
0.4.x/resource_pictures/2279.gif [moved from 0.4.x/images/2279.gif with 100% similarity]
0.4.x/resource_pictures/2287.gif [moved from 0.4.x/images/2287.gif with 100% similarity]
0.4.x/resource_pictures/2288.gif [moved from 0.4.x/images/2288.gif with 100% similarity]
0.4.x/resource_pictures/2299.gif [moved from 0.4.x/images/2299.gif with 100% similarity]
0.4.x/resource_pictures/23.gif [moved from 0.4.x/images/23.gif with 100% similarity]
0.4.x/resource_pictures/2312.gif [moved from 0.4.x/images/2312.gif with 100% similarity]
0.4.x/resource_pictures/2313.gif [moved from 0.4.x/images/2313.gif with 100% similarity]
0.4.x/resource_pictures/2314.gif [moved from 0.4.x/images/2314.gif with 100% similarity]
0.4.x/resource_pictures/24.gif [moved from 0.4.x/images/24.gif with 100% similarity]
0.4.x/resource_pictures/25.gif [moved from 0.4.x/images/25.gif with 100% similarity]
0.4.x/resource_pictures/26.gif [moved from 0.4.x/images/26.gif with 100% similarity]
0.4.x/resource_pictures/27.gif [moved from 0.4.x/images/27.gif with 100% similarity]
0.4.x/resource_pictures/28.gif [moved from 0.4.x/images/28.gif with 100% similarity]
0.4.x/resource_pictures/29.gif [moved from 0.4.x/images/29.gif with 100% similarity]
0.4.x/resource_pictures/3.gif [moved from 0.4.x/images/3.gif with 100% similarity]
0.4.x/resource_pictures/30.gif [moved from 0.4.x/images/30.gif with 100% similarity]
0.4.x/resource_pictures/31.gif [moved from 0.4.x/images/31.gif with 100% similarity]
0.4.x/resource_pictures/32.gif [moved from 0.4.x/images/32.gif with 100% similarity]
0.4.x/resource_pictures/33.gif [moved from 0.4.x/images/33.gif with 100% similarity]
0.4.x/resource_pictures/34.gif [moved from 0.4.x/images/34.gif with 100% similarity]
0.4.x/resource_pictures/35.gif [moved from 0.4.x/images/35.gif with 100% similarity]
0.4.x/resource_pictures/36.gif [moved from 0.4.x/images/36.gif with 100% similarity]
0.4.x/resource_pictures/37.gif [moved from 0.4.x/images/37.gif with 100% similarity]
0.4.x/resource_pictures/38.gif [moved from 0.4.x/images/38.gif with 100% similarity]
0.4.x/resource_pictures/39.gif [moved from 0.4.x/images/39.gif with 100% similarity]
0.4.x/resource_pictures/4.gif [moved from 0.4.x/images/4.gif with 100% similarity]
0.4.x/resource_pictures/40.gif [moved from 0.4.x/images/40.gif with 100% similarity]
0.4.x/resource_pictures/41.gif [moved from 0.4.x/images/41.gif with 100% similarity]
0.4.x/resource_pictures/42.gif [moved from 0.4.x/images/42.gif with 100% similarity]
0.4.x/resource_pictures/43.gif [moved from 0.4.x/images/43.gif with 100% similarity]
0.4.x/resource_pictures/44.gif [moved from 0.4.x/images/44.gif with 100% similarity]
0.4.x/resource_pictures/45.gif [moved from 0.4.x/images/45.gif with 100% similarity]
0.4.x/resource_pictures/46.gif [moved from 0.4.x/images/46.gif with 100% similarity]
0.4.x/resource_pictures/47.gif [moved from 0.4.x/images/47.gif with 100% similarity]
0.4.x/resource_pictures/48.gif [moved from 0.4.x/images/48.gif with 100% similarity]
0.4.x/resource_pictures/49.gif [moved from 0.4.x/images/49.gif with 100% similarity]
0.4.x/resource_pictures/5.gif [moved from 0.4.x/images/5.gif with 100% similarity]
0.4.x/resource_pictures/50.gif [moved from 0.4.x/images/50.gif with 100% similarity]
0.4.x/resource_pictures/51.gif [moved from 0.4.x/images/51.gif with 100% similarity]
0.4.x/resource_pictures/52.gif [moved from 0.4.x/images/52.gif with 100% similarity]
0.4.x/resource_pictures/6.gif [moved from 0.4.x/images/6.gif with 100% similarity]
0.4.x/resource_pictures/7.gif [moved from 0.4.x/images/7.gif with 100% similarity]
0.4.x/resource_pictures/8.gif [moved from 0.4.x/images/8.gif with 100% similarity]
0.4.x/resource_pictures/9.gif [moved from 0.4.x/images/9.gif with 100% similarity]
0.4.x/resource_pictures/images.json [moved from 0.4.x/images/images.json with 100% similarity]
0.4.x/resource_pictures/original_pictures.json [moved from 0.4.x/images/original_pictures.json with 100% similarity]
0.4.x/resource_pictures/tag-list.json [moved from 0.4.x/images/tag-list.json with 100% similarity]
0.4.x/sitemap/sitemap.xsl
0.4.x/stylesheets/common.css [moved from 0.4.x/common.css with 92% similarity]
0.4.x/stylesheets/work.css [moved from 0.4.x/work.css with 94% similarity]
0.4.x/system_picture/_w0.gif [moved from 0.4.x/balloon/_w0.gif with 100% similarity]
0.4.x/system_picture/_w0_b1.gif [moved from 0.4.x/balloon/_w0_b1.gif with 100% similarity]
0.4.x/system_picture/_w1.gif [moved from 0.4.x/balloon/_w1.gif with 100% similarity]
0.4.x/system_picture/_w10.gif [moved from 0.4.x/balloon/_w10.gif with 100% similarity]
0.4.x/system_picture/_w10_b1.gif [moved from 0.4.x/balloon/_w10_b1.gif with 100% similarity]
0.4.x/system_picture/_w11.gif [moved from 0.4.x/balloon/_w11.gif with 100% similarity]
0.4.x/system_picture/_w11_b1.gif [moved from 0.4.x/balloon/_w11_b1.gif with 100% similarity]
0.4.x/system_picture/_w12.gif [moved from 0.4.x/balloon/_w12.gif with 100% similarity]
0.4.x/system_picture/_w12_b1.gif [moved from 0.4.x/balloon/_w12_b1.gif with 100% similarity]
0.4.x/system_picture/_w13.gif [moved from 0.4.x/balloon/_w13.gif with 100% similarity]
0.4.x/system_picture/_w13_b1.gif [moved from 0.4.x/balloon/_w13_b1.gif with 100% similarity]
0.4.x/system_picture/_w14.gif [moved from 0.4.x/balloon/_w14.gif with 100% similarity]
0.4.x/system_picture/_w14_b1.gif [moved from 0.4.x/balloon/_w14_b1.gif with 100% similarity]
0.4.x/system_picture/_w15.gif [moved from 0.4.x/balloon/_w15.gif with 100% similarity]
0.4.x/system_picture/_w15_b1.gif [moved from 0.4.x/balloon/_w15_b1.gif with 100% similarity]
0.4.x/system_picture/_w16.gif [moved from 0.4.x/balloon/_w16.gif with 100% similarity]
0.4.x/system_picture/_w16_b1.gif [moved from 0.4.x/balloon/_w16_b1.gif with 100% similarity]
0.4.x/system_picture/_w17.gif [moved from 0.4.x/balloon/_w17.gif with 100% similarity]
0.4.x/system_picture/_w17_b1.gif [moved from 0.4.x/balloon/_w17_b1.gif with 100% similarity]
0.4.x/system_picture/_w18.gif [moved from 0.4.x/balloon/_w18.gif with 100% similarity]
0.4.x/system_picture/_w18_b1.gif [moved from 0.4.x/balloon/_w18_b1.gif with 100% similarity]
0.4.x/system_picture/_w19.gif [moved from 0.4.x/balloon/_w19.gif with 100% similarity]
0.4.x/system_picture/_w19_b1.gif [moved from 0.4.x/balloon/_w19_b1.gif with 100% similarity]
0.4.x/system_picture/_w1_b1.gif [moved from 0.4.x/balloon/_w1_b1.gif with 100% similarity]
0.4.x/system_picture/_w2.gif [moved from 0.4.x/balloon/_w2.gif with 100% similarity]
0.4.x/system_picture/_w20.gif [moved from 0.4.x/balloon/_w20.gif with 100% similarity]
0.4.x/system_picture/_w20_b1.gif [moved from 0.4.x/balloon/_w20_b1.gif with 100% similarity]
0.4.x/system_picture/_w21.gif [moved from 0.4.x/balloon/_w21.gif with 100% similarity]
0.4.x/system_picture/_w21_b1.gif [moved from 0.4.x/balloon/_w21_b1.gif with 100% similarity]
0.4.x/system_picture/_w22.gif [moved from 0.4.x/balloon/_w22.gif with 100% similarity]
0.4.x/system_picture/_w22_b1.gif [moved from 0.4.x/balloon/_w22_b1.gif with 100% similarity]
0.4.x/system_picture/_w23.gif [moved from 0.4.x/balloon/_w23.gif with 100% similarity]
0.4.x/system_picture/_w23_b1.gif [moved from 0.4.x/balloon/_w23_b1.gif with 100% similarity]
0.4.x/system_picture/_w2_b1.gif [moved from 0.4.x/balloon/_w2_b1.gif with 100% similarity]
0.4.x/system_picture/_w3.gif [moved from 0.4.x/balloon/_w3.gif with 100% similarity]
0.4.x/system_picture/_w3_b1.gif [moved from 0.4.x/balloon/_w3_b1.gif with 100% similarity]
0.4.x/system_picture/_w4.gif [moved from 0.4.x/balloon/_w4.gif with 100% similarity]
0.4.x/system_picture/_w4_b1.gif [moved from 0.4.x/balloon/_w4_b1.gif with 100% similarity]
0.4.x/system_picture/_w5.gif [moved from 0.4.x/balloon/_w5.gif with 100% similarity]
0.4.x/system_picture/_w5_b1.gif [moved from 0.4.x/balloon/_w5_b1.gif with 100% similarity]
0.4.x/system_picture/_w6.gif [moved from 0.4.x/balloon/_w6.gif with 100% similarity]
0.4.x/system_picture/_w6_b1.gif [moved from 0.4.x/balloon/_w6_b1.gif with 100% similarity]
0.4.x/system_picture/_w7.gif [moved from 0.4.x/balloon/_w7.gif with 100% similarity]
0.4.x/system_picture/_w7_b1.gif [moved from 0.4.x/balloon/_w7_b1.gif with 100% similarity]
0.4.x/system_picture/_w8.gif [moved from 0.4.x/balloon/_w8.gif with 100% similarity]
0.4.x/system_picture/_w8_b1.gif [moved from 0.4.x/balloon/_w8_b1.gif with 100% similarity]
0.4.x/system_picture/_w9.gif [moved from 0.4.x/balloon/_w9.gif with 100% similarity]
0.4.x/system_picture/_w9_b1.gif [moved from 0.4.x/balloon/_w9_b1.gif with 100% similarity]
0.4.x/wiki/wiki.css
0.4.x/wiki/wiki.xml [deleted file]
0.4.x/wiki/wiki.xsl
0.4.x/wiki/wiki_120117.xml [deleted file]
0.4.x/wiki/wiki_120119.xml [deleted file]
0.4.x/work.html

index 3d94cf4..95e2221 100644 (file)
@@ -32,7 +32,7 @@
                        </title>\r
                        <link rel='index' title='index | pettanR' href='http://pettanr.sourceforge.jp/index.html' />\r
                        <link rel='start' title='pettanR' href='http://pettanr.sourceforge.jp/' />\r
-                       <link rel="stylesheet" type="text/css" href="../common.css" />\r
+                       <link rel="stylesheet" type="text/css" href="../stylesheets/common.css" />\r
                </head>\r
                <body>\r
                        <div id="general-content">\r
                                        </div>\r
                                </div>\r
                        </div>\r
-                       <script type="text/javascript" src="../common.js"></script>\r
+                       <script type="text/javascript" src="../javascripts/common.js"></script>\r
                </body>\r
        </html>\r
 </xsl:template>\r
index 47fc6ea..1bdcc14 100644 (file)
@@ -32,7 +32,7 @@
                        </title>\r
                        <link rel='index' title='index | pettanR' href='http://pettanr.sourceforge.jp/index.html' />\r
                        <link rel='start' title='pettanR' href='http://pettanr.sourceforge.jp/' />\r
-                       <link rel="stylesheet" type="text/css" href="../common.css" />\r
+                       <link rel="stylesheet" type="text/css" href="../stylesheets/common.css" />\r
                </head>\r
                <body>\r
                        <div id="general-content">\r
                                        </div>\r
                                </div>\r
                        </div>\r
-                       <script type="text/javascript" src="../common.js"></script>\r
+                       <script type="text/javascript" src="../javascripts/common.js"></script>\r
                </body>\r
        </html>\r
 </xsl:template>\r
similarity index 100%
rename from 0.4.x/error.png
rename to 0.4.x/images/error.png
similarity index 100%
rename from 0.4.x/grid.gif
rename to 0.4.x/images/grid.gif
similarity index 100%
rename from 0.4.x/loading.gif
rename to 0.4.x/images/loading.gif
similarity index 100%
rename from 0.4.x/opacity0.gif
rename to 0.4.x/images/opacity0.gif
similarity index 100%
rename from 0.4.x/sprite.gif
rename to 0.4.x/images/sprite.gif
index 4d59e13..5308ade 100644 (file)
@@ -7,7 +7,7 @@
            <meta http-equiv="Content-Style-Type" content="text/css">\r
            <meta http-equiv="imagetoolbar" content="no">\r
         <title>pettanR</title>\r
-               <link rel="stylesheet" type="text/css" href="common.css">\r
+               <link rel="stylesheet" type="text/css" href="stylesheets/common.css">\r
        </head>\r
        <body>\r
                <div id="general-content">\r
@@ -95,6 +95,6 @@
                                <div id="copyright">Copyright &copy; 2011-2012 pettanR team, some rights reserved.</div>\r
                        </div>\r
                </div>\r
-               <script type="text/javascript" src="common.js"></script>\r
+               <script type="text/javascript" src="javascripts/common.js"></script>\r
     </body>\r
 </html>
\ No newline at end of file
similarity index 96%
rename from 0.4.x/common.js
rename to 0.4.x/javascripts/common.js
index 5424edb..bdc7d96 100644 (file)
@@ -570,7 +570,7 @@ pettanr.view = ( function(){
                                        el.style.position = 'absolute';\r
                                        el.style.left = el.style.top = '0px';\r
                                        el.style.width = el.style.height ='100%';\r
-                                       el.style.overflow = 'hidden';\r
+                                       //el.style.overflow = 'hidden';\r
                                        el.hspace = el.vspace = el.marginheight = el.marginwidth = 0;\r
                                        \r
                                        _body.appendChild(el);\r
@@ -1657,7 +1657,7 @@ pettanr.balloon = ( function() {
        if( IS_VML === true && pettanr.ua.VML === false) vectorEnabled = false;\r
 \r
        var XBROWSER_BALLOON_CLASS = function( w, h, a){\r
-               var balloonElm = vectorEnabled === true ? ELM_BALLOON_ORIGIN.cloneNode( true) : document.createElement( 'IMG'), // pettanr.imageに変更\r
+               var balloonElm = vectorEnabled === true ? ELM_BALLOON_ORIGIN.cloneNode( true) : document.createElement( 'img'), // pettanr.imageに変更\r
                        path = balloonElm.getElementsByTagName( 'path')[ 0],\r
                        shape = balloonElm.getElementsByTagName( 'shape')[ 0],\r
                        cos = Math.cos, sin = Math.sin,\r
@@ -1759,7 +1759,7 @@ pettanr.balloon = ( function() {
                function balloonUrlBuilder( _a){\r
                        var d = 360 /NUM_BALLOON_IMAGE;\r
                        _a += 90 +d /2;\r
-                       return [ 'balloon\/_w', _a < 360 -d /2 ? floor( _a /d) : 0, '.gif'].join( '');\r
+                       return [ 'system_picture\/_w', _a < 360 -d /2 ? floor( _a /d) : 0, '.gif'].join( '');\r
                }\r
                return {\r
                        elm: balloonElm,\r
similarity index 96%
rename from 0.4.x/system.js
rename to 0.4.x/javascripts/system.js
index 973291b..f718bb5 100644 (file)
@@ -277,12 +277,14 @@ pettanr.file = ( function(){
                                _rFolderData,
                                _artistFolderData, _artistFolder,
                                _comicFolderData, _comicFolder,
-                               _authorFolderData, _authorFolder;
+                               _authorFolderData, _authorFolder,
+                               _reaourceID = buildResourceID( _data.json, _childType);
 
                        for(var i=0; i<l; ++i){
-                               _newData = buildFileData( _json[ i], _data.json, _childType);
-                               if( _newData.rID){
-                                       _rFolderData = getFolderDataByResourceID( buildResourceID( _data.json, _childType), _childType, _file);
+                               _newData = buildFileData( _json[ i], _data.json, _data, _childType);
+
+                               if( _reaourceID !== null){
+                                       _rFolderData = getFolderDataByResourceID( _reaourceID, _childType, _file);
                                        _rFolderData.children.push( _newData);
                                }
                                if( _newData.artist){
@@ -317,29 +319,20 @@ pettanr.file = ( function(){
                                _data.state = FILE_STATE_IS_ERROR;
                        }
                }
-               function buildFileData( _data, _url, _type){
-                       if( !_data.name){
-                               _data.name = [ _data.id, _data.ext].join( '.');
-                       }
+               function buildFileData( _data, _url, _parent, _type){
                        _data.type = _type;
-                       
-                       if( _type === FILE_TYPE_IS_IMAGE){
-                               _data.thumbnail = 'thumbnail/' + _data.name;
-                       }
-                       
-                       var _rID = buildResourceID( _url, _type);
-                       if( _rID !== null){
-                               _data.rID = _rID + _data.id;
-                               FILEDATA_HAS_rID_RESISTER[ _data.rID] = _data;
+
+                       if( _type === FILE_TYPE_IS_PANEL){
+                               _data.comicFileData = _parent;
                        }
-                       
+
                        FILEDATA_RESITER.push( _data);
                        
                        return _data;
                }
                function buildResourceID( _url, _type){
                        if( _url === null) return null;
-                       var _typeStr;
+                       var _typeStr = null;
                        
                        if( typeof _type !== 'number'){
                                _typeStr = _type
@@ -353,6 +346,8 @@ pettanr.file = ( function(){
                        if( _type === FILE_TYPE_IS_PANEL){
                                _typeStr = 'panel';
                        }
+                       if( _typeStr === null) return null;
+                       
                        return [ _url.replace(/https?:\/\/([^\/]*).*/, '$1'), _typeStr].join('_');
                }
        /**
@@ -380,7 +375,7 @@ pettanr.file = ( function(){
                        if( opt_name === FILE_TYPE_IS_PANEL){
                                _fileName = 'Panels';
                        } else {
-                               _fileName = opt_name.toString();
+                               _fileName = typeof opt_name;
                        }
                        
                        var _newData = {
@@ -507,6 +502,8 @@ pettanr.file = ( function(){
                        data.children = [];
                }
                var TYPE = data.type,
+                       name = data.name || null,
+                       thumbnail = null,
                        uid = FILE_CONTROLER.getUID( data),
                        CHILDREN = data.children,
                        instance;
@@ -528,9 +525,8 @@ pettanr.file = ( function(){
                        }
                );
                function destroy(){
-                       CHILDREN.splice( 0, CHILDREN.length);
-                       parentFile = data = CHILDREN = null;
-                       delete this.destroy;                    
+                       name = thumbnail = parentFile = data = CHILDREN = null;
+                       
                }
                function updateParent( _parent){
                        parentFile = _parent;
@@ -545,10 +541,24 @@ pettanr.file = ( function(){
                        },
                        TYPE: function(){ return TYPE;},
                        getName: function(){
-                               return data.name || 'no_name';
+                               if( name !== null) return name;
+                               if( data.name){
+                                       return data.name;
+                               }
+                               if( TYPE === FILE_TYPE_IS_IMAGE){
+                                       name = [ data.id, data.ext].join( '.');
+                               } else
+                               if( TYPE === FILE_TYPE_IS_PANEL){
+                                       name = data.comic.title + ' | ' +data.t;
+                               }
+                               return name || 'no_name';
                        },
                        getThumbnail: function(){
-                               return data.thumbnail || null;
+                               if( thumbnail !== null) return thumbnail;
+                               if( TYPE === FILE_TYPE_IS_IMAGE){
+                                       thumbnail = [ 'thumbnail/', data.id, '.', data.ext].join( '');
+                               }
+                               return thumbnail || null;
                        },
                        getUID: function(){
                                return uid;
similarity index 93%
rename from 0.4.x/work.js
rename to 0.4.x/javascripts/work.js
index 99e0025..a56e152 100644 (file)
@@ -519,7 +519,7 @@ pettanr.editor = ( function(){
                        winW,\r
                        onEnterInterval = null;\r
                \r
-               var BASE_PATH = pettanr.LOCAL === false ? 'http://pettan.heroku.com/images/' : 'images/',\r
+               var BASE_PATH = pettanr.LOCAL === false ? 'http://pettan.heroku.com/resource_pictures/' : 'resource_pictures/',\r
                        THUMB_PATH = BASE_PATH, // + 'thumbnail/',\r
                        LIMIT_FILESIZE = 1024 * 10; // 10KB\r
                var IMAGE_DATA = {\r
@@ -1593,7 +1593,7 @@ pettanr.editor = ( function(){
                                visible = !visible;\r
                                \r
                                if( visible === true && !ELM_GRID.style.backgroundImage){\r
-                                       ELM_GRID.style.backgroundImage = "url('grid.gif')";\r
+                                       ELM_GRID.style.backgroundImage = "url('images/grid.gif')";\r
                                }\r
                                return visible;                         \r
                        }\r
@@ -1641,6 +1641,7 @@ pettanr.editor = ( function(){
 /*\r
  * PANEL_CONTROL\r
  * panel-border の表示と onPanelResize の通知.\r
+ * panel drag.\r
  * \r
  */\r
        var PANEL_CONTROL = ( function(){\r
@@ -1818,8 +1819,8 @@ pettanr.editor = ( function(){
                        }\r
                }\r
        };\r
-       var     PANEL_RESIZER_TOP = PanelResizerClass.apply( {}, [ 'panel-resizer-top', true]),\r
-               PANEL_RESIZER_BOTTOM = PanelResizerClass.apply( {}, [ 'panel-resizer-bottom', false]);\r
+       var     PANEL_RESIZER_TOP = new PanelResizerClass( 'panel-resizer-top', true),\r
+               PANEL_RESIZER_BOTTOM = new PanelResizerClass( 'panel-resizer-bottom', false);\r
                \r
        PanelResizerClass = undefined;\r
 \r
@@ -2116,6 +2117,7 @@ pettanr.editor = ( function(){
                        baseX, baseY, baseW, baseH,\r
                        currentX, currentY, currentW, currentH,\r
                        offsetX, offsetY,\r
+                       lock = false,\r
                        error = 0;\r
                \r
                function draw( _x, _y, _w, _h){\r
@@ -2234,24 +2236,23 @@ pettanr.editor = ( function(){
                                var com = RESIZE_WORK_ARRAY[ currentIndex],\r
                                        moveX = _mouseX -offsetX,\r
                                        moveY = _mouseY -offsetY,\r
+                                       _updated = moveX !== 0 || moveY !== 0,\r
                                        _x, _y, _w, _h,\r
-                                       _updated,\r
                                        _thisError = 0;\r
                                        \r
                                var _memoryX = 0,\r
-                                       _memoryY = 0;\r
+                                       _memoryY = 0,\r
+                                       _momoryW = 0,\r
+                                       _momoryH = 0;\r
                                /*\r
                                 * Opera 11+ often forget values, why ??
                                 */\r
                                while( _x === undefined || _y === undefined || _w === undefined || _h === undefined){\r
-                                       com = RESIZE_WORK_ARRAY[ currentIndex];\r
-                                       moveX = _mouseX -offsetX;\r
-                                       moveY = _mouseY -offsetY;\r
-                                       _x = baseX +moveX *com.x;\r
-                                       _y = baseY +moveY *com.y;\r
-                                       _w = baseW +moveX *com.w;\r
-                                       _h = baseH +moveY *com.h;\r
-                                       _updated = moveX !== 0 || moveY !== 0;\r
+                                       _x = _x !== undefined ? _x : baseX +moveX *com.x;\r
+                                       _y = _y !== undefined ? _y : baseY +moveY *com.y;\r
+                                       _w = _w !== undefined ? _w : baseW +moveX *com.w;\r
+                                       _h = _h !== undefined ? _h : baseH +moveY *com.h;\r
+                                       error += _thisError === 0 ? 0 : 1;\r
                                        ++_thisError;\r
                                        if( _thisError > 9999){\r
                                                ++error\r
@@ -2266,10 +2267,16 @@ pettanr.editor = ( function(){
                                } else \r
                                if( _w >= -MIN_OBJECT_SIZE && _h >= -MIN_OBJECT_SIZE){\r
                                        //return;\r
-                                       _w = _w < MIN_OBJECT_SIZE ? MIN_OBJECT_SIZE : _w;\r
-                                       _h = _h < MIN_OBJECT_SIZE ? MIN_OBJECT_SIZE : _h;\r
-                                       _x = currentX;\r
-                                       _y = currentY;\r
+                                       if( _w < MIN_OBJECT_SIZE){\r
+                                               //_x += Math.abs( MIN_OBJECT_SIZE -_w);\r
+                                               _x = currentX;\r
+                                               _w = MIN_OBJECT_SIZE;\r
+                                       }\r
+                                       if( _h < MIN_OBJECT_SIZE){\r
+                                               //_y += Math.abs( MIN_OBJECT_SIZE -_h);\r
+                                               _y = currentY;\r
+                                               _h = MIN_OBJECT_SIZE;\r
+                                       }\r
                                } else \r
                                if( currentElement.type === COMIC_ELEMENT_TYPE_TEXT){\r
                                        return;\r
@@ -2343,6 +2350,13 @@ pettanr.editor = ( function(){
                                        currentElement.animate( startX, startY, startW, startH, startFilpV, startFilpH) :\r
                                        currentElement.animate( startX, startY, startW, startH, angle);\r
                        },\r
+                       lock: function( _lock){\r
+                               if( _lock !== undefined){\r
+                                       elmResizerContainerStyle.borderColor = _lock === true ? 'blue' : '';\r
+                                       lock = _lock;\r
+                               }\r
+                               return lock;\r
+                       },\r
                        onShiftUpdate: update,\r
                        onCtrlUpdate: update\r
                }\r
@@ -2544,6 +2558,24 @@ pettanr.editor = ( function(){
                                }\r
                                return _h +HIT_AREA *2;\r
                        },\r
+                       hitTest: function( _mouseX, _mouseY, _comicElement){\r
+                               var _x, _y, _w, _h;\r
+                               if( _comicElement === currentElement){\r
+                                       var _consoleX = CONSOLE_CONTROLER.x();\r
+                                       _x = currentx +( _consoleX < 0 ? _consoleX : 0) -HIT_AREA;\r
+                                       _y = currenty -HIT_AREA;\r
+                                       var _consoleW = CONSOLE_CONTROLER.w();\r
+                                       _w = ( _consoleW < currentw ? currentw : _consoleW) +HIT_AREA *2;\r
+                                       var _consoleY = CONSOLE_CONTROLER.y();\r
+                                       _h = ( _consoleY < currenth ? currenth : _consoleY +CONSOLE_CONTROLER.h()) +HIT_AREA *2;\r
+                               } else {\r
+                                       _x = _comicElement.x -HIT_AREA;\r
+                                       _y = _comicElement.y -HIT_AREA;\r
+                                       _w = _comicElement.w +HIT_AREA *2;\r
+                                       _h = _comicElement.h +HIT_AREA *2;\r
+                               }\r
+                               return _x <= _mouseX && _mouseX <= _x + _w && _y <= _mouseY && _mouseY <= _y + _h;\r
+                       },\r
                        onMouseDown: function( _currentElement, _mouseX, _mouseY){\r
                                //show( _currentElement);\r
                                if( currentIsTextElement === true && TAIL_OPERATOR.onStart( _currentElement, _mouseX, _mouseY) === true){\r
@@ -2593,6 +2625,7 @@ pettanr.editor = ( function(){
                        hitareaY: function(){ return OPERATOR.hitareaY( this, this.y);},\r
                        hitareaW: function(){ return OPERATOR.hitareaW( this, this.w);},\r
                        hitareaH: function(){ return OPERATOR.hitareaH( this, this.h);},\r
+                       hitTest: function( _mouseX, _mouseY){ return OPERATOR.hitTest(  _mouseX, _mouseY, this);},\r
                        shift: function( _shiftX, _shiftY){\r
                                update( this.x +_shiftX, this.y +_shiftY);\r
                        },\r
@@ -2640,8 +2673,11 @@ pettanr.editor = ( function(){
                                top:    y,\r
                                width:  w,\r
                                height: h\r
-                       }, 250, function(){ reversibleImage.resize( flipH * w, flipV * h);});\r
-                       animate !== true && reversibleImage.resize( flipH * w, flipV * h);\r
+                       }, 250, onAnimeComplete);\r
+                       animate !== true && onAnimeComplete();\r
+               }\r
+               function onAnimeComplete(){\r
+                       reversibleImage.resize( flipH * w, flipV * h);\r
                }\r
                \r
                function updateUrl( _url){\r
@@ -2660,7 +2696,7 @@ pettanr.editor = ( function(){
                        reversibleImage = _reversibleImage;\r
                }\r
                return pettanr.util.extend(\r
-                       AbstractComicElement.apply( this, [ JQ_WRAPPER, COMIC_ELEMENT_TYPE_IMAGE, update, x, y, w, h, z, timing]),\r
+                       new AbstractComicElement( JQ_WRAPPER, COMIC_ELEMENT_TYPE_IMAGE, update, x, y, w, h, z, timing),\r
                        {\r
                                init: function(){\r
                                        instance = this;\r
@@ -2814,7 +2850,7 @@ pettanr.editor = ( function(){
                }\r
                \r
                return pettanr.util.extend(\r
-                       AbstractComicElement.apply( this, [ JQ_WRAPPER, COMIC_ELEMENT_TYPE_TEXT, update, x, y, w, h, z, timing]),\r
+                       new AbstractComicElement( JQ_WRAPPER, COMIC_ELEMENT_TYPE_TEXT, update, x, y, w, h, z, timing),\r
                        {\r
                                init: function(){\r
                                        instance = this;\r
@@ -2908,6 +2944,8 @@ pettanr.editor = ( function(){
                var     SAVE = HISTORY.saveState,\r
                        ELM_CONTAINER = document.getElementById( 'comic-element-container'),\r
                        currentElement = null,\r
+                       currentLockTest = false,\r
+                       currentLock = false,\r
                        panelX, panelY, panelW, panelH,\r
                        startX, startY;\r
        \r
@@ -3021,9 +3059,9 @@ pettanr.editor = ( function(){
                }\r
                \r
                return {\r
-                       init: function( _x, _y, _w, _h){\r
+                       init: function(){\r
                                \r
-                               appendComicElement( ImageElementClass.apply( {}, [ 'images/13.gif', 'penchan', 10, 10, 0, 100, 140, 0]));\r
+                               appendComicElement( ImageElementClass.apply( {}, [ 'resource_pictures/13.gif', 'penchan', 10, 10, 0, 100, 140, 0]));\r
                                appendComicElement( TextElementClass.apply( {}, [ 0, 270, 'Hello', 50, 70, 1, 200, 160, 1]));\r
                        /*\r
                         * \r
@@ -3060,50 +3098,54 @@ pettanr.editor = ( function(){
                        },\r
                        onMouseMove: function( _mouseX, _mouseY){\r
                                var l = COMIC_ELEMENT_ARRAY.length,\r
-                                       _X = _mouseX -panelX,\r
-                                       _Y = _mouseY -panelY,\r
-                                       _elm, _x, _y;\r
+                                       _x = _mouseX -panelX,\r
+                                       _y = _mouseY -panelY,\r
+                                       _elm = currentElement;\r
                                        \r
-                               if( currentElement !== null){\r
-                                       if( currentElement.busy() === true){\r
-                                               currentElement.onMouseMove( _X, _Y);\r
+                               if( _elm !== null){\r
+                                       currentLockTest = currentLockTest === true && _x === 0 && _y === 0;\r
+                                       if( _elm.busy() === true){\r
+                                               _elm.onMouseMove( _x, _y);\r
                                                return true;\r
                                        }\r
-                                       _x = currentElement.hitareaX();\r
-                                       _y = currentElement.hitareaY();\r
-                                       if( _x <= _X && _y <= _Y && _x + currentElement.hitareaW() >= _X && _y +currentElement.hitareaH() >= _Y){\r
-                                               currentElement.onMouseMove( _X, _Y); // cursor\r
+                                       if( _elm.hitTest( _x, _y) === true){\r
+                                               _elm.onMouseMove( _x, _y); // cursor\r
+                                               return true;\r
+                                       }\r
+                                       if( currentLock === true){\r
+                                               currentLockTest = true;\r
                                                return true;\r
                                        }\r
                                }\r
                                for( var i=0; i<l; i++){\r
                                        _elm = COMIC_ELEMENT_ARRAY[ i];\r
-                                       _x = _elm.hitareaX();\r
-                                       _y = _elm.hitareaY();\r
                                        // hitTest\r
-                                       if( _x <= _X && _y <= _Y && _x + _elm.hitareaW() >= _X && _y +_elm.hitareaH() >= _Y){\r
+                                       if( _elm.hitTest( _x, _y) === true){\r
+                                               _elm.onMouseMove( _x, _y); // cursor\r
+                                               log.html( [ _x, _y, i].join( ','));\r
                                                currentElement = _elm;\r
-                                               currentElement.onMouseMove( _X, _Y); // cursor\r
-                                               log.html( [ _X, _Y, _x, _y, i].join( ','));\r
                                                return true;\r
                                        }\r
                                }\r
                                currentElement = null;                                                  \r
                                COMIC_ELEMENT_OPERATION_MANAGER.hide();\r
-                               log.html( [ _X, _Y, _x, _y].join( ','));\r
+                               log.html( [ _x, _y].join( ','));\r
                                return false;\r
                        },\r
                        onMouseUp: function( _mouseX, _mouseY){\r
                                var ret = currentElement !== null && currentElement.busy() === true;\r
                                ret === true && currentElement.onMouseUp( _mouseX -startX || panelX, _mouseY -startY || panelY);\r
-                               startX = startY = NaN;\r
+                               RESIZE_OPERATOR.lock( currentLockTest);\r
+                               currentLock = currentLockTest;\r
                                return ret;\r
                        },\r
                        onMouseDown: function( _mouseX, _mouseY){\r
                                startX = panelX;\r
                                startY = panelY;\r
-                               currentElement !== null && currentElement.onMouseDown( _mouseX -startX, _mouseY -startY);\r
-                               return currentElement !== null;\r
+                               if( currentElement === null) return false\r
+                               currentElement.onMouseDown( _mouseX -startX, _mouseY -startY);\r
+                               currentLockTest = true;\r
+                               return true;\r
                        },\r
                        busy: function(){\r
                                return currentElement !== null;\r
index 75eeb53..9fbe5f0 100644 (file)
@@ -23,7 +23,7 @@
                        <title>sitemap | pettanR</title>\r
                        <link rel='index' title='index | pettanR' href='http://pettanr.sourceforge.jp/index.html' />\r
                        <link rel='start' title='pettanR' href='http://pettanr.sourceforge.jp/' />\r
-                       <link rel="stylesheet" type="text/css" href="../common.css" />\r
+                       <link rel="stylesheet" type="text/css" href="../stylesheets/common.css" />\r
                </head>\r
                <body>\r
                        <div id="general-content">\r
                                        </div>\r
                                </div>\r
                        </div>\r
-                       <script type="text/javascript" src="../common.js"></script>\r
+                       <script type="text/javascript" src="../javascripts/common.js"></script>\r
                </body>\r
        </html>\r
 </xsl:template>\r
similarity index 92%
rename from 0.4.x/common.css
rename to 0.4.x/stylesheets/common.css
index b1cabcb..f7c743f 100644 (file)
@@ -218,8 +218,9 @@ version: 2.7.0
 /*  Button\r
 --------------------------------------------------------------------------------------*/\r
        .button {\r
-               border:                                 1px outset #ccc;\r
-               background-color:               #eee;\r
+               border:                                 1px solid;\r
+               background:                             -moz-linear-gradient(center top , #F9F9F9, #E3E3E3) repeat scroll 0 0 transparent;\r
+               border-color:                   #ccc #bbb #aaa;\r
                color:                                  #666;\r
                font-weight:                    bold;\r
                text-align:                             center;\r
@@ -227,22 +228,22 @@ version: 2.7.0
                overflow:                               hidden;\r
                height:                                 30px;\r
                line-height:                    30px;\r
-               border-radius:                  5px;\r
-               -o-border-radius:               5px;\r
-               -ms-border-radius:              5px;\r
-               -moz-border-radius:             5px;\r
-               -webkit-border-radius:  5px;\r
+               border-radius:                  3px;\r
+               -o-border-radius:               3px;\r
+               -ms-border-radius:              3px;\r
+               -moz-border-radius:             3px;\r
+               -webkit-border-radius:  3px;\r
        }\r
 \r
 /*  Loading\r
 --------------------------------------------------------------------------------------*/\r
        .loading {\r
-               background-image:               url( loading.gif);\r
+               background-image:               url( images/loading.gif);\r
                background-position:    50% 50%;\r
                background-repeat:              no-repeat;\r
        }\r
        .error {\r
-               background-image:               url( error.png);\r
+               background-image:               url( images/error.png);\r
                background-position:    50% 50%;\r
                background-repeat:              no-repeat;\r
        }\r
similarity index 94%
rename from 0.4.x/work.css
rename to 0.4.x/stylesheets/work.css
index 1c8f486..6756fd4 100644 (file)
                                        height:                                 25px;\r
                                        line-height:                    25px;\r
                                        float:                                  left;\r
-                                       background-image:               url('sprite.gif');\r
+                                       background-image:               url('../images/sprite.gif');\r
                                        background-repeat:              no-repeat;\r
                                        background-position:    0 0;\r
                                        cursor:                                 pointer;\r
                                        position:                               absolute;\r
                                        top:                                    0;\r
                                        right:                                  0;\r
-                                       background-image:               url('sprite.gif');\r
+                                       background-image:               url('../images/sprite.gif');\r
                                        background-repeat:              no-repeat;\r
                                        background-position:    -70px -60px;\r
                                        width:                                  20px;\r
                        background-repeat:                      no-repeat;\r
                }\r
                .finder-icon .file-type-1 {\r
-                       background-image:                       url('folder_album.png');\r
+                       background-image:                       url('../images/folder_general.png');\r
                }\r
                .finder-icon .file-type-2 {\r
-                       background-image:                       url('folder_album.png');\r
+                       background-image:                       url('../images/folder_album.png');\r
                }\r
                .finder-icon .file-type-11 {\r
-                       background-image:                       url('folder_album.png');\r
-               }               \r
+                       background-image:                       url('../images/cabinet.png');\r
+               }\r
+               \r
                .has-thumbnail {\r
-                       background-image:                       url('folder_album.png');\r
+                       background-image:                       url('../images/folder_album.png');\r
                }\r
                /*\r
                 * http://www.iconfinder.com/icondetails/18336/64/folder_image_photo_icon\r
-                * http://www.iconfinder.com/icondetails/27849/48/folder_yellow_icon
+                * http://www.iconfinder.com/icondetails/27849/48/folder_yellow_icon\r
+                * http://www.iconfinder.com/icondetails/45347/64/cabinet_icon
                 */\r
                .finder-icon-filename {\r
                        position:                                       absolute;\r
index f9294c1..0a99ad8 100644 (file)
 
 img.embed-image {
        margin:                 0 0 1em;
-       max-width:              580px;
+       max-width:              550px;
 }
 #wiki-container {
        line-height: 1.6em;
diff --git a/0.4.x/wiki/wiki.xml b/0.4.x/wiki/wiki.xml
deleted file mode 100644 (file)
index a240b89..0000000
+++ /dev/null
@@ -1,1859 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>\r
-<?xml-stylesheet type="text/xsl" href="wiki.xsl"?>\r
-\r
-<rdf:RDF\r
-  xmlns="http://purl.org/rss/1.0/"\r
-  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"\r
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"\r
-  xmlns:dc="http://purl.org/dc/elements/1.1/"\r
- >\r
-\r
-  <channel rdf:about="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">\r
-    <title>ぺったんR Wiki</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</link>\r
-    <description>\r
-      ぺったんR プロジェクト Wiki ページ一覧    </description>\r
-        <dc:date>2012-01-10T16:25:14+09:00</dc:date>\r
-\r
-        <items>\r
-      <rdf:Seq>\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/FrontPage" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutModels" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ClientSide" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PngFix" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JsonApi" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LisencesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PictureIo" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/InstallRubyAndRails" />\r
-\r
-              </rdf:Seq>\r
-    </items>\r
-  </channel>\r
-\r
-      <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">\r
-    <title>YasushiIto</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/YasushiIto</link>\r
-    <dc:identifier>YasushiIto</dc:identifier>\r
-\r
-    <dc:date>2012-01-10T16:25:14+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[管理者メンテナンスページを分離\r
-\r
-md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-\r
-フキダシは名前の末尾を@ドメインにする慣習\r
-\r
-クリコモは転載自由なのか?\r
-\r
-jpgは反転できなくてもよくね?\r
-\r
-\r
-= wとhにマイナスはあり?\r
-\r
- * 逆フキダシ\r
- * min_width&rarr;lower_limit\r
- * フォントなど\r
-{{{]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<p>管理者メンテナンスページを分離\r
-</p><p>md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-</p><p>フキダシは名前の末尾を@ドメインにする慣習\r
-</p><p>クリコモは転載自由なのか?\r
-</p><p>jpgは反転できなくてもよくね?\r
-</p><h1 id="h1-w.E3.81.A8h.E3.81.AB.E3.83.9E.E3.82.A4.E3.83.8A.E3.82.B9.E3.81.AF.E3.81.82.E3.82.8A.EF.BC.9F">wとhにマイナスはあり?</h1><ul><li>逆フキダシ\r
-</li><li>min_width→lower_limit\r
-</li><li>フォントなど\r
-<pre>  &lt;property name=&quot;fontSize&quot;/&gt;\r
-       &lt;property name=&quot;fontColor&quot;/&gt;\r
-       &lt;property name=&quot;fontWeight&quot;/&gt;\r
-       &lt;property name=&quot;serif&quot;/&gt;\r
-       &lt;property name=&quot;way&quot;/&gt;\r
-       &lt;property name=&quot;textAlign&quot;/&gt;\r
-</pre></li><li>no_adult ?\r
-</li></ul><ul><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">\r
-    <title>HtmlAndCss2</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2</link>\r
-    <dc:identifier>HtmlAndCss2</dc:identifier>\r
-    <dc:date>2012-01-10T01:12:37+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= Html + css2.1\r
-ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.[[BR]]\r
-しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-\r
-== マンガの表示に使用する css プロパティ\r
- * overflow:hidden\r
-]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Html.20.2B.20css2.1">Html + css2.1</h1><p>ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.<br />\r
-しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-</p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.20css.20.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3">マンガの表示に使用する css プロパティ</h2><ul><li>overflow:hidden\r
-<ul><li>コマの外にはみ出してしまう部分を隠す.コマの枠となる div に指定.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html</a>\r
-</li></ul></li><li>position:absolute, left, top\r
-<ul><li>コミック要素(画像や吹きだし)の配置に使用.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position</a>\r
-</li></ul></li><li>z-index\r
-<ul><li>html要素の順を無視して、コミック要素の重ね順を変更するときに使用.\r
-</li><li>html要素は意味順(時系列順)に並ぶが、コミックでは演出によって、最後に起こったことが奥に行くことも手前に来ることもある.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html</a>\r
-</li></ul></li><li>display:table, display:teble-cell\r
-<ul><li>吹きだし内テキストの上下中央配置に使用を考えたが、、、ぺったんでは、table 要素を使用していた.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html</a>\r
-</li></ul></li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><table class="wikitable" border="1"><tbody><tr><td>プロパティ</td><td>ie</td><td>NN</td><td>firefox</td><td>safari</td><td>chrome</td><td>opera</td></tr><tr><td>overflow:hidden</td><td>5+</td><td>6+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>position:absolute, top, left</td><td>position&amp;top:4+, left:5+</td><td>4+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>z-index</td><td>4+</td><td>4+</td><td>1+</td><td>4+</td><td>1+</td><td>6+</td></tr><tr><td>display:table,table-cell</td><td>8+</td><td>6+</td><td>2+</td><td>2+</td><td>1+</td><td>9+</td></tr></tbody></table><h3 id="h3-.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E5.86.85.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.81.AE.E4.B8.8A.E4.B8.8B.E4.B8.AD.E5.A4.AE.E9.85.8D.E7.BD.AE">吹きだし内テキストの上下中央配置</h3><p>display:table, display:table-cell は、吹きだし内のテキストの上下中央配置に使用が検討されるが...<br />\r
-ie7 以下については、条件付コメントで、tableタグを使用.\r
-</p><p>html中\r
-<pre>&lt;!--[if lte IE 7]&gt;&lt;a href=&quot;#&quot;&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]--&gt;\r
- &lt;span&gt;Hello&lt;/span&gt;\r
-&lt;!--[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/a&gt;&lt;![endif]--&gt;\r
-</pre></p><p>xsl中で使うと\r
-<pre>&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
- &lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;\r
-&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
-</pre></p><p>また、firefox3.5 について、display:table 周りのバグについて報告されている.\r
-</p><blockquote class="citation"><p>Project IE: Firefox 3.5 の display: table;(table-row; table-cell;) 関連の挙動について<br />\r
-<a href="http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html" class="external" rel="nofollow">http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html</a><br />\r
-CSSで display: table-cell; を指定してマルチカラムレイアウトを行っている場合に Firefox 3.5 だとまれにカラム落ちしてしまうという現象が起きてしまいます。\r
-</p></blockquote><p>記事によると、display:table-cell に対して、display:table でなく、display:table-row を使っておくのがいいそうだ.</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki">\r
-    <title>LocalWiki</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LocalWiki</link>\r
-\r
-    <dc:identifier>LocalWiki</dc:identifier>\r
-    <dc:date>2012-01-10T01:06:42+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ローカルでの wiki の閲覧 と Wiki のバックアップ\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png)]]\r
-\r
-== ネットが無い環境でも wiki を見る\r
-\r
-=== 動作確認ブラウザ\r
-ie8, firefox3.6\r
-\r
-=== 用意\r
- * clientJs.git を落として、client]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.AD.E3.83.BC.E3.82.AB.E3.83.AB.E3.81.A7.E3.81.AE.20wiki.20.E3.81.AE.E9.96.B2.E8.A6.A7.20.E3.81.A8.20Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">ローカルでの wiki の閲覧 と Wiki のバックアップ</h1><img src="http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9802f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.83.8D.E3.83.83.E3.83.88.E3.81.8C.E7.84.A1.E3.81.84.E7.92.B0.E5.A2.83.E3.81.A7.E3.82.82.20wiki.20.E3.82.92.E8.A6.8B.E3.82.8B">ネットが無い環境でも wiki を見る</h2><h3 id="h3-.E5.8B.95.E4.BD.9C.E7.A2.BA.E8.AA.8D.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">動作確認ブラウザ</h3><p>ie8, firefox3.6\r
-</p><h3 id="h3-.E7.94.A8.E6.84.8F">用意</h3><ul><li>clientJs.git を落として、clientJs/0.3.0/wiki/wiki.xml をブラウザで開く.但し、wiki.xml が最新でない場合に注意!\r
-</li><li>または、以下を見て必要最小限のファイルを DL して配置.\r
-</li></ul><p>公開フィード一覧にある <a href="http://sourceforge.jp/projects/pettanr/feeds/">http://sourceforge.jp/projects/pettanr/feeds/</a>\r
-wiki 全文 をDLして、wiki.xml という名前で保存. <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a>\r
-</p><p>.xml の 2行目に .xsl へのリンクを追加.\r
-<pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;\r
-&lt;?xml-stylesheet type=&quot;text/xsl&quot; href=&quot;wiki.xsl&quot;?&gt;\r
-</pre></p><p>さらに、以下のファイル を DL.\r
-</p><ul><li>wiki/wiki.xsl\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.xsl" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.xsl</a>\r
-</li></ul></li><li>wiki/wiki.css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.css</a>\r
-</li></ul></li><li>wiki/wiki.js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.js</a>\r
-</li></ul></li><li>common.css pettanR 共通 css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.css</a>\r
-</li></ul></li><li>common.css pettanR 共通 js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.js</a>\r
-</li></ul></li></ul><p>以下のように配置する.\r
-</p><ul><li>common.css\r
-</li><li>common.js\r
-</li><li>wiki フォルダ\r
-<ul><li>wiki.xml\r
-</li><li>wiki.xsl\r
-</li><li>wiki.css\r
-</li><li>wiki.js\r
-</li></ul></li></ul><h3 id="h3-.E6.B3.A8.E6.84.8F">注意</h3><p>ブラウザは、Firefox と IE で確認. 他のブラウザだと、ブラウザが独自の .xsl をあててしまう.<br />\r
-また .xml が web 上にあると、ブラウザが独自の .xsl をあててしまう.<br />\r
-外部のリンクは赤く、wiki の他のページへのリンクは 緑 で表示.<br />\r
-</p><h2 id="h2-Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">Wiki のバックアップ</h2><p>wiki 全文配信フィードの <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a> を Google リーダーに登録しておく.</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/FrontPage">\r
-    <title>FrontPage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/FrontPage</link>\r
-    <dc:identifier>FrontPage</dc:identifier>\r
-    <dc:date>2012-01-08T02:24:30+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= ぺったんRのWiki =\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png)]]\r
-== ぺったんRって何だってばよ?\r
-ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-\r
-参考\r
- * http://sourceforge.jp/projec]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AEWiki">ぺったんRのWiki</h1><img src="http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9262f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.A3.E3.81.A6.E4.BD.95.E3.81.A0.E3.81.A3.E3.81.A6.E3.81.B0.E3.82.88.EF.BC.9F">ぺったんRって何だってばよ?</h2><p>ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-</p><p>参考\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettan/">http://sourceforge.jp/projects/pettan/</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanoss/">http://sourceforge.jp/projects/pettanoss/</a>\r
-</li></ul><p>より詳しくは<a href="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">WhatsPettan</a>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AE.E7.9B.AE.E6.A8.99">ぺったんRの目標</h2><h3 id="h3-.E7.B7.8F.E5.90.88.E7.9B.AE.E6.A8.99">総合目標</h3><ul><li>漫画形式の表現がブラウザだけでできる\r
-</li><li>漫画形式のブログを簡単に始められる\r
-</li><li>漫画形式のSNSを簡単に始められる\r
-</li><li>漫画形式の記事をブログに埋め込める\r
-</li><li>その他あらゆるwebページに最小限の労力で漫画を表示できる\r
-</li></ul><h3 id="h3-.E9.96.8B.E7.99.BA.E7.9B.AE.E6.A8.99">開発目標</h3><ul><li>ぺったんR Web API\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のサーバ側実装\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のクライアント側実装\r
-</li><li>ぺったんR をお試しできる Web サービスの運営\r
-</li></ul><h2 id="h2-.E7.8F.BE.E5.9C.A8.E3.81.AE.E7.8A.B6.E6.B3.81">現在の状況</h2><ul><li>プロトタイプ作成中。 <a href="http://pettanr.heroku.com/" class="external" rel="nofollow">http://pettanr.heroku.com/</a>\r
-</li><li>プロジェクト Web サイトの制作中 <a href="http://pettanr.sourceforge.jp/index.html" class="external" rel="nofollow">http://pettanr.sourceforge.jp/index.html</a>\r
-</li></ul><h2 id="h2-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">ForDevelopers</a>\r
-</li></ul><h2 id="h2-.E7.B7.A8.E9.9B.86.E9.95.B7.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">編集長向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">ForWebmasters</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">作家向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">ForAuthors</a>\r
-</li></ul><h2 id="h2-.E5.90.84.E8.87.AA.E3.81.AE.E3.83.A1.E3.83.A2">各自のメモ</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">YasushiIto</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">ItoZyun</a>\r
-</li></ul><h2 id="h2-.E8.B3.87.E6.96.99.E3.83.BB.E3.83.9E.E3.83.B3.E3.82.AC.E8.A6.81.E7.B4.A0.E3.81.AE.E6.97.A5.E8.8B.B1.E5.AF.BE.E8.A8.B3">資料・マンガ要素の日英対訳</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">TranslationComicElements</a>\r
-</li></ul><script src="/projects/pettanr/files/compact.js" type="text/javascript" charset="utf-8"></script>\r
-<div class="dashboard-widget"><h3 class="titlebar">最近のチケット一覧</h3><div class="dashboard-body"><div class="noent">(empty)</div></div></div>\r
-]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">\r
-    <title>ItoZyun</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ItoZyun</link>\r
-    <dc:identifier>ItoZyun</dc:identifier>\r
-    <dc:date>2012-01-07T10:06:07+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアント側\r
- * ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
- * ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-\r
-= javascript のクリーンアップ、圧縮\r
-== クリーンアップ\r
-javascript は、変数宣言時]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><ul><li>ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
-</li><li>ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97.E3.80.81.E5.9C.A7.E7.B8.AE">javascript のクリーンアップ、圧縮</h1><h2 id="h2-.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97">クリーンアップ</h2><p>javascript は、変数宣言時の区切り文字や、行の終わりのセミコロンなどを間違えていても、予期したとおりに動作したりして潜在的な問題を抱えることになる.[[BR]]\r
-<br />以上のものは、Aptana で警告されないものも結構ある.[[BR]]\r
-<br />jsDo.it にアップロードすると、Webコンソールで javascript の警告を教えてくれる.[[BR]]\r
-<br />その警告に従って修正したところ、Aptana2 の構文解析も動くようになった.コード量が増えると勝手に構文解析も止まるのかと思っていたけど、そのようなわけだった、、、[[BR]]\r
-<br /></p><h2 id="h2-.E5.9C.A7.E7.B8.AE">圧縮</h2><p>以上を済ませた後に、圧縮(難読化)を行うことで、js ファイルの読み込みや動作を早くし、負荷を抑えることができる.[[BR]]\r
-<br />圧縮ツールには、Web アプリとして提供されているものもあって便利.[[BR]]\r
-<br /><a href="http://compressorrater.thruhere.net/" class="external" rel="nofollow">http://compressorrater.thruhere.net/</a> が、複数の圧縮エンジンに通した結果を比較表示してくれる.[[BR]]\r
-<br />現在 140KB 程度の js ファイルを 60KB 程度にすることができた.[[BR]]\r
-<br />ただし、その圧縮後のファイルが動かないこともあり(というかほとんど動かない、または操作中に動かなくなる)圧縮ツール用にコードを書く必要がある.[[BR]]\r
-<br />jsは、コードが実行される順番に変数宣言をしていけばいいのだが、圧縮ツール用には、変数の宣言を最初の変数の登場より先にしなくてはならない.[[BR]]\r
-<br /></p><p>変数の宣言がないままに変数が登場すると、\r
-<pre>function createPopup(){\r
-// Popup クラスから Popup インスタンスを作る.\r
- var _popup = PopupClass.apply( {}, []);\r
-}\r
-~\r
-// Popup クラスの宣言\r
-var PopupClass = function(){};\r
-</pre>圧縮ツールは、最初に登場する PopupClass はそのまま.var PopupCl<a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a>r a= などと圧縮をかける.結果、createPopup() したときに PopupClass が未定義だよ!となる.[[BR]]\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a><br /></p><ul><li>決定版はこれだ! Javascriptの圧縮、難読化ツール 比較検討 http://gogolounge.blog.shinobi.jp/Entry/4/\r
-<a href="http://gogolounge.blog.shinobi.jp/Entry/4/" class="external" rel="nofollow">http://gogolounge.blog.shinobi.jp/Entry/4/</a></li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82.AF">javascript のメモリリーク</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/%E9%96%8B%E7%99%BA">開発</a>IEメモリリークの最後の壁はAjaxのonreadystatechangeやった!! http://d.hatena.ne.jp/AWAWA/20071207<a href="http://d.hatena.ne.jp/AWAWA/20071207/1197036423" class="external" rel="nofollow">http://d.hatena.ne.jp/AWAWA/20071207/1197036423</a></li><li>Internet Explorer リーク パターンを理解して解決する http://msdn.microsoft.com/ja-jp/<a href="http://msdn.microsoft.com/ja-jp/library/bb250448" class="external" rel="nofollow">http://msdn.microsoft.com/ja-jp/library/bb250448</a></li></ul><p>クロージャがまずい.[[BR]]\r
-<br />dom追加は、appendChild を先に.あとからプロパティをセット.[[BR]]\r
-<br />イベントハンドラに、グローバルで定義された 空の function を突っ込んで解除する.\r
-</p><h1 id="h1-.E3.82.B9.E3.82.BF.E3.83.B3.E3.83.89.E3.82.A2.E3.83.AD.E3.83.BC.E3.83.B3.E7.89.88.20IE.20.E3.81.AE.E9.80.9A.E5.B8.B8.E7.89.88.E3.81.A8.E7.95.B0.E3.81.AA.E3.82.8B.E6.8C.99.E5.8B.95">スタンドアローン版 IE の通常版と異なる挙動</h1><p>IETester で 条件付コメントによる、vml のインストールの有無のチェックができない挙動に遭遇.[[BR]]\r
-<br />vml のチェックは、現在は条件付コメントを動的に付与して行っている.(他にいい方法ないかな、、、?)\r
-<pre>VML: ( function(){\r
-       if( isIE === false || ieVersion &gt; 8) return false;\r
-       var globalObjectName = createGrobalObjectName(), script;\r
-       document.writeln( [ '&lt;!--[if gte vml 1]&gt;&lt;script type=&quot;text/javascript&quot;&gt;window.', globalObjectName,'=1;&lt;/script&gt;&lt;![endif]--&gt;'].join( ''));\r
-       if( window[ globalObjectName] === 1){\r
-               window[ globalObjectName] = undefined;\r
-               return true;\r
-       }\r
-       return false;\r
-})(),\r
-</pre></p><p>XPsp3 に IETester をインストールして 6, 7, 8 をテストできる環境にしているが、6 と 7 では、vml のチェックが働かない.[[BR]]\r
-<br />これは、スタンドアローン版 IE は 条件付コメントが働かない、ためと思われる.[[BR]]\r
-<br />一方で、8 で正しく動いているのは、8 が Windows 環境のデフォルトの ie なので通常版であるため、と思う.[[BR]]\r
-<br /></p><p>navigator.ua で取得したバージョンと 動的に書き出した条件付コメント(内でスクリプトを使用)が不一致だったら、スタンドアローン版として処理する.\r
-</p><ul><li>条件付コメント文の誤算 http://bopsublog.blog.<a href="http://bopsublog.blog.shinobi.jp/Entry/15/" class="external" rel="nofollow">http://bopsublog.blog.shinobi.jp/Entry/15/</a></li><li><a href="http://philip.html5.org/data/ccs.html" class="external" rel="nofollow">http://philip.html5.org/data/ccs.html</a>\r
-</li></ul><h1 id="h1-about.20itozyun">about itozyun</h1><ul><li>目立ちたがり屋という点でフロントエンジニアが性に合っている.\r
-</li><li>好奇心に負けて地雷を踏む性格なので、API 設計などを任せてはいけない.</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">\r
-    <title>ForAuthors</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForAuthors</link>\r
-    <dc:identifier>ForAuthors</dc:identifier>\r
-\r
-    <dc:date>2012-01-06T19:53:55+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== 奥行きzと時間軸t\r
-コミックの各コマには奥行きと時間軸があります。\r
-\r
-奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-\r
-時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-\r
-これらをコミック上で正しく]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h2 id="h2-.E5.A5.A5.E8.A1.8C.E3.81.8Dz.E3.81.A8.E6.99.82.E9.96.93.E8.BB.B8t">奥行きzと時間軸t</h2><p>コミックの各コマには奥行きと時間軸があります。\r
-</p><p>奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-</p><p>時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-</p><p>これらをコミック上で正しく並べるために、奥行きzと時間軸tが用意してあります。奥行きに関してはエディタでビジュアルに操作している限り問題ありません。しかし、コマの外観だけを見て制作すると、時間軸は必ず正しく並ぶというわけではありません。時間軸を意識することで、より違和感のない漫画ができるとぺったんRでは考えています。画像がきれいに表示されない環境や読み上げソフトなどを使った場合は、特に効果があるはずです。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E5.A5.A5.E8.A1.8C.E3.81.8D.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな奥行きデータ作成</h2><p>ページ内で同じzindexを持っては意味がありません。そこでzが重ならないようにデータをユニークに作成する必要があります。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E6.99.82.E9.96.93.E8.BB.B8.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな時間軸データ作成</h2><ul><li>コマ単位でtを順序づけ。\r
-<ul><li>コミック表示など複数のコマが表示される場合は、コマ番号tからのオフセット\r
-</li><li>例えば、コマ1にオブジェクトが4つあるとき、コマ2のtは4から始まる。\r
-</li><li>コマ2に6つのオブジェクトがあるなら、コマ3のtは10から始まる。\r
-</li><li>コマ3に添付されたコマ絵のtが2なら、コマ3のt(オフセット)10+2で12\r
-<ul><li>まぁ、ここはクライアントが好きにしていい話か。別に1-2とか2-3で管理してもいいけど。\r
-</li></ul></li></ul></li><li>tは0から始まる\r
-</li><li>コマpanels内でコマ絵panel_picturesとフキダシ枠speach_balloonのtは重なっちゃだめ。両者は同じレベル。\r
-<ul><li>ただし、フキダシ枠speach_balloonの中にあるセリフspeachesは一つレベルが下。セリフspeachesのtは一つのフキダシ枠speach_balloonの中でユニーク。ほとんどのフキダシにはセリフスペースは一個しかないから、多段フキダシを除けばspeaches.tは常に0。\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">\r
-    <title>XbackendReversibleImage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage</link>\r
-    <dc:identifier>XbackendReversibleImage</dc:identifier>\r
-    <dc:date>2012-01-06T08:09:10+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クロスバックエンドな反転画像機能\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png)]]\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.[[BR]]\r
-とくにキャラクター画像を左右に反転させたい、という要望だ.[[BR]]\r
-\r
-ぺったんR では、その反転に取り組む.[[BR]]\r
-サーバ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E7.94.BB.E5.83.8F.E6.A9.9F.E8.83.BD">クロスバックエンドな反転画像機能</h1><img src="http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9332f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.[[BR]]\r
-<br />とくにキャラクター画像を左右に反転させたい、という要望だ.[[BR]]\r
-<br /></p><p>ぺったんR では、その反転に取り組む.[[BR]]\r
-<br />サーバー側での反転画像の準備と、ブラウザでのクロスバックエンドな対応、という二段構えだ.[[BR]]\r
-<br /></p><h2 id="h2-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E5.81.B4.E3.81.A7.E3.81.AE.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E8.A1.A8.E7.A4.BA">ブラウザ側でのクロスバックエンドな反転表示</h2><h3 id="h3-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h3><p>ブラウザのネイティブな反転表示機能(css3)および、ブラウザの独自拡張や Flash 等のプラグインを使用する.[[BR]]\r
-<br />これらの機能をサポートしない、または切っているブラウザは、サーバー側で生成した画像を利用することになる.[[BR]]\r
-<br />ブラウザ側でなるべく画像を用意しサーバーへの負荷を極力抑えます.\r
-</p><h3 id="h3-.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89">使用するバックエンド</h3><h4 id="h4-css3">css3</h4><p>例\r
-<pre>img.img-flip-v { /* 上下反転 */\r
-       transform:              scale( 1, -1);\r
-       -o-transform:           scale( 1, -1);\r
-       -ms-transform:          scale( 1, -1);\r
-       -moz-transform:         scale( 1, -1);\r
-       -webkit-transform:      scale( 1, -1);\r
-}      \r
-img.img-flip-h { /* 左右反転 */\r
-       transform:              scale( -1, 1);\r
-       -o-transform:           scale( -1, 1);\r
-       -ms-transform:          scale( -1, 1);\r
-       -moz-transform:         scale( -1, 1);\r
-       -webkit-transform:      scale( -1, 1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       transform:              scale( -1, -1);\r
-       -o-transform:           scale( -1, -1);\r
-       -ms-transform:          scale( -1, -1);\r
-       -moz-transform:         scale( -1, -1);\r
-       -webkit-transform:      scale( -1, -1);\r
-}\r
-</pre></p><h4 id="h4-VML">VML</h4><p>例\r
-<pre>v\:image.img-flip-v {\r
-       flip:                   y; /* vml */\r
-}\r
-v\:image.img-flip-h {\r
-       flip:                   x; /* vml */\r
-}v\:image.img-flip-vh {\r
-       rotation :              180; /* vml */\r
-}\r
-</pre>ie独自拡張の VML が ie6~8 での反転画像の本命となる.上記のように vml 用の css も使える.(ただし js による css の適用にくせがある.)[[BR]]\r
-<br />VML で表示された画像は、ie6 以下にある透過 png の問題も解消される.(但し ie6 のみ.ie5.5 以下では透過表示が不十分)[[BR]]\r
-<br /></p><blockquote class="citation"><p>Windows版 IE 5以降の VMLレンダラで半透明、透過PNGを表示する[[BR]]\r
-<br /><a href="http://www.minc.ne.jp/~konda/new/png/urawaza04.html" class="external" rel="nofollow">http://www.minc.ne.jp/~konda/new/png/urawaza04.html</a><br />\r
-IE 5 及び 5.5 (5.50.4133.200)の vgx.dll(Microsoft Vector Graphics Rendering(VML))は、Beta バージョンですから 半透明系は、以下の画像の様に擬似半透明表示(ディザリング)されます\r
-</p></blockquote><pre>&lt;!--[if !gte vml 1]&gt;&lt;!--&gt;&lt;img src=&quot;*.png&quot; width=&quot;*&quot; height=&quot;*&quot; alt=&quot;*&quot; /&gt;&lt;!--&lt;![endif]--&gt;\r
-&lt;!--[if gte vml 1]&gt;&lt;v:image src=&quot;*.png&quot; style=&quot;width: *px; height: *px; behavior: url(#default#vml)&quot; alt=&quot;*&quot; /&gt;&lt;![endif]--&gt;\r
-</pre><p>さらに、ActiveX よりも動作が速い(らしい).[[BR]]\r
-<br />但し VML は windows の構成によってはインストールされていない場合があり、必ずしも使えるわけではない.[[BR]]\r
-<br />itozyun の環境のひとつでも VML が使えなかった.nlite で削ってしまったためと思われる.\r
-</p><h3 id="h3-SVG">SVG</h3><p>svg な xml を js で作って data スキームで読み込む。Opera8+ でも画像反転できるかも。Opera9.6 で静的に埋め込んだ以上の html では反転表示ができた。ただし Firefox3.6 Chrome8 では表示できない。[[BR]]\r
-<br />dataスキームになった svg に対しては、画像の url を絶対座標で与える。\r
-svg を html に直接埋め込む方式では、なぜか手元で一度も成功していない。\r
-<pre>&lt;?xml version=&quot;1.0&quot;?&gt;\r
-&lt;!DOCTYPE svg PUBLIC &quot;-//W3C//DTD SVG 1.1//EN&quot; &quot;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&quot;&gt;\r
-&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;\r
-&lt;image x=&quot;0&quot; y=&quot;0&quot; width=&quot;200&quot; height=&quot;200&quot; xlink:href=&quot;1.gif&quot; transform=&quot;scale(-1,1) translate(-200,0)&quot; /&gt;\r
-&lt;/svg&gt;\r
-</pre></p><ul><li><a href="http://software.hixie.ch/utilities/cgi/data/data" class="external" rel="nofollow">http://software.hixie.ch/utilities/cgi/data/data</a>\r
-</li><li>サイトの表示スピードを改善!dataスキームURIを使った画像の埋め込み http://labs.cybridge.jp/2011/12/data-uri.html\r
-<a href="http://labs.cybridge.jp/2011/12/data-uri.html" class="external" rel="nofollow">http://labs.cybridge.jp/2011/12/data-uri.html</a><ul><li>データスキーム対応ブラウザ \r
-</li><li>Firefox2+\r
-</li><li>Safari\r
-</li><li>Chrome\r
-</li><li>Opera7.2+\r
-</li><li>IE8+\r
-</li></ul></li></ul><pre>&lt;img src=&quot;data:image/svg+xml;charset=utf-8,%3c%3fxml%20version%3d%221.0%22%3f%3e%3c!DOCTYPE%20svg%20PUBLIC%20%22-%2f%2fW3C%2f%2fDTD%20SVG%201.1%2f%2fEN%22%20%22http%3a%2f%2fwww.w3.org%2fGraphics%2fSVG%2f1.1%2fDTD%2fsvg11.dtd%22%3e%3csvg%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%20version%3d%221.1%22%20xmlns%3axlink%3d%22http%3a%2f%2fwww.w3.org%2f1999%2fxlink%22%20width%3d%22200%22%20height%3d%22200%22%3e%3cimage%20x%3d%220%22%20y%3d%220%22%20width%3d%22200%22%20height%3d%22200%22%20xlink%3ahref%3d%22http%3a%2f%2fstatic.sourceforge.jp%2fthumb%2fg%2f2%2f930%2f640x640_0.png%22%20transform%3d%22scale(-1%2c1)%20translate(-200%2c0)%22%20%2f%3e%3c%2fsvg%3e&quot;&gt;\r
-</pre><h4 id="h4-ActiveX">ActiveX</h4><pre>img.img-flip-v { /* 上下反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-}\r
-img.img-flip-h { /* 左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-}\r
-</pre><p>ActiveX は、ie6 以下のための pngfix にも使いたいが、反転とAlpha Image Loader を同時に使用することはできない.[[BR]]\r
-<br />ie6では、ActiveX による反転は、png 画像に対しては使用できない.\r
-</p><h4 id="h4-Flash">Flash</h4><p>クロスドメインな画像に対しても、読み込み、反転表示は行える.[[BR]]\r
-<br />なるべく バージョンの古い Flash で用意してサポート範囲を広くしたいが、js と連携する ExternalInterface が使えなくなったりと多難かもしれない.\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/ExternalInterface">ExternalInterface</a></p><h4 id="h4-Canvas">Canvas</h4><p>同一ドメインの画像のみになるが、画像のピクセルデータを取得し反転しつつ描画することができる.[[BR]]\r
-<br /></p><blockquote class="citation"><p>Canvasによる画像ファイル(img要素)の読み書き[[BR]]\r
-<br /><a href="http://www.programmingmat.jp/webhtml_lab/canvas_image.html" class="external" rel="nofollow">http://www.programmingmat.jp/webhtml_lab/canvas_image.html</a>\r
-</p></blockquote><h4 id="h4-Silverlight">Silverlight</h4><h4 id="h4-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89.E7.94.BB.E5.83.8F">サーバーサイド画像</h4><p>サーバー側で反転画像を用する.このサーバ画像へのアクセスを極力減らすのが、X Backend Imageの目的のひとつ.\r
-<pre>picture/001.png\r
-picture/v/001.png\r
-picture/h/001.png\r
-picture/vh/001.png\r
-</pre></p><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h3><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5+5.5</td><td>ie6</td><td>ie7 &amp; 8</td><td>ie9+</td><td>FF</td><td>Safari</td><td>Chrome</td><td>Opera</td></tr><tr><td>CSS3:transform</td><td>×</td><td>×</td><td>×</td><td>○</td><td>3.5+</td><td>3.1+(?)</td><td>1+</td><td>10.5+</td></tr><tr><td>VML</td><td>▲透過pngの表示が汚い</td><td>△</td><td>△環境による</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>Canvas</td><td>×</td><td>×</td><td>×</td><td>○</td><td>1.5+</td><td>1.3+</td><td>1+</td><td>9+</td></tr><tr><td>SVG +DATAスキーム</td><td>×</td><td>×</td><td>×</td><td>?</td><td>?</td><td>?</td><td>?</td><td>8+(?)</td></tr><tr><td>サーバー画像</td><td>△</td><td>△要pngfix</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">\r
-    <title>AboutModels</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutModels</link>\r
-\r
-    <dc:identifier>AboutModels</dc:identifier>\r
-    <dc:date>2012-01-05T17:49:46+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ER図\r
-下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-\r
- * http://sawada0903.blogspot.com/2010/10/rails30er.html\r
- * http://rails-erd.rubyforge.org/install.html\r
-\r
-出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-\r
-G]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-ER.E5.9B.B3">ER図</h1><p>下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-</p><ul><li><a href="http://sawada0903.blogspot.com/2010/10/rails30er.html" class="external" rel="nofollow">http://sawada0903.blogspot.com/2010/10/rails30er.html</a>\r
-</li><li><a href="http://rails-erd.rubyforge.org/install.html" class="external" rel="nofollow">http://rails-erd.rubyforge.org/install.html</a>\r
-</li></ul><p>出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-</p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/GraphViz">GraphViz</a>のbinにdot.exeがあるからこれで画像にできる\r
-<pre>dot.exe -Tgif ERD.dot &gt; erd.gif\r
-</pre></p><h1 id="h1-.E3.83.86.E3.83.BC.E3.83.96.E3.83.AB.E3.81.A8.E3.82.AB.E3.83.A9.E3.83.A0">テーブルとカラム</h1><h2 id="h2-admins.20.E7.AE.A1.E7.90.86.E8.80.85">admins 管理者</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AdminModel">AdminModel</a>\r
-</li></ul><h2 id="h2-artists.20.E7.B5.B5.E5.B8.AB">artists 絵師</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>homepage_url</td><td>ホームページURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>api_url</td><td>素材配布APIのURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>default_lisence_id</td><td>省略時のライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>crowled_at</td><td>素材配布APIの最新呼び出し時刻</td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>author_id</td><td>作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistModel">ArtistModel</a>\r
-</li></ul><h2 id="h2-authors.20.E4.BD.9C.E5.AE.B6">authors 作家</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>email</td><td>メールアドレス</td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>authentication_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorModel">AuthorModel</a>\r
-</li></ul><h2 id="h2-balloon_templates.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">balloon_templates フキダシ枠テンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>speach_balloon_id</td><td>フキダシテンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplateModel">BallonTemplateModel</a>\r
-</li></ul><h2 id="h2-balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7">balloons フキダシ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネルid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレート種id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>表示幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>表示高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonModel">BalloonModel</a>\r
-</li></ul><h2 id="h2-comics.20.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF">comics コミック</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>title</td><td>作品名</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅デフォルト値</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さデフォルト値</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>author_id</td><td>作者の作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>\r
-</li></ul><h2 id="h2-common_lisences.20.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">common_lisences コモンライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisenceModel">CommonLisenceModel</a>\r
-</li></ul><h2 id="h2-lisences.20.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">lisences ライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisenceModel">LisenceModel</a>\r
-</li></ul><h2 id="h2-original_lisences.20.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">original_lisences オリジナルライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>artist_id</td><td>ライセンス策定者 絵師id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisenceModel">OriginalLisenceModel</a>\r
-</li></ul><h2 id="h2-original_pictures.20.E5.8E.9F.E7.94.BB">original_pictures 原画</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>\r
-</li></ul><h2 id="h2-system_pictures.20.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E7.94.BB.E5.83.8F">system_pictures システム画像</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemPictureModel">SystemPictureModel</a>\r
-</li></ul><h2 id="h2-panel_pictures.20.E3.82.B3.E3.83.9E.E7.B5.B5">panel_pictures コマ絵</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネル</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>link</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>コマ絵の幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマ絵の高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>flipv</td><td>垂直反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>fliph</td><td>水平反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a>\r
-</li></ul><h2 id="h2-panels.20.E3.82.B3.E3.83.9E">panels コマ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>comic_id</td><td>所属コミック</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>背景画像 素材id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さ</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>border</td><td>コマの枠線の太さ</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>t</td><td>コマ番号</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>author_id</td><td>コマの投稿者 作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>\r
-</li></ul><h2 id="h2-resource_pictures.20.E7.B4.A0.E6.9D.90">resource_pictures 素材</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicture">OriginalPicture</a>のコピー 変更不可</td></tr><tr><td>original_picture_id</td><td>原画id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>\r
-</li></ul><h2 id="h2-speach_balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_balloons フキダシテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>フキダシ名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail_count</td><td>尻尾の向きの数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size_count</td><td>サイズのバリエーション数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a>\r
-</li></ul><h2 id="h2-speach_templates.20.E3.82.BB.E3.83.AA.E3.83.95.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_templates セリフテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplateModel">SpeachTemplateModel</a>\r
-</li></ul><h2 id="h2-speaches.20.E3.82.BB.E3.83.AA.E3.83.95">speaches セリフ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_id</td><td>フキダシ枠id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>content</td><td>台詞</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachModel">SpeachModel</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">\r
-    <title>JavascriptEditor</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor</link>\r
-    <dc:identifier>JavascriptEditor</dc:identifier>\r
-    <dc:date>2012-01-04T22:04:51+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= Javascript\r
- js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-\r
-== common.js\r
- * pettnar.\r
- * pettanr.const\r
- * pettanr.ua\r
-   * ブラウザの情報、プラグインの情報\r
- * pettnar.util\r
-   * \r
- * pettnar.overlay\r
-   * ポップア]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Javascript">Javascript</h1><div class="indent">js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-</div><h2 id="h2-common.js">common.js</h2><ul><li>pettnar.\r
-</li><li>pettanr.const\r
-</li><li>pettanr.ua\r
-<ul><li>ブラウザの情報、プラグインの情報\r
-</li></ul></li><li>pettnar.util\r
-<ul><li>\r
-</li></ul></li><li>pettnar.overlay\r
-<ul><li>ポップアップオーバーレイを管理する.\r
-</li></ul></li><li>pettnar.key\r
-<ul><li>キーイベントの発行、テキスト入力エリアの管理\r
-</li></ul></li><li>pettnar.balloon\r
-<ul><li>クロスバックエンドな吹きだし画像のためのラッパーの発行.XbackendSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a></li><li>SVG, VML といったベクター画像で吹きだし(balloon)を描画する(ベクター画像のサポートがない場合は代替画像を表示する)\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a>\r
-</li></ul></li><li>pettnar.image\r
-<ul><li>クロスバックエンドな、Reversible Image のためのラッパーを発行.XbackendReversibleImage\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a></li><li>css3, VML, ActiveX, Flash, サーバー側で生成した反転画像 を使用して画像の反転を行う.\r
-</li><li>透過 PNG のサポートが甘い IE6 以下にたいして、VML, Flash, ActiveX+サーバー画像 による描画サポートを行う.PngFix\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a></li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li></ul></li><li>pettnar.i18n\r
-<ul><li>マルチ言語情報の保持.言語変更イベントの管理.\r
-</li></ul></li><li>pettnar.io\r
-<ul><li>通信\r
-</li><li>xml としてサーバに置かれた ajax なリソースに対して、ajax feed api を使った json リクエスト(xmlより転送量が少ない)などの 複数経路でリクエストを行うラッパー\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul></li><li>pettnar.load\r
-<ul><li>work.js と jQuery のロード.min や debag version の切り替え.jQuery version の切り替え.\r
-</li></ul></li></ul><h2 id="h2-work.js">work.js</h2><p>ログイン後のユーザー(管理者)の操作.コミック・画像の管理やコマの作成.\r
-</p><ul><li>pettnar.view\r
-<ul><li>現在のビューを管理する.Window Resize イベントの監視.\r
-</li></ul></li><li>pettnar.editor\r
-<ul><li>コマの編集を行う.\r
-</li></ul></li><li>pettnar.file\r
-<ul><li>サーバから取得したリソース情報を保持し、データの取得やアクセス権のチェック、データのアップデートをラップする.\r
-</li></ul></li><li>pettnar.finder\r
-<ul><li>ファイル(リソース)エクスプローラー\r
-</li><li>コミック、コマ、画像、吹きだし、画像提供絵師情報</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">\r
-    <title>ChangeDoc</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc</link>\r
-    <dc:identifier>ChangeDoc</dc:identifier>\r
-    <dc:date>2012-01-04T18:19:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 改変予告\r
-== モデルの変名\r
-\r
-balloon_templates\r
- * border &rarr; size\r
- * min_width &rarr; \r
- * max_width &rarr; \r
- * min_height &rarr; \r
- * max_height &rarr; \r
-balloons \r
- * border &rarr; size\r
- * zindex &ra]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h1><h2 id="h2-.E3.83.A2.E3.83.87.E3.83.AB.E3.81.AE.E5.A4.89.E5.90.8D">モデルの変名</h2><p>balloon_templates\r
-</p><ul><li>border → size\r
-</li><li>min_width → \r
-</li><li>max_width → \r
-</li><li>min_height → \r
-</li><li>max_height → \r
-</li></ul><p>balloons \r
-</p><ul><li>border → size\r
-</li><li>zindex → z\r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>comics \r
-</p><ul><li>default_width → width\r
-</li><li>default_height → height\r
-</li></ul><p>original_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li></ul><p>panel_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>zindex → z\r
-</li><li>v → flipv\r
-</li><li>h → fliph\r
-</li></ul><p>panels\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>seqno → t\r
-</li></ul><p>speach_balloons\r
-</p><ul><li>tail_limit → tail_count\r
-</li><li>border_limit → size_count\r
-</li></ul><p>speach_templates\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>speaches\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>balloons \r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>speaches\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>panels\r
-<table class="wikitable" border="1"><tbody><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:将来の拡張に備えるため\r
-</p><p>panel_pictures\r
-<table class="wikitable" border="1"><tbody><tr><td>url</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>common_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>original_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>comics\r
-<table class="wikitable" border="1"><tbody><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-</p><p>speach_balloons\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">\r
-    <title>DatabaseSchema</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema</link>\r
-    <dc:identifier>DatabaseSchema</dc:identifier>\r
-\r
-    <dc:date>2012-01-04T18:05:04+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 定義\r
-超やっつけだけど、無いよりはマシか。\r
-\r
-{{{\r
-ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,        ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E5.AE.9A.E7.BE.A9">定義</h1><p>超やっつけだけど、無いよりはマシか。\r
-</p><pre>ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;admins&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_admins_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_admins_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;email&quot;], :name =&gt; &quot;index_admins_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_admins_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;artists&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;homepage_url&quot;\r
-    t.string   &quot;api_url&quot;\r
-    t.integer  &quot;default_lisence_id&quot;\r
-    t.datetime &quot;crowled_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-    t.integer  &quot;author_id&quot;\r
-  end\r
-\r
-  create_table &quot;authors&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;authors&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_authors_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_authors_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;email&quot;], :name =&gt; &quot;index_authors_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_authors_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;balloon_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;speach_balloon_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;tail&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;min_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;min_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;, &quot;tail&quot;, &quot;size&quot;], :name =&gt; &quot;balloon_templates_idts&quot;, :unique =&gt; true\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;], :name =&gt; &quot;index_balloon_templates_on_speach_balloon_id&quot;\r
-\r
-  create_table &quot;balloons&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                           :null =&gt; false\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                  :null =&gt; false\r
-    t.integer  &quot;tail&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;balloon_idt&quot;, :unique =&gt; true\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;], :name =&gt; &quot;index_balloons_on_panel_id&quot;\r
-\r
-  create_table &quot;comics&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;title&quot;\r
-    t.integer  &quot;width&quot;,      :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;visible&quot;,    :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;editable&quot;,   :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;comics&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_comics_on_author_id&quot;\r
-\r
-  create_table &quot;common_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;lisences&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;lisences&quot;, [&quot;url&quot;], :name =&gt; &quot;index_lisences_on_url&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;original_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;artist_id&quot;,                        :null =&gt; false\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;original_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;original_pictures&quot;, [&quot;artist_id&quot;], :name =&gt; &quot;index_original_pictures_on_artist_id&quot;\r
-\r
-  create_table &quot;panel_pictures&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                                          :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;,                               :null =&gt; false\r
-    t.string   &quot;url&quot;,                 :limit =&gt; 200\r
-    t.integer  &quot;x&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;t&quot;,                                  :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                                             :null =&gt; false\r
-    t.integer  &quot;height&quot;,                                            :null =&gt; false\r
-    t.integer  &quot;flipv&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;fliph&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panel_pictures&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;panel_pictures_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;panels&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;comic_id&quot;,                             :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;\r
-    t.integer  &quot;width&quot;,               :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;border&quot;,              :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panels&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_panels_on_author_id&quot;\r
-  add_index &quot;panels&quot;, [&quot;comic_id&quot;, &quot;t&quot;], :name =&gt; &quot;panels_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;resource_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,                 :null =&gt; false\r
-    t.integer  &quot;width&quot;,               :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,            :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.integer  &quot;original_picture_id&quot;, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;speach_balloons&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                      :null =&gt; false\r
-    t.integer  &quot;tail_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_balloons&quot;, [&quot;t&quot;], :name =&gt; &quot;speach_balloons_t&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speach_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_templates&quot;, [&quot;balloon_template_id&quot;, &quot;t&quot;], :name =&gt; &quot;speach_templates_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speaches&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_id&quot;,                :null =&gt; false\r
-    t.string   &quot;content&quot;\r
-    t.integer  &quot;x&quot;,                         :null =&gt; false\r
-    t.integer  &quot;y&quot;,                         :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                     :null =&gt; false\r
-    t.integer  &quot;height&quot;,                    :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;, &quot;t&quot;], :name =&gt; &quot;speaches_bt&quot;, :unique =&gt; true\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;], :name =&gt; &quot;index_speaches_on_balloon_id&quot;\r
-\r
-  create_table &quot;system_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-end\r
-\r
-</pre>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">\r
-    <title>SpeachBalloonsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController</link>\r
-    <dc:identifier>SpeachBalloonsController</dc:identifier>\r
-    <dc:date>2012-01-04T07:58:05+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= フキダシテンプレート\r
-コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-\r
- * 作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
- * 管理者がフキダシの基礎情報をメンテナンスする。\r
-\r
-メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-</p><ul><li>作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
-</li><li>管理者がフキダシの基礎情報をメンテナンスする。\r
-</li></ul><p>メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があるためである。詳しくはAboutSpeachBalloon。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a></p><p>参考:Spea<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a></p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家/管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>○</td></tr></tbody></table></p><p>主にクライアントのエディタがフキダシリストを得るために使う。全レコードがt順で返る。\r
-</p><p>html形式では、管理者がメンテナンスのために閲覧する。重要なカラムの情報が一覧で表示されるほか、showへの誘導と、削除のボタンが配置される。\r
-</p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がメンテナンスのために閲覧する機能。\r
-</p><h2 id="h2-create">create</h2><p>作成\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを追加するための機能。\r
-</p><p>jsonデータを元にフキダシテンプレートを作成する。データ作成方法はHowToMakeSpeachBalloonを見る。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></p><h2 id="h2-update">update</h2><p>更新\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを修正するための機能。\r
-</p><p>指定されたidのフキダシテンプレートを、jsonデータを元に更新する。データ作成方法はHowToMakeSpeachBalloonを見る。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></p><h3 id="h3-.E4.BE.8B.E5.A4.96">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p><h2 id="h2-destroy">destroy</h2><p>削除\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>指定されたidのフキダシテンプレートを削除する。フキダシテンプレートだけでなく、枠テンプレートとセリフテンプレートも同時に削除される。\r
-</p><h3 id="h3-.E4.BE.8B.E5.A4.96-2">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">\r
-    <title>PanelPictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel</link>\r
-\r
-    <dc:identifier>PanelPictureModel</dc:identifier>\r
-    <dc:date>2012-01-03T12:34:36+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関するデータ。\r
-\r
-参考:PanelPicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-コマ絵は常にパネル経由で作成されるため、PanelsControllerからjsonフォーマットで送信する。\r
-\r
-コマ絵は素材のコピーなので、素材ResourcePictureModelのデータを元に作成する。行の新規作成時はデフォルト値と]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関するデータ。\r
-</p><p>参考:Pane<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a></p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2><p>コマ絵は常にパネル経由で作成されるため、PanelsControllerからjsonフォーマットで送信する。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a></p><p>コマ絵は素材のコピーなので、素材ResourcePictureModelのデータを元に作成する。<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>のように値をコピーすること。\r
-</p><table class="wikitable" border="1"><tbody><tr><td><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicture">PanelPicture</a></td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicture">ResourcePicture</a></td></tr><tr><td>width</td><td>width</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">\r
-    <title>ResourcePictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel</link>\r
-    <dc:identifier>ResourcePictureModel</dc:identifier>\r
-    <dc:date>2012-01-03T11:56:43+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 素材\r
-絵師から提供された原画OriginalPictureModelをコマPanel上で扱いやすいように整えた画像に関するデータ。\r
-\r
-参考:ResourcePicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.B4.A0.E6.9D.90">素材</h1><p>絵師から提供された原画OriginalPictureModelをコ<a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>像に関するデータ。\r
-</p><p>参考:Reso<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a></p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">\r
-    <title>PanelPicturesController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController</link>\r
-    <dc:identifier>PanelPicturesController</dc:identifier>\r
-    <dc:date>2012-01-03T11:39:51+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関する処理。\r
-\r
-コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-\r
-参考:PanelPictureModel\r
-\r
-== index\r
-一覧形式\r
-||パラメータ||なし||\r
-||権限||管理者||\r
-\r
-== show\r
-単票形式\r
-||パラメータ||id||\r
-||権限|]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関する処理。\r
-</p><p>コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-</p><p>参考:Pane<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a></p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">\r
-    <title>ForDevelopers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers</link>\r
-    <dc:identifier>ForDevelopers</dc:identifier>\r
-\r
-    <dc:date>2012-01-02T13:28:58+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 開発者向けドキュメント\r
-== 開発環境\r
-=== サーバーサイド\r
- * Ruby1.9+Rails3.1\r
-==== 構築\r
- * InstallRubyAndRails\r
- * DownloadSourceCode\r
- * PictureIo\r
- * RmagickAndDmagick\r
-\r
-=== クライアントサイド\r
- * html4.01 + css2.1 に加え css3, SV]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h1><h2 id="h2-.E9.96.8B.E7.99.BA.E7.92.B0.E5.A2.83">開発環境</h2><h3 id="h3-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89">サーバーサイド</h3><ul><li>Ruby1.9+Rails3.1\r
-</li></ul><h4 id="h4-.E6.A7.8B.E7.AF.89">構築</h4><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/InstallRubyAndRails">InstallRubyAndRails</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/DownloadSourceCode">DownloadSourceCode</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">RmagickAndDmagick</a>\r
-</li></ul><h3 id="h3-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E3.82.B5.E3.82.A4.E3.83.89">クライアントサイド</h3><ul><li>html4.01 + css2.1 に加え css3, SVG, XML, ActiveX, Flash のうちのいくつか.\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">ClientSide</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul></li><li>javascript( jQuery + plugin)\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li></ul></li></ul><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E3.83.99.E3.83.BC.E3.82.B9">データベース</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">AboutModels</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">DatabaseSchema</a> \r
-</li></ul><h2 id="h2-.E6.A9.9F.E8.83.BD">機能</h2><ul><li>サーバ側の機能 RailsControllers<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">RailsControllers</a></li><li>JsonAPI Js<a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a></li></ul><h2 id="h2-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">ChangeDoc</a></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">\r
-    <title>XbackendSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon</link>\r
-    <dc:identifier>XbackendSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-02T01:06:05+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クロスバックエンドな吹きだし表示機能\r
-\r
-ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.[[BR]]\r
-また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.[[BR]]\r
-\r
-吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E8.A1.A8.E7.A4.BA.E6.A9.9F.E8.83.BD">クロスバックエンドな吹きだし表示機能</h1><p>ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.[[BR]]\r
-<br />また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.[[BR]]\r
-<br /></p><p>吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが操作している間にそのすべてのバリエーションを読み込んでしまう事態になります.[[BR]]\r
-<br />また、マンガという表現スタイルを考えると、キャラクター画像一枚に対して、ひとつ程度の吹き出しが登場する、と仮定するという仮定で、ぺったんのページ読み込み時の全画像アクセスのうち、半分を吹きだし画像が締めることになる試算です.[[BR]]\r
-<br />(もちろん、キャラクター画像の方がはるかにファイルサイズが大きくなります.注意深く容量を抑えて作られた場合でも 10KB ~ 20KB という試算です.)[[BR]]\r
-<br /></p><p>このような、吹きだし画像へのアクセスを抑止して、サービスの安定を図るためベクター画像をサポートするブラウザについては、ブラウザ側で吹きだし画像を用意します.\r
-</p><h1 id="h1-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h1><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5~8</td><td>ie9+</td><td>FF</td><td>safari</td><td>chrome</td><td>Opera</td></tr><tr><td>VML</td><td>○</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>SVG</td><td>×</td><td>○</td><td>1.5+</td><td>3.0+</td><td>1+</td><td>8+</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">\r
-    <title>HowToMakeSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon</link>\r
-\r
-    <dc:identifier>HowToMakeSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-01T01:59:53+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== フキダシテンプレート\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png)]]\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そし]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h2><img src="http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9492f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そして、それらすべての組み合わせの枠テンプレートとテキストテンプレートを用意してください。一つでも欠けると追加できません。\r
-</p><p>例えば、尻尾が上下左右ならtail_limitが4。サイズが大中小ならで_limitが3で、4*3で合計12の枠テンプレートとテキストテンプレートを用意します。\r
-</p><p>→tail ↓Border\r
-<table class="wikitable" border="1"><tbody><tr><td> </td><td>1</td><td>2</td><td>3</td><td>4</td></tr><tr><td>1</td><td>小-上</td><td>小-右</td><td>小-下</td><td>小-左</td></tr><tr><td>2</td><td>中-上</td><td>中-右</td><td>中-下</td><td>中-左</td></tr><tr><td>3</td><td>大-上</td><td>大-右</td><td>大-下</td><td>大-左</td></tr></tbody></table></p><p>フキダシテンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>name</td><td>フキダシの名前</td><td> </td></tr><tr><td>tail_limit</td><td>尻尾のバリエーション数</td><td> </td></tr><tr><td>border_limit</td><td>サイズのバリエーション数</td><td> </td></tr></tbody></table></p><h2 id="h2-.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">枠テンプレート</h2><p>枠は画像で用意します。フキダシ用の画像を用意して素材として投稿します。\r
-各種フキダシ素材を投稿したらIDをメモします。\r
-</p><p>枠テンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>resource_picture_id</td><td>フキダシ素材のID</td><td> </td></tr><tr><td>tail</td><td>尻尾の番号</td><td>1から始まりtail_limit-1で終わること</td></tr><tr><td>border</td><td>サイズの番号</td><td>1から始まり_limit-1で終わること</td></tr><tr><td>min_width</td><td>横方向のサイズが小さい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_width</td><td>横方向のサイズが大きい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>min_height</td><td>縦方向のサイズが小さい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_height</td><td>縦方向のサイズが大きい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr></tbody></table></p><h2 id="h2-.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">テキストテンプレート</h2><p>枠画像のどの位置にテキストを表示するかを決めて座標をメモします。\r
-</p><table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>top_offset</td><td>テキストの表示を開始するx座標</td><td> </td></tr><tr><td>left_offset</td><td>テキストの表示を開始するy座標</td><td> </td></tr><tr><td>width</td><td>テキストの表示幅</td><td> </td></tr><tr><td>height</td><td>テキストの表示高さ</td><td> </td></tr></tbody></table><p>offset と width, height ですが、単位は % になりますか??(itozyun)\r
-</p><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">データ作成</h3><p>これまでのメモからデータを作成します。データはjsonで作成します。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">\r
-    <title>ClientSide</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ClientSide</link>\r
-    <dc:identifier>ClientSide</dc:identifier>\r
-    <dc:date>2011-12-31T22:34:44+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= クライアント側\r
\r
-ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.[[BR]]\r
-マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。[[BR]]\r
-またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.[[BR]]\r
-\r
-== マンガの閲覧\r
-ぺったんR において、ブラウ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><div class="indent">\r
-</div><p>ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.[[BR]]\r
-<br />マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。[[BR]]\r
-<br />またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.[[BR]]\r
-<br /></p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.96.B2.E8.A6.A7">マンガの閲覧</h2><p>ぺったんR において、ブラウザでのマンガ状コンテンツの閲覧のために、ユーザーは Flash も含めて特別なプラグインを必要としない.\r
-</p><h3 id="h3-html.20.2B.20css2.1">html + css2.1</h3><p>ぺったんと、ぺったんを元にする ぺったんRは、マンガ状のコンテンツの表示に css2.1 でレイアウトする.[[BR]]\r
-<br />以上をサポートするブラウザであれば、ぺったん 及び ぺったんR のコンテンツは閲覧ができる.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul><h3 id="h3-javascript">javascript</h3><p>ぺったんR で新たに追加された機能や、ぺったんRサーバへの負荷を抑えるため、javascript に加え css3, SVG といった新しいWeb標準が使われる.[[BR]]\r
-<br />これらをサポートしないブラウザも少なくなく、VML, ActiveX, flash といった非Web標準も利用する.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li></ul><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E7.94.BB.E5.83.8F.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E3.82.B3.E3.83.9E.E3.81.AE.E7.B7.A8.E9.9B.86.E3.83.BB.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E8.A8.AD.E5.AE.9A">コミックの管理・画像の管理・コマの編集・ユーザー設定</h2><p>これらのログインユーザーのための機能は、javascript が前提となる.[[BR]]\r
-<br />画面は Ajax で用意されるため、サーバ側はユーザのデータの管理とクライアントとの通信に専念できる.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E3.82.B7.E3.82.A7.E3.82.A2">ブラウザシェア</h3><p>IE系では、css3 や SVG をサポートしない IE8 以下がまだまだ多く、IE6 でそのシェアは10%近く.ブラウザシェアは国毎にばらつきがあり、お隣の中国・韓国では IE のシェアが多く、IE6 でも 20~30% になる.[[BR]]\r
-<br /></p><blockquote class="citation"><p>今なおブラウザシェア10.1%もあるIE6とどう向き合えばいいのか[[BR]]\r
-<br /><a href="http://weboook.blog22.fc2.com/blog-entry-248.html" class="external" rel="nofollow">http://weboook.blog22.fc2.com/blog-entry-248.html</a>\r
-</p></blockquote><p>javascript を切っているブラウザは 1% ほどらしい.[[BR]]\r
-<br /></p><blockquote class="citation"><p><a href="http://sourceforge.jp/projects/pettanr/wiki/JavaScript">JavaScript</a>をオフにしているブラウザは1%前後。米ヤフー調べ[[BR]]\r
-<br /><a href="http://www.publickey1.jp/blog/10/javascript1.html" class="external" rel="nofollow">http://www.publickey1.jp/blog/10/javascript1.html</a>\r
-</p></blockquote>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PngFix">\r
-    <title>PngFix</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PngFix</link>\r
-    <dc:identifier>PngFix</dc:identifier>\r
-    <dc:date>2011-12-29T16:31:59+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= Internet Exproler 6 以下での PNG 画像の表示について\r
-ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.[[BR]]\r
-このため ぺったん では、png 画像を非推奨としてきた.[[BR]]\r
-ぺったんRでも それを踏襲することは変わりない.[[BR]]\r
-しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバッ]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-Internet.20Exproler.206.20.E4.BB.A5.E4.B8.8B.E3.81.A7.E3.81.AE.20PNG.20.E7.94.BB.E5.83.8F.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">Internet Exproler 6 以下での PNG 画像の表示について</h1><p>ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.[[BR]]\r
-<br />このため ぺったん では、png 画像を非推奨としてきた.[[BR]]\r
-<br />ぺったんRでも それを踏襲することは変わりない.[[BR]]\r
-<br />しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバックエンドな png 表示サポートを実施する.[[BR]]\r
-<br />とはいえ、必要なプラグイン等がインストールされていない、機能が無効になっている場合、透過情報は正しく反映されない.[[BR]]\r
-<br /></p><h2 id="h2-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h2><h2 id="h2-VML">VML</h2><h2 id="h2-ActiveX.20Alpha.20Image.20Loader">ActiveX Alpha Image Loader</h2><h2 id="h2-Flash">Flash</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">\r
-    <title>ForWebmasters</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters</link>\r
-    <dc:identifier>ForWebmasters</dc:identifier>\r
-\r
-    <dc:date>2011-12-28T09:07:11+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 管理者向け\r
-\r
-== フキダシテンプレートのメンテナンス\r
- * フキダシテンプレートについて AboutSpeachBalloon\r
- * フキダシテンプレートの追加 HowToMakeSpeachBalloon\r
-\r
-== ライセンスのメンテナンス\r
- * ライセンスについて]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.AE.A1.E7.90.86.E8.80.85.E5.90.91.E3.81.91">管理者向け</h1><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">フキダシテンプレートのメンテナンス</h2><ul><li>フキダシテンプレートについて AboutSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a></li><li>フキダシテンプレートの追加 HowToMakeSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">ライセンスのメンテナンス</h2><ul><li>ライセンスについて</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">\r
-    <title>AboutSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon</link>\r
-    <dc:identifier>AboutSpeachBalloon</dc:identifier>\r
-    <dc:date>2011-12-28T08:57:17+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= フキダシテンプレート\r
-フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-\r
-ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-\r
-しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能で]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-</p><p>ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-</p><p>しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能ですから、最小限の操作でフキダシを扱えなければ困ります。そこで、ぺったんはオーソドックスなフキダシをテンプレート化して用意しました。もちろんテンプレートは自由に追加できます。\r
-</p><h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E6.A7.8B.E6.88.90">フキダシテンプレートの構成</h1><p>フキダシテンプレートは次の三つの階層で構成されています。\r
-</p><ul><li>フキダシテンプレート SpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloon">SpeachBalloon</a></li><li>枠テンプレート BalloonTemplate\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonTemplate">BalloonTemplate</a></li><li>テキストテンプレート SpeachTemplate\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplate">SpeachTemplate</a></li></ul><p>フキダシは枠とテキストから構成されます。枠テンプレートとテキストテンプレートがそれです。ただし、フキダシには大抵吹き出し口(ぺったんでは尻尾と言います)が付きますから、同じフキダシでもいくつかのバリエーションができます。それをグループ化するのがフキダシテンプレートです。\r
-</p><h2 id="h2-.E6.83.B3.E5.AE.9A.E3.81.99.E3.82.8B.E3.83.90.E3.83.AA.E3.82.A8.E3.83.BC.E3.82.B7.E3.83.A7.E3.83.B3">想定するバリエーション</h2><p>ぺったんでは次の二つのバリエーションを想定しています。\r
-</p><ul><li>尻尾の向き\r
-</li><li>枠のサイズ\r
-</li></ul><p>尻尾の向きはフキダシの使われ方によって変わりますが、上下左右や角の四隅などに付くことが多いでしょうか。このバリエーションが多いほど融通が利くフキダシになります。\r
-</p><p>ぺったんはコマに貼ったフキダシを自由にサイズ調整できますが、フキダシを極端に拡大あるいは縮小すると、枠の画像によっては線が太ってしまったり、かすれてしまうことがあります。枠の画像には適正なサイズが要求されますので、より良いテンプレートはいくつかのサイズのバリエーションを用意する必要があります。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">\r
-    <title>JsonApi</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JsonApi</link>\r
-\r
-    <dc:identifier>JsonApi</dc:identifier>\r
-    <dc:date>2011-12-26T19:13:24+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= JsonAPI\r
-ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-\r
-JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-\r
-APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,G]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-JsonAPI">JsonAPI</h1><p>ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-</p><p>JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-</p><p>APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,GET,PUT,DELETEに対応しているが、普通のブラウザからはGETしかできないので、手っ取り早くJsonAPIで遊ぶならcurlをインストールすると良い。\r
-</p><p>なお、railsではjsonでのやり取りを次のように規定している。\r
-</p><ul><li>URLの末尾を拡張子のように.jsonする\r
-</li><li>リクエストヘッダはContent-Type: application/jsonとする\r
-</li></ul><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.8F.96.E5.BE.97">jsonデータの取得</h2><p>例えば、ID:2のコマPanelのデータをcurlで取得するには次のようにする。\r
-</p><pre>curl http://hostname/panels/2.json -X GET -H &quot;Content-Type: application/json&quot;\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.8A.95.E7.A8.BF">jsonでの投稿</h2><p>例えば、コミックをcurlで作成するには次のようにする。このとき、作成するためのjsonデータはcomic_create.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X POST -H &quot;Content-Type: application/json&quot; -d @comic_create.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.9B.B4.E6.96.B0">jsonでの更新</h2><p>例えば、コミックをcurlで更新するには次のようにする。このとき、更新するためのjsonデータはcomic_update.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X PUT -H &quot;Content-Type: application/json&quot; -d @comic_update.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E5.89.8A.E9.99.A4">jsonでの削除</h2><p>例えば、コミックをcurlで削除するには次のようにする。このとき、削除するためのjsonデータはcomic_delete.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X DELETE -H &quot;Content-Type: application/json&quot; -d @comic_delete.json\r
-</pre><p>※普通に削除するだけならDELETEメソッドだけで削除できる。jsonデータcomic_delete.jsonは必要ないはずだが、誰でも削除できるのはおかしな話なので、大抵の場合は認証がいるだろう。認証に必要なauth_tokenを渡すのだが、auth_tokenについては後述する。\r
-</p><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">jsonデータの作り方</h2><p>jsonデータがどんなものかはググッてもらうとして、rails風なところを…\r
-</p><p>コミック作成に使ったcomic_create.jsonを例とすると次のようになる。\r
-<pre>{\r
-  &quot;comic&quot;: {\r
-    &quot;title&quot;: &quot;コミック作るテスト&quot;,\r
-    &quot;default_width&quot;: 400,\r
-    &quot;default_height&quot;: 200\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre>comicはコミックのmodel、titleなどはmodelのカラム。モデルの下に必要なカラムをキーにして値を記述する。\r
-</p><p>auth_tokenは認証が必要な操作をする場合に記述する。\r
-</p><h3 id="h3-auth_token">auth_token</h3><p>認証が必要な操作をする場合にはauth_tokenを用意する。auth_tokenはログイン後にプロフィールページを開くと書いてある。今のところは。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">ネストしたデータの作り方</h3><p>コマの投稿など、複数のモデルを一つのトランザクションで更新するような操作はjsonデータも複数のモデルについて記述しなければならない。\r
-</p><p>ネストされている子のデータはモデル名+_attributesをキーとしたハッシュ型の値をペアにして記述する。例えば、コマ絵のモデルpanel_picturesはpanel_pictures_attributesとなる。値側は複数のレコードを含むことが想定されるので、これもハッシュ型とする。こちらのキーは一意であれば何でもよく、値がレコードのデータである。文章じゃよくわからんので、コマ絵panel_pictures一つを含んだコマpanelを作成する場合の実際のデータを示す。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>コマ絵が二枚だと、こんな感じ。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      },\r
-      &quot;new2&quot;: {\r
-        &quot;width&quot;: 50,\r
-        &quot;height&quot;: 75,\r
-        &quot;resource_picture_id&quot;: 1,\r
-        &quot;top_offset&quot;: 30,\r
-        &quot;left_offset&quot;: 14,\r
-        &quot;zindex&quot;: 2,\r
-        &quot;v&quot;: 0,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><p>キーの&quot;new1&quot;と&quot;new2&quot;は適当な命名なんであるが、こんな要領で列挙していけばまとめて作成できる。\r
-</p><p>では、次にコマ絵だけでなくフキダシとセリフも含むデータを作成してみるが、その前に各モデルの関係を整理しておく。\r
-<pre>panel\r
-  panel_pictures\r
-  balloons\r
-    speaches\r
-</pre>だったね。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 3,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    },\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;newf1&quot;: {\r
-        &quot;balloon_template_id&quot;: 1,\r
-        &quot;resource_picture_id&quot;: 2,\r
-        &quot;tail&quot;: 1,\r
-        &quot;border&quot;: 1,\r
-        &quot;zindex&quot;: 5,\r
-        &quot;width&quot;: 81,\r
-        &quot;height&quot;: 63,\r
-        &quot;top_offset&quot;: 120,\r
-        &quot;left_offset&quot;: 35,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;newf1s1&quot;: {\r
-            &quot;content&quot;: &quot;test&quot;,\r
-            &quot;width&quot;: 61,\r
-            &quot;height&quot;: 43,\r
-            &quot;top_offset&quot;: 10,\r
-            &quot;left_offset&quot;: 10\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E6.9B.B4.E6.96.B0">ネストしたデータの更新</h3><p>あるコマのセリフを変更したいとする。セリフはspeachなのでspeaches経由で更新したいところだが、ぺったんの仕様はコマ全体で更新することになっているので、speachesのAPIは用意されていない。コマの変更はpanel経由で行う。このとき、jsonデータでは、どのように変更対象のセリフを指示するのだろうか。\r
-</p><p>結論としてはidをデータに含めて指定する。例えば、セリフのidが3のときは次のようになる。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;s3&quot;: {\r
-            &quot;id&quot;: 3,\r
-            &quot;content&quot;: &quot;modify&quot;\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>idが指定されていないと新規追加となってしまう。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.89.8A.E9.99.A4">ネストしたデータの削除</h3><p>削除する場合、更新のときと同じようにidを指定しつつ_destroyにフラグを立てる。例えば、idが2のフキダシをコマから削除する場合、次のようにする。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;_destroy&quot;: 1\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AE.E6.8A.95.E7.A8.BF">画像の投稿</h2><p>auth_tokenを含みながらのファイル送信がよくわからん。いろんなパターンで試してみたが素直にはいかなかった。苦肉の策が画像データを一度Base64でエンコードしたものをテキストとして送信すること。次の例は当然エンコードテキストは省略されている。\r
-<pre>{\r
-  &quot;original_picture&quot;: {\r
-    &quot;file&quot;: \r
-&quot;iVBORw0KGgoAAAANSUhEUgAAAWIAAAF7CAYAAADohYEpAAAcW0lEQVR4nO3d\r
-  :\r
-  :\r
-ghgAlP0/Bxl7hN5Zu0EAAAAASUVORK5CYII=\r
-&quot;\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">\r
-    <title>AboutLisence</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutLisence</link>\r
-    <dc:identifier>AboutLisence</dc:identifier>\r
-    <dc:date>2011-12-25T12:47:25+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= ライセンスについて\r
-※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-\r
-== 選べるライセンス\r
-ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-\r
-絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-\r
-== 用意されたライセンス\r
- * Public Domain\r
-   * ライ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">ライセンスについて</h1><p>※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-</p><h2 id="h2-.E9.81.B8.E3.81.B9.E3.82.8B.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">選べるライセンス</h2><p>ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-</p><p>絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-</p><h2 id="h2-.E7.94.A8.E6.84.8F.E3.81.95.E3.82.8C.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">用意されたライセンス</h2><ul><li>Public Domain\r
-<ul><li>ライセンス表示 http://ja.wiki<a href="http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3" class="external" rel="nofollow">http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3</a></li></ul></li><li>Creative Commons 3.0(by)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_sa)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-sa/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nd)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nd/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc_sa)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc_nd)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode</a></li></ul></li><li>Unknown\r
-<ul><li>著作権がはっきりしないもの\r
-</li></ul></li></ul><h2 id="h2-.E5.90.88.E3.81.A3.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E3.81.AA.E3.81.84">合ったライセンスがない</h2><p>自前の作品に特殊なライセンスを付与したいと考えるケースもあるでしょう。そういった場合、絵師がライセンスを作成することができます。このような特殊なライセンスをぺったんではオリジナルライセンスと言います。それに対して、ぺったんにあらかじめ用意されたライセンスをコモンライセンスと言います。\r
-</p><p>特に区別したい場合は、コモンライセンス・オリジナルライセンスと言いますが、ただライセンスと言った場合は、両者を合わせたものとなります。\r
-</p><h2 id="h2-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">コモンライセンス</h2><p>コモンライセンスをメンテナンスできるのは管理者だけです。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">オリジナルライセンス</h2><p>絵師はオリジナルライセンスを作成できます。また、自分が作成したオリジナルライセンスを更新できます。\r
-</p><h3 id="h3-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.B8.E3.81.AE.E6.98.87.E6.A0.BC">コモンライセンスへの昇格</h3><p>何かと信頼の薄いオリジナルライセンスですが、ある程度の評価が得られ、ぺったん管理者が有用性を認めればコモンライセンスへ昇格することもあります。\r
-</p><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E5.89.8A.E9.99.A4.E3.81.95.E3.82.8C.E3.82.8B.E3.81.A8">ライセンスが削除されると</h2><p>ライセンスを削除してしまうと、そのライセンスを適用した素材はすべてライセンスなしになってしまいます。それを避けるために一枚でも適用されているライセンスは削除できません。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.A7.E6.98.8E.E7.A4.BA.E3.81.A7.E3.81.8D.E3.82.8B.E3.81.93.E3.81.A8">オリジナルライセンスで明示できること</h2><ul><li>cc_by\r
-<ul><li>作者の表示\r
-</li></ul></li><li>cc_sa\r
-</li><li>cc_nd\r
-</li><li>cc_nc\r
-</li><li>no_resize\r
-<ul><li>サイズ変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてはならない\r
-</li></ul></li><li>no_flip\r
-<ul><li>反転の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上で垂直反転水平反転してはならない\r
-</li></ul></li><li>keep_aspect_ratio\r
-<ul><li>縦横比変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてもよいが縦横比を変えてはならない\r
-</li></ul></li></ul><p>クリエイティブコモンズの属性はすべて用意しましたが、ぺったん上ではあまり効果を発揮できません。というのも、ぺったんには画像を改変する機能が備わっていませんから、改変しようがないし、投稿された素材が改変されたものであるかを判別する手立てがないのです。非営利についても似たようなもので、web上の配布に営利はありません。もちろんアフィリエイトも禁止されているわけではありません。\r
-</p><p>作者の表示については必ず同一ページ内に表示します。ただし、ぺったんRはオープンソースライセンスですから、ソースコードが改変された場合は、その限りではありません。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">\r
-    <title>CommonLisencesController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController</link>\r
-    <dc:identifier>CommonLisencesController</dc:identifier>\r
-    <dc:date>2011-12-24T11:03:09+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= CommonLisencesController \r
-管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-CommonLisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a></h1><p>管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">\r
-    <title>LisencesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LisencesController</link>\r
-    <dc:identifier>LisencesController</dc:identifier>\r
-\r
-    <dc:date>2011-12-24T10:46:17+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= LisencesController \r
-コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべてCommonLisencesControllerとOriginalLisencesController側にある。\r
-\r
-常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離してお]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-LisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a></h1><p>コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべてCommonLisencesControllerとOriginalLisencesController側にある。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a></p><p>常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離しておいた。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">\r
-    <title>RailsControllers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RailsControllers</link>\r
-    <dc:identifier>RailsControllers</dc:identifier>\r
-    <dc:date>2011-12-24T10:26:53+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= サーバ側の機能\r
-== コミック関係\r
- * ComicsController\r
- * PanelsController\r
- * PanelPicturesController\r
- * BalloonsController\r
- * SpeachsController\r
-== 素材関係\r
- * OriginalPicturesController\r
- * ResourcePicturesCont]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B5.E3.83.BC.E3.83.90.E5.81.B4.E3.81.AE.E6.A9.9F.E8.83.BD">サーバ側の機能</h1><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E9.96.A2.E4.BF.82">コミック関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicsController">ComicsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonsController">BalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachsController">SpeachsController</a>\r
-</li></ul><h2 id="h2-.E7.B4.A0.E6.9D.90.E9.96.A2.E4.BF.82">素材関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicturesController">OriginalPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a>\r
-</li></ul><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E9.96.A2.E4.BF.82">フキダシテンプレート関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">SpeachBalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplatesController">BallonTemplatesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplatesController">SpeachTemplatesController</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E9.96.A2.E4.BF.82">ライセンス関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisencesController">OriginalLisencesController</a>\r
-</li></ul><h2 id="h2-.E5.BD.B9.E5.89.B2.E9.96.A2.E4.BF.82">役割関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorsController">AuthorsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistsController">ArtistsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AdminsController">AdminsController</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">\r
-    <title>WhatsPettan</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan</link>\r
-\r
-    <dc:identifier>WhatsPettan</dc:identifier>\r
-    <dc:date>2011-12-24T09:18:24+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ぺったんとは\r
-以下からは一般向け文書。ヘルプとかマニュアルです。\r
-== 絵師\r
- * GuidanceForArtist\r
-== 作家\r
- * GuidanceForAuthor\r
-== ライセンス\r
- * AboutLisence\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93.E3.81.A8.E3.81.AF">ぺったんとは</h1><p>以下からは一般向け文書。ヘルプとかマニュアルです。\r
-</p><h2 id="h2-.E7.B5.B5.E5.B8.AB">絵師</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6">作家</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">GuidanceForAuthor</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">ライセンス</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">AboutLisence</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">\r
-    <title>GuidanceForArtist</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist</link>\r
-    <dc:identifier>GuidanceForArtist</dc:identifier>\r
-    <dc:date>2011-12-23T17:08:22+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 絵師さん向け文書?\r
-== 絵師の役割\r
-== 絵師になるには\r
-== 絵のライセンス\r
-\r
-== 絵の活用\r
-ぺったんは投稿された画像を次のように扱います\r
- * 画像をサーバ内のディスクスペースに保存します\r
-   * この画像を原画と言います\r
- * 原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-   * これらの画像を素材と言います\r
-   * 原画]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.B5.B5.E5.B8.AB.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">絵師さん向け文書?</h1><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AE.E5.BD.B9.E5.89.B2">絵師の役割</h2><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AB.E3.81.AA.E3.82.8B.E3.81.AB.E3.81.AF">絵師になるには</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">絵のライセンス</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E6.B4.BB.E7.94.A8">絵の活用</h2><p>ぺったんは投稿された画像を次のように扱います\r
-</p><ul><li>画像をサーバ内のディスクスペースに保存します\r
-<ul><li>この画像を原画と言います\r
-</li></ul></li><li>原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-<ul><li>これらの画像を素材と言います\r
-</li><li>原画が反転禁止のライセンスを採用しているときは反転画像を保存しません\r
-</li></ul></li><li>素材は作家がコマ上に添付されます\r
-<ul><li>利用するコマエディタの\r
-</li></ul></li></ul><p>コマ上での扱い\r
-</p><ul><li><ul><li>原画が拡縮禁止のライセンスを採用しているときは拡縮画像を保存しません\r
-<ul><li>ただし、サムネイル画像のサイズに収まらない画像については縮小して表示します\r
-</li></ul></li></ul></li></ul><p>素材→コマ絵\r
-</p><h2 id="h2-.E9.85.8D.E5.B8.83.E3.81.AE.E5.81.9C.E6.AD.A2">配布の停止</h2><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.B5.E3.83.BC.E3.83.90">素材サーバ</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">\r
-    <title>GuidanceForAuthor</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor</link>\r
-    <dc:identifier>GuidanceForAuthor</dc:identifier>\r
-    <dc:date>2011-12-23T16:48:50+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 作家さん向け文書?\r
-== 作家とは\r
-ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-\r
-作家となるには、サイトへの登録が必要です。\r
-\r
-== 作家ができる表現\r
- * コマを作る\r
- * コミックを作る\r
- * コミックの配布範囲を決める\r
-=== コマを作る\r
-=== コミックを作る\r
-=== コミックの配布範囲を決める\r
-\r
-=]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E4.BD.9C.E5.AE.B6.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">作家さん向け文書?</h1><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.A8.E3.81.AF">作家とは</h2><p>ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-</p><p>作家となるには、サイトへの登録が必要です。\r
-</p><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.8C.E3.81.A7.E3.81.8D.E3.82.8B.E8.A1.A8.E7.8F.BE">作家ができる表現</h2><ul><li>コマを作る\r
-</li><li>コミックを作る\r
-</li><li>コミックの配布範囲を決める\r
-</li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.82.92.E4.BD.9C.E3.82.8B">コマを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.82.92.E4.BD.9C.E3.82.8B">コミックを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E9.85.8D.E5.B8.83.E7.AF.84.E5.9B.B2.E3.82.92.E6.B1.BA.E3.82.81.E3.82.8B">コミックの配布範囲を決める</h3><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.92.E7.94.A8.E6.84.8F.E3.81.99.E3.82.8B">素材を用意する</h2><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E5.89.8D.E3.81.AB.E7.B5.B5.E5.B8.AB.E7.99.BB.E9.8C.B2">素材の前に絵師登録</h3><p>作家は素材を投稿することができません。素材は絵師が投稿することになっています。なぜなら、ぺったんはあなたの素材を容易に他のぺったんサイトに提供できるようになっているからです。少々面倒な構成にはなっていますが、心配には及びません。絵師の登録はワンクリック程度で完了します。\r
-</p><p>登録に必要な情報は下記の項目です。\r
-</p><ul><li>ペンネーム デフォルトで作家名が設定されます\r
-</li><li>デフォルトのライセンス\r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E6.8A.95.E7.A8.BF">素材の投稿</h3><p>絵師登録が完了すると、素材エクスプローラーに投稿フォームが現れます。\r
-</p><p>素材を投稿するにあたっての注意事項はGuidanceForArtistをご覧下さい。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">\r
-    <title>TranslationComicElements</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements</link>\r
-    <dc:identifier>TranslationComicElements</dc:identifier>\r
-\r
-    <dc:date>2011-12-23T11:41:06+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 資料・マンガ要素の日英対訳\r
- * コーディング中の命名や、国際化対応のための資料にする.\r
-\r
-== マンガの部品名の対訳\r
- * コママンガ(jp) - comic strip(en)\r
- * コマ(jp) - panel(en)\r
- * 枠線(jp) -(en)\r
- * 吹き出し(jp) - speach balloon, speach bubble(en)\r
- * ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E8.B3.87.E6.96.99.E3.83.BB.E3.83.9E.E3.83.B3.E3.82.AC.E8.A6.81.E7.B4.A0.E3.81.AE.E6.97.A5.E8.8B.B1.E5.AF.BE.E8.A8.B3">資料・マンガ要素の日英対訳</h1><ul><li>コーディング中の命名や、国際化対応のための資料にする.\r
-</li></ul><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.83.A8.E5.93.81.E5.90.8D.E3.81.AE.E5.AF.BE.E8.A8.B3">マンガの部品名の対訳</h2><ul><li>コママンガ(jp) - comic strip(en)\r
-</li><li>コマ(jp) - panel(en)\r
-</li><li>枠線(jp) -(en)\r
-</li><li>吹き出し(jp) - speach balloon, speach bubble(en)\r
-</li><li></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">\r
-    <title>PictureIo</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PictureIo</link>\r
-    <dc:identifier>PictureIo</dc:identifier>\r
-    <dc:date>2011-12-23T11:28:56+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= PictureIO\r
-== 画像はPictureIOが出し入れする\r
-投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-\r
-差し当たってローカルファイル用のLocalPictureIOとAmazonAW]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-PictureIO">PictureIO</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AFPictureIO.E3.81.8C.E5.87.BA.E3.81.97.E5.85.A5.E3.82.8C.E3.81.99.E3.82.8B">画像はPictureIOが出し入れする</h2><p>投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-</p><p>差し当たってローカルファイル用のLocalPictureIOとAmazonAWS用のS3Pict<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>意した。\r
-</p><p>デフォルトでは、開発・テスト環境ではLocalPictureIOを使い、本番ではS3PictureIOを使っ<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>環境に合わせて設定を変える必要がある。設定は下記のファイルを書き換える。\r
-<pre>config/environments/development.rb \r
-config/environments/production.rb\r
-</pre></p><h2 id="h2-LocalPictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IO</h2><p><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IOを使う場合は、config/environments/development.rb で、以下のように書く。\r
-<pre>require 'local_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::LocalPicture.new '/pettanr/original/'\r
-  config.resource_picture_io = PictureIO::LocalPicture.new  '/pettanr/resource/'\r
-end\r
-</pre></p><p>これで原画は/pettanr/original/に保管され、素材は/pettanr/resource/に保管される。\r
-</p><p>※パス処理がショボいのでスラッシュの有無に大きな違いがある。あと、ディレクトリ掘ってないとコケる。\r
-</p><h2 id="h2-S3PictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IO</h2><p>AmazonAWSを使うなら、当然S3が使えるよう、準備しておく。Amazonからキーがもらえるので設定する。\r
-</p><p>まず、config/aws.yaml.orgをコピーする。\r
-<pre>cp config/aws.yaml.org config/aws.yaml\r
-</pre>コピーしたaws.yamlを編集。\r
-<pre>access_key_id: XXXXXXXXXXXXXXXXXXXX\r
-secret_access_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r
-</pre></p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IOを使う場合は、config/environments/production.rbで、以下のように書く。\r
-<pre>require 'aws/s3'\r
-require 'yaml'\r
-\r
-y = YAML.load(open(Rails.root + 'config/aws.yaml').read)\r
-AWS::S3::Base.establish_connection!(\r
-  :access_key_id =&gt; y[&quot;access_key_id&quot;], \r
-  :secret_access_key =&gt; y[&quot;secret_access_key&quot;]\r
-)\r
-require 's3_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::S3Picture.new 'pettanr-original'\r
-  config.resource_picture_io = PictureIO::S3Picture.new 'pettanr-stable'\r
-end\r
-</pre>これで原画はpettanr-original/に保管され、素材はpettanr-stable/に保管される。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">\r
-    <title>RmagickAndDmagick</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick</link>\r
-\r
-    <dc:identifier>RmagickAndDmagick</dc:identifier>\r
-    <dc:date>2011-12-23T10:53:11+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= RMagickとDMagick\r
-== 画像処理はRMagick\r
-絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-\r
-== RMagickは案外地獄\r
-Windows環境では。\r
-\r
-コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-\r
-= 仕方ないからDMagick\r
-RMagickなしでは丸で動かないので]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-RMagick.E3.81.A8DMagick">RMagickとDMagick</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E5.87.A6.E7.90.86.E3.81.AFRMagick">画像処理はRMagick</h2><p>絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-</p><h2 id="h2-RMagick.E3.81.AF.E6.A1.88.E5.A4.96.E5.9C.B0.E7.8D.84">RMagickは案外地獄</h2><p>Windows環境では。\r
-</p><p>コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-</p><h1 id="h1-.E4.BB.95.E6.96.B9.E3.81.AA.E3.81.84.E3.81.8B.E3.82.89DMagick">仕方ないからDMagick</h1><p>RMagickなしでは丸で動かないので、あたかもRMagickがあるかのように振る舞う空箱を用意した。それがDMagick。\r
-</p><p>デフォルトでは開発環境でDMagickを使うようにしてあるので、RMagickが使えるなら、config/environments/development.rbを書き換える。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/InstallRubyAndRails">\r
-    <title>InstallRubyAndRails</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/InstallRubyAndRails</link>\r
-    <dc:identifier>InstallRubyAndRails</dc:identifier>\r
-    <dc:date>2011-12-22T18:14:49+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 環境構築\r
-== Ruby\r
-ruby1.9系が入っていることを確認\r
-&gt; ruby -v[[BR]]\r
-&gt; ruby 1.9.2p290 (2011-07-09) [i386-mingw32]\r
-\r
-== gem\r
-&gt; gem install bundler\r
-\r
-== source code\r
-&gt; git clone git://git.sourceforge.jp]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.92.B0.E5.A2.83.E6.A7.8B.E7.AF.89">環境構築</h1><h2 id="h2-Ruby">Ruby</h2><p>ruby1.9系が入っていることを確認\r
-</p><blockquote class="citation"><p>ruby -v<br />\r
-ruby 1.9.2p290 (2011-07-09) <a href="http://sourceforge.jp/projects/pettanr/wiki/i386-mingw32">i386-mingw32</a>\r
-</p></blockquote><h2 id="h2-gem">gem</h2><blockquote class="citation"><p>gem install bundler\r
-</p></blockquote><h2 id="h2-source.20code">source code</h2><blockquote class="citation"><p>git clone git://git.sourceforge.jp/gitroot/pettanr/pettanr.git peta\r
-cd peta\r
-</p></blockquote><h2 id="h2-gem.20library.20install">gem library install</h2><blockquote class="citation"><p>bundle install --without production\r
-</p></blockquote><h2 id="h2-init.20database">init database</h2><blockquote class="citation"><p>rake db:migrate\r
-</p></blockquote><h2 id="h2-create.20admin.20account">create admin account</h2><blockquote class="citation"><p>rails r &quot;Admin.start('admin@mail.adr.ess', 'admin_password')&quot;\r
-</p></blockquote><h2 id="h2-configure.20file.20io">configure file io</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-    </rdf:RDF>\r
index 8d60b9f..2007c5d 100644 (file)
@@ -30,7 +30,7 @@
                        </meta>\r
                        <title><xsl:value-of select="rss:channel/rss:title"/></title>\r
                        \r
-                       <link rel="stylesheet" href="../common.css" type="text/css" />\r
+                       <link rel="stylesheet" href="../stylesheets/common.css" type="text/css" />\r
                        <link rel="stylesheet" href="wiki.css" type="text/css" />\r
   </head>\r
   <body>\r
                        </div>\r
                        \r
     <script type="text/javascript" src="wiki.js"></script>\r
-    <script type="text/javascript" src="../common.js"></script>\r
+    <script type="text/javascript" src="../javascripts/common.js"></script>\r
   </body>\r
   </html>\r
 </xsl:template>\r
diff --git a/0.4.x/wiki/wiki_120117.xml b/0.4.x/wiki/wiki_120117.xml
deleted file mode 100644 (file)
index feafd6a..0000000
+++ /dev/null
@@ -1,2641 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>\r
-<?xml-stylesheet type="text/xsl" href="wiki.xsl"?>\r
-\r
-<rdf:RDF\r
-  xmlns="http://purl.org/rss/1.0/"\r
-  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"\r
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"\r
-  xmlns:dc="http://purl.org/dc/elements/1.1/"\r
- >\r
-<?xml-stylesheet type="text/xsl" href="wiki.xsl"?>\r
-\r
-  <channel rdf:about="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">\r
-    <title>ぺったんR Wiki</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</link>\r
-    <description>\r
-      ぺったんR プロジェクト Wiki ページ一覧    </description>\r
-        <dc:date>2012-01-17T19:40:41+09:00</dc:date>\r
-\r
-        <items>\r
-      <rdf:Seq>\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ComicsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ComicModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/StatusCode" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/FrontPage" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/SystemController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutModels" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AppendixList" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ClientSide" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PngFix" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JsonApi" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LisencesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PictureIo" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick" />\r
-              </rdf:Seq>\r
-    </items>\r
-  </channel>\r
-\r
-      <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ComicsController">\r
-    <title>ComicsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ComicsController</link>\r
-    <dc:identifier>ComicsController</dc:identifier>\r
-    <dc:date>2012-01-17T19:40:41+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コミック\r
-ストーリー性を持ったコマの集合体に名前をつけるためのデータ。表紙のようなもの。\r
-\r
-== top\r
-総合トップページ。\r
-=== url\r
- * http://localhost:3000/\r
-=== リクエスト\r
-||パラメータ||なし||\r
-||権限||作家||\r
-||html||○||\r
-||json||&times;||\r
-||jsonp||&times;||\r
-||me]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF">コミック</h1><p>ストーリー性を持ったコマの集合体に名前をつけるためのデータ。表紙のようなもの。\r
-</p><h2 id="h2-top">top</h2><p>総合トップページ。\r
-</p><h3 id="h3-url">url</h3><ul><li><a href="http://localhost:3000/" class="external" rel="nofollow">http://localhost:3000/</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>×</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC">解説</h3><p>ぺったんRのロゴがクリックされたときに開くページ。コミュニティ関連の入り口となる。コミックとは関係ないが、他に行き場がない。\r
-</p><p>各コンテンツの最新情報が表示される。雑多な情報を扱うのでjsonには対応しない。\r
-</p><hr /><h2 id="h2-index">index</h2><p>一覧形式\r
-</p><h3 id="h3-url-2">url</h3><ul><li><a href="http://localhost:3000/comics" class="external" rel="nofollow">http://localhost:3000/comics</a>\r
-</li><li><a href="http://localhost:3000/comics.json" class="external" rel="nofollow">http://localhost:3000/comics.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-2">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-2">解説</h3><p>新着コミック20件を一覧形式で表示する。ただし、作者によって非公開にされたコミックは含まない。\r
-</p><ul><li>comicのvisible=1な行をposted_at降順で20件分取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li></ul></li></ul><p>jsonでは、comicにauthorを含んだデータを返す。\r
-</p><hr /><h2 id="h2-show">show</h2><p>単票形式\r
-</p><h3 id="h3-url-3">url</h3><ul><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-3">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-3">解説</h3><p>クライアントがコミックの情報を得るために使う機能。\r
-ユーザがコミック情報だけをみても、うれしいことはないので、jsonのみとなる。\r
-</p><ul><li>要求されたidのcomicを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>json形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-2">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-2">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li></ul></li></ul><p>jsonでは、comicにauthorを含んだデータを返す。\r
-</p><hr /><h2 id="h2-play">play</h2><p>コミック閲覧。コミックを読むための機能。\r
-</p><h3 id="h3-url-4">url</h3><ul><li><a href="http://localhost:3000/comics/play/1" class="external" rel="nofollow">http://localhost:3000/comics/play/1</a>\r
-</li><li><a href="http://localhost:3000/comics/play/1.json" class="external" rel="nofollow">http://localhost:3000/comics/play/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-4">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id,offset,count</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF">パラメータ</h3><h4 id="h4-offset">offset</h4><ul><li>指定した数のコマだけ飛ばして表示を始める。\r
-<ul><li>offset=3のときはコミック開始から数えて4コマ目から表示される。\r
-</li></ul></li><li>省略時は0。\r
-</li><li>投稿されたコマ数以上の値が指定されたときは、最後のコマだけが表示される。\r
-</li><li>負の値が指定されたときは、最後のコマから数えてコマを飛ばして表示する。\r
-<ul><li>-4のときは、最後から4つのコマを表示する。\r
-</li></ul></li></ul><h4 id="h4-count">count</h4><ul><li>指定した数だけコマを表示する。\r
-</li><li>省略時は30。\r
-</li><li>最大値は200で、それ以上多い値が指定されたときは、最大値に切り詰められる。\r
-</li><li>負の値が指定されたときは、デフォルト値となる。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-4">解説</h3><p>コミックにつながっているコマを指定されたオフセット位置からコマ数だけ時系列t順に表示する。コマ上の部品はまとめて取得する。\r
-</p><ul><li>要求されたidのcomicと関連データを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.81.AE.E6.95.B4.E5.BD.A2">コマの整形</h3><p>コマ上の部品であるコマ絵とフキダシは時系列tでソートして返さなければならない。表示的にはすべてが時間で上から下に流れるのがぺったんRの仕様である。しかし、sqlでは二つのテーブルを混ぜてソートはできないので時系列順に配置しなおして(配列のキーをtにして)戻さなければならない。balloons配下のspeachesも同様にtでソートしておく。\r
-<pre>panels:{\r
-  1: balloons: {...},\r
-  2: panel_pictures: {...},\r
-  3: balloons: {speaches: {1: {...}, 2:{...}}},\r
-  4: panel_pictures: {...},\r
-}\r
-</pre></p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-3">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-3">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li><li>panels\r
-<ul><li>panel_pictures\r
-<ul><li>resource_picture\r
-<ul><li>artist\r
-</li><li>lisence\r
-</li></ul></li></ul></li><li>balloons\r
-<ul><li>speaches\r
-</li></ul></li></ul></li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>指定されたidが非公開だった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-new">new</h2><p>新規\r
-</p><h3 id="h3-url-5">url</h3><ul><li><a href="http://localhost:3000/comics/new" class="external" rel="nofollow">http://localhost:3000/comics/new</a>\r
-</li><li><a href="http://localhost:3000/comics/new.json" class="external" rel="nofollow">http://localhost:3000/comics/new.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-5">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-5">解説</h3><p>コミック情報を作成するための入力フォームをまっさらなページで表示する。\r
-</p><p>フォームの表示のみなので、これといった処理はない。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-4">正常系</h4><ul><li>入力フォームを返す。\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-2">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li></ul><hr /><h2 id="h2-create">create</h2><p>作成\r
-</p><h3 id="h3-url-6">url</h3><ul><li><a href="http://localhost:3000/comics" class="external" rel="nofollow">http://localhost:3000/comics</a>\r
-</li><li><a href="http://localhost:3000/comics.json" class="external" rel="nofollow">http://localhost:3000/comics.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-6">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-2">パラメータ</h3><h4 id="h4-comic">comic</h4><ul><li>コミックの情報。<a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>を参照。\r
-</li><li>title\r
-</li><li>width\r
-</li><li>height\r
-</li><li>visible\r
-</li><li>editable\r
-</li></ul><h4 id="h4-auth_token">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-6">解説</h3><p>コミックを新規作成するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>パラメータからcomicデータを起こす。\r
-</li><li>起こしたデータの足りない部分を補正する。\r
-<ul><li>comic.author_idをログイン中の作家idで補足する。\r
-</li></ul></li><li>comicデータを検証し、dbに保存する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-5">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-5">正常系</h4><ul><li>作成されたコミックデータを返す。\r
-<ul><li>htmlなら、作成されたコミックの閲覧ページに遷移する。 ex)/comics/1\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-3">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、新規ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-edit">edit</h2><p>編集\r
-</p><h3 id="h3-url-7">url</h3><ul><li><a href="http://localhost:3000/comics/edit" class="external" rel="nofollow">http://localhost:3000/comics/edit</a>\r
-</li><li><a href="http://localhost:3000/comics/edit.json" class="external" rel="nofollow">http://localhost:3000/comics/edit.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-7">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-3">パラメータ</h3><h4 id="h4-auth_token-2">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-7">解説</h3><p>コミック情報を更新するための入力フォームを指定されたidのデータを埋めたページで表示する。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-6">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-6">正常系</h4><ul><li>入力フォームを返す。\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-4">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-update">update</h2><p>更新\r
-</p><h3 id="h3-url-8">url</h3><ul><li><a href="http://localhost:3000/comics/1" class="external" rel="nofollow">http://localhost:3000/comics/1</a>\r
-</li><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-8">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id+jsonまたはフォーム</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>put</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-4">パラメータ</h3><h4 id="h4-comic-2">comic</h4><ul><li>コミックの情報。<a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>を参照。\r
-</li><li>title\r
-</li><li>width\r
-</li><li>height\r
-</li><li>visible\r
-</li><li>editable\r
-</li></ul><h4 id="h4-auth_token-3">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-8">解説</h3><p>コミックデータを修正するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>与えられたパラメータでコミックを更新する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-2">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-7">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-7">正常系</h4><ul><li>更新されたコミックデータを返す。\r
-<ul><li>htmlなら、更新されたコミックの閲覧ページに遷移する。 ex)/comics/1\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-5">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、編集ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-destroy">destroy</h2><p>削除\r
-</p><h3 id="h3-url-9">url</h3><ul><li><a href="http://localhost:3000/comics/1" class="external" rel="nofollow">http://localhost:3000/comics/1</a>\r
-</li><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-9">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>delete</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-5">パラメータ</h3><h4 id="h4-auth_token-4">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-9">解説</h3><p>指定されたidのコミックを削除する。コミックだけでなく、関連するコマ、コマ絵、フキダシ、セリフも同時に削除される。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>そのコミックを削除する。同時に関連するコマ、コマ絵、フキダシ、セリフも削除する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-3">検証</h3><ul><li>なし\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-8">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-8">正常系</h4><ul><li>値は返さない。\r
-<ul><li>htmlなら、コミック一覧ページに遷移する。\r
-</li><li>jsonならステータスコード200 :okを返す。\r
-</li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-6">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-list">list</h2><p>管理者のための閲覧リスト。\r
-</p><hr /><h2 id="h2-browse">browse</h2><p>管理者のための詳細閲覧。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">\r
-    <title>PanelsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelsController</link>\r
-\r
-    <dc:identifier>PanelsController</dc:identifier>\r
-    <dc:date>2012-01-17T18:13:06+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ\r
-ストーリー上のワンシーンを漫画状に表示するための機能。\r
-== index\r
-一覧形式\r
-=== url\r
- * http://localhost:3000/panels\r
- * http://localhost:3000/panels.json\r
-=== リクエスト\r
-||パラメータ||なし||\r
-||権限||作家||\r
-||html||○||\r
-||json||○||\r
-||jso]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E">コマ</h1><p>ストーリー上のワンシーンを漫画状に表示するための機能。\r
-</p><h2 id="h2-index">index</h2><p>一覧形式\r
-</p><h3 id="h3-url">url</h3><ul><li><a href="http://localhost:3000/panels" class="external" rel="nofollow">http://localhost:3000/panels</a>\r
-</li><li><a href="http://localhost:3000/panels.json" class="external" rel="nofollow">http://localhost:3000/panels.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC">解説</h3><p>新着コマ20件を一覧形式で表示する。ただし、作者によって非公開にされたコミックのコマは含まない。\r
-</p><p>新着コマの情報はトップページに表示されるが、量が少ないため「もっと見る」が用意されている。それがクリックされたときに遷るページがここ。\r
-</p><ul><li>comicのvisible=1な行をpanels.updated_at降順で20件分取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E5.95.8F.E9.A1.8C.E7.82.B9">問題点</h3><p>コマはサイズがバラバラなので、リストアップには向いていない。コマそのものを表示するわけにはいかないので、事実上使いどころのない機能と思われる。改善案を待つ。\r
-</p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB">正常系</h4><ul><li>panels\r
-<ul><li>comic\r
-</li><li>author\r
-</li></ul></li></ul><hr /><h2 id="h2-show">show</h2><p>コマ表示。ぺったんの超本丸。\r
-</p><h3 id="h3-url-2">url</h3><ul><li><a href="http://localhost:3000/panels/1" class="external" rel="nofollow">http://localhost:3000/panels/1</a>\r
-</li><li><a href="http://localhost:3000/panels/1.json" class="external" rel="nofollow">http://localhost:3000/panels/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-2">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-2">解説</h3><p>コマを表示する、あるいはコマを表示するためのデータを返す機能。\r
-</p><ul><li>要求されたidのpanelを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.81.AE.E6.95.B4.E5.BD.A2">コマの整形</h3><p>コマ絵とフキダシは時系列tでソートして返さなければならない。表示的にはすべてが時間で上から下に流れるのがぺったんRの仕様である。しかし、sqlでは二つのテーブルを混ぜてソートはできないので時系列順に配置しなおして(配列のキーをtにして)戻さなければならない。balloons配下のspeachesも同様にtでソートしておく。\r
-<pre>panels:{\r
-  1: balloons: {...},\r
-  2: panel_pictures: {...},\r
-  3: balloons: {speaches: {1: {...}, 2:{...}}},\r
-  4: panel_pictures: {...},\r
-}\r
-</pre></p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-2">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-2">正常系</h4><ul><li>panels\r
-<ul><li>panel_pictures\r
-<ul><li>resource_picture\r
-<ul><li>artist\r
-</li><li>lisence\r
-</li></ul></li></ul></li><li>balloons\r
-<ul><li>speaches\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-create">create</h2><p>作成\r
-</p><h3 id="h3-url-3">url</h3><ul><li><a href="http://localhost:3000/panels" class="external" rel="nofollow">http://localhost:3000/panels</a>\r
-</li><li><a href="http://localhost:3000/panels.json" class="external" rel="nofollow">http://localhost:3000/panels.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-3">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-3">解説</h3><p>コマを新規作成するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>パラメータからpanelデータを起こす。\r
-</li><li>起こしたデータの足りない部分を補正する。\r
-<ul><li>comic.author_idをログイン中の作家idで補足する。\r
-</li></ul></li><li>panelデータを検証し、dbに一つのトランザクションで保存する。\r
-<ul><li>コマの移動チェック。\r
-<ul><li>コマ順panel.tが変更されていればコマ移動。\r
-</li><li>パラメータにpanel.tが設定されていて、起こしたpanel.tと違うことをいう。\r
-</li><li>コマ移動処理は<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>を参照する。\r
-</li></ul></li><li>\r
-</li></ul></li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-3">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-3">正常系</h4><ul><li>作成されたパネルデータを返す。\r
-<ul><li>htmlなら、作成されたパネルが所属するコミックの閲覧ページに遷移する。\r
-<ul><li>最新のコマ10件を指定する。\r
-</li></ul></li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、コミック閲覧ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-destroy">destroy</h2><p>削除\r
-</p><h3 id="h3-url-4">url</h3><ul><li><a href="http://localhost:3000/panels/1" class="external" rel="nofollow">http://localhost:3000/panels/1</a>\r
-</li><li><a href="http://localhost:3000/panels/1.json" class="external" rel="nofollow">http://localhost:3000/panels/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-4">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>delete</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-4">解説</h3><p>指定されたidのコマを削除する。コマだけでなく、関連するコマ絵、フキダシ、セリフも同時に削除される。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコマを取得する。\r
-</li><li>そのコマを一つのトランザクションで削除する。\r
-<ul><li>同時に関連するコマ絵、フキダシ、セリフも削除する。\r
-</li><li>後ろのコマを前に詰める。\r
-<ul><li>tが後ろの行すべてをt-1する。\r
-</li></ul></li></ul></li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-2">検証</h3><ul><li>なし\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-4">正常系</h4><ul><li>値は返さない。\r
-<ul><li>htmlなら、コマが所属するコミックの閲覧ページに遷移する。\r
-</li><li>jsonならステータスコード200 :okを返す。\r
-</li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-2">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コマ閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-list">list</h2><p>管理者のための閲覧リスト。\r
-</p><hr /><h2 id="h2-browse">browse</h2><p>管理者のための詳細閲覧。\r
-↓参考コピペ\r
-</p><hr /><h2 id="h2-update">update</h2><p>更新\r
-</p><h3 id="h3-url-5">url</h3><p><a href="http://localhost:3000/comics/1" class="external" rel="nofollow">http://localhost:3000/comics/1</a>\r
-<a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</p><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-5">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id+json形式で</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>put</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-5">解説</h3><p>コミックデータを修正するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>与えられたパラメータでコミックを更新する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-3">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-5">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-5">正常系</h4><ul><li>更新されたコミックデータを返す。\r
-<ul><li>htmlなら、更新されたコミックの閲覧ページに遷移する。 ex)/comics/1\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-3">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、編集ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">\r
-    <title>PanelModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelModel</link>\r
-    <dc:identifier>PanelModel</dc:identifier>\r
-    <dc:date>2012-01-17T08:04:02+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= コマ panel\r
-||name||和名||type||default||null||limit||note||\r
-||comic_id||所属コミック||integer|| ||FALSE|| ||||\r
-||resource_picture_id||背景画像 素材id||integer|| || || ||||\r
-||width||コマの幅||integer||200||FALSE|| |]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.20panel">コマ panel</h1><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>comic_id</td><td>所属コミック</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>背景画像 素材id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さ</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>border</td><td>コマの枠線の太さ</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>t</td><td>コマ番号</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>author_id</td><td>コマの投稿者 作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><h2 id="h2-.E6.A4.9C.E8.A8.BC">検証</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">\r
-    <title>ComicModel</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ComicModel</link>\r
-    <dc:identifier>ComicModel</dc:identifier>\r
-    <dc:date>2012-01-17T07:57:27+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コミック comic\r
-||name||和名||type||default||null||limit||note||\r
-||title||作品名||string||100|| || ||||\r
-||width||コマの幅デフォルト値||integer||200||FALSE|| ||||\r
-||height||コマの高さデフォルト値||integer||80||FALSE|| ||||\r
-||]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.20comic">コミック comic</h1><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>title</td><td>作品名</td><td>string</td><td>100</td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅デフォルト値</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さデフォルト値</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>author_id</td><td>作者の作家id</td><td>integer</td><td></td><td>false</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><h2 id="h2-.E6.A4.9C.E8.A8.BC">検証</h2><ul><li>title\r
-<ul><li>100文字以内であること\r
-</li></ul></li><li>width\r
-<ul><li>数値であること\r
-</li><li>1以上?未満であること\r
-</li></ul></li><li>height\r
-<ul><li>数値であること\r
-</li><li>1以上?未満であること\r
-</li></ul></li><li>visible\r
-<ul><li>数値であること\r
-</li><li>0以上4未満であること\r
-</li></ul></li><li>editable\r
-<ul><li>数値であること\r
-</li><li>0以上4未満であること\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/StatusCode">\r
-    <title>StatusCode</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/StatusCode</link>\r
-    <dc:identifier>StatusCode</dc:identifier>\r
-\r
-    <dc:date>2012-01-16T18:21:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[ここを参照する\r
-\r
-http://www.func09.com/wordpress/archives/1226\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<p>ここを参照する\r
-</p><p><a href="http://www.func09.com/wordpress/archives/1226" class="external" rel="nofollow">http://www.func09.com/wordpress/archives/1226</a>\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/FrontPage">\r
-    <title>FrontPage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/FrontPage</link>\r
-    <dc:identifier>FrontPage</dc:identifier>\r
-    <dc:date>2012-01-16T18:21:00+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ぺったんRのWiki =\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png)]]\r
-== ぺったんRって何だってばよ?\r
-ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-\r
-参考\r
- * http://sourceforge.jp/projec]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AEWiki">ぺったんRのWiki</h1><img src="http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9262f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.A3.E3.81.A6.E4.BD.95.E3.81.A0.E3.81.A3.E3.81.A6.E3.81.B0.E3.82.88.EF.BC.9F">ぺったんRって何だってばよ?</h2><p>ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-</p><p>参考\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettan/">http://sourceforge.jp/projects/pettan/</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanoss/">http://sourceforge.jp/projects/pettanoss/</a>\r
-</li></ul><p>より詳しくは <a href="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">WhatsPettan</a>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AE.E7.9B.AE.E6.A8.99">ぺったんRの目標</h2><h3 id="h3-.E7.B7.8F.E5.90.88.E7.9B.AE.E6.A8.99">総合目標</h3><ul><li>漫画形式の表現がブラウザだけでできる\r
-</li><li>漫画形式のブログを簡単に始められる\r
-</li><li>漫画形式のSNSを簡単に始められる\r
-</li><li>漫画形式の記事をブログに埋め込める\r
-</li><li>その他あらゆるwebページに最小限の労力で漫画を表示できる\r
-</li></ul><h3 id="h3-.E9.96.8B.E7.99.BA.E7.9B.AE.E6.A8.99">開発目標</h3><ul><li>ぺったんR Web API\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のサーバ側実装\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のクライアント側実装\r
-</li><li>ぺったんR をお試しできる Web サービスの運営\r
-</li></ul><h2 id="h2-.E7.8F.BE.E5.9C.A8.E3.81.AE.E7.8A.B6.E6.B3.81">現在の状況</h2><ul><li>プロトタイプ作成中。 <a href="http://pettanr.heroku.com/" class="external" rel="nofollow">http://pettanr.heroku.com/</a>\r
-</li><li>プロジェクト Web サイトの制作中 <a href="http://pettanr.sourceforge.jp/index.html" class="external" rel="nofollow">http://pettanr.sourceforge.jp/index.html</a>\r
-</li><li>ユーザーコンソール <a href="http://pettanr.sourceforge.jp/work.html" class="external" rel="nofollow">http://pettanr.sourceforge.jp/work.html</a>\r
-</li></ul><h2 id="h2-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">ForDevelopers</a>\r
-</li></ul><h2 id="h2-.E7.B7.A8.E9.9B.86.E9.95.B7.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">編集長向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">ForWebmasters</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">作家向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">ForAuthors</a>\r
-</li></ul><h2 id="h2-.E5.90.84.E8.87.AA.E3.81.AE.E3.83.A1.E3.83.A2">各自のメモ</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">YasushiIto</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">ItoZyun</a>\r
-</li></ul><h2 id="h2-.E8.B3.87.E6.96.99.E7.AD.89">資料等</h2><ul><li>マンガ要素の日英対訳 <a href="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">TranslationComicElements</a>\r
-</li><li>おまけ <a href="http://sourceforge.jp/projects/pettanr/wiki/AppendixList">AppendixList</a>\r
-</li><li>railsのステータスコード <a href="http://sourceforge.jp/projects/pettanr/wiki/StatusCode">StatusCode</a>\r
-</li></ul><script src="/projects/pettanr/files/compact.js" type="text/javascript" charset="utf-8"></script>\r
-<div class="dashboard-widget"><h3 class="titlebar">最近のチケット一覧</h3><div class="dashboard-body"><div class="noent">(empty)</div></div></div>\r
-]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest">\r
-    <title>XmlHttpRequest</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest</link>\r
-\r
-    <dc:identifier>XmlHttpRequest</dc:identifier>\r
-    <dc:date>2012-01-16T13:39:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= XMLHttpRequest\r
-\r
- * ie 4.0 以降 ie6 以前は ActiveX\r
- * Firefox 1.0 以降\r
- * NN 7 以降\r
- * Opera 7.6 以降\r
- * Safari 1.2 以降\r
- * Konqueror 3 以降\r
-\r
-以上は 入門 ajax 増補改訂版より\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-XMLHttpRequest">XMLHttpRequest</h1><ul><li>ie 4.0 以降 ie6 以前は ActiveX\r
-</li><li>Firefox 1.0 以降\r
-</li><li>NN 7 以降\r
-</li><li>Opera 7.6 以降\r
-</li><li>Safari 1.2 以降\r
-</li><li>Konqueror 3 以降\r
-</li></ul><p>以上は 入門 ajax 増補改訂版より\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">\r
-    <title>JavascriptEditor</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor</link>\r
-    <dc:identifier>JavascriptEditor</dc:identifier>\r
-    <dc:date>2012-01-16T08:40:33+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= Javascript\r
- js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/990/640x640_0.png)]]\r
-== common.js\r
- * pettnar.\r
- * pettanr.const\r
- * pettanr.ua\r
-   * ブラウザ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Javascript">Javascript</h1><div class="indent">js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-</div><img src="http://static.sourceforge.jp/thumb/g/2/990/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9902f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-common.js">common.js</h2><ul><li>pettnar.\r
-</li><li>pettanr.const\r
-</li><li>pettanr.ua\r
-<ul><li>ブラウザの情報、プラグインの情報\r
-</li></ul></li><li>pettnar.util\r
-<ul><li>\r
-</li></ul></li><li>pettnar.overlay\r
-<ul><li>ポップアップオーバーレイを管理する.\r
-</li></ul></li><li>pettnar.key\r
-<ul><li>キーイベントの発行、テキスト入力エリアの管理\r
-</li></ul></li><li>pettnar.balloon\r
-<ul><li>クロスバックエンドな吹きだし画像のためのラッパーの発行.XbackendSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a></li><li>SVG, VML といったベクター画像で吹きだし(balloon)を描画する(ベクター画像のサポートがない場合は代替画像を表示する)\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a>\r
-</li></ul></li><li>pettnar.image\r
-<ul><li>クロスバックエンドな、Reversible Image のためのラッパーを発行.XbackendReversibleImage\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a></li><li>css3, VML, ActiveX, Flash, サーバー側で生成した反転画像 を使用して画像の反転を行う.\r
-</li><li>透過 PNG のサポートが甘い IE6 以下にたいして、VML, Flash, ActiveX+サーバー画像 による描画サポートを行う.PngFix\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a></li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li></ul></li><li>pettnar.i18n\r
-<ul><li>マルチ言語情報の保持.言語変更イベントの管理.\r
-</li></ul></li><li>pettnar.io\r
-<ul><li>通信\r
-</li><li>xml としてサーバに置かれた ajax なリソースに対して、ajax feed api を使った json リクエスト(xmlより転送量が少ない)などの 複数経路でリクエストを行うラッパー\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul></li><li>pettnar.load\r
-<ul><li>work.js と jQuery のロード.min や debag version の切り替え.jQuery version の切り替え.\r
-</li></ul></li></ul><h2 id="h2-work.js">work.js</h2><p>ログイン後のユーザー(管理者)の操作.コミック・画像の管理やコマの作成.\r
-</p><ul><li>pettnar.view\r
-<ul><li>現在のビューを管理する.Window Resize イベントの監視.\r
-</li></ul></li><li>pettnar.editor\r
-<ul><li>コマの編集を行う.\r
-</li></ul></li><li>pettnar.file\r
-<ul><li>サーバから取得したリソース情報を保持し、データの取得やアクセス権のチェック、データのアップデートをラップする.\r
-</li></ul></li><li>pettnar.finder\r
-<ul><li>ファイル(リソース)エクスプローラー\r
-</li><li>コミック、コマ、画像、吹きだし、画像提供絵師情報</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/SystemController">\r
-    <title>SystemController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/SystemController</link>\r
-    <dc:identifier>SystemController</dc:identifier>\r
-    <dc:date>2012-01-15T18:11:40+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= SystemController\r
-管理者機能。\r
-\r
-== index\r
-管理者機能目次。\r
-== start\r
-管理者を作成するための手順を表示するためのページ。\r
-\r
-== browse\r
-dbを閲覧するためのメニュー。\r
-\r
-== auth_token\r
-認証トークンの表示および管理メニュー。\r
-\r
-=== create_token\r
-認証トークンの作成。\r
-\r
-=== delete_]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-SystemController"><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemController">SystemController</a></h1><p>管理者機能。\r
-</p><h2 id="h2-index">index</h2><p>管理者機能目次。\r
-</p><h2 id="h2-start">start</h2><p>管理者を作成するための手順を表示するためのページ。\r
-</p><h2 id="h2-browse">browse</h2><p>dbを閲覧するためのメニュー。\r
-</p><h2 id="h2-auth_token">auth_token</h2><p>認証トークンの表示および管理メニュー。\r
-</p><h3 id="h3-create_token">create_token</h3><p>認証トークンの作成。\r
-</p><h3 id="h3-delete_token">delete_token</h3><p>認証トークンの削除。\r
-</p><h2 id="h2-waiting_list">waiting_list</h2><p>管理者承認。\r
-</p><h3 id="h3-approve">approve</h3><p>管理者承認。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">\r
-    <title>AuthorRegistrationsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController</link>\r
-    <dc:identifier>AuthorRegistrationsController</dc:identifier>\r
-\r
-    <dc:date>2012-01-15T17:58:47+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= AuthorRegistrationsController\r
-認証エンジンdeviseでサインアップ後のページ遷移をするために必要となった。\r
-\r
-遷移先を定義しただけなので、機能はない。]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-AuthorRegistrationsController"><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">AuthorRegistrationsController</a></h1><p>認証エンジンdeviseでサインアップ後のページ遷移をするために必要となった。\r
-</p><p>遷移先を定義しただけなので、機能はない。</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">\r
-    <title>RailsControllers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RailsControllers</link>\r
-    <dc:identifier>RailsControllers</dc:identifier>\r
-    <dc:date>2012-01-15T17:55:25+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= サーバ側の機能\r
-== コミック関係\r
- * ComicsController\r
- * PanelsController\r
- * PanelPicturesController\r
- * BalloonsController\r
- * SpeachsController\r
-== 素材関係\r
- * OriginalPicturesController\r
- * ResourcePicturesCont]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B5.E3.83.BC.E3.83.90.E5.81.B4.E3.81.AE.E6.A9.9F.E8.83.BD">サーバ側の機能</h1><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E9.96.A2.E4.BF.82">コミック関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicsController">ComicsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonsController">BalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachsController">SpeachsController</a>\r
-</li></ul><h2 id="h2-.E7.B4.A0.E6.9D.90.E9.96.A2.E4.BF.82">素材関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicturesController">OriginalPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a>\r
-</li></ul><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E9.96.A2.E4.BF.82">フキダシテンプレート関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">SpeachBalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplatesController">BallonTemplatesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplatesController">SpeachTemplatesController</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E9.96.A2.E4.BF.82">ライセンス関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisencesController">OriginalLisencesController</a>\r
-</li></ul><h2 id="h2-.E5.BD.B9.E5.89.B2.E9.96.A2.E4.BF.82">役割関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorsController">AuthorsController</a>\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">AuthorRegistrationsController</a>\r
-</li></ul></li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistsController">ArtistsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HelpController">HelpController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HomeController">HomeController</a>\r
-</li></ul><h2 id="h2-.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E9.96.A2.E4.BF.82">システム関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemController">SystemController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemPicturesController">SystemPicturesController</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">\r
-    <title>ForDevelopers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers</link>\r
-\r
-    <dc:identifier>ForDevelopers</dc:identifier>\r
-    <dc:date>2012-01-15T17:49:02+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 開発者向けドキュメント\r
-== 開発環境\r
-=== サーバーサイド\r
- * Ruby1.9+Rails3.1\r
-==== 構築\r
- * HowToInstall\r
-   * PictureIo\r
-   * RmagickAndDmagick\r
-\r
-=== クライアントサイド\r
- * html4.01 + css2.1 に加え css3, SVG, XML, ActiveX, Flash のうち]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h1><h2 id="h2-.E9.96.8B.E7.99.BA.E7.92.B0.E5.A2.83">開発環境</h2><h3 id="h3-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89">サーバーサイド</h3><ul><li>Ruby1.9+Rails3.1\r
-</li></ul><h4 id="h4-.E6.A7.8B.E7.AF.89">構築</h4><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall">HowToInstall</a>\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">RmagickAndDmagick</a>\r
-</li></ul></li></ul><h3 id="h3-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E3.82.B5.E3.82.A4.E3.83.89">クライアントサイド</h3><ul><li>html4.01 + css2.1 に加え css3, SVG, XML, ActiveX, Flash のうちのいくつか.\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">ClientSide</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul></li><li>javascript( jQuery + plugin)\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li></ul></li></ul><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E3.83.99.E3.83.BC.E3.82.B9">データベース</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">AboutModels</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">DatabaseSchema</a> \r
-</li></ul><h2 id="h2-.E6.A9.9F.E8.83.BD">機能</h2><ul><li>サーバ側の機能 RailsControllers<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">RailsControllers</a></li><li>JsonAPI Js<a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a></li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex">ApiIndex</a>\r
-</li></ul><h2 id="h2-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">ChangeDoc</a></li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">\r
-    <title>YasushiIto</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/YasushiIto</link>\r
-    <dc:identifier>YasushiIto</dc:identifier>\r
-    <dc:date>2012-01-15T17:39:27+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[コモンライセンスの初期化。パブリックドメインだけは追加。\r
-\r
-md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-\r
-フキダシは名前の末尾を@ドメインにする慣習\r
-\r
-クリコモは転載自由なのか?\r
-\r
-jpgは反転できなくてもよくね?\r
-\r
-コミックのオーナーがフラグを変更できるように\r
-\r
-棒人間・ヴェール・ぞゥ\r
-\r
-SNS・ブログ\r
-\r
-フキダシはベクター式]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<p>コモンライセンスの初期化。パブリックドメインだけは追加。\r
-</p><p>md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-</p><p>フキダシは名前の末尾を@ドメインにする慣習\r
-</p><p>クリコモは転載自由なのか?\r
-</p><p>jpgは反転できなくてもよくね?\r
-</p><p>コミックのオーナーがフラグを変更できるように\r
-</p><p>棒人間・ヴェール・ぞゥ\r
-</p><p>SNS・ブログ\r
-</p><p>フキダシはベクター式に合わせるが、テンプレートのみも用意\r
-</p><h1 id="h1-w.E3.81.A8h.E3.81.AB.E3.83.9E.E3.82.A4.E3.83.8A.E3.82.B9.E3.81.AF.E3.81.82.E3.82.8A.EF.BC.9F">wとhにマイナスはあり?</h1><ul><li>逆フキダシ\r
-</li><li>min_width→lower_limit\r
-</li><li>フォントなど\r
-<pre>  &lt;property name=&quot;fontSize&quot;/&gt;\r
-       &lt;property name=&quot;fontColor&quot;/&gt;\r
-       &lt;property name=&quot;fontWeight&quot;/&gt;\r
-       &lt;property name=&quot;serif&quot;/&gt;\r
-       &lt;property name=&quot;way&quot;/&gt;\r
-       &lt;property name=&quot;textAlign&quot;/&gt;\r
-</pre></li><li>no_adult ?\r
-</li></ul><ul><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex">\r
-    <title>ApiIndex</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ApiIndex</link>\r
-    <dc:identifier>ApiIndex</dc:identifier>\r
-    <dc:date>2012-01-15T17:13:21+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアントが必要としそうなAPI\r
-何がどんな機能を実行するために、どんなデータが必要かを挙げていってください。体裁はどうでもいいです。\r
-\r
-== ぺったんサーバーの情報\r
- * API の url\r
-   * 最終的にはここに掲載 RailsControllers\r
- * 総素材数\r
-   * べらぼうに多い場合、素材一覧の取得を一度にはできない.\r
-     * カウントAPIを用意す]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E3.81.8C.E5.BF.85.E8.A6.81.E3.81.A8.E3.81.97.E3.81.9D.E3.81.86.E3.81.AAAPI">クライアントが必要としそうなAPI</h1><p>何がどんな機能を実行するために、どんなデータが必要かを挙げていってください。体裁はどうでもいいです。\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1">ぺったんサーバーの情報</h2><ul><li>API の url\r
-<ul><li>最終的にはここに掲載 RailsControllers\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">RailsControllers</a></li></ul></li><li>総素材数\r
-<ul><li>べらぼうに多い場合、素材一覧の取得を一度にはできない.\r
-<ul><li>カウントAPIを用意する\r
-</li><li>たぶん名前はcount\r
-</li></ul></li></ul></li><li>総コミック数\r
-<ul><li>べらぼうに多い場合、、、\r
-</li></ul></li></ul><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9">コミックエクスプローラ</h2><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E4.B8.80.E8.A6.A7">ログインユーザーのコミック一覧</h3><ul><li>作家の作業場は/home以下\r
-</li></ul><h3 id="h3-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.20.E3.81.AE.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E4.B8.80.E8.A6.A7">ぺったんR のコミック一覧</h3><ul><li>総合ページは/から。\r
-<ul><li>/にトレンドなデータが表示される\r
-</li></ul></li><li>/comics でコミック一覧\r
-<ul><li>/comics.json でコミック一覧のjsonデータが\r
-<ul><li>更新日時が新しい順に20件\r
-</li></ul></li></ul></li></ul><h3 id="h3-.E3.83.91.E3.83.8D.E3.83.AB.E3.81.AE.E4.B8.A6.E3.81.B3.E6.9B.BF.E3.81.88">パネルの並び替え</h3><ul><li>パネルのパラメータ\r
-</li><li>パネルの並び替えがユーザーに許可されているか?\r
-<ul><li>コマの並び順ということなら、されている。パネルの更新で時系列tを変える\r
-</li></ul></li><li>パネルの編集がユーザーに許可されているか?\r
-<ul><li>作者以外の投稿ということなら、されている。コミックのeditableが1であれば。\r
-</li></ul></li></ul><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9.E3.83.BC">素材エクスプローラー</h2><ul><li>最近投稿された素材 → ResourcePictures#ind<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictures">ResourcePictures</a></li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E4.B8.80.E8.A6.A7.E3.81.AE.E5.8F.96.E5.BE.97">素材一覧の取得</h3><ul><li>全ての素材の全プロパティの取得\r
-<ul><li>images.json\r
-</li><li>さすがに全件取得は無茶。\r
-<ul><li>最新の~、人気の~、最近使った~で絞り込む\r
-</li><li>タグの仕様を詰めないと無理か?\r
-</li></ul></li></ul></li><li>素材データが多い場合、少しづつ取得(って結構めんどくさいかも)\r
-<ul><li>images.json?last=id(最後に貰った素材のID を入れるとその続きから、とか)\r
-</li><li>今のところ20件以内で返す\r
-</li><li>もっと欲しい場合は、pagenateとなるが、あまりcoolとは言えないかも\r
-<ul><li>?page=3 みたいな\r
-</li><li>page=3 を取得中に、新しい素材が追加された場合、index がずれる.→ずれますね\r
-<ul><li>例えば 20 枚でひとつのページを作るけど、最新の ページは必ずしも 20 枚でない、とか?\r
-</li><li>古い素材:page=5 → |20|20|20|20|20|12| ← 新しい素材:page=0 ( 計 112 枚 )\r
-<ul><li>最新順だからpage=5 → |12|20|20|20|20|20| ← page=0 かな。\r
-</li></ul></li></ul></li></ul></li><li>images.json?tag=penjiro\r
-<ul><li><ul><li>ユーザーがペン次郎タグの素材のなかから選びたい場合.\r
-</li></ul></li></ul></li></ul></li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E6.93.8D.E4.BD.9C">素材の操作</h3><ul><li>素材の追加(アップロード周りは調べます、実はやったことがない、、、)\r
-<ul><li>jsonでやるにはBase64でエンコードしないといかんかも。\r
-</li></ul></li><li>素材の削除  \r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.83.87.E3.83.BC.E3.83.88">素材のプロパティのアップデート</h3><ul><li>素材の名前(はとりあえずなしで開発)\r
-</li><li>タグの追加、削除 など\r
-</li></ul><h4 id="h4-.E3.81.B2.E3.81.A8.E3.81.A4.E3.81.AE.E7.B4.A0.E6.9D.90.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E3.82.82.E3.81.A4.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3">ひとつの素材データのもつプロパティ</h4><ul><li>id\r
-</li><li>filesize\r
-</li><li>tag[]\r
-</li><li>published_at\r
-</li><li>updated_at\r
-</li><li>license\r
-</li></ul><p>→ Re<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>見る\r
-</p><ul><li>owner ログインユーザーがその素材のオーナーか?\r
-<ul><li>オーナーでないなら、アーティスト の id\r
-</li></ul></li></ul><p>→\r
-</p><ul><li>変更可能なオプションとその変更権がユーザーにあるか?\r
-</li></ul><h2 id="h2-.E3.82.BF.E3.82.B0.E3.81.AE.E6.93.8D.E4.BD.9C">タグの操作</h2><ul><li>タグの追加\r
-</li><li>タグの削除\r
-</li><li>タグの更新\r
-<ul><li>ペン次郎タグがあったけど、ペン太郎に改名したい場合、一つ一つの素材画像のプロパティでなく、タグ自体の名前を変える.\r
-</li></ul></li></ul><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9.E3.83.BC">フキダシエクスプローラー</h2><ul><li>フキダシリスト → \r
-</li></ul><h2 id="h2-.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1">ユーザーの情報</h2><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1.E3.81.AE.E5.8F.96.E5.BE.97">ログインユーザーの情報の取得</h3><ul><li>ユーザー名\r
-</li><li>ユーザーの HP の url\r
-</li><li>デフォルトのライセンス\r
-</li><li>アカウントの状態(作家、絵師、admin)\r
-</li></ul><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.83.87.E3.83.BC.E3.83.88">ログインユーザーの情報のアップデート</h3><ul><li>ユーザーの HP の url\r
-</li><li>デフォルトのライセンス\r
-</li></ul><p>→jsonでのやり取りは危険なのでサーバが吐くページのフォームからしかできない。\r
-</p><h3 id="h3-.E3.82.A2.E3.83.BC.E3.83.86.E3.82.A3.E3.82.B9.E3.83.88.E3.81.AE.E6.83.85.E5.A0.B1">アーティストの情報</h3><ul><li>パネルピクチャー を併せてどこかに表示される.\r
-</li><li>アーティスト名\r
-</li><li>アーティストの HP の url\r
-</li></ul><h2 id="h2-.E3.83.91.E3.83.8D.E3.83.AB.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF">パネルエディタ</h2><ul><li>編集しようとしているパネルデータ\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">\r
-    <title>ItoZyun</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ItoZyun</link>\r
-    <dc:identifier>ItoZyun</dc:identifier>\r
-\r
-    <dc:date>2012-01-14T20:46:33+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアント側\r
- * ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
- * ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-\r
-= javascript のクリーンアップ、圧縮\r
-== クリーンアップ\r
-javascript は、変数宣言時]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><ul><li>ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
-</li><li>ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97.E3.80.81.E5.9C.A7.E7.B8.AE">javascript のクリーンアップ、圧縮</h1><h2 id="h2-.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97">クリーンアップ</h2><p>javascript は、変数宣言時の区切り文字や、行の終わりのセミコロンなどを間違えていても、予期したとおりに動作したりして潜在的な問題を抱えることになる.[[BR]]\r
-<br />以上のものは、Aptana で警告されないものも結構ある.[[BR]]\r
-<br />jsDo.it にアップロードすると、Webコンソールで javascript の警告を教えてくれる.[[BR]]\r
-<br />その警告に従って修正したところ、Aptana2 の構文解析も動くようになった.コード量が増えると勝手に構文解析も止まるのかと思っていたけど、そのようなわけだった、、、[[BR]]\r
-<br /></p><h2 id="h2-.E5.9C.A7.E7.B8.AE">圧縮</h2><p>以上を済ませた後に、圧縮(難読化)を行うことで、js ファイルの読み込みや動作を早くし、負荷を抑えることができる.[[BR]]\r
-<br />圧縮ツールには、Web アプリとして提供されているものもあって便利.[[BR]]\r
-<br /><a href="http://compressorrater.thruhere.net/" class="external" rel="nofollow">http://compressorrater.thruhere.net/</a> が、複数の圧縮エンジンに通した結果を比較表示してくれる.[[BR]]\r
-<br />現在 140KB 程度の js ファイルを 60KB 程度にすることができた.[[BR]]\r
-<br />ただし、その圧縮後のファイルが動かないこともあり(というかほとんど動かない、または操作中に動かなくなる)圧縮ツール用にコードを書く必要がある.[[BR]]\r
-<br />jsは、コードが実行される順番に変数宣言をしていけばいいのだが、圧縮ツール用には、変数の宣言を最初の変数の登場より先にしなくてはならない.[[BR]]\r
-<br /></p><p>変数の宣言がないままに変数が登場すると、\r
-<pre>function createPopup(){\r
-// Popup クラスから Popup インスタンスを作る.\r
- var _popup = PopupClass.apply( {}, []);\r
-}\r
-~\r
-// Popup クラスの宣言\r
-var PopupClass = function(){};\r
-</pre>圧縮ツールは、最初に登場する PopupClass はそのまま.var PopupCl<a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a>r a= などと圧縮をかける.結果、createPopup() したときに PopupClass が未定義だよ!となる.[[BR]]\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a><br /></p><ul><li>決定版はこれだ! Javascriptの圧縮、難読化ツール 比較検討 http://gogolounge.blog.shinobi.jp/Entry/4/\r
-<a href="http://gogolounge.blog.shinobi.jp/Entry/4/" class="external" rel="nofollow">http://gogolounge.blog.shinobi.jp/Entry/4/</a></li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82.AF">javascript のメモリリーク</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/%E9%96%8B%E7%99%BA">開発</a>IEメモリリークの最後の壁はAjaxのonreadystatechangeやった!! http://d.hatena.ne.jp/AWAWA/20071207<a href="http://d.hatena.ne.jp/AWAWA/20071207/1197036423" class="external" rel="nofollow">http://d.hatena.ne.jp/AWAWA/20071207/1197036423</a></li><li>Internet Explorer リーク パターンを理解して解決する http://msdn.microsoft.com/ja-jp/<a href="http://msdn.microsoft.com/ja-jp/library/bb250448" class="external" rel="nofollow">http://msdn.microsoft.com/ja-jp/library/bb250448</a></li></ul><p>クロージャがまずい.[[BR]]\r
-<br />dom追加は、appendChild を先に.あとからプロパティをセット.[[BR]]\r
-<br />イベントハンドラに、グローバルで定義された 空の function を突っ込んで解除する.\r
-</p><h1 id="h1-.E3.82.B9.E3.82.BF.E3.83.B3.E3.83.89.E3.82.A2.E3.83.AD.E3.83.BC.E3.83.B3.E7.89.88.20IE.20.E3.81.AE.E9.80.9A.E5.B8.B8.E7.89.88.E3.81.A8.E7.95.B0.E3.81.AA.E3.82.8B.E6.8C.99.E5.8B.95">スタンドアローン版 IE の通常版と異なる挙動</h1><p>IETester で 条件付コメントによる、vml のインストールの有無のチェックができない挙動に遭遇.[[BR]]\r
-<br />vml のチェックは、現在は条件付コメントを動的に付与して行っている.(他にいい方法ないかな、、、?)\r
-<pre>VML: ( function(){\r
-       if( isIE === false || ieVersion &gt; 8) return false;\r
-       var globalObjectName = createGrobalObjectName(), script;\r
-       document.writeln( [ '&lt;!--[if gte vml 1]&gt;&lt;script type=&quot;text/javascript&quot;&gt;window.', globalObjectName,'=1;&lt;/script&gt;&lt;![endif]--&gt;'].join( ''));\r
-       if( window[ globalObjectName] === 1){\r
-               window[ globalObjectName] = undefined;\r
-               return true;\r
-       }\r
-       return false;\r
-})(),\r
-</pre></p><p>XPsp3 に IETester をインストールして 6, 7, 8 をテストできる環境にしているが、6 と 7 では、vml のチェックが働かない.[[BR]]\r
-<br />これは、スタンドアローン版 IE は 条件付コメントが働かない、ためと思われる.[[BR]]\r
-<br />一方で、8 で正しく動いているのは、8 が Windows 環境のデフォルトの ie なので通常版であるため、と思う.[[BR]]\r
-<br /></p><p>navigator.ua で取得したバージョンと 動的に書き出した条件付コメント(内でスクリプトを使用)が不一致だったら、スタンドアローン版として処理する.\r
-</p><ul><li>条件付コメント文の誤算 http://bopsublog.blog.<a href="http://bopsublog.blog.shinobi.jp/Entry/15/" class="external" rel="nofollow">http://bopsublog.blog.shinobi.jp/Entry/15/</a></li><li><a href="http://philip.html5.org/data/ccs.html" class="external" rel="nofollow">http://philip.html5.org/data/ccs.html</a>\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E9.81.B8.E6.8A.9E.E7.A6.81.E6.AD.A2">javascript の選択禁止</h1><ul><li>ieでは、unselectable を使う.但しこの指定は継承しないため、全てのテキストを持つ要素に指定する.\r
-<pre>&lt;div unselectable=&quot;on&quot;&gt;テキスト&lt;/div&gt;\r
-</pre></li><li>css を使う場合.\r
-<pre>&lt;div style=&quot;-moz-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;-khtml-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;-webkit-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;user-select: none;&quot;&gt;テキスト&lt;/div&gt; css3 ??\r
-</pre></li><li>js を使う\r
-<pre>&lt;div onMouseMove=&quot;window.getSelection().removeAllRanges();&quot;&gt;テキスト&lt;/div&gt; など\r
-</pre></li><li><a href="http://www.programming-magic.com/20071217225449/" class="external" rel="nofollow">http://www.programming-magic.com/20071217225449/</a>\r
-</li></ul><p>js で自動でテキスト選択を禁止する必要がある.\r
-</p><h1 id="h1-about.20itozyun">about itozyun</h1><ul><li>目立ちたがり屋という点でフロント向き.\r
-</li><li>好奇心に負けて地雷を踏む性格なので、API 設計などを任せてはいけない.</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall">\r
-    <title>HowToInstall</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HowToInstall</link>\r
-    <dc:identifier>HowToInstall</dc:identifier>\r
-    <dc:date>2012-01-14T13:39:42+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= インストール\r
-== 前提条件\r
- * Ruby1.9系\r
- * git\r
- * ImageMagick\r
-\r
-WindowsならRailsInstaller が楽かも。ただし、この選択はImageMagickを動かせないので、別途Production環境が必要。今のところは本番環境としてherokuを想定している。\r
-\r
-http://railsinstaller.org/\r
-\r
-== ソー]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB">インストール</h1><h2 id="h2-.E5.89.8D.E6.8F.90.E6.9D.A1.E4.BB.B6">前提条件</h2><ul><li>Ruby1.9系\r
-</li><li>git\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>\r
-</li></ul><p>WindowsならRail<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>も。ただし、この選択はImageMagickを動かせないので、別途<a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>境が必要。今のところは本番環境としてherokuを想定している。\r
-</p><p><a href="http://railsinstaller.org/" class="external" rel="nofollow">http://railsinstaller.org/</a>\r
-</p><h2 id="h2-.E3.82.BD.E3.83.BC.E3.82.B9.E3.82.B3.E3.83.BC.E3.83.89.E3.81.AE.E5.8F.96.E5.BE.97">ソースコードの取得</h2><p>ソースコードの取得はgitを使う。ここではRailsInstallerを使うケースで書く。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a></p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>をインストールするとRails用コンソールを開けるようになる。そこからgitも使える。\r
-</p><p>最初に起動するときにメアドとパスフレーズを聞かれるので、\r
-<a href="http://sourceforge.jp/projects/pettanr/cvs/">http://sourceforge.jp/projects/pettanr/cvs/</a>\r
-を参考にしながら\r
-<pre>yasushiito@git.sourceforge.jp\r
-</pre></p><p>のようにメアドにして、さらにパスフレーズも記入。コンソールが開くと、ドバっと暗号が出てくるが、公開鍵のファイル名なんかも含まれてるので目を通しておく。コミッタとしてプロジェクトに参加するなら、この公開鍵をsourceforge.jpに追加しておく。\r
-<pre>ssh:\r
-  public_key_location: C:\Documents and Settings\....\r
-</pre></p><pre>c:\sites&gt;git clone yasushiito@git.sourceforge.jp:/gitroot/pettanr/pettanr.git pettanr\r
-</pre><p>でpettanr以下にダウンロードされる。\r
-</p><p>ユーザとしてダウンロードしたいなら\r
-<pre>c:\sites&gt;git clone git://git.sourceforge.jp/gitroot/pettanr/pettanr.git pettanr\r
-</pre>とする。\r
-</p><h2 id="h2-.E7.A8.BC.E5.83.8D.E5.89.8D.E3.81.AE.E6.BA.96.E5.82.99">稼働前の準備</h2><h3 id="h3-gem.E3.81.AE.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB">gemのインストール</h3><pre>c:\sites&gt;cd pettanr\r
-c:\sites\pettanr&gt;bundle install --without production\r
-</pre><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E3.83.99.E3.83.BC.E3.82.B9.E3.81.AE.E5.88.9D.E6.9C.9F.E5.8C.96">データベースの初期化</h3><pre>c:\sites\pettanr&gt;rake db:migrate \r
-</pre><h3 id="h3-.E7.AE.A1.E7.90.86.E8.80.85.E3.81.AE.E4.BD.9C.E6.88.90">管理者の作成</h3><p>管理者を最低一人は用意しないと動かない。\r
-<pre>c:\sites\pettanr&gt;rails r &quot;Admin.start('admin@mail.adr.ess', 'admin_password')&quot; \r
-</pre>もちろんメールアドレスとパスワードは変えること。\r
-</p><h3 id="h3-.E4.BF.9D.E7.AE.A1.E5.BA.AB.E3.81.AE.E4.BD.9C.E6.88.90">保管庫の作成</h3><p>画像の保存パスを作成しておく。\r
-<pre>c:\sites\pettanr&gt;cd ..\r
-c:\sites&gt;mkdir original\r
-c:\sites&gt;mkdir original\pettanr\r
-c:\sites&gt;mkdir resource\r
-c:\sites&gt;mkdir resource\pettanr\r
-c:\sites&gt;mkdir system\r
-c:\sites&gt;mkdir system\pettanr\r
-</pre>保存先を変えたい場合は、PictureIoを参考にする。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a></p><h3 id="h3-ImageMagick.E3.81.AE.E8.A8.AD.E5.AE.9A"><a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>の設定</h3><p><a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>ではImag<a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>い。そこでDmagickなるものでごまかしてる。詳しくはRmagickAndDmagickにあるが、デフォルトでDmagickを使っているた<a href="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">RmagickAndDmagick</a>magickを使うように編集してやる。\r
-</p><h2 id="h2-.E8.B5.B7.E5.8B.95">起動</h2><pre>c:\sites\pettanr&gt;rails s\r
-</pre><p>これでhttp:/<a href="http://localhost:3000/%E3%81%8B%E3%82%89%E9%81%8A%E3%81%B9%E3%82%8B" class="external" rel="nofollow">http://localhost:3000/から遊べる</a></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">\r
-    <title>AboutModels</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutModels</link>\r
-\r
-    <dc:identifier>AboutModels</dc:identifier>\r
-    <dc:date>2012-01-14T11:04:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ER図\r
-下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-\r
- * http://sawada0903.blogspot.com/2010/10/rails30er.html\r
- * http://rails-erd.rubyforge.org/install.html\r
-\r
-出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-\r
-G]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-ER.E5.9B.B3">ER図</h1><p>下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-</p><ul><li><a href="http://sawada0903.blogspot.com/2010/10/rails30er.html" class="external" rel="nofollow">http://sawada0903.blogspot.com/2010/10/rails30er.html</a>\r
-</li><li><a href="http://rails-erd.rubyforge.org/install.html" class="external" rel="nofollow">http://rails-erd.rubyforge.org/install.html</a>\r
-</li></ul><p>出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-</p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/GraphViz">GraphViz</a>のbinにdot.exeがあるからこれで画像にできる\r
-<pre>dot.exe -Tgif ERD.dot &gt; erd.gif\r
-</pre></p><h1 id="h1-.E3.83.86.E3.83.BC.E3.83.96.E3.83.AB.E3.81.A8.E3.82.AB.E3.83.A9.E3.83.A0">テーブルとカラム</h1><h2 id="h2-admins.20.E7.AE.A1.E7.90.86.E8.80.85">admins 管理者</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>approve</td><td>承認</td><td>integer</td><td>0</td><td> </td><td> </td><td>1で承認済</td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AdminModel">AdminModel</a>\r
-</li></ul><h2 id="h2-artists.20.E7.B5.B5.E5.B8.AB">artists 絵師</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>homepage_url</td><td>ホームページURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>api_url</td><td>素材配布APIのURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>default_lisence_id</td><td>省略時のライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>crowled_at</td><td>素材配布APIの最新呼び出し時刻</td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>author_id</td><td>作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistModel">ArtistModel</a>\r
-</li></ul><h2 id="h2-authors.20.E4.BD.9C.E5.AE.B6">authors 作家</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>email</td><td>メールアドレス</td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>authentication_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorModel">AuthorModel</a>\r
-</li></ul><h2 id="h2-balloon_templates.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">balloon_templates フキダシ枠テンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>speach_balloon_id</td><td>フキダシテンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplateModel">BallonTemplateModel</a>\r
-</li></ul><h2 id="h2-balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7">balloons フキダシ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネルid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレート種id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>表示幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>表示高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonModel">BalloonModel</a>\r
-</li></ul><h2 id="h2-comics.20.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF">comics コミック</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>title</td><td>作品名</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅デフォルト値</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さデフォルト値</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>author_id</td><td>作者の作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>\r
-</li></ul><h2 id="h2-common_lisences.20.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">common_lisences コモンライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisenceModel">CommonLisenceModel</a>\r
-</li></ul><h2 id="h2-lisences.20.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">lisences ライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisenceModel">LisenceModel</a>\r
-</li></ul><h2 id="h2-original_lisences.20.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">original_lisences オリジナルライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>artist_id</td><td>ライセンス策定者 絵師id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisenceModel">OriginalLisenceModel</a>\r
-</li></ul><h2 id="h2-original_pictures.20.E5.8E.9F.E7.94.BB">original_pictures 原画</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>\r
-</li></ul><h2 id="h2-system_pictures.20.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E7.94.BB.E5.83.8F">system_pictures システム画像</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemPictureModel">SystemPictureModel</a>\r
-</li></ul><h2 id="h2-panel_pictures.20.E3.82.B3.E3.83.9E.E7.B5.B5">panel_pictures コマ絵</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネル</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>link</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>コマ絵の幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマ絵の高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>flipv</td><td>垂直反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>fliph</td><td>水平反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a>\r
-</li></ul><h2 id="h2-panels.20.E3.82.B3.E3.83.9E">panels コマ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>comic_id</td><td>所属コミック</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>背景画像 素材id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さ</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>border</td><td>コマの枠線の太さ</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>t</td><td>コマ番号</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>author_id</td><td>コマの投稿者 作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>\r
-</li></ul><h2 id="h2-resource_pictures.20.E7.B4.A0.E6.9D.90">resource_pictures 素材</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicture">OriginalPicture</a>のコピー 変更不可</td></tr><tr><td>original_picture_id</td><td>原画id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>\r
-</li></ul><h2 id="h2-speach_balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_balloons フキダシテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>フキダシ名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail_count</td><td>尻尾の向きの数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size_count</td><td>サイズのバリエーション数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a>\r
-</li></ul><h2 id="h2-speach_templates.20.E3.82.BB.E3.83.AA.E3.83.95.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_templates セリフテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplateModel">SpeachTemplateModel</a>\r
-</li></ul><h2 id="h2-speaches.20.E3.82.BB.E3.83.AA.E3.83.95">speaches セリフ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_id</td><td>フキダシ枠id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>content</td><td>台詞</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachModel">SpeachModel</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons">\r
-    <title>BundledSpeachBalloons</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons</link>\r
-    <dc:identifier>BundledSpeachBalloons</dc:identifier>\r
-    <dc:date>2012-01-14T09:23:10+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 標準フキダシ\r
- * ベクターなし\r
-   * ベクター式のプログラムは実装されておらず、テンプレートのみで行う。\r
- * 楕円\r
-[[embed(http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/fukiMoon1.gif)]]\r
- * 雲\r
-[[embed(http://sourceforge.]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E6.A8.99.E6.BA.96.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7">標準フキダシ</h1><ul><li>ベクターなし\r
-<ul><li>ベクター式のプログラムは実装されておらず、テンプレートのみで行う。\r
-</li></ul></li><li>楕円\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/fukiMoon1.gif" alt="fukiMoon1.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2ffukiMoon1.gif-1" title="fukiMoon1.gif" class="embed-image"><p>\r
-</p><ul><li>雲\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/omoiFuki1.gif" alt="omoiFuki1.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fomoiFuki1.gif-1" title="omoiFuki1.gif" class="embed-image"><p>\r
-</p><ul><li>角丸\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/bln1.png" alt="bln1.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fbln1.png-1" title="bln1.png" class="embed-image"><p>\r
-</p><ul><li>カギ\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/hook.png" alt="hook.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fhook.png-1" title="hook.png" class="embed-image"><p>\r
-</p><ul><li>プレーン\r
-</li><li>ボックス\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/square4.gif" alt="square4.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fsquare4.gif-1" title="square4.gif" class="embed-image"><p>\r
-</p><ul><li>ギザ細\r
-</li><li>ギザ粗\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/togeFuki.gif" alt="togeFuki.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2ftogeFuki.gif-1" title="togeFuki.gif" class="embed-image"><p>\r
-</p><ul><li>鳥の巣\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AppendixList">\r
-    <title>AppendixList</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AppendixList</link>\r
-    <dc:identifier>AppendixList</dc:identifier>\r
-    <dc:date>2012-01-14T08:55:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= おまけ\r
- * BundledPictures\r
- * BundledSpeachBalloons\r
- * BundledLisences\r
-\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.81.8A.E3.81.BE.E3.81.91">おまけ</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures">BundledPictures</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons">BundledSpeachBalloons</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledLisences">BundledLisences</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi">\r
-    <title>AboutKinichi</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi</link>\r
-    <dc:identifier>AboutKinichi</dc:identifier>\r
-\r
-    <dc:date>2012-01-12T08:41:56+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= キンイチ\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/1555.gif)]]\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/bac.png)]]\r
-[[Embed(http://sourcefo]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AD.E3.83.B3.E3.82.A4.E3.83.81">キンイチ</h1><img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/1555.gif" alt="1555.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2f1555.gif-1" title="1555.gif" class="embed-image"><p>\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/bac.png" alt="bac.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fbac.png-1" title="bac.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/kijck.png" alt="kijck.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fkijck.png-1" title="kijck.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/ccc.png" alt="ccc.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fccc.png-1" title="ccc.png" class="embed-image">\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures">\r
-    <title>BundledPictures</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/BundledPictures</link>\r
-    <dc:identifier>BundledPictures</dc:identifier>\r
-    <dc:date>2012-01-12T08:35:43+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= おまけ素材\r
- * AboutPenjiro\r
- * AboutKinichi]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.8A.E3.81.BE.E3.81.91.E7.B4.A0.E6.9D.90">おまけ素材</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro">AboutPenjiro</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi">AboutKinichi</a></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro">\r
-    <title>AboutPenjiro</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro</link>\r
-\r
-    <dc:identifier>AboutPenjiro</dc:identifier>\r
-    <dc:date>2012-01-12T08:35:00+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ペン次郎\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/129.png)]]\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/ge.png)]]\r
-[[Embed(http://sourceforg]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.9A.E3.83.B3.E6.AC.A1.E9.83.8E">ペン次郎</h1><img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/129.png" alt="129.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2f129.png-1" title="129.png" class="embed-image"><p>\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/ge.png" alt="ge.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2fge.png-1" title="ge.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/up.png" alt="up.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2fup.png-1" title="up.png" class="embed-image"></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">\r
-    <title>HtmlAndCss2</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2</link>\r
-    <dc:identifier>HtmlAndCss2</dc:identifier>\r
-    <dc:date>2012-01-10T01:12:37+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= Html + css2.1\r
-ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.[[BR]]\r
-しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-\r
-== マンガの表示に使用する css プロパティ\r
- * overflow:hidden\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Html.20.2B.20css2.1">Html + css2.1</h1><p>ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.[[BR]]\r
-<br />しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-</p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.20css.20.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3">マンガの表示に使用する css プロパティ</h2><ul><li>overflow:hidden\r
-<ul><li>コマの外にはみ出してしまう部分を隠す.コマの枠となる div に指定.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html</a>\r
-</li></ul></li><li>position:absolute, left, top\r
-<ul><li>コミック要素(画像や吹きだし)の配置に使用.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position</a>\r
-</li></ul></li><li>z-index\r
-<ul><li>html要素の順を無視して、コミック要素の重ね順を変更するときに使用.\r
-</li><li>html要素は意味順(時系列順)に並ぶが、コミックでは演出によって、最後に起こったことが奥に行くことも手前に来ることもある.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html</a>\r
-</li></ul></li><li>display:table, display:teble-cell\r
-<ul><li>吹きだし内テキストの上下中央配置に使用を考えたが、、、ぺったんでは、table 要素を使用していた.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html</a>\r
-</li></ul></li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><table class="wikitable" border="1"><tbody><tr><td>プロパティ</td><td>ie</td><td>NN</td><td>firefox</td><td>safari</td><td>chrome</td><td>opera</td></tr><tr><td>overflow:hidden</td><td>5+</td><td>6+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>position:absolute, top, left</td><td>position&amp;top:4+, left:5+</td><td>4+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>z-index</td><td>4+</td><td>4+</td><td>1+</td><td>4+</td><td>1+</td><td>6+</td></tr><tr><td>display:table,table-cell</td><td>8+</td><td>6+</td><td>2+</td><td>2+</td><td>1+</td><td>9+</td></tr></tbody></table><h3 id="h3-.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E5.86.85.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.81.AE.E4.B8.8A.E4.B8.8B.E4.B8.AD.E5.A4.AE.E9.85.8D.E7.BD.AE">吹きだし内テキストの上下中央配置</h3><p>display:table, display:table-cell は、吹きだし内のテキストの上下中央配置に使用が検討されるが...[[BR]]\r
-<br />ie7 以下については、条件付コメントで、tableタグを使用.\r
-</p><p>html中\r
-<pre>&lt;!--[if lte IE 7]&gt;&lt;a href=&quot;#&quot;&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]--&gt;\r
- &lt;span&gt;Hello&lt;/span&gt;\r
-&lt;!--[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/a&gt;&lt;![endif]--&gt;\r
-</pre></p><p>xsl中で使うと\r
-<pre>&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
- &lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;\r
-&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
-</pre></p><p>また、firefox3.5 について、display:table 周りのバグについて報告されている.\r
-</p><blockquote class="citation"><p>Project IE: Firefox 3.5 の display: table;(table-row; table-cell;) 関連の挙動について[[BR]]\r
-<br /><a href="http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html" class="external" rel="nofollow">http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html</a><br />\r
-CSSで display: table-cell; を指定してマルチカラムレイアウトを行っている場合に Firefox 3.5 だとまれにカラム落ちしてしまうという現象が起きてしまいます。\r
-</p></blockquote><p>記事によると、display:table-cell に対して、display:table でなく、display:table-row を使っておくのがいいそうだ.</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki">\r
-    <title>LocalWiki</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LocalWiki</link>\r
-    <dc:identifier>LocalWiki</dc:identifier>\r
-    <dc:date>2012-01-10T01:06:42+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ローカルでの wiki の閲覧 と Wiki のバックアップ\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png)]]\r
-\r
-== ネットが無い環境でも wiki を見る\r
-\r
-=== 動作確認ブラウザ\r
-ie8, firefox3.6\r
-\r
-=== 用意\r
- * clientJs.git を落として、client]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.83.AD.E3.83.BC.E3.82.AB.E3.83.AB.E3.81.A7.E3.81.AE.20wiki.20.E3.81.AE.E9.96.B2.E8.A6.A7.20.E3.81.A8.20Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">ローカルでの wiki の閲覧 と Wiki のバックアップ</h1><img src="http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9802f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.83.8D.E3.83.83.E3.83.88.E3.81.8C.E7.84.A1.E3.81.84.E7.92.B0.E5.A2.83.E3.81.A7.E3.82.82.20wiki.20.E3.82.92.E8.A6.8B.E3.82.8B">ネットが無い環境でも wiki を見る</h2><h3 id="h3-.E5.8B.95.E4.BD.9C.E7.A2.BA.E8.AA.8D.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">動作確認ブラウザ</h3><p>ie8, firefox3.6\r
-</p><h3 id="h3-.E7.94.A8.E6.84.8F">用意</h3><ul><li>clientJs.git を落として、clientJs/0.3.0/wiki/wiki.xml をブラウザで開く.但し、wiki.xml が最新でない場合に注意!\r
-</li><li>または、以下を見て必要最小限のファイルを DL して配置.\r
-</li></ul><p>公開フィード一覧にある <a href="http://sourceforge.jp/projects/pettanr/feeds/">http://sourceforge.jp/projects/pettanr/feeds/</a>\r
-wiki 全文 をDLして、wiki.xml という名前で保存. <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a>\r
-</p><p>.xml の 2行目に .xsl へのリンクを追加.\r
-<pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;\r
-&lt;?xml-stylesheet type=&quot;text/xsl&quot; href=&quot;wiki.xsl&quot;?&gt;\r
-</pre></p><p>さらに、以下のファイル を DL.\r
-</p><ul><li>wiki/wiki.xsl\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.xsl" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.xsl</a>\r
-</li></ul></li><li>wiki/wiki.css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.css</a>\r
-</li></ul></li><li>wiki/wiki.js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.js</a>\r
-</li></ul></li><li>common.css pettanR 共通 css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.css</a>\r
-</li></ul></li><li>common.css pettanR 共通 js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.js</a>\r
-</li></ul></li></ul><p>以下のように配置する.\r
-</p><ul><li>common.css\r
-</li><li>common.js\r
-</li><li>wiki フォルダ\r
-<ul><li>wiki.xml\r
-</li><li>wiki.xsl\r
-</li><li>wiki.css\r
-</li><li>wiki.js\r
-</li></ul></li></ul><h3 id="h3-.E6.B3.A8.E6.84.8F">注意</h3><p>ブラウザは、Firefox と IE で確認. 他のブラウザだと、ブラウザが独自の .xsl をあててしまう.<br />\r
-また .xml が web 上にあると、ブラウザが独自の .xsl をあててしまう.<br />\r
-外部のリンクは赤く、wiki の他のページへのリンクは 緑 で表示.<br />\r
-</p><h2 id="h2-Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">Wiki のバックアップ</h2><p>wiki 全文配信フィードの <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a> を Google リーダーに登録しておく.</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">\r
-    <title>ForAuthors</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForAuthors</link>\r
-    <dc:identifier>ForAuthors</dc:identifier>\r
-\r
-    <dc:date>2012-01-06T19:53:55+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== 奥行きzと時間軸t\r
-コミックの各コマには奥行きと時間軸があります。\r
-\r
-奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-\r
-時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-\r
-これらをコミック上で正しく]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h2 id="h2-.E5.A5.A5.E8.A1.8C.E3.81.8Dz.E3.81.A8.E6.99.82.E9.96.93.E8.BB.B8t">奥行きzと時間軸t</h2><p>コミックの各コマには奥行きと時間軸があります。\r
-</p><p>奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-</p><p>時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-</p><p>これらをコミック上で正しく並べるために、奥行きzと時間軸tが用意してあります。奥行きに関してはエディタでビジュアルに操作している限り問題ありません。しかし、コマの外観だけを見て制作すると、時間軸は必ず正しく並ぶというわけではありません。時間軸を意識することで、より違和感のない漫画ができるとぺったんRでは考えています。画像がきれいに表示されない環境や読み上げソフトなどを使った場合は、特に効果があるはずです。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E5.A5.A5.E8.A1.8C.E3.81.8D.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな奥行きデータ作成</h2><p>ページ内で同じzindexを持っては意味がありません。そこでzが重ならないようにデータをユニークに作成する必要があります。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E6.99.82.E9.96.93.E8.BB.B8.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな時間軸データ作成</h2><ul><li>コマ単位でtを順序づけ。\r
-<ul><li>コミック表示など複数のコマが表示される場合は、コマ番号tからのオフセット\r
-</li><li>例えば、コマ1にオブジェクトが4つあるとき、コマ2のtは4から始まる。\r
-</li><li>コマ2に6つのオブジェクトがあるなら、コマ3のtは10から始まる。\r
-</li><li>コマ3に添付されたコマ絵のtが2なら、コマ3のt(オフセット)10+2で12\r
-<ul><li>まぁ、ここはクライアントが好きにしていい話か。別に1-2とか2-3で管理してもいいけど。\r
-</li></ul></li></ul></li><li>tは0から始まる\r
-</li><li>コマpanels内でコマ絵panel_picturesとフキダシ枠speach_balloonのtは重なっちゃだめ。両者は同じレベル。\r
-<ul><li>ただし、フキダシ枠speach_balloonの中にあるセリフspeachesは一つレベルが下。セリフspeachesのtは一つのフキダシ枠speach_balloonの中でユニーク。ほとんどのフキダシにはセリフスペースは一個しかないから、多段フキダシを除けばspeaches.tは常に0。\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">\r
-    <title>XbackendReversibleImage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage</link>\r
-    <dc:identifier>XbackendReversibleImage</dc:identifier>\r
-    <dc:date>2012-01-06T08:09:10+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クロスバックエンドな反転画像機能\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png)]]\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.[[BR]]\r
-とくにキャラクター画像を左右に反転させたい、という要望だ.[[BR]]\r
-\r
-ぺったんR では、その反転に取り組む.[[BR]]\r
-サーバ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E7.94.BB.E5.83.8F.E6.A9.9F.E8.83.BD">クロスバックエンドな反転画像機能</h1><img src="http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9332f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.[[BR]]\r
-<br />とくにキャラクター画像を左右に反転させたい、という要望だ.[[BR]]\r
-<br /></p><p>ぺったんR では、その反転に取り組む.[[BR]]\r
-<br />サーバー側での反転画像の準備と、ブラウザでのクロスバックエンドな対応、という二段構えだ.[[BR]]\r
-<br /></p><h2 id="h2-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E5.81.B4.E3.81.A7.E3.81.AE.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E8.A1.A8.E7.A4.BA">ブラウザ側でのクロスバックエンドな反転表示</h2><h3 id="h3-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h3><p>ブラウザのネイティブな反転表示機能(css3)および、ブラウザの独自拡張や Flash 等のプラグインを使用する.[[BR]]\r
-<br />これらの機能をサポートしない、または切っているブラウザは、サーバー側で生成した画像を利用することになる.[[BR]]\r
-<br />ブラウザ側でなるべく画像を用意しサーバーへの負荷を極力抑えます.\r
-</p><h3 id="h3-.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89">使用するバックエンド</h3><h4 id="h4-css3">css3</h4><p>例\r
-<pre>img.img-flip-v { /* 上下反転 */\r
-       transform:              scale( 1, -1);\r
-       -o-transform:           scale( 1, -1);\r
-       -ms-transform:          scale( 1, -1);\r
-       -moz-transform:         scale( 1, -1);\r
-       -webkit-transform:      scale( 1, -1);\r
-}      \r
-img.img-flip-h { /* 左右反転 */\r
-       transform:              scale( -1, 1);\r
-       -o-transform:           scale( -1, 1);\r
-       -ms-transform:          scale( -1, 1);\r
-       -moz-transform:         scale( -1, 1);\r
-       -webkit-transform:      scale( -1, 1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       transform:              scale( -1, -1);\r
-       -o-transform:           scale( -1, -1);\r
-       -ms-transform:          scale( -1, -1);\r
-       -moz-transform:         scale( -1, -1);\r
-       -webkit-transform:      scale( -1, -1);\r
-}\r
-</pre></p><h4 id="h4-VML">VML</h4><p>例\r
-<pre>v\:image.img-flip-v {\r
-       flip:                   y; /* vml */\r
-}\r
-v\:image.img-flip-h {\r
-       flip:                   x; /* vml */\r
-}v\:image.img-flip-vh {\r
-       rotation :              180; /* vml */\r
-}\r
-</pre>ie独自拡張の VML が ie6~8 での反転画像の本命となる.上記のように vml 用の css も使える.(ただし js による css の適用にくせがある.)[[BR]]\r
-<br />VML で表示された画像は、ie6 以下にある透過 png の問題も解消される.(但し ie6 のみ.ie5.5 以下では透過表示が不十分)[[BR]]\r
-<br /></p><blockquote class="citation"><p>Windows版 IE 5以降の VMLレンダラで半透明、透過PNGを表示する[[BR]]\r
-<br /><a href="http://www.minc.ne.jp/~konda/new/png/urawaza04.html" class="external" rel="nofollow">http://www.minc.ne.jp/~konda/new/png/urawaza04.html</a><br />\r
-IE 5 及び 5.5 (5.50.4133.200)の vgx.dll(Microsoft Vector Graphics Rendering(VML))は、Beta バージョンですから 半透明系は、以下の画像の様に擬似半透明表示(ディザリング)されます\r
-</p></blockquote><pre>&lt;!--[if !gte vml 1]&gt;&lt;!--&gt;&lt;img src=&quot;*.png&quot; width=&quot;*&quot; height=&quot;*&quot; alt=&quot;*&quot; /&gt;&lt;!--&lt;![endif]--&gt;\r
-&lt;!--[if gte vml 1]&gt;&lt;v:image src=&quot;*.png&quot; style=&quot;width: *px; height: *px; behavior: url(#default#vml)&quot; alt=&quot;*&quot; /&gt;&lt;![endif]--&gt;\r
-</pre><p>さらに、ActiveX よりも動作が速い(らしい).[[BR]]\r
-<br />但し VML は windows の構成によってはインストールされていない場合があり、必ずしも使えるわけではない.[[BR]]\r
-<br />itozyun の環境のひとつでも VML が使えなかった.nlite で削ってしまったためと思われる.\r
-</p><h3 id="h3-SVG">SVG</h3><p>svg な xml を js で作って data スキームで読み込む。Opera8+ でも画像反転できるかも。Opera9.6 で静的に埋め込んだ以上の html では反転表示ができた。ただし Firefox3.6 Chrome8 では表示できない。[[BR]]\r
-<br />dataスキームになった svg に対しては、画像の url を絶対座標で与える。\r
-svg を html に直接埋め込む方式では、なぜか手元で一度も成功していない。\r
-<pre>&lt;?xml version=&quot;1.0&quot;?&gt;\r
-&lt;!DOCTYPE svg PUBLIC &quot;-//W3C//DTD SVG 1.1//EN&quot; &quot;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&quot;&gt;\r
-&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;\r
-&lt;image x=&quot;0&quot; y=&quot;0&quot; width=&quot;200&quot; height=&quot;200&quot; xlink:href=&quot;1.gif&quot; transform=&quot;scale(-1,1) translate(-200,0)&quot; /&gt;\r
-&lt;/svg&gt;\r
-</pre></p><ul><li><a href="http://software.hixie.ch/utilities/cgi/data/data" class="external" rel="nofollow">http://software.hixie.ch/utilities/cgi/data/data</a>\r
-</li><li>サイトの表示スピードを改善!dataスキームURIを使った画像の埋め込み http://labs.cybridge.jp/2011/12/data-uri.html\r
-<a href="http://labs.cybridge.jp/2011/12/data-uri.html" class="external" rel="nofollow">http://labs.cybridge.jp/2011/12/data-uri.html</a><ul><li>データスキーム対応ブラウザ \r
-</li><li>Firefox2+\r
-</li><li>Safari\r
-</li><li>Chrome\r
-</li><li>Opera7.2+\r
-</li><li>IE8+\r
-</li></ul></li></ul><pre>&lt;img src=&quot;data:image/svg+xml;charset=utf-8,%3c%3fxml%20version%3d%221.0%22%3f%3e%3c!DOCTYPE%20svg%20PUBLIC%20%22-%2f%2fW3C%2f%2fDTD%20SVG%201.1%2f%2fEN%22%20%22http%3a%2f%2fwww.w3.org%2fGraphics%2fSVG%2f1.1%2fDTD%2fsvg11.dtd%22%3e%3csvg%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%20version%3d%221.1%22%20xmlns%3axlink%3d%22http%3a%2f%2fwww.w3.org%2f1999%2fxlink%22%20width%3d%22200%22%20height%3d%22200%22%3e%3cimage%20x%3d%220%22%20y%3d%220%22%20width%3d%22200%22%20height%3d%22200%22%20xlink%3ahref%3d%22http%3a%2f%2fstatic.sourceforge.jp%2fthumb%2fg%2f2%2f930%2f640x640_0.png%22%20transform%3d%22scale(-1%2c1)%20translate(-200%2c0)%22%20%2f%3e%3c%2fsvg%3e&quot;&gt;\r
-</pre><h4 id="h4-ActiveX">ActiveX</h4><pre>img.img-flip-v { /* 上下反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-}\r
-img.img-flip-h { /* 左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-}\r
-</pre><p>ActiveX は、ie6 以下のための pngfix にも使いたいが、反転とAlpha Image Loader を同時に使用することはできない.[[BR]]\r
-<br />ie6では、ActiveX による反転は、png 画像に対しては使用できない.\r
-</p><h4 id="h4-Flash">Flash</h4><p>クロスドメインな画像に対しても、読み込み、反転表示は行える.[[BR]]\r
-<br />なるべく バージョンの古い Flash で用意してサポート範囲を広くしたいが、js と連携する ExternalInterface が使えなくなったりと多難かもしれない.\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/ExternalInterface">ExternalInterface</a></p><h4 id="h4-Canvas">Canvas</h4><p>同一ドメインの画像のみになるが、画像のピクセルデータを取得し反転しつつ描画することができる.[[BR]]\r
-<br /></p><blockquote class="citation"><p>Canvasによる画像ファイル(img要素)の読み書き[[BR]]\r
-<br /><a href="http://www.programmingmat.jp/webhtml_lab/canvas_image.html" class="external" rel="nofollow">http://www.programmingmat.jp/webhtml_lab/canvas_image.html</a>\r
-</p></blockquote><h4 id="h4-Silverlight">Silverlight</h4><h4 id="h4-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89.E7.94.BB.E5.83.8F">サーバーサイド画像</h4><p>サーバー側で反転画像を用する.このサーバ画像へのアクセスを極力減らすのが、X Backend Imageの目的のひとつ.\r
-<pre>picture/001.png\r
-picture/v/001.png\r
-picture/h/001.png\r
-picture/vh/001.png\r
-</pre></p><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h3><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5+5.5</td><td>ie6</td><td>ie7 &amp; 8</td><td>ie9+</td><td>FF</td><td>Safari</td><td>Chrome</td><td>Opera</td></tr><tr><td>CSS3:transform</td><td>×</td><td>×</td><td>×</td><td>○</td><td>3.5+</td><td>3.1+(?)</td><td>1+</td><td>10.5+</td></tr><tr><td>VML</td><td>▲透過pngの表示が汚い</td><td>△</td><td>△環境による</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>Canvas</td><td>×</td><td>×</td><td>×</td><td>○</td><td>1.5+</td><td>1.3+</td><td>1+</td><td>9+</td></tr><tr><td>SVG +DATAスキーム</td><td>×</td><td>×</td><td>×</td><td>?</td><td>?</td><td>?</td><td>?</td><td>8+(?)</td></tr><tr><td>サーバー画像</td><td>△</td><td>△要pngfix</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">\r
-    <title>ChangeDoc</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc</link>\r
-\r
-    <dc:identifier>ChangeDoc</dc:identifier>\r
-    <dc:date>2012-01-04T18:19:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 改変予告\r
-== モデルの変名\r
-\r
-balloon_templates\r
- * border &rarr; size\r
- * min_width &rarr; \r
- * max_width &rarr; \r
- * min_height &rarr; \r
- * max_height &rarr; \r
-balloons \r
- * border &rarr; size\r
- * zindex &ra]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h1><h2 id="h2-.E3.83.A2.E3.83.87.E3.83.AB.E3.81.AE.E5.A4.89.E5.90.8D">モデルの変名</h2><p>balloon_templates\r
-</p><ul><li>border → size\r
-</li><li>min_width → \r
-</li><li>max_width → \r
-</li><li>min_height → \r
-</li><li>max_height → \r
-</li></ul><p>balloons \r
-</p><ul><li>border → size\r
-</li><li>zindex → z\r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>comics \r
-</p><ul><li>default_width → width\r
-</li><li>default_height → height\r
-</li></ul><p>original_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li></ul><p>panel_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>zindex → z\r
-</li><li>v → flipv\r
-</li><li>h → fliph\r
-</li></ul><p>panels\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>seqno → t\r
-</li></ul><p>speach_balloons\r
-</p><ul><li>tail_limit → tail_count\r
-</li><li>border_limit → size_count\r
-</li></ul><p>speach_templates\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>speaches\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>balloons \r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>speaches\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>panels\r
-<table class="wikitable" border="1"><tbody><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:将来の拡張に備えるため\r
-</p><p>panel_pictures\r
-<table class="wikitable" border="1"><tbody><tr><td>url</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>common_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>original_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>comics\r
-<table class="wikitable" border="1"><tbody><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-</p><p>speach_balloons\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">\r
-    <title>DatabaseSchema</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema</link>\r
-    <dc:identifier>DatabaseSchema</dc:identifier>\r
-    <dc:date>2012-01-04T18:05:04+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 定義\r
-超やっつけだけど、無いよりはマシか。\r
-\r
-{{{\r
-ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,        ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E5.AE.9A.E7.BE.A9">定義</h1><p>超やっつけだけど、無いよりはマシか。\r
-</p><pre>ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;admins&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_admins_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_admins_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;email&quot;], :name =&gt; &quot;index_admins_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_admins_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;artists&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;homepage_url&quot;\r
-    t.string   &quot;api_url&quot;\r
-    t.integer  &quot;default_lisence_id&quot;\r
-    t.datetime &quot;crowled_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-    t.integer  &quot;author_id&quot;\r
-  end\r
-\r
-  create_table &quot;authors&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;authors&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_authors_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_authors_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;email&quot;], :name =&gt; &quot;index_authors_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_authors_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;balloon_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;speach_balloon_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;tail&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;min_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;min_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;, &quot;tail&quot;, &quot;size&quot;], :name =&gt; &quot;balloon_templates_idts&quot;, :unique =&gt; true\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;], :name =&gt; &quot;index_balloon_templates_on_speach_balloon_id&quot;\r
-\r
-  create_table &quot;balloons&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                           :null =&gt; false\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                  :null =&gt; false\r
-    t.integer  &quot;tail&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;balloon_idt&quot;, :unique =&gt; true\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;], :name =&gt; &quot;index_balloons_on_panel_id&quot;\r
-\r
-  create_table &quot;comics&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;title&quot;\r
-    t.integer  &quot;width&quot;,      :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;visible&quot;,    :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;editable&quot;,   :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;comics&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_comics_on_author_id&quot;\r
-\r
-  create_table &quot;common_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;lisences&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;lisences&quot;, [&quot;url&quot;], :name =&gt; &quot;index_lisences_on_url&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;original_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;artist_id&quot;,                        :null =&gt; false\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;original_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;original_pictures&quot;, [&quot;artist_id&quot;], :name =&gt; &quot;index_original_pictures_on_artist_id&quot;\r
-\r
-  create_table &quot;panel_pictures&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                                          :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;,                               :null =&gt; false\r
-    t.string   &quot;url&quot;,                 :limit =&gt; 200\r
-    t.integer  &quot;x&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;t&quot;,                                  :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                                             :null =&gt; false\r
-    t.integer  &quot;height&quot;,                                            :null =&gt; false\r
-    t.integer  &quot;flipv&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;fliph&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panel_pictures&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;panel_pictures_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;panels&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;comic_id&quot;,                             :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;\r
-    t.integer  &quot;width&quot;,               :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;border&quot;,              :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panels&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_panels_on_author_id&quot;\r
-  add_index &quot;panels&quot;, [&quot;comic_id&quot;, &quot;t&quot;], :name =&gt; &quot;panels_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;resource_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,                 :null =&gt; false\r
-    t.integer  &quot;width&quot;,               :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,            :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.integer  &quot;original_picture_id&quot;, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;speach_balloons&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                      :null =&gt; false\r
-    t.integer  &quot;tail_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_balloons&quot;, [&quot;t&quot;], :name =&gt; &quot;speach_balloons_t&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speach_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_templates&quot;, [&quot;balloon_template_id&quot;, &quot;t&quot;], :name =&gt; &quot;speach_templates_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speaches&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_id&quot;,                :null =&gt; false\r
-    t.string   &quot;content&quot;\r
-    t.integer  &quot;x&quot;,                         :null =&gt; false\r
-    t.integer  &quot;y&quot;,                         :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                     :null =&gt; false\r
-    t.integer  &quot;height&quot;,                    :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;, &quot;t&quot;], :name =&gt; &quot;speaches_bt&quot;, :unique =&gt; true\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;], :name =&gt; &quot;index_speaches_on_balloon_id&quot;\r
-\r
-  create_table &quot;system_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-end\r
-\r
-</pre>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">\r
-    <title>SpeachBalloonsController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController</link>\r
-    <dc:identifier>SpeachBalloonsController</dc:identifier>\r
-    <dc:date>2012-01-04T07:58:05+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= フキダシテンプレート\r
-コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-\r
- * 作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
- * 管理者がフキダシの基礎情報をメンテナンスする。\r
-\r
-メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があ]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-</p><ul><li>作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
-</li><li>管理者がフキダシの基礎情報をメンテナンスする。\r
-</li></ul><p>メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があるためである。詳しくはAboutSpeachBalloon。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a></p><p>参考:Spea<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a></p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家/管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>○</td></tr></tbody></table></p><p>主にクライアントのエディタがフキダシリストを得るために使う。全レコードがt順で返る。\r
-</p><p>html形式では、管理者がメンテナンスのために閲覧する。重要なカラムの情報が一覧で表示されるほか、showへの誘導と、削除のボタンが配置される。\r
-</p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がメンテナンスのために閲覧する機能。\r
-</p><h2 id="h2-create">create</h2><p>作成\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを追加するための機能。\r
-</p><p>jsonデータを元にフキダシテンプレートを作成する。データ作成方法はHowToMakeSpeachBalloonを見る。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></p><h2 id="h2-update">update</h2><p>更新\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを修正するための機能。\r
-</p><p>指定されたidのフキダシテンプレートを、jsonデータを元に更新する。データ作成方法はHowToMakeSpeachBalloonを見る。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></p><h3 id="h3-.E4.BE.8B.E5.A4.96">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p><h2 id="h2-destroy">destroy</h2><p>削除\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>指定されたidのフキダシテンプレートを削除する。フキダシテンプレートだけでなく、枠テンプレートとセリフテンプレートも同時に削除される。\r
-</p><h3 id="h3-.E4.BE.8B.E5.A4.96-2">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">\r
-    <title>PanelPictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel</link>\r
-    <dc:identifier>PanelPictureModel</dc:identifier>\r
-\r
-    <dc:date>2012-01-03T12:34:36+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関するデータ。\r
-\r
-参考:PanelPicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-コマ絵は常にパネル経由で作成されるため、PanelsControllerからjsonフォーマットで送信する。\r
-\r
-コマ絵は素材のコピーなので、素材ResourcePictureModelのデータを元に作成する。行の新規作成時はデフォルト値と]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関するデータ。\r
-</p><p>参考:Pane<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a></p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2><p>コマ絵は常にパネル経由で作成されるため、PanelsControllerからjsonフォーマットで送信する。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a></p><p>コマ絵は素材のコピーなので、素材ResourcePictureModelのデータを元に作成する。<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>のように値をコピーすること。\r
-</p><table class="wikitable" border="1"><tbody><tr><td><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicture">PanelPicture</a></td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicture">ResourcePicture</a></td></tr><tr><td>width</td><td>width</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">\r
-    <title>ResourcePictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel</link>\r
-    <dc:identifier>ResourcePictureModel</dc:identifier>\r
-    <dc:date>2012-01-03T11:56:43+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 素材\r
-絵師から提供された原画OriginalPictureModelをコマPanel上で扱いやすいように整えた画像に関するデータ。\r
-\r
-参考:ResourcePicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.B4.A0.E6.9D.90">素材</h1><p>絵師から提供された原画OriginalPictureModelをコ<a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>像に関するデータ。\r
-</p><p>参考:Reso<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a></p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">\r
-    <title>PanelPicturesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController</link>\r
-\r
-    <dc:identifier>PanelPicturesController</dc:identifier>\r
-    <dc:date>2012-01-03T11:39:51+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関する処理。\r
-\r
-コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-\r
-参考:PanelPictureModel\r
-\r
-== index\r
-一覧形式\r
-||パラメータ||なし||\r
-||権限||管理者||\r
-\r
-== show\r
-単票形式\r
-||パラメータ||id||\r
-||権限|]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関する処理。\r
-</p><p>コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-</p><p>参考:Pane<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a></p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">\r
-    <title>XbackendSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon</link>\r
-    <dc:identifier>XbackendSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-02T01:06:05+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= クロスバックエンドな吹きだし表示機能\r
-\r
-ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.[[BR]]\r
-また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.[[BR]]\r
-\r
-吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E8.A1.A8.E7.A4.BA.E6.A9.9F.E8.83.BD">クロスバックエンドな吹きだし表示機能</h1><p>ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.[[BR]]\r
-<br />また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.[[BR]]\r
-<br /></p><p>吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが操作している間にそのすべてのバリエーションを読み込んでしまう事態になります.[[BR]]\r
-<br />また、マンガという表現スタイルを考えると、キャラクター画像一枚に対して、ひとつ程度の吹き出しが登場する、と仮定するという仮定で、ぺったんのページ読み込み時の全画像アクセスのうち、半分を吹きだし画像が締めることになる試算です.[[BR]]\r
-<br />(もちろん、キャラクター画像の方がはるかにファイルサイズが大きくなります.注意深く容量を抑えて作られた場合でも 10KB ~ 20KB という試算です.)[[BR]]\r
-<br /></p><p>このような、吹きだし画像へのアクセスを抑止して、サービスの安定を図るためベクター画像をサポートするブラウザについては、ブラウザ側で吹きだし画像を用意します.\r
-</p><h1 id="h1-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h1><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5~8</td><td>ie9+</td><td>FF</td><td>safari</td><td>chrome</td><td>Opera</td></tr><tr><td>VML</td><td>○</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>SVG</td><td>×</td><td>○</td><td>1.5+</td><td>3.0+</td><td>1+</td><td>8+</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">\r
-    <title>HowToMakeSpeachBalloon</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon</link>\r
-    <dc:identifier>HowToMakeSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-01T01:59:53+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== フキダシテンプレート\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png)]]\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そし]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h2><img src="http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9492f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そして、それらすべての組み合わせの枠テンプレートとテキストテンプレートを用意してください。一つでも欠けると追加できません。\r
-</p><p>例えば、尻尾が上下左右ならtail_limitが4。サイズが大中小ならで_limitが3で、4*3で合計12の枠テンプレートとテキストテンプレートを用意します。\r
-</p><p>→tail ↓Border\r
-<table class="wikitable" border="1"><tbody><tr><td> </td><td>1</td><td>2</td><td>3</td><td>4</td></tr><tr><td>1</td><td>小-上</td><td>小-右</td><td>小-下</td><td>小-左</td></tr><tr><td>2</td><td>中-上</td><td>中-右</td><td>中-下</td><td>中-左</td></tr><tr><td>3</td><td>大-上</td><td>大-右</td><td>大-下</td><td>大-左</td></tr></tbody></table></p><p>フキダシテンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>name</td><td>フキダシの名前</td><td> </td></tr><tr><td>tail_limit</td><td>尻尾のバリエーション数</td><td> </td></tr><tr><td>border_limit</td><td>サイズのバリエーション数</td><td> </td></tr></tbody></table></p><h2 id="h2-.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">枠テンプレート</h2><p>枠は画像で用意します。フキダシ用の画像を用意して素材として投稿します。\r
-各種フキダシ素材を投稿したらIDをメモします。\r
-</p><p>枠テンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>resource_picture_id</td><td>フキダシ素材のID</td><td> </td></tr><tr><td>tail</td><td>尻尾の番号</td><td>1から始まりtail_limit-1で終わること</td></tr><tr><td>border</td><td>サイズの番号</td><td>1から始まり_limit-1で終わること</td></tr><tr><td>min_width</td><td>横方向のサイズが小さい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_width</td><td>横方向のサイズが大きい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>min_height</td><td>縦方向のサイズが小さい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_height</td><td>縦方向のサイズが大きい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr></tbody></table></p><h2 id="h2-.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">テキストテンプレート</h2><p>枠画像のどの位置にテキストを表示するかを決めて座標をメモします。\r
-</p><table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>top_offset</td><td>テキストの表示を開始するx座標</td><td> </td></tr><tr><td>left_offset</td><td>テキストの表示を開始するy座標</td><td> </td></tr><tr><td>width</td><td>テキストの表示幅</td><td> </td></tr><tr><td>height</td><td>テキストの表示高さ</td><td> </td></tr></tbody></table><p>offset と width, height ですが、単位は % になりますか??(itozyun)\r
-</p><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">データ作成</h3><p>これまでのメモからデータを作成します。データはjsonで作成します。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">\r
-    <title>ClientSide</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ClientSide</link>\r
-    <dc:identifier>ClientSide</dc:identifier>\r
-\r
-    <dc:date>2011-12-31T22:34:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアント側\r
\r
-ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.[[BR]]\r
-マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。[[BR]]\r
-またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.[[BR]]\r
-\r
-== マンガの閲覧\r
-ぺったんR において、ブラウ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><div class="indent">\r
-</div><p>ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.[[BR]]\r
-<br />マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。[[BR]]\r
-<br />またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.[[BR]]\r
-<br /></p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.96.B2.E8.A6.A7">マンガの閲覧</h2><p>ぺったんR において、ブラウザでのマンガ状コンテンツの閲覧のために、ユーザーは Flash も含めて特別なプラグインを必要としない.\r
-</p><h3 id="h3-html.20.2B.20css2.1">html + css2.1</h3><p>ぺったんと、ぺったんを元にする ぺったんRは、マンガ状のコンテンツの表示に css2.1 でレイアウトする.[[BR]]\r
-<br />以上をサポートするブラウザであれば、ぺったん 及び ぺったんR のコンテンツは閲覧ができる.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul><h3 id="h3-javascript">javascript</h3><p>ぺったんR で新たに追加された機能や、ぺったんRサーバへの負荷を抑えるため、javascript に加え css3, SVG といった新しいWeb標準が使われる.[[BR]]\r
-<br />これらをサポートしないブラウザも少なくなく、VML, ActiveX, flash といった非Web標準も利用する.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li></ul><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E7.94.BB.E5.83.8F.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E3.82.B3.E3.83.9E.E3.81.AE.E7.B7.A8.E9.9B.86.E3.83.BB.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E8.A8.AD.E5.AE.9A">コミックの管理・画像の管理・コマの編集・ユーザー設定</h2><p>これらのログインユーザーのための機能は、javascript が前提となる.[[BR]]\r
-<br />画面は Ajax で用意されるため、サーバ側はユーザのデータの管理とクライアントとの通信に専念できる.[[BR]]\r
-<br /></p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E3.82.B7.E3.82.A7.E3.82.A2">ブラウザシェア</h3><p>IE系では、css3 や SVG をサポートしない IE8 以下がまだまだ多く、IE6 でそのシェアは10%近く.ブラウザシェアは国毎にばらつきがあり、お隣の中国・韓国では IE のシェアが多く、IE6 でも 20~30% になる.[[BR]]\r
-<br /></p><blockquote class="citation"><p>今なおブラウザシェア10.1%もあるIE6とどう向き合えばいいのか[[BR]]\r
-<br /><a href="http://weboook.blog22.fc2.com/blog-entry-248.html" class="external" rel="nofollow">http://weboook.blog22.fc2.com/blog-entry-248.html</a>\r
-</p></blockquote><p>javascript を切っているブラウザは 1% ほどらしい.[[BR]]\r
-<br /></p><blockquote class="citation"><p><a href="http://sourceforge.jp/projects/pettanr/wiki/JavaScript">JavaScript</a>をオフにしているブラウザは1%前後。米ヤフー調べ[[BR]]\r
-<br /><a href="http://www.publickey1.jp/blog/10/javascript1.html" class="external" rel="nofollow">http://www.publickey1.jp/blog/10/javascript1.html</a>\r
-</p></blockquote>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PngFix">\r
-    <title>PngFix</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PngFix</link>\r
-    <dc:identifier>PngFix</dc:identifier>\r
-    <dc:date>2011-12-29T16:31:59+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= Internet Exproler 6 以下での PNG 画像の表示について\r
-ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.[[BR]]\r
-このため ぺったん では、png 画像を非推奨としてきた.[[BR]]\r
-ぺったんRでも それを踏襲することは変わりない.[[BR]]\r
-しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバッ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Internet.20Exproler.206.20.E4.BB.A5.E4.B8.8B.E3.81.A7.E3.81.AE.20PNG.20.E7.94.BB.E5.83.8F.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">Internet Exproler 6 以下での PNG 画像の表示について</h1><p>ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.[[BR]]\r
-<br />このため ぺったん では、png 画像を非推奨としてきた.[[BR]]\r
-<br />ぺったんRでも それを踏襲することは変わりない.[[BR]]\r
-<br />しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバックエンドな png 表示サポートを実施する.[[BR]]\r
-<br />とはいえ、必要なプラグイン等がインストールされていない、機能が無効になっている場合、透過情報は正しく反映されない.[[BR]]\r
-<br /></p><h2 id="h2-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h2><h2 id="h2-VML">VML</h2><h2 id="h2-ActiveX.20Alpha.20Image.20Loader">ActiveX Alpha Image Loader</h2><h2 id="h2-Flash">Flash</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">\r
-    <title>ForWebmasters</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters</link>\r
-\r
-    <dc:identifier>ForWebmasters</dc:identifier>\r
-    <dc:date>2011-12-28T09:07:11+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 管理者向け\r
-\r
-== フキダシテンプレートのメンテナンス\r
- * フキダシテンプレートについて AboutSpeachBalloon\r
- * フキダシテンプレートの追加 HowToMakeSpeachBalloon\r
-\r
-== ライセンスのメンテナンス\r
- * ライセンスについて]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.AE.A1.E7.90.86.E8.80.85.E5.90.91.E3.81.91">管理者向け</h1><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">フキダシテンプレートのメンテナンス</h2><ul><li>フキダシテンプレートについて AboutSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a></li><li>フキダシテンプレートの追加 HowToMakeSpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a></li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">ライセンスのメンテナンス</h2><ul><li>ライセンスについて</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">\r
-    <title>AboutSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon</link>\r
-    <dc:identifier>AboutSpeachBalloon</dc:identifier>\r
-    <dc:date>2011-12-28T08:57:17+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= フキダシテンプレート\r
-フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-\r
-ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-\r
-しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能で]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-</p><p>ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-</p><p>しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能ですから、最小限の操作でフキダシを扱えなければ困ります。そこで、ぺったんはオーソドックスなフキダシをテンプレート化して用意しました。もちろんテンプレートは自由に追加できます。\r
-</p><h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E6.A7.8B.E6.88.90">フキダシテンプレートの構成</h1><p>フキダシテンプレートは次の三つの階層で構成されています。\r
-</p><ul><li>フキダシテンプレート SpeachBalloon\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloon">SpeachBalloon</a></li><li>枠テンプレート BalloonTemplate\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonTemplate">BalloonTemplate</a></li><li>テキストテンプレート SpeachTemplate\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplate">SpeachTemplate</a></li></ul><p>フキダシは枠とテキストから構成されます。枠テンプレートとテキストテンプレートがそれです。ただし、フキダシには大抵吹き出し口(ぺったんでは尻尾と言います)が付きますから、同じフキダシでもいくつかのバリエーションができます。それをグループ化するのがフキダシテンプレートです。\r
-</p><h2 id="h2-.E6.83.B3.E5.AE.9A.E3.81.99.E3.82.8B.E3.83.90.E3.83.AA.E3.82.A8.E3.83.BC.E3.82.B7.E3.83.A7.E3.83.B3">想定するバリエーション</h2><p>ぺったんでは次の二つのバリエーションを想定しています。\r
-</p><ul><li>尻尾の向き\r
-</li><li>枠のサイズ\r
-</li></ul><p>尻尾の向きはフキダシの使われ方によって変わりますが、上下左右や角の四隅などに付くことが多いでしょうか。このバリエーションが多いほど融通が利くフキダシになります。\r
-</p><p>ぺったんはコマに貼ったフキダシを自由にサイズ調整できますが、フキダシを極端に拡大あるいは縮小すると、枠の画像によっては線が太ってしまったり、かすれてしまうことがあります。枠の画像には適正なサイズが要求されますので、より良いテンプレートはいくつかのサイズのバリエーションを用意する必要があります。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">\r
-    <title>JsonApi</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JsonApi</link>\r
-    <dc:identifier>JsonApi</dc:identifier>\r
-    <dc:date>2011-12-26T19:13:24+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= JsonAPI\r
-ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-\r
-JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-\r
-APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,G]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-JsonAPI">JsonAPI</h1><p>ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-</p><p>JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-</p><p>APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,GET,PUT,DELETEに対応しているが、普通のブラウザからはGETしかできないので、手っ取り早くJsonAPIで遊ぶならcurlをインストールすると良い。\r
-</p><p>なお、railsではjsonでのやり取りを次のように規定している。\r
-</p><ul><li>URLの末尾を拡張子のように.jsonする\r
-</li><li>リクエストヘッダはContent-Type: application/jsonとする\r
-</li></ul><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.8F.96.E5.BE.97">jsonデータの取得</h2><p>例えば、ID:2のコマPanelのデータをcurlで取得するには次のようにする。\r
-</p><pre>curl http://hostname/panels/2.json -X GET -H &quot;Content-Type: application/json&quot;\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.8A.95.E7.A8.BF">jsonでの投稿</h2><p>例えば、コミックをcurlで作成するには次のようにする。このとき、作成するためのjsonデータはcomic_create.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X POST -H &quot;Content-Type: application/json&quot; -d @comic_create.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.9B.B4.E6.96.B0">jsonでの更新</h2><p>例えば、コミックをcurlで更新するには次のようにする。このとき、更新するためのjsonデータはcomic_update.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X PUT -H &quot;Content-Type: application/json&quot; -d @comic_update.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E5.89.8A.E9.99.A4">jsonでの削除</h2><p>例えば、コミックをcurlで削除するには次のようにする。このとき、削除するためのjsonデータはcomic_delete.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X DELETE -H &quot;Content-Type: application/json&quot; -d @comic_delete.json\r
-</pre><p>※普通に削除するだけならDELETEメソッドだけで削除できる。jsonデータcomic_delete.jsonは必要ないはずだが、誰でも削除できるのはおかしな話なので、大抵の場合は認証がいるだろう。認証に必要なauth_tokenを渡すのだが、auth_tokenについては後述する。\r
-</p><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">jsonデータの作り方</h2><p>jsonデータがどんなものかはググッてもらうとして、rails風なところを…\r
-</p><p>コミック作成に使ったcomic_create.jsonを例とすると次のようになる。\r
-<pre>{\r
-  &quot;comic&quot;: {\r
-    &quot;title&quot;: &quot;コミック作るテスト&quot;,\r
-    &quot;default_width&quot;: 400,\r
-    &quot;default_height&quot;: 200\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre>comicはコミックのmodel、titleなどはmodelのカラム。モデルの下に必要なカラムをキーにして値を記述する。\r
-</p><p>auth_tokenは認証が必要な操作をする場合に記述する。\r
-</p><h3 id="h3-auth_token">auth_token</h3><p>認証が必要な操作をする場合にはauth_tokenを用意する。auth_tokenはログイン後にプロフィールページを開くと書いてある。今のところは。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">ネストしたデータの作り方</h3><p>コマの投稿など、複数のモデルを一つのトランザクションで更新するような操作はjsonデータも複数のモデルについて記述しなければならない。\r
-</p><p>ネストされている子のデータはモデル名+_attributesをキーとしたハッシュ型の値をペアにして記述する。例えば、コマ絵のモデルpanel_picturesはpanel_pictures_attributesとなる。値側は複数のレコードを含むことが想定されるので、これもハッシュ型とする。こちらのキーは一意であれば何でもよく、値がレコードのデータである。文章じゃよくわからんので、コマ絵panel_pictures一つを含んだコマpanelを作成する場合の実際のデータを示す。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>コマ絵が二枚だと、こんな感じ。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      },\r
-      &quot;new2&quot;: {\r
-        &quot;width&quot;: 50,\r
-        &quot;height&quot;: 75,\r
-        &quot;resource_picture_id&quot;: 1,\r
-        &quot;top_offset&quot;: 30,\r
-        &quot;left_offset&quot;: 14,\r
-        &quot;zindex&quot;: 2,\r
-        &quot;v&quot;: 0,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><p>キーの&quot;new1&quot;と&quot;new2&quot;は適当な命名なんであるが、こんな要領で列挙していけばまとめて作成できる。\r
-</p><p>では、次にコマ絵だけでなくフキダシとセリフも含むデータを作成してみるが、その前に各モデルの関係を整理しておく。\r
-<pre>panel\r
-  panel_pictures\r
-  balloons\r
-    speaches\r
-</pre>だったね。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 3,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    },\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;newf1&quot;: {\r
-        &quot;balloon_template_id&quot;: 1,\r
-        &quot;resource_picture_id&quot;: 2,\r
-        &quot;tail&quot;: 1,\r
-        &quot;border&quot;: 1,\r
-        &quot;zindex&quot;: 5,\r
-        &quot;width&quot;: 81,\r
-        &quot;height&quot;: 63,\r
-        &quot;top_offset&quot;: 120,\r
-        &quot;left_offset&quot;: 35,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;newf1s1&quot;: {\r
-            &quot;content&quot;: &quot;test&quot;,\r
-            &quot;width&quot;: 61,\r
-            &quot;height&quot;: 43,\r
-            &quot;top_offset&quot;: 10,\r
-            &quot;left_offset&quot;: 10\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E6.9B.B4.E6.96.B0">ネストしたデータの更新</h3><p>あるコマのセリフを変更したいとする。セリフはspeachなのでspeaches経由で更新したいところだが、ぺったんの仕様はコマ全体で更新することになっているので、speachesのAPIは用意されていない。コマの変更はpanel経由で行う。このとき、jsonデータでは、どのように変更対象のセリフを指示するのだろうか。\r
-</p><p>結論としてはidをデータに含めて指定する。例えば、セリフのidが3のときは次のようになる。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;s3&quot;: {\r
-            &quot;id&quot;: 3,\r
-            &quot;content&quot;: &quot;modify&quot;\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>idが指定されていないと新規追加となってしまう。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.89.8A.E9.99.A4">ネストしたデータの削除</h3><p>削除する場合、更新のときと同じようにidを指定しつつ_destroyにフラグを立てる。例えば、idが2のフキダシをコマから削除する場合、次のようにする。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;_destroy&quot;: 1\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AE.E6.8A.95.E7.A8.BF">画像の投稿</h2><p>auth_tokenを含みながらのファイル送信がよくわからん。いろんなパターンで試してみたが素直にはいかなかった。苦肉の策が画像データを一度Base64でエンコードしたものをテキストとして送信すること。次の例は当然エンコードテキストは省略されている。\r
-<pre>{\r
-  &quot;original_picture&quot;: {\r
-    &quot;file&quot;: \r
-&quot;iVBORw0KGgoAAAANSUhEUgAAAWIAAAF7CAYAAADohYEpAAAcW0lEQVR4nO3d\r
-  :\r
-  :\r
-ghgAlP0/Bxl7hN5Zu0EAAAAASUVORK5CYII=\r
-&quot;\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">\r
-    <title>AboutLisence</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutLisence</link>\r
-    <dc:identifier>AboutLisence</dc:identifier>\r
-\r
-    <dc:date>2011-12-25T12:47:25+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ライセンスについて\r
-※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-\r
-== 選べるライセンス\r
-ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-\r
-絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-\r
-== 用意されたライセンス\r
- * Public Domain\r
-   * ライ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">ライセンスについて</h1><p>※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-</p><h2 id="h2-.E9.81.B8.E3.81.B9.E3.82.8B.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">選べるライセンス</h2><p>ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-</p><p>絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-</p><h2 id="h2-.E7.94.A8.E6.84.8F.E3.81.95.E3.82.8C.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">用意されたライセンス</h2><ul><li>Public Domain\r
-<ul><li>ライセンス表示 http://ja.wiki<a href="http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3" class="external" rel="nofollow">http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3</a></li></ul></li><li>Creative Commons 3.0(by)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_sa)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-sa/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nd)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nd/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc_sa)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode</a></li></ul></li><li>Creative Commons 3.0(by_nc_nd)\r
-<ul><li>ライセンス表示 http://creativ<a href="http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode</a></li></ul></li><li>Unknown\r
-<ul><li>著作権がはっきりしないもの\r
-</li></ul></li></ul><h2 id="h2-.E5.90.88.E3.81.A3.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E3.81.AA.E3.81.84">合ったライセンスがない</h2><p>自前の作品に特殊なライセンスを付与したいと考えるケースもあるでしょう。そういった場合、絵師がライセンスを作成することができます。このような特殊なライセンスをぺったんではオリジナルライセンスと言います。それに対して、ぺったんにあらかじめ用意されたライセンスをコモンライセンスと言います。\r
-</p><p>特に区別したい場合は、コモンライセンス・オリジナルライセンスと言いますが、ただライセンスと言った場合は、両者を合わせたものとなります。\r
-</p><h2 id="h2-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">コモンライセンス</h2><p>コモンライセンスをメンテナンスできるのは管理者だけです。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">オリジナルライセンス</h2><p>絵師はオリジナルライセンスを作成できます。また、自分が作成したオリジナルライセンスを更新できます。\r
-</p><h3 id="h3-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.B8.E3.81.AE.E6.98.87.E6.A0.BC">コモンライセンスへの昇格</h3><p>何かと信頼の薄いオリジナルライセンスですが、ある程度の評価が得られ、ぺったん管理者が有用性を認めればコモンライセンスへ昇格することもあります。\r
-</p><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E5.89.8A.E9.99.A4.E3.81.95.E3.82.8C.E3.82.8B.E3.81.A8">ライセンスが削除されると</h2><p>ライセンスを削除してしまうと、そのライセンスを適用した素材はすべてライセンスなしになってしまいます。それを避けるために一枚でも適用されているライセンスは削除できません。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.A7.E6.98.8E.E7.A4.BA.E3.81.A7.E3.81.8D.E3.82.8B.E3.81.93.E3.81.A8">オリジナルライセンスで明示できること</h2><ul><li>cc_by\r
-<ul><li>作者の表示\r
-</li></ul></li><li>cc_sa\r
-</li><li>cc_nd\r
-</li><li>cc_nc\r
-</li><li>no_resize\r
-<ul><li>サイズ変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてはならない\r
-</li></ul></li><li>no_flip\r
-<ul><li>反転の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上で垂直反転水平反転してはならない\r
-</li></ul></li><li>keep_aspect_ratio\r
-<ul><li>縦横比変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてもよいが縦横比を変えてはならない\r
-</li></ul></li></ul><p>クリエイティブコモンズの属性はすべて用意しましたが、ぺったん上ではあまり効果を発揮できません。というのも、ぺったんには画像を改変する機能が備わっていませんから、改変しようがないし、投稿された素材が改変されたものであるかを判別する手立てがないのです。非営利についても似たようなもので、web上の配布に営利はありません。もちろんアフィリエイトも禁止されているわけではありません。\r
-</p><p>作者の表示については必ず同一ページ内に表示します。ただし、ぺったんRはオープンソースライセンスですから、ソースコードが改変された場合は、その限りではありません。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">\r
-    <title>CommonLisencesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController</link>\r
-    <dc:identifier>CommonLisencesController</dc:identifier>\r
-    <dc:date>2011-12-24T11:03:09+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= CommonLisencesController \r
-管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-CommonLisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a></h1><p>管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">\r
-    <title>LisencesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LisencesController</link>\r
-\r
-    <dc:identifier>LisencesController</dc:identifier>\r
-    <dc:date>2011-12-24T10:46:17+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= LisencesController \r
-コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべてCommonLisencesControllerとOriginalLisencesController側にある。\r
-\r
-常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離してお]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-LisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a></h1><p>コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべてCommonLisencesControllerとOriginalLisencesController側にある。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a></p><p>常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離しておいた。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">\r
-    <title>WhatsPettan</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan</link>\r
-    <dc:identifier>WhatsPettan</dc:identifier>\r
-    <dc:date>2011-12-24T09:18:24+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= ぺったんとは\r
-以下からは一般向け文書。ヘルプとかマニュアルです。\r
-== 絵師\r
- * GuidanceForArtist\r
-== 作家\r
- * GuidanceForAuthor\r
-== ライセンス\r
- * AboutLisence\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93.E3.81.A8.E3.81.AF">ぺったんとは</h1><p>以下からは一般向け文書。ヘルプとかマニュアルです。\r
-</p><h2 id="h2-.E7.B5.B5.E5.B8.AB">絵師</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6">作家</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">GuidanceForAuthor</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">ライセンス</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">AboutLisence</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">\r
-    <title>GuidanceForArtist</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist</link>\r
-    <dc:identifier>GuidanceForArtist</dc:identifier>\r
-    <dc:date>2011-12-23T17:08:22+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 絵師さん向け文書?\r
-== 絵師の役割\r
-== 絵師になるには\r
-== 絵のライセンス\r
-\r
-== 絵の活用\r
-ぺったんは投稿された画像を次のように扱います\r
- * 画像をサーバ内のディスクスペースに保存します\r
-   * この画像を原画と言います\r
- * 原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-   * これらの画像を素材と言います\r
-   * 原画]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E7.B5.B5.E5.B8.AB.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">絵師さん向け文書?</h1><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AE.E5.BD.B9.E5.89.B2">絵師の役割</h2><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AB.E3.81.AA.E3.82.8B.E3.81.AB.E3.81.AF">絵師になるには</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">絵のライセンス</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E6.B4.BB.E7.94.A8">絵の活用</h2><p>ぺったんは投稿された画像を次のように扱います\r
-</p><ul><li>画像をサーバ内のディスクスペースに保存します\r
-<ul><li>この画像を原画と言います\r
-</li></ul></li><li>原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-<ul><li>これらの画像を素材と言います\r
-</li><li>原画が反転禁止のライセンスを採用しているときは反転画像を保存しません\r
-</li></ul></li><li>素材は作家がコマ上に添付されます\r
-<ul><li>利用するコマエディタの\r
-</li></ul></li></ul><p>コマ上での扱い\r
-</p><ul><li><ul><li>原画が拡縮禁止のライセンスを採用しているときは拡縮画像を保存しません\r
-<ul><li>ただし、サムネイル画像のサイズに収まらない画像については縮小して表示します\r
-</li></ul></li></ul></li></ul><p>素材→コマ絵\r
-</p><h2 id="h2-.E9.85.8D.E5.B8.83.E3.81.AE.E5.81.9C.E6.AD.A2">配布の停止</h2><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.B5.E3.83.BC.E3.83.90">素材サーバ</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">\r
-    <title>GuidanceForAuthor</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor</link>\r
-    <dc:identifier>GuidanceForAuthor</dc:identifier>\r
-\r
-    <dc:date>2011-12-23T16:48:50+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 作家さん向け文書?\r
-== 作家とは\r
-ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-\r
-作家となるには、サイトへの登録が必要です。\r
-\r
-== 作家ができる表現\r
- * コマを作る\r
- * コミックを作る\r
- * コミックの配布範囲を決める\r
-=== コマを作る\r
-=== コミックを作る\r
-=== コミックの配布範囲を決める\r
-\r
-=]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E4.BD.9C.E5.AE.B6.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">作家さん向け文書?</h1><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.A8.E3.81.AF">作家とは</h2><p>ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-</p><p>作家となるには、サイトへの登録が必要です。\r
-</p><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.8C.E3.81.A7.E3.81.8D.E3.82.8B.E8.A1.A8.E7.8F.BE">作家ができる表現</h2><ul><li>コマを作る\r
-</li><li>コミックを作る\r
-</li><li>コミックの配布範囲を決める\r
-</li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.82.92.E4.BD.9C.E3.82.8B">コマを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.82.92.E4.BD.9C.E3.82.8B">コミックを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E9.85.8D.E5.B8.83.E7.AF.84.E5.9B.B2.E3.82.92.E6.B1.BA.E3.82.81.E3.82.8B">コミックの配布範囲を決める</h3><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.92.E7.94.A8.E6.84.8F.E3.81.99.E3.82.8B">素材を用意する</h2><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E5.89.8D.E3.81.AB.E7.B5.B5.E5.B8.AB.E7.99.BB.E9.8C.B2">素材の前に絵師登録</h3><p>作家は素材を投稿することができません。素材は絵師が投稿することになっています。なぜなら、ぺったんはあなたの素材を容易に他のぺったんサイトに提供できるようになっているからです。少々面倒な構成にはなっていますが、心配には及びません。絵師の登録はワンクリック程度で完了します。\r
-</p><p>登録に必要な情報は下記の項目です。\r
-</p><ul><li>ペンネーム デフォルトで作家名が設定されます\r
-</li><li>デフォルトのライセンス\r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E6.8A.95.E7.A8.BF">素材の投稿</h3><p>絵師登録が完了すると、素材エクスプローラーに投稿フォームが現れます。\r
-</p><p>素材を投稿するにあたっての注意事項はGuidanceForArtistをご覧下さい。\r
-<a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">\r
-    <title>TranslationComicElements</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements</link>\r
-    <dc:identifier>TranslationComicElements</dc:identifier>\r
-    <dc:date>2011-12-23T11:41:06+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 資料・マンガ要素の日英対訳\r
- * コーディング中の命名や、国際化対応のための資料にする.\r
-\r
-== マンガの部品名の対訳\r
- * コママンガ(jp) - comic strip(en)\r
- * コマ(jp) - panel(en)\r
- * 枠線(jp) -(en)\r
- * 吹き出し(jp) - speach balloon, speach bubble(en)\r
- * ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E8.B3.87.E6.96.99.E3.83.BB.E3.83.9E.E3.83.B3.E3.82.AC.E8.A6.81.E7.B4.A0.E3.81.AE.E6.97.A5.E8.8B.B1.E5.AF.BE.E8.A8.B3">資料・マンガ要素の日英対訳</h1><ul><li>コーディング中の命名や、国際化対応のための資料にする.\r
-</li></ul><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.83.A8.E5.93.81.E5.90.8D.E3.81.AE.E5.AF.BE.E8.A8.B3">マンガの部品名の対訳</h2><ul><li>コママンガ(jp) - comic strip(en)\r
-</li><li>コマ(jp) - panel(en)\r
-</li><li>枠線(jp) -(en)\r
-</li><li>吹き出し(jp) - speach balloon, speach bubble(en)\r
-</li><li></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">\r
-    <title>PictureIo</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PictureIo</link>\r
-\r
-    <dc:identifier>PictureIo</dc:identifier>\r
-    <dc:date>2011-12-23T11:28:56+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= PictureIO\r
-== 画像はPictureIOが出し入れする\r
-投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-\r
-差し当たってローカルファイル用のLocalPictureIOとAmazonAW]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-PictureIO">PictureIO</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AFPictureIO.E3.81.8C.E5.87.BA.E3.81.97.E5.85.A5.E3.82.8C.E3.81.99.E3.82.8B">画像はPictureIOが出し入れする</h2><p>投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-</p><p>差し当たってローカルファイル用のLocalPictureIOとAmazonAWS用のS3Pict<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>意した。\r
-</p><p>デフォルトでは、開発・テスト環境ではLocalPictureIOを使い、本番ではS3PictureIOを使っ<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>環境に合わせて設定を変える必要がある。設定は下記のファイルを書き換える。\r
-<pre>config/environments/development.rb \r
-config/environments/production.rb\r
-</pre></p><h2 id="h2-LocalPictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IO</h2><p><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IOを使う場合は、config/environments/development.rb で、以下のように書く。\r
-<pre>require 'local_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::LocalPicture.new '/pettanr/original/'\r
-  config.resource_picture_io = PictureIO::LocalPicture.new  '/pettanr/resource/'\r
-end\r
-</pre></p><p>これで原画は/pettanr/original/に保管され、素材は/pettanr/resource/に保管される。\r
-</p><p>※パス処理がショボいのでスラッシュの有無に大きな違いがある。あと、ディレクトリ掘ってないとコケる。\r
-</p><h2 id="h2-S3PictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IO</h2><p>AmazonAWSを使うなら、当然S3が使えるよう、準備しておく。Amazonからキーがもらえるので設定する。\r
-</p><p>まず、config/aws.yaml.orgをコピーする。\r
-<pre>cp config/aws.yaml.org config/aws.yaml\r
-</pre>コピーしたaws.yamlを編集。\r
-<pre>access_key_id: XXXXXXXXXXXXXXXXXXXX\r
-secret_access_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r
-</pre></p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IOを使う場合は、config/environments/production.rbで、以下のように書く。\r
-<pre>require 'aws/s3'\r
-require 'yaml'\r
-\r
-y = YAML.load(open(Rails.root + 'config/aws.yaml').read)\r
-AWS::S3::Base.establish_connection!(\r
-  :access_key_id =&gt; y[&quot;access_key_id&quot;], \r
-  :secret_access_key =&gt; y[&quot;secret_access_key&quot;]\r
-)\r
-require 's3_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::S3Picture.new 'pettanr-original'\r
-  config.resource_picture_io = PictureIO::S3Picture.new 'pettanr-stable'\r
-end\r
-</pre>これで原画はpettanr-original/に保管され、素材はpettanr-stable/に保管される。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">\r
-    <title>RmagickAndDmagick</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick</link>\r
-    <dc:identifier>RmagickAndDmagick</dc:identifier>\r
-    <dc:date>2011-12-23T10:53:11+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= RMagickとDMagick\r
-== 画像処理はRMagick\r
-絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-\r
-== RMagickは案外地獄\r
-Windows環境では。\r
-\r
-コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-\r
-= 仕方ないからDMagick\r
-RMagickなしでは丸で動かないので]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-RMagick.E3.81.A8DMagick">RMagickとDMagick</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E5.87.A6.E7.90.86.E3.81.AFRMagick">画像処理はRMagick</h2><p>絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-</p><h2 id="h2-RMagick.E3.81.AF.E6.A1.88.E5.A4.96.E5.9C.B0.E7.8D.84">RMagickは案外地獄</h2><p>Windows環境では。\r
-</p><p>コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-</p><h1 id="h1-.E4.BB.95.E6.96.B9.E3.81.AA.E3.81.84.E3.81.8B.E3.82.89DMagick">仕方ないからDMagick</h1><p>RMagickなしでは丸で動かないので、あたかもRMagickがあるかのように振る舞う空箱を用意した。それがDMagick。\r
-</p><p>デフォルトでは開発環境でDMagickを使うようにしてあるので、RMagickが使えるなら、config/environments/development.rbを書き換える。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-    </rdf:RDF>\r
diff --git a/0.4.x/wiki/wiki_120119.xml b/0.4.x/wiki/wiki_120119.xml
deleted file mode 100644 (file)
index 5039d77..0000000
+++ /dev/null
@@ -1,2689 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>\r
-<?xml-stylesheet type="text/xsl" href="wiki.xsl"?>\r
-\r
-<rdf:RDF\r
-  xmlns="http://purl.org/rss/1.0/"\r
-  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"\r
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"\r
-  xmlns:dc="http://purl.org/dc/elements/1.1/"\r
- >\r
-\r
-  <channel rdf:about="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">\r
-    <title>ぺったんR Wiki</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</link>\r
-    <description>\r
-      ぺったんR プロジェクト Wiki ページ一覧    </description>\r
-        <dc:date>2012-01-18T17:02:43+09:00</dc:date>\r
-\r
-        <items>\r
-      <rdf:Seq>\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ComicsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ComicModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/StatusCode" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/FrontPage" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/SystemController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutModels" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AppendixList" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ClientSide" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PngFix" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/JsonApi" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/LisencesController" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan" />\r
-\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/PictureIo" />\r
-                <rdf:li rdf:resource="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick" />\r
-              </rdf:Seq>\r
-    </items>\r
-  </channel>\r
-\r
-      <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">\r
-    <title>PanelModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelModel</link>\r
-    <dc:identifier>PanelModel</dc:identifier>\r
-    <dc:date>2012-01-18T17:02:43+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ panel\r
-||name||和名||type||default||null||limit||note||\r
-||comic_id||所属コミック||integer|| ||FALSE|| ||||\r
-||resource_picture_id||背景画像 素材id||integer|| || || ||||\r
-||width||コマの幅||integer||200||FALSE|| |]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.20panel">コマ panel</h1><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>comic_id</td><td>所属コミック</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>背景画像 素材id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さ</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>border</td><td>コマの枠線の太さ</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>t</td><td>コマ番号</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>author_id</td><td>コマの投稿者 作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><h2 id="h2-.E6.A4.9C.E8.A8.BC">検証</h2><h3 id="h3-comic_id">comic_id</h3><ul><li>必須項目\r
-</li><li>idのコミックが存在していること。\r
-</li></ul><h3 id="h3-resource_picture_id">resource_picture_id</h3><ul><li>idの素材が存在していること。\r
-</li></ul><h3 id="h3-width">width</h3><ul><li>正の整数であること。\r
-</li><li>省略時はコミックのwidth\r
-</li></ul><h3 id="h3-height">height</h3><ul><li>正の整数であること。\r
-</li><li>省略時はコミックのheight\r
-</li></ul><h3 id="h3-border">border</h3><ul><li>0以上の整数であること。\r
-</li><li>省略時は0。\r
-</li></ul><h3 id="h3-x">x</h3><ul><li>正の整数であること。\r
-</li></ul><h3 id="h3-y">y</h3><ul><li>正の整数であること。\r
-</li></ul><h3 id="h3-z">z</h3><ul><li>正の整数であること。\r
-</li></ul><h3 id="h3-t">t</h3><ul><li>必須項目\r
-</li><li>0以上の整数であること。\r
-</li><li>重複の禁止。\r
-<ul><li>comic_idとtでユニークであること。\r
-</li></ul></li></ul><h3 id="h3-author_id">author_id</h3><ul><li>必須項目\r
-</li><li>設定しないこと。\r
-<ul><li>サーバがログイン中の作家idを補充する。\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">\r
-    <title>PanelsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelsController</link>\r
-\r
-    <dc:identifier>PanelsController</dc:identifier>\r
-    <dc:date>2012-01-18T08:27:53+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ\r
-ストーリー上のワンシーンを漫画状に表示するための機能。\r
-== index\r
-一覧形式\r
-=== url\r
- * http://localhost:3000/panels\r
- * http://localhost:3000/panels.json\r
-=== リクエスト\r
-||パラメータ||なし||\r
-||権限||作家||\r
-||html||○||\r
-||json||○||\r
-||jso]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E">コマ</h1><p>ストーリー上のワンシーンを漫画状に表示するための機能。\r
-</p><h2 id="h2-index">index</h2><p>一覧形式\r
-</p><h3 id="h3-url">url</h3><ul><li><a href="http://localhost:3000/panels" class="external" rel="nofollow">http://localhost:3000/panels</a>\r
-</li><li><a href="http://localhost:3000/panels.json" class="external" rel="nofollow">http://localhost:3000/panels.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC">解説</h3><p>新着コマ20件を一覧形式で表示する。ただし、作者によって非公開にされたコミックのコマは含まない。\r
-</p><p>新着コマの情報はトップページに表示されるが、量が少ないため「もっと見る」が用意されている。それがクリックされたときに遷るページがここ。\r
-</p><ul><li>comicのvisible=1な行をpanels.updated_at降順で20件分取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E5.95.8F.E9.A1.8C.E7.82.B9">問題点</h3><p>コマはサイズがバラバラなので、リストアップには向いていない。コマそのものを表示するわけにはいかないので、事実上使いどころのない機能と思われる。改善案を待つ。\r
-</p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB">正常系</h4><ul><li>panels\r
-<ul><li>comic\r
-</li><li>author\r
-</li></ul></li></ul><hr /><h2 id="h2-show">show</h2><p>コマ表示。ぺったんの超本丸。\r
-</p><h3 id="h3-url-2">url</h3><ul><li><a href="http://localhost:3000/panels/1" class="external" rel="nofollow">http://localhost:3000/panels/1</a>\r
-</li><li><a href="http://localhost:3000/panels/1.json" class="external" rel="nofollow">http://localhost:3000/panels/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-2">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-2">解説</h3><p>コマを表示する、あるいはコマを表示するためのデータを返す機能。\r
-</p><ul><li>要求されたidのpanelを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.81.AE.E6.95.B4.E5.BD.A2">コマの整形</h3><p>コマ絵とフキダシは時系列tでソートして返さなければならない。表示的にはすべてが時間で上から下に流れるのがぺったんRの仕様である。しかし、sqlでは二つのテーブルを混ぜてソートはできないので時系列順に配置しなおして(配列のキーをtにして)戻さなければならない。balloons配下のspeachesも同様にtでソートしておく。\r
-<pre>panels:{\r
-  1: balloons: {...},\r
-  2: panel_pictures: {...},\r
-  3: balloons: {speaches: {1: {...}, 2:{...}}},\r
-  4: panel_pictures: {...},\r
-}\r
-</pre></p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-2">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-2">正常系</h4><ul><li>panels\r
-<ul><li>panel_pictures\r
-<ul><li>resource_picture\r
-<ul><li>artist\r
-</li><li>lisence\r
-</li></ul></li></ul></li><li>balloons\r
-<ul><li>speaches\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-create">create</h2><p>作成\r
-</p><h3 id="h3-url-3">url</h3><ul><li><a href="http://localhost:3000/panels" class="external" rel="nofollow">http://localhost:3000/panels</a>\r
-</li><li><a href="http://localhost:3000/panels.json" class="external" rel="nofollow">http://localhost:3000/panels.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-3">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-3">解説</h3><p>コマを新規作成するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>パラメータからpanelデータを起こす。\r
-</li><li>起こしたデータの足りない部分を補正する。\r
-<ul><li>comic.author_idをログイン中の作家idで補足する。\r
-</li></ul></li><li>panelデータを検証し、dbに一つのトランザクションで保存する。\r
-<ul><li>コマの移動チェック。\r
-<ul><li>コマ順panel.tが変更されていればコマ移動。\r
-</li><li>パラメータにpanel.tが設定されていて、起こしたpanel.tと違うことをいう。\r
-</li><li>コマ移動処理は<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>を参照する。\r
-</li></ul></li><li>\r
-</li></ul></li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-3">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-3">正常系</h4><ul><li>作成されたパネルデータを返す。\r
-<ul><li>htmlなら、作成されたパネルが所属するコミックの閲覧ページに遷移する。\r
-<ul><li>最新のコマ10件を指定する。\r
-</li></ul></li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックで一般投稿editableが不可だった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden \r
-</li></ul></li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、コミック閲覧ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-update">update</h2><p>更新\r
-</p><h3 id="h3-url-4">url</h3><ul><li><a href="http://localhost:3000/panels/1" class="external" rel="nofollow">http://localhost:3000/panels/1</a>\r
-</li><li><a href="http://localhost:3000/panels/1.json" class="external" rel="nofollow">http://localhost:3000/panels/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-4">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id+json形式で</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>put</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-4">解説</h3><p>コマを修正するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>パラメータからpanelデータを起こす。\r
-</li><li>起こしたデータの足りない部分を補正する。\r
-<ul><li>comic.author_idをログイン中の作家idで補足する。\r
-</li></ul></li><li>panelデータを検証し、dbに一つのトランザクションで保存する。\r
-<ul><li>コマの移動チェック。\r
-<ul><li>コマ順panel.tが変更されていればコマ移動。\r
-</li><li>パラメータにpanel.tが設定されていて、起こしたpanel.tと違うことをいう。\r
-</li><li>コマ移動処理は<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>を参照する。\r
-</li></ul></li><li>\r
-</li></ul></li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-2">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-4">正常系</h4><ul><li>作成されたパネルデータを返す。\r
-<ul><li>htmlなら、作成されたパネルが所属するコミックの閲覧ページに遷移する。\r
-<ul><li>最新のコマ10件を指定する。\r
-</li></ul></li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-2">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li><li>他人のコマだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden \r
-</li></ul></li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、コミック閲覧ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-destroy">destroy</h2><p>削除\r
-</p><h3 id="h3-url-5">url</h3><ul><li><a href="http://localhost:3000/panels/1" class="external" rel="nofollow">http://localhost:3000/panels/1</a>\r
-</li><li><a href="http://localhost:3000/panels/1.json" class="external" rel="nofollow">http://localhost:3000/panels/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-5">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>delete</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-5">解説</h3><p>指定されたidのコマを削除する。コマだけでなく、関連するコマ絵、フキダシ、セリフも同時に削除される。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコマを取得する。\r
-</li><li>そのコマを一つのトランザクションで削除する。\r
-<ul><li>同時に関連するコマ絵、フキダシ、セリフも削除する。\r
-</li><li>後ろのコマを前に詰める。\r
-<ul><li>tが後ろの行すべてをt-1する。\r
-</li></ul></li></ul></li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-3">検証</h3><ul><li>なし\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-5">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-5">正常系</h4><ul><li>値は返さない。\r
-<ul><li>htmlなら、コマが所属するコミックの閲覧ページに遷移する。\r
-</li><li>jsonならステータスコード200 :okを返す。\r
-</li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-3">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-</li></ul></li><li>他人のコマだった。\r
-<ul><li>htmlなら、コマ閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-list">list</h2><p>管理者のための閲覧リスト。\r
-</p><hr /><h2 id="h2-browse">browse</h2><p>管理者のための詳細閲覧。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ComicsController">\r
-    <title>ComicsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ComicsController</link>\r
-    <dc:identifier>ComicsController</dc:identifier>\r
-    <dc:date>2012-01-17T19:40:41+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= コミック\r
-ストーリー性を持ったコマの集合体に名前をつけるためのデータ。表紙のようなもの。\r
-\r
-== top\r
-総合トップページ。\r
-=== url\r
- * http://localhost:3000/\r
-=== リクエスト\r
-||パラメータ||なし||\r
-||権限||作家||\r
-||html||○||\r
-||json||&times;||\r
-||jsonp||&times;||\r
-||me]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF">コミック</h1><p>ストーリー性を持ったコマの集合体に名前をつけるためのデータ。表紙のようなもの。\r
-</p><h2 id="h2-top">top</h2><p>総合トップページ。\r
-</p><h3 id="h3-url">url</h3><ul><li><a href="http://localhost:3000/" class="external" rel="nofollow">http://localhost:3000/</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>×</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC">解説</h3><p>ぺったんRのロゴがクリックされたときに開くページ。コミュニティ関連の入り口となる。コミックとは関係ないが、他に行き場がない。\r
-</p><p>各コンテンツの最新情報が表示される。雑多な情報を扱うのでjsonには対応しない。\r
-</p><hr /><h2 id="h2-index">index</h2><p>一覧形式\r
-</p><h3 id="h3-url-2">url</h3><ul><li><a href="http://localhost:3000/comics" class="external" rel="nofollow">http://localhost:3000/comics</a>\r
-</li><li><a href="http://localhost:3000/comics.json" class="external" rel="nofollow">http://localhost:3000/comics.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-2">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-2">解説</h3><p>新着コミック20件を一覧形式で表示する。ただし、作者によって非公開にされたコミックは含まない。\r
-</p><ul><li>comicのvisible=1な行をposted_at降順で20件分取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li></ul></li></ul><p>jsonでは、comicにauthorを含んだデータを返す。\r
-</p><hr /><h2 id="h2-show">show</h2><p>単票形式\r
-</p><h3 id="h3-url-3">url</h3><ul><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-3">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-3">解説</h3><p>クライアントがコミックの情報を得るために使う機能。\r
-ユーザがコミック情報だけをみても、うれしいことはないので、jsonのみとなる。\r
-</p><ul><li>要求されたidのcomicを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>json形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-2">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-2">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li></ul></li></ul><p>jsonでは、comicにauthorを含んだデータを返す。\r
-</p><hr /><h2 id="h2-play">play</h2><p>コミック閲覧。コミックを読むための機能。\r
-</p><h3 id="h3-url-4">url</h3><ul><li><a href="http://localhost:3000/comics/play/1" class="external" rel="nofollow">http://localhost:3000/comics/play/1</a>\r
-</li><li><a href="http://localhost:3000/comics/play/1.json" class="external" rel="nofollow">http://localhost:3000/comics/play/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-4">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id,offset,count</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>get</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF">パラメータ</h3><h4 id="h4-offset">offset</h4><ul><li>指定した数のコマだけ飛ばして表示を始める。\r
-<ul><li>offset=3のときはコミック開始から数えて4コマ目から表示される。\r
-</li></ul></li><li>省略時は0。\r
-</li><li>投稿されたコマ数以上の値が指定されたときは、最後のコマだけが表示される。\r
-</li><li>負の値が指定されたときは、最後のコマから数えてコマを飛ばして表示する。\r
-<ul><li>-4のときは、最後から4つのコマを表示する。\r
-</li></ul></li></ul><h4 id="h4-count">count</h4><ul><li>指定した数だけコマを表示する。\r
-</li><li>省略時は30。\r
-</li><li>最大値は200で、それ以上多い値が指定されたときは、最大値に切り詰められる。\r
-</li><li>負の値が指定されたときは、デフォルト値となる。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-4">解説</h3><p>コミックにつながっているコマを指定されたオフセット位置からコマ数だけ時系列t順に表示する。コマ上の部品はまとめて取得する。\r
-</p><ul><li>要求されたidのcomicと関連データを取得する。\r
-</li><li>取得したデータを返す。\r
-<ul><li>htmlなら整形してページを返す。\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.81.AE.E6.95.B4.E5.BD.A2">コマの整形</h3><p>コマ上の部品であるコマ絵とフキダシは時系列tでソートして返さなければならない。表示的にはすべてが時間で上から下に流れるのがぺったんRの仕様である。しかし、sqlでは二つのテーブルを混ぜてソートはできないので時系列順に配置しなおして(配列のキーをtにして)戻さなければならない。balloons配下のspeachesも同様にtでソートしておく。\r
-<pre>panels:{\r
-  1: balloons: {...},\r
-  2: panel_pictures: {...},\r
-  3: balloons: {speaches: {1: {...}, 2:{...}}},\r
-  4: panel_pictures: {...},\r
-}\r
-</pre></p><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-3">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-3">正常系</h4><ul><li>comic\r
-<ul><li>author\r
-</li><li>panels\r
-<ul><li>panel_pictures\r
-<ul><li>resource_picture\r
-<ul><li>artist\r
-</li><li>lisence\r
-</li></ul></li></ul></li><li>balloons\r
-<ul><li>speaches\r
-</li></ul></li></ul></li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>指定されたidが非公開だった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-new">new</h2><p>新規\r
-</p><h3 id="h3-url-5">url</h3><ul><li><a href="http://localhost:3000/comics/new" class="external" rel="nofollow">http://localhost:3000/comics/new</a>\r
-</li><li><a href="http://localhost:3000/comics/new.json" class="external" rel="nofollow">http://localhost:3000/comics/new.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-5">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E8.A7.A3.E8.AA.AC-5">解説</h3><p>コミック情報を作成するための入力フォームをまっさらなページで表示する。\r
-</p><p>フォームの表示のみなので、これといった処理はない。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-4">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-4">正常系</h4><ul><li>入力フォームを返す。\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-2">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li></ul><hr /><h2 id="h2-create">create</h2><p>作成\r
-</p><h3 id="h3-url-6">url</h3><ul><li><a href="http://localhost:3000/comics" class="external" rel="nofollow">http://localhost:3000/comics</a>\r
-</li><li><a href="http://localhost:3000/comics.json" class="external" rel="nofollow">http://localhost:3000/comics.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-6">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-2">パラメータ</h3><h4 id="h4-comic">comic</h4><ul><li>コミックの情報。<a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>を参照。\r
-</li><li>title\r
-</li><li>width\r
-</li><li>height\r
-</li><li>visible\r
-</li><li>editable\r
-</li></ul><h4 id="h4-auth_token">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-6">解説</h3><p>コミックを新規作成するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>パラメータからcomicデータを起こす。\r
-</li><li>起こしたデータの足りない部分を補正する。\r
-<ul><li>comic.author_idをログイン中の作家idで補足する。\r
-</li></ul></li><li>comicデータを検証し、dbに保存する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-5">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-5">正常系</h4><ul><li>作成されたコミックデータを返す。\r
-<ul><li>htmlなら、作成されたコミックの閲覧ページに遷移する。 ex)/comics/1\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-3">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、新規ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-edit">edit</h2><p>編集\r
-</p><h3 id="h3-url-7">url</h3><ul><li><a href="http://localhost:3000/comics/edit" class="external" rel="nofollow">http://localhost:3000/comics/edit</a>\r
-</li><li><a href="http://localhost:3000/comics/edit.json" class="external" rel="nofollow">http://localhost:3000/comics/edit.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-7">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>post</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-3">パラメータ</h3><h4 id="h4-auth_token-2">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-7">解説</h3><p>コミック情報を更新するための入力フォームを指定されたidのデータを埋めたページで表示する。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-6">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-6">正常系</h4><ul><li>入力フォームを返す。\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-4">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-update">update</h2><p>更新\r
-</p><h3 id="h3-url-8">url</h3><ul><li><a href="http://localhost:3000/comics/1" class="external" rel="nofollow">http://localhost:3000/comics/1</a>\r
-</li><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-8">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id+jsonまたはフォーム</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>put</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-4">パラメータ</h3><h4 id="h4-comic-2">comic</h4><ul><li>コミックの情報。<a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>を参照。\r
-</li><li>title\r
-</li><li>width\r
-</li><li>height\r
-</li><li>visible\r
-</li><li>editable\r
-</li></ul><h4 id="h4-auth_token-3">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-8">解説</h3><p>コミックデータを修正するための機能。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>与えられたパラメータでコミックを更新する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-2">検証</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>の検証を行う。\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-7">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-7">正常系</h4><ul><li>更新されたコミックデータを返す。\r
-<ul><li>htmlなら、更新されたコミックの閲覧ページに遷移する。 ex)/comics/1\r
-</li><li>jsonならjson形式で返す。\r
-</li></ul></li></ul><p>json時のデータ階層\r
-</p><ul><li>comic\r
-</li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-5">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonならエラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li><li>検証、保存に失敗した\r
-<ul><li>htmlなら、編集ページを描画する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは422 unprocessable_entity\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-destroy">destroy</h2><p>削除\r
-</p><h3 id="h3-url-9">url</h3><ul><li><a href="http://localhost:3000/comics/1" class="external" rel="nofollow">http://localhost:3000/comics/1</a>\r
-</li><li><a href="http://localhost:3000/comics/1.json" class="external" rel="nofollow">http://localhost:3000/comics/1.json</a>\r
-</li></ul><h3 id="h3-.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88-9">リクエスト</h3><table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>作家</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr><tr><td>method</td><td>delete</td></tr></tbody></table><h3 id="h3-.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF-5">パラメータ</h3><h4 id="h4-auth_token-4">auth_token</h4><ul><li>jsonで要求する場合、認証処置として認証トークンが必要。\r
-</li></ul><h3 id="h3-.E8.A7.A3.E8.AA.AC-9">解説</h3><p>指定されたidのコミックを削除する。コミックだけでなく、関連するコマ、コマ絵、フキダシ、セリフも同時に削除される。\r
-</p><ul><li>権限をチェックする。\r
-</li><li>指定されたidのコミックを取得する。\r
-</li><li>そのコミックを削除する。同時に関連するコマ、コマ絵、フキダシ、セリフも削除する。\r
-</li><li>作業結果をクライアントに戻す。\r
-</li></ul><h3 id="h3-.E6.A4.9C.E8.A8.BC-3">検証</h3><ul><li>なし\r
-</li></ul><h3 id="h3-.E6.88.BB.E3.82.8A.E5.80.A4-8">戻り値</h3><h4 id="h4-.E6.AD.A3.E5.B8.B8.E7.B3.BB-8">正常系</h4><ul><li>値は返さない。\r
-<ul><li>htmlなら、コミック一覧ページに遷移する。\r
-</li><li>jsonならステータスコード200 :okを返す。\r
-</li></ul></li></ul><h4 id="h4-.E4.BE.8B.E5.A4.96.E7.B3.BB-6">例外系</h4><ul><li>作家アカウントでサインインしてなかった。\r
-<ul><li>htmlなら、サインインを促すページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-</li></ul></li><li>他人のコミックだった。\r
-<ul><li>htmlなら、コミック閲覧ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは403 :forbidden\r
-</li></ul></li></ul></li><li>指定されたidが存在しなかった。\r
-<ul><li>htmlなら、404ページへ遷移する。\r
-</li><li>jsonなら、エラーメッセージを返す。\r
-<ul><li>ステータスコードは404 :not_found\r
-</li></ul></li></ul></li></ul><hr /><h2 id="h2-list">list</h2><p>管理者のための閲覧リスト。\r
-</p><hr /><h2 id="h2-browse">browse</h2><p>管理者のための詳細閲覧。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">\r
-    <title>ComicModel</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ComicModel</link>\r
-    <dc:identifier>ComicModel</dc:identifier>\r
-    <dc:date>2012-01-17T07:57:27+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コミック comic\r
-||name||和名||type||default||null||limit||note||\r
-||title||作品名||string||100|| || ||||\r
-||width||コマの幅デフォルト値||integer||200||FALSE|| ||||\r
-||height||コマの高さデフォルト値||integer||80||FALSE|| ||||\r
-||]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.20comic">コミック comic</h1><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>title</td><td>作品名</td><td>string</td><td>100</td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅デフォルト値</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さデフォルト値</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>author_id</td><td>作者の作家id</td><td>integer</td><td></td><td>false</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><h2 id="h2-.E6.A4.9C.E8.A8.BC">検証</h2><ul><li>title\r
-<ul><li>100文字以内であること\r
-</li></ul></li><li>width\r
-<ul><li>数値であること\r
-</li><li>1以上?未満であること\r
-</li></ul></li><li>height\r
-<ul><li>数値であること\r
-</li><li>1以上?未満であること\r
-</li></ul></li><li>visible\r
-<ul><li>数値であること\r
-</li><li>0以上4未満であること\r
-</li></ul></li><li>editable\r
-<ul><li>数値であること\r
-</li><li>0以上4未満であること\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/StatusCode">\r
-    <title>StatusCode</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/StatusCode</link>\r
-    <dc:identifier>StatusCode</dc:identifier>\r
-\r
-    <dc:date>2012-01-16T18:21:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[ここを参照する\r
-\r
-http://www.func09.com/wordpress/archives/1226\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<p>ここを参照する\r
-</p><p><a href="http://www.func09.com/wordpress/archives/1226" class="external" rel="nofollow">http://www.func09.com/wordpress/archives/1226</a>\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/FrontPage">\r
-    <title>FrontPage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/FrontPage</link>\r
-    <dc:identifier>FrontPage</dc:identifier>\r
-    <dc:date>2012-01-16T18:21:00+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ぺったんRのWiki =\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png)]]\r
-== ぺったんRって何だってばよ?\r
-ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-\r
-参考\r
- * http://sourceforge.jp/projec]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AEWiki">ぺったんRのWiki</h1><img src="http://static.sourceforge.jp/thumb/g/2/926/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9262f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.A3.E3.81.A6.E4.BD.95.E3.81.A0.E3.81.A3.E3.81.A6.E3.81.B0.E3.82.88.EF.BC.9F">ぺったんRって何だってばよ?</h2><p>ぺったんを参考に、より使い勝手の良い漫画作成ツールを作ろうとしている。Rの意味はみなさんで勝手に想像してください。\r
-</p><p>参考\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettan/">http://sourceforge.jp/projects/pettan/</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanoss/">http://sourceforge.jp/projects/pettanoss/</a>\r
-</li></ul><p>より詳しくは <a href="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">WhatsPettan</a>\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.E3.81.AE.E7.9B.AE.E6.A8.99">ぺったんRの目標</h2><h3 id="h3-.E7.B7.8F.E5.90.88.E7.9B.AE.E6.A8.99">総合目標</h3><ul><li>漫画形式の表現がブラウザだけでできる\r
-</li><li>漫画形式のブログを簡単に始められる\r
-</li><li>漫画形式のSNSを簡単に始められる\r
-</li><li>漫画形式の記事をブログに埋め込める\r
-</li><li>その他あらゆるwebページに最小限の労力で漫画を表示できる\r
-</li></ul><h3 id="h3-.E9.96.8B.E7.99.BA.E7.9B.AE.E6.A8.99">開発目標</h3><ul><li>ぺったんR Web API\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のサーバ側実装\r
-</li><li>ぺったんR Web API に対応した、ひとつ以上のクライアント側実装\r
-</li><li>ぺったんR をお試しできる Web サービスの運営\r
-</li></ul><h2 id="h2-.E7.8F.BE.E5.9C.A8.E3.81.AE.E7.8A.B6.E6.B3.81">現在の状況</h2><ul><li>プロトタイプ作成中。 <a href="http://pettanr.heroku.com/" class="external" rel="nofollow">http://pettanr.heroku.com/</a>\r
-</li><li>プロジェクト Web サイトの制作中 <a href="http://pettanr.sourceforge.jp/index.html" class="external" rel="nofollow">http://pettanr.sourceforge.jp/index.html</a>\r
-</li><li>ユーザーコンソール <a href="http://pettanr.sourceforge.jp/work.html" class="external" rel="nofollow">http://pettanr.sourceforge.jp/work.html</a>\r
-</li></ul><h2 id="h2-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">ForDevelopers</a>\r
-</li></ul><h2 id="h2-.E7.B7.A8.E9.9B.86.E9.95.B7.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">編集長向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">ForWebmasters</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">作家向けドキュメント</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">ForAuthors</a>\r
-</li></ul><h2 id="h2-.E5.90.84.E8.87.AA.E3.81.AE.E3.83.A1.E3.83.A2">各自のメモ</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">YasushiIto</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">ItoZyun</a>\r
-</li></ul><h2 id="h2-.E8.B3.87.E6.96.99.E7.AD.89">資料等</h2><ul><li>マンガ要素の日英対訳 <a href="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">TranslationComicElements</a>\r
-</li><li>おまけ <a href="http://sourceforge.jp/projects/pettanr/wiki/AppendixList">AppendixList</a>\r
-</li><li>railsのステータスコード <a href="http://sourceforge.jp/projects/pettanr/wiki/StatusCode">StatusCode</a>\r
-</li></ul><script src="/projects/pettanr/files/compact.js" type="text/javascript" charset="utf-8"></script>\r
-<div class="dashboard-widget"><h3 class="titlebar">最近のチケット一覧</h3><div class="dashboard-body"><table class="event-list"><tr class="row-even"><td><a href="/ticket/browse.php?group_id=6674&amp;tid=27153">コマ背景の仕様が稚拙</a></td><td class="date">2012-01-18 09:13</td></tr><tr class="row-even"><td class="extrainfo">コマに背景が設定できる。\r
-panel.resource_picture_idで素材を使うが、素材を指定するしかできない。これでは反転などができ...</td><td class="userinfo"><a href="/users/yasushiito/" class="user-link"><img width="9" height="12" src="http://static.sourceforge.jp/thumb/u/1/989/12x12_0.png" border="0" class="user-image user-image-type-icon" alt="">yasushiito</a></td></tr></table><div class="list_link"><a href="/projects/pettanr/ticket/">チケット一覧を確認</a></div></div></div>\r
-]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest">\r
-    <title>XmlHttpRequest</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XmlHttpRequest</link>\r
-\r
-    <dc:identifier>XmlHttpRequest</dc:identifier>\r
-    <dc:date>2012-01-16T13:39:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= XMLHttpRequest\r
-\r
- * ie 4.0 以降 ie6 以前は ActiveX\r
- * Firefox 1.0 以降\r
- * NN 7 以降\r
- * Opera 7.6 以降\r
- * Safari 1.2 以降\r
- * Konqueror 3 以降\r
-\r
-以上は 入門 ajax 増補改訂版より\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-XMLHttpRequest">XMLHttpRequest</h1><ul><li>ie 4.0 以降 ie6 以前は ActiveX\r
-</li><li>Firefox 1.0 以降\r
-</li><li>NN 7 以降\r
-</li><li>Opera 7.6 以降\r
-</li><li>Safari 1.2 以降\r
-</li><li>Konqueror 3 以降\r
-</li></ul><p>以上は 入門 ajax 増補改訂版より\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">\r
-    <title>JavascriptEditor</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor</link>\r
-    <dc:identifier>JavascriptEditor</dc:identifier>\r
-    <dc:date>2012-01-16T08:40:33+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= Javascript\r
- js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/990/640x640_0.png)]]\r
-== common.js\r
- * pettnar.\r
- * pettanr.const\r
- * pettanr.ua\r
-   * ブラウザ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Javascript">Javascript</h1><div class="indent">js は 閲覧時 に使われるもの、ログイン後に使われるもの、その両方で使われるものがある.\r
-</div><img src="http://static.sourceforge.jp/thumb/g/2/990/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9902f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-common.js">common.js</h2><ul><li>pettnar.\r
-</li><li>pettanr.const\r
-</li><li>pettanr.ua\r
-<ul><li>ブラウザの情報、プラグインの情報\r
-</li></ul></li><li>pettnar.util\r
-<ul><li>\r
-</li></ul></li><li>pettnar.overlay\r
-<ul><li>ポップアップオーバーレイを管理する.\r
-</li></ul></li><li>pettnar.key\r
-<ul><li>キーイベントの発行、テキスト入力エリアの管理\r
-</li></ul></li><li>pettnar.balloon\r
-<ul><li>クロスバックエンドな吹きだし画像のためのラッパーの発行.<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li>SVG, VML といったベクター画像で吹きだし(balloon)を描画する(ベクター画像のサポートがない場合は代替画像を表示する)\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a>\r
-</li></ul></li><li>pettnar.image\r
-<ul><li>クロスバックエンドな、Reversible Image のためのラッパーを発行.<a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li>css3, VML, ActiveX, Flash, サーバー側で生成した反転画像 を使用して画像の反転を行う.\r
-</li><li>透過 PNG のサポートが甘い IE6 以下にたいして、VML, Flash, ActiveX+サーバー画像 による描画サポートを行う.<a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li></ul></li><li>pettnar.i18n\r
-<ul><li>マルチ言語情報の保持.言語変更イベントの管理.\r
-</li></ul></li><li>pettnar.io\r
-<ul><li>通信\r
-</li><li>xml としてサーバに置かれた ajax なリソースに対して、ajax feed api を使った json リクエスト(xmlより転送量が少ない)などの 複数経路でリクエストを行うラッパー\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul></li><li>pettnar.load\r
-<ul><li>work.js と jQuery のロード.min や debag version の切り替え.jQuery version の切り替え.\r
-</li></ul></li></ul><h2 id="h2-work.js">work.js</h2><p>ログイン後のユーザー(管理者)の操作.コミック・画像の管理やコマの作成.\r
-</p><ul><li>pettnar.view\r
-<ul><li>現在のビューを管理する.Window Resize イベントの監視.\r
-</li></ul></li><li>pettnar.editor\r
-<ul><li>コマの編集を行う.\r
-</li></ul></li><li>pettnar.file\r
-<ul><li>サーバから取得したリソース情報を保持し、データの取得やアクセス権のチェック、データのアップデートをラップする.\r
-</li></ul></li><li>pettnar.finder\r
-<ul><li>ファイル(リソース)エクスプローラー\r
-</li><li>コミック、コマ、画像、吹きだし、画像提供絵師情報</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/SystemController">\r
-    <title>SystemController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/SystemController</link>\r
-    <dc:identifier>SystemController</dc:identifier>\r
-    <dc:date>2012-01-15T18:11:40+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= SystemController\r
-管理者機能。\r
-\r
-== index\r
-管理者機能目次。\r
-== start\r
-管理者を作成するための手順を表示するためのページ。\r
-\r
-== browse\r
-dbを閲覧するためのメニュー。\r
-\r
-== auth_token\r
-認証トークンの表示および管理メニュー。\r
-\r
-=== create_token\r
-認証トークンの作成。\r
-\r
-=== delete_]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-SystemController"><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemController">SystemController</a></h1><p>管理者機能。\r
-</p><h2 id="h2-index">index</h2><p>管理者機能目次。\r
-</p><h2 id="h2-start">start</h2><p>管理者を作成するための手順を表示するためのページ。\r
-</p><h2 id="h2-browse">browse</h2><p>dbを閲覧するためのメニュー。\r
-</p><h2 id="h2-auth_token">auth_token</h2><p>認証トークンの表示および管理メニュー。\r
-</p><h3 id="h3-create_token">create_token</h3><p>認証トークンの作成。\r
-</p><h3 id="h3-delete_token">delete_token</h3><p>認証トークンの削除。\r
-</p><h2 id="h2-waiting_list">waiting_list</h2><p>管理者承認。\r
-</p><h3 id="h3-approve">approve</h3><p>管理者承認。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">\r
-    <title>AuthorRegistrationsController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController</link>\r
-    <dc:identifier>AuthorRegistrationsController</dc:identifier>\r
-\r
-    <dc:date>2012-01-15T17:58:47+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= AuthorRegistrationsController\r
-認証エンジンdeviseでサインアップ後のページ遷移をするために必要となった。\r
-\r
-遷移先を定義しただけなので、機能はない。]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-AuthorRegistrationsController"><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">AuthorRegistrationsController</a></h1><p>認証エンジンdeviseでサインアップ後のページ遷移をするために必要となった。\r
-</p><p>遷移先を定義しただけなので、機能はない。</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">\r
-    <title>RailsControllers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RailsControllers</link>\r
-    <dc:identifier>RailsControllers</dc:identifier>\r
-    <dc:date>2012-01-15T17:55:25+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= サーバ側の機能\r
-== コミック関係\r
- * ComicsController\r
- * PanelsController\r
- * PanelPicturesController\r
- * BalloonsController\r
- * SpeachsController\r
-== 素材関係\r
- * OriginalPicturesController\r
- * ResourcePicturesCont]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B5.E3.83.BC.E3.83.90.E5.81.B4.E3.81.AE.E6.A9.9F.E8.83.BD">サーバ側の機能</h1><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E9.96.A2.E4.BF.82">コミック関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicsController">ComicsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonsController">BalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachsController">SpeachsController</a>\r
-</li></ul><h2 id="h2-.E7.B4.A0.E6.9D.90.E9.96.A2.E4.BF.82">素材関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicturesController">OriginalPicturesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a>\r
-</li></ul><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E9.96.A2.E4.BF.82">フキダシテンプレート関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">SpeachBalloonsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplatesController">BallonTemplatesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplatesController">SpeachTemplatesController</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E9.96.A2.E4.BF.82">ライセンス関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisencesController">OriginalLisencesController</a>\r
-</li></ul><h2 id="h2-.E5.BD.B9.E5.89.B2.E9.96.A2.E4.BF.82">役割関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorsController">AuthorsController</a>\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorRegistrationsController">AuthorRegistrationsController</a>\r
-</li></ul></li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistsController">ArtistsController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HelpController">HelpController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HomeController">HomeController</a>\r
-</li></ul><h2 id="h2-.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E9.96.A2.E4.BF.82">システム関係</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemController">SystemController</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemPicturesController">SystemPicturesController</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers">\r
-    <title>ForDevelopers</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers</link>\r
-\r
-    <dc:identifier>ForDevelopers</dc:identifier>\r
-    <dc:date>2012-01-15T17:49:02+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 開発者向けドキュメント\r
-== 開発環境\r
-=== サーバーサイド\r
- * Ruby1.9+Rails3.1\r
-==== 構築\r
- * HowToInstall\r
-   * PictureIo\r
-   * RmagickAndDmagick\r
-\r
-=== クライアントサイド\r
- * html4.01 + css2.1 に加え css3, SVG, XML, ActiveX, Flash のうち]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E9.96.8B.E7.99.BA.E8.80.85.E5.90.91.E3.81.91.E3.83.89.E3.82.AD.E3.83.A5.E3.83.A1.E3.83.B3.E3.83.88">開発者向けドキュメント</h1><h2 id="h2-.E9.96.8B.E7.99.BA.E7.92.B0.E5.A2.83">開発環境</h2><h3 id="h3-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89">サーバーサイド</h3><ul><li>Ruby1.9+Rails3.1\r
-</li></ul><h4 id="h4-.E6.A7.8B.E7.AF.89">構築</h4><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall">HowToInstall</a>\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">RmagickAndDmagick</a>\r
-</li></ul></li></ul><h3 id="h3-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E3.82.B5.E3.82.A4.E3.83.89">クライアントサイド</h3><ul><li>html4.01 + css2.1 に加え css3, SVG, XML, ActiveX, Flash のうちのいくつか.\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">ClientSide</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul></li><li>javascript( jQuery + plugin)\r
-<ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li></ul></li></ul><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E3.83.99.E3.83.BC.E3.82.B9">データベース</h3><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">AboutModels</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">DatabaseSchema</a> \r
-</li></ul><h2 id="h2-.E6.A9.9F.E8.83.BD">機能</h2><ul><li>サーバ側の機能 <a href="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">RailsControllers</a>\r
-</li><li>JsonAPI <a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex">ApiIndex</a>\r
-</li></ul><h2 id="h2-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">ChangeDoc</a></li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/YasushiIto">\r
-    <title>YasushiIto</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/YasushiIto</link>\r
-    <dc:identifier>YasushiIto</dc:identifier>\r
-    <dc:date>2012-01-15T17:39:27+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[コモンライセンスの初期化。パブリックドメインだけは追加。\r
-\r
-md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-\r
-フキダシは名前の末尾を@ドメインにする慣習\r
-\r
-クリコモは転載自由なのか?\r
-\r
-jpgは反転できなくてもよくね?\r
-\r
-コミックのオーナーがフラグを変更できるように\r
-\r
-棒人間・ヴェール・ぞゥ\r
-\r
-SNS・ブログ\r
-\r
-フキダシはベクター式]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<p>コモンライセンスの初期化。パブリックドメインだけは追加。\r
-</p><p>md5を採用するとユニーク。同じ画像はアップロードできない。絵師の仕様がかわる?\r
-</p><p>フキダシは名前の末尾を@ドメインにする慣習\r
-</p><p>クリコモは転載自由なのか?\r
-</p><p>jpgは反転できなくてもよくね?\r
-</p><p>コミックのオーナーがフラグを変更できるように\r
-</p><p>棒人間・ヴェール・ぞゥ\r
-</p><p>SNS・ブログ\r
-</p><p>フキダシはベクター式に合わせるが、テンプレートのみも用意\r
-</p><h1 id="h1-w.E3.81.A8h.E3.81.AB.E3.83.9E.E3.82.A4.E3.83.8A.E3.82.B9.E3.81.AF.E3.81.82.E3.82.8A.EF.BC.9F">wとhにマイナスはあり?</h1><ul><li>逆フキダシ\r
-</li><li>min_width→lower_limit\r
-</li><li>フォントなど\r
-<pre>  &lt;property name=&quot;fontSize&quot;/&gt;\r
-       &lt;property name=&quot;fontColor&quot;/&gt;\r
-       &lt;property name=&quot;fontWeight&quot;/&gt;\r
-       &lt;property name=&quot;serif&quot;/&gt;\r
-       &lt;property name=&quot;way&quot;/&gt;\r
-       &lt;property name=&quot;textAlign&quot;/&gt;\r
-</pre></li><li>no_adult ?\r
-</li></ul><ul><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li><li> → \r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ApiIndex">\r
-    <title>ApiIndex</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ApiIndex</link>\r
-    <dc:identifier>ApiIndex</dc:identifier>\r
-    <dc:date>2012-01-15T17:13:21+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアントが必要としそうなAPI\r
-何がどんな機能を実行するために、どんなデータが必要かを挙げていってください。体裁はどうでもいいです。\r
-\r
-== ぺったんサーバーの情報\r
- * API の url\r
-   * 最終的にはここに掲載 RailsControllers\r
- * 総素材数\r
-   * べらぼうに多い場合、素材一覧の取得を一度にはできない.\r
-     * カウントAPIを用意す]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E3.81.8C.E5.BF.85.E8.A6.81.E3.81.A8.E3.81.97.E3.81.9D.E3.81.86.E3.81.AAAPI">クライアントが必要としそうなAPI</h1><p>何がどんな機能を実行するために、どんなデータが必要かを挙げていってください。体裁はどうでもいいです。\r
-</p><h2 id="h2-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1">ぺったんサーバーの情報</h2><ul><li>API の url\r
-<ul><li>最終的にはここに掲載 <a href="http://sourceforge.jp/projects/pettanr/wiki/RailsControllers">RailsControllers</a>\r
-</li></ul></li><li>総素材数\r
-<ul><li>べらぼうに多い場合、素材一覧の取得を一度にはできない.\r
-<ul><li>カウントAPIを用意する\r
-</li><li>たぶん名前はcount\r
-</li></ul></li></ul></li><li>総コミック数\r
-<ul><li>べらぼうに多い場合、、、\r
-</li></ul></li></ul><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9">コミックエクスプローラ</h2><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E4.B8.80.E8.A6.A7">ログインユーザーのコミック一覧</h3><ul><li>作家の作業場は/home以下\r
-</li></ul><h3 id="h3-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93R.20.E3.81.AE.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E4.B8.80.E8.A6.A7">ぺったんR のコミック一覧</h3><ul><li>総合ページは/から。\r
-<ul><li>/にトレンドなデータが表示される\r
-</li></ul></li><li>/comics でコミック一覧\r
-<ul><li>/comics.json でコミック一覧のjsonデータが\r
-<ul><li>更新日時が新しい順に20件\r
-</li></ul></li></ul></li></ul><h3 id="h3-.E3.83.91.E3.83.8D.E3.83.AB.E3.81.AE.E4.B8.A6.E3.81.B3.E6.9B.BF.E3.81.88">パネルの並び替え</h3><ul><li>パネルのパラメータ\r
-</li><li>パネルの並び替えがユーザーに許可されているか?\r
-<ul><li>コマの並び順ということなら、されている。パネルの更新で時系列tを変える\r
-</li></ul></li><li>パネルの編集がユーザーに許可されているか?\r
-<ul><li>作者以外の投稿ということなら、されている。コミックのeditableが1であれば。\r
-</li></ul></li></ul><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9.E3.83.BC">素材エクスプローラー</h2><ul><li>最近投稿された素材 → <a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictures">ResourcePictures</a>#index\r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E4.B8.80.E8.A6.A7.E3.81.AE.E5.8F.96.E5.BE.97">素材一覧の取得</h3><ul><li>全ての素材の全プロパティの取得\r
-<ul><li>images.json\r
-</li><li>さすがに全件取得は無茶。\r
-<ul><li>最新の~、人気の~、最近使った~で絞り込む\r
-</li><li>タグの仕様を詰めないと無理か?\r
-</li></ul></li></ul></li><li>素材データが多い場合、少しづつ取得(って結構めんどくさいかも)\r
-<ul><li>images.json?last=id(最後に貰った素材のID を入れるとその続きから、とか)\r
-</li><li>今のところ20件以内で返す\r
-</li><li>もっと欲しい場合は、pagenateとなるが、あまりcoolとは言えないかも\r
-<ul><li>?page=3 みたいな\r
-</li><li>page=3 を取得中に、新しい素材が追加された場合、index がずれる.→ずれますね\r
-<ul><li>例えば 20 枚でひとつのページを作るけど、最新の ページは必ずしも 20 枚でない、とか?\r
-</li><li>古い素材:page=5 → |20|20|20|20|20|12| ← 新しい素材:page=0 ( 計 112 枚 )\r
-<ul><li>最新順だからpage=5 → |12|20|20|20|20|20| ← page=0 かな。\r
-</li></ul></li></ul></li></ul></li><li>images.json?tag=penjiro\r
-<ul><li><ul><li>ユーザーがペン次郎タグの素材のなかから選びたい場合.\r
-</li></ul></li></ul></li></ul></li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E6.93.8D.E4.BD.9C">素材の操作</h3><ul><li>素材の追加(アップロード周りは調べます、実はやったことがない、、、)\r
-<ul><li>jsonでやるにはBase64でエンコードしないといかんかも。\r
-</li></ul></li><li>素材の削除  \r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.83.87.E3.83.BC.E3.83.88">素材のプロパティのアップデート</h3><ul><li>素材の名前(はとりあえずなしで開発)\r
-</li><li>タグの追加、削除 など\r
-</li></ul><h4 id="h4-.E3.81.B2.E3.81.A8.E3.81.A4.E3.81.AE.E7.B4.A0.E6.9D.90.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E3.82.82.E3.81.A4.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3">ひとつの素材データのもつプロパティ</h4><ul><li>id\r
-</li><li>filesize\r
-</li><li>tag[]\r
-</li><li>published_at\r
-</li><li>updated_at\r
-</li><li>license\r
-</li></ul><p>→ <a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a> を見る\r
-</p><ul><li>owner ログインユーザーがその素材のオーナーか?\r
-<ul><li>オーナーでないなら、アーティスト の id\r
-</li></ul></li></ul><p>→\r
-</p><ul><li>変更可能なオプションとその変更権がユーザーにあるか?\r
-</li></ul><h2 id="h2-.E3.82.BF.E3.82.B0.E3.81.AE.E6.93.8D.E4.BD.9C">タグの操作</h2><ul><li>タグの追加\r
-</li><li>タグの削除\r
-</li><li>タグの更新\r
-<ul><li>ペン次郎タグがあったけど、ペン太郎に改名したい場合、一つ一つの素材画像のプロパティでなく、タグ自体の名前を変える.\r
-</li></ul></li></ul><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.82.A8.E3.82.AF.E3.82.B9.E3.83.97.E3.83.AD.E3.83.BC.E3.83.A9.E3.83.BC">フキダシエクスプローラー</h2><ul><li>フキダシリスト → \r
-</li></ul><h2 id="h2-.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1">ユーザーの情報</h2><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1.E3.81.AE.E5.8F.96.E5.BE.97">ログインユーザーの情報の取得</h3><ul><li>ユーザー名\r
-</li><li>ユーザーの HP の url\r
-</li><li>デフォルトのライセンス\r
-</li><li>アカウントの状態(作家、絵師、admin)\r
-</li></ul><h3 id="h3-.E3.83.AD.E3.82.B0.E3.82.A4.E3.83.B3.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E3.81.AE.E6.83.85.E5.A0.B1.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.83.87.E3.83.BC.E3.83.88">ログインユーザーの情報のアップデート</h3><ul><li>ユーザーの HP の url\r
-</li><li>デフォルトのライセンス\r
-</li></ul><p>→jsonでのやり取りは危険なのでサーバが吐くページのフォームからしかできない。\r
-</p><h3 id="h3-.E3.82.A2.E3.83.BC.E3.83.86.E3.82.A3.E3.82.B9.E3.83.88.E3.81.AE.E6.83.85.E5.A0.B1">アーティストの情報</h3><ul><li>パネルピクチャー を併せてどこかに表示される.\r
-</li><li>アーティスト名\r
-</li><li>アーティストの HP の url\r
-</li></ul><h2 id="h2-.E3.83.91.E3.83.8D.E3.83.AB.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF">パネルエディタ</h2><ul><li>編集しようとしているパネルデータ\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ItoZyun">\r
-    <title>ItoZyun</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ItoZyun</link>\r
-    <dc:identifier>ItoZyun</dc:identifier>\r
-\r
-    <dc:date>2012-01-14T20:46:33+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアント側\r
- * ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
- * ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-\r
-= javascript のクリーンアップ、圧縮\r
-== クリーンアップ\r
-javascript は、変数宣言時]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><ul><li>ユーザーログイン後の操作(マンガ管理・コマ作成・画像管理・設定)は、すべて js 有効 が前提の Ajax ページで行う.\r
-</li><li>ログインしたユーザーのマンガ閲覧も、Ajaxページで行う.画像読み込みを非同期化して、画面外の画像の読み込みを抑止する.\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97.E3.80.81.E5.9C.A7.E7.B8.AE">javascript のクリーンアップ、圧縮</h1><h2 id="h2-.E3.82.AF.E3.83.AA.E3.83.BC.E3.83.B3.E3.82.A2.E3.83.83.E3.83.97">クリーンアップ</h2><p>javascript は、変数宣言時の区切り文字や、行の終わりのセミコロンなどを間違えていても、予期したとおりに動作したりして潜在的な問題を抱えることになる.<br />\r
-以上のものは、Aptana で警告されないものも結構ある.<br />\r
-jsDo.it にアップロードすると、Webコンソールで javascript の警告を教えてくれる.<br />\r
-その警告に従って修正したところ、Aptana2 の構文解析も動くようになった.コード量が増えると勝手に構文解析も止まるのかと思っていたけど、そのようなわけだった、、、<br />\r
-</p><h2 id="h2-.E5.9C.A7.E7.B8.AE">圧縮</h2><p>以上を済ませた後に、圧縮(難読化)を行うことで、js ファイルの読み込みや動作を早くし、負荷を抑えることができる.<br />\r
-圧縮ツールには、Web アプリとして提供されているものもあって便利.<br />\r
-<a href="http://compressorrater.thruhere.net/" class="external" rel="nofollow">http://compressorrater.thruhere.net/</a> が、複数の圧縮エンジンに通した結果を比較表示してくれる.<br />\r
-現在 140KB 程度の js ファイルを 60KB 程度にすることができた.<br />\r
-ただし、その圧縮後のファイルが動かないこともあり(というかほとんど動かない、または操作中に動かなくなる)圧縮ツール用にコードを書く必要がある.<br />\r
-jsは、コードが実行される順番に変数宣言をしていけばいいのだが、圧縮ツール用には、変数の宣言を最初の変数の登場より先にしなくてはならない.<br />\r
-</p><p>変数の宣言がないままに変数が登場すると、\r
-<pre>function createPopup(){\r
-// Popup クラスから Popup インスタンスを作る.\r
- var _popup = PopupClass.apply( {}, []);\r
-}\r
-~\r
-// Popup クラスの宣言\r
-var PopupClass = function(){};\r
-</pre>圧縮ツールは、最初に登場する <a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a> はそのまま.var <a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a>= のみ、var a= などと圧縮をかける.結果、createPopup() したときに <a href="http://sourceforge.jp/projects/pettanr/wiki/PopupClass">PopupClass</a> が未定義だよ!となる.<br />\r
-</p><ul><li>決定版はこれだ! Javascriptの圧縮、難読化ツール 比較検討 <a href="http://gogolounge.blog.shinobi.jp/Entry/4/" class="external" rel="nofollow">http://gogolounge.blog.shinobi.jp/Entry/4/</a>\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82.AF">javascript のメモリリーク</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/%E9%96%8B%E7%99%BA">開発</a>IEメモリリークの最後の壁はAjaxのonreadystatechangeやった!! <a href="http://d.hatena.ne.jp/AWAWA/20071207/1197036423" class="external" rel="nofollow">http://d.hatena.ne.jp/AWAWA/20071207/1197036423</a>\r
-</li><li>Internet Explorer リーク パターンを理解して解決する <a href="http://msdn.microsoft.com/ja-jp/library/bb250448" class="external" rel="nofollow">http://msdn.microsoft.com/ja-jp/library/bb250448</a>\r
-</li></ul><p>クロージャがまずい.<br />\r
-dom追加は、appendChild を先に.あとからプロパティをセット.<br />\r
-イベントハンドラに、グローバルで定義された 空の function を突っ込んで解除する.\r
-</p><h1 id="h1-.E3.82.B9.E3.82.BF.E3.83.B3.E3.83.89.E3.82.A2.E3.83.AD.E3.83.BC.E3.83.B3.E7.89.88.20IE.20.E3.81.AE.E9.80.9A.E5.B8.B8.E7.89.88.E3.81.A8.E7.95.B0.E3.81.AA.E3.82.8B.E6.8C.99.E5.8B.95">スタンドアローン版 IE の通常版と異なる挙動</h1><p>IETester で 条件付コメントによる、vml のインストールの有無のチェックができない挙動に遭遇.<br />\r
-vml のチェックは、現在は条件付コメントを動的に付与して行っている.(他にいい方法ないかな、、、?)\r
-<pre>VML: ( function(){\r
-       if( isIE === false || ieVersion &gt; 8) return false;\r
-       var globalObjectName = createGrobalObjectName(), script;\r
-       document.writeln( [ '&lt;!--[if gte vml 1]&gt;&lt;script type=&quot;text/javascript&quot;&gt;window.', globalObjectName,'=1;&lt;/script&gt;&lt;![endif]--&gt;'].join( ''));\r
-       if( window[ globalObjectName] === 1){\r
-               window[ globalObjectName] = undefined;\r
-               return true;\r
-       }\r
-       return false;\r
-})(),\r
-</pre></p><p>XPsp3 に IETester をインストールして 6, 7, 8 をテストできる環境にしているが、6 と 7 では、vml のチェックが働かない.<br />\r
-これは、スタンドアローン版 IE は 条件付コメントが働かない、ためと思われる.<br />\r
-一方で、8 で正しく動いているのは、8 が Windows 環境のデフォルトの ie なので通常版であるため、と思う.<br />\r
-</p><p>navigator.ua で取得したバージョンと 動的に書き出した条件付コメント(内でスクリプトを使用)が不一致だったら、スタンドアローン版として処理する.\r
-</p><ul><li>条件付コメント文の誤算 <a href="http://bopsublog.blog.shinobi.jp/Entry/15/" class="external" rel="nofollow">http://bopsublog.blog.shinobi.jp/Entry/15/</a>\r
-</li><li><a href="http://philip.html5.org/data/ccs.html" class="external" rel="nofollow">http://philip.html5.org/data/ccs.html</a>\r
-</li></ul><h1 id="h1-javascript.20.E3.81.AE.E9.81.B8.E6.8A.9E.E7.A6.81.E6.AD.A2">javascript の選択禁止</h1><ul><li>ieでは、unselectable を使う.但しこの指定は継承しないため、全てのテキストを持つ要素に指定する.\r
-<pre>&lt;div unselectable=&quot;on&quot;&gt;テキスト&lt;/div&gt;\r
-</pre></li><li>css を使う場合.\r
-<pre>&lt;div style=&quot;-moz-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;-khtml-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;-webkit-user-select: none;&quot;&gt;テキスト&lt;/div&gt;\r
-&lt;div style=&quot;user-select: none;&quot;&gt;テキスト&lt;/div&gt; css3 ??\r
-</pre></li><li>js を使う\r
-<pre>&lt;div onMouseMove=&quot;window.getSelection().removeAllRanges();&quot;&gt;テキスト&lt;/div&gt; など\r
-</pre></li><li><a href="http://www.programming-magic.com/20071217225449/" class="external" rel="nofollow">http://www.programming-magic.com/20071217225449/</a>\r
-</li></ul><p>js で自動でテキスト選択を禁止する必要がある.\r
-</p><h1 id="h1-about.20itozyun">about itozyun</h1><ul><li>目立ちたがり屋という点でフロント向き.\r
-</li><li>好奇心に負けて地雷を踏む性格なので、API 設計などを任せてはいけない.</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HowToInstall">\r
-    <title>HowToInstall</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HowToInstall</link>\r
-    <dc:identifier>HowToInstall</dc:identifier>\r
-    <dc:date>2012-01-14T13:39:42+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= インストール\r
-== 前提条件\r
- * Ruby1.9系\r
- * git\r
- * ImageMagick\r
-\r
-WindowsならRailsInstaller が楽かも。ただし、この選択はImageMagickを動かせないので、別途Production環境が必要。今のところは本番環境としてherokuを想定している。\r
-\r
-http://railsinstaller.org/\r
-\r
-== ソー]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB">インストール</h1><h2 id="h2-.E5.89.8D.E6.8F.90.E6.9D.A1.E4.BB.B6">前提条件</h2><ul><li>Ruby1.9系\r
-</li><li>git\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>\r
-</li></ul><p>Windowsなら<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a> が楽かも。ただし、この選択は<a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>を動かせないので、別途Production環境が必要。今のところは本番環境としてherokuを想定している。\r
-</p><p><a href="http://railsinstaller.org/" class="external" rel="nofollow">http://railsinstaller.org/</a>\r
-</p><h2 id="h2-.E3.82.BD.E3.83.BC.E3.82.B9.E3.82.B3.E3.83.BC.E3.83.89.E3.81.AE.E5.8F.96.E5.BE.97">ソースコードの取得</h2><p>ソースコードの取得はgitを使う。ここでは<a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>を使うケースで書く。\r
-</p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>をインストールするとRails用コンソールを開けるようになる。そこからgitも使える。\r
-</p><p>最初に起動するときにメアドとパスフレーズを聞かれるので、\r
-<a href="http://sourceforge.jp/projects/pettanr/cvs/">http://sourceforge.jp/projects/pettanr/cvs/</a>\r
-を参考にしながら\r
-<pre>yasushiito@git.sourceforge.jp\r
-</pre></p><p>のようにメアドにして、さらにパスフレーズも記入。コンソールが開くと、ドバっと暗号が出てくるが、公開鍵のファイル名なんかも含まれてるので目を通しておく。コミッタとしてプロジェクトに参加するなら、この公開鍵をsourceforge.jpに追加しておく。\r
-<pre>ssh:\r
-  public_key_location: C:\Documents and Settings\....\r
-</pre></p><pre>c:\sites&gt;git clone yasushiito@git.sourceforge.jp:/gitroot/pettanr/pettanr.git pettanr\r
-</pre><p>でpettanr以下にダウンロードされる。\r
-</p><p>ユーザとしてダウンロードしたいなら\r
-<pre>c:\sites&gt;git clone git://git.sourceforge.jp/gitroot/pettanr/pettanr.git pettanr\r
-</pre>とする。\r
-</p><h2 id="h2-.E7.A8.BC.E5.83.8D.E5.89.8D.E3.81.AE.E6.BA.96.E5.82.99">稼働前の準備</h2><h3 id="h3-gem.E3.81.AE.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB">gemのインストール</h3><pre>c:\sites&gt;cd pettanr\r
-c:\sites\pettanr&gt;bundle install --without production\r
-</pre><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E3.83.99.E3.83.BC.E3.82.B9.E3.81.AE.E5.88.9D.E6.9C.9F.E5.8C.96">データベースの初期化</h3><pre>c:\sites\pettanr&gt;rake db:migrate \r
-</pre><h3 id="h3-.E7.AE.A1.E7.90.86.E8.80.85.E3.81.AE.E4.BD.9C.E6.88.90">管理者の作成</h3><p>管理者を最低一人は用意しないと動かない。\r
-<pre>c:\sites\pettanr&gt;rails r &quot;Admin.start('admin@mail.adr.ess', 'admin_password')&quot; \r
-</pre>もちろんメールアドレスとパスワードは変えること。\r
-</p><h3 id="h3-.E4.BF.9D.E7.AE.A1.E5.BA.AB.E3.81.AE.E4.BD.9C.E6.88.90">保管庫の作成</h3><p>画像の保存パスを作成しておく。\r
-<pre>c:\sites\pettanr&gt;cd ..\r
-c:\sites&gt;mkdir original\r
-c:\sites&gt;mkdir original\pettanr\r
-c:\sites&gt;mkdir resource\r
-c:\sites&gt;mkdir resource\pettanr\r
-c:\sites&gt;mkdir system\r
-c:\sites&gt;mkdir system\pettanr\r
-</pre>保存先を変えたい場合は、<a href="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">PictureIo</a>を参考にする。\r
-</p><h3 id="h3-ImageMagick.E3.81.AE.E8.A8.AD.E5.AE.9A"><a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>の設定</h3><p><a href="http://sourceforge.jp/projects/pettanr/wiki/RailsInstaller">RailsInstaller</a>では<a href="http://sourceforge.jp/projects/pettanr/wiki/ImageMagick">ImageMagick</a>が動かない。そこでDmagickなるものでごまかしてる。詳しくは<a href="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">RmagickAndDmagick</a>にあるが、デフォルトでDmagickを使っているため、Rmagickがある環境ではRmagickを使うように編集してやる。\r
-</p><h2 id="h2-.E8.B5.B7.E5.8B.95">起動</h2><pre>c:\sites\pettanr&gt;rails s\r
-</pre><p>これで<a href="http://localhost:3000/%E3%81%8B%E3%82%89%E9%81%8A%E3%81%B9%E3%82%8B" class="external" rel="nofollow">http://localhost:3000/から遊べる</a>\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutModels">\r
-    <title>AboutModels</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutModels</link>\r
-\r
-    <dc:identifier>AboutModels</dc:identifier>\r
-    <dc:date>2012-01-14T11:04:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ER図\r
-下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-\r
- * http://sawada0903.blogspot.com/2010/10/rails30er.html\r
- * http://rails-erd.rubyforge.org/install.html\r
-\r
-出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-\r
-G]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-ER.E5.9B.B3">ER図</h1><p>下記のページを参考にすれば生成できるはずだが、Windows環境では画像に落とせない。\r
-</p><ul><li><a href="http://sawada0903.blogspot.com/2010/10/rails30er.html" class="external" rel="nofollow">http://sawada0903.blogspot.com/2010/10/rails30er.html</a>\r
-</li><li><a href="http://rails-erd.rubyforge.org/install.html" class="external" rel="nofollow">http://rails-erd.rubyforge.org/install.html</a>\r
-</li></ul><p>出力されるERD.dotはdotっていうグラフ描画ツールのマクロ。\r
-</p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/GraphViz">GraphViz</a>のbinにdot.exeがあるからこれで画像にできる\r
-<pre>dot.exe -Tgif ERD.dot &gt; erd.gif\r
-</pre></p><h1 id="h1-.E3.83.86.E3.83.BC.E3.83.96.E3.83.AB.E3.81.A8.E3.82.AB.E3.83.A9.E3.83.A0">テーブルとカラム</h1><h2 id="h2-admins.20.E7.AE.A1.E7.90.86.E8.80.85">admins 管理者</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>approve</td><td>承認</td><td>integer</td><td>0</td><td> </td><td> </td><td>1で承認済</td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AdminModel">AdminModel</a>\r
-</li></ul><h2 id="h2-artists.20.E7.B5.B5.E5.B8.AB">artists 絵師</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>email</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>homepage_url</td><td>ホームページURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>api_url</td><td>素材配布APIのURL</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>default_lisence_id</td><td>省略時のライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>crowled_at</td><td>素材配布APIの最新呼び出し時刻</td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>author_id</td><td>作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ArtistModel">ArtistModel</a>\r
-</li></ul><h2 id="h2-authors.20.E4.BD.9C.E5.AE.B6">authors 作家</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ペンネーム</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>email</td><td>メールアドレス</td><td>string</td><td>  </td><td>FALSE</td><td> </td><td></td></tr><tr><td>encrypted_password</td><td></td><td>string</td><td> </td><td>FALSE</td><td>128</td><td></td></tr><tr><td>reset_password_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>reset_password_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>remember_created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>sign_in_count</td><td></td><td>integer</td><td>0</td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>current_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>last_sign_in_ip</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>authentication_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_token</td><td></td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmed_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>confirmation_sent_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AuthorModel">AuthorModel</a>\r
-</li></ul><h2 id="h2-balloon_templates.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">balloon_templates フキダシ枠テンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>speach_balloon_id</td><td>フキダシテンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_width</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>min_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>max_height</td><td>サイズ切り替えしきい値</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BallonTemplateModel">BallonTemplateModel</a>\r
-</li></ul><h2 id="h2-balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7">balloons フキダシ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネルid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレート種id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>system_picture_id</td><td>フキダシ素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail</td><td>尻尾の向き</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size</td><td>サイズのバリエーション</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>表示幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>表示高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonModel">BalloonModel</a>\r
-</li></ul><h2 id="h2-comics.20.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF">comics コミック</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>title</td><td>作品名</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅デフォルト値</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さデフォルト値</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>author_id</td><td>作者の作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ComicModel">ComicModel</a>\r
-</li></ul><h2 id="h2-common_lisences.20.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">common_lisences コモンライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisenceModel">CommonLisenceModel</a>\r
-</li></ul><h2 id="h2-lisences.20.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">lisences ライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/LisenceModel">LisenceModel</a>\r
-</li></ul><h2 id="h2-original_lisences.20.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">original_lisences オリジナルライセンス</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>artist_id</td><td>ライセンス策定者 絵師id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>lisence_id</td><td>ライセンスid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>name</td><td>ライセンス名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>url</td><td>条項ページURL</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_by</td><td>クリエイティブコモンズBYフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_sa</td><td>クリエイティブコモンズSAフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nd</td><td>クリエイティブコモンズNDフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>cc_nc</td><td>クリエイティブコモンズNCフラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_resize</td><td>サイズ変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_flip</td><td>反転不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>keep_aspect_ratio</td><td>縦横比変更不可フラグ</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisenceModel">OriginalLisenceModel</a>\r
-</li></ul><h2 id="h2-original_pictures.20.E5.8E.9F.E7.94.BB">original_pictures 原画</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>\r
-</li></ul><h2 id="h2-system_pictures.20.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E7.94.BB.E5.83.8F">system_pictures システム画像</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SystemPictureModel">SystemPictureModel</a>\r
-</li></ul><h2 id="h2-panel_pictures.20.E3.82.B3.E3.83.9E.E7.B5.B5">panel_pictures コマ絵</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>panel_id</td><td>所属パネル</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>素材id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>link</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>z</td><td>表示順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>コマ絵の幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマ絵の高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>flipv</td><td>垂直反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>fliph</td><td>水平反転</td><td>integer</td><td>0</td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a>\r
-</li></ul><h2 id="h2-panels.20.E3.82.B3.E3.83.9E">panels コマ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>comic_id</td><td>所属コミック</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>resource_picture_id</td><td>背景画像 素材id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>width</td><td>コマの幅</td><td>integer</td><td>200</td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>コマの高さ</td><td>integer</td><td>80</td><td>FALSE</td><td> </td><td></td></tr><tr><td>border</td><td>コマの枠線の太さ</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>t</td><td>コマ番号</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>author_id</td><td>コマの投稿者 作家id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelModel">PanelModel</a>\r
-</li></ul><h2 id="h2-resource_pictures.20.E7.B4.A0.E6.9D.90">resource_pictures 素材</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>ext</td><td>画像フォーマット</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅ピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さピクセル数</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>filesize</td><td>画像サイズ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>artist_id</td><td>投稿者 絵師id</td><td>integer</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>lisence_id</td><td>付与ライセンスid</td><td>integer</td><td> </td><td> </td><td> </td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPicture">OriginalPicture</a>のコピー 変更不可</td></tr><tr><td>original_picture_id</td><td>原画id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>\r
-</li></ul><h2 id="h2-speach_balloons.20.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_balloons フキダシテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>name</td><td>フキダシ名</td><td>string</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>tail_count</td><td>尻尾の向きの数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>size_count</td><td>サイズのバリエーション数</td><td>integer</td><td>1</td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a>\r
-</li></ul><h2 id="h2-speach_templates.20.E3.82.BB.E3.83.AA.E3.83.95.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">speach_templates セリフテンプレート</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_template_id</td><td>フキダシ枠テンプレートid</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplateModel">SpeachTemplateModel</a>\r
-</li></ul><h2 id="h2-speaches.20.E3.82.BB.E3.83.AA.E3.83.95">speaches セリフ</h2><table class="wikitable" border="1"><tbody><tr><td>name</td><td>和名</td><td>type</td><td>default</td><td>null</td><td>limit</td><td>note</td></tr><tr><td>balloon_id</td><td>フキダシ枠id</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>content</td><td>台詞</td><td>string</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>x</td><td>表示開始位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>y</td><td>表示開始位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr><tr><td>width</td><td>幅</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>height</td><td>高さ</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td></td></tr><tr><td>created_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr><tr><td>updated_at</td><td></td><td>datetime</td><td> </td><td> </td><td> </td><td></td></tr></tbody></table><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachModel">SpeachModel</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons">\r
-    <title>BundledSpeachBalloons</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons</link>\r
-    <dc:identifier>BundledSpeachBalloons</dc:identifier>\r
-    <dc:date>2012-01-14T09:23:10+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 標準フキダシ\r
- * ベクターなし\r
-   * ベクター式のプログラムは実装されておらず、テンプレートのみで行う。\r
- * 楕円\r
-[[embed(http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/fukiMoon1.gif)]]\r
- * 雲\r
-[[embed(http://sourceforge.]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E6.A8.99.E6.BA.96.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7">標準フキダシ</h1><ul><li>ベクターなし\r
-<ul><li>ベクター式のプログラムは実装されておらず、テンプレートのみで行う。\r
-</li></ul></li><li>楕円\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/fukiMoon1.gif" alt="fukiMoon1.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2ffukiMoon1.gif-1" title="fukiMoon1.gif" class="embed-image"><p>\r
-</p><ul><li>雲\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/omoiFuki1.gif" alt="omoiFuki1.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fomoiFuki1.gif-1" title="omoiFuki1.gif" class="embed-image"><p>\r
-</p><ul><li>角丸\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/bln1.png" alt="bln1.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fbln1.png-1" title="bln1.png" class="embed-image"><p>\r
-</p><ul><li>カギ\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/hook.png" alt="hook.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fhook.png-1" title="hook.png" class="embed-image"><p>\r
-</p><ul><li>プレーン\r
-</li><li>ボックス\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/square4.gif" alt="square4.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2fsquare4.gif-1" title="square4.gif" class="embed-image"><p>\r
-</p><ul><li>ギザ細\r
-</li><li>ギザ粗\r
-</li></ul><img src="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons/attach/togeFuki.gif" alt="togeFuki.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fBundledSpeachBalloons2fattach2ftogeFuki.gif-1" title="togeFuki.gif" class="embed-image"><p>\r
-</p><ul><li>鳥の巣\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AppendixList">\r
-    <title>AppendixList</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AppendixList</link>\r
-    <dc:identifier>AppendixList</dc:identifier>\r
-    <dc:date>2012-01-14T08:55:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= おまけ\r
- * BundledPictures\r
- * BundledSpeachBalloons\r
- * BundledLisences\r
-\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.81.8A.E3.81.BE.E3.81.91">おまけ</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures">BundledPictures</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledSpeachBalloons">BundledSpeachBalloons</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/BundledLisences">BundledLisences</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi">\r
-    <title>AboutKinichi</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi</link>\r
-    <dc:identifier>AboutKinichi</dc:identifier>\r
-\r
-    <dc:date>2012-01-12T08:41:56+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= キンイチ\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/1555.gif)]]\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/bac.png)]]\r
-[[Embed(http://sourcefo]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AD.E3.83.B3.E3.82.A4.E3.83.81">キンイチ</h1><img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/1555.gif" alt="1555.gif" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2f1555.gif-1" title="1555.gif" class="embed-image"><p>\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/bac.png" alt="bac.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fbac.png-1" title="bac.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/kijck.png" alt="kijck.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fkijck.png-1" title="kijck.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi/attach/ccc.png" alt="ccc.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutKinichi2fattach2fccc.png-1" title="ccc.png" class="embed-image">\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/BundledPictures">\r
-    <title>BundledPictures</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/BundledPictures</link>\r
-    <dc:identifier>BundledPictures</dc:identifier>\r
-    <dc:date>2012-01-12T08:35:43+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= おまけ素材\r
- * AboutPenjiro\r
- * AboutKinichi]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.8A.E3.81.BE.E3.81.91.E7.B4.A0.E6.9D.90">おまけ素材</h1><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro">AboutPenjiro</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi">AboutKinichi</a></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro">\r
-    <title>AboutPenjiro</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro</link>\r
-\r
-    <dc:identifier>AboutPenjiro</dc:identifier>\r
-    <dc:date>2012-01-12T08:35:00+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ペン次郎\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/129.png)]]\r
-[[Embed(http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/ge.png)]]\r
-[[Embed(http://sourceforg]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.9A.E3.83.B3.E6.AC.A1.E9.83.8E">ペン次郎</h1><img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/129.png" alt="129.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2f129.png-1" title="129.png" class="embed-image"><p>\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/ge.png" alt="ge.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2fge.png-1" title="ge.png" class="embed-image">\r
-<img src="http://sourceforge.jp/projects/pettanr/wiki/AboutPenjiro/attach/up.png" alt="up.png" id="emb-http:2f2fsourceforge.jp2fprojects2fpettanr2fwiki2fAboutPenjiro2fattach2fup.png-1" title="up.png" class="embed-image"></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">\r
-    <title>HtmlAndCss2</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2</link>\r
-    <dc:identifier>HtmlAndCss2</dc:identifier>\r
-    <dc:date>2012-01-10T01:12:37+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= Html + css2.1\r
-ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.[[BR]]\r
-しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-\r
-== マンガの表示に使用する css プロパティ\r
- * overflow:hidden\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Html.20.2B.20css2.1">Html + css2.1</h1><p>ぺったんR は、html4.01 + css2.1 をサポートするブラウザで作者の意図したとおりのコンテンツの表示を目指す.<br />\r
-しかし、これは最低限の環境であるため、ぺったんR が用意する便利でパワフルな機能の恩恵のすべてを必ずしも享けられるわけではない.\r
-</p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.20css.20.E3.83.97.E3.83.AD.E3.83.91.E3.83.86.E3.82.A3">マンガの表示に使用する css プロパティ</h2><ul><li>overflow:hidden\r
-<ul><li>コマの外にはみ出してしまう部分を隠す.コマの枠となる div に指定.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_001.html</a>\r
-</li></ul></li><li>position:absolute, left, top\r
-<ul><li>コミック要素(画像や吹きだし)の配置に使用.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_property.html#position</a>\r
-</li></ul></li><li>z-index\r
-<ul><li>html要素の順を無視して、コミック要素の重ね順を変更するときに使用.\r
-</li><li>html要素は意味順(時系列順)に並ぶが、コミックでは演出によって、最後に起こったことが奥に行くことも手前に来ることもある.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_position_003.html</a>\r
-</li></ul></li><li>display:table, display:teble-cell\r
-<ul><li>吹きだし内テキストの上下中央配置に使用を考えたが、、、ぺったんでは、table 要素を使用していた.\r
-</li><li><a href="http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html" class="external" rel="nofollow">http://www5e.biglobe.ne.jp/~access_r/hp/css/css_look_003.html</a>\r
-</li></ul></li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><table class="wikitable" border="1"><tbody><tr><td>プロパティ</td><td>ie</td><td>NN</td><td>firefox</td><td>safari</td><td>chrome</td><td>opera</td></tr><tr><td>overflow:hidden</td><td>5+</td><td>6+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>position:absolute, top, left</td><td>position&amp;top:4+, left:5+</td><td>4+</td><td>1+</td><td>?</td><td>1+</td><td>6+</td></tr><tr><td>z-index</td><td>4+</td><td>4+</td><td>1+</td><td>4+</td><td>1+</td><td>6+</td></tr><tr><td>display:table,table-cell</td><td>8+</td><td>6+</td><td>2+</td><td>2+</td><td>1+</td><td>9+</td></tr></tbody></table><h3 id="h3-.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E5.86.85.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.81.AE.E4.B8.8A.E4.B8.8B.E4.B8.AD.E5.A4.AE.E9.85.8D.E7.BD.AE">吹きだし内テキストの上下中央配置</h3><p>display:table, display:table-cell は、吹きだし内のテキストの上下中央配置に使用が検討されるが...<br />\r
-ie7 以下については、条件付コメントで、tableタグを使用.\r
-</p><p>html中\r
-<pre>&lt;!--[if lte IE 7]&gt;&lt;a href=&quot;#&quot;&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]--&gt;\r
- &lt;span&gt;Hello&lt;/span&gt;\r
-&lt;!--[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/a&gt;&lt;![endif]--&gt;\r
-</pre></p><p>xsl中で使うと\r
-<pre>&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
- &lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;\r
-&lt;xsl:comment&gt;&lt;![CDATA[[if lte IE 7]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;![endif]]]&gt;&lt;/xsl:comment&gt;\r
-</pre></p><p>また、firefox3.5 について、display:table 周りのバグについて報告されている.\r
-</p><blockquote class="citation"><p>Project IE: Firefox 3.5 の display: table;(table-row; table-cell;) 関連の挙動について<br />\r
-<a href="http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html" class="external" rel="nofollow">http://ie-style.blogspot.com/2009/08/firefox-35-display-tabletable-row-table.html</a><br />\r
-CSSで display: table-cell; を指定してマルチカラムレイアウトを行っている場合に Firefox 3.5 だとまれにカラム落ちしてしまうという現象が起きてしまいます。\r
-</p></blockquote><p>記事によると、display:table-cell に対して、display:table でなく、display:table-row を使っておくのがいいそうだ.</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LocalWiki">\r
-    <title>LocalWiki</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LocalWiki</link>\r
-    <dc:identifier>LocalWiki</dc:identifier>\r
-    <dc:date>2012-01-10T01:06:42+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ローカルでの wiki の閲覧 と Wiki のバックアップ\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png)]]\r
-\r
-== ネットが無い環境でも wiki を見る\r
-\r
-=== 動作確認ブラウザ\r
-ie8, firefox3.6\r
-\r
-=== 用意\r
- * clientJs.git を落として、client]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.83.AD.E3.83.BC.E3.82.AB.E3.83.AB.E3.81.A7.E3.81.AE.20wiki.20.E3.81.AE.E9.96.B2.E8.A6.A7.20.E3.81.A8.20Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">ローカルでの wiki の閲覧 と Wiki のバックアップ</h1><img src="http://static.sourceforge.jp/thumb/g/2/980/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9802f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-</p><h2 id="h2-.E3.83.8D.E3.83.83.E3.83.88.E3.81.8C.E7.84.A1.E3.81.84.E7.92.B0.E5.A2.83.E3.81.A7.E3.82.82.20wiki.20.E3.82.92.E8.A6.8B.E3.82.8B">ネットが無い環境でも wiki を見る</h2><h3 id="h3-.E5.8B.95.E4.BD.9C.E7.A2.BA.E8.AA.8D.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">動作確認ブラウザ</h3><p>ie8, firefox3.6\r
-</p><h3 id="h3-.E7.94.A8.E6.84.8F">用意</h3><ul><li>clientJs.git を落として、clientJs/0.3.0/wiki/wiki.xml をブラウザで開く.但し、wiki.xml が最新でない場合に注意!\r
-</li><li>または、以下を見て必要最小限のファイルを DL して配置.\r
-</li></ul><p>公開フィード一覧にある <a href="http://sourceforge.jp/projects/pettanr/feeds/">http://sourceforge.jp/projects/pettanr/feeds/</a>\r
-wiki 全文 をDLして、wiki.xml という名前で保存. <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a>\r
-</p><p>.xml の 2行目に .xsl へのリンクを追加.\r
-<pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;\r
-&lt;?xml-stylesheet type=&quot;text/xsl&quot; href=&quot;wiki.xsl&quot;?&gt;\r
-</pre></p><p>さらに、以下のファイル を DL.\r
-</p><ul><li>wiki/wiki.xsl\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.xsl" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.xsl</a>\r
-</li></ul></li><li>wiki/wiki.css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.css</a>\r
-</li></ul></li><li>wiki/wiki.js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/wiki/wiki.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/wiki/wiki.js</a>\r
-</li></ul></li><li>common.css pettanR 共通 css\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.css" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.css</a>\r
-</li></ul></li><li>common.css pettanR 共通 js\r
-<ul><li><a href="http://pettanr.sourceforge.jp/common.js" class="external" rel="nofollow">http://pettanr.sourceforge.jp/common.js</a>\r
-</li></ul></li></ul><p>以下のように配置する.\r
-</p><ul><li>common.css\r
-</li><li>common.js\r
-</li><li>wiki フォルダ\r
-<ul><li>wiki.xml\r
-</li><li>wiki.xsl\r
-</li><li>wiki.css\r
-</li><li>wiki.js\r
-</li></ul></li></ul><h3 id="h3-.E6.B3.A8.E6.84.8F">注意</h3><p>ブラウザは、Firefox と IE で確認. 他のブラウザだと、ブラウザが独自の .xsl をあててしまう.<br />\r
-また .xml が web 上にあると、ブラウザが独自の .xsl をあててしまう.<br />\r
-外部のリンクは赤く、wiki の他のページへのリンクは 緑 で表示.<br />\r
-</p><h2 id="h2-Wiki.20.E3.81.AE.E3.83.90.E3.83.83.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97">Wiki のバックアップ</h2><p>wiki 全文配信フィードの <a href="http://sourceforge.jp/projects/pettanr/wiki/!feeds/list">http://sourceforge.jp/projects/pettanr/wiki/!feeds/list</a> を Google リーダーに登録しておく.</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors">\r
-    <title>ForAuthors</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForAuthors</link>\r
-    <dc:identifier>ForAuthors</dc:identifier>\r
-\r
-    <dc:date>2012-01-06T19:53:55+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== 奥行きzと時間軸t\r
-コミックの各コマには奥行きと時間軸があります。\r
-\r
-奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-\r
-時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-\r
-これらをコミック上で正しく]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h2 id="h2-.E5.A5.A5.E8.A1.8C.E3.81.8Dz.E3.81.A8.E6.99.82.E9.96.93.E8.BB.B8t">奥行きzと時間軸t</h2><p>コミックの各コマには奥行きと時間軸があります。\r
-</p><p>奥行きとは、キャラクターの重なり順序とも言いかえることができて、CSS上ではzindexと同じ意味です。\r
-</p><p>時間軸はストーリー上での時間の流れの順序で、読者がフキダシやキャラクターを目で追う順序とも言えます。コマのデータを時間軸順に並べれば、台本を読むのと同じになるイメージです。\r
-</p><p>これらをコミック上で正しく並べるために、奥行きzと時間軸tが用意してあります。奥行きに関してはエディタでビジュアルに操作している限り問題ありません。しかし、コマの外観だけを見て制作すると、時間軸は必ず正しく並ぶというわけではありません。時間軸を意識することで、より違和感のない漫画ができるとぺったんRでは考えています。画像がきれいに表示されない環境や読み上げソフトなどを使った場合は、特に効果があるはずです。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E5.A5.A5.E8.A1.8C.E3.81.8D.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな奥行きデータ作成</h2><p>ページ内で同じzindexを持っては意味がありません。そこでzが重ならないようにデータをユニークに作成する必要があります。\r
-</p><h2 id="h2-.E3.83.A6.E3.83.8B.E3.83.BC.E3.82.AF.E3.81.AA.E6.99.82.E9.96.93.E8.BB.B8.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">ユニークな時間軸データ作成</h2><ul><li>コマ単位でtを順序づけ。\r
-<ul><li>コミック表示など複数のコマが表示される場合は、コマ番号tからのオフセット\r
-</li><li>例えば、コマ1にオブジェクトが4つあるとき、コマ2のtは4から始まる。\r
-</li><li>コマ2に6つのオブジェクトがあるなら、コマ3のtは10から始まる。\r
-</li><li>コマ3に添付されたコマ絵のtが2なら、コマ3のt(オフセット)10+2で12\r
-<ul><li>まぁ、ここはクライアントが好きにしていい話か。別に1-2とか2-3で管理してもいいけど。\r
-</li></ul></li></ul></li><li>tは0から始まる\r
-</li><li>コマpanels内でコマ絵panel_picturesとフキダシ枠speach_balloonのtは重なっちゃだめ。両者は同じレベル。\r
-<ul><li>ただし、フキダシ枠speach_balloonの中にあるセリフspeachesは一つレベルが下。セリフspeachesのtは一つのフキダシ枠speach_balloonの中でユニーク。ほとんどのフキダシにはセリフスペースは一個しかないから、多段フキダシを除けばspeaches.tは常に0。\r
-</li></ul></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">\r
-    <title>XbackendReversibleImage</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage</link>\r
-    <dc:identifier>XbackendReversibleImage</dc:identifier>\r
-    <dc:date>2012-01-06T08:09:10+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クロスバックエンドな反転画像機能\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png)]]\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.[[BR]]\r
-とくにキャラクター画像を左右に反転させたい、という要望だ.[[BR]]\r
-\r
-ぺったんR では、その反転に取り組む.[[BR]]\r
-サーバ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E7.94.BB.E5.83.8F.E6.A9.9F.E8.83.BD">クロスバックエンドな反転画像機能</h1><img src="http://static.sourceforge.jp/thumb/g/2/933/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9332f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-ぺったん運営時から、画像を反転させて使用したい、という要望はあった.<br />\r
-とくにキャラクター画像を左右に反転させたい、という要望だ.<br />\r
-</p><p>ぺったんR では、その反転に取り組む.<br />\r
-サーバー側での反転画像の準備と、ブラウザでのクロスバックエンドな対応、という二段構えだ.<br />\r
-</p><h2 id="h2-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E5.81.B4.E3.81.A7.E3.81.AE.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.8F.8D.E8.BB.A2.E8.A1.A8.E7.A4.BA">ブラウザ側でのクロスバックエンドな反転表示</h2><h3 id="h3-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h3><p>ブラウザのネイティブな反転表示機能(css3)および、ブラウザの独自拡張や Flash 等のプラグインを使用する.<br />\r
-これらの機能をサポートしない、または切っているブラウザは、サーバー側で生成した画像を利用することになる.<br />\r
-ブラウザ側でなるべく画像を用意しサーバーへの負荷を極力抑えます.\r
-</p><h3 id="h3-.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89">使用するバックエンド</h3><h4 id="h4-css3">css3</h4><p>例\r
-<pre>img.img-flip-v { /* 上下反転 */\r
-       transform:              scale( 1, -1);\r
-       -o-transform:           scale( 1, -1);\r
-       -ms-transform:          scale( 1, -1);\r
-       -moz-transform:         scale( 1, -1);\r
-       -webkit-transform:      scale( 1, -1);\r
-}      \r
-img.img-flip-h { /* 左右反転 */\r
-       transform:              scale( -1, 1);\r
-       -o-transform:           scale( -1, 1);\r
-       -ms-transform:          scale( -1, 1);\r
-       -moz-transform:         scale( -1, 1);\r
-       -webkit-transform:      scale( -1, 1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       transform:              scale( -1, -1);\r
-       -o-transform:           scale( -1, -1);\r
-       -ms-transform:          scale( -1, -1);\r
-       -moz-transform:         scale( -1, -1);\r
-       -webkit-transform:      scale( -1, -1);\r
-}\r
-</pre></p><h4 id="h4-VML">VML</h4><p>例\r
-<pre>v\:image.img-flip-v {\r
-       flip:                   y; /* vml */\r
-}\r
-v\:image.img-flip-h {\r
-       flip:                   x; /* vml */\r
-}v\:image.img-flip-vh {\r
-       rotation :              180; /* vml */\r
-}\r
-</pre>ie独自拡張の VML が ie6~8 での反転画像の本命となる.上記のように vml 用の css も使える.(ただし js による css の適用にくせがある.)<br />\r
-VML で表示された画像は、ie6 以下にある透過 png の問題も解消される.(但し ie6 のみ.ie5.5 以下では透過表示が不十分)<br />\r
-</p><blockquote class="citation"><p>Windows版 IE 5以降の VMLレンダラで半透明、透過PNGを表示する<br />\r
-<a href="http://www.minc.ne.jp/~konda/new/png/urawaza04.html" class="external" rel="nofollow">http://www.minc.ne.jp/~konda/new/png/urawaza04.html</a><br />\r
-IE 5 及び 5.5 (5.50.4133.200)の vgx.dll(Microsoft Vector Graphics Rendering(VML))は、Beta バージョンですから 半透明系は、以下の画像の様に擬似半透明表示(ディザリング)されます\r
-</p></blockquote><pre>&lt;!--[if !gte vml 1]&gt;&lt;!--&gt;&lt;img src=&quot;*.png&quot; width=&quot;*&quot; height=&quot;*&quot; alt=&quot;*&quot; /&gt;&lt;!--&lt;![endif]--&gt;\r
-&lt;!--[if gte vml 1]&gt;&lt;v:image src=&quot;*.png&quot; style=&quot;width: *px; height: *px; behavior: url(#default#vml)&quot; alt=&quot;*&quot; /&gt;&lt;![endif]--&gt;\r
-</pre><p>さらに、ActiveX よりも動作が速い(らしい).<br />\r
-但し VML は windows の構成によってはインストールされていない場合があり、必ずしも使えるわけではない.<br />\r
-itozyun の環境のひとつでも VML が使えなかった.nlite で削ってしまったためと思われる.\r
-</p><h3 id="h3-SVG">SVG</h3><p>svg な xml を js で作って data スキームで読み込む。Opera8+ でも画像反転できるかも。Opera9.6 で静的に埋め込んだ以上の html では反転表示ができた。ただし Firefox3.6 Chrome8 では表示できない。<br />\r
-dataスキームになった svg に対しては、画像の url を絶対座標で与える。\r
-svg を html に直接埋め込む方式では、なぜか手元で一度も成功していない。\r
-<pre>&lt;?xml version=&quot;1.0&quot;?&gt;\r
-&lt;!DOCTYPE svg PUBLIC &quot;-//W3C//DTD SVG 1.1//EN&quot; &quot;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&quot;&gt;\r
-&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;\r
-&lt;image x=&quot;0&quot; y=&quot;0&quot; width=&quot;200&quot; height=&quot;200&quot; xlink:href=&quot;1.gif&quot; transform=&quot;scale(-1,1) translate(-200,0)&quot; /&gt;\r
-&lt;/svg&gt;\r
-</pre></p><ul><li><a href="http://software.hixie.ch/utilities/cgi/data/data" class="external" rel="nofollow">http://software.hixie.ch/utilities/cgi/data/data</a>\r
-</li><li>サイトの表示スピードを改善!dataスキームURIを使った画像の埋め込み <a href="http://labs.cybridge.jp/2011/12/data-uri.html" class="external" rel="nofollow">http://labs.cybridge.jp/2011/12/data-uri.html</a>\r
-<ul><li>データスキーム対応ブラウザ \r
-</li><li>Firefox2+\r
-</li><li>Safari\r
-</li><li>Chrome\r
-</li><li>Opera7.2+\r
-</li><li>IE8+\r
-</li></ul></li></ul><pre>&lt;img src=&quot;data:image/svg+xml;charset=utf-8,%3c%3fxml%20version%3d%221.0%22%3f%3e%3c!DOCTYPE%20svg%20PUBLIC%20%22-%2f%2fW3C%2f%2fDTD%20SVG%201.1%2f%2fEN%22%20%22http%3a%2f%2fwww.w3.org%2fGraphics%2fSVG%2f1.1%2fDTD%2fsvg11.dtd%22%3e%3csvg%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%20version%3d%221.1%22%20xmlns%3axlink%3d%22http%3a%2f%2fwww.w3.org%2f1999%2fxlink%22%20width%3d%22200%22%20height%3d%22200%22%3e%3cimage%20x%3d%220%22%20y%3d%220%22%20width%3d%22200%22%20height%3d%22200%22%20xlink%3ahref%3d%22http%3a%2f%2fstatic.sourceforge.jp%2fthumb%2fg%2f2%2f930%2f640x640_0.png%22%20transform%3d%22scale(-1%2c1)%20translate(-200%2c0)%22%20%2f%3e%3c%2fsvg%3e&quot;&gt;\r
-</pre><h4 id="h4-ActiveX">ActiveX</h4><pre>img.img-flip-v { /* 上下反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1, Rotation=2);\r
-}\r
-img.img-flip-h { /* 左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Mirror=1);\r
-}\r
-img.img-flip-vh { /* 上下左右反転 */\r
-       filter:                 progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-       -ms-filter:             progid:DXImageTransform.Microsoft.BasicImage( Rotation=2);\r
-}\r
-</pre><p>ActiveX は、ie6 以下のための pngfix にも使いたいが、反転とAlpha Image Loader を同時に使用することはできない.<br />\r
-ie6では、ActiveX による反転は、png 画像に対しては使用できない.\r
-</p><h4 id="h4-Flash">Flash</h4><p>クロスドメインな画像に対しても、読み込み、反転表示は行える.<br />\r
-なるべく バージョンの古い Flash で用意してサポート範囲を広くしたいが、js と連携する <a href="http://sourceforge.jp/projects/pettanr/wiki/ExternalInterface">ExternalInterface</a> が使えなくなったりと多難かもしれない.\r
-</p><h4 id="h4-Canvas">Canvas</h4><p>同一ドメインの画像のみになるが、画像のピクセルデータを取得し反転しつつ描画することができる.<br />\r
-</p><blockquote class="citation"><p>Canvasによる画像ファイル(img要素)の読み書き<br />\r
-<a href="http://www.programmingmat.jp/webhtml_lab/canvas_image.html" class="external" rel="nofollow">http://www.programmingmat.jp/webhtml_lab/canvas_image.html</a>\r
-</p></blockquote><h4 id="h4-Silverlight">Silverlight</h4><h4 id="h4-.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.82.B5.E3.82.A4.E3.83.89.E7.94.BB.E5.83.8F">サーバーサイド画像</h4><p>サーバー側で反転画像を用する.このサーバ画像へのアクセスを極力減らすのが、X Backend Imageの目的のひとつ.\r
-<pre>picture/001.png\r
-picture/v/001.png\r
-picture/h/001.png\r
-picture/vh/001.png\r
-</pre></p><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h3><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5+5.5</td><td>ie6</td><td>ie7 &amp; 8</td><td>ie9+</td><td>FF</td><td>Safari</td><td>Chrome</td><td>Opera</td></tr><tr><td>CSS3:transform</td><td>×</td><td>×</td><td>×</td><td>○</td><td>3.5+</td><td>3.1+(?)</td><td>1+</td><td>10.5+</td></tr><tr><td>VML</td><td>▲透過pngの表示が汚い</td><td>△</td><td>△環境による</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>Canvas</td><td>×</td><td>×</td><td>×</td><td>○</td><td>1.5+</td><td>1.3+</td><td>1+</td><td>9+</td></tr><tr><td>SVG +DATAスキーム</td><td>×</td><td>×</td><td>×</td><td>?</td><td>?</td><td>?</td><td>?</td><td>8+(?)</td></tr><tr><td>サーバー画像</td><td>△</td><td>△要pngfix</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td><td>○</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc">\r
-    <title>ChangeDoc</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ChangeDoc</link>\r
-\r
-    <dc:identifier>ChangeDoc</dc:identifier>\r
-    <dc:date>2012-01-04T18:19:48+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 改変予告\r
-== モデルの変名\r
-\r
-balloon_templates\r
- * border &rarr; size\r
- * min_width &rarr; \r
- * max_width &rarr; \r
- * min_height &rarr; \r
- * max_height &rarr; \r
-balloons \r
- * border &rarr; size\r
- * zindex &ra]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E6.94.B9.E5.A4.89.E4.BA.88.E5.91.8A">改変予告</h1><h2 id="h2-.E3.83.A2.E3.83.87.E3.83.AB.E3.81.AE.E5.A4.89.E5.90.8D">モデルの変名</h2><p>balloon_templates\r
-</p><ul><li>border → size\r
-</li><li>min_width → \r
-</li><li>max_width → \r
-</li><li>min_height → \r
-</li><li>max_height → \r
-</li></ul><p>balloons \r
-</p><ul><li>border → size\r
-</li><li>zindex → z\r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>comics \r
-</p><ul><li>default_width → width\r
-</li><li>default_height → height\r
-</li></ul><p>original_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li></ul><p>panel_pictures\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>zindex → z\r
-</li><li>v → flipv\r
-</li><li>h → fliph\r
-</li></ul><p>panels\r
-</p><ul><li>width → \r
-</li><li>height → \r
-</li><li>seqno → t\r
-</li></ul><p>speach_balloons\r
-</p><ul><li>tail_limit → tail_count\r
-</li><li>border_limit → size_count\r
-</li></ul><p>speach_templates\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>speaches\r
-</p><ul><li>top_offset → y\r
-</li><li>left_offset → x\r
-</li><li>width → \r
-</li><li>height → \r
-</li></ul><p>balloons \r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>speaches\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>panels\r
-<table class="wikitable" border="1"><tbody><tr><td>x</td><td>表示位置x</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>y</td><td>表示位置y</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr><tr><td>z</td><td>表示優先順位</td><td>integer</td><td> </td><td>FALSE</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:将来の拡張に備えるため\r
-</p><p>panel_pictures\r
-<table class="wikitable" border="1"><tbody><tr><td>url</td><td>リンク</td><td>string</td><td> </td><td> </td><td>200</td><td>参照するページをリンクできる</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>時間軸 順序</td><td>integer</td><td>1</td><td>false</td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ストーリー上の順序も品質に関わるため\r
-</p><p>lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>common_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>original_lisences\r
-<table class="wikitable" border="1"><tbody><tr><td>no_convert</td><td>フォーマット・色合い変換の禁止</td><td>integer</td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table></p><p>追加理由:ie6がpng透過できないためgif変換の必要ができたため\r
-</p><p>comics\r
-<table class="wikitable" border="1"><tbody><tr><td>visible</td><td>公開フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>可視範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr><tr><td>editable</td><td>編集フラグ</td><td>integer</td><td>0</td><td>false</td><td> </td><td>許可範囲 0:本人のみ 1:友人まで 2:ユーザまで 3:誰でも</td></tr></tbody></table></p><p>追加理由:本家から取り込んでなかった\r
-</p><p>speach_balloons\r
-<table class="wikitable" border="1"><tbody><tr><td>t</td><td>表示順</td><td>integer</td><td>1</td><td>false</td><td> </td><td>ファイルエクスプローラーなどで</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema">\r
-    <title>DatabaseSchema</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/DatabaseSchema</link>\r
-    <dc:identifier>DatabaseSchema</dc:identifier>\r
-    <dc:date>2012-01-04T18:05:04+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= 定義\r
-超やっつけだけど、無いよりはマシか。\r
-\r
-{{{\r
-ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,        ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E5.AE.9A.E7.BE.A9">定義</h1><p>超やっつけだけど、無いよりはマシか。\r
-</p><pre>ActiveRecord::Schema.define(:version =&gt; 20120102071851) do\r
-\r
-  create_table &quot;admins&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;admins&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_admins_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_admins_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;email&quot;], :name =&gt; &quot;index_admins_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;admins&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_admins_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;artists&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;email&quot;\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;homepage_url&quot;\r
-    t.string   &quot;api_url&quot;\r
-    t.integer  &quot;default_lisence_id&quot;\r
-    t.datetime &quot;crowled_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-    t.integer  &quot;author_id&quot;\r
-  end\r
-\r
-  create_table &quot;authors&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;\r
-    t.string   &quot;email&quot;,                                 :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;encrypted_password&quot;,     :limit =&gt; 128, :default =&gt; &quot;&quot;, :null =&gt; false\r
-    t.string   &quot;reset_password_token&quot;\r
-    t.datetime &quot;reset_password_sent_at&quot;\r
-    t.datetime &quot;remember_created_at&quot;\r
-    t.integer  &quot;sign_in_count&quot;,                         :default =&gt; 0\r
-    t.datetime &quot;current_sign_in_at&quot;\r
-    t.datetime &quot;last_sign_in_at&quot;\r
-    t.string   &quot;current_sign_in_ip&quot;\r
-    t.string   &quot;last_sign_in_ip&quot;\r
-    t.string   &quot;authentication_token&quot;\r
-    t.string   &quot;confirmation_token&quot;\r
-    t.datetime &quot;confirmed_at&quot;\r
-    t.datetime &quot;confirmation_sent_at&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;authors&quot;, [&quot;authentication_token&quot;], :name =&gt; &quot;index_authors_on_authentication_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;confirmation_token&quot;], :name =&gt; &quot;index_authors_on_confirmation_token&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;email&quot;], :name =&gt; &quot;index_authors_on_email&quot;, :unique =&gt; true\r
-  add_index &quot;authors&quot;, [&quot;reset_password_token&quot;], :name =&gt; &quot;index_authors_on_reset_password_token&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;balloon_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;speach_balloon_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;tail&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,              :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;min_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_width&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;min_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;max_height&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;, &quot;tail&quot;, &quot;size&quot;], :name =&gt; &quot;balloon_templates_idts&quot;, :unique =&gt; true\r
-  add_index &quot;balloon_templates&quot;, [&quot;speach_balloon_id&quot;], :name =&gt; &quot;index_balloon_templates_on_speach_balloon_id&quot;\r
-\r
-  create_table &quot;balloons&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                           :null =&gt; false\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;system_picture_id&quot;,                  :null =&gt; false\r
-    t.integer  &quot;tail&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size&quot;,                :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;balloon_idt&quot;, :unique =&gt; true\r
-  add_index &quot;balloons&quot;, [&quot;panel_id&quot;], :name =&gt; &quot;index_balloons_on_panel_id&quot;\r
-\r
-  create_table &quot;comics&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;title&quot;\r
-    t.integer  &quot;width&quot;,      :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;visible&quot;,    :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;editable&quot;,   :default =&gt; 0,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;comics&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_comics_on_author_id&quot;\r
-\r
-  create_table &quot;common_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;lisences&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;lisences&quot;, [&quot;url&quot;], :name =&gt; &quot;index_lisences_on_url&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;original_lisences&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;artist_id&quot;,                        :null =&gt; false\r
-    t.integer  &quot;lisence_id&quot;,                       :null =&gt; false\r
-    t.string   &quot;name&quot;,                             :null =&gt; false\r
-    t.string   &quot;url&quot;,                              :null =&gt; false\r
-    t.integer  &quot;cc_by&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_sa&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nd&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;cc_nc&quot;,             :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_resize&quot;,         :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_flip&quot;,           :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;no_convert&quot;,        :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;keep_aspect_ratio&quot;, :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;original_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;original_pictures&quot;, [&quot;artist_id&quot;], :name =&gt; &quot;index_original_pictures_on_artist_id&quot;\r
-\r
-  create_table &quot;panel_pictures&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;panel_id&quot;,                                          :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;,                               :null =&gt; false\r
-    t.string   &quot;url&quot;,                 :limit =&gt; 200\r
-    t.integer  &quot;x&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                                 :null =&gt; false\r
-    t.integer  &quot;t&quot;,                                  :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                                             :null =&gt; false\r
-    t.integer  &quot;height&quot;,                                            :null =&gt; false\r
-    t.integer  &quot;flipv&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.integer  &quot;fliph&quot;,                              :default =&gt; 0, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panel_pictures&quot;, [&quot;panel_id&quot;, &quot;t&quot;], :name =&gt; &quot;panel_pictures_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;panels&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;comic_id&quot;,                             :null =&gt; false\r
-    t.integer  &quot;resource_picture_id&quot;\r
-    t.integer  &quot;width&quot;,               :default =&gt; 200, :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :default =&gt; 80,  :null =&gt; false\r
-    t.integer  &quot;border&quot;,              :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;z&quot;,                                    :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1,   :null =&gt; false\r
-    t.integer  &quot;author_id&quot;\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;panels&quot;, [&quot;author_id&quot;], :name =&gt; &quot;index_panels_on_author_id&quot;\r
-  add_index &quot;panels&quot;, [&quot;comic_id&quot;, &quot;t&quot;], :name =&gt; &quot;panels_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;resource_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,                 :null =&gt; false\r
-    t.integer  &quot;width&quot;,               :null =&gt; false\r
-    t.integer  &quot;height&quot;,              :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,            :null =&gt; false\r
-    t.integer  &quot;artist_id&quot;\r
-    t.integer  &quot;lisence_id&quot;\r
-    t.integer  &quot;original_picture_id&quot;, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  create_table &quot;speach_balloons&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;name&quot;,                      :null =&gt; false\r
-    t.integer  &quot;tail_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;size_count&quot;, :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_balloons&quot;, [&quot;t&quot;], :name =&gt; &quot;speach_balloons_t&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speach_templates&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_template_id&quot;,                :null =&gt; false\r
-    t.integer  &quot;x&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;y&quot;,                                  :null =&gt; false\r
-    t.integer  &quot;t&quot;,                   :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                              :null =&gt; false\r
-    t.integer  &quot;height&quot;,                             :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speach_templates&quot;, [&quot;balloon_template_id&quot;, &quot;t&quot;], :name =&gt; &quot;speach_templates_idt&quot;, :unique =&gt; true\r
-\r
-  create_table &quot;speaches&quot;, :force =&gt; true do |t|\r
-    t.integer  &quot;balloon_id&quot;,                :null =&gt; false\r
-    t.string   &quot;content&quot;\r
-    t.integer  &quot;x&quot;,                         :null =&gt; false\r
-    t.integer  &quot;y&quot;,                         :null =&gt; false\r
-    t.integer  &quot;t&quot;,          :default =&gt; 1, :null =&gt; false\r
-    t.integer  &quot;width&quot;,                     :null =&gt; false\r
-    t.integer  &quot;height&quot;,                    :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;, &quot;t&quot;], :name =&gt; &quot;speaches_bt&quot;, :unique =&gt; true\r
-  add_index &quot;speaches&quot;, [&quot;balloon_id&quot;], :name =&gt; &quot;index_speaches_on_balloon_id&quot;\r
-\r
-  create_table &quot;system_pictures&quot;, :force =&gt; true do |t|\r
-    t.string   &quot;ext&quot;,        :null =&gt; false\r
-    t.integer  &quot;width&quot;,      :null =&gt; false\r
-    t.integer  &quot;height&quot;,     :null =&gt; false\r
-    t.integer  &quot;filesize&quot;,   :null =&gt; false\r
-    t.datetime &quot;created_at&quot;\r
-    t.datetime &quot;updated_at&quot;\r
-  end\r
-end\r
-\r
-</pre>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController">\r
-    <title>SpeachBalloonsController</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonsController</link>\r
-    <dc:identifier>SpeachBalloonsController</dc:identifier>\r
-    <dc:date>2012-01-04T07:58:05+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= フキダシテンプレート\r
-コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-\r
- * 作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
- * 管理者がフキダシの基礎情報をメンテナンスする。\r
-\r
-メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があ]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>コマ上に添付するためのフキダシ見本と、それを管理する処理。主に二つの使われ方をする。\r
-</p><ul><li>作家が使うエディタ上のフキダシエクスプローラーで見本として表示するための情報をjsonで返す。\r
-</li><li>管理者がフキダシの基礎情報をメンテナンスする。\r
-</li></ul><p>メンテナンスはjson経由で行うことが多い。枠テンプレートとセリフテンプレートのすべての情報を同時に更新する必要があるためである。詳しくは<a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a>。\r
-</p><p>参考:<a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloonModel">SpeachBalloonModel</a>\r
-</p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>作家/管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>○</td></tr></tbody></table></p><p>主にクライアントのエディタがフキダシリストを得るために使う。全レコードがt順で返る。\r
-</p><p>html形式では、管理者がメンテナンスのために閲覧する。重要なカラムの情報が一覧で表示されるほか、showへの誘導と、削除のボタンが配置される。\r
-</p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がメンテナンスのために閲覧する機能。\r
-</p><h2 id="h2-create">create</h2><p>作成\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>json形式で</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを追加するための機能。\r
-</p><p>jsonデータを元にフキダシテンプレートを作成する。データ作成方法は<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a>を見る。\r
-</p><h2 id="h2-update">update</h2><p>更新\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>×</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>管理者がフキダシを修正するための機能。\r
-</p><p>指定されたidのフキダシテンプレートを、jsonデータを元に更新する。データ作成方法は<a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a>を見る。\r
-</p><h3 id="h3-.E4.BE.8B.E5.A4.96">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p><h2 id="h2-destroy">destroy</h2><p>削除\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr><tr><td>html</td><td>○</td></tr><tr><td>json</td><td>○</td></tr><tr><td>jsonp</td><td>×</td></tr></tbody></table></p><p>指定されたidのフキダシテンプレートを削除する。フキダシテンプレートだけでなく、枠テンプレートとセリフテンプレートも同時に削除される。\r
-</p><h3 id="h3-.E4.BE.8B.E5.A4.96-2">例外</h3><p>権限がないアカウントで要求された場合は、処理を中断し、サインインを促すページに遷移する。\r
-指定されたidが存在しない場合は、404エラーコードが返る。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">\r
-    <title>PanelPictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel</link>\r
-    <dc:identifier>PanelPictureModel</dc:identifier>\r
-\r
-    <dc:date>2012-01-03T12:34:36+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関するデータ。\r
-\r
-参考:PanelPicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-コマ絵は常にパネル経由で作成されるため、PanelsControllerからjsonフォーマットで送信する。\r
-\r
-コマ絵は素材のコピーなので、素材ResourcePictureModelのデータを元に作成する。行の新規作成時はデフォルト値と]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関するデータ。\r
-</p><p>参考:<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">PanelPicturesController</a>\r
-</p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2><p>コマ絵は常にパネル経由で作成されるため、<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelsController">PanelsController</a>からjsonフォーマットで送信する。\r
-</p><p>コマ絵は素材のコピーなので、素材<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">ResourcePictureModel</a>のデータを元に作成する。行の新規作成時はデフォルト値として、以下のように値をコピーすること。\r
-</p><table class="wikitable" border="1"><tbody><tr><td><a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPicture">PanelPicture</a></td><td><a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicture">ResourcePicture</a></td></tr><tr><td>width</td><td>width</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel">\r
-    <title>ResourcePictureModel</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ResourcePictureModel</link>\r
-    <dc:identifier>ResourcePictureModel</dc:identifier>\r
-    <dc:date>2012-01-03T11:56:43+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 素材\r
-絵師から提供された原画OriginalPictureModelをコマPanel上で扱いやすいように整えた画像に関するデータ。\r
-\r
-参考:ResourcePicturesController\r
-\r
-== カラム\r
-\r
-== 作成手順\r
-]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.B4.A0.E6.9D.90">素材</h1><p>絵師から提供された原画<a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalPictureModel">OriginalPictureModel</a>をコマPanel上で扱いやすいように整えた画像に関するデータ。\r
-</p><p>参考:<a href="http://sourceforge.jp/projects/pettanr/wiki/ResourcePicturesController">ResourcePicturesController</a>\r
-</p><h2 id="h2-.E3.82.AB.E3.83.A9.E3.83.A0">カラム</h2><h2 id="h2-.E4.BD.9C.E6.88.90.E6.89.8B.E9.A0.86">作成手順</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController">\r
-    <title>PanelPicturesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PanelPicturesController</link>\r
-\r
-    <dc:identifier>PanelPicturesController</dc:identifier>\r
-    <dc:date>2012-01-03T11:39:51+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= コマ絵\r
-コマ上に添付された素材に関する処理。\r
-\r
-コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-\r
-参考:PanelPictureModel\r
-\r
-== index\r
-一覧形式\r
-||パラメータ||なし||\r
-||権限||管理者||\r
-\r
-== show\r
-単票形式\r
-||パラメータ||id||\r
-||権限|]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.B3.E3.83.9E.E7.B5.B5">コマ絵</h1><p>コマ上に添付された素材に関する処理。\r
-</p><p>コマ絵の操作はパネル経由でしか許可されていないので、処理することはない。かろうじて管理者がレコード値を閲覧できるのみである。\r
-</p><p>参考:<a href="http://sourceforge.jp/projects/pettanr/wiki/PanelPictureModel">PanelPictureModel</a>\r
-</p><h2 id="h2-index">index</h2><p>一覧形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>なし</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p><h2 id="h2-show">show</h2><p>単票形式\r
-<table class="wikitable" border="1"><tbody><tr><td>パラメータ</td><td>id</td></tr><tr><td>権限</td><td>管理者</td></tr></tbody></table></p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">\r
-    <title>XbackendSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon</link>\r
-    <dc:identifier>XbackendSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-02T01:06:05+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= クロスバックエンドな吹きだし表示機能\r
-\r
-ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.[[BR]]\r
-また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.[[BR]]\r
-\r
-吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.AD.E3.82.B9.E3.83.90.E3.83.83.E3.82.AF.E3.82.A8.E3.83.B3.E3.83.89.E3.81.AA.E5.90.B9.E3.81.8D.E3.81.A0.E3.81.97.E8.A1.A8.E7.A4.BA.E6.A9.9F.E8.83.BD">クロスバックエンドな吹きだし表示機能</h1><p>ぺったんRの吹きだしは、さまざまな尻尾の向きを持つ吹きだし画像を用意します.<br />\r
-また、吹き出しが巨大になったときに、吹きだしの枠線も太ってしまわないように、枠線のバリエーションも複数用意します.<br />\r
-</p><p>吹きだし画像は gif で注意深く用意されるため一枚につき、数キロバイトという軽量なものです.しかしコマの編集時にはユーザーが操作している間にそのすべてのバリエーションを読み込んでしまう事態になります.<br />\r
-また、マンガという表現スタイルを考えると、キャラクター画像一枚に対して、ひとつ程度の吹き出しが登場する、と仮定するという仮定で、ぺったんのページ読み込み時の全画像アクセスのうち、半分を吹きだし画像が締めることになる試算です.<br />\r
-(もちろん、キャラクター画像の方がはるかにファイルサイズが大きくなります.注意深く容量を抑えて作られた場合でも 10KB ~ 20KB という試算です.)<br />\r
-</p><p>このような、吹きだし画像へのアクセスを抑止して、サービスの安定を図るためベクター画像をサポートするブラウザについては、ブラウザ側で吹きだし画像を用意します.\r
-</p><h1 id="h1-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E6.A9.9F.E8.83.BD.E5.AF.BE.E5.BF.9C.E8.A1.A8">ブラウザ機能対応表</h1><table class="wikitable" border="1"><tbody><tr><td>バックエンド</td><td>ie5~8</td><td>ie9+</td><td>FF</td><td>safari</td><td>chrome</td><td>Opera</td></tr><tr><td>VML</td><td>○</td><td>?</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>SVG</td><td>×</td><td>○</td><td>1.5+</td><td>3.0+</td><td>1+</td><td>8+</td></tr></tbody></table>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">\r
-    <title>HowToMakeSpeachBalloon</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon</link>\r
-    <dc:identifier>HowToMakeSpeachBalloon</dc:identifier>\r
-    <dc:date>2012-01-01T01:59:53+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[== フキダシテンプレート\r
-[[Embed(http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png)]]\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そし]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h2><img src="http://static.sourceforge.jp/thumb/g/2/949/640x640_0.png" alt="640x640_0.png" id="emb-http:2f2fstatic.sourceforge.jp2fthumb2fg2f22f9492f640x640_0.png-1" title="640x640_0.png" class="embed-image"><p>\r
-フキダシテンプレートを追加するには尻尾の向きと枠のサイズのバリエーションがいくつになるかを決定しなければなりません。\r
-尻尾のバリエーション数をtail_limit、枠のバリエーション数を_limitとして決定してください。\r
-そして、それらすべての組み合わせの枠テンプレートとテキストテンプレートを用意してください。一つでも欠けると追加できません。\r
-</p><p>例えば、尻尾が上下左右ならtail_limitが4。サイズが大中小ならで_limitが3で、4*3で合計12の枠テンプレートとテキストテンプレートを用意します。\r
-</p><p>→tail ↓Border\r
-<table class="wikitable" border="1"><tbody><tr><td> </td><td>1</td><td>2</td><td>3</td><td>4</td></tr><tr><td>1</td><td>小-上</td><td>小-右</td><td>小-下</td><td>小-左</td></tr><tr><td>2</td><td>中-上</td><td>中-右</td><td>中-下</td><td>中-左</td></tr><tr><td>3</td><td>大-上</td><td>大-右</td><td>大-下</td><td>大-左</td></tr></tbody></table></p><p>フキダシテンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>name</td><td>フキダシの名前</td><td> </td></tr><tr><td>tail_limit</td><td>尻尾のバリエーション数</td><td> </td></tr><tr><td>border_limit</td><td>サイズのバリエーション数</td><td> </td></tr></tbody></table></p><h2 id="h2-.E6.9E.A0.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">枠テンプレート</h2><p>枠は画像で用意します。フキダシ用の画像を用意して素材として投稿します。\r
-各種フキダシ素材を投稿したらIDをメモします。\r
-</p><p>枠テンプレートに必要な項目は以下です。\r
-<table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>resource_picture_id</td><td>フキダシ素材のID</td><td> </td></tr><tr><td>tail</td><td>尻尾の番号</td><td>1から始まりtail_limit-1で終わること</td></tr><tr><td>border</td><td>サイズの番号</td><td>1から始まり_limit-1で終わること</td></tr><tr><td>min_width</td><td>横方向のサイズが小さい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_width</td><td>横方向のサイズが大きい方に切り替わる幅</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>min_height</td><td>縦方向のサイズが小さい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr><tr><td>max_height</td><td>縦方向のサイズが大きい方に切り替わる高さ</td><td>0のとき、切り替えは発生しない</td></tr></tbody></table></p><h2 id="h2-.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">テキストテンプレート</h2><p>枠画像のどの位置にテキストを表示するかを決めて座標をメモします。\r
-</p><table class="wikitable" border="1"><tbody><tr><td>項目名</td><td>意味</td><td>備考</td></tr><tr><td>top_offset</td><td>テキストの表示を開始するx座標</td><td> </td></tr><tr><td>left_offset</td><td>テキストの表示を開始するy座標</td><td> </td></tr><tr><td>width</td><td>テキストの表示幅</td><td> </td></tr><tr><td>height</td><td>テキストの表示高さ</td><td> </td></tr></tbody></table><p>offset と width, height ですが、単位は % になりますか??(itozyun)\r
-</p><h3 id="h3-.E3.83.87.E3.83.BC.E3.82.BF.E4.BD.9C.E6.88.90">データ作成</h3><p>これまでのメモからデータを作成します。データはjsonで作成します。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ClientSide">\r
-    <title>ClientSide</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ClientSide</link>\r
-    <dc:identifier>ClientSide</dc:identifier>\r
-\r
-    <dc:date>2011-12-31T22:34:44+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= クライアント側\r
\r
-ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.[[BR]]\r
-マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。[[BR]]\r
-またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.[[BR]]\r
-\r
-== マンガの閲覧\r
-ぺったんR において、ブラウ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E5.81.B4">クライアント側</h1><div class="indent">\r
-</div><p>ぺったんR におけるユーザーの行動はマンガの閲覧 と マンガの編集に大きく分けられる.<br />\r
-マンガの閲覧がすべてのユーザーに可能であるのに対し、マンガの編集は原則ログインしたユーザーが可能となる。<br />\r
-またログイン以降のユーザーの操作は、javascriptを有効にする必要がある.<br />\r
-</p><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.96.B2.E8.A6.A7">マンガの閲覧</h2><p>ぺったんR において、ブラウザでのマンガ状コンテンツの閲覧のために、ユーザーは Flash も含めて特別なプラグインを必要としない.\r
-</p><h3 id="h3-html.20.2B.20css2.1">html + css2.1</h3><p>ぺったんと、ぺったんを元にする ぺったんRは、マンガ状のコンテンツの表示に css2.1 でレイアウトする.<br />\r
-以上をサポートするブラウザであれば、ぺったん 及び ぺったんR のコンテンツは閲覧ができる.<br />\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/HtmlAndCss2">HtmlAndCss2</a>\r
-</li></ul><h3 id="h3-javascript">javascript</h3><p>ぺったんR で新たに追加された機能や、ぺったんRサーバへの負荷を抑えるため、javascript に加え css3, SVG といった新しいWeb標準が使われる.<br />\r
-これらをサポートしないブラウザも少なくなく、VML, ActiveX, flash といった非Web標準も利用する.<br />\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendReversibleImage">XbackendReversibleImage</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/XbackendSpeachBalloon">XbackendSpeachBalloon</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/PngFix">PngFix</a>\r
-</li></ul><h2 id="h2-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E7.94.BB.E5.83.8F.E3.81.AE.E7.AE.A1.E7.90.86.E3.83.BB.E3.82.B3.E3.83.9E.E3.81.AE.E7.B7.A8.E9.9B.86.E3.83.BB.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E8.A8.AD.E5.AE.9A">コミックの管理・画像の管理・コマの編集・ユーザー設定</h2><p>これらのログインユーザーのための機能は、javascript が前提となる.<br />\r
-画面は Ajax で用意されるため、サーバ側はユーザのデータの管理とクライアントとの通信に専念できる.<br />\r
-</p><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JavascriptEditor">JavascriptEditor</a>\r
-</li><li><a href="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">JsonApi</a>\r
-</li></ul><h2 id="h2-.E5.AF.BE.E5.BF.9C.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6">対応ブラウザ</h2><h3 id="h3-.E3.83.96.E3.83.A9.E3.82.A6.E3.82.B6.E3.82.B7.E3.82.A7.E3.82.A2">ブラウザシェア</h3><p>IE系では、css3 や SVG をサポートしない IE8 以下がまだまだ多く、IE6 でそのシェアは10%近く.ブラウザシェアは国毎にばらつきがあり、お隣の中国・韓国では IE のシェアが多く、IE6 でも 20~30% になる.<br />\r
-</p><blockquote class="citation"><p>今なおブラウザシェア10.1%もあるIE6とどう向き合えばいいのか<br />\r
-<a href="http://weboook.blog22.fc2.com/blog-entry-248.html" class="external" rel="nofollow">http://weboook.blog22.fc2.com/blog-entry-248.html</a>\r
-</p></blockquote><p>javascript を切っているブラウザは 1% ほどらしい.<br />\r
-</p><blockquote class="citation"><p><a href="http://sourceforge.jp/projects/pettanr/wiki/JavaScript">JavaScript</a>をオフにしているブラウザは1%前後。米ヤフー調べ<br />\r
-<a href="http://www.publickey1.jp/blog/10/javascript1.html" class="external" rel="nofollow">http://www.publickey1.jp/blog/10/javascript1.html</a>\r
-</p></blockquote>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PngFix">\r
-    <title>PngFix</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PngFix</link>\r
-    <dc:identifier>PngFix</dc:identifier>\r
-    <dc:date>2011-12-29T16:31:59+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= Internet Exproler 6 以下での PNG 画像の表示について\r
-ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.[[BR]]\r
-このため ぺったん では、png 画像を非推奨としてきた.[[BR]]\r
-ぺったんRでも それを踏襲することは変わりない.[[BR]]\r
-しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバッ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-Internet.20Exproler.206.20.E4.BB.A5.E4.B8.8B.E3.81.A7.E3.81.AE.20PNG.20.E7.94.BB.E5.83.8F.E3.81.AE.E8.A1.A8.E7.A4.BA.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">Internet Exproler 6 以下での PNG 画像の表示について</h1><p>ie6 以下のブラウザでは 透過情報付の png 画像を正しく表示することができない.<br />\r
-このため ぺったん では、png 画像を非推奨としてきた.<br />\r
-ぺったんRでも それを踏襲することは変わりない.<br />\r
-しかし、可能な限り作者の意図したとおりに作品を閲覧してもらうため、クロスバックエンドな png 表示サポートを実施する.<br />\r
-とはいえ、必要なプラグイン等がインストールされていない、機能が無効になっている場合、透過情報は正しく反映されない.<br />\r
-</p><h2 id="h2-.E3.81.AF.E3.81.98.E3.82.81.E3.81.AB">はじめに</h2><h2 id="h2-VML">VML</h2><h2 id="h2-ActiveX.20Alpha.20Image.20Loader">ActiveX Alpha Image Loader</h2><h2 id="h2-Flash">Flash</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters">\r
-    <title>ForWebmasters</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters</link>\r
-\r
-    <dc:identifier>ForWebmasters</dc:identifier>\r
-    <dc:date>2011-12-28T09:07:11+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 管理者向け\r
-\r
-== フキダシテンプレートのメンテナンス\r
- * フキダシテンプレートについて AboutSpeachBalloon\r
- * フキダシテンプレートの追加 HowToMakeSpeachBalloon\r
-\r
-== ライセンスのメンテナンス\r
- * ライセンスについて]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E7.AE.A1.E7.90.86.E8.80.85.E5.90.91.E3.81.91">管理者向け</h1><h2 id="h2-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">フキダシテンプレートのメンテナンス</h2><ul><li>フキダシテンプレートについて <a href="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">AboutSpeachBalloon</a>\r
-</li><li>フキダシテンプレートの追加 <a href="http://sourceforge.jp/projects/pettanr/wiki/HowToMakeSpeachBalloon">HowToMakeSpeachBalloon</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.86.E3.83.8A.E3.83.B3.E3.82.B9">ライセンスのメンテナンス</h2><ul><li>ライセンスについて</li></ul>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon">\r
-    <title>AboutSpeachBalloon</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutSpeachBalloon</link>\r
-    <dc:identifier>AboutSpeachBalloon</dc:identifier>\r
-    <dc:date>2011-12-28T08:57:17+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= フキダシテンプレート\r
-フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-\r
-ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-\r
-しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能で]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88">フキダシテンプレート</h1><p>フキダシとは、線で囲まれた枠の中に文章が書かれたものです。つまり、枠と文章を合わせたものがフキダシとなるわけです。\r
-</p><p>ぺったんでフキダシを作るには、枠の素材をコマに貼り、その上にテキストを貼ります。\r
-</p><p>しかし、このような作り方は操作に手数がかかり、扱いも煩雑になります。漫画はフキダシで絵をしゃべらすことで初めて成立するものです。漫画ツールとしては当たり前の機能ですから、最小限の操作でフキダシを扱えなければ困ります。そこで、ぺったんはオーソドックスなフキダシをテンプレート化して用意しました。もちろんテンプレートは自由に追加できます。\r
-</p><h1 id="h1-.E3.83.95.E3.82.AD.E3.83.80.E3.82.B7.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.81.AE.E6.A7.8B.E6.88.90">フキダシテンプレートの構成</h1><p>フキダシテンプレートは次の三つの階層で構成されています。\r
-</p><ul><li>フキダシテンプレート <a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachBalloon">SpeachBalloon</a>\r
-</li><li>枠テンプレート <a href="http://sourceforge.jp/projects/pettanr/wiki/BalloonTemplate">BalloonTemplate</a>\r
-</li><li>テキストテンプレート <a href="http://sourceforge.jp/projects/pettanr/wiki/SpeachTemplate">SpeachTemplate</a>\r
-</li></ul><p>フキダシは枠とテキストから構成されます。枠テンプレートとテキストテンプレートがそれです。ただし、フキダシには大抵吹き出し口(ぺったんでは尻尾と言います)が付きますから、同じフキダシでもいくつかのバリエーションができます。それをグループ化するのがフキダシテンプレートです。\r
-</p><h2 id="h2-.E6.83.B3.E5.AE.9A.E3.81.99.E3.82.8B.E3.83.90.E3.83.AA.E3.82.A8.E3.83.BC.E3.82.B7.E3.83.A7.E3.83.B3">想定するバリエーション</h2><p>ぺったんでは次の二つのバリエーションを想定しています。\r
-</p><ul><li>尻尾の向き\r
-</li><li>枠のサイズ\r
-</li></ul><p>尻尾の向きはフキダシの使われ方によって変わりますが、上下左右や角の四隅などに付くことが多いでしょうか。このバリエーションが多いほど融通が利くフキダシになります。\r
-</p><p>ぺったんはコマに貼ったフキダシを自由にサイズ調整できますが、フキダシを極端に拡大あるいは縮小すると、枠の画像によっては線が太ってしまったり、かすれてしまうことがあります。枠の画像には適正なサイズが要求されますので、より良いテンプレートはいくつかのサイズのバリエーションを用意する必要があります。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/JsonApi">\r
-    <title>JsonApi</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/JsonApi</link>\r
-    <dc:identifier>JsonApi</dc:identifier>\r
-    <dc:date>2011-12-26T19:13:24+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= JsonAPI\r
-ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-\r
-JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-\r
-APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,G]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-JsonAPI">JsonAPI</h1><p>ぺったんはjsonを利用したAPIに対応している。というよりRailsの仕様に乗っかっている。Rails知ってる人はよまなくていい。\r
-</p><p>JsonAPIを使えば、ブラウザから操作せずとも直接データを操作できる。外部のプログラムからぺったんを楽しめる。\r
-</p><p>APIにはCRUD、つまり、create,read,update,deleteがあり、それぞれがHTTPのPOST,GET,PUT,DELETEに対応しているが、普通のブラウザからはGETしかできないので、手っ取り早くJsonAPIで遊ぶならcurlをインストールすると良い。\r
-</p><p>なお、railsではjsonでのやり取りを次のように規定している。\r
-</p><ul><li>URLの末尾を拡張子のように.jsonする\r
-</li><li>リクエストヘッダはContent-Type: application/jsonとする\r
-</li></ul><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.8F.96.E5.BE.97">jsonデータの取得</h2><p>例えば、ID:2のコマPanelのデータをcurlで取得するには次のようにする。\r
-</p><pre>curl http://hostname/panels/2.json -X GET -H &quot;Content-Type: application/json&quot;\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.8A.95.E7.A8.BF">jsonでの投稿</h2><p>例えば、コミックをcurlで作成するには次のようにする。このとき、作成するためのjsonデータはcomic_create.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X POST -H &quot;Content-Type: application/json&quot; -d @comic_create.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E6.9B.B4.E6.96.B0">jsonでの更新</h2><p>例えば、コミックをcurlで更新するには次のようにする。このとき、更新するためのjsonデータはcomic_update.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X PUT -H &quot;Content-Type: application/json&quot; -d @comic_update.json\r
-</pre><h2 id="h2-json.E3.81.A7.E3.81.AE.E5.89.8A.E9.99.A4">jsonでの削除</h2><p>例えば、コミックをcurlで削除するには次のようにする。このとき、削除するためのjsonデータはcomic_delete.jsonファイルに用意されているものとする。\r
-</p><pre>curl http://hostname/comics.json  -X DELETE -H &quot;Content-Type: application/json&quot; -d @comic_delete.json\r
-</pre><p>※普通に削除するだけならDELETEメソッドだけで削除できる。jsonデータcomic_delete.jsonは必要ないはずだが、誰でも削除できるのはおかしな話なので、大抵の場合は認証がいるだろう。認証に必要なauth_tokenを渡すのだが、auth_tokenについては後述する。\r
-</p><h2 id="h2-json.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">jsonデータの作り方</h2><p>jsonデータがどんなものかはググッてもらうとして、rails風なところを…\r
-</p><p>コミック作成に使ったcomic_create.jsonを例とすると次のようになる。\r
-<pre>{\r
-  &quot;comic&quot;: {\r
-    &quot;title&quot;: &quot;コミック作るテスト&quot;,\r
-    &quot;default_width&quot;: 400,\r
-    &quot;default_height&quot;: 200\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre>comicはコミックのmodel、titleなどはmodelのカラム。モデルの下に必要なカラムをキーにして値を記述する。\r
-</p><p>auth_tokenは認証が必要な操作をする場合に記述する。\r
-</p><h3 id="h3-auth_token">auth_token</h3><p>認証が必要な操作をする場合にはauth_tokenを用意する。auth_tokenはログイン後にプロフィールページを開くと書いてある。今のところは。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E4.BD.9C.E3.82.8A.E6.96.B9">ネストしたデータの作り方</h3><p>コマの投稿など、複数のモデルを一つのトランザクションで更新するような操作はjsonデータも複数のモデルについて記述しなければならない。\r
-</p><p>ネストされている子のデータはモデル名+_attributesをキーとしたハッシュ型の値をペアにして記述する。例えば、コマ絵のモデルpanel_picturesはpanel_pictures_attributesとなる。値側は複数のレコードを含むことが想定されるので、これもハッシュ型とする。こちらのキーは一意であれば何でもよく、値がレコードのデータである。文章じゃよくわからんので、コマ絵panel_pictures一つを含んだコマpanelを作成する場合の実際のデータを示す。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>コマ絵が二枚だと、こんな感じ。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 1,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      },\r
-      &quot;new2&quot;: {\r
-        &quot;width&quot;: 50,\r
-        &quot;height&quot;: 75,\r
-        &quot;resource_picture_id&quot;: 1,\r
-        &quot;top_offset&quot;: 30,\r
-        &quot;left_offset&quot;: 14,\r
-        &quot;zindex&quot;: 2,\r
-        &quot;v&quot;: 0,\r
-        &quot;h&quot;: 0\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><p>キーの&quot;new1&quot;と&quot;new2&quot;は適当な命名なんであるが、こんな要領で列挙していけばまとめて作成できる。\r
-</p><p>では、次にコマ絵だけでなくフキダシとセリフも含むデータを作成してみるが、その前に各モデルの関係を整理しておく。\r
-<pre>panel\r
-  panel_pictures\r
-  balloons\r
-    speaches\r
-</pre>だったね。\r
-<pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;border&quot;: 1,\r
-    &quot;comic_id&quot;: 5,\r
-    &quot;resource_picture_id&quot;: 1,\r
-    &quot;width&quot;: 400,\r
-    &quot;height&quot;: 200,\r
-    &quot;panel_pictures_attributes&quot;: {\r
-      &quot;new1&quot;: {\r
-        &quot;width&quot;: 100,\r
-        &quot;height&quot;: 103,\r
-        &quot;resource_picture_id&quot;: 4,\r
-        &quot;top_offset&quot;: 10,\r
-        &quot;left_offset&quot;: 135,\r
-        &quot;zindex&quot;: 3,\r
-        &quot;v&quot;: 1,\r
-        &quot;h&quot;: 0\r
-      }\r
-    },\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;newf1&quot;: {\r
-        &quot;balloon_template_id&quot;: 1,\r
-        &quot;resource_picture_id&quot;: 2,\r
-        &quot;tail&quot;: 1,\r
-        &quot;border&quot;: 1,\r
-        &quot;zindex&quot;: 5,\r
-        &quot;width&quot;: 81,\r
-        &quot;height&quot;: 63,\r
-        &quot;top_offset&quot;: 120,\r
-        &quot;left_offset&quot;: 35,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;newf1s1&quot;: {\r
-            &quot;content&quot;: &quot;test&quot;,\r
-            &quot;width&quot;: 61,\r
-            &quot;height&quot;: 43,\r
-            &quot;top_offset&quot;: 10,\r
-            &quot;left_offset&quot;: 10\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E6.9B.B4.E6.96.B0">ネストしたデータの更新</h3><p>あるコマのセリフを変更したいとする。セリフはspeachなのでspeaches経由で更新したいところだが、ぺったんの仕様はコマ全体で更新することになっているので、speachesのAPIは用意されていない。コマの変更はpanel経由で行う。このとき、jsonデータでは、どのように変更対象のセリフを指示するのだろうか。\r
-</p><p>結論としてはidをデータに含めて指定する。例えば、セリフのidが3のときは次のようになる。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;speaches_attributes&quot;: {\r
-          &quot;s3&quot;: {\r
-            &quot;id&quot;: 3,\r
-            &quot;content&quot;: &quot;modify&quot;\r
-          }\r
-        }\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><p>idが指定されていないと新規追加となってしまう。\r
-</p><h3 id="h3-.E3.83.8D.E3.82.B9.E3.83.88.E3.81.97.E3.81.9F.E3.83.87.E3.83.BC.E3.82.BF.E3.81.AE.E5.89.8A.E9.99.A4">ネストしたデータの削除</h3><p>削除する場合、更新のときと同じようにidを指定しつつ_destroyにフラグを立てる。例えば、idが2のフキダシをコマから削除する場合、次のようにする。\r
-</p><pre>{\r
-  &quot;panel&quot;: {\r
-    &quot;balloons_attributes&quot;: {\r
-      &quot;b2&quot;: {\r
-        &quot;id&quot;: 2,\r
-        &quot;_destroy&quot;: 1\r
-      }\r
-    }\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AE.E6.8A.95.E7.A8.BF">画像の投稿</h2><p>auth_tokenを含みながらのファイル送信がよくわからん。いろんなパターンで試してみたが素直にはいかなかった。苦肉の策が画像データを一度Base64でエンコードしたものをテキストとして送信すること。次の例は当然エンコードテキストは省略されている。\r
-<pre>{\r
-  &quot;original_picture&quot;: {\r
-    &quot;file&quot;: \r
-&quot;iVBORw0KGgoAAAANSUhEUgAAAWIAAAF7CAYAAADohYEpAAAcW0lEQVR4nO3d\r
-  :\r
-  :\r
-ghgAlP0/Bxl7hN5Zu0EAAAAASUVORK5CYII=\r
-&quot;\r
-  },\r
-  &quot;auth_token&quot;: &quot;XXXXXXXXXXXXXXXX&quot;\r
-}\r
-</pre></p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">\r
-    <title>AboutLisence</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/AboutLisence</link>\r
-    <dc:identifier>AboutLisence</dc:identifier>\r
-\r
-    <dc:date>2011-12-25T12:47:25+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= ライセンスについて\r
-※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-\r
-== 選べるライセンス\r
-ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-\r
-絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-\r
-== 用意されたライセンス\r
- * Public Domain\r
-   * ライ]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6">ライセンスについて</h1><p>※ここはぺったんに投稿された画像の著作権に関する話題です。\r
-</p><h2 id="h2-.E9.81.B8.E3.81.B9.E3.82.8B.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">選べるライセンス</h2><p>ぺったんには、あらかじめ一般的なライセンスを用意してあります。パブリックドメインやクリエイティブコモンズなどです。\r
-</p><p>絵師は提供する素材にこれらのライセンスを付与して明記することができます。\r
-</p><h2 id="h2-.E7.94.A8.E6.84.8F.E3.81.95.E3.82.8C.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">用意されたライセンス</h2><ul><li>Public Domain\r
-<ul><li>ライセンス表示 <a href="http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3" class="external" rel="nofollow">http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3</a>\r
-</li></ul></li><li>Creative Commons 3.0(by)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by/3.0/legalcode</a>\r
-</li></ul></li><li>Creative Commons 3.0(by_sa)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-sa/3.0/legalcode</a>\r
-</li></ul></li><li>Creative Commons 3.0(by_nd)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nd/3.0/legalcode</a>\r
-</li></ul></li><li>Creative Commons 3.0(by_nc)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by-nc/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc/3.0/legalcode</a>\r
-</li></ul></li><li>Creative Commons 3.0(by_nc_sa)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode</a>\r
-</li></ul></li><li>Creative Commons 3.0(by_nc_nd)\r
-<ul><li>ライセンス表示 <a href="http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode" class="external" rel="nofollow">http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode</a>\r
-</li></ul></li><li>Unknown\r
-<ul><li>著作権がはっきりしないもの\r
-</li></ul></li></ul><h2 id="h2-.E5.90.88.E3.81.A3.E3.81.9F.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E3.81.AA.E3.81.84">合ったライセンスがない</h2><p>自前の作品に特殊なライセンスを付与したいと考えるケースもあるでしょう。そういった場合、絵師がライセンスを作成することができます。このような特殊なライセンスをぺったんではオリジナルライセンスと言います。それに対して、ぺったんにあらかじめ用意されたライセンスをコモンライセンスと言います。\r
-</p><p>特に区別したい場合は、コモンライセンス・オリジナルライセンスと言いますが、ただライセンスと言った場合は、両者を合わせたものとなります。\r
-</p><h2 id="h2-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">コモンライセンス</h2><p>コモンライセンスをメンテナンスできるのは管理者だけです。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">オリジナルライセンス</h2><p>絵師はオリジナルライセンスを作成できます。また、自分が作成したオリジナルライセンスを更新できます。\r
-</p><h3 id="h3-.E3.82.B3.E3.83.A2.E3.83.B3.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.B8.E3.81.AE.E6.98.87.E6.A0.BC">コモンライセンスへの昇格</h3><p>何かと信頼の薄いオリジナルライセンスですが、ある程度の評価が得られ、ぺったん管理者が有用性を認めればコモンライセンスへ昇格することもあります。\r
-</p><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.8C.E5.89.8A.E9.99.A4.E3.81.95.E3.82.8C.E3.82.8B.E3.81.A8">ライセンスが削除されると</h2><p>ライセンスを削除してしまうと、そのライセンスを適用した素材はすべてライセンスなしになってしまいます。それを避けるために一枚でも適用されているライセンスは削除できません。\r
-</p><h2 id="h2-.E3.82.AA.E3.83.AA.E3.82.B8.E3.83.8A.E3.83.AB.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9.E3.81.A7.E6.98.8E.E7.A4.BA.E3.81.A7.E3.81.8D.E3.82.8B.E3.81.93.E3.81.A8">オリジナルライセンスで明示できること</h2><ul><li>cc_by\r
-<ul><li>作者の表示\r
-</li></ul></li><li>cc_sa\r
-</li><li>cc_nd\r
-</li><li>cc_nc\r
-</li><li>no_resize\r
-<ul><li>サイズ変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてはならない\r
-</li></ul></li><li>no_flip\r
-<ul><li>反転の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上で垂直反転水平反転してはならない\r
-</li></ul></li><li>keep_aspect_ratio\r
-<ul><li>縦横比変更の禁止\r
-</li><li>値が 0のとき無効 1のとき有効\r
-</li><li>素材をコマ上でリサイズしてもよいが縦横比を変えてはならない\r
-</li></ul></li></ul><p>クリエイティブコモンズの属性はすべて用意しましたが、ぺったん上ではあまり効果を発揮できません。というのも、ぺったんには画像を改変する機能が備わっていませんから、改変しようがないし、投稿された素材が改変されたものであるかを判別する手立てがないのです。非営利についても似たようなもので、web上の配布に営利はありません。もちろんアフィリエイトも禁止されているわけではありません。\r
-</p><p>作者の表示については必ず同一ページ内に表示します。ただし、ぺったんRはオープンソースライセンスですから、ソースコードが改変された場合は、その限りではありません。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">\r
-    <title>CommonLisencesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController</link>\r
-    <dc:identifier>CommonLisencesController</dc:identifier>\r
-    <dc:date>2011-12-24T11:03:09+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= CommonLisencesController \r
-管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-CommonLisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a></h1><p>管理者以外に用はないから、すべての機能で管理者だけが認証をパスする。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">\r
-    <title>LisencesController</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/LisencesController</link>\r
-\r
-    <dc:identifier>LisencesController</dc:identifier>\r
-    <dc:date>2011-12-24T10:46:17+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= LisencesController \r
-コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべてCommonLisencesControllerとOriginalLisencesController側にある。\r
-\r
-常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離してお]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-LisencesController"><a href="http://sourceforge.jp/projects/pettanr/wiki/LisencesController">LisencesController</a></h1><p>コモンライセンスとオリジナルライセンスを統合するためだけにある。閲覧のみで操作はできない。変更作業はすべて<a href="http://sourceforge.jp/projects/pettanr/wiki/CommonLisencesController">CommonLisencesController</a>と<a href="http://sourceforge.jp/projects/pettanr/wiki/OriginalLisencesController">OriginalLisencesController</a>側にある。\r
-</p><p>常識で考えれば、こんな冗長な設計はないんだけど、絵師が作家機能を切り捨てた「絵師サーバ」を独自に稼働させる予定なので切り離しておいた。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan">\r
-    <title>WhatsPettan</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/WhatsPettan</link>\r
-    <dc:identifier>WhatsPettan</dc:identifier>\r
-    <dc:date>2011-12-24T09:18:24+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= ぺったんとは\r
-以下からは一般向け文書。ヘルプとかマニュアルです。\r
-== 絵師\r
- * GuidanceForArtist\r
-== 作家\r
- * GuidanceForAuthor\r
-== ライセンス\r
- * AboutLisence\r
-]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E3.81.BA.E3.81.A3.E3.81.9F.E3.82.93.E3.81.A8.E3.81.AF">ぺったんとは</h1><p>以下からは一般向け文書。ヘルプとかマニュアルです。\r
-</p><h2 id="h2-.E7.B5.B5.E5.B8.AB">絵師</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a>\r
-</li></ul><h2 id="h2-.E4.BD.9C.E5.AE.B6">作家</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">GuidanceForAuthor</a>\r
-</li></ul><h2 id="h2-.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">ライセンス</h2><ul><li><a href="http://sourceforge.jp/projects/pettanr/wiki/AboutLisence">AboutLisence</a>\r
-</li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">\r
-    <title>GuidanceForArtist</title>\r
-\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist</link>\r
-    <dc:identifier>GuidanceForArtist</dc:identifier>\r
-    <dc:date>2011-12-23T17:08:22+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 絵師さん向け文書?\r
-== 絵師の役割\r
-== 絵師になるには\r
-== 絵のライセンス\r
-\r
-== 絵の活用\r
-ぺったんは投稿された画像を次のように扱います\r
- * 画像をサーバ内のディスクスペースに保存します\r
-   * この画像を原画と言います\r
- * 原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-   * これらの画像を素材と言います\r
-   * 原画]]>\r
-    </description>\r
-    <content:encoded>\r
-\r
-      <![CDATA[<h1 id="h1-.E7.B5.B5.E5.B8.AB.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">絵師さん向け文書?</h1><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AE.E5.BD.B9.E5.89.B2">絵師の役割</h2><h2 id="h2-.E7.B5.B5.E5.B8.AB.E3.81.AB.E3.81.AA.E3.82.8B.E3.81.AB.E3.81.AF">絵師になるには</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9">絵のライセンス</h2><h2 id="h2-.E7.B5.B5.E3.81.AE.E6.B4.BB.E7.94.A8">絵の活用</h2><p>ぺったんは投稿された画像を次のように扱います\r
-</p><ul><li>画像をサーバ内のディスクスペースに保存します\r
-<ul><li>この画像を原画と言います\r
-</li></ul></li><li>原画を縮小・反転などの加工を施したものをサーバ内のディスクスペースに保存します\r
-<ul><li>これらの画像を素材と言います\r
-</li><li>原画が反転禁止のライセンスを採用しているときは反転画像を保存しません\r
-</li></ul></li><li>素材は作家がコマ上に添付されます\r
-<ul><li>利用するコマエディタの\r
-</li></ul></li></ul><p>コマ上での扱い\r
-</p><ul><li><ul><li>原画が拡縮禁止のライセンスを採用しているときは拡縮画像を保存しません\r
-<ul><li>ただし、サムネイル画像のサイズに収まらない画像については縮小して表示します\r
-</li></ul></li></ul></li></ul><p>素材→コマ絵\r
-</p><h2 id="h2-.E9.85.8D.E5.B8.83.E3.81.AE.E5.81.9C.E6.AD.A2">配布の停止</h2><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.B5.E3.83.BC.E3.83.90">素材サーバ</h2>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor">\r
-    <title>GuidanceForAuthor</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/GuidanceForAuthor</link>\r
-    <dc:identifier>GuidanceForAuthor</dc:identifier>\r
-\r
-    <dc:date>2011-12-23T16:48:50+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 作家さん向け文書?\r
-== 作家とは\r
-ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-\r
-作家となるには、サイトへの登録が必要です。\r
-\r
-== 作家ができる表現\r
- * コマを作る\r
- * コミックを作る\r
- * コミックの配布範囲を決める\r
-=== コマを作る\r
-=== コミックを作る\r
-=== コミックの配布範囲を決める\r
-\r
-=]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E4.BD.9C.E5.AE.B6.E3.81.95.E3.82.93.E5.90.91.E3.81.91.E6.96.87.E6.9B.B8.EF.BC.9F">作家さん向け文書?</h1><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.A8.E3.81.AF">作家とは</h2><p>ぺったんサーバが提供する素材とフキダシを利用して漫画状のコマを作ることで表現する人を作家と言います。\r
-</p><p>作家となるには、サイトへの登録が必要です。\r
-</p><h2 id="h2-.E4.BD.9C.E5.AE.B6.E3.81.8C.E3.81.A7.E3.81.8D.E3.82.8B.E8.A1.A8.E7.8F.BE">作家ができる表現</h2><ul><li>コマを作る\r
-</li><li>コミックを作る\r
-</li><li>コミックの配布範囲を決める\r
-</li></ul><h3 id="h3-.E3.82.B3.E3.83.9E.E3.82.92.E4.BD.9C.E3.82.8B">コマを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.82.92.E4.BD.9C.E3.82.8B">コミックを作る</h3><h3 id="h3-.E3.82.B3.E3.83.9F.E3.83.83.E3.82.AF.E3.81.AE.E9.85.8D.E5.B8.83.E7.AF.84.E5.9B.B2.E3.82.92.E6.B1.BA.E3.82.81.E3.82.8B">コミックの配布範囲を決める</h3><h2 id="h2-.E7.B4.A0.E6.9D.90.E3.82.92.E7.94.A8.E6.84.8F.E3.81.99.E3.82.8B">素材を用意する</h2><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E5.89.8D.E3.81.AB.E7.B5.B5.E5.B8.AB.E7.99.BB.E9.8C.B2">素材の前に絵師登録</h3><p>作家は素材を投稿することができません。素材は絵師が投稿することになっています。なぜなら、ぺったんはあなたの素材を容易に他のぺったんサイトに提供できるようになっているからです。少々面倒な構成にはなっていますが、心配には及びません。絵師の登録はワンクリック程度で完了します。\r
-</p><p>登録に必要な情報は下記の項目です。\r
-</p><ul><li>ペンネーム デフォルトで作家名が設定されます\r
-</li><li>デフォルトのライセンス\r
-</li></ul><h3 id="h3-.E7.B4.A0.E6.9D.90.E3.81.AE.E6.8A.95.E7.A8.BF">素材の投稿</h3><p>絵師登録が完了すると、素材エクスプローラーに投稿フォームが現れます。\r
-</p><p>素材を投稿するにあたっての注意事項は<a href="http://sourceforge.jp/projects/pettanr/wiki/GuidanceForArtist">GuidanceForArtist</a>をご覧下さい。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements">\r
-    <title>TranslationComicElements</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/TranslationComicElements</link>\r
-    <dc:identifier>TranslationComicElements</dc:identifier>\r
-    <dc:date>2011-12-23T11:41:06+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= 資料・マンガ要素の日英対訳\r
- * コーディング中の命名や、国際化対応のための資料にする.\r
-\r
-== マンガの部品名の対訳\r
- * コママンガ(jp) - comic strip(en)\r
- * コマ(jp) - panel(en)\r
- * 枠線(jp) -(en)\r
- * 吹き出し(jp) - speach balloon, speach bubble(en)\r
- * ]]>\r
-\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-.E8.B3.87.E6.96.99.E3.83.BB.E3.83.9E.E3.83.B3.E3.82.AC.E8.A6.81.E7.B4.A0.E3.81.AE.E6.97.A5.E8.8B.B1.E5.AF.BE.E8.A8.B3">資料・マンガ要素の日英対訳</h1><ul><li>コーディング中の命名や、国際化対応のための資料にする.\r
-</li></ul><h2 id="h2-.E3.83.9E.E3.83.B3.E3.82.AC.E3.81.AE.E9.83.A8.E5.93.81.E5.90.8D.E3.81.AE.E5.AF.BE.E8.A8.B3">マンガの部品名の対訳</h2><ul><li>コママンガ(jp) - comic strip(en)\r
-</li><li>コマ(jp) - panel(en)\r
-</li><li>枠線(jp) -(en)\r
-</li><li>吹き出し(jp) - speach balloon, speach bubble(en)\r
-</li><li></li></ul>]]>\r
-    </content:encoded>\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/PictureIo">\r
-    <title>PictureIo</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/PictureIo</link>\r
-\r
-    <dc:identifier>PictureIo</dc:identifier>\r
-    <dc:date>2011-12-23T11:28:56+09:00</dc:date>\r
-        <description>\r
-      <![CDATA[= PictureIO\r
-== 画像はPictureIOが出し入れする\r
-投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-\r
-差し当たってローカルファイル用のLocalPictureIOとAmazonAW]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-PictureIO">PictureIO</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E3.81.AFPictureIO.E3.81.8C.E5.87.BA.E3.81.97.E5.85.A5.E3.82.8C.E3.81.99.E3.82.8B">画像はPictureIOが出し入れする</h2><p>投稿された素材はデータベースではなく、ファイルに保管される。保管先は大抵の場合ローカルマシンになるが、herokuのようにローカルファイルを触れないホストもあるので、ファイルの入出力は柔軟に切り替わるようにPictureIOとして分離した。\r
-</p><p>差し当たってローカルファイル用の<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IOとAmazonAWS用の<a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IOの、二種類を用意した。\r
-</p><p>デフォルトでは、開発・テスト環境では<a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IOを使い、本番では<a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IOを使っている。当然ながら各自の環境に合わせて設定を変える必要がある。設定は下記のファイルを書き換える。\r
-<pre>config/environments/development.rb \r
-config/environments/production.rb\r
-</pre></p><h2 id="h2-LocalPictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IO</h2><p><a href="http://sourceforge.jp/projects/pettanr/wiki/LocalPicture">LocalPicture</a>IOを使う場合は、config/environments/development.rb で、以下のように書く。\r
-<pre>require 'local_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::LocalPicture.new '/pettanr/original/'\r
-  config.resource_picture_io = PictureIO::LocalPicture.new  '/pettanr/resource/'\r
-end\r
-</pre></p><p>これで原画は/pettanr/original/に保管され、素材は/pettanr/resource/に保管される。\r
-</p><p>※パス処理がショボいのでスラッシュの有無に大きな違いがある。あと、ディレクトリ掘ってないとコケる。\r
-</p><h2 id="h2-S3PictureIO"><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IO</h2><p>AmazonAWSを使うなら、当然S3が使えるよう、準備しておく。Amazonからキーがもらえるので設定する。\r
-</p><p>まず、config/aws.yaml.orgをコピーする。\r
-<pre>cp config/aws.yaml.org config/aws.yaml\r
-</pre>コピーしたaws.yamlを編集。\r
-<pre>access_key_id: XXXXXXXXXXXXXXXXXXXX\r
-secret_access_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r
-</pre></p><p><a href="http://sourceforge.jp/projects/pettanr/wiki/S3Picture">S3Picture</a>IOを使う場合は、config/environments/production.rbで、以下のように書く。\r
-<pre>require 'aws/s3'\r
-require 'yaml'\r
-\r
-y = YAML.load(open(Rails.root + 'config/aws.yaml').read)\r
-AWS::S3::Base.establish_connection!(\r
-  :access_key_id =&gt; y[&quot;access_key_id&quot;], \r
-  :secret_access_key =&gt; y[&quot;secret_access_key&quot;]\r
-)\r
-require 's3_picture'\r
-PictureIO.setup do |config|\r
-  config.original_picture_io = PictureIO::S3Picture.new 'pettanr-original'\r
-  config.resource_picture_io = PictureIO::S3Picture.new 'pettanr-stable'\r
-end\r
-</pre>これで原画はpettanr-original/に保管され、素材はpettanr-stable/に保管される。\r
-</p>]]>\r
-    </content:encoded>\r
-\r
-      </item>\r
-        <item rdf:about="http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick">\r
-    <title>RmagickAndDmagick</title>\r
-    <link>http://sourceforge.jp/projects/pettanr/wiki/RmagickAndDmagick</link>\r
-    <dc:identifier>RmagickAndDmagick</dc:identifier>\r
-    <dc:date>2011-12-23T10:53:11+09:00</dc:date>\r
-        <description>\r
-\r
-      <![CDATA[= RMagickとDMagick\r
-== 画像処理はRMagick\r
-絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-\r
-== RMagickは案外地獄\r
-Windows環境では。\r
-\r
-コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-\r
-= 仕方ないからDMagick\r
-RMagickなしでは丸で動かないので]]>\r
-    </description>\r
-    <content:encoded>\r
-      <![CDATA[<h1 id="h1-RMagick.E3.81.A8DMagick">RMagickとDMagick</h1><h2 id="h2-.E7.94.BB.E5.83.8F.E5.87.A6.E7.90.86.E3.81.AFRMagick">画像処理はRMagick</h2><p>絵師から預かった素材はRMagickで処理される。主にサムネイル画像の生成などで。\r
-</p><h2 id="h2-RMagick.E3.81.AF.E6.A1.88.E5.A4.96.E5.9C.B0.E7.8D.84">RMagickは案外地獄</h2><p>Windows環境では。\r
-</p><p>コンパイラを持たずバイナリインストールしていると、大抵RMagickのインストールでコケる。\r
-</p><h1 id="h1-.E4.BB.95.E6.96.B9.E3.81.AA.E3.81.84.E3.81.8B.E3.82.89DMagick">仕方ないからDMagick</h1><p>RMagickなしでは丸で動かないので、あたかもRMagickがあるかのように振る舞う空箱を用意した。それがDMagick。\r
-</p><p>デフォルトでは開発環境でDMagickを使うようにしてあるので、RMagickが使えるなら、config/environments/development.rbを書き換える。\r
-</p>]]>\r
-    </content:encoded>\r
-      </item>\r
-    </rdf:RDF>\r
index f057975..eb94665 100644 (file)
@@ -7,8 +7,8 @@
            <meta http-equiv="Content-Style-Type" content="text/css">\r
            <meta http-equiv="imagetoolbar" content="no">\r
         <title>Resource Console | pettanR</title>\r
-               <link rel="stylesheet" type="text/css" href="common.css">\r
-               <link rel="stylesheet" type="text/css" href="work.css">\r
+               <link rel="stylesheet" type="text/css" href="stylesheets/common.css">\r
+               <link rel="stylesheet" type="text/css" href="stylesheets/work.css">\r
     </head>\r
     <body>\r
        <!--[if lt IE 9]>\r
                                        <h2>Wellcome to pettanR!</h2>\r
                                        <p>Hello, xxxxx.</p>\r
                                        <p>This page is login user console.</p>\r
-                                       <a href="#" onclick="pettanr.view.show('editor')">boot editor</a>\r
+                                       <h3>クイックアクセス</h3>\r
+                                       <p>新しいコミックをつくる</p>\r
+                                       <p><a href="#" onclick="pettanr.view.show('editor')">新しいコマを描く</a></p>\r
+                                       <p>画像のアップロード</p>\r
+                                       <h3>編集長からのお知らせ</h3>\r
+                                       <p>メンテナンスについて</p>\r
                                </div>\r
                                \r
                        <!-- setting -->\r
                        \r
                </div>\r
 \r
-               <script type="text/javascript" src="common.js"></script>\r
-               <script type="text/javascript" src="jquery-1.6.2.min.js"></script>\r
-               <script type="text/javascript" src="work.js"></script>\r
-               <script type="text/javascript" src="system.js"></script>\r
+               <script type="text/javascript" src="javascripts/common.js"></script>\r
+               <script type="text/javascript" src="javascripts/jquery-1.6.2.min.js"></script>\r
+               <script type="text/javascript" src="javascripts/work.js"></script>\r
+               <script type="text/javascript" src="javascripts/system.js"></script>\r
     </body>\r
 </html>\r