2021年11月14日 星期日

技術筆記:WORD EXCEL Add-In

若要說MS對世界的貢獻,WINDOWS外,更重要的應是WORD和EXCEL吧。其文字排版和試算繪圖功能,幾乎是每位學生和職場工作者必備能力,但若問除文書編輯外的其他功能,整理有四項。

巨集

巨集是存在於WORD和EXCEL套裝軟體內,可單獨編程並且序列執行的工具組。自身使用經驗是,實用性不高。

直接存取OOXML及OLE2內容

WORD和EXCEL文件看似五花八門,本質仍遵循著固定的資料格式,也就是XML和OLE,所以只要熟悉這兩者格式,就能從檔案層次讀取和修改WORD和EXCEL內容。這部分可參考Apache POI(連結),或是PDF和WORD互轉程式。

藉由COM元件,生成、讀取或修改WORD和EXCEL檔案

除檔案外,也可由程式(VB 或 C#)透過COM元件,喚起WORD或EXCEL達到相同功能。做法 using word = Microsoft.Office.Interop.Word; 例如(連結  EXCEL連結)。

VSTO(Visual Studio Tools for Office)

微軟為OFFICE軟體開發有VSTO平台(C#),為WORD和EXCEL增添互動功能,簡稱為Add-In。(連結)

以Visual Studio 2019為例,安裝後會在registry entries中加入Plug-ins,改變WORD和EXCEL軟體功能,概念類似軟體小幫手可在文書編輯時可同時將外部資料庫或圖片等功能嵌入檔案內(Object Model),或對各類WORD或EXCEL動作給予反應(register callbacks)。依呈現方式可區分成下列幾項。

A: Task pane add-in  在一旁協助使用者填入資料,概念類似縣在網路上各種自動生成的表單

B: Add-in command,曾經接觸過的例子是IBM Rational RequisitePro,這也是最近嘗試開發Traceability工具時,主要參考依據,未來也會以此補充這篇內容。

C: Content add-in,可以類似拼字或文法檢查之類,對文字或反白等等區域進行處理。

另外VSTO還包含web word文件,其原理與上述都不同是透過web server操作,因為概念差別太大,先略過。

2021年11月9日 星期二

技術筆記:iPMSEL Hamamatsu

印象中,Hamamatsu是專販售紅外線像機系統廠,因為iPMSEL才得知其投入光電研究多年,專長於雷射光源和調變器。 (連結 p38寫得很好  連結)

iPMSEL,integrable Phase Modulating Surface Emitting Lasers,可積相位調製表面發射雷射,屬於新時代產品(連結),先從應用面來看,有幾項特點。

  • 體積小,文章中提到產品型號如下。2mmX2mm空間中,共有4X4的iPMSEL陣列元件,並且可以對上面毎個單元進行單獨控制,切換其輸出的光束圖像。連結。20mW 940nm 2x2x0.2mm。

  • 可投射Pattern,口說不清,直接看顯示的影片。連結。影片中可以看到,在狹小空間中,不需額外的電路和透鏡系統,就能夠投射出動態Pattern。熟悉3D掃描的人都知道,只要有Pattern就能取得3D模型(連結)。搭配其體積優勢,非常適合空拍機或內視鏡或口腔建模等應用。

內視鏡應用
  • 3D顯示器,因為影像是透過全息技術生成,或許能當成3D投影使用。這部分應用方式還不明確。

介紹完形態和應用後,研究iPMSEL原理構造。其基礎為VCSEL以及更基本的EEL邊射型二極體雷射(連結)。VCSEL為上下兩層P、N結構,光波在共振腔中震盪後,由上方射出。如下圖左,射出的光線在經過DOE的處理後,即可形成點狀投影需要的光斑。iPMSEL與VCSEL不同處是射出光線就是有結構光型態的光線,不需要DOE,所以體積更小。

DOE為衍射光學元件

iPMSEL的內部結構如下,上層為N,下層為P,差異最大處為中間Phase modulating layer,這層結構中有數千個由晶体做出的hole,能夠讓通過的光波在通過時發生擴散。

擴散過程如下圖,

如果刻意調整hole的位置,就會讓產生的雷射發生相位疊加的狀態,結果就是如下圖右,產生出肉眼可見的圖案。

移動hole產生不同的相位,屬於光學晶體的領域,相關概念如下(連結 連結 連結)。從應用角度看,只要知道透過精密計算和妥善安排hole位置後,就能投射出各種預先設計Pattern圖形。計算的方法,詳列於Replication of band structure in an arbitrary wave vector by holographic modulation連結。Dot效果如下。功能已可與幾十釐米距離處發射出幾百萬個像素的VECEL為同等級。

EDGE效果如下,專文連結。200×200 µm2 structured light source (連結)。

而若將產生不同圖案的block,透過切換不同block開關,就能產生動態連續圖形。例如Phase Shift所需圖形。

2021年11月8日 星期一

閱讀筆記:沈 從文自傳

沈從文為民初小說家,以描寫底層人民質樸生活情狀著稱,代表作為"邊城"(小說 連結)、"湘行散記"(散文 連結)。自己年輕時就愛極這兩本書,愛屋及烏,對於培育他的種種故事,同樣有莫大興趣。

"從文自傳",是沈從文32歲時出版,自撰其前半生成長經歷,可以分成童年和軍旅兩部分。童年的沈從文總結一句就是個頑童,沈家是地方紳士,雖非大富大貴但也生活無虞,沈從文自小就被安排進私塾受教育,但他總是仗著一點小聰明,就愛逃學四處閒散遊玩。而一般人逃學沒成就是正常,沈從文的逃學,卻奠定他日後成為文學家的基礎。沈家位於湘西鳳凰縣,這裡地近雲貴高原東側,依山傍水且自然環境豐富(連結),雖是住在城中,但在苗疆中有租地,定時會往山裡頭去體驗原始生活。這主要體現在兩方面。

一、觀察自然。人的美感記憶總是存封在童年,沈筆下的童年生活,大底來說都是活活潑潑充滿著水波光影,童年時期的記憶深深影響沈從文審美經驗,湘西小鎮邊上山光水色都是滋養作家的泉源。而他自述蹺課逃學是「到日光下去認識這大千世界微妙的光,稀奇的色以及萬彙百物的動靜」,僅這描述,就好像是日後邊城小說中牧歌式光影的基礎。

二、觀察人文。沈自述,蹺課逃學是觀察各行各業如何操作的好機會,鳳凰縣為滿、漢、苗三族混居之地,文化衝突(融合)頻仍,鎮上各行各業興盛,提供各種觀察機會。也使得沈從文對人情物事的啟蒙遠早於文字書本。

第二部分是,沈從文從軍後的生活。他十四歲參加地方團練,十五歲隨軍離開了鳳凰和家庭,隨著隨護國軍在湘、川兩地駐防,在各式各樣的見聞和遭遇中成長。當時正值清末民初,局勢動盪不安,人命如草芥,他自述在部隊中,「我看了些平常人不看過的蠢事,聽了些平常人不聽過的喊聲,且嗅了些平常人不嗅過的氣味」。

對於這些活生生血淋淋的例子,沈從文沒有什麼評斷,而總是用平淡無波的口吻敘述著。我們可以說他無知或冷血無情,也可以套上文學用語,說他是溫情中有悲涼,無論如何,在那動物性的時代中,無力感是普遍的現象。

文中,他提到「我永遠不厭倦的是看一切,宇宙萬匯在運動中,在靜止中,在我印象裡,我都能抓定它的最美麗與最調和的風度,但我的愛好顯然卻不能同一般目的相合。我不明白一切同人類生活相聯結時的美惡,另外一句話說來,就是我不大能領會倫理的美。接近人生時,我永遠是個藝術家的感情,卻絕不是所謂道德君子的感情。可是,由於社會人與人的關係產生的各種無固定性的流動的美,德性的愉快,責任的愉快」。

此時的沈從文,陷入巨大的孤寂,深深的無力讓他覺得該有所改變,恰逢機緣引導,五四新思潮強烈的震懾當時徬徨的青年,他決定離開軍隊準備到北京唸書,轉入新文化運動,投入人生更大的場域中。

本書可以說是本尋根的書,既然毎個人的生活都是受限於自身成長環境,尋根應該是基本的功夫。書中文字描述平實且充滿畫面感,隨著作者平實的文字川流而過,引導讀者像觀看電影般,在他營造的的童年中,感受非常鄉土的童年記憶和無奈的軍旅生活。初看時覺得有如乘著小舟隨水漂流,無不寧靜安詳,細看下去又有卻又帶著好多無法言說的感情。這種以溫柔的方式,刻劃生活方方面面的方式,實在美麗。

----

附上:太座推薦的台大開放式課程,王德威,沈從文的啟悟。(連結)

閱讀筆記:奇萊山上找水鹿

奇萊山上找水鹿,為太魯閣國家公園出版的兒童繪本(連結),頁數不多僅十幾頁,內容是由小朋友角度,紀錄合歡山莊至奇萊北峰一路見聞。作者林麗琪(連結)專長為植物插畫,對此類較長篇幅的圖文並不見其特色,幾年前匆匆翻閱過一次就塵封於書架。直到上周,自己親山踏上奇萊北峰山巔,才取出相互印證。

原本計畫是和韓大共四人走奇萊東陵,無奈計畫趕不上變化,到北峰後因故撤退,雖然無法如願,但也飽覽了北峰風景。我們是凌晨三點由新竹出發,7:30抵達合歡山莊,經過海拔3150m的松雪樓,通過滑雪山莊和奇萊登山口,然後鑽入樹林。

8:10上到小奇萊山,在此眺望東方,奇萊北峰背對陽光呈現漆黑,完全印證黑色奇萊名號。由小奇萊陡下到海拔2718m的黑水塘山屋。路徑乾淨沒有太多的石頭或樹根。下到黑水稍微休息就沿著樹根路陡上,沿途偶有倒木,部分高低落差大的地方還有鐵梯輔助,10:30抵達海拔2877m的成功山屋,在清涼的溪流邊休息午餐。

由成功山屋繼續向上,會先沿著乾溪溝的石瀑向上走300m,接著就是直接右轉脫離乾溪溝,路徑轉為岩石、泥土與樹根交錯的陡上型態,同樣有不少鐵梯。12:00抵達休息處小歇。遠眺合歡群山。

再往抵達奇萊主北岔,一般單攻行程是取左側陡峭路線上北峰,我們則是由右側方向繼續往陵線前進。

由主北岔後600公尺都是在極陡峭險峻,裸露感很高的路徑上,直到陵線才突然轉為綿延草原景色。我們選在陵線途中平坦處搭營,此處視野極佳,南望是奇萊主山和卡羅樓斷崖,東方則是奇萊東陵途中必經的太魯閣山,北方則是明天目標,十俊之一的奇萊北峰。

傍晚時分狂風大作,無事可做只能窩在帳篷中。坐在這小小空間,環顧四週一袋袋生活所需物品,想像未來五天全靠此過活,就會湧起自己好厲害的心情,甚至會印照到未來PCT或瑞士Green One的畫面。

第二日重頭戲是重裝上北峰,山區氣候變化莫測,啟登時雲霧繚繞,加上山勢險峻,不斷的拉繩和攀爬總覺得提心吊膽。但一想到上面就是整條東陵路線中最高點,雖然累,但之後就倒吃甘蔗,還是能夠勉強努力上爬。終於上到山頂,一等三角點,360度的環繞效果,是觀察雲海湧動的最佳位置。


正當大家興奮之際,隊員突然提出要撤退,幾經討論,領隊也只能在無奈下黯然撤退。從奇萊東陵變成北峰二日行,心情轉折不可謂不大,也讓折返的路拉的好長好長,唯一值得慶幸的是,上山過程漏看的合歡群峰和畢祿山、中央尖山反而清晰可見,也是另外一種經驗。

2021年11月3日 星期三

手作烘焙趣 Part 2

延續去年烘培經驗,繼續補充後續戚風、乳酪、提拉米蘇等三種蛋糕的製作筆記。

戚風蛋糕

戚風蛋糕是各式蛋糕的基礎,做不好就會說很難,做的好的就說很容易,而我就是前者,歷經了八次修正,觀察無數教學文章和影片後,才跨越「氣瘋」的門檻,達到順手程度。

目前標準程序如下(參考連結)。雞蛋全蛋3顆放至室溫,低筋麵粉80g,細砂糖80g,過篩準備。糖的部分期望逐漸減少,若70g也是可接受,牛奶1.5大匙,橄欖油30g(以往使用無鹽奶油)。同時準備好烤模,並在底部和兩側鋪上雙層抹無鹽奶油的烤紙,抹油的目的是容易脫模。

1.準備盛水小鍋,加熱至50~60度。

2.蛋和糖混合簡單打散,整個容器在不接觸水的狀況下放置在小鍋上用蒸氣加熱,直到蛋液溫度到40度。之後就維持著過熱移開,低溫再加熱的精神,邊控制溫度,邊用中高速垂直攪打(以往是傾斜)。

3.打發到稍微看到摺痕即轉慢速收尾,相較以往打發至過度濃稠甚至到出筋的程度,為了不讓蛋糕體中有許多大孔洞,到這裡一定要停下來。

4.同時預熱烤箱(自動行程食譜P102 選擇26不是27,約30分鐘)。

5.陸續加入牛奶,以手持打蛋器打勻(以往是用刮刀攪拌),繼續加入低筋麵粉打勻,最後則是倒出部分蛋液與橄欖油融合,再倒回全部蛋液拌勻。

6.全部完成後,倒入烤模中就可以進烤箱了。

7.蛋糕出爐後,會因為熱氣散逸而垮陷,都會立刻轉向下,以懸空的方式維持最挺立的造型逐漸冷卻,過程中還可以用濕布蓋住底部幫助降溫。完全冷卻後,脫開烤紙,包入塑膠袋冷藏。

乳酪蛋糕

相較於戚風,乳酪蛋糕的成功率就高多了,且其滑膩的口感每每都讓我覺得無比幸福。

1.底部(參考連結)是由消化餅125g(約八片),放入塑膠袋中,用桿麵棍壓成微小碎屑,再與無鹽奶油50g(微波300W 90秒)混合,利用油讓碎屑相連結,之後倒入烤盤壓實放入冰庫。(接下就要烤,為什麼要冷凍呢??不懂)。

2.蛋糕本體又名巴斯克蛋糕,參考( 連結 連結)。主要材料是Cream Cheese。奶油乳酪(Cream Cheese)是以鮮奶油為原料,再加上乳酸菌發酵製成;而奶油(Butter)則是將牛奶透過攪打,僅取用其中的脂肪成分。我選用的是COSTCO品牌Raskas,取250g(搭配六吋蛋糕算重乳酪了),先微波300W90秒比較容易與白糖( 60g)混合,用刮刀攪拌後,很快就成為泥塊團狀。

3.準備全蛋2顆加1個蛋黃(預先放至室溫),鮮奶油(COSTCO的總統牌動物性鮮奶油) 125cc(直接用125g),及兩杯蓋的檸檬汁。

4.烤箱預熱,溫度220度。

5.將步驟3的三項原料同時混入乳酪中,不使用刮刀,改用電動攪拌機打勻,

6.加入低筋麵粉10g(過篩)繼續打勻。

7.倒入烤模。烤30分鐘。剛出爐的成品外觀黏稠稠不好看,要再經過冷卻和冷藏,才會有厚實口感。綿密的餡料搭配表面稍微焦黑烤色,非常平衡。

若在意顏色,可在入烤箱前蓋上錫箔紙

提拉米蘇Tiramisu

以烘烤量當作評量,戚風的烘培時間最久,乳酪蛋糕次之,提拉米蘇則是根本不經過烘培步驟,可以說是"生"蛋糕。相傳是義大利一對夫妻,丈夫將上戰場,妻子匆忙間臨時將家中多餘餅乾和麵包全做進個糕點裡,只盼夫君在戰場上吃到提拉米蘇就會想起他的家,其在義大利文中有帶我走的含義即是出於此。

初版,蛋黃打發失敗水水的,冰凍後反而可當冰淇淋

參考( 主要連結 連結 連結 ),原料上使用:

餅乾材料:手指餅乾五根(購自愛買)、濃縮咖啡10克、熱水30克、蘭姆酒20克(連結)

慕斯體:馬斯卡彭乳酪(連結)350克(微波300W 90秒 攪勻)、蛋黃兩顆、搭配二號砂糖15克先打散再加糖到可以劃出8,蛋白兩顆、搭配黑糖15克( 蛋白打發時絕對不可有任何油、水、蛋黃參雜其中,先打到一點冒泡狀,然後才加糖,打到尖端尖尖的)。乳酪和蛋黃(分兩次)混合後,蛋白(分幾次)混合小心消氣。

化學原理

參考連結 連結 連結

優格蛋糕

參考(連結)
A:三個蛋黃,加150g優格,拌勻。加入35g植物油,拌勻。加入過篩的(50g低筋麵粉 10g玉米粉 2g泡打粉),拌勻。
B:三個蛋白,加四分之一小杯檸檬汁,加五滴香草液,然後打發。陸續加入三分之一糖(準備50g 實際吃太田要減少)。打發到端頭有一點尖即可。
取出三分之一B進入A,拌勻。全部的A進入B,拌勻。從下到上翻,不可以繞圈圈。然後找個六吋盤,倒滿蛋糕液B。拍幾下(不知道意義在哪)。
烤箱150度預熱,烤盤放最下層。用個外盆裝著蛋糕盆,放入盤子中。盤子底部加熱水。烤50分鐘。(大概20分鐘就可以看到膨起)。
目前結果是,出來之後會消氣,是下次改進點。
為什麼別人的作品都如此綿密不塌陷?實在疑惑。

2021年10月5日 星期二

閱讀筆記:世界末日與冷酷異境

長期以來熱衷於閱讀村上春樹的作品,自認為讀過他每本小說,也熟悉其各種表現方式,不應該再有新奇,直到近日重讀年少時曾讀過的"世界末日與冷酷異境",故事內容是熟悉,但閱讀經驗卻異常新鮮,沉浸在閱讀樂趣中,不忍釋卷。

"世界末日與冷酷異境"是雙主線敘事,不只故事內容,從書名就明確指出其雙主線情境。一般來說,雙主線可以是兩個人、兩件事或一種事物的兩個方面同時進行,各自堆疊出專屬的故事或布置謎團,隨著故事推導兩條線漸漸融合,藉由互相比照、影響,打開謎團,達到豁然開朗效果。除文學外,音樂上的應用稱為對位法,對熱愛古典音樂的村上春樹來說,非常擅長此種架構,也大量應用於長篇作品中。

雖然是雙主線設計,但我卻是完全忽略它,先跳著看完"世界末日"全部章節,回到起點,再逐章跳著看完"冷酷異境",等於是將一本小說當成兩本來讀。

兩者都很吸引人,但對"世界末日"的喜愛更勝一籌。故事背景是個步調緩慢,人人過著平靜幸福的小村莊,村莊範圍不大僅有兩三條街,中有河流穿越,四周有森林和高牆圍繞。住民不多約十數人,生活其間,過著無憂無慮但也無情無愛的生活,彼此在最低程度下互通有無,但始終保持相敬如賓的距離。

故事開始,沒有任何前提和交代,主角就出現在這村莊中。接著就像是RPG遊戲般,藉由村民(大多數由城牆門房)和主角互動提供任務資訊,並且將主角引導至村內圖書室,成為夢讀角色。後續,經由冒險,男女主角找到了"心",且為了守護它而選擇在這無邊世界永久流放,也因此回應了"世界末日"題名。

小說,原本就是想像的產物,而"世界末日"又是男主角"想像"的世界,等同於是想像中的想像。在這裡,空間、時間和事物運作的方式都被限定,扁平、緩慢且不須任何道理,人們因為選擇拋棄記憶而永恆存在,但同時放棄了音樂、愛恨和熱情。1Q84的貓之村,海邊的卡夫卡森林內村落,挪威的森林有阿美寮療養院,都是類似背景。與普羅大眾心中修羅地獄般的認知不同,村上春樹想像中的"世界末日",是平靜、穩定、波瀾不興,並且無窮輪迴。

另一條線"冷酷異境"則是描述我們所熟悉的世界。這裡充滿著眼睛可見的各式聲、光、觸感,形形色色物件,也充滿著不可見但龐大無比的組織和規範。人依照著意識,在這正反相成的結構中出生、學習、成長,會遇到喜愛或討厭的人,形成群體。主角從事著自認為的專業,卻不明就裡的被硬生生捲入計算士與符號士結構抗爭中,被殘酷無情的對待著,"冷酷異境"的題名,就是作者對這世界的控訴。

兩個各自獨立的世界,事實上是同一位主人公的現實生活和潛意識空間。看似對列地平行展現,隨著故事逐漸合併,反而豐富了作者想要表達的內涵,並將其升華為別具新意的新概念。

作者村上春樹認為,人生孤獨,即使期望能平靜中度過一生,但命運總能以各種絕望的方式籠罩著我們。我們能做的,僅僅就是草草記下我們在廢墟中看到的一切,因為我們看到的與別人看到的不同。正如同卡夫卡說,「因為你和別人看到的不同,而且更多;總之,你在自己的有生之年就已經死了,但你卻是真正的獲救者。」

村上春樹後期作品明顯探討善、惡、隱喻等主題。相較於此,我更喜愛"世界末日與冷酷異境"中,對環境的描述方式,雖然有種壓抑、沉重、窒息、不自然的氛圍,反而更能襯托出,事實上這或許也就是我們平日生活的形式。至於要選擇成為流放到森林邊緣永無終止的世界末日,還是缺少心回到現實世界的影子,則是個人選擇了。

最近熱衷於3D列印,計畫模擬出世界末日夢讀所觸碰的獸骨


2021年10月1日 星期五

羅山林道南線輕鬆跑

繼上次探訪羅山林道北線後(連結),安排時間繼續探訪南線。與北線相比,南線的參考資料非常少,主要是因為北線始終保持車輛通行狀況,人車眾多,遊記等資料也多。南線則是因為二十年前某次坍方導致車輛無法進入,逐漸荒蕪,進入的人少資料自然闕如。只有少數登山社團記錄可參考(連結 連結 連結 連結)。評估後覺得安全無虞,決定以慢跑方式,獨自穿著運動服來探訪這廢棄林道。

羅山林道是民國六七十年左右伐木業盛行時所開拓出來,南線全長24.94公里,全線道路皆為碎石且狹窄。準備完畢約七點多。由0KM出發,林道沿著油羅山南側向東延伸。路況和天候都佳,適合戶外運動。

不久遇柵欄,管制汽車通行。後續路段都是輕鬆行走的狀態,此處原就是柳杉林密植區,行走其間,就像是穿行於樹傘之下,陽光在樹梢間洩漏而下,在地面形成搖曳光影。因為景致秀麗,或許有機會單獨帶空拍機來此拍攝。

2.6KM處向南可跳接至11.7KM,或許之後可一探究竟。

4.49公里後因為坍方,僅能容人通行,僅有少數登山客通過。呈現完全廢棄的狀況。一般來說,缺少重機械維護的林道,不可避免的,就會因為坍方的骨牌效應,變成更不容易通行,很快的就會被荒煙漫草侵占而被大自然回收。羅山林道南線自然難逃此規律,尤其是接近溪流地區,土壤鬆軟容易坍塌,原本路線消失後,就得爬上一段小坡才能通過。

上述崩塌較激烈路段外,更大部分是逐漸成長的原生樹種區,如殼斗科和喬木和藤蔓和蕨類和大型姑婆芋。他們逐漸侵蝕柳杉的地盤,讓森林變回它應有的樣貌。

四處橫生的枝幹與藤蔓漸多,加上對前方未知的不安,屢屢打斷原本跑步的節奏,跑沒多遠就放棄,最後更成了悠閒的獨自林間散步之旅。途經幾處往羅山和霞山登山口,看來都很有挑戰性。

9KM,林道在此跨越麥巴來溪迴轉往西。因為地處兩山腰大轉折間,平時或許容易通行的山溝,此時因為前兩天大雨溪水高漲。站在路基早已消失的小山坡上,舉目四望,河對面應是林道的位置被層層疊疊的林木遮蔽,無法確定正確位置,加上幾次嘗試下到溪邊不成後決定放棄,下次換穿健行裝備和防滑登山鞋後再來探訪。原路折回。

資料中提到登山客向上游探險


小溪春深處

根據資料,過這溪後,再行兩公里至11.7KM,就會遇到三叉路。

  1. 南往五峰工作站,也是南線原始路線。理論上再十幾公里就能銜接到霞喀羅古道的田村台警官駐在所,實際狀況不明,或許已被大自然回收。
  2. 東南往麥巴來山。
  3. 西北方,下切三百公尺至溪谷,再上升三百公尺接回南線2.6KM,形成小O型。

統計今日十公里處折返,總計走跑二十公里,體力消耗少,倒是這半荒半煙半蔓半草的路段上走走跑跑的另類經驗,留下深刻記憶。