OSDN Git Service

add comic2html_0.1.html
[pettanr/clientJs.git] / 0.4.x / test / dynamic-comic-html.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\r
2 <html xmlns:v="urn:schemas-microsoft-com:vml"><!-- InstanceBegin template="/Templates/base.dwt" codeOutsideHTMLIsLocked="false" -->\r
3 <head>\r
4         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\r
5         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\r
6         <meta http-equiv="Content-Language" content="ja">\r
7         <meta http-equiv="Content-Script-Type" content="text/javascript">\r
8         <meta http-equiv="Content-Style-Type" content="text/css">\r
9         <meta http-equiv="imagetoolbar" content="no">\r
10         <link rel="stylesheet" type="text/css" href="../stylesheets/common.css">\r
11         <!-- InstanceBeginEditable name="doctitle" -->\r
12         <title>js によるコミック html の動的書き出しテスト | pettanR</title>\r
13         <!-- InstanceEndEditable -->\r
14         <!-- InstanceBeginEditable name="head" -->\r
15         <!-- InstanceEndEditable -->\r
16 </head>\r
17 \r
18 <body>\r
19     <div id="general-content">\r
20         <div id="outer-wrapper">\r
21             \r
22             <div id="header">\r
23                 <div class="base-content-width" style="position:relative;">\r
24                     <h1><a href="../index.html">pettanR</a></h1>\r
25                 <!-- global navi -->\r
26                     <div id="global-navi">\r
27                         <noscript id="noscript-alert">You need to have JavaScript enabled.</noscript>\r
28                     </div>\r
29                 </div>\r
30             </div>\r
31             \r
32             <div id="inner-wrapper" class="base-content-width">\r
33                                 <!-- InstanceBeginEditable name="main_content" -->\r
34                                 <div id="main">\r
35                                         <div id="breadcrumb"><a href="index.html">テスト インデックス</a> &gt; js によるコミック html の動的書き出しテスト</div>\r
36                                         <h2>js によるコミック html の動的書き出しテスト</h2>\r
37                                         <p>js による 動的な html の書き出しは、ブログ等への外部サイト表示 script と ログイン後のユーザーのコミック・パネル閲覧に使われます.</p>\r
38                                         \r
39                                         <h3>動的書き出しテスト</h3>\r
40                                         <p>以下のテキストエリアに パネルの json データを入力することで、動的書き出しのテストを行えます.</p>\r
41                                         <form name="htmlTest" class="block-element-item">\r
42                                                 <textarea name="jsonString" style="width:100%" rows="20" cols="100">\r
43 {\r
44         "border":                       1,\r
45         "comic_id":                     5,\r
46         "resource_picture_id":          1,\r
47         "x":                            0,\r
48         "y":                            0,\r
49         "z":                            0,\r
50         "t":                            0,\r
51         "width":                        400,\r
52         "height":                       235,\r
53         "panel_elements":               [\r
54                 {\r
55                         "resource_picture":     {"id":1,"ext":'png'},\r
56                         "x":                    178,\r
57                         "y":                    -2,\r
58                         "z":                    0,\r
59                         "width":                166,\r
60                         "height":               252\r
61                 },\r
62                 {\r
63                         "balloon_template_id":  1,\r
64                         "system_picture_id":    1,\r
65                         "size":                 1,\r
66                         "tail":                 -14,\r
67                         "x":                    -29,\r
68                         "y":                    39,\r
69                         "z":                    1,\r
70                         "width":                200,\r
71                         "height":               160,\r
72                         "speaches_attributes":  {\r
73                                 "newf1":        {\r
74                                         "content":      "Hello",\r
75                                         "x":            -29,\r
76                                         "y":            39,\r
77                                         "width":        200,\r
78                                         "height":       160\r
79                                 }\r
80                         }\r
81                 }\r
82         ]\r
83 }\r
84                                                 </textarea>\r
85                                                 <input type="button" value="print" name="bindButton" class="button">\r
86                                         </form>\r
87                                         <p id="invalidJsonAlert" style="color:red;display:none;font-weight:bold;">json is invalid !</p>\r
88                                         <div id="outputHere"></div>\r
89                                         \r
90                                         <h3>source</h3>\r
91                                         <p>pettanr.bind は pettanR コミック用の html エレメントを制作するときに使用する.外部サイト張り出し用  script や ユーザーコンソールの コミックビューワーから使われる.</p>\r
92                                         <p>pettanr.bind.createBindWorker で BindWorker インスタンスを作って使用する.bind の意味は 製本 .jQuery.bind とは関係ないので注意.</p>\r
93                                         <pre><code>\r
94 var jsonArea = document.htmlTest.jsonString,\r
95         button = document.htmlTest.bindButton,\r
96         bindWorker = pettanr.bind.createBindWorker( document.getElementById( 'outputHere')),\r
97         elmAlertStyle = document.getElementById( 'invalidJsonAlert').style,\r
98         json = null;\r
99 button.onclick = function(){\r
100         try {\r
101                 eval( 'json = ' + jsonArea.value);\r
102                 elmAlertStyle.display = 'none';\r
103         } catch(e){\r
104                 elmAlertStyle.display = 'block';\r
105         }\r
106         json !== null && bindWorker.json( json);\r
107         json = null;\r
108 }\r
109                                         </code></pre>\r
110                                         <h3>js による動的な書き出しの利点</h3>\r
111                                         <p>js による動的な書き出しには以下にあげる利点がある.最後のもの以外はサーバへの画像リクエストを抑えるものになります.</p>\r
112                                         <ul>\r
113                                                 <li>吹き出しをベジェ曲線で書き出すことで美しい描画ができ、吹き出し画像へのリクエストを抑止できる</li>\r
114                                                 <li>反転画像をブラウザ側で用意することで、flipH, flipV, flipVH といった反転画像へのリクエストを抑止できる.</li>\r
115                                                 <li>ブラウザの表示エリアに入らない画像について、表示エリアに入るまでリクエストを行わないようにできる</li>\r
116                                                 <li>コマのズーム機能が利用できる.ただしリサイズを禁止された画像を含むコマに対してはできない.</li>\r
117                                         </ul>\r
118                                 </div>\r
119                                 <!-- InstanceEndEditable -->\r
120             </div>\r
121         </div>\r
122     </div>\r
123     \r
124     <div id="footer-content"><!-- #BeginLibraryItem "/Library/footer.lbi" -->\r
125 \r
126         <div id="footer">\r
127             <div id="footer-item-container" class="base-content-width clearfix">\r
128                 <div class="footer-item-wrapper">\r
129                     <div class="footer-item">\r
130                         <h2>ぺったんR にようこそ</h2>\r
131                         <ul>\r
132                             <li>サンプル</li>\r
133                             <li>ぺったんRの特徴</li>\r
134                             <li>沿革</li>\r
135                         </ul>\r
136                         <h2>Test</h2>\r
137                         <ul>\r
138                             <li><a href="index.html">Test Index</a></li>\r
139                         </ul>\r
140                     </div>\r
141                 </div>\r
142                 <div class="footer-item-wrapper">\r
143                     <div class="footer-item">\r
144                         <h2>ドキュメント</h2>\r
145                         <ul>\r
146                             <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors" rel="me" target="_blank">作家向けドキュメント</a></li>\r
147                             <li>絵師向けドキュメント</li>                                                     \r
148                             <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers" rel="me" target="_blank">開発者向けドキュメント</a></li>\r
149                             <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters" rel="me" target="_blank">編集長向けドキュメント</a></li>\r
150                         </ul>\r
151                     </div>\r
152                 </div>\r
153                 <div class="footer-item-wrapper">\r
154                     <div class="footer-item">\r
155                         <h2>プロトタイプ</h2>\r
156                         <ul>\r
157                             <li><a href="http://pettanr.heroku.com/" rel="me" target="_blank">pettanr.heroku.com</a></li>\r
158                             <li><a href="../work.html" rel="console">ユーザーコンソール</a></li>\r
159                         </ul>\r
160                         <h2>Ajax contents</h2>\r
161                         <ul>\r
162                             <li><a href="../help/jp.xml">help | jp</a></li>\r
163                         </ul>\r
164                     </div>\r
165                 </div>\r
166                 <div class="footer-item-wrapper" style="width:170px;">\r
167                     <div class="footer-item" style="padding-right:0;">\r
168                         <h2>ぺったんRチーム</h2>\r
169                         <ul>\r
170                             <li>わたしたちについて</li>\r
171                             <li>ミッション</li>\r
172                             <li><a href="../diary/itozyun.xml">itozyun's diary</a></li>\r
173                             <li>個人情報保護方針</li>\r
174                             <li>作品の取り扱い</li>\r
175                             <li>お問い合わせ</li>\r
176                         </ul>\r
177                     </div>\r
178                 </div>\r
179             </div>\r
180             <div id="copyright">Copyright (c) 2011-2012 pettanR team, some rights reserved.</div>\r
181         </div><!-- #EndLibraryItem -->\r
182         </div>\r
183         <script type="text/javascript" src="../javascripts/common.js"></script>\r
184 <!-- InstanceBeginEditable name="script" -->\r
185         <script type="text/javascript">\r
186                 var jsonArea = document.htmlTest.jsonString,\r
187                         button = document.htmlTest.bindButton,\r
188                         bindWorker = pettanr.bind.createBindWorker( document.getElementById( 'outputHere')),\r
189                         elmAlertStyle = document.getElementById( 'invalidJsonAlert').style,\r
190                         json = null;\r
191                 button.onclick = function(){\r
192                         try {\r
193                                 eval( 'json = ' + jsonArea.value);\r
194                                 elmAlertStyle.display = 'none';\r
195                         } catch(e){\r
196                                 elmAlertStyle.display = 'block';\r
197                         }\r
198                         json !== null && bindWorker.json( json);\r
199                         json = null;\r
200                 }\r
201         </script>\r
202 <!-- InstanceEndEditable -->\r
203 </body>\r
204 <!-- InstanceEnd --></html>\r