:::
顯示具有 Software/Windows 標籤的文章。 顯示所有文章

釋放Notepad++黑暗力量:開啓黑暗模式 / How to Enable Dark Mode in Notepad++ 8

釋放Notepad++黑暗力量:開啓黑暗模式 / How to Enable Dark Mode in Notepad++ 8

5-cover-Notepad_How_to_enable_the_Dark_Mode.png

哈囉,大家最近在吃什麼呢?這裡是努力讓藍牙耳機配對到Linux電腦上的布丁。

程式開發者爲了閱讀以文字爲主的大量程式碼,通常偏好將程式編輯器改成偏暗的黑暗模式,可以讓閱讀程式的時候舒服許多。知名的Windows專用軟體Notepad++是程式開發者不可或缺的編輯器。早期Notepad++必須設定主題來啓用黑暗模式。在2021年發佈的8.0版本,Notepad++直接加入了黑暗模式(Dark Mode),設定起來更加直覺了。

接下來就讓我們來看看,怎麼在Notepad++裡面開啓黑暗模式吧。

(more...)

如何合併多個純文字檔案並加上換行:使用Notepad++ / How to merge plain files in a single file with broken lines: Using Notepad++

如何合併多個純文字檔案並加上換行:使用Notepad++ / How to merge plain files in a single file with broken lines: Using Notepad++

12-Notepad_How_to_merge_plain_files.png

ALOHA~~我是就算為了一個小小的合併檔案工作也不想寫程式的布丁。

我們很多時候需要將大量的純文字檔案合併成一個檔案,並且希望在各個檔案之間加上換行。單純將純文字檔案合併成一個檔案的做法很多,但是要能夠正確識別中文編碼,還要在合併的檔案之間加上斷行,那就不太容易了。

令人意外的是,Windows上好用的純文字編輯器Notepad++,它的Combine外掛居然有合併多個純文字檔案的功能。讓我們來看看怎麽操作吧。

(more...)

網站負載測試器:Electron Web Speed Testing / Test Website Performance: Electron Web Speed Testing

網站負載測試器:Electron Web Speed Testing / Test Website Performance: Electron Web Speed Testing

簡報1

我們所開發的網站應用大多時候都是預設給多人同時上線使用,但是你要怎麼確認這個網站能夠容納多少人同時上線呢?網站負載壓力測試(web performance testing, web speed testing, load testing)就是模擬許多使用者同時上線存取網站內容,並記錄網站的反應時間以及超出負荷而當機的上限。

網站負載壓力測試工具中較為知名的跨平台工具是Apache JMeter,但它的設定較為複雜,操作門檻高。所以我用Electron另外開發了一個簡單版的網站負載測試器Electron Web Speed Test ,希望讓大家更容易測試自己網站的負載容量。

(more...)

混合應用程式框架試做:薑黃喵討摸摸 / Hyper APP Framework: Ginger Cat Touch

混合應用程式框架試做:薑黃喵討摸摸 / Hyper APP Framework: Ginger Cat Touch

簡報1

之前我介紹用HTML撰寫的混合應用程式框架點閱數意外的很高(本社比),藉著2018年底停車場的薑黃喵被好心人收養之際,我用混合應用程式框架開發了「薑黃喵討摸摸」的APP,可以在網頁開啟、Windows直接執行、也已經在Google Play上架,可在Android上安裝。這篇就記錄一下這個「薑黃喵討摸摸」APP吧。

(more...)

Android適合生產力應用嗎?文字和圖片的操作分析 / Productivity in Android? Difference between Android and Windows in Text and Image Copy/Paste

Android適合生產力應用嗎?文字和圖片的操作分析 / Productivity in Android? Difference between Android and Windows in Text and Image Copy/Paste

簡報1

在上次「閒聊智慧型手機上玩手遊用的鍵盤滑鼠遊戲控制器」的最後,我提到Android似乎逐漸朝向「行動辦公室」的方向發展。但就選取文字和圖片的這種基本操作來看,其實Android離真正的生產力應用似乎還有一段距離。這篇就讓我來說明一下為什麼會是如此吧。

(more...)

Google簡報製作一頁二張投影片的PDF列印講義 / Create Hangout PDF on 2 Slides per Page from Google Slides

Google簡報製作一頁二張投影片的PDF列印講義 / Create Hangout PDF on 2 Slides per Page from Google Slides

