复制

ToolZen 提供文本和图片剪贴板能力。图片使用 Data URL,所有读写能力都必须在 Manifest 中声明对应权限。

copyText

通过宿主把文本写入系统剪贴板。窗口失焦时也比浏览器剪贴板接口更可靠。

api.copyText(text: string): Promise<boolean>

使用前在 manifest.json 声明:

{
  "permissions": ["clipboard:write"]
}
const copied = api && api.copyText
  ? await api.copyText(text.value)
  : false

if (copied && api.showNotification) {
  await api.showNotification('已复制', '文本工作台')
}

空字符串会返回 false。复制完成后应向用户提供明确反馈。

readClipboardText

读取系统剪贴板纯文本。未声明 clipboard:read 或没有文本时返回空字符串。

api.readClipboardText(): Promise<string>

readClipboardImage

读取系统剪贴板图片并返回 data:image/...;base64,...。未声明 clipboard:read 或没有图片时返回空字符串。

api.readClipboardImage(): Promise<string>

clearClipboard

清空系统剪贴板,会覆盖用户当前剪贴板内容。需要 clipboard:write,成功返回 true

api.clearClipboard(): Promise<boolean>

copyClipboardImage

将图片 Data URL 写入系统剪贴板,需要 clipboard:write。非图片 Data URL 或无效图片返回 false

api.copyClipboardImage(dataUrl: string): Promise<boolean>
const ok = await api.copyClipboardImage(canvas.toDataURL('image/png'))