如何使用foobar2000 + QAAC進行高品質的AAC編碼? 2025 年 1 月 7 日 Magic Len 軟體介紹 foobar2000是一個自帶音樂轉檔功能的音樂播放器,它能將它能播放的音樂轉成其它常見的音樂格式,其中也包括AAC編碼的格式。雖然都是編成同樣格式的音訊編碼,不同的音訊編碼器卻會造成不同的結果。目前普遍認為最好的AAC編碼器是蘋果公司出品的,然而Windows上的foobar2000並沒有自帶AAC編碼器,甚至它根本就沒有自帶任何的AAC編碼器,所以我們要怎麼使用foobar2000來將音樂檔轉... 繼續閱讀
foobar2000 免費、功能強大、自訂性高的音樂播放兼轉檔軟體 2025 年 1 月 2 日 Magic Len 軟體介紹 foobar2000(簡稱fb2k)是一款十分好用的免費軟體,它本質是音樂播放器,可以播放音樂檔案或者是音樂CD,並且如同其它音樂播放器,foobar2000也是支援DSP的。foobar2000特別的地方在於它的自訂性十分強大,圖形介面上要顯示什麼基本上都可以調整,但是又不會很佔用系統資源,聲音輸出也支援獨占模式,聽起來可能會比較純淨。除了音樂播放的相關功能外,foobar2000還提供了音訊格... 繼續閱讀
如何用JavaScript偵測網頁瀏覽器是否有擋廣告? 2023 年 12 月 23 日 Magic Len JavaScript 反反廣告應該是大部份有在經營網站的人都想做的事情,筆者也不例外。以前用過一些偵測AdBlock等軟體的套件都因年久失修而失效,因此決定來自己做一個。「AdBlock Checker」是筆者開發的套件,可以偵測網頁瀏覽器是否有擋廣告。 繼續閱讀
幫助存取HTML的時間日期元素值的函式庫 2023 年 12 月 23 日 Magic Len JavaScript 在預設的情況下,基於日期和時間的HTML input元素值是以UTC時區為基準,這很容易造成混淆而誤用。 繼續閱讀
如何根據容器大小自動調整HTML上的文字,使文字儘量不破壞排版 2023 年 12 月 23 日 Magic Len JavaScript 早在2017年筆者在開發前端網頁的時候就遇到兩個問題:如果要做一個網頁,這網頁滿版顯示,在任意螢幕尺寸下都要長的差不多,文字的大小要怎麼處理呢?還有就是在文字高度僅允許一行文字的空間下,要怎麼保證使用者輸入的文字不會因為太多而使得顯示出來的時候換行,或是換太多行了,而導致畫面跑版? 繼續閱讀
如何寫程式讀取中華民國健保卡內的資料?在網頁中也可以讀取嗎? 2023 年 12 月 23 日 Magic Len 作品分享、 JavaScript 中華民國的健保IC卡必須使用相容於PC/SC介面的IC讀卡機來讀取。PC/SC的規範是由微軟與其它IC卡廠商共同訂定出來的,統一了IC卡的介面。因此如果要讀取IC卡,要在環境安裝好讀卡機的驅動程式,並且使用PC/SC的函式庫提供的功能來讀取。不過要使用PC/SC函式庫,並不是每個執行環境都能夠做到,像是網頁瀏覽器現階段應該還做不到,要等Web Smart Card API出來才行,但還是有其它方式... 繼續閱讀
如何寫程式計算時間和日期的差距? 2023 年 1 月 24 日 Magic Len 研究分享、 Rust、 演算法、 JavaScript 有時候我們會需要寫程式去計算兩個時間點的差距,以求得年齡、經過了多少的時間,或是否還在某個期限之內等等的資訊。日(day)與時、分、秒的差距很好算,因為它們是固定的時間(不考慮閏秒)。但年、月就不一樣了,一個月可能有28至31天,一年可能有365或366天,我們無法直接將兩個時間點(的時間戳記)相減之後去除上一個固定的單位(例如拿相差的秒數去除以2592000秒)來算出隔了多少年、月,硬是要這麼算... 繼續閱讀
如何寫程式判斷閏年並計算一個月有幾天? 2023 年 1 月 3 日 Magic Len Go、 Java、 Rust、 JavaScript 我們在小學階段都會學到平年(common year)和閏年(leap year)的判斷方式,以及這兩種年份是差在前者的二月有28天,後者則是有29天。所以平年整年一共有365天;閏年整年一共有366年。這是身為一個地球人的基本常識,但在小學的時候,老師可能只會告訴我們把西元年份的數字除以4,如果可以整除,那麼這年就是閏年,否則是平年。老師說的也不能說是錯的,只是不太完整,實際上,閏年的正確判斷方式... 繼續閱讀
如何讓 JavaScript 程式等待(睡眠)一段時間? 2022 年 12 月 27 日 Magic Len 研究分享、 JavaScript 雖然在撰寫程式的時候,在大部份的情況下我們都想要讓程式執行速度愈快愈好。但有時候在寫測試程式或是爬蟲時,我們會希望讓程式等待一段時間再繼續執行,以模擬I/O延遲或是真人操作延遲的效果。不過JavaScript並沒有直接提供讓執行緒睡眠(sleep)的功能,要怎麼模擬出sleep函數呢? 繼續閱讀
解決 apt upgrade 某些套件不能被升級的問題 2022 年 12 月 22 日 Magic Len Linux 有時候我們在Debian或是其衍生的Linux發行版上安裝或是升級套件之後,會看到有一些套件被保留下來,出現「The following packages have been kept back」訊息,此時再使用「apt upgrade」指令也無法升級它們。這是因為「apt upgrade」是最安全的升級套件的指令,如果被升級的套件在升級後需要安裝額外的套件,或是需要移除掉現有的套件時,「apt ... 繼續閱讀