СПОСОБ И УСТРОЙСТВО ДЛЯ ОТРИСОВКИ ПРЕДСТАВЛЕНИЯ ЭЛЕКТРОННОГО ДОКУМЕНТА НА ЭКРАНЕ
METHOD AND DEVICE FOR DRAWING PRESENTATION OF ELECTRONIC DOCUMENT ON SCREEN

Область техники
[0001] Настоящее техническое решение относится к способу и системе отрисовки электронного документа и, более конкретно, к способу и устройству отрисовки представления электронного документа на экране.
Уровень техники
[0002] Обычный пользователь получает доступ ко множеству электронных устройств для выполнения одной или нескольких задач передачи данных. Например, типичный пользователь может иметь доступ к настольному компьютеру, ноутбуку, смартфону и планшету для выполнения одного или нескольких действий, а именно: отправки и получения электронной почты, просмотра интернета, отправки текстовых сообщений различного типа, прослушивания музыки и просмотра потокового контента, голосовых звонков и так далее.
[0003] В последнее время пользователь может использовать типичное электронное устройство, которое предлагает конвергированные услуги - т.е. обладает способностью выполнять различные задачи с помощью единственного вычислительного устройства. Например, типичный смартфон может предоставить пользователю возможность выполнять такие различные задачи как: отправка электронной почты (текстовый ввод и передача данных), просмотр интернета и осуществление голосовых звонков (мобильных или цифровых).
[0004] Функциональность типичного браузера, реализуемого на электронном устройстве (например, браузера Chrome™) позволяет ему находить и выделять (или по-иному функционально и визуально модифицировать) определенные части интересующего пользователя текста. Например, такой процесс может быть выполнен для поддержки дополнительной функциональности, такой как звонки Skype™ на адреса Skype или телефонные номера; причем эти звонки могут быть инициированы с помощью щелканья мышкой (или иной активации) на выделенный номер телефона или адрес Skype в составе содержимого, отображенного в браузере, например, веб-страницы и т.п. При реализации такой функции («вызов Skype в один щелчок мышью») браузер определяет телефонные номера на веб-странице, которая должна быть отображена в браузере. Браузер может идентифицировать телефонный номер в составе содержимого, отображаемого в браузере, выделить идентифицированный телефонный номер и отрисовать его с возможностью взаимодействия (т.е. предоставив пользователю возможность щелкнуть на выделенный телефонный номер, чтобы начать звонок Skype).
[0005] Патент США №US 7418657 опубл. 26.08.2008 включает в себя методологию, по которой сайт-хост может автоматически вставлять релевантные ссылки в структуру текста. В этой методологии содержимое текста сравнивается с базой данных, содержащей последовательности символов, и определяются последовательности символов из базы данных, которые содержатся в тексте. Каждая из последовательностей символов в базе данных имеет связанную ссылку, которая отсылает на другие веб-страницы на том же самом веб-сайте или других веб-сайтах. Для каждой последовательности символов из базы данных, найденной в тексте, в текст вставляется связанная ссылка. Таким образом, в текст вставляются только релевантные ссылки.
[0006] В патенте США №US 7668929, опубл. 23.02.2010 раскрыта процедура подготовки электронных ресурсов для доставки данных на клиентские компьютеры. Электронные ресурсы (например, веб-страницы) при отрисовке в браузере для отображения включают в себя справочные ссылки на другие электронные ресурсы. В ответ на получение запроса на отправку конкретного ресурса на клиентский компьютер, серверный компьютер извлекает ресурс из хранилища и исследует ресурс, чтобы определить какой-либо идентификатор ссылки, содержащийся в нем. Если определен идентификатор ссылки, сервером определяется и внедряется в запрошенный электронный ресурс на месте идентификатора ссылки сетевой адрес, соответствующий этому идентификатору. Подготовленный ресурс затем передается на клиентский компьютер для отрисовки в браузере.
[0007] В патенте США №US 6581065, опубл. 17.06.2003 раскрыта система автоматического предоставления гипертекста для последовательностей символов в текстовом файле на сервере содержимого. Центральный сервер предоставляет центральное управление ссылками текстовых файлов множества серверов содержимого в информационной сети, например, в интернете. Центральный сервер периодически обновляет каждый сервер содержимого новыми последовательностями символов и/или адресами назначения, например, унифицированными указателями ресурсов (URL). Сервера содержимого также обновляют центральный сервер новыми последовательностями символов. Опционально каждый сервер содержимого может запрашивать центральный сервер в реальном времени на получение адреса назначения для последовательности символов, у которой нет соответствующего валидного адреса назначения. Центральный сервер отвечает на такие запросы поиском в своих главных базах данных, и, если необходимо, использует поисковую систему. Данные счетчика «хитов» сохраняются на серверах содержимого и периодически передаются на центральный сервер.
[0008] В патентной заявке США №US 2008/0304113, опубл. 11.06.2008 раскрыты системы и способы, помогающие предотвратить увеличение размера документа, вызванное вставленными файлами описаний шрифтов, путем вставки только информации о размере шрифта. Когда документ сканируется или переводится в формат PDF или XPS документа-изображения, информация о размере шрифта без глифов, описывающая главные размеры символов шрифтов, используемых в документе, вставляется в изображение документа. Информация о размере шрифта без глифов занимает порядка нескольких килобайтов и позже считывается устройством поиска для обеспечения выделения поисковых терминов, идентифицированных в изображении документа в ответ на поисковый запрос. Прямоугольник выделения создается таким образом, чтобы его ширина в целом была равна комбинированным широтам символов в запрошенном термине, которые описываются информацией о шрифтах без глифов. Прямоугольник выделения затем накладывается на изображение запрошенного термина и представляется пользователю.
[0009] В патентной заявке США №US 2010/0332967, опубл. 30.12.2010 раскрыты способы и системы автоматического создания дополнения для веб-страниц. В одном варианте осуществления предлагается компьютерный способ для автоматического предоставления дополнения для веб-страниц. Способ включает в себя анализ содержимого веб-страницы для определения того, нужно ли веб-странице дополнение. Если разрешение для веб-страницы нужно, способ переходит к определению типа необходимого дополнения веб-страницы на основе содержимого веб-страницы. Способ также включает в себя создание запроса на создание дополнения веб-страницы, и получения дополнения веб-страницы, отправленного системой создания дополнений веб-страницы. Способ также включает в себя отображение дополнения веб-страницы.
[0010] В патенте США №US 7428711 23.09.2008, опубл. раскрыты способы отрисовки электронных чернил с атрибутами выделения; способ включает в себя: (а) получение данных, представляющих по меньшей мере один штрих электронных чернил, включающий в себя атрибут выделения; (б) отрисовку первого выделенного штриха в первом измерении и с помощью первого цвета выделения и/или шаблона; (в) отрисовка цветного штриха чернил с помощью цвета чернил и/или шаблона во втором измерении, которое меньше первого измерения, для создания совокупного штриха, выглядящего как выделенный. Когда выбирается выделенный штрих, он может быть отрисован с помощью третьего, внутреннего слоя, который является более узким, чем слой цветных чернил, с помощью цвета выделения и/или шаблона. Изобретение также относится к системам и машиночитаемым носителям для осуществления этих способов, а также структурам данных, которые включают в себя атрибут выделения и данные электронных чернил.
Раскрытие
[0011] Задачей предлагаемого технического решения является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники.
[0012] Первым объектом настоящего технического решения является способ отрисовки представления электронного документа на экране. Способ выполняется на электронном устройстве с экраном. Способ включает в себя: получение электронным устройством электронного документа, который должен быть отрисован, причем электронный документ включает в себя часть содержимого и часть инструкций отрисовки, причем часть инструкций отрисовки включает в себя по меньшей мере одну инструкцию для предоставления электронному устройству возможности отрисовать часть содержимого на экране; создание электронным устройством по меньшей мере одной команды отрисовки, причем эта по меньшей мере одна команда отрисовки основана по меньшей мере на одной инструкции; идентификацию электронным устройством из части содержимого порции, которая должна быть модифицирована; во время создания по меньшей мере одной команды отрисовки создание электронным устройством по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда отрисовки напрямую не формируется на основе по меньшей мере одной инструкции, а создание по меньшей мере одной дополнительной команды отрисовки основано на порции, которая должна быть модифицирована из части содержимого; создание электронным устройством представления электронного документа на экране на основе комбинации по меньшей мере одной команды отрисовки и по меньшей мере одной дополнительной команды отрисовки.
[0013] В некоторых вариантах осуществления способа порция части содержимого для модификации является текстовой порцией.
[0014] В некоторых вариантах осуществления способа идентификация из части содержимого порции для модификации включает в себя: идентификацию совокупности текста в рамках части содержимого; идентификацию в рамках совокупности текста текстовой порции, которую нужно модифицировать.
[0015] В некоторых вариантах осуществления способа идентификация в рамках совокупности текста текстовой порции, которую нужно модифицировать, включает в себя применение набора правил.
[0016] В некоторых вариантах осуществления способа порция части содержимого является графическим объектом.
[0017] В некоторых вариантах осуществления способа порция части содержимого является комбинацией текста и по меньшей мере одного изображения.
[0018] В некоторых вариантах осуществления способа по меньшей мере одно изображение включает в себя одно из: картинку, карту или рекламный баннер.
[0019] В некоторых вариантах осуществления способа часть инструкций отрисовки включает в себя разметку HTML.
[0020] В некоторых вариантах осуществления способа по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью инициировать изменения вида порции для модификации из части содержимого, по сравнению с видом, инициированным по меньшей мере одной командой отрисовки.
[0021] В некоторых вариантах осуществления способа по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью инициировать отображение вспомогательной информации, не входящей в состав порции для модификации из части содержимого.
[0022] В некоторых вариантах осуществления способа вспомогательная информация является по меньшей мере одним пунктом из: указание на действие, которое должно быть выполнено с объектом; дополнительная информация, связанная с частью содержимого для модификации; переведенная версия информации, входящей в состав части содержимого для модификации.
[0023] В некоторых вариантах осуществления способа по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью формирования визуальной области активации, связанной с порцией содержимого для модификации, причем визуальная область активации отображает пользователю указатель на действие; способ также включает в себя: выполнение действия в ответ на активацию пользователем визуально области активации.
[0024] В некоторых вариантах осуществления способа получение электронного документа для отрисовки включает в себя получение электронного документа с сервера, причем сервер доступен для электронного устройства по сети передачи данных.
[0025] В некоторых вариантах осуществления способа получение выполняется в ответ на пользовательскую активность в браузере.
[0026] В некоторых вариантах осуществления способа получение электронного документа для отрисовки включает в себя извлечение электронного документа из памяти электронного устройства.
[0027] В некоторых вариантах осуществления способа создание по меньшей мере одной дополнительной команды отрисовки включает в себя извлечение указания на соответствующую по меньшей мере одну дополнительную команду отрисовки из хранилища команд, доступного электронному устройству.
[0028] В некоторых вариантах осуществления способа создание по меньшей мере одной дополнительной команды отрисовки включает в себя выбор по меньшей мере одной дополнительной команды отрисовки из набора дополнительных команд отрисовки, причем выбор основан на части содержимого для модификации.
[0029] Еще одним объектом настоящего технического решения является электронное устройство. Электронное устройство включает в себя: процессор; модуль ввода-вывода, соединенный с процессором; процессор выполнен с возможностью осуществлять: получение электронного документа, который должен быть отрисован, причем электронный документ включает в себя часть содержимого и часть инструкций отрисовки, причем часть инструкций отрисовки включает в себя по меньшей мере одну инструкцию для предоставления процессору возможности отрисовать часть содержимого с помощью модуля ввода-вывода; создание по меньшей мере одной команды отрисовки, причем эта по меньшей мере одна команда отрисовки основана по меньшей мере на одной инструкции; идентификацию из части содержимого порции, которая должна быть модифицирована; на основе порции, которая должна быть модифицирована, из части (202) содержимого, во время создания по меньшей мере одной команды отрисовки создание по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда отрисовки напрямую не формируется на основе по меньшей мере одной инструкции, а создание по меньшей мере одной дополнительной команды отрисовки основано на порции, которая должна быть модифицирована, из части содержимого; создание представления электронного документа на экране на основе комбинации по меньшей мере одной команды отрисовки и по меньшей мере одной дополнительной команды отрисовки.
[0030] В некоторых вариантах осуществления электронного устройства порция части содержимого для модификации является текстовой порцией.
[0031] В некоторых вариантах осуществления электронного устройства для идентификации порции для модификации из части содержимого процессор выполнен с возможностью: идентифицировать совокупность текста в рамках части содержимого; идентифицировать в рамках совокупности текста текстовую порцию, которую нужно модифицировать.
[0032] В некоторых вариантах осуществления электронного устройства для идентификации в рамках совокупности текста текстовой порции, которую нужно модифицировать, процессор выполнен с возможностью применять набор правил.
[0033] В некоторых вариантах осуществления электронного устройства порция части содержимого является графическим объектом.
[0034] В некоторых вариантах осуществления электронного устройства порция части содержимого является комбинацией текста и по меньшей мере одного изображения.
[0035] В некоторых вариантах осуществления электронного устройства по меньшей мере одно изображение включает в себя одно из: картинку, карту или рекламный баннер.
[0036] В некоторых вариантах осуществления электронного устройства часть инструкций отрисовки включает в себя разметку HTML.
[0037] В некоторых вариантах осуществления электронного устройства по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью инициировать изменения вида порции для модификации из части содержимого, по сравнению с видом, инициированным по меньшей мере одной командой отрисовки.
[0038] В некоторых вариантах осуществления электронного устройства по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью инициировать отображение вспомогательной информации, не входящей в состав порции для модификации из части содержимого.
[0039] В некоторых вариантах осуществления электронного устройства вспомогательная информация является по меньшей мере одним пунктом из: указание на действие, которое должно быть выполнено с объектом; дополнительная информация, связанная с частью содержимого для модификации; переведенная версия информации, входящей в состав части содержимого для модификации.
[0040] В некоторых вариантах осуществления электронного устройства по меньшей мере одна дополнительная команда отрисовки выполнена с возможностью формирования визуальной порции активации, связанной с порцией для модификации, причем визуальная область активации отображает пользователю указатель на действие; и процессор также выполнен с возможностью выполнять действие в ответ на активацию пользователем визуальной области активации.
[0041] В некоторых вариантах осуществления электронного устройства для получения электронного документа для отрисовки процессор выполнен с возможностью получать электронный документ с сервера, причем сервер доступен для электронного устройства по сети передачи данных.
[0042] В некоторых вариантах осуществления электронного устройства получение выполняется в ответ на пользовательскую активность в браузере.
[0043] В некоторых вариантах осуществления электронного устройства для получения электронного документа для отрисовки процессор выполнен с возможностью извлекать электронный документ из модуля памяти электронного устройства.
[0044] В некоторых вариантах осуществления электронного устройства для создания по меньшей мере одной дополнительной команды отрисовки процессор выполнен с возможностью извлекать указание на соответствующую по меньшей мере одну дополнительную команду отрисовки из хранилища команд, доступного электронному устройству.
[0045] В некоторых вариантах осуществления электронного устройства для создания по меньшей мере одной дополнительной команды отрисовки процессор выполнен с возможностью выбирать по меньшей мере одну дополнительную команду отрисовки из набора дополнительных команд отрисовки, причем выбор основан на части содержимого для модификации.
[0046] В контексте настоящего описания, если конкретно не указано иное, «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для настоящего технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами; оба варианта включены в выражение «по меньшей мере один сервер».
[0047] В контексте настоящего описания, если конкретно не указано иное, «клиентское устройство» подразумевает под собой аппаратное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Примерами клиентских устройств, среди прочего, являются персональные компьютеры (настольные компьютеры, ноутбуки и т.д.), смартфоны и планшеты. Следует иметь в виду, что устройство, ведущее себя как клиентское устройство в настоящем контексте, может вести себя как сервер по отношению к другим клиентским устройствам. Использование выражения «клиентское устройство» не исключает возможности использования множества клиентских устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.
[0048] В контексте настоящего описания, если конкретно не указано иное, термин «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, который сохраняет или использует информацию, хранящуюся в базе данных, или же она может находиться на отдельном оборудовании, например, выделенном сервере или множестве серверов.
[0049] В контексте настоящего описания, если конкретно не указано иное, термин «компонент» подразумевает под собой программное обеспечение (соответствующее конкретному аппаратному контексту), которое является необходимым и достаточным для выполнения конкретной(ых) указанной(ых) функции(й).
[0050] В контексте настоящего описания, если конкретно не указано иное, термин «используемый компьютером носитель компьютерной информации» подразумевает под собой носитель абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д.
[0051] В контексте настоящего описания, если конкретно не указано иное, термин «интерактивный» подразумевает под собой, что нечто (или по меньшей мере его часть) может реагировать на пользовательский ввод.
[0052] В контексте настоящего описания, если четко не указано иное, «указание» информационного элемента может представлять собой сам информационный элемент или указатель, отсылку, ссылку или другой косвенный способ, позволяющий получателю указания найти сеть, память, базу данных или другой машиночитаемый носитель, из которого может быть извлечен информационный элемент. Например, указание на файл может включать в себя сам файл (т.е. его содержимое), или же оно может являться уникальным дескриптором файла, идентифицирующим файл по отношению к конкретной файловой системе, или какими-то другими средствами передавать получателю указание на сетевую папку, адрес памяти, таблицу в базе данных или другое место, в котором можно получить доступ к файлу. Как будет понятно специалистам в данной области техники, степень точности, необходимая для такого указания, зависит от степени первичного понимания того, как должна быть интерпретирована информация, которой обмениваются получатель и отправитель указателя. Например, если до установления связи между отправителем и получателем понятно, что указание информационного элемента принимает вид ключа базы данных для записи в конкретной таблице заранее установленной базы данных, включающей в себя информационный элемент, то передача ключа базы данных - это все, что необходимо для эффективной передачи информационного элемента получателю, несмотря на то, что сам по себе информационный элемент не передавался между отправителем и получателем указания.
[0053] Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.
[0054] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.
Краткое описание чертежей
[0055] Для лучшего понимания настоящего технического решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:
[0056] На Фиг. 1 представлена принципиальная схема системы, подходящей для реализации вариантов осуществления настоящего технического решения.
[0057] На Фиг. 2 представлена схема документа, который должен быть отображен электронным устройством из системы на Фиг. 1, причем в документе есть текстовая часть и часть отрисовки.
[0058] На Фиг. 3 представлена принципиальная схема электронного устройства, показанного на Фиг. 1, причем электронное устройство реализовано в соответствии с вариантами осуществления настоящего технического решения.
[0059] На Фиг. 4 представлена схема процесса создания инструкции отрисовки системой отрисовки электронного устройства, изображенного на Фиг. 3, причем создание инструкций отрисовки выполняется на основе инструкций из двух источников.
[0060] На Фиг. 5 представлена схема первого отрисованного документа и второго отрисованного документа, причем первый отрисованный документ был отрисован с использованием способов известного уровня техники, а второй отрисованный документ был отрисован с использованием вариантов осуществления настоящего технического решения.
[0061] На Фиг. 6 представлена блок-схема способа, выполняемого на электронном устройстве, изображенном на Фиг. 3, и выполненного в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.
Осуществление
[0062] Все примеры и используемые здесь условные конструкции предназначены, главным образом, для того, чтобы помочь читателю понять принципы настоящего технического решения, а не для установления границ его объема. Следует также отметить, что специалисты в данной области техники могут разработать различные схемы, отдельно не описанные и не показанные здесь, но которые, тем не менее, воплощают собой принципы настоящего технического решения и находятся в границах его объема.
[0063] Кроме того, для ясности в понимании, следующее описание касается достаточно упрощенных вариантов осуществления настоящего технического решения. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.
[0064] Некоторые полезные примеры модификаций настоящего технического решения также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающего списка, и специалисты в данной области техники могут создавать другие модификации, остающиеся в границах объема настоящего технического решения. Кроме того, те случаи, в которых не представлены примеры модификаций, не должны интерпретироваться как то, что никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящего технического решения.
[0065] Более того, все заявленные здесь принципы, аспекты и варианты осуществления настоящего технического решения, равно как и конкретные их примеры, предназначены для обозначения их структурных и функциональных основ. Таким образом, например, специалистами в данной области техники будет очевидно, что представленные здесь блок-схемы представляют собой концептуальные иллюстративные схемы, отражающие принципы настоящего технического решения. Аналогично, любые блок-схемы, диаграммы, псевдокоды и т.п. представляют собой различные процессы, которые могут быть представлены на машиночитаемом носителе и, таким образом, использоваться компьютером или процессором, вне зависимости от того, показан явно подобный компьютер или процессор, или нет.
[0066] Функции различных элементов, показанных на фигурах, включая функциональный блок, обозначенный как «процессор» или «графический процессор», могут быть обеспечены с помощью специализированного аппаратного обеспечения или же аппаратного обеспечения, способного использовать подходящее программное обеспечение. Когда речь идет о процессоре, функции могут обеспечиваться одним специализированным процессором, одним общим процессором или множеством индивидуальных процессоров, причем некоторые из них могут являться общими. В некоторых вариантах осуществления настоящего технического решения процессор может являться универсальным процессором, например, центральным процессором (CPU) или специализированным для конкретной цели процессором, например, графическим процессором (GPU). Более того, использование термина «процессор» или «контроллер» не должно подразумевать исключительно аппаратное обеспечение, способное поддерживать работу программного обеспечения, и может включать в себя, без установления ограничений, цифровой сигнальный процессор (DSP), сетевой процессор, интегральная схема специального назначения (ASIC), программируемую пользователем вентильную матрицу (FPGA), постоянное запоминающее устройство (ПЗУ) для хранения программного обеспечения, оперативное запоминающее устройство (ОЗУ) и энергонезависимое запоминающее устройство. Также может быть включено другое аппаратное обеспечение, обычное и/или специальное.
[0067] Программные модули или простые модули, представляющие собой программное обеспечение, которое может быть использовано здесь в комбинации с элементами блок-схемы или другими элементами, которые указывают на выполнение этапов процесса и/или текстовое описание. Подобные модели могут быть выполнены на аппаратном обеспечении, показанном напрямую или косвенно.
[0068] С учетом этих примечаний, далее будут рассмотрены некоторые не ограничивающие варианты осуществления аспектов настоящего технического решения.
[0069] На Фиг. 1 представлена схема системы 100, реализованной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Система 100 включает в себя электронное устройство 102, выполненное в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. В рамках Фиг. 1 электронное устройство 102 может быть выполнено как беспроводное устройство (например, мобильный телефон, смартфон, планшет, личный электронный секретарь и так далее) передачи данных, так и как персональный компьютер (настольный компьютер, ноутбук, нетбук и т.д.), сетевое оборудование (маршрутизатор, коммутатор или шлюз) и т.п. В общем случае, предлагаемое техническое решение может быть применено к любому электронному устройству 102, которое обладает экраном (встроенным или внешним).
[0070] На Фиг. 3 представлена принципиальная схема электронного устройства 102. Следует отметить, что описание электронного устройства 102, представленное здесь, в значительной степени упрощено и касается, в основном, тех его компонентов, которые связаны с выполнением вариантов осуществления настоящего технического решения, но специалистам в настоящей области техники будет понятно, что есть и другие компоненты электронного устройства 102 с присущей им функциональностью.
[0071] Электронное устройство 102 включает в себя процессор 304. В конкретном варианте осуществления настоящего технического решения процессор 304 может включать в себя один или несколько процессоров и/или один или несколько микроконтроллеров, выполненных с возможностью выполнять инструкции для выполнения операций, связанных с работой электронного устройства 102. В разнообразных вариантах осуществления настоящего технического решения процессор 304 может быть реализован как однокристальный, многокристальный и/или включающий в себя другие электротехнические детали, включая одну или несколько интегральных схем и печатных плат. Процессор 304 может опционально включать в себя кэш-память (не изображена) для временного локального хранения команд, данных или электронных адресов. Например, процессор 304 может включать в себя один или несколько процессоров, или один или несколько контроллеров, относящихся к конкретным задачам электронного устройства 102 или единый многофункциональный процессор или контроллер.
[0072] Процессор 304 связан с модулем 306 памяти. Модуль 306 памяти может охватывать один или несколько носителей и в целом предоставлять место для хранения компьютерного кода (например, программного и/или аппаратного обеспечения). В качестве примера модуль 306 памяти может включать разнообразные материальные машиночитаемые носители, включая постоянное запоминающее устройство ПЗУ (ROM) и/или оперативное запоминающее устройство ОЗУ (RAM). Как широко известно в данной области техники, ПЗУ передает данные и команды однонаправленно процессору 304, а ОЗУ обычно используется для передачи данных и команд двунаправленно.
[0073] Модуль 306 памяти может также включать одно или несколько стационарных запоминающих устройств, в виде, среди прочих подходящих форм памяти, например, жестких дисков (HDD), твердотельных накопителей (SSD), карт флэш-памяти (например, безопасные цифровые карты или SD-карты, встроенные мультимедийные карты или еММС карты), соединенных двунаправленно с процессором 304. Информация может также располагаться на одном или нескольких съемных носителях, загруженных или установленных в электронное устройство 102, когда это необходимо. В качестве примера любое количество подходящих карт памяти (например, SD-карт) может быть установлено в электронное устройство 102 на временной или постоянной основе.
[0074] Модуль 306 памяти может хранить среди прочего серию машиночитаемых инструкций, выполнение которых позволяет процессору 304 (а также другим компонентам электронного устройства 102) выполнять различные операции, описанные здесь.
[0075] Процессор 304 также соединен с интерфейсом 308 передачи данных для двухсторонней передачи данных по сети 106 передачи данных (изображена на Фиг. 1).
[0076] Процессор 304 также соединен с модулем 310 ввода-вывода (который также может иногда упоминаться как экран 310). Модуль 310 ввода-вывода может включать в себя один или несколько устройств ввода и устройств вывода. Например, модуль 310 ввода-вывода может включать в себя клавиатуру, мышь, одну или несколько кнопок, колесико и/или дисплей (например, жидкокристаллический дисплей (LCD), светодиодный дисплей (LED), дисплей на основе интерферометрической модуляции (IMOD) или дисплей на основе любой другой подходящей технологии).
[0077] В общем случае, часть ввода модуля 310 ввода-вывода выполнена с возможностью передавать данные, команды и ответы из внешнего мира в электронное устройство 102. Часть вывода модуля 310 ввода-вывода в общем случае выполнена с возможностью отображать графический интерфейс пользователя (GUI), который предоставляет простой в использовании визуальный интерфейс для взаимодействия пользователя с электронным устройством 102 и операционной системой или приложением(ями), работающим(и) на электронном устройстве 102. В общем случае графический интерфейс пользователя (GUI) представляет программы, файлы и операционные опции с помощью графических изображений. Во время проведения операции пользователь может выбрать и активировать разнообразные графические изображения, отображенные на дисплее, для инициации функций и задач, связанных с ними.
[0078] В изображенном на Фиг. 1 варианте осуществления электронного устройства 102 модуль 310 ввода-вывода выполнен как отдельный экран и отдельная клавиатура. В дополнительных вариантах осуществления настоящего технического решения модуль 310 ввода-вывода может быть реализован в виде сенсорного экрана, который выполняет функциональность как устройства ввода (путем фиксирования пользовательских команд в виде прикосновений), так и устройства вывода (т.е. дисплея). Другими словами, сенсорный экран представляет собой дисплей, который определяет наличие и положение пользовательского ввода-прикосновения. Тем не менее, в других альтернативных вариантах осуществления настоящего технического решения, модуль 310 ввода-вывода может включать в себя физический интерфейс (включающий в себя одну или несколько физических кнопок) в дополнение к сенсорному экрану.
[0079] Процессор 304 дополнительно связан с системой 312 отрисовки. В общем случае система 312 отрисовки выполнена с возможностью осуществлять отрисовку, т.е. создавать отрисованное изображение документа для отображения с помощью модуля 310 ввода-вывода. Система 312 отрисовки выполнена с возможностью обрабатывать инструкции отрисовки, связанные с конкретным документом, для создания команд отрисовки для модуля 310 ввода-вывода, как будет подробнее описано ниже.
[0080] Хотя система 312 отрисовки изображена как модуль аппаратного обеспечения на Фиг. 3, в альтернативных вариантах осуществления настоящего технического решения система 312 отрисовки может быть реализована как модуль аппаратного обеспечения или комбинация аппаратного и программного обеспечения.
[0081] Возвращаясь к описанию Фиг. 1, интерфейс 308 передачи данных электронного устройства 102 выполнен с возможностью соединяться с сетью 106 передачи данных по линии 105 передачи данных. Реализация линии 105 передачи данных не ограничена, и будет зависеть от того, какое электронное устройство 102 используется. В качестве примера, но не ограничения, в данных вариантах осуществления настоящего технического решения в случаях, когда электронное устройство 102 представляет собой беспроводное устройство связи (например, смартфон), линия 105 передачи данных представляет собой беспроводную сеть передачи данных (например, среди прочего, линия передачи данных 3G, линия передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi, Bluetooth и т.п.). В тех примерах, где электронное устройство 102 представляет собой портативный компьютер, линия передачи данных может быть как беспроводной (беспроводной интернет Wireless Fidelity или коротко WiFi, Bluetooth и т.п) так и проводной (соединение на основе сети Ethernet).
[0082] В некоторых вариантах осуществления настоящего технического решения, не ограничивающих его объем, сеть 106 передачи данных может представлять собой Интернет. В других вариантах осуществления настоящего технического решения сеть 106 передачи данных может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п.
[0083] С сетью 106 передачи данных также соединен сервер 104. Сервер 104 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения сервер 104 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 104 может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, сервер 104 является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, функциональность сервера 104 может быть разделена и может выполняться с помощью нескольких серверов.
[0084] В рамках вариантов осуществления настоящего технического решения на сервере 104 расположен один или несколько доступных по сети ресурсов, изображенных на Фиг. 1 как доступный по сети ресурс 107. С этой целью сервер 104 имеет доступ к серверному хранилищу 108 (или включает его в свой состав). Серверное хранилище 108 может быть реализовано как любое подходящее устройство памяти, на котором могут храниться один или несколько доступных по сети ресурсов 107.
[0085] Доступный по сети ресурс 107 может быть веб-страницей, веб-сайтом или веб-порталом, доступным для электронного устройства 102 по сети 106 передачи данных. Для этого электронное устройство 102 может выполнять браузерное приложение 110, которое позволяет пользователю (не изображен) электронного устройства 102 запрашивать и получать содержимое доступного по сети ресурса 107. Пользователь электронного устройства 102 может использовать браузерное приложение 110 чтобы ввести (или вставить скопированный) универсальный указатель ресурса (URL) или другой подходящий адрес, связанный с доступным по сети ресурсом 107. Альтернативно пользователь может выбирать ссылку, которая указывает на URL доступного по сети ресурса 107 (выбор может быть осуществлен из электронного сообщения, другого веб-документа и текстового документа и так далее).
[0086] В ответ на то, что пользователь запрашивает доступ к доступному по сети ресурсу 107, электронное устройство 102 передает пакет 112 серверу 104. То, как обрабатывается пакет 112 сетью 106 передачи данных и разнообразным сетевым оборудованием (не изображено), включенным в нее, известно в данной области техники, и не будет объясняться в данном описании. После получения пакета 112 сервер 104 обрабатывает запрос, включенный в него, и передает пакет 114, включающий в себя доступный по сети ресурс 107. Каждый пакет 112 и пакет 114 может включать в себя соответствующее множество пакетов, включающих в себя соответствующую информацию.
[0087] Пакет 114 будет описан подробнее со ссылкой на Фиг. 2. На Фиг. 2 представлена принципиальная схема пакета 114, которая может быть реализована для варианта осуществления настоящего технического решения.
[0088] Как было упомянуто выше, пакет 114 включает в себя доступный по сети ресурс 107. Для предоставления электронному устройству 102 возможности отрисовывать доступный по сети ресурс 107, видимый пользователю электронного устройства 102, причем доступный по сети ресурс 107 включает в себя часть 202 содержимого и часть 204 инструкций отрисовки. Часть 202 содержимого включает в себя один или несколько пунктов: текст, графику и т.п., которые отображаются на пользовательском электронном устройстве 102. Часть 204 инструкций отрисовки включает в себя по меньшей мере одну инструкцию 206 для предоставления электронному устройству 102 возможности отрисовывать часть 202 содержимого с помощью модуля 310 ввода-вывода.
[0089] В некоторых вариантах осуществления настоящего технического решения часть 204 инструкций отрисовки может быть выполнена на языке HTML (язык разметки гипертекста). Однако варианты осуществления настоящего технического решения не ограничиваются только HTML для реализации части 204 инструкций отрисовки. Часть 204 инструкций отрисовки может быть выполнена на: на языке разметки Keyhole (Keyhole Markup Language (KML/KMZ)), на языке математической разметки (Mathematical Markup Language (MathML)), на языке разметки масштабируемой векторной графики Scalable Vector Graphics (SVG), с помощью системы компьютерной верстки ТеХ, с помощью макропакета LaTeX системы компьютерной верстки ТеХ, на языке разметки Wiki markup, с помощью расширяемого 3D (Extensible 3D (X3D)), на расширяемом языке гипертекстовой разметки (Extensible HyperText Markup Language (XHTML)) и т.п.
[0090] После получения пакета 114 процессор 304 электронного устройства 102 передает часть 202 содержимого и часть 204 инструкций отрисовки системе 312 отрисовки для отрисовки части 202 содержимого с использованием модуля 310 ввода-вывода.
[0091] Процесс отрисовки будет описан со ссылкой на Фиг. 4 и Фиг. 5, причем Фиг. 4 - схематическое представление процесса создания инструкции отрисовки системой 312 отрисовки электронного устройства 102, изображенного на Фиг. 3, а создание инструкций отрисовки выполняется на основе инструкций из двух источников; Фиг. 5 изображает схематическое представление первого отрисованного документа и второго отрисованного документа, причем первый отрисованный документ был отрисован с использованием схем известного уровня техники, а второй отрисованный документ был отрисован с использованием вариантов осуществления настоящего технического решения.
[0092] Следует отметить, что описание, представленное здесь, использует доступный по сети ресурс 107 только как пример. Однако следует понимать, что представленное здесь описание равным образом применимо к любому ресурсу или документу, доступен ли он по сети 106 передачи данных, сохранен ли локально в модуле 306 памяти, или же доступен любым иным способом для электронного устройства 102 (например, с помощью внешнего хранилища памяти и тому подобного).
[0093] Сначала будет описан процесс отрисовки системой 312 отрисовки части 202 содержимого с использованием части 204 инструкций отрисовки. Часть 204 инструкций отрисовки включает в себя упомянутую выше по меньшей мере одну инструкцию 206, причем по меньшей мере одна инструкция 206 изображается как множество инструкций 402 отрисовки, включая первую инструкцию 404 отрисовки, вторую инструкцию 406 отрисовки, третью инструкцию 408 отрисовки, а также ряд других инструкций отрисовки, которые не перечислены на Фиг. 4.
[0094] Каждая из инструкций: первая инструкция 404 отрисовки, вторая инструкция 406 отрисовки, третья инструкция 408 отрисовки обрабатываются системой 312 отрисовки, чтобы инициировать отображение связанной части первой отрисованной страницы 501, изображенной на Фиг. 5. Исключительно в качестве примера, конкретная инструкция из первой инструкции 404 отрисовки, второй инструкции 406 отрисовки, третьей инструкции 408 отрисовки может быть связана с конкретной частью первой отрисованной страницы 501, например, текстовой частью, изображением или любым другим подходящим объектом. Кроме того, конкретная инструкция из первой инструкции 404 отрисовки, второй инструкции 406 отрисовки, третьей инструкции 408 отрисовки также выделяет для системы 312 отрисовки расположение связанной части первой отрисованной страницы 501, равно как другие параметры (например, для текста это может быть цвет, шрифт, размер, наличие полужирного или курсивного начертания и так далее).
[0095] Пусть вторая инструкция 406 отрисовки связана с отрисовкой телефонного номера для отображения на первой отрисованной странице 501 (изображен под указанием 504 на Фиг. 5 как телефонный номер ХХХ-ХХХ-ХХХХ). Телефонный номер используется только в качестве примера, и описания, приведенные здесь могут быть применены к любому тексту, любому изображению или любому другому объекту на первой отрисованной странице 501. В широком смысле настоящее описание может быть применено к любому типу порции из части 202 содержимого, например, к тексту, или графическому объекту, или комбинации текста и по меньшей мере одного графического объекта. Графический объект может быть любым изображением и может включать изображение, карту или рекламное объявление.
[0096] В соответствии с вариантами осуществления настоящего технического решения система 312 отрисовки выполнена с возможностью анализировать содержимое части 202 содержимого для определения по меньшей мере одной порции для модификации из части 202 содержимого, чтобы отрисовать ее визуально отличимо, как это предписано частью 204 инструкций отрисовки. То, как система 312 отрисовки выполняет идентификацию по меньшей мере одной части для модификации, может различаться в различных вариантах осуществления настоящего технического решения.
[0097] В некоторых вариантах осуществления настоящего технического решения часть для модификации может быть изображением, например, картой или рекламным объявлением. В этих вариантах осуществления система отрисовки по меньшей мере одной части для модификации использует предварительно определенное правило и применяет предварительно определенное правило к инструкциям отрисовки из части 204 инструкций отрисовки. Как пример, когда часть 204 инструкций отрисовки реализована на языке HTML, система 312 отрисовки может анализировать теги HTML, чтобы идентифицировать теги <img src=..>и идентифицировать объект, связанный с ними, как по меньшей мере одну порцию для модификации части 202 содержимого.
[0098] В других вариантах осуществления настоящего технического решения часть для модификации может быть текстовой частью. В таких вариантах осуществления настоящего технического решения идентификация по меньшей мере одной порции для модификации из части 202 содержимого может включать в себя: (i) идентификацию совокупности текста в рамках части 202 содержимого; (ii) идентификацию в рамках совокупности текста текстовой порции, которую нужно модифицировать. Система 312 отрисовки выполнена с возможностью сначала извлекать весь текст из части 202 содержимого, что может быть сделано, например, с помощью извлечения только текстовой части из части 202 содержимого. Система 312 отрисовки также может быть выполнена с возможностью применять по меньшей мере одно предварительно определенное правило и связанный шаблон к только что извлеченной совокупности текста из части 202 содержимого.
[0099] В некоторых вариантах осуществления настоящего технического решения по меньшей мере одно предварительно определенное правило может быть следующим: выделять телефонный номер в части 202 содержимого, а связанный шаблон может выглядеть следующим образом: «###-###-####», причем шаблон выполнен с возможностью идентифицировать стандартные североамериканские телефонные номера.
[00100] В других вариантах осуществления настоящего технического решения по меньшей мере одно предварительно определенное правило может быть следующим: выделять адрес в части 202 содержимого, а связанный шаблон может выглядеть следующим образом: «», причем шаблон выполнен с возможностью идентифицировать канадский стандартный почтовый индекс. Система 312 отрисовки может также применять по меньшей мере одно правило, чтобы идентифицировать текст возле идентифицированного почтового индекса, таким образом определяя остальную часть адреса. Это также может включать в себя применение одного или нескольких дополнительных шаблонов для идентификации номеров дома, названия улицы, города, области/штата и так далее.
[00101] На Фиг. 5 процесс идентификации по меньшей мере одной порции для модификации из части 202 текста схематично изображен под номером 502. На этой иллюстрации система 312 отрисовки идентифицировала телефонный номер, изображенный под номером 504, как порцию для модификации части 202 содержимого, причем эта идентификация изображена пунктирной линией под номером 502.
[00102] Система 312 отрисовки может дополнительно создавать по меньшей мере одну дополнительную инструкцию отрисовки для применения на по меньшей мере одной идентифицированной порции для модификации из части 202 содержимого. Следует отметить, что по меньшей мере одна дополнительная команда отрисовки напрямую не формируется на основе по меньшей одной инструкции в части 204 инструкций отрисовки. Другими словами, по меньшей мере одна дополнительная команда инструкции отрисовки выполнена с возможностью изменить отрисовку по меньшей мере одной порции для модификации из части 202 содержимого, чтобы она отличалась от того, как она была бы отрисована, если бы была выполнена инструкция в части 304 инструкций отрисовки (например, как в случае с первой отрисованной страницей 501 на Фиг. 5).
[00103] В некоторых вариантах осуществления настоящего технического решения система 312 отрисовки выполнена с возможностью извлекать по меньшей мере одну дополнительную инструкцию отрисовки из модуля 306 памяти, причем модуль 306 памяти выполнен с возможностью сохранять указание по меньшей мере на одну дополнительную инструкцию, связанную с соответствующим предварительно определенным правилом для идентификации и изменения по меньшей мере одной порции из части 202 содержимого. Они изображены на Фиг. 4 - как первая дополнительная инструкция 410 отрисовки и вторая дополнительная инструкция 412 отрисовки. Пусть первая дополнительная инструкция 410 отрисовки связана с первым предварительно определенным правилом для выделения телефонного номера и дополнением его вида до активируемого телефонного номера, на который пользователь электронного устройства 102 может «щелкнуть» мышью, чтобы инициировать голосовой звонок по интернету. Кроме того, пусть вторая дополнительная инструкция 412 отрисовки связана со вторым предварительно определенным правилом для изменения вида адреса в части 202 содержимого, причем измененный вид адреса указывает на доступность карты, когда пользователь наводит курсор на адрес, отображенный с визуально модифицированным видом.
[00104] Таким образом, можно сказать, что указанная система 312 отрисовки создает по меньшей мере одну дополнительную команду отрисовки на основе типа порции для модификации из части 202 содержимого.
[00105] Система 312 отрисовки выполнена с возможностью создавать, во время создания по меньшей мере одной команды отрисовки из части 204 инструкций отрисовки, по меньшей мере одну дополнительную инструкцию 410, 412 отрисовки, и, следовательно, создавать полный набор команд 414, изображенный на Фиг. 4. Как будет ясно из описания, представленного выше, полный набор команд 414 отрисовки основан на инструкциях, сформированных на основании множества инструкций 402 отрисовки (т.е. тех, которые сформированы на основании части 204 инструкций отрисовки) и по меньшей мере одной дополнительной инструкции 410, 412 отрисовки; причем по меньшей мере одна дополнительная инструкция 410, 412 отрисовки напрямую не может быть сформирована только на основании множества инструкций 402 отрисовки, содержащихся в части 204 инструкций отрисовки, а создается на основе идентифицированной порции для модификации из части 202 содержимого.
[00106] Как изображено на Фиг. 4, полный набор команд 414 отрисовки включает в себя, по порядку, команды отрисовки, основанные на: первой инструкции 404 отрисовки и второй инструкции 406 отрисовки из множества инструкций 402 отрисовки части 204 инструкций отрисовки, а также первой дополнительной инструкции 410 отрисовки, которая напрямую не может быть сформирована на основании множества инструкций 402 отрисовки, а затем третьей инструкции 408 отрисовки из множества инструкций 402 отрисовки, а затем ряда других команд отрисовки на основе инструкций отрисовки, сформированных на основании множества инструкций 402 отрисовки (равно как потенциально одной или нескольких дополнительных инструкций отрисовки, сходных с дополнительными инструкциями 410, 412 отрисовки).
[00107] На Фиг. 5 изображена вторая отрисованная страница 510, отрисованная с использованием процесса, который был описан ссылкой на Фиг. 4. Вторая отрисованная страница 510 в основном сходна с первой отрисованной страницей 501 (так как вторая отрисованная страница 510 была отрисована с использованием тех же самых инструкций отрисовки, что и первая отрисованная страница 501), конкретные отличия их описаны выше. Как можно вспомнить, части второй отрисованной страницы 510 были отрисованы с использованием дополнительной инструкции 410 отрисовки. Также следует отметить, что дополнительная инструкция 410 отрисовки выполнена с возможностью дополнить представление телефонного номера (т.е. ХХХ-ХХХ-ХХХХ, изображенного под номером 504 на Фиг. 5).
[00108] В рамках представленной иллюстрации второй отрисованной страницы 510 изображено дополненное отрисованное представление 516 телефонного номера ХХХ-ХХХ-ХХХХ. Точная степень дополнения представления никак не ограничена и будет зависеть от конкретного варианта осуществления настоящего технического решения.
[00109] Например, в некоторых вариантах осуществления настоящего технического решения дополненное представление может включать в себя указание действия 514. На Фиг. 5 указание действия 514 выглядит как «Звонок» для указания пользователю электронного устройства 102 того, что пользователь может инициировать голосовой звонок по интернету, щелкнув (или иным образом активировав) дополненную версию представления 516.
[00110] В альтернативных вариантах осуществления настоящего технического решения указание действия 514 может включать в себя различный текст, который будет зависеть от типа порции из части 202 содержимого, которая модифицируется. Например, указание действия 514 может гласить «Отобразить на карте:», «Отправить электронное письмо:», «Загрузить файл:», «Начать потоковую передачу данных:», «Начать загрузку:», «Проиграть медиа:» и так далее.
[00111] Следует отметить, что указание действия 514 может быть представлено в форме текста, в форме графического объекта или комбинации текста и графического объекта.
[00112] В дополнение или вместо указания действия 514, дополненное отрисованное представление 516 может включать в себя модификацию вида 512 телефонного номера ХХХ-ХХХ-ХХХХ. На Фиг. 5 модификация вида 512 включает в себя двойную рамку, нарисованную вокруг телефонного номера ХХХ-ХХХ-ХХХХ. Однако следует иметь в виду, что она предоставлена исключительно с целью иллюстрации. Некоторые варианты возможных модификаций вида 512 могут включать в себя (но не ограничиваться), например:
- Для текста
модифицированный тип шрифта;
модифицированное представление (например, полужирный шрифт, курсив или подчеркивание);
модифицированный цвет;
модифицированный размер шрифта.
- Для изображений
рамку вокруг изображения;
изображение-замена, отображенное поверх изображения для модификации;
размытие изображения, которое должно быть модифицировано;
замена изображения, которое должно быть модифицировано, таким же изображением с другим разрешением и т.п.
[00113] Следует иметь в виду, что дополненное отрисованное изображение 516 не ограничивается приведенными выше примерами. Дополненное отрисованное изображение 516 может включать в себя дополненное представление порции для модификации из части 202 содержимого равно как, в дополнение или вместо дополненного представления порции для модификации из части 202 содержимого дополненное отрисованное изображение 516 может также включать в себя вспомогательную информацию, которую следует представить вместе с порцией части 202 содержимого для модификации или вместо нее. Другими словами, по меньшей мере одна дополнительная команда 410, 412 отрисовки может быть выполнена с возможностью инициировать отображение вспомогательной информации, не входящей в состав порции для модификации из части 202 содержимого. Другими словами, вспомогательная информация - это информация, которая не будет отображена, если отрисовка была выполнена с использованием части 204 инструкций отрисовки (как в случае с первой отрисованной странице 501).
[00114] В различных вариантах осуществления настоящего технического решения вспомогательная информация может включать в себя (но не ограничиваться):
- указание на действие, которое должно быть выполнено с объектом, представленным в порции для модификации из части 202 содержимого (как в вышеприведенном примере указания действия 514);
- дополнительная информация, связанная с частью содержимого для модификации (например, курс обмена иностранной валюты, переведенная версия информации, входящей в состав части содержимого для модификации, определение термина, содержащегося в части содержимого для модификации и так далее).
[00115] Дополненное отрисованное представление 516 может быть отображено с порцией части 202 содержимого для модификации вместо порции для модификации из части 202 содержимого или после выполнения пользователем действия с порцией для модификации части 202 содержимого. Иллюстрация второй отрисованной страницы 510 является примером дополненного отрисованного представления 516, отображенного вместе исходным содержимым порции для модификации из части 202 содержимого и в дополнение к нему. В альтернативных примерах дополненное отрисованное представление 516 может быть отображено после наведения пользователем курсора (или иной активации) на порцию из части 202 содержимого для модификации. В других вариантах осуществления настоящего технического решения часть дополненного отрисованного представления 516 может быть отображена вместе с порцией для модификации части 202 содержимого, а другая часть дополненного отрисованного представления 516 может быть отображена после того, как пользователь активировал порцию из части 202 содержимого и/или отображенной первой части дополненного отрисованного представления 516.
[00116] Учитывая описанную выше архитектуру, а также используя различные приведенные выше примеры, возможно осуществить способ отрисовки представления электронного документа на экране. Электронный документ может являться доступным по сети ресурсом 107. Альтернативно электронный документ может быть документом, сохраненным локально (т.е. документом, сохраненным в модуле 306 памяти).
[00117] На Фиг. 6 представлена блок-схема способа 600, который выполняется в соответствии с не ограничивающими вариантами осуществления настоящего технического решения. Выполнение способа 600 может быть осуществлено на электронном устройстве 102. Более конкретно, способ 600 может быть исполнен системой 312 отрисовки электронного устройства 102. В альтернативных вариантах осуществления настоящего технического решения части способа 600 могут быть выполнены на сетевом устройстве, например, на сервере 104.
[00118] Этап 602 - получение электронным устройством электронного документа, который должен быть отрисован, причем электронный документ включает в себя часть содержимого и часть инструкций отрисовки, причем часть инструкций отрисовки включает в себя по меньшей мере одну инструкцию для предоставления электронному устройству возможности отрисовать часть содержимого на экране
[00119] Способ 600 начинается на этапе 602, когда электронное устройство 102 получает электронный документ 107, который должен быть отрисован, причем электронный документ 107 включает в себя часть 202 содержимого и часть 204 инструкций отрисовки, причем часть 204 инструкций отрисовки включает в себя по меньшей мере одну инструкцию 206 для предоставления электронному устройству возможности отрисовать часть 202 содержимого на экране 310.
[00120] В некоторых вариантах осуществления способа 600 часть 204 инструкций отрисовки включает в себя разметку HTML. Однако, следует отметить, что в альтернативных вариантах осуществления настоящего технического решения могут быть использованы любые примеры языка разметки, приведенные выше, равно как и другие подходящие типы частей инструкций отрисовки.
[00121] В некоторых вариантах осуществления способа 600 этап получения электронного документа для отрисовки включает в себя получение электронного документа 107 с сервера 104, причем сервер 104 доступен для электронного устройства 102 по сети 106 передачи данных. В некоторых вариантах осуществления настоящего технического решения получение осуществляется в ответ на пользовательскую активность в браузере, например, при использовании браузерного приложения 110.
[00122] В других вариантах осуществления 600 способа получение электронного документа для отрисовки включает в себя извлечение электронного документа из модуля 306 памяти электронного устройства 102.
[00123] Этап 604 - создание электронным устройством по меньшей мере одной команды отрисовки, причем эта по меньшей мере одна команда отрисовки основана по меньшей мере на одной инструкции.
[00124] Далее, на этапе 604, электронное устройство 102 создает по меньшей мере одну команду 414 отрисовки, причем эта одна команда 414 отрисовки основана по меньшей мере на одной инструкции 206.
[00125] Этап 606 - идентификация электронным устройством из части содержимого порции, которая должна быть модифицирована
[00126] Далее, на этапе 606, электронное устройство 102 идентифицирует порцию, которая должна быть модифицирована в части 202 содержимого.
[00127] В некоторых вариантах осуществления настоящего технического решения идентификация порции для модификации из части 202 содержимого выполняется с помощью анализа части 204 инструкций отрисовки и с применением по меньшей мере одного предварительно определенного правила для идентификации порции для модификации из части 202 содержимого.
[00128] В некоторых вариантах осуществления способа 600 порция для модификации части содержимого является текстовой порцией. В таких вариантах осуществления способа этап идентификации порции для модификации из части содержимого включает в себя: идентификацию совокупности текста в рамках части содержимого; идентификацию в рамках совокупности текста текстовой порции, которую нужно модифицировать. Идентификация в рамках совокупности текста текстовой порции, которую нужно модифицировать, включает в себя применение электронным устройством 102 набора правил к совокупности текста.
[00129] В альтернативных вариантах осуществления способа 600 порция части содержимого является графическим объектом или комбинацией текста и по меньшей мере одного изображения. По меньшей мере одно изображение может включать в себя одно из: картинку, карту или рекламный баннер.
[00130] Этап 608 - во время создания по меньшей мере одной команды отрисовки создание электронным устройством по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда отрисовки напрямую не формируется на основании по меньшей мере одной инструкции, а создание по меньшей мере одной дополнительной команды отрисовки основано на порции которая должна быть модифицирована из части содержимого.
[00131] Далее, на этапе 608, электронное устройство 102, во время создания по меньшей мере одной команды 414 отрисовки, также создает по меньшей мере одну дополнительную инструкцию 410, 412 отрисовки, причем по меньшей мере одна дополнительная инструкция 410, 412 отрисовки напрямую не формируется на основании по меньшей мере одной инструкции 206, а создание по меньшей мере одной дополнительной инструкции 410, 412 отрисовки основано на порции, которая должна быть модифицирована, из части 202 содержимого.
[00132] Как было упомянуто выше, по меньшей мере одна дополнительная инструкция 410, 412 отрисовки выполнена с возможностью инициировать изменения вида порции для модификации из части 202 содержимого по сравнению с видом, инициированным по меньшей мере одной инструкцией 206 отрисовки.
[00133] В некоторых вариантах осуществления настоящего технического решения по меньшей мере одна дополнительная инструкция 410, 412 выполнена с возможностью инициировать отображение вспомогательной информации, которая не содержится в порции для модификации из части 202 содержимого (т.е. не содержалась бы в порции из части 202 содержимого, если бы она была отрисована на основе по меньшей мере одной инструкции 206 отрисовки). Вспомогательная информация является по меньшей мере одним пунктом из: указание на действие, которое должно быть выполнено с объектом; дополнительная информация, связанная с частью содержимого для модификации; переведенная версия информации, входящей в состав части содержимого для модификации.
[00134] В некоторых вариантах осуществления способа 600 этап создания по меньшей мере одной дополнительной инструкции 410, 412 отрисовки включает в себя извлечение указания на соответствующую по меньшей мере одну дополнительную инструкцию 410, 412 отрисовки из хранилища команд, доступного электронному устройству 102. Хранилище команд может быть расположено в модуле 306 памяти. Альтернативно хранилище команд может быть расположено удаленно и доступно по сети 106 передачи данных.
[00135] В некоторых вариантах осуществления способа 600 этап создания по меньшей мере одной дополнительной инструкции 410, 412 отрисовки включает в себя выбор по меньшей мере одной дополнительной инструкции 410, 412 отрисовки из набора дополнительных инструкций 410, 412 отрисовки, причем выбор основан на части содержимого для модификации.
[00136] Этап 610 - создание электронным устройством представления электронного документа на экране на основе комбинации по меньшей мере одной команды отрисовки и по меньшей мере одной дополнительной команды отрисовки
[00137] Далее, на этапе 610, электронное устройство 102 создает представление 510 электронного документа 107 на экране на основе комбинации по меньшей мере одной инструкции 206 отрисовки и по меньшей мере одной дополнительной инструкции 410, 412 отрисовки (т.е. на основе по меньшей мере одной полной команды 414 отрисовки).
[00138] В некоторых вариантах осуществления способа 600 по меньшей мере одна дополнительная инструкция 410, 412 отрисовки выполнена с возможностью формирования визуальной области активации, связанной с порцией содержимого для модификации, причем визуальная область активации отображает пользователю указатель на действие; способ 600 также включает в себя: выполнение действия в ответ на активацию пользователем визуальной области активации.
[00139] Технический эффект вариантов осуществления настоящего технического решения может включать в себя возможность дополнять представление любого документа вне зависимости от того, как реализована его часть 204 инструкций отрисовки. Другими словами, варианты осуществления настоящего технического решения дают возможность отрисовывать документ вне зависимости от того, как реализована его часть 204 инструкций отрисовки. Варианты осуществления настоящего технического решения могут иметь другой технический эффект, который дает возможность отрисовывать модификации документа не с помощью модификации инструкций отрисовки, включенных в часть 204 инструкций отрисовки, а с помощью добавления дополнительных инструкций отрисовки, что позволяет избежать неэффективной инициации инструкций отрисовки, включенных в часть 204 инструкций отрисовки, и, следовательно, избежать неверной отрисовки документа.
[00140] Важно иметь в виду, что варианты осуществления настоящего технического решения могут быть реализованы с проявлением и других технических результатов.
[00141] Таким образом, варианты осуществления настоящего технического решения можно изложить следующим образом, структурированно, пронумерованными пунктами.
[00142] ПУНКТ 1. Способ (600) отрисовки представления (510) электронного документа (107) на экране; способ (600) выполняется на электронном устройстве (102), причем электронное устройство (102) включает в себя экран (310). Способ (600) включает в себя:
- получение (602) электронным устройством (102) электронного документа (107), который должен быть отрисован, причем электронный документ (107) включает в себя часть (202) содержимого и часть (204) инструкций отрисовки, причем часть (204) инструкций отрисовки включает в себя по меньшей мере одну инструкцию (206) для предоставления электронному устройству (102) возможности отрисовать часть (202) содержимого на экране (310);
- создание (604) электронным устройством (102) по меньшей мере одной команды (414) отрисовки, причем эта по меньшей мере одна команда (414) отрисовки основана по меньшей мере на одной инструкции (206);
- идентификация (606) электронным устройством 102 из части (202) содержимого порции, которая должна быть модифицирована;
- во время создания (604) по меньшей мере одной команды отрисовки, создание (606) электронным устройством (102) по меньшей мере одной дополнительной команды (414) отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки напрямую не формируется на основе по меньшей мере одной инструкции (206), а создание (606) по меньшей мере одной дополнительной команды (414) отрисовки основано на порции, которая должна быть модифицирована из части (202) содержимого;
- создание (608) электронным устройством (102) представления (510) электронного документа (107) на экране на основе комбинации по меньшей мере одной команды (414) отрисовки и по меньшей мере одной дополнительной команды (414) отрисовки.
[00143] ПУНКТ 2. Способ (600) по п. 1, в котором порция для модификации из части (202) содержимого является текстовой порцией.
[00144] ПУНКТ 3. Способ (600) по п. 2, в котором идентификация порции для модификации из части содержимого включает в себя:
- идентификацию совокупности текста в рамках части содержимого;
- идентификацию в рамках совокупности текста текстовой порции, которую нужно модифицировать.
[00145] ПУНКТ 4. Способ (600) по п. 3, в котором идентификация в рамках совокупности текста текстовой порции, которую нужно модифицировать, включает в себя применение набора правил.
[00146] ПУНКТ 5. Способ (600) по п. 1, в котором порция части (202) содержимого является графическим объектом.
[00147] ПУНКТ 6. Способ (600) по п. 1, в котором порция части (202) содержимого является комбинацией текста и по меньшей мере одного изображения.
[00148] ПУНКТ 7. Способ (600) по п. 6, в котором по меньшей мере одно изображение включает в себя одно из: картинку, карту или рекламный баннер.
[00149] ПУНКТ 8. Способ (600) по п. 1, в котором часть 204 инструкций отрисовки включает в себя разметку HTML.
[00150] ПУНКТ 9. Способ (600) по п. 1, в котором по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью инициировать изменения вида порции для модификации, из части (202) содержимого по сравнению с видом, инициированным по меньшей мере одной командой (404, 416, 408) отрисовки.
[00151] ПУНКТ 10. Способ (600) по п. 1, в котором по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью инициировать отображение вспомогательной информации, не входящей в состав порции для модификации из части (202) содержимого.
[00152] ПУНКТ 11. Способ (600) по п. 10, в котором вспомогательная информация является по меньшей мере одним пунктом из:
- указание на действие, которое должно быть выполнено с объектом;
- дополнительная информация, связанная с порцией для модификации части (202) содержимого;
- переведенная версия информации, входящей в состав порции для модификации части (202) содержимого.
[00153] ПУНКТ 12. Способ (600) по п. 1, в котором по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью формирования визуальной области активации, связанной с частью (202) содержимого для модификации, причем визуальная область активации отображает пользователю указатель на действие; способ (600) также включает в себя: выполнение действия в ответ на активацию пользователем визуальной области активации.
[00154] ПУНКТ 13. Способ (600) по п. 1, в котором получение электронного документа (107) для отрисовки включает в себя получение электронного документа (107) с сервера (104), причем сервер (104) доступен для электронного устройства (102) по сети (106) передачи данных.
[00155] ПУНКТ 14. Способ (600) по п. 12, в котором получение выполняется в ответ на пользовательскую активность в браузере.
[00156] ПУНКТ 15. Способ (600) по п. 1, в котором извлечение электронного документа (107) для отрисовки включает в себя извлечение электронного документа (107) из модуля (306) памяти электронного устройства (102).
[00157] ПУНКТ 16. Способ (600) по п. 1, в котором создание по меньшей мере одной дополнительной команды (414) отрисовки включает в себя извлечение указания на соответствующую по меньшей мере одну дополнительную команду (414) отрисовки из хранилища команд, доступного электронному устройству (102).
[00158] ПУНКТ 17. Способ (600) по п. 1, в котором создание по меньшей мере одной дополнительной команды (414) отрисовки включает в себя выбор по меньшей мере одной дополнительной команды (410, 412) отрисовки из набора дополнительных команд (410, 412) отрисовки, причем выбор основан на порции для модификации части (202) содержимого.
[00159] ПУНКТ 18. Электронное устройство (102), включающее в себя:
- процессор (304);
- модуль (310) ввода-вывода, соединенный с процессором (304),
- процессор (304) выполнен с возможностью осуществлять:
получение (602) электронного документа (107), который должен быть отрисован, причем электронный документ (107) включает в себя часть (202) содержимого и часть (204) инструкций отрисовки, причем часть (204) инструкций отрисовки включает в себя по меньшей мере одну инструкцию (206) для предоставления процессору (304) возможности отрисовать часть (202) содержимого с помощью модуля (310) ввода-вывода;
создание (604) по меньшей мере одной команды (414) отрисовки, причем эта по меньшей мере одна команда (414) отрисовки основана по меньшей мере на одной инструкции (206);
идентификацию из части (202) содержимого порции, которая должна быть модифицирована;
на основе порции, которая должна быть модифицирована из части (202) содержимого, во время создания по меньшей мере одной команды отрисовки, создание по меньшей мере одной дополнительной команды (414) отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки напрямую не формируется на основе по меньшей мере одной инструкции (206);
создание представления (510) электронного документа (107) на экране на основе комбинации по меньшей мере одной команды (414) отрисовки и по меньшей мере одной дополнительной команды (414) отрисовки.
[00160] ПУНКТ 19. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять идентификацию в части (202) содержимого порции для модификации, которая является текстовой порцией.
[00161] ПУНКТ 20. Электронное устройство (102) по п. 19, в котором для идентификации порции для модификации из части содержимого процессор (340) выполнен с возможностью:
идентифицировать совокупности текста в рамках части (202) содержимого;
идентифицировать в рамках совокупности текста текстовой порции,, которую нужно модифицировать.
[00162] ПУНКТ 21. Электронное устройство (102) по п. 20, в котором для идентификации в рамках совокупности текста текстовой порции, которую нужно модифицировать процессор (304) выполнен с возможностью применять набор правил.
[00163] ПУНКТ 22. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять идентификацию из части (202) содержимого порции для модификации, которая является графическим объектом.
[00164] ПУНКТ 23. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять идентификацию из части (202) содержимого порции для модификации, которая является комбинацией текста и по меньшей мере одного изображения.
[00165] ПУНКТ 24. Электронное устройство (102) по п. 23, в котором процессор выполнен с возможностью осуществлять идентификацию из части (202) содержимого порции для модификации, которая является комбинацией текста и по меньшей мере одного изображения, включающую в себя одно из: картинку, карту или рекламный баннер.
[00166] ПУНКТ 25. Электронное устройство (102) по п. 18, в котором процессор (304) выполнен с возможностью осуществлять: получение (602) электронного документа (107), который должен быть отрисован, причем электронный документ (107) включает в себя часть (202) содержимого и часть (204) инструкций отрисовки, причем часть 204 инструкций отрисовки включает в себя разметку HTML.
[00167] ПУНКТ 26. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять создание по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью инициировать изменения вида порции для модификации из части (202) содержимого, по сравнению с видом, инициированным по меньшей мере одной командой (404, 406, 408) отрисовки.
[00168] ПУНКТ 27. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять создание по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью инициировать отображение вспомогательной информации, не входящей в состав порции для модификации из части (202) содержимого.
[00169] ПУНКТ 28. Электронное устройство (102) по п. 27, в котором процессор выполнен с возможностью осуществлять создание по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью инициировать отображение вспомогательной информации, которая является по меньшей мере одним пунктом из:
- указание на действие, которое должно быть выполнено с объектом;
- дополнительная информация, связанная с порцией для модификации;
- переведенная версия информации, входящей в состав порции для модификации.
[00170] ПУНКТ 29. Электронное устройство (102) по п. 18, в котором процессор выполнен с возможностью осуществлять создание по меньшей мере одной дополнительной команды отрисовки, причем по меньшей мере одна дополнительная команда (414) отрисовки выполнена с возможностью формирования визуальной области активации, связанной с частью (202) содержимого для модификации, причем визуальная область активации отображает пользователю указатель на действие; и процессор (304) также выполнен с возможностью выполнять действие в ответ на активацию пользователем визуальной области активации.
[00171] ПУНКТ 30. Электронное устройство (102) по п. 18, в котором для получения электронного документа (107) для отрисовки процессор (304) выполнен с возможностью получать электронный документ (107) с сервера (104), причем сервер (104) доступен для электронного устройства (102) по сети (106) передачи данных.
[00172] ПУНКТ 31. Электронное устройство (102) по п. 30, в котором процессор (304) выполнен с возможностью получать электронный документ (107) с сервера (104) в ответ на пользовательскую активность в браузере.
[00173] ПУНКТ 32. Электронное устройство (102) по п. 18, в котором для получения электронного документа (107) для отрисовки процессор выполнен с возможностью извлекать электронный документ (107) из модуля (306) памяти электронного устройства (102).
[00174] ПУНКТ 33. Электронное устройство (102) по п. 18, в котором для создания по меньшей мере одной дополнительной команды (414) отрисовки процессор (304) выполнен с возможностью извлекать указания на соответствующую по меньшей мере одну
дополнительную команду (410, 412) отрисовки из хранилища команд, доступного электронному устройству (102).
[00175] ПУНКТ 34. Электронное устройство (102) по п. 18, в котором для создания по меньшей мере одной дополнительной команды (414) отрисовки процессор (304) выполнен с возможностью выбирать по меньшей мере одну дополнительную команду (410, 412) отрисовки из набора дополнительных команд (410, 412) отрисовки, причем выбор основан на порции для модификации части (202) содержимого
[00176] Специалисты в данной области техники поймут, что в настоящем описании выражение «получение данных» от пользователя подразумевает получение электронным устройством данных от пользователя в виде электронного (или другого) сигнала. Кроме того, специалисты в данной области техники поймут, что отображение данных пользователю через графический интерфейс пользователя (например, экран компьютерного устройства и тому подобное) может включать в себя передачу сигнала графическому интерфейсу пользователя, этот сигнал содержит данные, которые могут быть обработаны, и по меньшей мере часть этих данных может отображаться пользователю через графический интерфейс пользователя.
[00177] Некоторые из этих этапов, а также передача-получение сигнала хорошо известны в данной области техники и поэтому для упрощения были опущены в некоторых частях данного описания. Сигналы могут быть переданы-получены с помощью оптических средств (например, оптоволоконного соединения), электронных средств (например, проводного или беспроводного соединения) и механических средств (например, на основе давления, температуры или другого подходящего параметра).
[00178] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.