Частичная загрузка и редактирование документов с сервера

Изобретение относится к способу осуществления доступа к документу на клиентском компьютере. Технический результат заключается в обеспечении обработки документа в реальном масштабе времени. На клиентском компьютере запрос отправляется серверному компьютеру на открытие первой части документа. Документ хранится на серверном компьютере. Первая часть документа меньше всего документа. Запрос включает в себя информацию, которая используется серверным компьютером для определения размера первой части документа. Первая часть документа принимается от серверного компьютера. Вторая часть документа визуализируется на экране отображения клиентского компьютера. Вторая часть документа является подмножеством первой части документа. Когда клиентский компьютер определяет, что пользователь прокрутил третью часть документа, и когда клиентский компьютер определяет, что еще часть документа доступна на серверном компьютере, то второй запрос отправляется серверному компьютеру на открытие дополнительной части документа. 3 н. и 7 з.п. ф-лы, 9 ил.

 

Уровень техники

Документы, к которым осуществляют доступ клиентские компьютеры, как правило, хранятся на серверных компьютерах или в базах данных по всей сети. Как правило, доступ к документу включает в себя просмотр документа, хранящегося на серверном компьютере, через web-браузер на клиентском компьютере, и редактирование документа, хранящегося на серверном компьютере, через прикладную программу на клиентском компьютере.

При осуществлении доступа к документу на клиентском компьютере по сети могут возникнуть временные задержки из-за расстояний передачи, размера документа и из-за других факторов.

Сущность изобретения

Это краткое изложение сущности изобретения предоставлено в качестве ознакомления в упрощенном виде с подборкой концепций, которые дополнительно описаны ниже в подробном описании. Данное краткое изложение сущности изобретения не предназначено ни для установления ключевых признаков или неотъемлемых признаков изобретения, ни для использования в качестве средства при определении объема заявленного изобретения.

Варианты осуществления изобретения направлены на способ осуществления доступа к документу на клиентском компьютере. На клиентском компьютере, первый запрос отправляется серверному компьютеру на открытие первой части документа. Документ хранится на серверном компьютере. Первая часть документа меньше всего документа. Запрос включает в себя информацию, которая используется серверным компьютером для определения размера первой части документа. На клиентском компьютере, первая часть документа принимается от серверного компьютера. После того как первая часть документа принята от серверного компьютера, вторая часть документа визуализируется на экране отображения клиентского компьютера. Вторая часть документа является подмножеством первой части документа. На клиентском компьютере, выполняется определение того, что еще часть документа доступна на серверном компьютере. На клиентском компьютере, выполняется определение того, что пользователь прокрутил третью часть документа на экране отображения на клиентском компьютере. Когда клиентский компьютер определяет, что пользователь прокрутил третью часть документа, и когда клиентский компьютер определяет, что еще часть документа доступна на серверном компьютере, то второй запрос отправляется серверному компьютеру на открытие дополнительной части документа.

Эти и прочие признаки и преимущества станут очевидными из прочтения нижеследующего подробного описания и просмотра связанных чертежей. Следует понимать, что как предшествующее общее описание, так и нижеследующее подробное описание являются пояснительными и не ограничивают аспекты в соответствии с тем, что заявлено.

Перечень фигур чертежей

Фигура 1 показывает характерную систему, используемую при доступе к документам по сети.

Фигура 2 показывает страницу характерного документа, который хранится на серверном компьютере с Фигуры 1.

Фигура 3 показывает характерное хранение документов в характерной области памяти на клиентском компьютере с Фигуры 1.

Фигура 4 показывает другое характерное хранение документов в характерной области памяти на клиентском компьютере с Фигуры 1.

Фигура 5 показывает еще один другой пример хранения документов в характерной области памяти на клиентском компьютере с Фигуры 1.

Фигура 6 показывает характерный способ открытия части документа на клиентском компьютере.

Фигура 7 показывает характерный способ открытия части документа на серверном компьютере.

Фигура 8 показывает характерный способ определения порогового значения объектов для открываемой части документа с Фигуры 7.

Фигура 9 показывает пример компонентов клиентских компьютеров и серверного компьютера с Фигуры 1.

Подробное описание

Настоящая заявка направлена на системы и способы для частичной загрузки и редактирования документов, хранящихся на серверном компьютере.

В характерных вариантах осуществления, когда на клиентском компьютере осуществляют доступ к документу, хранящемуся на серверном компьютере, то серверный компьютер открывает лишь часть документа и отправляет открытую часть документа на клиентский компьютер. Размер открытой части документа, как правило, соответствует размеру документа, который может уместиться на экране отображения на клиентском компьютере плюс небольшая часть документа, чтобы обеспечить прокрутку. Часть документа, которая открывается, загружается в память на клиентском компьютере. Посредством открытия лишь части документа, вместо всего документа, и загрузки данной части документа на клиентский компьютер, документ может визуализироваться на клиентском компьютере быстрее, чем если бы открывался весь документ.

В данном раскрытии, открытие части документа относится к получению дескриптора для документа на серверном компьютере и отправке части документа клиентскому компьютеру.

Фигура 1 показывает характерную систему 100, используемую при осуществлении доступа к документам по сети. Характерная система 100 включает в себя клиентские компьютеры 102, 104, сеть 110 и серверный компьютер 112. Может использоваться больше или меньше клиентских компьютеров и серверных компьютеров.

Серверный компьютер 112 доступен клиентским компьютерам 102 и 104 по сети 110. Примерами сети 110 являются сеть Интернет и корпоративная Интрасеть. Возможны другие примеры сети 110.

Характерный клиентский компьютер 102 включает в себя web-браузер 106, а характерный клиентский компьютер 104 включает в себя клиентское приложение 108 программного обеспечения. Характерным клиентским приложением программного обеспечения является программа обработки текстов Microsoft Word® 2010 от Microsoft Corporation, Редмонд, Вашингтон.

Когда доступ к документу, хранящемуся на серверном компьютере 112, осуществляют посредством web-браузера 106 на клиентском компьютере 102, то клиентский компьютер 102 отправляет запрос на открытие документа серверному компьютеру 112. Как правило, запрос включает в себя один или более параметров, которые относятся к отображению информации на клиентском компьютере 102. Например, один параметр может указывать размер экрана отображения на клиентском компьютере 102, на котором будет визуализироваться документ. Другой параметр может указывать размер шрифта, с которым будет визуализироваться документ. Третий параметр может указывать разрешение экрана отображения в пикселях. Могут использоваться другие характерные параметры.

Когда характерный серверный компьютер 112 принимает запрос на открытие документа, серверный компьютер 112 определяет, что документ должен быть частично открыт. В некоторых примерах, серверный компьютер 112 определяет, что документ должен быть частично открыт, посредством обнаружения присутствия одного или более параметров, которые относятся к отображению информации на клиентском компьютере 102. В других примерах, запрос на открытие документа может включать в себя функциональный код, указывающий на то, что документ должен быть частично открыт. Возможно применение других средств в отношении серверного компьютера 112, для определения того, что документ должен быть частично открыт.

Серверный компьютер 112 использует информацию, включенную в один или более параметров, для определения того, какая по размеру часть документа должна быть отправлена клиентскому компьютеру 102. Серверный компьютер 112 определяет, какая по размеру часть документа уместится в размере экрана отображения на клиентском компьютере 102. Когда серверный компьютер 112 определяет, какая по размеру часть документа уместиться в размере экрана отображения на клиентском компьютере 102, то серверный компьютер 112 открывает документ в отношении полученного в результате определения размера плюс дополнительный размер. Дополнительный размер представляет собой часть документа, которая загружается на клиентский компьютер 102, но в настоящий момент не отображается. Например, при открытии документа, дополнительный размер может соответствовать одному экрану отображения ниже исходной части документа, которая умещается на одном экране отображения. Когда пользователь клиентского компьютера 102 осуществляет прокрутку за пределы первого отображаемого экрана документа, то второй экран документа уже загружен и готов к отображению.