簡報1

我之前介紹過如何將4張投影片8張投影片濃縮在一頁中,製作成方便列印的講義。這次我們要從Google簡報開始,教大家如何製作2張投影片印在同一頁中,並且為講義加上頁碼喔!

(more...)

純文字檔案的編碼與內文批次轉換:Big5轉UTF-8 / Batch convert Plain Text Files for Encoding and Content Replacing: Big5 to UTF-8

純文字檔案的編碼與內文批次轉換:Big5轉UTF-8 / Batch convert Plain Text Files for Encoding and Content Replacing: Big5 to UTF-8

image

圖書資訊與檔案學領域中時常使用XML作為交換後設資料的格式。然而,由於早期系統大多為大五碼Big5編碼,並不能夠直接相容於現在的主流使用的萬國碼Unicode編碼,特別是比較常用的UTF-8編碼。如果要將XML這種純文字格式的檔案從Big5轉換成UTF-8的話,除了拜託程式設計師撰寫轉碼工具之外,我們也可以用Windows上現成的免安裝軟體ConvertZNotepad++Portable來完成這件事情。讓我們來看看怎麽操作吧。

(more...)

用HTML5開發網頁APP、桌面APP、跟行動裝置APP:混合應用程式框架 / Hybird APP Framework for Web APP, Desktop APP and Mobile APP

用HTML5開發網頁APP、桌面APP、跟行動裝置APP:混合應用程式框架 / Hybird APP Framework for Web APP, Desktop APP and Mobile APP

image

HTML5 (JavaScript + CSS3)可以在網頁上跨平臺執行已經是眾所皆知的常理,但是要如何用HTML5來開發能在瀏覽器上執行、能夠在桌面作業系統上安裝、還能夠在行動裝置(手機、平板)上安裝的應用程式呢?這個OnsenUI+Vue.js+Electron+PhoneGap Build的「混合應用程式框架」就是我的答案。

因為這只是最近心血來潮整理出來的混合做法,架構上並不是很漂亮,我也沒有打算寫太多文件。但對於想要發揮HTML5極限的開發者來說,應該是個不錯的參考。


程式碼 / Source code

image

混合應用程式框架保存在GitHub中,任何人都可以自由下載、修改、發佈。

軟體展示 / Demo

在混合應用程式框架中,我們只要開發一個HTML5框架,就可讓它以在網頁瀏覽器、桌面端應用程式、行動端應用程式執行。你可以實際玩玩看,看看混合應用程式框架會是什麼樣子:

接下來我用以下幾張截圖跟照片來讓大家看看它在不同平臺上的樣子:

網頁瀏覽器截圖 / Run in Web Browser

image

這是在Chrome網頁瀏覽器上的畫面。

Windows桌面版應用程式截圖 / Run in Windows

2018-05-24_153932

這是在Windows桌面端執行的畫面。

Android手機應用程式截圖 / Run in Android Phone

Screenshot_20180524-164945

Screenshot_20180524-164949

這是在Android手機上執行的畫面。

Android平板應用程式截圖 / Run in Android Tablet

Screenshot_20180524-165216

Screenshot_20180524-165208

這個是在Android平板 (8吋)上執行的畫面。

除了一些元件的位置怪怪的之外,大致上畫面都能夠正常呈現,很不錯吧。

接下來就讓我們來看看混合應用程式框架怎麼做到這件事情的吧。


框架架構 / Framework architecture

image

我把「混合應用程式框架」的架構整理成上面四個層次:顯示畫面 (Display)、平臺轉接(Platform Transport)、裝置(Client Device)、作業系統(Client Operation System, OS)。其中藍色的部分是我們可以掌握的元件,而灰色的部分對應不同使用者會用的客戶端。以下說明顯示畫面跟平臺轉接的細節。

顯示畫面 / Display

2018-05-24_153932

這邊使用的是Onsen UI,一個成熟的HTML5顯示框架。而控制資料邏輯的MVVM架構使用的是Vue 2。

我已經在「政大借書籃」跟「Voc4Fun全民樂單字」使用Onsen UI框架,但那時候Onsen UI只有跟Angular.js整合。現在Onsen UI已經開發到第二版,而且可以跟jQuery、Vue 2整合。

