Как Apple получает доступ к UIWebView PDF-строкам для элементов sharedMenuController?
Я пытаюсь получить доступ к строкам в PDF, загруженном удаленно в UIWebView
, Поскольку Apple имеет параметры копирования / определения, перечисленные для UIMenuController
предметы, я думал, что это будет так же просто, как реализация stringByEvaluatingJavaScriptFromString
декларация для использования с моим пользовательским элементом shareMenuController. Однако это работает универсально для большинства веб-страниц и текстовых диапазонов, за исключением удаленных PDF-файлов. Как Apple получает доступ к этим строкам, чтобы скопировать выбранные диапазоны в буфер обмена или определить?
Исправление:
Я только что проверил "определить" sharedMenuController
элемент, заполненный Apple, когда текст выделен в UIWebView
Формат документа PDF и возникает ошибка:
+ [_ UIDictionaryManager _availableDefinitionDictionaries] вернул ноль. Ошибка: Ошибка Домен = Код ASError =21 "Операция не может быть завершена. (Ошибка 21 ASError - Невозможно скопировать информацию об активе)"
Я также заметил, что в Safari вы не можете искать текст в формате PDF по поисковому запросу пользователя. Так что я полагаю, у них есть проблемы с его извлечением. Могут быть проблемы с памятью, я не уверен, но они все еще могут скопировать выделенный текст в буфер обмена. Как бы мы подражали этому и обрабатывали скопированный текст сами?
1 ответ
К сожалению, то, что вы спросили, не может быть сделано в iOS с текущим API UIWebView. Apple использует частную среду для извлечения текста из PDF-файлов, и эта среда не доступна для внешних приложений.