Когда серверный компьютер 112 определяет, какую по размеру часть документа открыть, серверный компьютер 112 отправляет часть документа, которую серверный компьютер открыл, клиентскому компьютеру 102. Когда клиентский компьютер 102 принимает часть документа от серверного компьютера 112, то клиентский компьютер 102 загружает принятую часть документа в память клиентского компьютера 102. Затем клиентский компьютер 102 визуализирует первую страницу документа на экране отображения на клиентском компьютере 102.

Фигура 2 показывает страницу характерного документа 200, который хранится на серверном компьютере 112. Страница характерного документа 200 включает в себя пять объектов самого высокого уровня - четыре абзаца и одну таблицу. Используемое в настоящем раскрытии понятие объект является определенным компонентом документа. Характерные объекты включают в себя абзацы, таблицы, изображения, предложения, слова, ячейки таблицы и гиперссылки. Возможны другие примеры объектов. Такие объекты как абзацы, таблицы и изображения являются объектами самого высокого уровня, потому что они могут включать в себя дополнительные встроенные объекты. Например, объект-абзац может включать в себя один или более объектов-предложений. Возможны другие объекты самого высокого уровня. Каждый объект самого высокого уровня имеет уникальный идентификатор. Таким образом, каждый абзац, предложение, слово, изображение, таблица и ячейка таблицы, и т.д., в документе являются уникально идентифицируемыми.

Первым объектом самого высокого уровня в характерном документе 200 является абзац 202. Характерный абзац 202 идентифицируется ID # 100. Другие объекты самого высокого уровня в документе 200 включают в себя абзац 204 (ID # 200), абзац 206 (ID # 300), таблицу 208 (ID # 400) и абзац 210 (ID # 500). В примерах, объекты, встроенные в другой объект, такие как предложения в абзацах или слова в предложениях могут иметь ID, связанный с объектом более высокого уровня. Например, первое предложение в абзаце 202 может идентифицироваться числом 110, а первое слово в первом предложении может идентифицироваться числом 101. В примерах, числа ID могут быть другого формата. Идентификация каждого объекта в документе с помощью уникального ID способствует редактированию документа, как будет здесь рассмотрено более подробно.

Документы, как правило, хранятся на серверном компьютере 112 в присущем документу формате. Например, документ приложения обработки текстов Microsoft Word®, как правило, хранится в формате совместимом с документом приложения обработки текстов Word®. Применительно к некоторым версиям приложения обработки текстов Microsoft Word®, форматом может быть XML. Для других версий приложения обработки текстов Microsoft Word®, форматом может быть собственный формат. Тем не менее, когда визуализируется документ приложения обработки текстов Word® в web-браузере клиентского компьютера 102, то документ приложения обработки текстов Word® визуализируется в формате, совместимом с web-браузером, например в формате HTML. Серверный компьютер 112 отправляет открытую часть документа клиентскому компьютеру 102 в формате, который клиентский компьютер 102 может преобразовать в HTML. В примерах, когда серверный компьютер 112 открывает часть документа, которая должна быть визуализирована на клиентском компьютере 102, серверный компьютер 112 может преобразовывать документ из формата приложения обработки текстов Word® в формат XML. Затем серверный компьютер 112 отправляет открытую часть документа клиентскому компьютеру 102 в формате XML.

Когда серверный компьютер 112 определяет открываемую часть документа, серверный компьютер 112 определяет пороговое значение в отношении количества объектов, которые будут включены в открытую часть документа. Серверный компьютер 112 может определить пороговое значение объектов посредством одного из нескольких способов. В одном способе, серверный компьютер 112 получает информацию, которая относится к экрану отображения клиентского компьютера 102, как представленную в одном или более параметрах, отправленных от клиентского компьютера 102 серверу 112 в запросе на открытие документа.

Информация об экране отображения, включенная в один или более параметров, может включать в себя размер экрана отображения, размер шрифта, используемого на экране отображения, и разрешение экрана отображения в пикселях. При помощи информации об экране отображения, серверный компьютер 112 определяет количество объектов, которые уместятся на экране отображения. В другом способе, количество объектов, которые уместятся на экране отображения, определяется из указания, включенного в сообщение запроса от клиентского компьютера 102 на открытие части документа.

Затем серверный компьютер 112 определяет дополнительное количество объектов, как правило, соответствующее одному или двум дополнительным размерам экрана отображения. Пороговое значение объектов соответствует сумме из количества объектов, которые уместятся на экране отображения плюс дополнительное количество объектов. Часть документа, соответствующая одному или более дополнительным размерам экрана отображения, позволяет пользователю клиентского компьютера 102 прокручивать страницы и обеспечивает возможность визуализации смежных страниц из памяти на клиентском компьютере 102. Возможны другие способы для вычисления порогового значения объектов.

Серверный компьютер 112 открывает часть документа, соответствующую размеру порогового значения объектов, и начинает отправку объектов из документа клиентскому компьютеру 102. При достижении порогового значения объектов, серверный компьютер 112 продолжает отправку объектов клиентскому компьютеру 102 до тех пор, пока не будет достигнут конец объекта самого высокого уровня. Отправка до тех пор, пока не будет достигнут конец объекта самого высокого уровня, гарантирует то, что открытая часть документа разбита на объекты самого высокого уровня, вместо разбиения в середине абзаца или таблицы, например. При достижении порогового значения объектов и при достижении конца объекта самого высокого уровня, серверный компьютер 112 останавливает отправку объектов клиентскому компьютеру 102.

Фигура 3 показывает иллюстрацию использования области 308 памяти клиентского компьютера 102 для загрузки и хранения отрытой части документа, переданной от серверного компьютера 112 клиентскому компьютеру 102. Область 308 памяти является переменной по размеру, чтобы вмещать разные размеры объектов самого высокого уровня. Характерная область 308 памяти хранит данные частей трех страниц открытой части документа. В других примерах может храниться другой размер памяти, содержащий большее или меньшее число страниц или частей страниц.

На Фигуре 3, страница 304, показанная с помощью рамки в виде жирной черной линии, соответствует странице данных документа визуализируемых на клиентском компьютере 102. Страница 304 включает в себя три характерных объекта самого высокого уровня - объекты 316, 318 и 320. Страница 302 соответствует странице документа, предшествующей странице 304, а страница 306 соответствует странице документа, следующей за страницей 304. На Фигуре 3, лишь часть страниц 302 и 306 фактически загружена в область 308 памяти на клиентском компьютере 102. Например, объекты 312 и 314 страницы 302 загружены в область 308 памяти, тогда как объект 310 не загружен. Аналогичным образом, объекты 320, 322, 324 загружены в область 308 памяти, тога как объект 326 не загружен.

Как рассмотрено ранее, серверный компьютер 112, как правило, отправляет данные открытого документа клиентскому компьютеру 102, соответствующие одной странице визуализируемых данных плюс дополнительная секция документа. На Фигуре 3, страница 304 соответствует визуализируемой странице. Объекты 312 и 314 страницы 302 и объекты 320, 322 и 324 страницы 306 соответствуют дополнительной секции документа. Причина загрузки и хранения дополнительной секции документа состоит в том, что необходимо обеспечить гладкую прокрутку документа пользователем.

