接連多日的年假已接近尾聲,吃吃喝喝之餘,很自然地就想到一個跟吃喝有關的練習。雖然年假前在公司搞的相框產品確實用到各式 UI 選單(menu),但我在這裡要聊的是名副其實的菜單(menu)。
為了製作精美的菜單,我用 Google 搜來幾張食物的圖片準備用作底圖,除了一張用作食物主選單底圖外,其餘三張分別用作飲料類、水果類和蔬菜類等用途。
考慮到要製作的菜單不只一張,且每張菜單的內容會一直修改,所以我不打算用繪圖軟體繪製菜單,這個重任當然要照慣例,委託給爬說語。要執行這支程式,必須先以 YAML 語法,利用文字編輯器寫下菜單的內容及呈現方式,存成 menu.yaml 。程式執行時會自動讀進這個描述檔,然後描繪出期望的菜單來。例如說,有張菜單長成這樣:
這是一張飲料類的菜單,它有 Coffee, Juice, Soda Water, Tea 等選項,要產生這張菜單, menu.yaml 這個純文字檔就要列出飲料類菜單的內容:
title: '== Drink =='
items:
- Coffee
- Juice
- Soda Water
- Tea
除了填寫菜單的內容外,還要填寫菜單的呈現方式:
style: # Style of title, items, focused items
font: [cour.ttf, 24]
title: {color: clYellow}
items: {color: clWhite}
當然不能忘記告知從 Google 那搜來的底圖:
basemap:
dim: [320, 240] # dimensions of width and height
color: clWhite
image: drink.jpg
type: image # {color, image}
完整描述請參閱 menu.yaml 。程式請參閱 MenuShow.py。
0 comments:
Post a Comment