2022年8月30日 星期二

澳洲文化多樣性:人口普查

澳洲政府定期舉辦居民人口普查,最近一次舉辦是在2021年。
分析好的最新數據這次在6月28號公佈,今天剛好查資料翻到;
裡面有一些有趣的東西來記錄一下。

幾個關鍵數據:
  • 27.6%的人口出生在海外。
  • 在人口普查當日(COVID期間),有 61,860 名國際訪客身在澳洲。
  • 家庭使用英語以外的前五種語言,依序是:中文普通話(2.7%)、阿拉伯語(1.4%)、越南語(1.3%)、粵語(1.2%)和旁遮普語(0.9%)。
  • 血緣/祖先起源的前5位依序是:英格蘭人(33.0%)、澳大利亞人(29.9%)、愛爾蘭人(9.5%)、蘇格蘭人(8.6%)和華人(5.5%)。→【51%說英國應該是移民一二三代,30%說本地的可能第四五六七代了,錢幣印英女王多麼合理】
  • 排名前5的宗教信仰依序是:無(38.9%)、天主教(20%)、英國國教(9.8%)、伊斯蘭教(3.2%)和印度教(2.7%)。

不包含國際訪客,常住居民中,澳洲以外前五大出生地:
  1. 英格蘭 927,490人 →【原宗主國,很合理】
  2. 印度 673,352人 →【世界人口大國,很合理】
  3. 中國(不含港澳台) 549,618人 →【世界人口大國,很合理】
  4. 紐西蘭 530,492人 →【鄰居/兄弟國,很合理】
  5. 菲律賓 293,892 →【厲害了】

不包含國際訪客,常住居民在1996、2016及2021年的宗教信仰人數:
  • 基督教 12,582,764 → 12,201,600 → 11,148,814 【不增反減】
  • 其他宗教 652,218 → 1,920,835 → 2,538,587 【大幅提高】
  • 無宗教信仰 2,948,888 → 7,040,717 → 9,886,957 【大幅提高】
  • 普查總數 17,752,829 → 23,401,892 → 25,422,788 【25年成長43%】
我們看到宗教的消長變化,越來越多人不再虔誠信仰宗教。
1996年時澳洲不到一千八百萬人,同年土地小得多的台灣已二千多萬人。


其他數據表格:

表一、按年齡劃分的出生國家分布 →【七百多萬人在海外出生,台灣才4.9萬,港10萬、日4.5萬、韓10.2萬、星6.1萬、馬16.5萬、泰8.4萬、越25.8萬】


表二、按公民身分劃分的出生國家分布 →【當天在澳的台灣出生人口4.9萬只有2.7萬是公民,看來不少老台僑尤其長輩還是習慣住台灣。在澳港人多數已入籍,日人極少入籍,其他亞洲國家一半一半或差距不大】


表三、按州/領地及抵澳年份的出生國家分布 →【華人國家出生的70.7萬人中,24%即17.1萬人是在2016-2021這幾年抵達的新人。昆州比新州維州少了很多,可能是覺得雪梨墨爾本大城市的機會比較多吧】


表四、按州/領地劃分的血緣/祖先起源分布 →【澳洲835萬30%、英國愛爾蘭1214萬51%。139萬人選華人,2.6萬選台灣人,其中昆州佔比最高】


表五、按州/領地劃分在家中使用的語言分布 →【在家1830萬說英語、7萬德語、7萬法語、23萬希臘、23萬義大利、7萬葡語、17萬西語、37萬阿拉伯、44+萬印度(20萬Hindi+24萬Punjabi)、22+萬菲律賓(9萬Filipino+13萬Tagalog)、7萬泰語、32萬越南語、6萬日語、12萬韓語、30萬廣東話、69萬普通話/華語、2萬閩南語。數字與前表血緣資料大致相符,許多移民在家裡仍使用原母語】


表六、按抵澳年份劃分的英語口語熟練度分布 →【家中使用非英語的704萬人中,285萬人只說英語,尤以2016年以前居多,這些人與非英語人士組成家庭。近年移民逐漸由非英語人士組成。】


表七、按出生國家劃分的宗教信仰分布 →【澳洲出生的1702萬人中,807萬信基督教、759萬不信教。相較於篤信基督教的東南歐,以及篤信印度教伊斯蘭教的中亞及東南亞,東北亞(中日韓台)出生的人有三分之二不信教。】


