#43 從程式製作國旗圖案

找出自己希望和情人度蜜月的國家,製作它的國旗圖案。

提示

如何查詢顏色的 RGB 和圖案的位置大小?

將圖片上傳到網站 iview,然後移動滑鼠游標查詢。

https://yangcha.github.io/iview/iview.html

基本題

範例

import UIKit

var rect = CGRect(x: 0, y: 0, width: 200, height: 134)
let backgroundView = UIView(frame: rect)
backgroundView.backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 1)
rect = CGRect(x: (backgroundView.frame.width - 106)/2, y: (backgroundView.frame.height - 106) / 2, width: 106, height: 106)
let circleView = UIView(frame: rect)
circleView.backgroundColor = UIColor(red: 1, green: 0, blue: 0, alpha: 1)
backgroundView.addSubview(circleView)
circleView.layer.cornerRadius = 53
backgroundView

建議找由長方形圖案構成的國旗比較簡單。

關於 addSubview 的說明,可參考以下連結。

進階題

繪製比較複雜的國旗,比方英國的三角形,韓國的太極圖,新加坡的月亮和星星。

對國旗無感的朋友,也可以製作其它的旗子,比方旭日旗,彩虹旗。

請 AI 設計也是不錯的方法,下圖是彼得潘請 AI 設計跟 Apple Swift 程式有關的旗子。

關於特殊形狀的繪製,可參考以下連結。

繪製對稱或是多個類似形狀的圖案時,可利用 CGAffineTransform 控制元件的縮放,位移和旋轉。

作品集

--

--

彼得潘的 iOS App Neverland
彼得潘的 100 道 Swift iOS App 謎題

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com