Upload
yayugu
View
549
Download
8
Embed Size (px)
Citation preview
evalbook
HTML
<html> <title>こころ</title> <author>夏目漱石</author> <h2>上 先生と私</h2> <rb>私</rb><rt>わたくし</rt>はその人を常に先生と呼んでいた。<br />......
1 \documentclass[a4j,<%=t.column%>]{tarticle} 2 \usepackage[dvipdfm]{graphicx} 3 \usepackage[deluxe, burasage]{otf} 4 \usepackage[dvipdfm]{color} 5 \usepackage[dvipdfm,% 6 bookmarks=true,% 7 bookmarksnumbered=true,% 8 colorlinks=true]{hyperref} 9 \usepackage{fancyvrb}10 \usepackage{fancyhdr}
<%= %>の部分に動的に値/
文字列が埋め込まれる
12 \makeatletter13 \DeclareFontShape{JT1}{hmc}{m}{n}{<-> s * [0.9375] brsgnmlminr-v}{}14 \renewcommand{\normalsize}{\@setfontsize\normalsize{<%=t.normalsize%>pt}{<%=t.lineskip(t.normalsize)%>}}15 \renewcommand{\tiny}{\@setfontsize\tiny{<%=t.tiny%>pt}{<%=t.lineskip(t.tiny)%>}}........19 \renewcommand{\huge}{\@setfontsize\huge{<%=t.huge%>pt}{<%=t.lineskip(t.huge)%>}}
normalsize, largeなどを再定義する.フォントの大きさは対象デバイス・ユーザの指定により毎回変化する
14 \renewcommand{\normalsize}{\@setfontsize\normalsize{<%=t.normalsize%>pt}{<%=t.lineskip(t.normalsize)%>}}
normalsize, largeなどを再定義する.フォントの大きさは対象デバイス・ユーザの指定により毎回変化する
13pt
19.5pt = 13pt × 1.5
フォントサイズ
行送り
21 \def\ps@myhead{\let\ps@jpl@in\ps@headnombre22 \let\@oddfoot\@empty\let\@evenfoot\@empty23 \def\@evenhead{{\tiny <%= t.title || '' %> <%= t.author || '' %>\hfill \thepage{}}}%24 \def\@oddhead{{\tiny <%= t.title || '' %> <%= t.author || '' %>\hfill \thepage{}}}%25 \let\@mkboth\markboth26 }27 \pagestyle{myhead}28 \makeatother
本の作者・タイトルの情報があれば各ページのヘッダに挿入
23 \def\@evenhead{{\tiny <%= t.title || '' %> <%= t.author || '' %>\hfill \thepage{}}}%24 \def\@oddhead{{\tiny <%= t.title || '' %> <%= t.author || '' %>\hfill \thepage{}}}%
本の作者・タイトルの情報があれば各ページのヘッダに挿入
奇数ページ
偶数ページ
タイトルこころ
著者夏目漱石
93 tag(:rb) {"\\kana{#{recur}}"} 94 tag(:rt) {"{#{recur}}"} 95 tag(:rp) {""} 96 97 tag(:br) {'\\par{}'} 98 tag :hr do 99 "\100 \\vspace{1zw plus .1zw minus .4zw}\n\n101 \n\n\\noindent102 \\hfil103 \\rule{#{@t.textwidth_consider_column * 0.7}pt}{.01zw}104 \\hfill\n\n"105 end
Ruby内部DSLによる再帰的なHTMLパーサ・pLaTeXコードジェネレータ使用例
93 tag(:rb) {"\\kana{#{recur}}"} 94 tag(:rt) {"{#{recur}}"}
Ruby内部DSLによる再帰的なHTMLパーサ・pLaTeXコードジェネレータ使用例
<rb>檸檬</rb><rt>れもん</rt>
→ \kana{檸檬}{れもん}
pLaTeX等の実行24 open("#{$dir_tmp}/#{filename}.tex", 'w'){|fp| fp.write(Erubis::Eruby.new(template).result(binding))}25 open("#{$dir_tmp}/#{filename}.sh", 'w'){|fp| fp.write(<<-"EOF")}26 ebb *.pdf27 platex -interaction=nonstopmode #{$dir_tmp}/#{filename}.tex28 dvipdfmx -f #{$dir_sty}/notembed.map -p #{t.width}pt,#{t.height}pt #{$dir_tmp}/#{filename}.dvi29 mv #{filename}.pdf #{$dir_public_tmp}30 rm #{filename}.tex #{filename}.dvi31 EOF32 do_command($dir_tmp, "sh #{filename}.sh")
各パラメタの計算66 def textheight67 ((width * 0.925 / lineskip(@fontsize)).to_i - 1) * lineskip(@fontsize) + @fontsize68 end69 70 def oddsidemargin71 (width - textheight - tiny / 2) / 272 end73 74 def column75 if textwidth / @fontsize > 4076 "twocolumn"77 else78 "onecolumn"79 end80 end
版面のパラメタの値(出力例) \paperwidth=143.90825102604714pt \paperheight=206.86811084994275pt \textwidth=177.1875pt \textheight=119.25pt \topmargin=4.5pt \oddsidemargin=11.20412551302357pt \columnsep=16.875pt \headheight=4.5pt \headsep=13.480610849942753pt \topskip=0pt
171 def a_img width, height172 "\173 \\begingroup\174 \\catcode`\\_=11\175 \\catcode`\\%=11\176 \\catcode`\\#=11\177 \\catcode`\\$=11\178 \\catcode`\\&=11\179 \\special{pdf:ann width #{width}pt height #{height}pt \180 << /Subtype /Link /A << /S /URI /URI (#{@a_url}) >> >>}\\endgroup \181 "182 end
174 \\catcode`\\_=11\175 \\catcode`\\%=11\176 \\catcode`\\#=11\177 \\catcode`\\$=11\178 \\catcode`\\&=11\
URLに使う記号(_%#...)
をTeXで通常の文字列として扱うように
179 \\special{pdf:ann width #{width}pt height #{height}pt \180 << /Subtype /Link /A << /S /URI /URI (#{@a_url}) >> >>}
special命令(TeXでは解釈されずdviwareにそのまま届く命令)で画像の上に同じ大きさのハイパーリンクを重ねる
640
480
http://example.com/hoge_fuga.php?a=b&c=d
ParseDVI 1 bop [8] 2 down 3113.3460235595703125 3 down -3164.9630889892578125 4 right -52.047943115234375 5 xxx color push gray 0 6 xxx pdf:dest (page.8) [@thispage /XYZ @xpos @ypos] 7 right 442.75 8 xxx color pop 9 down 319.687510 right -52.04794311523437511 down -319.687512 dir tate13 down -437.5937514 fnt brsgnmlminr-v 10.312515 set ち16 w -0.006240844726562517 set な18 w0 -0.006240844726562519 set み20 w0 -0.006240844726562521 set に22 w0 -0.006240844726562523 set 元24 w0 -0.006240844726562525
今ある/今後でるほぼ全てのデバイスに対応
evalbook
PC
Kindle 2Kindle DX
PSP
iPhoneiPad
携帯電話(au)
携帯電話(softbank)携帯電話(docomo)
WindowsPhone7Galapagos
Android
人間失格
8
とこそ、謂わば万世一系の人間の「真理」とかい
うものに違いない、自分にはその真理を行う力が
無いのだから、もはや人間と一緒に住めないので
はないかしら、と思い込んでしまうのでした。だ
から自分には、言い争いも自己弁解も出来ないの
でした。人から悪く言われると、いかにも、もっ
とも、自分がひどい思い違いをしているような気
がして来て、いつもその攻撃を黙して受け、内心、
狂うほどの恐怖を感じました。
それは誰でも、人から非難せられたり、怒られ
たりしていい気持がするものでは無いかも知れま
せんが、自分は怒っている人間の顔に、 しし
獅子 より
も わに鰐 よりも竜よりも、もっとおそろしい動物の本
性を見るのです。ふだんは、その本性をかくして
いるようですけれども、何かの機会に、たとえば、
牛が草原でおっとりした形で寝ていて、突如、
しっぽ
尻尾 でピシッと腹の あぶ虻 を打ち殺すみたいに、不意
に人間のおそろしい正体を、怒りに依って暴露す
る様子を見て、自分はいつも髪の逆立つほどの
せんりつ
戦慄 を覚え、この本性もまた人間の生きて行く資
格の一つなのかも知れないと思えば、ほとんど自
分に絶望を感じるのでした。
人間に対して、いつも恐怖に震いおののき、ま
た、人間としての自分の言動に、みじんも自信を
持てず、そうして自分ひとりの おうのう
懊悩 は胸の中の小
箱に秘め、その憂鬱、ナアヴァスネスを、ひたか
くしに隠して、ひたすら無邪気の楽天性を装い、
自分はお道化たお変人として、次第に完成されて
行きました。
何でもいいから、笑わせておればいいのだ、そ
うすると、人間たちは、自分が彼等の所謂「生
活」の外にいても、あまりそれを気にしないので
はないかしら、とにかく、彼等人間たちの目障り
になってはいけない、自分は無だ、風だ、 そら空 だ、
というような思いばかりが募り、自分はお道化に
依って家族を笑わせ、また、家族よりも、もっと
不可解でおそろしい下男や下女にまで、必死のお
道化のサーヴィスをしたのです。
両立
画像などの引用• http://www.apple.com/jp/iphone/gallery/
• http://www.au.kddi.com/seihin/ichiran/smartphone/is12t/index.html
• http://jp.samsungmobile.com/galaxys/
• http://www.android.com/
• http://www.microsoft.com/ja-jp/windowsphone/design/7/phones.aspx
• http://itunes.apple.com/jp/app/id369061574?mt=8
http://j.mp/evalbookdemo