表八、按州/領地劃分的宗教信仰分布 →【當日在澳的2542萬人中,有1115萬信基督、81萬信阿拉、62萬信佛、68萬印度教、21萬錫克教、10萬猶太教,另有977萬人無宗教。】


表九、按本國/海外出生及性別劃分的健康狀況分布 →【女性除了關節炎及哮喘,在心理精神方面包含躁鬱症的狀況比較多。男性則是糖尿病心臟病人數比較高。】


對人口資訊的分析解讀,可以有助於快速了解社會及文化。

2022年7月23日 星期六

原俠正楷 GuanKiapTsingKhai ,舒適方便的字型選擇

 今天自己整理了喜歡的字型,並第一次發佈github專案。

使用電子閱讀器蠻久了,陸續用過不少字型,有的還有簡轉繁以及偽直排功能,拿來看對岸網文非常方便。私以為簡體字最大的缺點就是多字共用,一簡對多繁造成無法精確轉換,非常不便。能夠動態以辭彙對應處理此問題的繁媛字型,我認為是非常傑出的作品,作者去年有發佈 OpenCCFontGenerator 工具用來製作簡轉繁字型,可惜我實際操做發現有些不懂的地方需要手動改程式,無法順利完成很可惜。

除了繁媛明、黑體,網路上各式黑體、明(宋)體跟圓體都曾用過一陣子,然試過幾款楷體卻都覺得有些負擔。2020年底時,macOS上頗受好評的內建字型 Klee One 開源了,優雅端正易讀的楷體受到許多人喜歡,雖是香港大佬作品,但因為是日文字型故中文漢字不足,難以用來閱讀頗覺可惜,所幸陸續有幾位大神無償去做補全開發。其中 lxgw 的霞鶩文楷改版快速字數最足,精神及毅力令人十分欽佩,他的霞鶩文楷繁中版使用傳承字形,也是我近來最常用的閱讀字型。另外大神 But Ko 的芫荽字形寫法最接近台灣教育部標準,同時兼具美感平衡,可惜只集中整理了近八千字(已超強非常感謝)。

於是一直有揉在一起弄個牛丸版的想法,剛好前陣子霞鶩文楷繁中版討論要做簡轉繁分支霞鶩風楷時,有神人提供了 TCFontCreator 這個工具,今天稍有空檔試了一下,發現方便易用功能成熟,雖可惜無法像繁媛那樣動態辭彙轉換,但同時有合併及繁化功能,且圖形化界免操作簡便。

我以芫荽為主體,加上霞鶩文楷輕便版補足不常用字及簡體字,合併出自己的「原俠正楷」,另外增加了一對多共用字「保持原簡字」,跟「以常用繁體字取代」的二個簡轉繁版本。這個字型名稱採來源字型之首字:芫、霞,取諧音原俠,當下布袋戲大俠閃現腦海,故英文以台語發音 GuanKiapTsingKhai 來拼寫。

上述所有東西都是在 github 上找到的,當然做好了也要來發佈在 github。自己摸索第一次建立了 Repository ,幸好介面還算直覺,完成後感覺離大神們距離稍微近了一小步。


有興趣可以下載字型用用看,或者下載工具自己轉換喜歡的字型,方便簡單!

2022年6月8日 星期三

使用MKVToolNix合併分割YouTube上的WebM影片

YouTube從前幾年開始,大量使用WebM這個由Google主導的視訊檔格式,優點是壓縮效率高檔案小速度快,但缺點是網站把較高品質的影、音分開成不同檔案,下載後不方便撥放。

當我們從CatchV等線上服務,或是自行剖析找到原始檔案連結後,下載到WebM、WebA、MKA、Mp4、M4a等檔案格式,最好是將分開的影、音檔案合併打包起來,以利後續保存及使用,其中以存成MKV格式最為方便理想。

MKVToolNix是一款免費、跨平台、支援繁體中文、將影片合併或分割為MKV影片格式的程式。這個軟體可以將各種格式的影片、外掛字幕、外掛音軌等合併成為一個MKV影片檔案。也可以將多部影片合併為一部影片,或將一部影片分割為多個檔案,由於合併的過程不需要重新編碼,因此可以快速的完成影片的合併,也不會影響原來影片的品質。

過程十分簡單,連接到官方網站下載安裝後開啟,把要合併的檔案拖曳進去,然後按下方中央的開始合併按鍵,就完成了!而且因為是打包而非編碼,速度非常快,個人經驗1Gb以下1秒。