站在一個想要追求快速開發的角度,Vue算是相當好上手的MVVM架構。而這裡我選擇的是不編譯的Vue架構,因此可以直接在瀏覽器上執行,不需要任何打包或封裝。

平臺轉接 / Platform Transport

混合應用程式框架基本上可以直接用網頁瀏覽器開啟,但如果要打包成不同裝置上可以安裝的應用程式(APP),我們需要藉助一些平臺轉接的框架。

轉接桌面端應用程式:Electron / Electron for Desktop Application

Electron_0.36.4_Icon

(圖片來源:維基百科)

為了產生可以在桌面端作業系統安裝的應用程式,我們使用的是GitHub開發的知名框架Electron。

Electron可以產生給Windows、Mac OS、Linux使用的應用程式。這邊我主要只用Windows,Electron會在Windows平臺中產生可執行檔案,我寫了AutoIT將設定包裹成exe檔案,讓使用者可以直接點選執行。未來也可以更進一步使用InnoSetup打包成安裝檔。

至於Linux跟Mac OS我則沒有測試過,Linux可以直接用Electron打包,但我沒試過能不能執行。至於Mac OS,則必須要在Mac環境下打包才能使用,因此我也沒有試過。

之前我已經在「試做Electron桌面應用程式:webapp-wrapper」整理了一個簡單的基礎,現在我把它整合到混合應用程式框架中,讓Electron更容易將HTML5打包成桌面端應用程式。

轉接行動端應用程式:PhoneGap Build / PhoneGap Build for Mobile Application

Phonegap-build-mobile-app-development-tool-300x245

(圖片來源:boston technology)

為了產生可以安裝在行動裝置上的應用程式,包括手機、平板,我們使用的是PhoneGap Build。

PhoneGap Build提供了將HTML5程式打包成Android、iOS、Windows Phone三種平臺APP的功能。不過因為建構iOS APP需要具備開發者身份(每年需繳交不少費用),而Windows Phone已經沒落,所以實際上我只有用PhoneGap Build打包成Android APK而已。

我以前就有在「PhoneGap網頁樣板:簡單建立網站APP」寫過使用PhoneGap Build來建構網站APP的做法,跟Electron一樣,我也把它整合到混合應用程式框架中,成為大框架下的一份子。
值得一提的是PhoneGap Build雖然採用的是Apache Cordova核心,但這個名稱卻是描述在Adobe提供的伺服器上打包APP的整個流程,而不是像是Cordova在本機端部署環境、打包應用程式的做法。


功能 / Features

在混合應用程式框架中,我整理了一些在開發中可能會用到的功能,這是為了未來開發做的準備。這些功能包括了作為一個應用程式(APP)所需要的排版(包括主畫面、上方的工具列、左方的滑動選單)、主畫面的換頁、通知對話視窗、開啟外部連結、儲存由JSON產生的試算表檔案ODS、MVVM資料綁定、國際化語系、以遊戲引擎運作。以下簡單說明這些功能。

1. 排版與換頁 / Layout and Pages Navigation

image

混合應用程式使用了行動裝置為主的APP排版,主要畫面分成3大部分:1. 主畫面、2. 工具列 (toolbar)、3. 滑動選單 (sliding menu)。主畫面顯示該頁的主要內容,工具列會一直固定在畫面上方,而左邊的滑動選單則是會隨著你的畫面寬度動態的顯示、隱藏,你也可以按下工具列的選單按鈕來顯示滑動選單。

受益於OnsenUI的Auto Style功能,功能元件在不同平臺上會有些微的不同。舉例來說,下圖是iOS中的工具列:

image

下圖則是Android中的工具列:

image

我把換頁的方法包裝在onsenui_helper中,JavaScript語法如下:

onsenui_helper.switch_page(about)
2. 通知對話視窗 / Notification dialog

image

混合應用程式框架的使用了OnsenUI的$ons.notification功能來實作對話視窗。

受益於OnsenUI的Auto Style功能,上圖iOS風格的對話視窗在Android底下會變成下圖這個樣子:

image

通知功能的JavaScript語法如下:

vm.$ons.notification.confirm({      message: i18n.t("Are you sure to visit About?"),      callback: function (_result) {          console.log(_result);      }

});
3. 開啟外部連結 / Open link with your default browser

image

