跳至主要內容

寫內容進剪貼簿 (pasteboard.write)

聲明

pasteboard.write(資料 [, 通用類型標識 ])
pasteboard.write(剪貼簿項目 [, 選項 ])
pasteboard.write(剪貼簿項目清單 [, 選項 ])

參數

  • 資料
    字串型,需要寫入到剪貼簿的內容
    表型,剪貼簿項目,鍵為 通用類型標識,值為字串型資料(自 20260428 版本起支援)
    表型,剪貼簿項目清單,每項均為剪貼簿項目(自 20260428 版本起支援)

  • 通用類型標識
    文字型,可選參數,Uniform Type Identifiers,預設 "public.utf8-plain-text"

  • 選項 表型,可選參數(自 20260428 版本起支援)
    local_only 布林型,僅儲存在本機,iOS 10 及以上支援
    expiration_date 數字型,Unix 時間戳,單位秒,iOS 10 及以上支援

    剪貼簿項目結構
    {
    ["public.utf8-plain-text"] = "普通文本",
    ["public.rtf"] = "RTF 数据",
    ["public.html"] = "HTML 数据",
    ["public.png"] = "PNG 二进制数据",
    ...
    }

回傳值

  • 是否成功
    布林型,寫入成功返回 true,否則返回 false

說明

寫內容進系統剪貼簿
關鍵詞:寫入剪貼簿、寫入剪切板、寫入粘貼板
傳入剪貼簿項目或剪貼簿項目清單時,會向同一個剪貼簿項目寫入多種格式表示。iOS 9 會忽略 選項 參數。

範例

pasteboard.write("hello") -- 將文本 "hello" 寫入到剪貼板中
--
pasteboard.write(screen.image():png_data(), 'public.png') -- 將當前屏幕截圖寫入到剪貼板
--
pasteboard.write([[{\rtf1\ansi\deff0
{\fonttbl{\f0 Helvetica;}}
{\colortbl;\red255\green0\blue0;}
\f0\fs32 normal {\b bold} {\i italic} \cf1 red\cf0\par
\u20320?\u22909?
}]], "public.rtf") -- 將 RTF 富文本寫入到剪貼板中

-- 20260428 以上版本支持向同一個剪貼板項目寫入多種格式
pasteboard.write({
["public.utf8-plain-text"] = "normal bold italic red\n你好",
["public.rtf"] = [[{\rtf1\ansi\deff0
{\fonttbl{\f0 Helvetica;}}
{\colortbl;\red255\green0\blue0;}
\f0\fs32 normal {\b bold} {\i italic} \cf1 red\cf0\par
\u20320?\u22909?
}]],
["public.html"] = [[<p>normal <b>bold</b> <i>italic</i> <span style="color:red">red</span><br>你好</p>]],
}, {
local_only = true,
expiration_date = os.time() + 3600,
})

:上述代碼中使用了非本章函式 screen.image