Например, если пользователь осуществляет прокрутку ниже нижней границы страницы 304, то объект 320, уже сохраненный в памяти на клиентском компьютере 102, доступен для просмотра без какой-либо дополнительной загрузки. Аналогичным образом, если пользователь осуществляет прокрутку вверх выше верхней границы страницы 304, то объект 314 уже загружен в память на клиентском компьютере 102 и так же доступен для просмотра без какой-либо дополнительной загрузки.

Как показано на Фигуре 3, первым объектом, загруженным и сохраненным в области 308 памяти, является объект 312, а последним объектом, загруженным и сохраненным в области 308 памяти, является объект 324. Область 308 памяти хранит полные объекты самого высокого уровня. Верхняя часть области 308 памяти, обозначенная элементом 328, соответствует первой строке объекта 312 самого высокого уровня. Аналогичным образом, нижняя часть области 308 памяти, обозначенная элементом 330, соответствует последней строке объекта 324 самого высокого уровня. Когда пользователь осуществляет прокрутку по направлению к нижней части страницы 304 таким образом, что часть страницы 306 визуализируется на экране отображения клиентского компьютера 102, то объект 312 может переместиться из области 308 памяти, а объект 326 может переместиться в область 308 памяти.

Таким образом, область 308 памяти регулируется по размеру, чтобы включать в себя новые объекты самого высокого уровня и удалять старые объекты самого высокого уровня. Кроме того, как рассматривается ниже, объекты самого высокого уровня, которые удаляются из области 308 памяти, могут выгружаться из клиентского компьютера 102, а дополнительные объекты могут приниматься от серверного компьютера 112 и сохраняться в области 308 памяти.

Фигура 4 показывает пример области 402 памяти на клиентском компьютере 102, соответствующую моменту, когда часть документа с Фигуры 2 исходно открывается на клиентском компьютере 102 и принимается от серверного компьютера 112. Характерная часть документа, загружаемая и сохраняемая в области 402 памяти, включает в себя первую страницу документа 200 и часть второй страницы 404 документа. В примерах, вся вторая страница 404 документа может быть загружена и сохранена в области 402 памяти.

Первая страница документа 200 визуализируется на экране отображения клиентского компьютера 102. Как правило, страница или часть страницы документа, предшествующая визуализируемой странице, так же загружена и сохранена в области 402 памяти. Тем не менее, применительно к данному примеру, так как визуализируемой страницей является первая страница документа, то отсутствует контент для загрузки, который предшествует первой странице. В данном примере, это указано пустой страницей 401, которая предшествует первой странице документа 200. В данном примере, часть области 402 памяти выше той, в которую загружена страница 200, не используется для того чтобы обеспечить пространство памяти для сохранения страницы 200, когда пользователь выполнит прокрутку до нижней части страницы 200 и до страницы 402. Здесь более подробно будет рассмотрена реализация прокрутки в области 402 памяти.

Как показано на Фигуре 4, первая страница 200 документа включает в себя объекты 202, 204, 206 и 208 и часть объекта 210. Вторая страница 404 документа включает в себя оставшуюся часть объекта 210, а также включает в себя объекты 408, 410 и 412. Тем не менее, в данном примере, так как загружается лишь часть второй страницы 404, то объект 412 выпадает из области 402 памяти и фактически не загружен и не сохранен на клиентском компьютере 102 в данный момент. Объект 412 показан на Фигуре 4, чтобы проиллюстрировать то, что объект 412 является частью страницы 404.

Все объекты 202, 204, 206, 208, 408, 410 и 412 являются объектами самого высокого уровня, что означает, применительно к данному примеру, что они являются абзацами, таблицами, списками или изображениями. Когда серверный компьютер 112 определяет размер открываемой части документа на основании порогового значения объектов, вычисленного серверным компьютером 112, то серверный компьютер продолжает проходить до объекта, соответствующего пороговому значению объектов, до тех пор, пока не достигнет конца объекта самого высокого уровня, который включает в себя объект, соответствующий пороговому значению объектов. Как показано на Фигуре 4, последним загруженным и сохраненным в области 402 памяти объектом самого высокого уровня является объект 410. Последняя строка 406 объекта 410 соответствует концу области 402 памяти.

Когда серверный компьютер 112 отправляет часть документа клиентскому компьютеру 102, то серверный компьютер 112 также предоставляет индикацию того, что на серверном компьютере 112 доступна еще часть документа. Серверный компьютер 112 может предоставлять индикацию того, что доступна еще часть документа, посредством установки флага в сообщении, используемом для отправки части документа клиентскому компьютеру 102. Флаг, как правило, устанавливается, когда доступна еще часть документа. Вместо использования флага, серверный компьютер 112 может включать в сообщение ID последнего объекта в отправленной части документа и ID последнего объекта в документе. Посредством оценки ID, клиентский компьютер 102 может определить, доступна ли еще часть документа на серверном компьютере 112. Сообщения, отправляемые между клиентским компьютером 102 и серверным компьютером 112, являются стандартными основанными на web сообщениями, по протоколу связи HTTP.

Когда пользователь начинает прокрутку визуализированного документа и весь документ не загружен на клиентский компьютер 102, то клиентский компьютер 102 определяет, что требуется открыть и загрузить еще часть документа на клиентский компьютер 102. Клиентский компьютер 102 определяет, что требуется получить еще часть документа на основании степени прокрутки. В примерах, клиент вычисляет количество объектов самого высокого уровня, которые были прокручены, и когда количество прокрученных объектов самого высокого уровня больше порогового значения, например порогового значения соответствующего половине страницы визуализированных данных, тогда клиентский компьютер 102 запрашивает дополнительную часть документа у серверного компьютера 112. В примерах, пороговое значение может быть больше либо меньше половины страницы. Например, пороговым значением может быть одна страница или три четверти страницы.

Фигура 5 показывает пример области 402 памяти, когда пользователь выполняет прокрутку вниз на одну страницу в документе. Как показано на Фигуре 5, частью документа, визуализируемой пользователю, является страница 404, содержащая объекты 408, 410 и 412 и часть объекта 210. Верхняя часть области 402 памяти выровнена с верхней строкой 504 объекта 206. Объекты 202 и 204 теперь находятся вне области 402 памяти. В примерах, когда объекты перемещаются за пределы области 402 памяти в результате прокрутки, объекты могут выгружаться из клиентского компьютера 102 с тем, чтобы сэкономить ресурсы памяти на клиентском компьютере 102. Например, объекты 202 и 204 памяти могут быть выгружены клиентским компьютером 102. Когда объекты 202 и 204 памяти выгружаются клиентским компьютером 102, то требуется, чтобы эти объекты памяти были вновь получены от серверного компьютера 112, когда пользователь выполняет прокрутку к началу документа.

Фигура 5 также показывает, что в результате прокрутки на одну страницу вниз в документе, серверный компьютер 112 загружает следующую страницу в документе, представленную страницей 502, в область 402 памяти. В данном примере, следующей страницей в документе является изображение, соответствующее объекту 510. Поскольку серверный компьютер 112 отправляет объекты самого высокого уровня клиентскому компьютеру 102, то нижняя часть области 402 памяти регулируется в соответствии с последней строкой 506 объекта 510.

