20 lines
28 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Q&A | ZiuChen</title>
<meta name="description" content="Unlimited Progress.">
<link rel="preload stylesheet" href="/assets/style.58f84efc.css" as="style">
<link rel="modulepreload" href="/assets/app.0bcab4cc.js">
<link rel="modulepreload" href="/assets/project_ClipboardManager_statement.md.a8fa6f72.lean.js">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-7a3ccfd4><!--[--><!--]--><!--[--><span tabindex="-1" data-v-9b6ee0d8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-9b6ee0d8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-7a3ccfd4 data-v-719ca951><div class="VPNavBar has-sidebar" data-v-719ca951 data-v-2e7ba255><div class="container" data-v-2e7ba255><div class="VPNavBarTitle has-sidebar" data-v-2e7ba255 data-v-093469ac><a class="title" href="/" data-v-093469ac><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo.png" alt data-v-bbcdc917><!--]--><!--[-->ZiuChen<!--]--><!--[--><!--]--></a></div><div class="content" data-v-2e7ba255><!--[--><!--]--><!----><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-2e7ba255 data-v-c0d0f014><span id="main-nav-aria-label" class="visually-hidden" data-v-c0d0f014>Main Navigation</span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" data-v-c0d0f014 data-v-f5bf1aba data-v-cb3c066f><!--[-->首页<!--]--><!----></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-c0d0f014 data-v-2caac71f><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-2caac71f><span class="text" data-v-2caac71f><!----> 我的项目 <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-2caac71f><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-2caac71f><div class="VPMenu" data-v-2caac71f data-v-71622125><div class="items" data-v-71622125><!--[--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/project/ClipboardManager/" data-v-efaa38fe data-v-cb3c066f><!--[-->超级剪贴板<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/project/SmartWordBreak/" data-v-efaa38fe data-v-cb3c066f><!--[-->超级分词<!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-c0d0f014 data-v-2caac71f><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-2caac71f><span class="text" data-v-2caac71f><!----> 开源作品 <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-2caac71f><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-2caac71f><div class="VPMenu" data-v-2caac71f data-v-71622125><div class="items" data-v-71622125><!--[--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/works/opensource.html" data-v-efaa38fe data-v-cb3c066f><!--[-->个人作品<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/works/contribution.html" data-v-efaa38fe data-v-cb3c066f><!--[-->社区贡献<!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-c0d0f014 data-v-2caac71f><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-2caac71f><span class="text" data-v-2caac71f><!----> 学习笔记 <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-2caac71f><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-2caac71f><div class="VPMenu" data-v-2caac71f data-v-71622125><div class="items" data-v-71622125><!--[--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/note/JavaScript.html" data-v-efaa38fe data-v-cb3c066f><!--[-->JavaScript基础<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/note/CSS.html" data-v-efaa38fe data-v-cb3c066f><!--[-->CSS基础<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-71622125 data-v-efaa38fe><a class="VPLink link" href="/note/JavaScriptEnhanced.html" data-v-efaa38fe data-v-cb3c066f><!--[-->JavaScript进阶<!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/self/" data-v-c0d0f014 data-v-f5bf1aba data-v-cb3c066f><!--[-->个人介绍<!--]--><!----></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-2e7ba255 data-v-2a0b2176><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-label="toggle dark mode" aria-checked="false" data-v-2a0b2176 data-v-bdf24275 data-v-ab73b0bb><span class="check" data-v-ab73b0bb><span class="icon" data-v-ab73b0bb><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-bdf24275><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-bdf24275><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-2e7ba255 data-v-b4e75887 data-v-9287af2d><!--[--><a class="VPSocialLink" href="https://ziuchen.github.io/" target="_blank" rel="noopener" data-v-9287af2d data-v-cb32d883><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-2e7ba255 data-v-e98948db data-v-2caac71f><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-2caac71f><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="icon" data-v-2caac71f><circle cx="12" cy="12" r="2"></circle><circle cx="19" cy="12" r="2"></circle><circle cx="5" cy="12" r="2"></circle></svg></button><div class="menu" data-v-2caac71f><div class="VPMenu" data-v-2caac71f data-v-71622125><!----><!--[--><!--[--><!----><div class="group" data-v-e98948db><div class="item appearance" data-v-e98948db><p class="label" data-v-e98948db>Appearance</p><div class="appearance-action" data-v-e98948db><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-label="toggle dark mode" aria-checked="false" data-v-e98948db data-v-bdf24275 data-v-ab73b0bb><span class="check" data-v-ab73b0bb><span class="icon" data-v-ab73b0bb><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-bdf24275><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-bdf24275><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div></div></div><div class="group" data-v-e98948db><div class="item social-links" data-v-e98948db><div class="VPSocialLinks social-links-list" data-v-e98948db data-v-9287af2d><!--[--><a class="VPSocialLink" href="https://ziuchen.github.io/" target="_blank" rel="noopener" data-v-9287af2d data-v-cb32d883><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-2e7ba255 data-v-69091399><span class="container" data-v-69091399><span class="top" data-v-69091399></span><span class="middle" data-v-69091399></span><span class="bottom" data-v-69091399></span></span></button></div></div></div><!----></header><div class="VPLocalNav" data-v-7a3ccfd4 data-v-d4ef4c0a><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-d4ef4c0a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="menu-icon" data-v-d4ef4c0a><path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"></path><path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"></path><path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"></path><path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"></path></svg><span class="menu-text" data-v-d4ef4c0a>Menu</span></button><a class="top-link" href="#" data-v-d4ef4c0a> Return to top </a></div><aside class="VPSidebar" data-v-7a3ccfd4 data-v-ee59d3a7><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-ee59d3a7><span class="visually-hidden" id="sidebar-aria-label" data-v-ee59d3a7> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-ee59d3a7><section class="VPSidebarGroup collapsible" data-v-ee59d3a7 data-v-bcc74eb6><div class="title" role="button" data-v-bcc74eb6><h2 class="title-text" data-v-bcc74eb6>我的项目</h2><div class="action" data-v-bcc74eb6><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-bcc74eb6><!--[--><!--[--><a class="VPLink link link" href="/project/ClipboardManager/" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>超级剪贴板</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/project/SmartWordBreak/" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>超级分词</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-ee59d3a7><section class="VPSidebarGroup collapsible" data-v-ee59d3a7 data-v-bcc74eb6><div class="title" role="button" data-v-bcc74eb6><h2 class="title-text" data-v-bcc74eb6>开源作品</h2><div class="action" data-v-bcc74eb6><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-bcc74eb6><!--[--><!--[--><a class="VPLink link link" href="/works/opensource.html" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>个人作品</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/works/contribution.html" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>社区贡献</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-ee59d3a7><section class="VPSidebarGroup collapsible" data-v-ee59d3a7 data-v-bcc74eb6><div class="title" role="button" data-v-bcc74eb6><h2 class="title-text" data-v-bcc74eb6>学习笔记</h2><div class="action" data-v-bcc74eb6><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-bcc74eb6><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-bcc74eb6><!--[--><!--[--><a class="VPLink link link" href="/note/JavaScript.html" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>JavaScript基础</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/note/CSS.html" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>CSS基础</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/note/JavaScriptEnhanced.html" style="padding-left:0px;" tabindex="-1" data-v-77fbd15e data-v-cb3c066f><!--[--><span class="link-text" data-v-77fbd15e>JavaScript进阶</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-7a3ccfd4 data-v-9d6f2d23><div class="VPDoc has-sidebar has-aside" data-v-9d6f2d23 data-v-655a8b2e><div class="container" data-v-655a8b2e><div class="aside" data-v-655a8b2e><div class="aside-curtain" data-v-655a8b2e></div><div class="aside-container" data-v-655a8b2e><div class="aside-content" data-v-655a8b2e><div class="VPDocAside" data-v-655a8b2e data-v-41ede2d8><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" data-v-41ede2d8 data-v-a8d80780><div class="content" data-v-a8d80780><div class="outline-marker" data-v-a8d80780></div><div class="outline-title" data-v-a8d80780>On this page</div><nav aria-labelledby="doc-outline-aria-label" data-v-a8d80780><span class="visually-hidden" id="doc-outline-aria-label" data-v-a8d80780> Table of Contents for current page </span><ul class="root" data-v-a8d80780 data-v-09dbc40e><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-41ede2d8></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-655a8b2e><div class="content-container" data-v-655a8b2e><!--[--><!--]--><main class="main" data-v-655a8b2e><div style="position:relative;" class="vp-doc _project_ClipboardManager_statement" data-v-655a8b2e><div><h1 id="q-a" tabindex="-1">Q&amp;A <a class="header-anchor" href="#q-a" aria-hidden="true">#</a></h1><ul><li><p>Q: 为什么偶尔CPU占用特别高? 为什么预览图片时插件卡顿?</p></li><li><p>A: 这是由<code>超级剪贴板</code>监听剪贴板内容更新的机制决定的,为了不漏数据,<code>超级剪贴板</code>的监听策略为每<code>300ms</code>读取一次剪贴板内容并与上一次读取到的内容作比较。如果剪贴板当前位置是一张大图片,那么插件会反复读取这张图片,导致大量计算被用在了无意义的读取与对比上。</p><p>插件市场中相同原理的同类插件的处理方法是:</p><ul><li>轮询比较两次剪贴板内容,如果检查到当前剪贴板内容数据量较大,则降低轮询时间间隔。 <ul><li>这避免了读取大图片/长文本时的高占用,然而这很容易导致漏数据</li></ul></li><li>轮询比较两次剪贴板内容,由用户自定义轮询时间 <ul><li>用户设置的轮询间隔时间长,读取大图片/长文本时不会导致高占用,但很容易漏数据。</li><li>用户设置的轮询间隔时间较短,则又会造成高占用</li></ul></li></ul><p><code>v1.4.0</code>版本更新中,<code>超级剪贴板</code>换用了<a href="https://github.com/sudhakar3697/node-clipboard-event" target="_blank" rel="noreferrer"><code>clipboard-event</code></a>库监听剪贴板更新事件这种方式性能更优不需要反复读取剪贴板内容来做比较而只需要在检查到剪贴板更新事件时通知插件读取一次剪贴板即可完全解决了CPU占用高、浏览图片卡顿的问题。</p><p>然而该库包含了二进制文件这触发了uTools插件市场的安全限制而<strong>无法上架</strong>。所以自<code>v1.4.2</code>起,插件不再内置监听剪贴板更新事件的二进制文件,用户要使用<strong>低占用、高性能的剪贴板监听方案</strong>,可以自行下载并将其移动到剪贴板数据库文件所在目录,详见<a href="./guide.html">如何手动安装<code>clipboard-event-handler</code></a>,插件会自动判断使用新的抑或是旧的方案监听剪贴板更新。同时,自<code>v1.4.3</code>起,你可以在设置页查看当前剪贴板监听程序的运行状态。</p></li></ul><hr><ul><li>Q: 为什么官方的剪贴板插件没有CPU占用高这个问题?</li><li>A: 官方的剪贴板内容更新事件监听函数也是从一个二进制文件引出的,这个二进制文件跟随主程序启动,不受剪贴板插件的打开或关闭的影响。</li></ul><hr><ul><li>Q: 启动报错, 读取剪切板出错</li><li>A: 请尝试1.清空本地数据库文件 2.格式化uTools内的插件数据。如果上述方法都无法解决你的问题欢迎论坛回帖或加入QQ群看一下具体是什么问题</li></ul><hr><ul><li>Q: 为什么剪贴板记录会丢失?</li><li>A: 从<code>v1.2.2</code>起, 已经从原理上修复了漏数据的问题, 之后的版本若出现漏数据, 一般是由于插件退出后台运行导致的: 插件需要保持后台运行才能记录剪贴板, 请检查: <ul><li>是否正确设置了插件<code>跟随主程序启动</code></li><li>是否在分离模式下关闭了插件 (由uTools机制决定, 分离插件模式下关闭插件会直接退出插件, 而不是隐藏到后台)</li><li>是否手动清理或关闭了后台插件 (使用了clear命令或在插件列表关闭了插件后台运行)</li></ul></li></ul><hr><ul><li>Q: 为什么<code>智慧分词</code>功能使用有限制?</li><li>A: 此功能需要服务器资源, 而服务器资源有限, 故暂时只开放部分的免费资源给大家使用; 如果实际使用量较少, 服务器有能力承担压力, 后续可能会开放限制</li></ul><hr><ul><li>Q: 我对这个插件的安全性有担忧</li><li>A: 担忧大可不必, 插件是开源的, 每行代码的提交记录都可以在<a href="https://githubcom/ZiuChen/ClipboardManager" target="_blank" rel="noreferrer">Github</a>上完整查看, 如果你有兴趣的话, 我也十分欢迎你为项目贡献代码</li></ul><hr><ul><li>Q: 万一你在代码里藏毒, 偷窃我的隐私怎么办?</li><li>A: 首先, 我写这个插件不是为了获取你的隐私的, 我对你的隐私没有兴趣, 这一点你完全可以放心; 其次uTools官方在插件上架前会对代码进行审查, 如果插件有高危行为, 那也不会过审; 再其次, uTools大部分用户是程序员, 如果我真的在代码里藏了&quot;&quot;, 那他们也有办法发现, 如果你真的对你的隐私十分关心, 可以选择从<a href="https://githubcom/ZiuChen/ClipboardManager" target="_blank" rel="noreferrer">开源仓库</a>下载代码自行构建</li></ul><hr><ul><li>Q: 我不懂代码, 我也不会构建, 但是我担心你的插件会窃取我的隐私</li><li>A: 我在贡献教程中详细说明了如何构建, JavaScript也并不是一门很高深的语言, 祝你能早日入门, 构建出安全的版本供自己使用, 学习的过程中遇到任何问题, 也欢迎随时与我交流 😄</li></ul><hr><ul><li>Q: 我不管我不管, 你就是藏毒了!</li><li>A: 你可以开通会员或购买使用官方的剪贴板插件</li></ul></div></div></main><!--[--><!--]--><footer class="VPDocFooter" data-v-655a8b2e data-v-469957c9><div class="edit-info" data-v-469957c9><div class="edit-link" data-v-469957c9><a class="VPLink link edit-link-button" href="https://github.com/ZiuChen/ZiuChen.github.io/edit/main/docs/project/ClipboardManager/statement.md" target="_blank" rel="noreferrer" data-v-469957c9 data-v-cb3c066f><!--[--><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="edit-link-icon" data-v-469957c9><path d="M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"></path><path d="M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"></path></svg> Edit this page on GitHub<!--]--><!----></a></div><div class="last-updated" data-v-469957c9><p class="VPLastUpdated" data-v-469957c9 data-v-1dd28732>Updated Date: <time datetime="2023-01-09T15:53:57.000Z" data-v-1dd28732></time></p></div></div><div class="prev-next" data-v-469957c9><div class="pager" data-v-469957c9><!----></div><div class="pager" data-v-469957c9><a class="pager-link next" href="/project/ClipboardManager/" data-v-469957c9><span class="desc" data-v-469957c9>Next page</span><span class="title" data-v-469957c9>超级剪贴板</span></a></div></div></footer><!--[--><!--]--></div></div></div></div></div><footer class="VPFooter has-sidebar" data-v-7a3ccfd4 data-v-abbb3aea><div class="container" data-v-abbb3aea><p class="message" data-v-abbb3aea>Released under the MIT License.</p><p class="copyright" data-v-abbb3aea>Copyright © 2019-present Ziu Chen</p></div></footer><!--[--><!--]--></div></div>
<script>__VP_HASH_MAP__ = JSON.parse("{\"note_javascript.md\":\"67de69ab\",\"note_css.md\":\"02689453\",\"project_clipboardmanager_guide.md\":\"cefd7034\",\"project_clipboardmanager_index.md\":\"15c243e8\",\"project_clipboardmanager_statement.md\":\"a8fa6f72\",\"project_smartwordbreak_index.md\":\"624ac6f4\",\"project_smartwordbreak_log.md\":\"aee6cfc6\",\"project_smartwordbreak_statement.md\":\"3ab4081b\",\"index.md\":\"9fbe76f4\",\"works_contribution.md\":\"75fa4327\",\"works_opensource.md\":\"76d04bd0\",\"self_index.md\":\"4a5d4c16\",\"project_clipboardmanager_log.md\":\"ec733f29\",\"note_javascriptenhanced.md\":\"3e01475e\"}")</script>
<script type="module" async src="/assets/app.0bcab4cc.js"></script>
</body>
</html>