跳到主要內容

發表文章

Linux mint/Ubuntu 安裝 Shutter 螢幕擷圖軟體

Shutter 不只免費,可說是目前最佳的擷圖軟體 Linux Mint 雖然也有一套很基本的螢幕擷圖軟體,但由於太過於陽春,再加上每次擷圖儲存後,需要使用滑鼠按左上角的返回鍵,否則若要再擷圖又得再開啟一次,並不是那麼的方便。 使用過多套的擷圖軟體後,Shutter 可說是最佳的擷圖軟體,功能比起 Windows 中較熱門的如 FastStone Capture、PicPick 有過之而無不及,如此好用的擷圖軟體,目前只有 Linux 版本,並無 Windows 或 iOS 版本。 在 Linux Mint/Ubuntu 若是開啟【軟體管理員】搜尋「Shutter」,你會發現軟體管理員並無法搜尋到 Shutter,所以只能使用【終端機】透過下列的 PPA 語法來進行安裝了。 sudo add-apt-repository ppa:linuxuprising/shutter sudo apt-get update sudo apt install shutter 安裝完成 Shutter 後,首要作業便是進行「偏好設定」,偏好設定位於【編輯 -> 偏好設定】,Shutter 的偏好設定較特別的是,你可以自己去設定多組配置檔,在擷圖前先設定所要的配置檔,Shutter 便會依照所設定的內容去執行。 在右下角的「配置檔」中可選擇該次擷圖所要執行的方式 Shutter 還有個擷取整個網頁的功能,要開啟此功能必須要安裝「gnome-web-photo」,此時只要開啟終端機,並執行「sudo apt install gnome-web-photo」,安裝完成後,必須要將 Shutter 重新啟動,該功能才會有作用。 Shutter 安裝時並不會順便安裝「gnome-web-photo」,需自行安裝才能開啟擷取網頁的功能 因每個網頁的大小不同,因此可設定擷圖的時間,但別用來擷取如 Facebook 這類的網頁,經過初步的測試,只會擷取到登入的畫面。 安裝「gnome-web-photo」,擷取網頁的功能才會有作用 當按下「擷取網頁畫面」按鈕後,只要輸入所要擷取的網址,即可進行網頁的擷圖作業了。 最後,Shutter 還有簡易編輯的功能,雖然功能十分的簡單,但也足以應付一般的編輯,畢竟 Shutter 主要功能是螢幕擷圖,編輯只是其附加的...

Android Studio - Execution failed for task ':app:kaptDebugKotlin'. 問題解決

使用 Android Studio 開發完成一個小小的 Room 的 APP 後,執行「Run 'app'」時,卻發生了【Execution failed for task ':app:kaptDebugKotlin'.】的錯誤。 Grandle Build Running 時便出現了錯誤 查了一下全部的錯誤訊息,出現了「To use Coroutine features, you must add `ktx` artifact from Room as a dependency. androidx.room:room-ktx:<version>」的關鍵訊息,看來有可能是 build.gradle 中少了「implementation "androidx.room:room-ktx:$room_version"」所造成的。 在 build.gradle 中加上 implementation "androidx.room:room-ktx:$room_version" 後,果然就無此錯誤了。 在 build.gradle 中加入了 implementation "androidx.room:room-ktx:$room_version",再執行「Run 'app'」便無此錯誤了

Linux Mint/Ubuntu - 修改Grub開機倒數秒數

Linux Mint 是基於 Ubuntu 的 Linux,由 Linux Mint Team 於 2006 年開始發行。安裝完 Linux Mint 後,若是使用 EFI/UEFI 系統,且有切割第一個分割區給 EFI(若無分割可能無法安裝),安裝完成後重新開機時, Linux Mint 都會有 Grub 系統選單,且倒數秒數長達 30 秒,不管是否是雙系統,應都會覺得好像秒數太長了些。 為了解決這個問題,上網找了許久,大多數都會寫修改 /etc/default/grub 檔,修改後,執行「sudo update-grub」後,重新開機一樣還是倒數 30 秒。另有的寫直接修改 /boot/grub/grub.cfg 檔,的確有用,但只要更新核心Grub 或執行「sudo update-grub」後,原本的設定又失效了。 Grub 的運作,的確是根據 /boot/grub/grub.cfg 檔來執行,而 grub.cfg  的內容則是依據 /etc/default/grub 檔案 和 /etc/grub.d 資料夾的內容所生成,因此若是直接修改 grub.cfg 並不是最好的方式。 要修改 Grub 開機倒數秒數問題,只要修改 /etc/grub.d 資料夾內的「00_header」檔案即可。 要修改 grub.d 資料內的檔案,在資料夾內按下滑鼠右鍵,再選擇「以root權限開始」。 開啟「00_header」檔案,先搜尋到如上的內容,該內容為修改系統 EFI 的部份,若要改成3秒,只須將「-30」改成「-3」即可 接著再搜尋到如上的內容,該內容是在修改當先前啟動失敗的檢查 完成以上的修改後,最後記得要再開啟「終端機」,並執行「sudo update-grub」,才能有效的修正 grub.cfg。 sudo update-grub 若有順利執行,則會出現如上的內容 開始 /boot/grub/grub.cfg,便可看到如上兩處內容的秒數已變更為 3 秒了   ——————————————————————— 經過以上的修改後,不管系統...