В примерах, серверный компьютер 112 отправляет следующую страницу документа (соответствующую объекту 506), в качестве результата сообщения запроса от клиентского компьютера 102. Клиентский компьютер отправляет сообщение запроса серверному компьютеру 102, когда клиентский компьютер 102 обнаруживает тот факт, что пользователь выполнил прокрутку вниз на одну страницу. Сообщение запроса предписывает серверному компьютеру 112 открыть дополнительную часть документа, в данном случае, соответствующую одной странице, и отправить дополнительную часть документа клиентскому компьютеру 102. В примерах, клиентский компьютер 102 может выдать запрос серверному компьютеру 112 в качестве результата выполнения пользователем прокрутки больше или меньше чем на одну страницу.

В дополнение к прокрутке и просмотру частей документа на клиентском компьютере 102, пользователь может редактировать одну или более частей документа или добавлять контент в документ. Как было рассмотрено, каждый объект в документе идентифицируется уникальным номером ID. Когда пользователь редактирует часть документа, то отредактированные объекты идентифицируются и обновляются применительно к открытой части документа на серверном компьютере 112. Если добавляется новый объект, например новое слово, предложение или абзац, то номер ID формируется для слова, предложения или абзаца. В примерах, номера ID существующих объектов могут регулироваться для отражения позиции добавленного слова, предложения или абзаца. В дополнение, так как открыта лишь часть документа и известны ID отредактированных объектов, то документ может редактироваться, а изменения сохраняться на серверном компьютере 112, не требуя открытия всего документа.

Фигура 6 показывает характерную блок-схему способа 600 для открытия части документа на клиентском компьютере. Например, часть документа может быть открыта в web-браузере 106 на клиентском компьютере 102. В качестве альтернативы, часть документа может быть открыта в клиентском приложении, например, в приложении 108 обработки текстов Microsoft Word® на клиентском компьютере 104. Документ, который должен быть открыт, хранится на серверном компьютере, например, серверном компьютере 112.

На операции 602, сообщение запроса отправляется от клиентского компьютера 102 серверному компьютеру 112 на открытие части документа. Сообщение запроса включает в себя информацию, указывающую размер открываемой части документа. Например, сообщение запроса может включать в себя указание, показывающее количество объектов, которое должно быть включено в часть документа. В качестве альтернативы, сообщение запроса может включать в себя один или более параметров, предоставляющих информацию, которая относится к отображению информации на клиентском компьютере 102. Информация может включать в себя такие элементы, как размер экрана отображения, размер шрифта и разрешение отображения в пикселях.

На операции 604, первая часть документа принимается от серверного компьютера 112. Первая часть документа, как правило, включает в себя первую страницу документа, плюс дополнительный объем документа, как правило, страницу или часть страницы. В примерах, размер первой части документа может включать в себя размер больший или меньший данного размера. Причина для включения больше одной страницы документа, состоит в том, чтобы предоставить возможность пользователю клиентского компьютера 102 выполнять прокрутку вслед за первой страницей и чтобы вторая страница, или часть второй страницы, быстро отображались из памяти на клиентском компьютере 102.

В дополнение к отправке первой части документа, серверный компьютер 112 также указывает клиентскому компьютеру, доступна ли еще часть документа. Серверный компьютер 112 может указывать на то, что доступна еще часть документа посредством установки флага в сообщении, отправляемом серверным компьютером 112 клиентскому компьютеру 102. Возможны другие способы для указания того, что доступна еще часть документа. Например, серверный компьютер 112 может включать ID последнего объекта в документе и ID последнего объекта в отправленной части. Затем клиентский компьютер 102 может сравнить ID для определения того, что доступна еще часть документа.

На операции 606, первая часть документа, принятая от серверного компьютера 112, загружается в первую область памяти на клиентском компьютере 102. Первая область памяти является областью памяти на клиентском компьютере 102, предназначенной для хранения части документа. Как правило, область памяти достаточно большая для хранения двух или трех страниц документа, несмотря на то, что в примерах, область памяти может хранить больше или меньше чем две или три страницы документа. Область памяти, достаточно большая для хранения двух страниц документа, позволяет сохранять текущую страницу плюс половину предшествующей страницы и половину последующей страницы. Область памяти, достаточно большая для хранения трех страниц, позволяет сохранять текущую страницу плюс целиком предшествующую страницу и целиком последующую страницу. В примерах, область памяти известна как окно просмотра, так как часть документа визуализируется из области памяти.

Часть документа, полученная от серверного компьютера 112 и сохраненная в области памяти, состоит из одного или более объектов. Каждый объект представляет собой определенную часть документа, такую как слово, предложение, абзац, таблица, ячейка таблицы и т.д. Каждый объект имеет уникальный ID. В дополнение, один или более из объектов назначены в качестве объектов самого высокого уровня. Объектами самого высокого уровня являются объекты в документе, которые содержат один или более других объектов. Например, абзац является объектом самого высокого уровня, который включает в себя один или более объектов-предложений и объектов-слов.

Объекты в части документа, хранящейся в области памяти, организованы в рамках объектов самого высокого уровня. Таким образом, область памяти начинается с первой строки объекта самого высокого уровня и область памяти заканчивается последней строкой объекта самого высокого уровня. Объекты самого высокого уровня, как правило, содержат одну или более строк XML кода. Область памяти является регулируемой по размеру, чтобы регулироваться по размеру последнего объекта самого высокого уровня в области памяти.

На операции 608, вторая часть документа визуализируется на экране отображения клиентского компьютера 102. Как правило, вторая часть содержит страницу данных документа. Вторая часть документа визуализируется из области памяти на клиентском компьютере 102 и содержит часть первой части документа. Страница 200 с Фигуры 4 и страница 404 с Фигуры 5 являются примерами страниц документа, визуализируемых из области памяти клиентского компьютера 102.

На операции 610, пользователь выполняет прокрутку по документу. На операции 612, выполняется определение того, доступна ли на серверном компьютере 112 еще часть документа. В примерах, определение затрагивает проверку статуса флага в сообщении, отправленном серверным компьютером 112 клиентскому компьютеру 102 с первой частью документа на операции 604. В других примерах, клиентский компьютер 102 может сравнить последний ID в части документа, отправленной серверным компьютером 112, с последним ID в документе.

На операции 614, когда выполнено определение, что на серверном компьютере 112 доступна еще часть документа, клиентский компьютер 102 определяет, когда получить еще часть документа от серверного компьютера 112. В примерах, клиентский компьютер определяет, что требуется получить еще часть документа от серверного компьютера 112 после того как страница документа была прокручена пользователем. В других примерах, клиентский компьютер определяет, что требуется получить еще часть документа от серверного компьютера 112 всякий раз, когда пользователь прокручивает любую часть документа на клиентском компьютере 102. Возможны другие примеры.

На операции 616, когда на клиентском компьютере 102 выполнено определение того, что требуется получить еще часть документа от серверного компьютера 112, клиентский компьютер 102 отправляет сообщение запроса серверному компьютеру 112 в отношении третьей части документа. Сообщение запроса включает в себя информацию о размере третьей части документа. В примерах, информация, которая относится к размеру документа, может включать в себя указание количества объектов, которое должно быть включено в третью часть документа. В примерах, информация, которая относится к размеру документа, может включать в себя один или более параметров, указывающих объем, на который прокручен визуализированный на клиентском компьютере 102 документ. Серверный компьютер 112 использует информацию, которая относится к размеру документа, для определения размера третьей части документа.

