Запись содержимого в буфер обмена (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.