Android Studio 如何修改 Package Name

  Android Studio 的 Package Name 是在建立方案(Project)時即設定了,若在建立方案時並未考慮清楚,或是上架 Google Play 時發現與他人的重複時,此時最簡單的方式,便是修改 Package Name。 首先在 Tool Windows 的 Project 項目內,並在【app→java→Package Name】按下滑鼠右鍵,並點選「Refactor→Rename」。 此時會出現警訊視窗,因我們要變更 Package Name,因此要點選「Rename package」。 接著會出現【Rename】視窗,輸入所要變更的 Package Name,並按下「Refactor」按鈕。 完成以上步驟,所有程式的 Package 便全變更了,接著再點選【Gradle Scropts→build.gradle】,將 defaultConfig 內的「applicationID」修改成與 Package Name 相同。 完成上述的步驟後,會發現 build.gradle 所指向的 Package 仍然還是指向舊的名稱,此時接著 再點選【Gradle Scropts→settings.gradle】,將 rooProject.name 修改成與 Package Name 相同。

Android Studio 多國語系設定-解決「Hardcoded string "XXX", should use @string resource」警訊

開發程式時,在設計按鈕或文字方塊等時,為了快速,通常都會直接設定該物件的顯示名稱,如此的做法並不會有任何的問題,但並非好的做法,在 Android Studio 若直接設定物件顯示的名稱或字串,會出現「Hardcoded string "XXX", should use @string resource」的警訊,出現該警訊並不會造成任何問題,它只是在告訴你正確的方式應是將顯示字串,設定於 @string resource 中 。 Android Studio 有針對字串的管理,因此在設計時,最好的方式是使用字串資源。使用字串資源最大的好處,就是統一命名及多國語系,當某個字串要變更時,只要將該字串所對應的ID的字串值改掉,整支程式有對應到該 ID 的字串,就會一併變更,而最大的缺點就是程式設計上稍微麻煩些,以及當字串 ID 管理不當時,可能會造成多個字串 ID 對應同一字串值。 新增語系 若設計成多國語言,先要增加 Strings.xml 的語系: 一、首先在「res→values」上按下滑鼠右鍵,並選擇「New→Values resource file」 二、先在「File name:」內輸入【strings】,接著點選左方的「Locale」,再按下中間的「>>」按鈕 三、選擇所要設定的語系 完成以上三個步驟,在 strings 中會出現剛剛所設定的語系了 設定字串值 設定字串值的方式有兩種,分別是「自行輸入」和透過「Pick a Resource」視窗 自行輸入 只需在所對應的 strings 內增加如下的語法即可:<string name="String ID">String Name</string> 透過「Pick a Resource」視窗 一、使用滑鼠並點選物件屬性「text」右方的「Pick a Resource」按鈕,如下圖所示。 二、此時會出現「Pick a Resource」視窗,接著點選左上方的「+」,再選擇「string Value...」 三、輸入「Resource name:」及「Resource value:」的名稱及字串值,並在下方選擇所要設定的語系,雖然 Android Studio 支援...

Oracle常用的數學函數

Oracle常用的數學函數有: CEIL、FLOOR、ROUND、TRUNC、ABS、MOD、POWER 以下針對上述的數學函數做介紹: CEIL(n):傳回數字的最大整數 EX1:SQL> SELECT CEIL(5.52) FROM DUAL; CEIL(5.52) ---------- 6 EX2:SQL> SELECT CEIL(-2.01) FROM DUAL; CEIL(-2.01) ----------- -2 FLOOR(n):傳回數字的最小整數 EX1:SQL> SELECT FLOOR(5.52) FROM DUAL; FLOOR(5.52) ----------- 5 EX2:SQL> SELECT FLOOR(-5.52) FROM DUAL; FLOOR(-5.52) ------------ -6 ROUND(n [,m]):對n值做四捨五入,如有輸入m值,則表示由n值小數點前、後第m位做四捨五入,m需為整數,預設值為0 EX1:SQL> SELECT ROUND(5.52) FROM DUAL; ROUND(5.52) ----------- 6 EX2:SQL> SELECT ROUND(5.52, 1) FROM DUAL; ROUND(5.52,1) ------------- 5.5 EX3:SQL> SELECT ROUND(25.52, -1) FROM DUAL; ROUND(25.52,-1) --------------- 30 TRUNC(n [,m]):對n值做無條件捨去,如有輸入m值,則表示由n值小數點前、後第m位做無條件捨去,m需為整數,預設值為0 EX1:SQL> SELECT TRUNC(5.52) FROM DUAL; TRUNC(5.52) ----------- 5 EX2:SQL> SELECT TRUNC(5.52, 1) FROM DUAL; TRUNC(5.52,1) ------------- 5.5 EX3:SQL> SELECT TRUNC(25.52, -1) FROM DUAL; TRUNC(25.52,-1) --------------- 20 ABS(n):對n值取絕對值...

Oracle常用的數字格式介紹

Oracle的數字格式可以使用「TO_CHAR」或是「TO_DATE」來顯示。 Oracle常用的數字格式如下:   格式 描述 範例 . 顯示小數點 select to_char(123.68,'99999.9') from dual; -->   123.7 , 顯示分隔符號「,」,如使用「,」做為分隔符號,則小數點必須用「.」 select to_char(123123.68,'999,999.99') from dual; --> 123,123.68 D 顯示預設的小數點符號【預設為「.」】 select to_char(123.68,'99999D99') from dual; -->   123.68 G 顯示預設的分隔符號【預設為「,」】,如使用「G」做為分隔符號,則小數點必須用「D」 select to_char(123123.68,'999G999D99') from dual; --> 123,123.68 9 數字格式完全以設定的格式來顯示,多餘的部份以「空白」顯示 select to_char(123.68, '9999999.99') from dual; -->     123.68 0 數字格式完全以設定的格式來顯示,多餘的部份以「0」顯示 select to_char(123.68, '0999999.99') from dual; --> 0000123.68 FM 以所設定的格式來顯示,多餘的部直接隱藏 select to_char(123.68, 'FM9999999.99') from dual; ...