-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgoogle0f195ecac6e90bc3.html
More file actions
154 lines (141 loc) · 15.4 KB
/
google0f195ecac6e90bc3.html
File metadata and controls
154 lines (141 loc) · 15.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<!DOCTYPE html><html lang="zh-TW" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover"><title>Boris 軟體坊 | Boris 軟體坊</title><meta name="author" content="Boris"><meta name="copyright" content="Boris"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="ffffff"><meta name="description" content="google-site-verification: google0f195ecac6e90bc3.html"><meta property="og:type" content="website"><meta property="og:title" content="Boris 軟體坊"><meta property="og:url" content="https://www.boris.idv.tw/google0f195ecac6e90bc3.html"><meta property="og:site_name" content="Boris 軟體坊"><meta property="og:description" content="google-site-verification: google0f195ecac6e90bc3.html"><meta property="og:locale" content="zh_TW"><meta property="og:image" content="https://www.boris.idv.tw/images/me.png"><meta property="article:published_time" content="2025-10-19T13:55:06.350Z"><meta property="article:modified_time" content="2025-10-19T13:55:06.350Z"><meta property="article:author" content="Boris"><meta property="article:tag" content="Boris 軟體坊"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:image" content="https://www.boris.idv.tw/images/me.png"><script type="application/ld+json"></script><link rel="shortcut icon" href="/images/me.png"><link rel="canonical" href="https://www.boris.idv.tw/google0f195ecac6e90bc3.html"><link rel="preconnect" href="//cdn.jsdelivr.net"><link rel="preconnect" href="//www.google-analytics.com" crossorigin=""><link rel="preconnect" href="//busuanzi.ibruce.info"><link rel="stylesheet" href="/css/index.css?v=5.5.1"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@7.1.0/css/all.min.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/node-snackbar@0.1.16/dist/snackbar.min.css" media="print" onload='this.media="all"'><script>(() => {
const saveToLocal = {
set: (key, value, ttl) => {
if (!ttl) return
const expiry = Date.now() + ttl * 86400000
localStorage.setItem(key, JSON.stringify({ value, expiry }))
},
get: key => {
const itemStr = localStorage.getItem(key)
if (!itemStr) return undefined
const { value, expiry } = JSON.parse(itemStr)
if (Date.now() > expiry) {
localStorage.removeItem(key)
return undefined
}
return value
}
}
window.btf = {
saveToLocal,
getScript: (url, attr = {}) => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
Object.entries(attr).forEach(([key, val]) => script.setAttribute(key, val))
script.onload = script.onreadystatechange = () => {
if (!script.readyState || /loaded|complete/.test(script.readyState)) resolve()
}
script.onerror = reject
document.head.appendChild(script)
}),
getCSS: (url, id) => new Promise((resolve, reject) => {
const link = document.createElement('link')
link.rel = 'stylesheet'
link.href = url
if (id) link.id = id
link.onload = link.onreadystatechange = () => {
if (!link.readyState || /loaded|complete/.test(link.readyState)) resolve()
}
link.onerror = reject
document.head.appendChild(link)
}),
addGlobalFn: (key, fn, name = false, parent = window) => {
if (!false && key.startsWith('pjax')) return
const globalFn = parent.globalFn || {}
globalFn[key] = globalFn[key] || {}
globalFn[key][name || Object.keys(globalFn[key]).length] = fn
parent.globalFn = globalFn
}
}
const activateDarkMode = () => {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
const activateLightMode = () => {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', 'ffffff')
}
}
btf.activateDarkMode = activateDarkMode
btf.activateLightMode = activateLightMode
const theme = saveToLocal.get('theme')
theme === 'dark' ? activateDarkMode() : theme === 'light' ? activateLightMode() : null
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
document.documentElement.classList.toggle('hide-aside', asideStatus === 'hide')
}
const detectApple = () => {
if (/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)) {
document.documentElement.classList.add('apple')
}
}
detectApple()
})()</script><script async src="https://www.googletagmanager.com/gtag/js?id=G-X7D3ML8T1D"></script><script>window.dataLayer = window.dataLayer || []
function gtag(){dataLayer.push(arguments)}
gtag('js', new Date())
gtag('config', 'G-X7D3ML8T1D')
btf.addGlobalFn('pjaxComplete', () => {
gtag('config', 'G-X7D3ML8T1D', {'page_path': window.location.pathname})
}, 'google_analytics')</script><script>const GLOBAL_CONFIG = {
root: '/',
algolia: undefined,
localSearch: undefined,
translate: undefined,
highlight: {"plugin":"highlight.js","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false,"highlightFullpage":false,"highlightMacStyle":false},
copy: {
success: '複製成功',
error: '複製失敗',
noSupport: '瀏覽器不支援'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
dateSuffix: {
just: '剛剛',
min: '分鐘前',
hour: '小時前',
day: '天前',
month: '個月前'
},
copyright: {"limitCount":50,"languages":{"author":"作者: Boris","link":"連結: ","source":"來源: Boris 軟體坊","info":"著作權歸作者所有。如需商業轉載,請聯絡作者獲得授權,非商業轉載請註明出處。"}},
lightbox: 'null',
Snackbar: {"chs_to_cht":"已切換為繁體中文","cht_to_chs":"已切換為簡體中文","day_to_night":"已切換為深色模式","night_to_day":"已切換為淺色模式","bgLight":"#49b1f5","bgDark":"#2d3035","position":"bottom-left"},
infinitegrid: {
js: 'https://cdn.jsdelivr.net/npm/@egjs/infinitegrid@4.12.0/dist/infinitegrid.min.js',
buttonText: '載入更多'
},
isPhotoFigcaption: false,
islazyloadPlugin: false,
isAnchor: false,
percent: {
toc: true,
rightside: false,
},
autoDarkmode: false
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE={title:"Boris 軟體坊",isHighlightShrink:!1,isToc:!1,pageType:"page"}</script><meta name="theme-color" content="#2E86C1"><meta name="msapplication-TileColor" content="#2E86C1"><style>body{font-size:18px!important}#article-container div,#article-container li,#article-container p{font-size:18px!important;line-height:1.8!important}code{font-size:16px!important}</style><meta name="generator" content="Hexo 6.3.0"><link rel="alternate" href="/atom.xml" title="Boris 軟體坊" type="application/atom+xml"></head><body><script>window.paceOptions = {
restartOnPushState: false
}
btf.addGlobalFn('pjaxSend', () => {
Pace.restart()
}, 'pace_restart')</script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/pace-js@1.2.4/themes/blue/pace-theme-minimal.css"><script src="https://cdn.jsdelivr.net/npm/pace-js@1.2.4/pace.min.js"></script><div id="web_bg" style="background-color:#fafafa"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img text-center"><img src="/images/me.png" onerror='this.onerror=null,this.src="/img/friend_404.gif"' alt="avatar"></div><div class="site-data text-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">4</div></a><a href="/tags/"><div class="headline">標籤</div><div class="length-num">13</div></a><a href="/categories/"><div class="headline">分類</div><div class="length-num">3</div></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 主頁</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-user"></i><span> 關於本站</span></a></div><div class="menus_item"><a class="site-page" target="_blank" rel="noopener external nofollow noreferrer" href="https://hackmd.io/@borisHackMD"><i class="fa-fw fas fa-book"></i><span> 技術筆記</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page fixed" id="page-header"><nav id="nav"><span id="blog-info"><a class="nav-site-title" href="/"><span class="site-name">Boris 軟體坊</span></a></span><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 主頁</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-user"></i><span> 關於本站</span></a></div><div class="menus_item"><a class="site-page" target="_blank" rel="noopener external nofollow noreferrer" href="https://hackmd.io/@borisHackMD"><i class="fa-fw fas fa-book"></i><span> 技術筆記</span></a></div></div><div id="toggle-menu"><span class="site-page"><i class="fas fa-bars fa-fw"></i></span></div></div></nav><div id="page-site-info"><h1 id="site-title"></h1></div></header><main class="layout" id="content-inner"><div id="page"><div class="container" id="article-container">google-site-verification: google0f195ecac6e90bc3.html</div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info text-center"><div class="avatar-img"><img src="/images/me.png" onerror='this.onerror=null,this.src="/img/friend_404.gif"' alt="avatar"></div><div class="author-info-name">Boris</div><div class="author-info-description">本站創立於2023年2月,分享節省時間或是賺錢的軟體</div><div class="site-data"><a href="/archives/"><div class="headline">文章</div><div class="length-num">4</div></a><a href="/tags/"><div class="headline">標籤</div><div class="length-num">13</div></a><a href="/categories/"><div class="headline">分類</div><div class="length-num">3</div></a></div><div class="card-info-social-icons"><a class="social-icon" href="https://github.com/chienniman" rel="external nofollow noreferrer" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:cscs851210max@gmail.com" rel="external nofollow noreferrer" target="_blank" title="Email"><i class="fas fa-envelope"></i></a><a class="social-icon" href="https://line.me/ti/p/boris_line_id" rel="external nofollow noreferrer" target="_blank" title="Line"><i class="fab fa-line"></i></a><a class="social-icon" href="https://hackmd.io/@borisHackMD" rel="external nofollow noreferrer" target="_blank" title="技術筆記"><i class="fas fa-link"></i></a></div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/sologo-ai-free-logo-generator" title="Sologo AI:免費AI Logo設計工具,省下3萬外包費用的最佳選擇">Sologo AI:免費AI Logo設計工具,省下3萬外包費用的最佳選擇</a><time datetime="2025-10-31T23:25:09.000Z" title="發表於 2025-11-01 07:25:09">2025-11-01</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2025-cloud-hosting-review" title="2025雲端部署平台實測心得">2025雲端部署平台實測心得</a><time datetime="2025-10-19T15:26:00.000Z" title="發表於 2025-10-19 23:26:00">2025-10-19</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/my-first-lubuntu-laptop" title="老舊筆電重生指南:用 Lubuntu 打造你的專屬輕量級開發機">老舊筆電重生指南:用 Lubuntu 打造你的專屬輕量級開發機</a><time datetime="2023-04-23T12:20:37.000Z" title="發表於 2023-04-23 20:20:37">2023-04-23</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/linebot-development-guide" title="企業級 LineBot 開發完全攻略1:建立一個 YouBike LineBot!">企業級 LineBot 開發完全攻略1:建立一個 YouBike LineBot!</a><time datetime="2023-02-25T14:24:54.000Z" title="發表於 2023-02-25 22:24:54">2023-02-25</time></div></div></div></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>網站資訊</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章數量 :</div><div class="item-count">4</div></div><div class="webinfo-item"><div class="item-name">總字數 :</div><div class="item-count">5.6k</div></div><div class="webinfo-item"><div class="item-name">最後更新時間 :</div><div class="item-count" id="last-push-date" data-lastpushdate="2025-11-01T07:40:59.242Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer"><div class="footer-other"><div class="footer-copyright"><span class="copyright">© 2023 - 2025 By Boris</span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="日夜模式切換"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="單欄和雙欄切換"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="設定"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到頂端"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@5.5.1/source/js/utils.min.js"></script><script src="https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@5.5.1/source/js/main.min.js"></script><script src="https://cdn.jsdelivr.net/npm/instant.page@5.2.0/instantpage.min.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/node-snackbar@0.1.16/dist/snackbar.min.js"></script><div class="js-pjax"></div><script>// 在文章頁面底部加入Buy me a coffee按鈕
if (document.querySelector('#article-container')) {
const buyMeCoffeeHtml = `
<div style="text-align: center; margin: 30px 0; padding: 20px; border: 1px solid #ddd; border-radius: 10px; background: #f9f9f9;">
<h4 style="margin-bottom: 15px; color: #333;">喜歡這篇文章嗎?</h4>
<p style="margin-bottom: 20px; color: #666;">如果我的文章對你有幫助,歡迎請我喝杯咖啡!</p>
<a href="https://buymeacoffee.com/borisSoftware" rel="external nofollow noreferrer" target="_blank" style="display: inline-block; padding: 12px 30px; background: #FFDD00; color: #000; text-decoration: none; border-radius: 8px; font-weight: bold; transition: all 0.3s;">
☕ 請我喝杯咖啡
</a>
</div>
`;
const articleContainer = document.querySelector('#article-container');
if (articleContainer) {
articleContainer.insertAdjacentHTML('beforeend', buyMeCoffeeHtml);
}
}</script><script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script></div></body></html>