點下一些非APP內的連結時,混合應用程式框架提供了一些方法來讓他使用你預設的瀏覽器開啟。這部分我用hybird_app_helper來處理不同平臺的做法,JavaScript語法如下:

hybird_app_helper.open_window('https://github.com/pulipulichen/HTML5-Hybird-APP-Framework')
4. 儲存由JSON產生的試算表檔案ODS

image

這邊使用了JS-XLSX套件來讓JSON物件轉換成ODS試算表格式。JS-XLSX的功能複雜,網路上大部分的教學都亂七八糟,最好的用法還是官方自己提供的上傳分析轉換下載範例。我整理了JSON轉換成ODS Base64編碼的做法,寫在xlsx-helper.js檔案中。

另外的問題是如何讓裝置下載,或是說儲存、分享檔案。在網頁上,我使用的是FileSaver.js。在桌面端,我使用了Electron的ipcMain跟ipcRenderer來交換資料,讓網頁介面跟背後的Electron能夠彼此溝通,交給Electron寫入檔案。雖然Electron端已經很複雜了,但比不上在行動端的麻煩。在PhoneGap Build中,我先用cordova-plugin-file將ODS檔案寫入到cache暫存資料夾,然後使用PhoneGap / Cordova Social Sharing plugin來分享檔案。

5. MVVM資料綁定

image

混合應用程式框架使用了Vue.js的MVVM框架讓資料與顯示雙向綁定。主畫面中的「Hello, world!」綁定的是JavaScript中的「main_page.data.message」。顯示的程式設定如下:

image

而這個「main_page.data.message」則是寫在main_page.js中,資料的程式設定如下:

image

只要修改「main_page.data.message」的值,顯示畫面也會跟著改變。這是Vue.js這種MVVC框架的基本應用,相信熟悉MVVC框架的開發者應該很容易理解。

6. 國際化語系 / Localization

image

混合應用程式框架使用了javascript-i18n-core來作為語系檔的框架。以工具列中間的標題為例,我們可以用這個JavaScript語法來取得索引名稱「TITLE」的翻譯設定如下:

{{ i18n.t("TITLE") }}

語系檔放在www/locale資料夾中,裡面可以設定各個語系與對應索引名稱。

7. 以遊戲引擎運作:Cocoon.js / Game engine demo: Cocoon.js

image

為了挑戰混合應用程式框架的極限,我試著加入了Cocoon.js遊戲引擎框架所開發的兩款展示遊戲:SpaceSimDemoSuper Mario Bros

大家可以看看混合應用程式框架在網路瀏覽器、桌面端、行動裝置上玩遊戲是什麼感覺,也許未來也可以取代OnsenUI,使用Cocoon.js開發遊戲呢?


小結 / In closing

混合應用程式框架只是我為了未來可能會開發真正的跨平臺應用程式而做的一個小小的準備。我怕我現在不整理,以後可能就會忘記,所以做到這邊就趕快記錄一下。

30485967745854535578

(圖片來源:幫趣)

這整篇並沒有什麼提供給開發者的文件,請有心要使用這個框架的開發者自行trace code,程式碼都在GitHub上,請自行研讀、fork或下載吧。

開發感想 / Thoughts

接著來聊聊一些開發過程的想法。

混合應用程式框架實際上是要寫UI顯示畫面邏輯、 Electron跟桌面端底層作業系統的溝通、PhoneGap Build跟手機端底層裝置溝通的龐大架構。雖然都是用JavaScript來寫,但是不同框架下面使用的API都完全不一樣。雖然號稱跨平臺,但是還是要為不同平臺下很多功夫,實際上並沒有真的這麼跨平臺。

現在有很多開發框架是更加的跨平臺,像是Unity,但畢竟這個門檻比較高,不能直接將網頁使用的技術帶過去使用。而且對快速開發來說也不見得是比較方便。

用網頁來寫UI還是可以讓開發者有很大的自由度,特別是現在CSS3發展成熟,許多特別的UI介面又漂亮又好用,還能作出驚人的特效。我想未來我還是會繼續使用網頁來開發任何應用吧。

速度問題 / Performance issues

在開發的過程中很多人會問的是速度問題,這是PhoneGap令許多開發者詬病的問題。這個速度問題其實細分起來有兩個層面。第一個是載入,PhoneGap在開啟程式的時候,需要用「document.addEventListener("deviceready",function () {});」來確保cordova核心套件有正常載入,因此不管硬體效能多好,通常載入時間還是需要0.5秒。