如要分割影片、只保留片段,可以在「輸入」頁載入影片後,到「輸出」頁中間的分割部分,方式選擇「依時間戳記分割」,輸入要分割的時間如:「00:12:34.567-00:54:32.198」;同時多個片段則時間之間以逗號隔開如:「00:12:34-00:56:09,01:23:45-06:54:32」。

若需要反向處理,從MKV影片檔案擷取字幕、音軌與視訊的話,可以使用配套軟體gMKVExtractGUI,是由其他使用者開發的,需搭配主程式使用。

這個操作也很簡單,官網下載後解壓縮執行,把要拆解的MKV檔案拖曳進去後,軟體會分列視訊、音訊、字幕等內容,勾選後按右下角Extract按鍵,一下子就拆出來了。

有好的工具真是便利,任務輕鬆完成!

2021年7月5日 星期一

epub電子書轉直排加段落縮排

EPUB中文直書需要做幾項設定,一是改主要的OPF檔(通常是content.opf、metadata.opf或volume.opf),二是需要修改主要的CSS檔(通常是內容最多的那個)。


首先在主要的OPF檔找到 <spine> 標籤,加入屬性 page-progression-direction 並設定為 "rtl" 右至左(右翻)。若有特殊需要當然也可以指定 "ltr" 左至右(左翻),就會變成反向翻頁。
例如:<spine toc="ncx" page-progression-direction="rtl">

若OPF檔內有 language 標籤,個人習慣把它改成中文比較安心。
例如:<dc:language>zh-TW</dc:language>


再來在主要的CSS檔,加入 writing-mode: vertical-rl 的設定,一般放在<html>或<body>都可以。vertical 設定直排, rl 則是右到左。為了增加相容性,我們除了基本 writing-mode 屬性,也放入兩個 -webkit- 與 -epub- 開頭的 writing-mode 屬性,確保瀏覽器或EPUB閱讀器有支援。
具體寫成這樣:
html {
   writing-mode: vertical-rl;
   -webkit-writing-mode: vertical-rl;
   -epub-writing-mode: vertical-rl;
}

然後是段落首字縮排,有的電子書使用空格,私以為不妥。最好使用 text-indent 語法,並直接用 em 設定字級來當作縮排距離,以避免縮排參差不齊。
一般中文段落縮排二個字這麼設定:
p {
   text-indent: 2em;
}


至此這本epub電子書應該就會乖乖直排兼段落留空格。
以上。

2021年3月1日 星期一

使用 VMware ThinApp 製作獨立環境綠色免裝軟體跨越作業系統版本限制

前幾天電腦強迫自動更新成「版本 2004 (OS 組建 19041.804) 」,結果我多年前為了升級 Win 7 以 ThinApp 打包的陳年 XP 版軟體,突然不能正常開啟了,開相容模式以管理權限也無用,去查了事件檢視器,發現是錯誤「事件 1000,Application Error」、「例外狀況代碼: 0xc0000005」。網路一查主要原因是「Access Violation」,這範圍廣得不行。

嘗試了網路解法,關閉「資料執行防止」:
按 [Windows] + [R] 執行「sysdm.cpl」以開啟系統內容設定畫面,到「進階」頁面點選效能區的設定按鈕,在跳出的「效能選項」視窗中開啟「資料執行防止」頁面,點選第二個選項「為所有...開啟DEP,除了我選擇的這些」,然後在下面選擇例外的執行檔。設定好需要重開機,然後我的軟體還是不能正常執行,事件檢視器內容都一樣,除了多了個資訊「事件 1001,Windows Error Reporting」、「事件名稱: APPCRASH」,並沒有其他效果。另外找了幾個解法都不合用,最後乾脆找新版 ThinApp 再打包一次軟體試試。

在不同版本甚至不同作業系統下,大家常用虛擬機器來模擬指定版本作業系統環境,比如近來很香的 M1 版 Apple Macbook ,不使用 Intel X86 架構、改ARM以後不能雙系統了,就只能裝 Parallels Desktop 跑 Win10 虛擬機器執行視窗版軟體。
但是模擬整個作業系統要佔用許多資源,這時候有個軟體可以把必要的執行檔、登錄碼、數據庫等東西打包,同時保有封閉的指定作業環境,極大地精簡了體積及所需資源、也提高了執行效率。比如說網頁設計師需測試各版本IE相容性,只要開啟單獨WINXP版IE6或WIN7版IE10的執行檔。或是偶爾需要在別人電腦執行個 PS、Illustrator ,又或陳年老軟體只能在WinXP正確執行,這時這個不需要安裝、不需要切換作業系統的解決方案真是太方便了。

