陳 凱
文同學(xué):
見信好!
上次你來信請求我的原諒,并解釋說之所以在課上打瞌睡,是因?yàn)椤案矚g將想象的心靈放飛于星空間,而不是鍵盤間”,看上去這也算是個好理由。那么,你應(yīng)該不會反對做一個和想象有關(guān),并且和星星也有關(guān)的實(shí)驗(yàn):你可以畫出多少種不同的星號呢?
你也許有點(diǎn)納悶,不就是鍵盤上的那個星號,難道還有其他星號不成?沒錯,我指的就是鍵盤上的那顆星,請?jiān)试S我在記事本里,將她那幾十種多姿多彩的變換展示給你:她有時是飄落的葉、有時如飛濺的水、有時像典雅的梅、有時似含蓄的淚;她有時亭亭玉立,有時慵懶橫臥,有時調(diào)皮地歪斜著腦袋看著你……你會想,“呵,這簡單啊,改改字體就行了”。且慢,讓我調(diào)出一種叫“MS Serif”的字體,用最小的字號畫出一個星號。但,起初它一點(diǎn)也不像星,怎么看都是一個小方塊,不過別急,讓我把字號逐漸增大,這時星星的模樣也就相應(yīng)起了大變化,先放四道亮,再閃六道光,最后凝做一朵漂亮的雪花。
你可能有點(diǎn)奇怪,字體明明沒變,可字的大小卻變了,模樣也跟著變化,好像在變魔術(shù)。啟發(fā)你一下,它的道理便是一格一格的將點(diǎn)描繪成字,就像君士坦丁堡曾流行的馬賽克鑲嵌畫(只是鑲嵌畫并不會長大也不需要長大)。
用正方形網(wǎng)格描點(diǎn)
畫星星(MS Serif字體)
用六角形網(wǎng)格描點(diǎn)畫星星
一顆原本可愛的描點(diǎn)小星星長大了一點(diǎn)后,樣子卻有點(diǎn)像烏龜,接下來該怎么辦呢?人們想到的解決辦法是為長大后的星星再重新描一次點(diǎn),就像為星星做一次“整容”那樣,讓它邊長大邊變化。
好在如今大多數(shù)字體都牢牢把握著一種“美容秘訣”,隨你放大縮小,模樣就是不變。那是怎樣的秘訣呢?你自己慢慢研究吧!不過,我敢說,就算是描點(diǎn),你也未必就能輕松地完成。不信就試試吧。先劃上橫線幾行,再劃上豎線幾列,然后在這些排成橫、列的格子中描點(diǎn)畫星星,要求看上去光芒長度相等,角度均勻。瞧,碰到麻煩了吧?你怎樣都把握不好星星的身材,不是胖了,就是瘦了,這該怎么辦呢?或許,此時聯(lián)想一下蜂窩,會給你一點(diǎn)啟發(fā)吧!
做完描點(diǎn)游戲,再來點(diǎn)高難度的挑戰(zhàn):把上面的描點(diǎn)工作交給聰明的電腦程序來做。你會發(fā)現(xiàn),原以為用程序畫三條線并不是什么難事,但操作中卻調(diào)出了三角函數(shù),還總是躲不過一串串煩人的小數(shù)。或許你足夠聰明,一拍腦袋說:“用極坐標(biāo)軸得了”,然后就想嘗試著把礙手礙腳的X-Y坐標(biāo)系給“炒魷魚”了。不過還沒等極坐標(biāo)軸正式上崗,你旁邊十歲的學(xué)弟就已經(jīng)把星號畫完了。我?guī)缀跄芟胍娝靡獾靥糁济珜δ阏f話的樣子:簡直小菜一碟,讓小海龜前進(jìn)、后退、轉(zhuǎn)彎,反復(fù)六次不就行了。
我本打算用星星來上一整節(jié)課,可一節(jié)課的時間還真是不夠,星星的其他作用多著呢!你先自己想想,再上網(wǎng)查查,下節(jié)課我可要問你的。祝學(xué)習(xí)愉快!
——凱凱 2009年4月10日
本篇書信,純屬虛構(gòu),如有雷同,實(shí)屬巧合。其中所“影射”的技術(shù)或有意隱藏的專有名詞,讀者們應(yīng)該能猜出其真實(shí)所指吧?(答案在本期中找)
《??!我想到了》專欄參考答案
星號在人類科學(xué)文化中作用廣泛,僅就信息技術(shù)而言,她是正則表達(dá)式符號中的重要成員、是最常見的通配符之一、C語言中指針的標(biāo)識、乘號的替代者等,可在answers.com查閱“*”獲得非常豐富的資料;文中有意隱藏的相關(guān)技術(shù)名詞有位圖(光柵圖)、矢量圖、矢量字體、LOGO語言等;本文涉及一些編程代碼,實(shí)現(xiàn)難度均不高,這里不一一列出;六角形網(wǎng)格在提高二維及三維圖形處理精度方面起著重要的作用,相關(guān)內(nèi)容可作為深入的研究性學(xué)習(xí)所用。