На операции 618, третья часть документа принимается от серверного компьютера 112. На этапе 620, третья часть документа загружается в первую область памяти. Когда третья часть документа загружается в первую область памяти, из-за того что пользователь прокрутил вниз документ, то третья часть документа добавляется к концу первой области памяти. Первая область памяти увеличивается в размере, чтобы охватывать размер третьей части документа. Конец третьей части документа является объектом самого высокого уровня, а конец данного объекта самого высокого уровня соответствует концу первой области памяти.

В примерах, когда третья часть документа добавляется в первую область памяти, то часть документа, аналогичная по размеру третьей части документа, как правило, выгружается из первой области памяти. Выгрузка части документа из первой области памяти сокращает потребление памяти на клиентском компьютере 102.

На операции 622, четвертая часть документа выгружается из первой области памяти. Четвертая часть документа является подмножеством первой части документа. Как описано выше, четвертая часть документа, как правило, аналогична по размеру третьей части документа. Четвертая часть документа, как правило, аналогична по размеру третьей части документа, но не идентична третьей части документа, так как первая область памяти заканчивается на объекте самого высокого уровня, а размер объектов самого высокого уровня в первой и третьей частях документа может отличаться. Выгрузка четвертой части документа из первой области памяти, когда третья часть документа добавляется в первую область памяти, регулирует потребление памяти на клиентском компьютере 102.

На операции 624, пользователь редактирует часть документа, визуализированного на клиентском компьютере 102. В примерах, документ может редактироваться в любой момент времени, когда документ отображается на клиентском компьютере 102. Это включает в себя момент времени когда документ исходно отображается или после того как документ прокручен. Несмотря на то, что Фигура 6 показывает редактирование документа, когда больше не доступна еще часть документа на серверном компьютере 112, это лишь всего один пример момента, когда может редактироваться документ.

На операции 626, пользователь сохраняет отредактированную часть документа на клиентском компьютере 102. Как правило, пользователь сохраняет отредактированную часть документа путем нажатия или щелчка на кнопке сохранения на клиентском компьютере 102. На операции 628, клиентский компьютер 102 отправляет сообщение запроса серверному компьютеру 112, чтобы запросить сохранение отредактированной части документа серверным компьютером 112. Серверный компьютер 112 сохраняет отредактированную часть документа, не требуя открытия или сохранения документа целиком. Сохраняется лишь открытая часть документа.

Фигура 7 показывает пример блок-схемы способа 700 для открытия части документа на серверном компьютере, например, серверном компьютере 112. На операции 702, серверный компьютер 112 принимает сообщение запроса от клиентского компьютера 102 на открытие части документа, который хранится на серверном компьютере 112. Сообщение запроса включает в себя информацию, которая относится к размеру открываемой части документа. В примерах, информация может включать в себя указание количества открываемых объектов в документе. В других примерах, информация может включать в себя один или более параметров, указывающих информацию, такую как размер экрана отображения на клиентском компьютере 102, размер шрифта, используемого на клиентском компьютере 102, разрешение экрана отображения и т.д.

На операции 704, серверный компьютер 112 определяет пороговое значение объектов применительно к открываемой части документа. Пороговое значение объектов указывает количество объектов, которое должно быть включено в открываемую часть документа. Когда указание порогового значения объектов не предоставляется клиентским компьютером 102, тогда, как правило, пороговое значение объектов вычисляется посредством определения количества объектов в документе, которые умещаются в размере одного экрана отображения на клиентском компьютере 102 плюс дополнительное количество объектов. Дополнительное количество объектов, как правило, кратно количеству объектов, которое умещается в размере одного экрана отображения.

На операции 706, серверный компьютер 112 открывает запрошенный документ и отправляет один или более объектов в документе клиентскому компьютеру 102, до тех пор, пока не будет достигнуто пороговое значение объектов. Каждый объект преобразуется в формат, который требуется на клиентском компьютере 102, перед тем как объект отправляется клиентскому компьютеру 102. Например, каждый объект в формате Word® может преобразовываться в формат XML.

При достижении порогового значения объектов, на операции 708 серверный компьютер 112 определяет объект самого высокого уровня, который соответствует объекту, который в свою очередь соответствует пороговому значению объектов. Когда в объекте, соответствующем пороговому значению объектов, еще присутствуют объекты, то на операции 710, серверный компьютер 112 продолжает отправку объектов клиентскому компьютеру 102 до тех пор, пока не будет достигнут последний объект в объекте самого высокого уровня.

На операции 712, выполняется определение того, достигнут ли конец документа. На операции 712, когда определено, что достигнут конец документа, то на операции 714 серверный компьютер 112 ожидает дальнейшего действия со стороны клиентского компьютера 102. Дальнейшим действием может быть сохранение отредактированной части документа, закрытие документа и т.д.

На операции 712, когда определено, что конец документа не достигнут, то на операции 716 серверный компьютер 112 уведомляет клиентский компьютер 102 о том, что существует дополнительный контент в документе. Как правило, серверный компьютер 112 отправляет уведомление через сообщение клиентскому компьютеру 102. В примерах, вместо отправки уведомления в новом сообщении, уведомление может быть включено в сообщение, которое включает в себя контент документа, например, сообщение на операциях 706 или 710. В других примерах, клиентский компьютер может отправить сообщение серверному компьютеру 112, запрашивающее, доступен ли дополнительный контент в документе; в ответ на сообщение запроса сервер 112 может отправить клиентскому компьютеру 102 уведомление.

На операции 718, серверный компьютер 112 принимает сообщение запроса от клиентского компьютера 102 в отношении дополнительной части документа. Как правило, сообщение запроса включает в себя информацию как в отношении размера дополнительной части документа. В примерах, информацией может быть указание количества объектов, которое должно быть включено в дополнительную часть документа. В других примерах, информация может включать в себя открываемое количество страниц или частей страницы. Возможны другие примеры.

На операции 720, серверный компьютер 112 определяет размер дополнительной части документа. Серверный компьютер 112, как правило, использует информацию, включенную в сообщение запроса, для определения размера дополнительной части документа. В примерах, размер дополнительной части документа может конфигурироваться или жестко программироваться на серверном компьютере 112.

На операции 722, определяется пороговое значение объектов для дополнительной части документа. Пороговое значение объектов соответствует количеству объектов, которое должно быть включено в дополнительную часть документа. Когда достигается количество объектов, которое должно быть включено в дополнительную часть, то на операции 724 серверный компьютер 112 определяет объект самого высокого уровня, который содержит объект при пороговом значении объектов. На операции 726, серверный компьютер 112 отправляет один или более объектов из дополнительной части документа клиентскому компьютеру 102. Серверный компьютер 112 отправляет один или более объектов клиентскому компьютеру 102 до тех пор, пока не будет достигнуто пороговое значение объектов. Когда достигнуто пороговое значение объектов, серверный компьютер 112 продолжает отправлять объекты клиентскому компьютеру 102 до тех пор, пока не будет достигнут последний объект в объекте самого высокого уровня, который соответствует объекту при пороговом значении объектов.

На операции 728, серверный компьютер 112 принимает отредактированную часть документа от клиентского компьютера 102. Отредактированная часть документа может включать в себя один или более отредактированных объектов или один или более новых добавленных или удаленных объектов. Так как каждый объект имеет уникальный ID объекта, то когда добавляются новые или удаляются один или более объектов, ID объектов в документе регулируются в зависимости от позиции добавленных новых или удаленных объектов.

На операции 730, отредактированная часть документа сохраняется на серверном компьютере 112. Отредактированная часть документа сохраняется без открытия всего документа.