VMware ThinApp 是個付費軟體,可以到官網加入會員後、下載軟體並取得60天試用碼(我這次使用免洗電郵「https://getnada.com/」)。目前 ThinApp 最新版是5.2.9,但不支援我需要的Windows XP,所以我也下載有支援的最後版本5.2.3。我常用的虛擬機器軟體是免費的Oracle VM VirtualBox,開啟乾淨的WinXP並安裝 ThinApp 5.2.3 後,就準備來打包。

它的逐項運作過程是:
  1. Prescan:先掃描系統檔案及登錄碼,掃描完畢以後,按Next到下一步驟;
  2. Install Application:不要急著按下「Postscan」,先安裝好要打包的軟體再回來按;
  3. Postscan:軟體會再掃描一次找出不同之處,準備複製進專案資料夾;
  4. Configure:依照執行需求調整參數;
    • Entry Points:有時軟體有多項功能或附屬工具程式,ThinApp在此步驟會列出可執行項目、並預先勾選推薦的程式「進入點」。有時候會誤判或者勾選不必要的功能,需要自已檢查清楚決定好,選錯的話之後得手動改參數重新打包。
    • Manage With VMware Workspace:選擇「是/否」整合「VMware Horizon Application Manager」,類似軟體商店管理。通常不加入。
    • Groups:使用者群組權限設定,一般個人或中小企業用不太到,需要的話須小心,錯了沒得改得重新打包。 
    • Isolation:隔離模式分為「Merged」和「WriteCopy」;
      • 「Merged Isolation Mode」擁有打包檔外部(也就是執行環境)讀寫權限,相對不封閉,適合Microsoft、Adobe這種微軟認證軟體,個人的經驗以未認證軟體選這個模式,可能會被認定是蠕蟲或木馬病毒。
      • 「WriteCopy Isolation Mode」能讀取打包檔外部(執行環境)資料,但不能直接寫入,會放置在Sandbox(沙盒)中。適合舊版或大部分的其他軟體。
    • Sandbox:安全且獨立的沙盒用來放置改變過的登錄參數及設定檔,可選User Profile 使用者軟體資料夾、Same directory 打包軟體位置(適合隨身碟)、或任意指定資料夾。可以手動改參數指定軟體開啟或關閉時清除。
    • Quality Assurance Statistics:選擇「是/否」傳資料給VMware以協助他們改善品質。我選否避免造成防火牆示警。
    • Project Settings 頁1:輸入「Inventory Name」封裝資料夾的名稱、選擇或輸入「Project Location」存放位置。
    • Project Settings 頁2:
      • Primary Data Container:選擇封裝在執行檔本身或另外放在單獨的「.dat」資料檔(適合多功能/程式)。
      • MSI Package Generation:選擇是否同時封裝微軟「.msi」安裝檔。
      • Compression:對封裝進行壓縮,相對的打包時間會較長。
    • Save Project:點Next後ThinApp匯出相關資料到專案資料夾,結束再按Next下一步。
    • Ready to Build:可以選擇修改「Package.ini」內的詳細設定值、或直接按Build打包。
  5. Build Project:打包成跨版本綠色免裝軟體,只要把專案資料夾內的「bin」資料夾複製出來即可單獨使用,此資料夾名稱可手動改 Package.ini 自訂。
上述最後的打包動作,為求謹慎,我把 Windows 10 更新到20H2最新版,利用Windows Sandbox 內建沙盒,在裡面安裝ThinApp最新版,然後把專案資料夾複製進去,在裡面執行「build.bat」打包。分開以新版封裝的作法是參考某忘了出處官方文件,Sandboxie 作為第三方沙盒軟體雖速度快,但覺得比較不適合用來做封裝。

以下幾個 Package.ini 設定值供參考,詳細可查官方手冊
  • [Isolation]
    • RegistryIsolationMode=WriteCopy、RegistryIsolationMode=Merged (隔離模式選擇)
  • [BuildOptions]
    • MSIIs64Bit=1 (64bit安裝檔)
    • Wow64=1 (64bit環境跑32bit必選)
    • AltArchitectureShortcut=1 (64bit環境跑32/64bit混用)
    • SandboxPath=.、SandboxPath=LocalSandbox\Subdir1、SandboxPath=%AppData%\Thinstall (選擇或修改Sandbox存放位置)
    • SandboxRemovableDisk=1 (USB隨身碟)
    • RemoveSandboxOnExit=1 (關閉軟體時清空沙盒)
    • PermittedGroups=Administrator;OfficeUsers (使用者群組權限)
    • OptimizeFor=Memory、OptimizeFor=Disk (效率還是體積優先)
    • OutDir=bin (封裝檔輸出位置)
  • [Compression]
    • CompressionType=Fast、CompressionType=None (壓縮與否)
  • [app.exe]
    • Disabled=1 (封裝時不建立該執行檔)

反覆修改封裝了幾個版本,最後留了完整版和精簡版個別zip起來,任務完成。

關閉 Windows 10 自動更新

自從使用 Windows 10 以來,常常被它的自動更新搞得人仰馬翻,後來微軟改成關機時更新影響有減少一點,但是更新版本之後有時會有意想不到的問題,而且有時候古董老電腦會跑不動了。

停用 Windows 10 自動更新,常用的方式有:
  1. Win+R 執行 services.msc 開啟「服務」,往下找到「Windows Update」,點進去按「停止」,並在啟動類型下拉選單選擇「手動」或「已停用」。
  2. 執行 gpedit.msc 開啟「本機群組原則編輯器」,
    • 若開啟不了,需以管理權限用命令提示字元輸入:「:"%SystemRoot%\servicing\Packages\{{Microsoft-Windows-GroupPolicy-ClientExtensions-Package*.mum}}」和「:"%SystemRoot%\servicing\Packages\{{Microsoft-Windows-GroupPolicy-ClientTools-Package*.mum}}」。
    • 開啟後在左側找到「電腦設定/系統管理範本/Windows 元件/Windows Update」,然後右側找到「設定自動更新」選項並打開,選擇「已停用」。或者可以選「已啟用」然後下面設定自動更新選項選「2 - 通知我...」。  
    • 另外在左側找到「使用者設定/系統管理範本/系統」,然後右側找到「Windows 自動更新」選項並打開,選擇「已停用」。
  3. 將使用中的 Wifi 設為計費網路,藉此阻止更新的下載,個人不推薦。
  4. 使用DISM++,這是個功能相當全面的優化設定軟體,向強者致敬。
    • https://www.chuyu.me/zh-Hant/
    • 左側選擇「系統最佳化」、右側選「Windows Update」,將Windows Update 自動更新調整為「僅檢查更新」。
  5. 使用 BlockWin10AU 開源批次檔,簡單方便。
    • https://github.com/f1tz/BlockWin10AU
    • 下載後以管理員權限執行即可,一次性關掉許多東西非常簡便,但是以後要恢復需一一處理會比較麻煩。
完全關閉系統更新會有風險,建議斟酌使用。

2021年2月15日 星期一

不裝軟體直接下載臉書高畫質影片 Download Facebook video in FHD without other software

今日要在FB下載一個自家孩子的小影片,網路上查發現不是要用軟體,就是方法過時了不管用,於是自己嘗試了一下,最後順利不依靠軟體直接下載最高畫質。

現在很流行影像聲音分開放,從網頁原始碼看得出來FB是以MP4格式存audio、WEBM格式存video。


一、影片部分:

FB電腦版網頁開啟到要下載的影片貼文,按右鍵檢視原始碼;以「FBQualityClass」或「FBQualityLabel」這二個參數搜尋,應該不會很多個,選品質最高的複製一整段,以下1080p範例:

========以下目標原始碼斷行方便閱讀========
FBQualityClass=\"hd\" FBQualityLabel=\"1080p\">\u003CBaseURL>
https:\/\/video.**************************&oe=????????
\u003C\/BaseURL>
========以上目標原始碼斷行方便閱讀========

被「\u003CBaseURL>」和「\u003C\/BaseURL>」夾住的那段就是目標網址參數,還需要清理一下。移除(搜尋並取代為空值)網址中的「\」及「amp;」,結果就是我們要的網址了,以瀏覽器開啟後直接可以下載。


二、聲音部分:

以「"audio":[」搜尋,找到幾筆跟下面字串差不多的資料。

"audio":[{"url":"https:\/\/****省略許多字****&oe=????????",之後忽略

我們要的是"https:\~"這段被「"」夾住的網址參數,移除其中的「\」,就是我們要的網址了,以瀏覽器開啟後直接可以下載。


三、合併:
最後把影片與聲音合併,網路上有許多方便快速的開源軟體,在此先不贅述。
不知道FB什麼時候會改變網頁結構/寫法,所以上述擷取方法有效期限未知。