image

一般來說我們會使用splash載入畫面讓使用者不會覺得太過突兀,在混合應用程式框架中也會預設使用icon.png作為載入背景畫面。

另一個問題是畫面運作時的流暢度。在Ionic Framework vs React Native Comparison這個影片中,我們可以看到基於Ionic Framework包裝的應用程式運作效能非常的差,已經到了妨礙使用體驗的程度了。但這個問題通常是因為程式寫的不好,最常見的情況,是因為開發者在轉場動畫上使用連續改變物件位置參數來營造動畫感,這卻是相當不流暢的做法。

現在比較好的做法是採用較好的顯示畫面框架,像是Onsen UI。或是根據How to Make High Performance PhoneGap Apps來修正你的程式架構。不過光是混合應用程式框架現在的架構,在各個平臺運作起來就已經很流暢了,我想就一般的應用程式來說是已經足夠使用。

如果要到玩遊戲的話,雖然看起來是可以運作Cocoon.js這種遊戲框架,但是還是不知道它的流暢度極限到底在那裡。但因為我可能比較不會朝遊戲的方向開發,這部分就待有心人士來測試吧。

其他跨平臺框架 / Cross platform framework

比起原生應用,我仍然比較偏好可以跨平臺的框架。

儘管許多知名的框架號稱自己是跨平臺,但其實也都是限制於行動裝置的平臺或桌面端的平臺,並不是真的能夠橫跨網頁、桌面端與行動裝置端,這也是我做這個混合應用程式框架的動機。
大部分的跨平臺框架有許多門檻,像是React NativeNativeScript。當然,這些門檻在混合應用框架裡面也是難以避免。

第一個門檻是編譯。幾乎現在主流的跨平臺框架都需要先進行編譯,然後才能展示最後的成果。只要框架使用了作業系統上的原生UI,幾乎都需要編譯後才能使用。React Native提供了Hot Reloading減少重複編譯的問題,但是還是需要部屬相關的編譯環境。相較之下,混合應用程式框架藉助了Adobe PhoneGab Build來編譯行動端的應用程式,我們只要用Git或壓縮成zip上傳即可,部屬環境不需要煩惱。但是如果要用Electron編譯成桌面端應用程式,那還是要用npm來安裝Electron需要的環境。Electron編譯環境所需要的指令請看README說明

第二個門檻是API。雖然框架提供了跨平臺都能使用的UI API,像是特定的按鈕、特定的工具列寫法,但這個框架的API常常已經有別於傳統網頁的做法,並非一般網頁開發者所謂的HTML5,幾乎等於你要重學一個語言。而這語言使用的API並不能帶到其他平臺上,像是網頁或桌面端的Electron,因此不能說是真的跨平臺。儘管混合應用框架本身也用了OnsenUI跟Vue.js等框架,讓人需要重新學習這些框架的用法。不過至少OnsenUI上所寫的工具列是真的可以在網頁、桌面端跟行動端正常顯示,而不會被原生UI的限制所綁架。

Electron的限制 / Huge file from Electron

相較於行動裝置端有許多大紅大紫的知名跨平臺框架,桌面端的跨平臺框架倒是只有Electron比較知名。混合應用程式框架也是使用Electron來實作桌面端應用程式的跨平臺開發。

然而,Electron最大的問題,還是它編譯出來的檔案大小實在是太大了。在www中的主要程式其實只有16MB左右,但混合應用程式框架最後編譯出來的檔案大小居然來到136MB,壓縮成7z也還有35MB之多。網路上有許多人對Electron檔案大小感到疑惑,Expected app bundle size?  中zcbenz說就是這樣大小,沒辦法。我也覺得很無奈。

剛好今天看到了新的桌面端跨平臺框架出現:Vuido,這是用Vue.js撰寫桌面端應用程式的框架,可以使用桌面端原生的UI元件,而不是像我使用混合應用框架中實際上是寫一個網頁來模擬UI介面的做法。檔案大小似乎比Electron還要小,速度上也應該會比Electron還要快吧。不過我個人還是比較喜歡寫網頁,用網頁做UI介面,因此應該不會選擇這個方案,還是繼續使用Electron吧。


好啦,混合應用程式框架就聊到這邊了。