Фигура 8 показывает пример блок-схемы способа 704 для определения порогового значения объектов для открываемой части документа. На операции 802, идентифицируется информация в сообщении запроса, отправленном от клиентского компьютера 102 серверному компьютеру 112, которая относится к размеру открываемой части документа. Размер открываемой части документа может быть включен в один или более параметров, включенных в сообщение запроса.

На операции 804, выполняется определении, включено ли указание размера порогового значения объектов, в сообщение запроса. Указание может быть включено в один или более параметров, либо указание может быть включено в любом месте сообщения запроса. Указание, если оно включено в сообщение запроса, предоставляет количество объектов, соответствующее пороговому значению объектов для открываемой части документа серверным компьютером 112 и отправляемой клиентскому компьютеру 102.

Когда определено, что указание включено в сообщение запроса, то на операции 806 количество объектов, идентифицированное в указании, извлекается из сообщения запроса. Когда определено, что указание не включено в сообщение запроса, то на операции 808, из сообщения запроса извлекается другая информация, которая относится к пороговому значению объектов. Другая информация, как правило, включенная в один или более параметров в сообщении запроса, может включать в себя элементы, такие как размер экрана отображения клиентского компьютера 102, размер используемого шрифта и разрешение экрана в пикселях для экрана отображения. Также возможны другие типы информации.

На операции 810, информация, полученная на операции 808, используется для определения количества объектов, которое умещается в размере экрана отображения. Например, если известен размер экрана отображения и известен размер шрифта, используемого на экране отображения, и известен средний размер объекта, то может быть получена оценка количества объектов, которое может умещаться в размере в рамках размера экрана отображения.

На операции 812, количество объектов, полученное посредством вычисления на операции 810, или количество объектов, полученное на операции 806, как результат указания, включенного в сообщение запроса, умножается на коэффициент умножения. Коэффициент умножения используется для определения порогового значения объектов. Коэффициент умножения, как правило, является кратным числом размера страницы. Например, коэффициент умножения равный 2, указывает размер, соответствующий двум страницам, а коэффициент умножения равный 1,5, указывает размер, соответствующий полутора страницам. В примерах могут использоваться другие коэффициенты умножения.

На операции 814, результат этапа 812 умножения назначается в качестве порогового значения объектов. Например, если коэффициент умножения равен 1,5, то количество объектов в пороговом значении объектов соответствует количеству объектов, которое умещается в размере экрана отображения плюс количество объектов, которое умещается в размере половины экрана отображения.

Со ссылкой на Фигуру 9, показаны характерные компоненты клиентских компьютеров 102, 104 и серверного компьютера 112. В характерных вариантах осуществления, клиентские компьютеры 102, 104 и серверный компьютер 112 являются вычислительными устройствами. Клиентские компьютеры 102, 104 и серверный компьютер 112 могут включать в себя устройства ввода/вывода, центральное устройство обработки («CPU»), устройство хранения данных и сетевое устройство.

В базовой конфигурации, клиентские компьютеры 102, 104 и серверный компьютер 112, как правило, включают в себя, по меньшей мере, один блок 902 обработки и системную память 904. В зависимости от конкретной конфигурации и типа вычислительного устройства, системная память 904 может быть энергозависимой (такой как RAM), энергонезависимой (такой как ROM, флэш-память и т.д.) или неким сочетанием двух. Как правило, системная память 904 включает в себя операционную систему 906, приемлемую для управления функционированием подключенного к сети персонального компьютера, такую как операционные системы Windows® от Microsoft Corporation, Редмонд, Вашингтон, или сервер, такой как Microsoft Exchange Server 2007, также от Microsoft Corporation, Редмонд, Вашингтон. Системная память 904 также может включать в себя одно или более приложений 908 программного обеспечения и может включать в себя данные программ.

Клиентские компьютеры 102, 104 и серверный компьютер 112 могут обладать одинаковыми признаками или функциональными возможностями. Например, клиентские компьютеры 102, 104 и серверный компьютер 112 также могут включать в себя машиночитаемые носители информации. Машиночитаемые носители информации могут включать в себя как машиночитаемые носители данных, так и средства связи.

Машиночитаемые носители данных являются физическими носителями информации, такими как запоминающие устройства (съемные и/или несъемные), включающие в себя магнитные диски, оптические диски или ленту. Такое дополнительное хранилище проиллюстрировано на Фигуре 9 съемным хранилищем 910 и несъемным хранилищем 912. Машиночитаемые носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители информации, реализованные любым способом или по любой технологии хранения информации, такой как: машиночитаемые инструкции, структуры данных, программные модули и прочие данные. Машиночитаемые носители данных могут включать в себя, но не ограничиваются, RAM, ROM, EEPROM, флэш-память и другие технологии памяти, CD-ROM, цифровые универсальные диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитную ленту, накопитель на магнитных дисках или другие магнитные запоминающие устройства, или любой другой носитель информации, который может использоваться для хранения требуемой информации, и доступ к которому может быть получен клиентскими компьютерами 102, 104. Любые такие машиночитаемые носители данных могут быть частью клиентских компьютеров 102, 104. Клиентские компьютеры 102, 104 так же могут иметь устройство(а) 914 ввода, такое как клавиатура, манипулятор типа мышь, перо, устройство голосового ввода, устройство сенсорного ввода и т.д. Также может быть включено устройство(а) 916 вывода, такое как дисплей, громкоговорители, принтер и т.д.

Клиентские компьютеры 102, 104 и серверный компьютер 112 также могут содержать соединения 918 связи, которые позволяют устройству осуществлять связь с прочими вычислительными устройствами 920, как например, по сети в распределенной вычислительной среде, например, интрасети или сети Интернет. Соединение 918 связи является одним примером сред связи. Среды связи, как правило, могут воплощать машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другой транспортный механизм, и включают в себя любые среды доставки информации. Понятие «модулированный сигнал данных» означает сигнал, у которого одна или более из его характеристик задаются или меняются таким образом, что в сигнале кодируется информация. В качестве примера, а не ограничения, среды связи включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и прочие беспроводные среды.

Описанные выше различные варианты осуществления предоставлены лишь в качестве иллюстрации и не должны толковаться как ограничивающие. Различные модификации и изменения могут быть выполнены в отношении описанных выше вариантов осуществления, не отступая от истинной сущности и объема изобретения.

1. Способ осуществления доступа к документу на клиентском компьютере, содержащий этапы, на которых:
на клиентском компьютере, отправляют в серверный компьютер первый запрос на открытие первой части документа, причем документ хранится на серверном компьютере, первая часть документа меньше всего документа, данный запрос включает в себя информацию, которая используется серверным компьютером для определения размера первой части документа;
на клиентском компьютере, принимают первую часть документа от серверного компьютера;
на клиентском компьютере, после того как первая часть документа принята от серверного компьютера, визуализируют вторую часть документа на экране отображения клиентского компьютера, при этом вторая часть документа является подмножеством первой части документа;
на клиентском компьютере, определяют, что еще часть документа доступна на серверном компьютере;
на клиентском компьютере, определяют, что пользователь прокрутил третью часть документа на экране отображения на клиентском компьютере;
когда клиентским компьютером определено, что пользователь прокрутил третью часть документа, и когда клиентским компьютером определено, что еще часть документа доступна на серверном компьютере, то отправляют в серверный компьютер второй запрос на открытие дополнительной части документа.

2. Способ по п.1, в котором этап, на котором определяют на клиентском компьютере что, по меньшей мере, еще одна дополнительная часть документа доступна на серверном компьютере, дополнительно содержит этап, на котором принимают от серверного компьютера сообщение, указывающее на то, что доступна еще часть документа.

