關於 Breezo
Breezo 目前有 73 個工具、分成 13 個分類 —— PDF、圖片、影片、音訊、文件轉換、壓縮檔、文字、SEO、開發者工具、產生器、單位換算與網路工具 —— 而且每一個都在你自己的瀏覽器裡執行。它之所以存在,是因為線上檔案工具的標準做法有一個明顯的缺陷,而瀏覽器終於強到可以避開它。
這個名字的由來
Breezo 由兩個字組成:breeze(微風)與 office(辦公室)。office 那一半是工作本身 —— 要壓縮的請款單、要轉檔的簡報、要拆頁的掃描件、要剪掉開頭空白的錄音。那些橫在你和真正想做的事情之間的瑣碎檔案雜務。
breeze 那一半,是這些事應該有的感覺:不必排隊、不必註冊、不必盯著別人伺服器上的進度條。把檔案丟進來、做完、繼續。
把這個標準寫進名字裡是自找麻煩,但它就是我們對站上每一個工具的要求:如果一個工具需要帳號、需要等待、或需要一段說明才會用,那它就還沒做完。
這類工具平常的做法有什麼問題
幾乎所有熱門的線上轉檔站都是同一套架構:你上傳檔案、他們的伺服器處理、你下載結果。這行得通,但它代表你轉換的每一份文件、照片、截圖,都被傳送給一家你一無所知的公司,在你看不見的硬體上被處理。
而且每一次轉換都要花掉營運者的錢。這個成本正是免費方案被配給的原因。某個被廣泛使用的服務,網頁版免費上傳上限是單檔 15MB;另一個則是每小時兩次,超過就在成品上蓋浮水印。這些限制不是隨便訂的 —— 它們是「你的使用等於他們的支出」這個架構的直接後果。
什麼改變了
現代瀏覽器可以透過 WebAssembly 以接近原生的速度執行編譯後的程式。桌面軟體在用的那些影像編碼器 —— MozJPEG、WebP 官方編碼器、oxipng、libheif —— 現在都能編譯成 WebAssembly,在瀏覽器分頁裡執行。
這個轉變的影響遠不只在影像。PDF 由 pdf-lib 改寫、再由 PDF.js 算繪回圖片,兩者都是一般的 JavaScript。影片工具用 mediabunny 把已經編碼好的封包從一個容器搬進另一個容器,所以影像串流是原封不動帶過去的,不是重新編碼。音訊由瀏覽器自己的 Web Audio 解碼,再輸出成未壓縮的 PCM。ZIP 用 fflate 讀寫,Office 文件轉 PDF 則靠一份 WebAssembly 版的 HarfBuzz,把每一套字體裁到實際用得到的字。
這讓「上傳」失去了存在的理由。處理可以就在檔案原本所在的地方進行:你自己的機器上。
這在實務上改變了什麼
沒有檔案大小限制,因為根本沒有上傳可以限制大小。沒有每小時額度,因為你的轉檔不消耗我們任何資源。不加浮水印、不用註冊,理由相同。而且第一次造訪之後,這些工具在完全沒有網路的情況下仍然能用。
最重要的是,隱私承諾不是一份你必須選擇相信的政策 —— 它是一個你可以驗證的架構事實。打開瀏覽器的開發者工具、盯著 Network 分頁、轉一個檔案,不會出現任何夾帶你檔案的請求。
我們對限制的誠實說明
本機處理並非沒有代價。非常大的檔案可能耗盡瀏覽器分頁可用的記憶體,在手機上尤其明顯。每次工作階段的第一次轉換要下載對應的編碼器,這是一次性成本,依格式而定約數百 KB 到數 MB。
而且有些操作在瀏覽器裡確實做不好。遇到這種情況,我們會在頁面上直說,而不是假裝沒事;任何未來需要把你的檔案送出去的工具,都會在動作之前清楚告訴你。
這是怎麼支撐營運的
目前沒有任何收入在支撐 —— 站上沒有廣告,而它之所以幾乎不花錢,正是因為沒有伺服器在做事。日後最可能的收入來源是廣告,我們寧可現在就講明白,也不要哪天悄悄打開。
不會變的是:這裡沒有「付費解鎖限制」的方案,因為根本沒有限制可以解鎖。如果日後出現付費選項,那會是為了真正需要成本的東西,或單純為了移除廣告 —— 絕不會是刻意閹割免費工具來製造升級的理由。


