PostScriptフォント=ベジェ、TrueType=Bスプラインというよくある誤解について
[メモ]TrueTypeフォントの曲線は2次Bスプライン曲線とよく言われますが、間違い。アップルの仕様を参照。“TrueType Reference Manual” developer.apple.com/fonts/TrueType… 明確に“Bezier quadratic curves”とある。
2014-12-18 01:10:13[メモ]昨晩のTrueTypeフォントの曲線の件、要するに巷間言われている2次Bスプライン曲線は誤りで、2次ベジェ曲線 “Bezier quadratic curves” が正しいということです。 developer.apple.com/fonts/TrueType… なんでこの語が流布されたのか…。
2014-12-18 09:55:48@MD5500 @assause おはようございます。横からすいません。Bスプラインです。 opentype.jp/fontguide_doc2…
2014-12-18 10:46:26@m_ogaw @assause Appleのドキュメントに二次のベジェだって書いてあるからBスプラインと言ってるのは間違いだと昨晩言ってる方がいらっしゃいまして…
2014-12-18 10:48:14@MD5500 @assause ベジェは三次になるそうで、二次なのはBスプラインのほうですので、Appleのドキュメントのミスのような気がします。
2014-12-18 10:58:56多分B-splineのBをBézierのBとしている気がする… 鹿でそう書いてあるのが気になるところ
2014-12-18 12:30:02たぶんそこそこ昔に「スプライン曲線」と「ベジェ曲線」を知っていて、なんとなくBがつくからBスプラインはベジェのことだろうとか思ってテケトーな解説をおそらくスタイリングデザインか何かの記事に書いた人がいたのだろうなぁ(海外の、かも)
2014-12-18 12:36:57ほんとだ。B-スプライン曲線の制御点って、ベジェ曲線と全然ちがう… pling.org.uk/cs/cgvimg/bspl… TrueTypeのパスはこんなんじゃない…
2014-12-18 12:43:56@ogwata 日本だけの誤解かと思いきや linotype.com/de/1755/postsc… にもB-splineとありますね。その直後に「各スプラインは2次Bézier曲線で、3個のオフカーブ点で定義される」とある(3個あったら4次曲線になってしまう!)。明らかに両者混同してます。
2014-12-18 12:25:02@ogwata おそらく、MSのTrueType Specificationの第1章(microsoft.com/typography/tt/…(.docファイル注意))に「Bezier spline」とあるのを、誰かが聞きかじっていたB-splineのBはBezierの略と誤解したものかと。
2014-12-18 12:35:36@ogwata 「Bezier spline」という表現はMicrosoftの文書に多数使われています。google.com/search?q=%22be… en.wikipedia.org/wiki/Bézier_sp… によるとベジェ曲線1本を指す流儀と複合ベジェ曲線を指す流儀があるとか(MSは前者)
2014-12-18 12:39:46@KAN0U 正直、数学の分野のことなので、あまり自信たっぷりに言えませんが、2次Bスプライン曲線と2次ベジェ曲線とでは制御点~分割点の位置等が違うので、見るだけで違うと分かりそうなんですが。
2014-12-18 12:36:11@ogwata 今ならja.wikipedia.org/wiki/B-スプライン曲線 を見れば図が見られて「なお、B-splineはBasis spline(Basis=基底)の省略形である。基本的に曲線は制御点を通らない」という説明が得られますが、20世紀に広まった誤解ですから。
2014-12-18 12:44:56@ogwata 日本では少なくとも佐藤友治『Macintoshフォントブック』(1992/12、みずき出版)p.93には遡ります。オブスキュアインク編『デザイン、DTPのための フォントの鉄則』(2003、毎日コミュニケーションズ)p.44もその誤解を孫引きしたのではないかと。
2014-12-18 13:01:51@KAN0U なるほど、“B-spline” と “Bezier spline” をめぐる誤解とはありそうな話ですね。それにつけても英語の壁の高さよ…。
2014-12-18 12:47:27@ogwata @KAN0U 両端点含めて3点を指定したBスプラインは2次ベジェ、4点を指定した3次Bスプラインは3次ベジェそのものになる、という関連はあるのですが... (すいません、メンションミスったので投げ直しました)
2014-12-18 12:51:51