你有想過要開發跨平臺的應用程式嗎?以前你都是怎麼做的呢?除了像混合應用程式框架使用的OnsenUI + Vue.js + Electron + PhoneGap Build之外,你還知道什麼不錯的框架嗎?對混合應用程式框架什麼問題的話,歡迎你在下面的留言發問。如果你也覺得混合應用程式框架是個開發跨平臺應用程式不錯的起點,請幫我在AddThis分享工具按讚、將這篇分享到Facebook等社群媒體吧!感謝你的耐心閱讀,讓我們下一篇見。

(more...)

PDF的文字錯誤怎麼辦?修正PDF上錯誤的OCR文字 / How to perform OCR PDF with Renderable Text Error

PDF的文字錯誤怎麼辦?修正PDF上錯誤的OCR文字 / How to perform OCR PDF with Renderable Text Error

image

雖然PDF檔案是標準格式,但是隨著PDF檔案產生的方法不同、文字辨識OCR工具帶來的字型與編碼問題,很多早期的PDF檔案雖然可以選取、複製文件上的文字,但複製出來的文字卻會是亂碼。我參考了Grant Robertson的建議,將PDF輸出到XPS印表機,再將XPS輸出成PDF,這樣就可以在PDF上進行OCR辨識,最後就能得到正確辨識的檔案了。以下我就來整理這一套做法,供大家參考參考。

(more...)

如何讓PDF文件歪斜轉正?使用Acrobat Pro的編輯PDF工具 / How to Deskew and Straighten a Scanned PDF in Acrobat Pro

如何讓PDF文件歪斜轉正?使用Acrobat Pro的編輯PDF工具 / How to Deskew and Straighten a Scanned PDF in Acrobat Pro

image

在數位化的時代裡面,現在很多文件都是以PDF的方式保存。以往數位典藏盛行的時代,許多PDF並非是原生的電子文件,而大多是由列印或影音下來的紙本掃描而成。而掃描的文本最常見的問題就是偏斜、不正,這會造成電腦與平板閱讀的時候有很多問題。這篇我介紹使用Adobe Acrobat Pro來將掃描文件以OCR技術使之變成可選取的文字,再以編輯EDIT功能將歪斜的文字校正至垂直。做法很簡單,我想應該很多人會需要這樣的技術,在這裡整理一下這整套做法。

(more...)

以AutoIT實作Weka預測執行檔 / Making Predictions with Weka Executable File: an AutoIT Application

以AutoIT實作Weka預測執行檔 / Making Predictions with Weka Executable File: an AutoIT Application

image

繼前一篇使用指令列來操作Weka進行預測之後,這一篇就要用AutoIT來操作Weka進行預測,並以AutoIT將預測結果傳送給其他程式,例如傳送到Google表單中記錄預測結果。

(more...)

最容易整合的指令列播放器:MPV使用說明 / Customizing a Media Player for Your Application: MPV Player Usage

最容易整合的指令列播放器:MPV使用說明 / Customizing a Media Player for Your Application: MPV Player Usage

image

最近常常要在Windows桌面環境中設計數位學習教學活動。有時候我們會需要使用全螢幕播放影片、聲音或圖片,甚至需要一張全螢幕的黑幕或白幕當背景。這種時候開放原始碼高度可自訂化的MPV全能播放器就能夠順利派上用場。搭配AutoIT高度自訂腳本,我們就能整合多個不同的Windows應用程式來完成一個豐富的教學活動。

(more...)

如何在Weka中顯示中文:調整檔案編碼為UTF8 / How to Process Chinese Data in Weka: Set fileEncoding to utf-8

如何在Weka中顯示中文:調整檔案編碼為UTF8 / How to Process Chinese Data in Weka: Set fileEncoding to utf-8

image

在Windows中使用Weka來處理非英文語系的資料時會變成亂碼,這是因為它的參數設定預設為Cp1252 (拉丁字母字元編碼)。只要在Weka設定檔RunWeka.ini中修改fileEncoding為utf-8,就能讓Weka順利顯示中文。

(more...)

一秒變灰階!Windows圖片轉灰階工具 / Color Image to Grayscale Converter

一秒變灰階!Windows圖片轉灰階工具 / Color Image to Grayscale Converter

image