3. Способ по п.1, в котором этап, на котором определяют, что пользователь прокрутил третью часть документа на экране отображения, дополнительно содержит этап, на котором определяют, что пользователь прокрутил предварительно определенное количество объектов на экране отображения.

4. Способ по п.3, в котором каждый объект в предварительно определенном количестве объектов является объектом самого высокого уровня, причем каждый из объектов самого высокого уровня является одним из абзаца, таблицы, списка или изображения.

5. Способ по п.1, в котором, когда клиентский компьютер запрашивает дополнительную часть документа с серверного компьютера, то клиентский компьютер выгружает аналогичного размера часть документа из клиентского компьютера.

6. Способ по п.1, дополнительно содержащий этапы, на которых: принимают дополнительную часть документа от серверного компьютера, и когда дополнительная часть документа принимается от серверного компьютера, выгружают часть документа из клиентского компьютера.

7. Способ по п.1, в котором информация, включенная в первый запрос, включает в себя одно или более из размера экрана отображения на клиентском компьютере, размера шрифта, используемого на экране отображения, и разрешения в пикселях экрана отображения.

8. Способ по п.1, в котором информация, включенная в первый запрос, включает в себя указание количества объектов, которое должно быть включено в первую часть документа.

9. Способ, реализуемый на серверном компьютере и предназначенный для частичного открытия документа, хранящегося на серверном компьютере, при этом способ содержит этапы, на которых:
на серверном компьютере, принимают первое сообщение от клиентского компьютера, при этом первое сообщение является запросом на открытие первой части документа, причем первая часть документа содержит один или более объектов, при этом данный запрос включает в себя информацию для определения размера первой части документа;
на серверном компьютере, определяют размер первой части документа, причем при определении размера первой части документа определяют пороговое значение объектов для первой части документа, при этом пороговое значение объектов соответствует минимальному количеству объектов, которое должно быть включено в первую часть документа; и
на серверном компьютере, отправляют в клиентский компьютер один или более объектов из документа, причем эти один или более объектов содержат объекты, начиная с начала документа вплоть до того, пока количество объектов, отправленных в клиентский компьютер, не станет равным пороговому значению объектов.

10. Машиночитаемый носитель данных, содержащий инструкции, которые при их исполнении вычислительным устройством предписывают вычислительному устройству:
отправлять в серверный компьютер первый запрос на открытие первой части документа, при этом документ хранится на серверном компьютере, первая часть документа меньше всего документа, данный запрос включает в себя информацию, которая используется серверным компьютером для определения размера первой части документа;
принимать первую часть документа от серверного компьютера;
после того как первая часть документа принята от серверного компьютера, визуализировать вторую часть документа на экране отображения клиентского компьютера, при этом вторая часть документа является подмножеством первой части документа;
определять, что еще часть документа доступна на серверном компьютере;
определять, что пользователь прокрутил третью часть документа на экране отображения на клиентском компьютере, при этом третья часть документа содержит предварительно определенное количество объектов, причем каждый из объектов является одним из абзаца, таблицы, списка или изображения; и
когда определено, что пользователь прокрутил третью часть документа, и когда определено, что еще часть документа доступна на серверном компьютере, то отправлять в серверный компьютер второй запрос на открытие дополнительной части документа, при этом дополнительная часть документа аналогична по размеру прокрученной третьей части документа.



 

Похожие патенты:

Изобретение относится к системам и методам создания корпусов текстов для различных исследовательских и других целей. Техническим результатом является повышение точности отделения текстов пользователей от остального контента веб-страниц при автоматическом построении корпуса текстов.

Группа изобретений относится к средствам для совместной работы над документами. Технический результат заключается в обеспечении сохранения метаданных во время операции отмены на клиентском компьютере при совместной работе над документами.

Изобретение относится к вычислительной технике. Технический результат заключается в ускорении процесса производства программного обеспечения для микроконтроллеров за счет повышения качества и скорости предоставления разработчику информационной поддержки.

Изобретение относится к системам классификации документов. Техническим результатом является сокращение времени работы системы за счет возможности классифицировать документы по форме и выделяемым метаданным и возможности проводить анализ только информативной части документа.

Изобретение относится к области совместной работы с документами на сетевой основе. Техническим результатом является обеспечение слияния метаданных документа на клиентском компьютере.

Изобретение относится к предоставлению информации на основании запроса пользователя. Технический результат - эффективность выполнения запросов поисковыми машинами.

Изобретение относится к средствам поиска информации с помощью поискового индекса. Технический результат заключается в уменьшении времени поискового процесса и в повышении точности результатов поиска.

Изобретение относится к методам веб-каналов на языке XML (Расширяемом Языке Разметки) для веб-доступа удаленных ресурсов. Техническим результатом является оптимизация инфраструктуры систем веб-доступа и обеспечения способности запуска удаленных программ.

Изобретение относится, в общем, к компьютерной технике и, более конкретно, к компьютерно-реализуемой совместной авторской подготовке документов. Техническим результатом является уменьшение задержек и конфликтов редактирования при подготовке документов несколькими пользователями.

Изобретение относится к области структурированной соавторской разработки документов. Техническим результатом является повышение надежности многопользовательского редактирования документов.

Изобретение относится к методам представления текста. Технический результат состоит в получении возможности интеграции разных приложений для обработки текста на основе унификации представления текстовой информации, включая также информацию о структуре, формате и оформлении документа (шрифты, форматирование и т.п.). Для этого содержащий текст документ получают в первом формате. Универсальное текстовое представление документа создается с использованием первого фильтра, связанного с первым форматом. Универсальное текстовое представление отображает текст и поддерживаемые нетекстовые данные, оно сохраняет неподдерживаемые данные с привязкой к поддерживаемым данным. Универсальное текстовое представление изменяется на основании действий пользователя при помощи программы в режиме полного соответствия вывода на экран и при печати (режим WYSIWYG). Пользователь видит расположение поддерживаемых и неподдерживаемых данных. Затем модифицированное универсальное текстовое представление экспортируется с помощью второго фильтра, связанного со вторым форматом. Также экспортируются поддерживаемые и неподдерживаемые нетекстовые данные. 3 н. и 19 з.п. ф-лы, 12 ил.

Изобретение относится к средствам автоматизированного анализа текстовых документов. Технический результат заключается в повышении точности определения наличия в документах конфиденциальной информации. Преобразуют в заранее заданный формат все информационно-значимые поля эталонных форм документа с указанием их позиций в каждой форме. Выявляют поля эталонных форм документа в электронном файле анализируемого документа. Выявляют количество полей эталонных форм документа в анализируемом документе. Осуществляют поиск эталонных форм в анализируемом документе. Формируют список найденных эталонных форм документа в анализируемом документе. Проверяют порядок следования полей из каждой найденной эталонной формы документа в анализируемом документе, если в конкретной эталонной форме порядок не совпадает, ее удаляют из списка найденных. Определяют позицию полей эталонных форм документа из отобранного списка в анализируемом документе. Выявляют текст в анализируемом документе, находящийся между найденными полями. Определяют наличие данной эталонной формы документа в заполненном виде в анализируемом тексте, если между любыми соседними полями выявлен текст. Помещают имя текущей формы в список эталонных форм документа, найденных в анализируемом тексте. 2 з.п. ф-лы, 1 ил.

