推 doe:推心得文 10/31 11:07
最近花了很多時間寫NicoFox的播放器
也跟大家分享一下我自己研究彈幕下來的心得
其實NicoWiki有一個不錯的版本
http://nicowiki.com/elsecom.html
NICO運營自己的介紹文件也有很好的說明
http://info.dwango.co.jp/rd/2007/11/niconico_and_flash.swf
不過在這裡特別整理一下吧!
* 字幕出現的順序:時間順->投稿順
* NICO中紀錄時間是以百分之一秒為單位(xml中的vpos值)
* 字數限制是60(一個Unicode字元算一個,所以一個中文或日文都算一個)
* 對naka(跑馬燈)型字幕而言,當這個字幕跑出來的時候
會對其他正在跑的字幕作衝撞測試
(現在沒有撞到,且這個字幕跑完後也確定撞不到,可參考運營文件)
直到找到一個不會撞到其他字幕的垂直點
當找不到(被擠滿)時會採用隨機位置顯示的方法
* shita/ue也會作類似的檢查,也有隨機顯示的因應
* 如果shita/ue字幕多到滿出player,寬會自動縮小到player的寬度(?,待驗證)
* shita/ue的出現時間為3秒
* naka字幕的總出現時間是4秒,且在指定時間後的一秒會顯示在正中央:
| |niconico <= t-1秒時
| niconico | <= t+1秒時
niconico| | <= t+3秒時
由於naka字幕不會作寬度/字體大小調整
所以「快速comment」就是利用naka的特性製造一個超長的字幕
如果你要玩快速字幕,請小心這1秒鐘的差別!
* 字體部份似乎是抓預設的Sans serif(無襯線字體) set
Windows一般而言是Arial+MS P Gothic+新細明體
因此在Windows下,遇到MS P Gothic沒辦法顯示的字就會改用其他字體
Linux (Ubuntu)下的話,應該是會照fontconfig的sans字體選第一個
這點讓我很苦惱,因為文泉驛缺日文半形假名,VL Gothic缺中文
但是就算缺字他還是會乖乖丟出空格 ~"~
也因此Linux/Mac下就會有字幕的變形狀況
http://nicowiki.com/Windows%E3%81%A8Mac.html
* 多行字幕是可行的(請參照nicowiki)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.247.164