寫內容進剪貼簿 (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