Изобретение относится к оптическому распознаванию символов. Техническим результатом является оптимизация оптического распознавания символов за счет использования леса решений. Предложенная система включает в себя команды в машинном коде при их исполнении процессором, управляющие системой оптического распознавания символов для обработки содержащего текст отсканированного изображения документа путем выполнения идентификации изображений символов в содержащем текст отсканированном изображении документа. Причем идентификация выполняется для каждой страницы документа и для каждого изображения символа на странице. Выполняют идентификацию набора подходящих структур данных эталона для изображения символа с использованием леса решений. Используют подходящие структуры данных эталона для определения набора подходящих графем и используют идентифицированный набор подходящих графем для выбора кода символа, который соответствует изображению символа. Подготавливают обработанный документ, содержащий коды символов, которые соответствуют изображениям символов из отсканированного изображения документа, и сохраняют обработанный документ в одном или более запоминающих устройств и модулей памяти. 3 н. и 17 з.п. ф-лы, 66 ил.

Изобретение относится к экспертизе документов. Технический результат - повышение достоверности определения принадлежности страниц документа к одному акту печати. Способ заключается в том, что осуществляют оцифровку документа путем сканирования текста документа, осуществляют предварительную обработку цифровой копии документа путем удаления полей и элементов, не содержащих текста, на каждой странице подсчитывают число пикселей, содержащих различные цвета текста, каждый из которых характеризуется соответствующими значениями цветовой модели. Определяют наиболее часто встречающиеся в документе цвета текста, усредняют значения цветовой модели для этих цветов для разных страниц документа и сравнивают полученные значения для разных страниц документа. При обнаружении различия в усредненных значениях цветовой модели и в значениях цветовой модели самого часто встречающегося цвета на разных страницах делают вывод о том, что эти страницы не принадлежат к одному акту печати. Предпочтительно использовать для подсчета числа пикселей различных цветов страницы документа, кроме первой. Чаще всего в качестве цветов текста используют различные тона серого цвета, а в качестве цветовой модели целесообразно использовать цветовую модель RGB. 4 табл., 3 з.п. ф-лы.

Изобретение относится к программированию и, конкретнее, к контекстно-зависимому расслаиванию двоичных программ. Техническим результатом является уменьшение объема памяти и требуемых ресурсов для обработки двоичных программ. В способе контекстно-зависимого расслаивания двоичных программ выполняют обработку неструктурированной однопоточной области двоичного кода с использованием процессора, соединенного с запоминающим устройством, определяют критерий среза для указанной области. Определяют контур вызова, контур возврата и псевдоконтур неосуществленного прохода для области на основе анализа области на двоичном уровне. Генерируют контекстно-зависимый срез кода на основе контура вызова, контура возврата, псевдоконтура неосуществленного прохода и критерия среза. Сохраняют контекстно-зависимый срез кода в запоминающем устройстве. 3 н. и 17 з.п. ф-лы, 5 ил., 1 табл.

Изобретение относится к системам и способам исключения шинглов от частей сообщения, которые встречались только в сообщениях, не содержащих спам, при фильтрации спама. Технический результат настоящего изобретения заключается в сокращении размера сообщения при фильтрации спама. Система исключения шинглов, которые встречались только в сообщениях, не содержащих спам, содержит: а) средство обработки текста, предназначенное для: получения сообщения, по крайней мере одна часть текста которого является незначимой, при этом незначимой является часть текста сообщения, которая не имеет значения при определении спама и содержит слова, символы, по которым выделяют по меньшей мере почтовый адрес, телефон, постскриптум, автоподпись, и которая встречается в сообщениях, не содержащих спам, поиска в упомянутом сообщении тех частей текста, которые совпадают с известными частями текста из базы данных образцов текста, сокращения текста упомянутого сообщения путем исключения из текста упомянутого сообщения найденных частей текста, которые совпадают с известными частями текста из базы данных образцов текста, передачи сокращенного текста упомянутого сообщения средству обработки шинглов; б) базу данных образцов текста, предназначенную для хранения известных частей текста сообщения, которые встречались только в сообщениях, не содержащих спам, и характерны для незначимых частей сообщения; в) средство обработки шинглов, предназначенное для: вычисления набора шинглов на основе сокращенного текста упомянутого сообщения, сравнения вычисленного набора шинглов с известными шинглами из базы данных шинглов, сокращения вычисленного набора шинглов путем исключения шинглов, которые совпадают с известными шинглами из базы данных шинглов; г) базу данных шинглов, предназначенную для хранения известных шинглов, которые встречались только в сообщениях, не содержащих спам. 2 н. и 11 з.п. ф-лы, 4 ил., 2 табл.

Изобретение относится к выполнению синтаксического анализа текста. Технический результат - оценка всех возможных синтаксических комбинаций быстро и без потери истинного смысла текста. Для этого в некоторых вариантах осуществления этот способ включает выполнение грубого синтаксического анализа текста, построение графа обобщенных составляющих текста и фильтрацию дуг графа обобщенных составляющих с помощью комбинированного классификатора, который включает древесный классификатор и один или несколько линейных классификаторов. Комбинированный классификатор обучается с использованием параллельного анализа неразмеченных двуязычных текстовых корпусов. 5 н. и 18 з.п. ф-лы, 5 ил.

Изобретение относится к обработке визуального объекта. Технический результат - повышение правильности распознавания текста выбранной части изображения в случае, когда захвачена часть второго изображения. Для этого предусмотрено: вывод изображения на экран дисплея; выбор пользователем первой части изображения; распознавание текста в пределах выбранной части текста и невыбранной части текста, расположенной на второй части изображения, отличающейся от первой части изображения, для отображения распознанной части текста при выборе пользователем первой части изображения, содержащей выбранную текстовую часть; причем осуществляют определение по меньшей мере одного из логических продолжений и логических расширений невыбранной части текста по отношению к выбранной части текста. 2 н. и 51 з.п. ф-лы, 16 ил.

Изобретение относится к устройству воспроизведения электронной книги. Технический результат заключается в обеспечении возможности определения части на странице в электронной книге, которая фактически прочитана пользователем, на основе предыстории операций. Система включает в себя устройство создания книги, выполненное с возможностью формирования изображения по меньшей мере одной страницы для электронной книги, включающей в себя воспроизводимое содержание, причем изображение страницы включает в себя выбираемый участок, имеющий часть воспроизводимого содержания электронной книги. 10 н. и 20 з. п. ф-лы, 27 ил.

Изобретение относится к средствам для прогнозирования эффективности речевого воздействия фрагментов дискурса на разных языках. Технический результат заключается в прогнозировании эффективности речевого воздействия (ЭРВ) фрагмента дискурса на разных языках. Отбирают параметры, которые могут воздействовать на реципиента; на одном из изучаемых языков отбирают фрагменты дискурса, содержащие отобранные параметры; выделяют экстралингвистические факторы (ЭЛФ), влияющие на ЭРВ фрагментов в исследуемых языках и нивелируют их влияние в отобранных фрагментах путем модификации этих фрагментов для проведения эксперимента, независимого от привходящих факторов; уравнивают объемы фрагментов, разрабатывают программное обеспечение и составляют онлайн-анкету, включающую модифицированные фрагменты с отобранными параметрами, добавляют контрольный фрагмент; переводят онлайн-анкету на исследуемые языки с сохранением потенциала речевого воздействия; проводят онлайн-анкетирование носителей языка; проводят корреляционный анализ на коэффициент Пирсона для каждого языка в отдельности и составляют уравнения регрессии; проводят сравнительный анализ ЭРВ фрагментов с различными параметрами на исследуемых языках; количественно определяют вклад параметров в величину ЭРВ и ранжируют их. 1 з.п. ф-лы, 4 ил., 7 табл.
Наверх