QR Code 完全指南:技術原理 / 設計 / 印刷 / 應用場景 全攻略(2026 版)
QR code 不只是「掃了就跳網址」這麼簡單。本文 4500 字從歷史、Reed-Solomon 編碼、4 種 EC level、各種 QR 內容類型、設計與印刷規格、隱私 trade-off 全攻略。
QR code 1994 年由日本 Denso Wave 為汽車零件追蹤發明,2010 年代隨智慧手機普及成為「人手一相機就能掃」的工具。2026 年的今天 — 它在名片、海報、餐廳菜單、商品包裝、Wi-Fi 設定、付款系統、政府公文無所不在。
但「QR 為什麼能在表面磨損、髒污、部分遮擋下仍能掃」「為什麼某些 QR 掃得到、某些掃不到」「動態 vs 靜態的工程差異是什麼」 — 這些底層原理少有人深入。
這篇 4500 字是 drrop.cc blog 的 QR 主題 pillar — 串連 5 篇深度文章,從歷史、技術、設計、印刷、應用全面拆解。
目錄
- QR Code 的歷史
- Reed-Solomon 編碼與容錯原理
- 4 種 Error Correction Level
- QR 的內容類型
- 動態 vs 靜態的工程差別
- 設計:顏色、logo、自訂
- 印刷規格與最小尺寸
- 隱私與安全 trade-off
- FAQ
1. QR Code 的歷史
1994 — Denso Wave 發明 QR
豐田旗下 Denso 子公司 Denso Wave 在 1994 年發明 QR code,目的是汽車零件追蹤。
傳統 1D 條碼(barcode)一條只能存 20-30 個字元。對汽車零件有上千零件型號要追蹤的場景,1D 條碼遠遠不夠。
QR code(Quick Response)特性:
- 容量:最大 4296 字元(純文字)
- 360 度掃描(不限角度)
- 抗破損(Reed-Solomon 容錯)
- 開放標準(Denso Wave 不收授權費)
「開放」是 QR 流行的關鍵。bar code 各家專利打架,QR 直接走開放路線,所有人都能用。
1999 — ISO 標準化
QR 進 ISO/IEC 18004 國際標準。各國工業界開始大規模採用。
2010-2015 — 智慧手機革命
iPhone(2007)+ Android(2008)智慧手機普及 — 每支手機都有相機 + 處理 QR 解碼的能力。
QR 從工業變消費級。日本最早領先 — 早在 2002 年 J-Phone 就內建 QR scanner。歐美直到 2017 年 iOS 11 才把 QR scanner 加進系統相機。
2020-2025 — 疫情加速採用
COVID-19 推動「無接觸」需求 — 餐廳菜單、實聯制、付款全用 QR。中國微信 / 支付寶的 QR 付款生態深度滲透到日常。
歐美 QR 採用率原本緩慢,疫情後跳躍式增加。
2026 趨勢
- 隱私意識提升:client-side QR generator 取代 server-side
- AR + QR 結合:掃 QR 觸發 AR 體驗
- 動態 QR 大行其道:印刷品內容可後改
- QR 攻擊增加:「QR phishing」(quishing)成為新詐騙手法
2. Reed-Solomon 編碼與容錯原理
為什麼 QR 能在部分損壞下仍能掃
QR 的方塊不只是「資料」 — 還含Reed-Solomon error correction codes。這是個 1960 年代為太空通訊發明的編碼技術,後來也用於 CD / DVD / 衛星傳輸。
簡化原理:
原始資料(譬如 URL)
↓ 加 ECC redundancy
編碼後資料(原始 + ECC bits)
↓ 排列成 QR 方塊
QR matrix
掃描時:
拍到的 QR matrix(可能含損壞)
↓ Reed-Solomon 解碼
還原原始資料(即便部分 bits 損壞)
容錯數學
Reed-Solomon 能容忍 t/2 個錯誤,其中 t 是 ECC bits 數量。QR 規範 4 種 Error Correction Level,對應不同 t:
| Level | 名稱 | 容錯率 | ECC bits 占比 |
|---|---|---|---|
| L | Low | ~7% | 少 |
| M | Medium | ~15% | 中 |
| Q | Quartile | ~25% | 多 |
| H | High | ~30% | 最多 |
Trade-off:容錯 vs 容量
ECC level 越高 → 容錯越強 → 但 ECC bits 越多 → 同樣資料需要更大的 QR matrix。
實例:編碼「https://drrop.cc/l/abc123」(25 字元):
- L level → 21×21 matrix(Version 1)
- H level → 25×25 matrix(Version 2)
對「QR 不可能被遮擋」場景(譬如純螢幕顯示):用 L 省空間。對「QR 會被磨損 / 沾髒」場景(譬如戶外印刷):用 H 安全。
3. 4 種 Error Correction Level 詳解
Level L(Low,7% 容錯)
適合:
- 純螢幕顯示(不會磨損)
- 容量需求大、QR 不能太大
- 內容極短(短網址)
不適合:戶外印刷、易磨損表面、嵌入 logo
Level M(Medium,15% 容錯)
適合:多數印刷品的預設值
- 名片、傳單、海報
- 一般辦公文件
drrop.cc/qr 預設 Level M — 對 99% 場景剛剛好。
Level Q(Quartile,25% 容錯)
適合:
- 含小 logo 嵌入(logo 蓋掉部分 QR)
- 預期可能輕度磨損
- 工業標籤
Level H(High,30% 容錯)
適合:
- 大 logo 嵌入(logo 佔 QR 中央 20-25%)
- 戶外長期曝曬
- 工業環境(化學、磨損、髒污)
- 醫療 / 食品包裝(要長期可掃)
4. QR 的內容類型
QR 可以編碼任何文字,但有些「特殊格式」讓手機系統自動辨識並提供 action:
URL(最常見)
https://example.com
手機掃 → 跳轉瀏覽器。
Wi-Fi 連線
WIFI:T:WPA;S:NetworkName;P:Password;H:false;;
手機掃 → 自動跳「加入此網路」提示。詳見 Wi-Fi QR 教學。
vCard(聯絡人)
BEGIN:VCARD
VERSION:3.0
FN:王小明
TEL:+886-912345678
EMAIL:hello@example.com
URL:https://example.com
END:VCARD
手機掃 → 跳「新增到通訊錄」。
mailto:hello@example.com?subject=主題&body=內文
手機掃 → 開預設 email app + 預填內容。
SMS
sms:+886912345678?body=訊息內容
手機掃 → 開 SMS app + 預填號碼跟訊息。
Geo 位置
geo:25.0330,121.5654?z=15
手機掃 → 開地圖 app + 跳該位置。
Plain text
任意文字。手機掃 → 顯示文字(多數系統提供「複製」「分享」)。
Custom protocol
myapp://action?param=value
要對方裝對應 app — 沒裝時掃了沒反應。
EPC(歐洲銀行轉帳)
BCD
002
1
SCT
BANKBIC
受款人
IBAN
EUR 100.00
...
歐元區轉帳專用 QR。
TWQR(台灣行動支付)
台灣財金中心制定的支付 QR 格式。
5. 動態 vs 靜態 QR 的工程差別
靜態 QR — QR 本身是內容
QR matrix → decode → 直接的 final URL
完全離線可用。手機解碼 → 拿到內容 → action(譬如開 URL)。
優勢:
- 完全無中介 server
- 無單點故障
- 100% 隱私(伺服器不知掃描事件)
- 完全免費
劣勢:
- 內容寫死,不能事後改
- 沒統計
動態 QR — QR 指向 redirect
QR matrix → decode → 短網址 (drrop.cc/l/abc)
→ server redirect → final URL(可隨時改)
中間多一層 server。
優勢:
- 內容可事後改
- 可收集統計
- 可加額外控制(密碼、過期、觀看次數)
劣勢:
- 依賴中介 server
- 隱私 trade-off(server 知道每次掃描)
- 服務消失 → QR 廢
詳見 QR 動態 vs 靜態完整對比。
6. QR 的設計:顏色、logo、自訂
顏色
QR 預設黑底白底對比最強。其他可選:
✓ 可行:
- 深藍 + 白
- 深紅 + 白
- 黑 + 米色 (drrop.cc/qr 用
#1c1a17深咖啡 +#fbf9f4米色 paper) - 任何「深色 + 淺色」高對比組合
✗ 不可行:
- 反向(淺色 QR + 深色背景)— 某些 scanner fail
- 漸層 QR — scanner 解碼失敗
- 紅 + 綠 等色弱不友善組合
- 低對比(譬如灰 + 白)
Logo 嵌入
QR 中央可嵌 logo — 利用 Error Correction 容錯能力。
規則:
- Logo 面積 ≤ QR 面積的 20-25%
- Error Correction Level 用 H(30% 容錯)
- Logo 周圍留白邊
- Logo 高對比(避免融入 QR pattern)
注意:drrop.cc/qr 目前不支援 logo 嵌入(follow-up)。用 Illustrator / Figma 後製即可。
形狀自訂
進階 QR 工具支援自訂方塊形狀(圓角、星形、自訂幾何)。但:
- 多數 scanner 對非標準形狀解碼率下降
- 對「容錯」是雙刃劍(看起來酷但實際掃描失敗率高)
建議:商業關鍵 QR 用標準方形 + 標準大小。藝術 QR 留藝術品場合。
7. 印刷規格與最小尺寸
Quiet Zone(靜區)
QR 規範要求周圍至少 4 個 modules 的純白空間。沒這個邊框,scanner 找不到 QR 邊界。
實務:QR 周圍至少留 QR 邊長的 1/8 純白邊。
最小尺寸
- 絕對下限:1cm × 1cm(需要極好光線 + 近距離)
- 建議起跳:2cm × 2cm
- 商業最佳:3-4cm
- 海報遠距離:邊長 = 預期掃描距離 / 10
解析度
對印刷品:
最低 PNG 解析度 = 印刷尺寸 (cm) × 120 px/cm
對應 300 DPI 印刷標準。
drrop.cc/qr 的 PNG = 1280px → 對 < 10cm 印刷都夠。超過 10cm 用 SVG。
詳見 印刷 QR SVG vs PNG。
材質
- ✓ 紙、卡紙、塑膠卡片(霧面)、貼紙
- ✗ 反光金屬、皺褶布料、不平整表面
印刷後測試
印 1 張樣品 → 用 iPhone + Android 各掃 5 次 → 都能 2 秒內成功才能量產。
8. 隱私與安全 trade-off
隱私:產 QR 跟掃 QR 各有風險
產 QR 端:
- Server-side QR 產生器知道你的內容(網址、Wi-Fi 密碼、聯絡資訊)
- Client-side QR 產生器(drrop.cc/qr 等)不知道
詳見 為什麼自己生 QR 比第三方安全。
掃 QR 端:
- 線上 unshortener / scanner 知道你掃了什麼
- 系統相機(iOS、Pixel)內建解碼,不送 server,最隱私
安全:QR Phishing(Quishing)攻擊
近年新型詐騙:
- 攻擊者印惡意 QR 貼紙蓋在合法 QR 上(譬如停車繳費 QR)
- User 掃 → 到攻擊者偽造的付款頁
- User 輸入信用卡 → 被偷
防禦:
- 餐廳 / 停車 / 公共 QR:用前確認該 QR 沒被貼上覆蓋
- 掃到 URL 後檢查 host:是不是該店家的官方域名
- 不確定就手動輸入官方 URL
隱形數據洩漏:QR 內容可能含敏感資訊
vCard QR 含你的電話、email。Wi-Fi QR 含你的網路密碼。
反思:你把這些 QR 印在公共場合(譬如貼餐廳牆)— 任何路過的人都能掃。
對策見 Wi-Fi QR 安全注意事項。
9. FAQ
Q:iOS 跟 Android 內建 QR scanner 都認所有格式嗎? A:URL / Wi-Fi / vCard / Email / SMS / Geo / Plain text 基本都認。罕用格式(譬如 EPC、TWQR)視 OS 版本 + region。
Q:QR 大小極限是? A:QR Version 40(最大),177×177 modules,可存 4296 字元。實務上很少用到這麼大。
Q:drrop.cc/qr 支援所有格式嗎? A:drrop.cc/qr 是純文字 encoder — 你輸入什麼編什麼。所以任何格式(URL / Wi-Fi 字串 / vCard 字串)都可以,但你要自己組正確的格式字串。
Q:QR 顏色為什麼一定要對比強? A:scanner 看「黑白方塊」對應 0/1 bit。低對比 → scanner 判讀錯誤 → Reed-Solomon 不夠救 → 解碼失敗。
Q:QR 加 logo 一定要 Level H 嗎? A:logo 越大、Level 越要高。Logo 佔 5% 用 M、佔 20% 用 H。drrop.cc/qr 預設 M,加 logo 要自己後製 + 用 design tool 把 QR 重新生(升 H)。
Q:未來會被新格式取代嗎? A:QR 已有 30 年,極為穩定。新格式(譬如 SquareDot、HCCB)都沒撼動 QR 的位置。QR 仍是未來 10 年的主流。
串連深度閱讀
5 篇 QR 主題文章:
結語
QR Code 是個簡單卻深刻的技術 — 30 年的演進造就了從工業到消費級的應用。
理解 QR 的 3 個 takeaway:
- 它能容錯 — 因為 Reed-Solomon 編碼
- 它能客製 — 顏色、logo、形狀都可(但 trade-off 容錯)
- 它有隱私 trade-off — 看你選 server-side 還 client-side 工具
→ 試試 client-side QR:drrop.cc/qr