我在掃描的文件會有灰階跟彩色混雜的情況。用彩色模式掃描只有黑白的圖片,事後整理時會佔很大的空間。所以我就繼續「布丁式圖片工具箱」的專案,做了一個「布丁式圖片灰階工具」出來用了。這個「布丁式圖片灰階工具」主要是用AutoIT操作ImageMagick圖片工具來處理圖片,你也可以調整config.ini的設定來更換ImageMagick的指令。

(more...)

你還在用WinRAR壓縮嗎?是該改用ZIP格式來壓縮了 / The Better File Compression Format: ZIP

你還在用WinRAR壓縮嗎?是該改用ZIP格式來壓縮了 / The Better File Compression Format: ZIP

image

在華文圈,很多人都使用WinRAR來壓縮檔案,電腦裡面也會裝WinRAR軟體。不過,比起RAR格式,我更推薦大家使用都是ZIP格式壓縮。這篇來談談為什麼這樣說的理由。

(more...)

台電科技Teclast Tbook 16 Power如何修復Wifi跟MicroSD讀卡機問題:更新系統韌體 / Update Firmware to Fix Teclast Tbook 16 Power’s Wifi and MicroSD Card Reader Problems

台電科技Teclast Tbook 16 Power如何修復Wifi跟MicroSD讀卡機問題:更新系統韌體 / Update Firmware to Fix Teclast Tbook 16 Power’s Wifi and MicroSD Card Reader Problems

image

最近買來了中國大陸公司台電科技(Teclast)的仿Micosoft Surface的二合一平板電腦:Tbook 16 Power,買來之後就發現常常有Wifi莫名其妙斷線、MicroSD讀卡機消失等問題。今天研究了一下台電論壇的內容,有人說重設BIOS但沒效,也有人說升級最新驅動2017 05 22後能完美解決,不過我選擇更新了Windows 10的系統韌體,這兩個問題就順利解決了。

(more...)

用Acrobat Pro把PDF轉換成HTML:AutoIt一鍵轉換方案 / How to convert a PDF to HTML with Acrobat Pro? An AutoIT solution

用Acrobat Pro把PDF轉換成HTML:AutoIt一鍵轉換方案 / How to convert a PDF to HTML with Acrobat Pro? An AutoIT solution

image

為了使用Acrobat Pro能夠正確地將PDF轉換成HTML網頁的功能,我用AutoIt寫了一個自動操作腳本的exe執行檔,可以將指定的PDF轉換成HTML檔案。

(more...)

如何把純文字檔案轉換成UTF-8格式:使用Notepad++ / How to Convert Plain Text File into UTF-8 encoding with Notepad++

如何把純文字檔案轉換成UTF-8格式:使用Notepad++ / How to Convert Plain Text File into UTF-8 encoding with Notepad++

image

在進行文字處理的時候我會建議盡量把純文字檔案轉換成萬國碼Unicode,也就是UTF-8。而轉換編碼最簡單方式就是使用Notepad++來處理啦。以下就介紹如何使用Notepad++把非UTF-8編碼的純文字檔案轉換成UTF-8編碼。

(more...)

試做Electron桌面應用程式:webapp-wrapper / Try Electron: webapp-wrapper

試做Electron桌面應用程式:webapp-wrapper / Try Electron: webapp-wrapper

image

繼前一篇在講怎麼使用Chrome命令列選項app來製作網頁應用程式之後,我還是覺得app模式有很多限制。後來索性摸摸看最近很流行的跨平臺桌面作業系統應用程式的開發框架Electron,然後作出一個用Electron開啟網頁的應用程式:webapp-wrapper

(more...)

自製網頁應用程式!使用Chrome的命令列選項app來製作網頁應用程式捷徑 / Run a Standalone Web APP in Google Chrome’s App Mode

布丁布丁吃布丁

自製網頁應用程式!使用Chrome的命令列選項app來製作網頁應用程式捷徑 / Run a Standalone Web APP in Google Chrome’s App Mode

image

你常常使用InboxWunderlist等網頁應用程式(Web APP),但又不想讓它們跟其他分頁混在一起、而希望能夠獨立成為一個視窗嗎?本篇教你利用Google Chrome命令列選項app將常用網頁製作成應用程式捷徑,不僅讓它以獨立無選單應用程式模式開啟,還能將捷徑直接加入Windows的開始 > 所有程式當中!

(more...)