[go: up one dir, main page]

RU2383929C2 - Способ, система и считываемая компьютером среда для создания и компоновки графики в прикладной программе - Google Patents

Способ, система и считываемая компьютером среда для создания и компоновки графики в прикладной программе Download PDF

Info

Publication number
RU2383929C2
RU2383929C2 RU2005130361/09A RU2005130361A RU2383929C2 RU 2383929 C2 RU2383929 C2 RU 2383929C2 RU 2005130361/09 A RU2005130361/09 A RU 2005130361/09A RU 2005130361 A RU2005130361 A RU 2005130361A RU 2383929 C2 RU2383929 C2 RU 2383929C2
Authority
RU
Russia
Prior art keywords
graphics
algorithms
forms
layout
restrictions
Prior art date
Application number
RU2005130361/09A
Other languages
English (en)
Other versions
RU2005130361A (ru
Inventor
Джанет Л. ШОРР (US)
Джанет Л. ШОРР
Стефен Т. УЭЛЛС (US)
Стефен Т. УЭЛЛС
Мэттью КОТЛЕР (US)
Мэттью КОТЛЕР
Томас К. АНДЕРХИЛЛ (US)
Томас К. АНДЕРХИЛЛ
Скотт А. ШЕРМАН (US)
Скотт А. ШЕРМАН
Илан БЕРКЕР (US)
Илан БЕРКЕР
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2005130361A publication Critical patent/RU2005130361A/ru
Application granted granted Critical
Publication of RU2383929C2 publication Critical patent/RU2383929C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Processing Or Creating Images (AREA)
  • Document Processing Apparatus (AREA)
  • Image Generation (AREA)

Abstract

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

Description

Перекрестные ссылки на родственные заявки
Данная патентная заявка связана и подана одновременно с патентной заявкой США № _______ под названием "Editing The Text Of An Arbitrary Graphic Via A Hierarchical List" (Редактирование текста произвольной графики посредством иерархического списка), поданной 30 сентября 2004 г., права на которую переданы правопреемнику данной заявки. Вышеупомянутая патентная заявка включена в настоящее описание, во всей полноте, посредством ссылки.
Предпосылки изобретения
Современные прикладные программы, в том числе текстовые редакторы и специализированные прикладные программы рисования, позволяют пользователям создавать как простую, так и сложную графику. Эти программы рисования позволяют пользователям создавать графику с использованием разнообразных форм, которые можно аннотировать текстом. Графика, созданная с помощью этих приложений, может представлять собой самостоятельные документы или может быть внедрена в текстовые документы. Однако, несмотря на преимущества, обеспечиваемые современными программами рисования, эти программы страдают несколькими недостатками, которые препятствуют созданию и компоновке графики обычным пользователем.
Один недостаток современных программ рисования состоит в том, что, хотя они могут обеспечивать инструменты для создания графики, многие пользователи не осведомлены об этих существующих инструментах или не знают, как использовать их эффективно. В результате, пользователи либо создают свою собственную графику, либо используют графические инструменты неправильно, в результате чего появляются графические объекты с невыровненными формами и текст, который должен иметь одинаковый размер шрифта, но не имеет. Другой недостаток современных программ рисования состоит в том, что формы, содержащие текст, не осуществляют автоматическое изменение размера шрифтов или не увеличивают свои размеры при добавлении или увеличении текста, чтобы текст оставался полностью заключенным в форму. Еще один недостаток современных программ рисования состоит в том, что они либо предлагают жесткие компоновки, либо вовсе не предлагают никаких компоновок. Программы без компоновок требуют, чтобы пользователь вручную регулировал размер и положение каждой формы; программы с жесткой компоновкой не позволяют пользователям производить какие-либо изменения или настройки размера и положения формы.
Исходя из этих и других соображений, предложены различные варианты осуществления настоящего изобретения.
Сущность изобретения
Согласно настоящему изобретению вышеозначенные и другие проблемы решаются посредством способа, устройства и считываемой компьютером среды (носителя) для создания и компоновки графики в прикладной программе рисования на основании множества ограничений, которые преобразуют данные и отношения в конкретную компоновку графики. Способ включает в себя прием модели данных, задающей данные и отношения между этими данными, которые будут представлены в графике, прием определения графики, задающего создаваемую графику, генерирование дерева компоновки путем отображения данных из модели данных в информацию в определении графики, обнаружение размера и положения графических форм согласно значениям ограничения и правилам ограничения, заданным в определении графики, и создание списка форм для графики с использованием информации из дерева компоновки. Затем эти формы можно визуализовать посредством любого приложения визуализации для получения окончательной графики.
Для преобразования данных из модели данных в информацию в определении графики способ предусматривает итерацию по модели данных и применение критериев, заданных в определении графики, для задания алгоритмов, ограничений, правил ограничения и свойств формы для каждой формы, необходимой для построения графики. Эти множества данных затем добавляются к дереву компоновки, которое является иерархическим представлением графической структуры.
Для задания размера и положения графических форм способ предусматривает использование алгоритмов, ограничений и правил ограничения в определении графики. Алгоритмы происходят из неограниченного множества потенциальных алгоритмов, которые знают, как регулировать размер и положение форм для получения конкретной компоновки графики, например компоновки форм по окружности или компоновки форм по линии. Алгоритмы используют ограничения или начальные значения совместно с правилами ограничения или командами для изменения этих начальных значений в диапазоне, для задания размера и положения форм на основании количества форм, объема текста в каждой форме и размеров области, в которой должны быть скомпонованы формы.
Изобретение можно реализовать в виде компьютерного процесса, вычислительной системы или изделия производства, например компьютерного программного продукта или считываемых компьютером носителей. Компьютерный программный продукт может представлять собой компьютерный носитель данных, считываемый компьютерной системой и кодирующий компьютерную программу из команд для выполнения компьютерного процесса. Компьютерный программный продукт также может представлять собой сигнал, распространяющийся посредством несущего сигнала, считываемый вычислительной системой и кодирующий компьютерную программу из команд для выполнения компьютерного процесса.
Эти и другие признаки, а также преимущества настоящего изобретения явствуют из нижеследующего подробного описания и прилагаемых чертежей.
Краткое описание нескольких видов чертежей
Фиг.1 изображает архитектуру компьютерной системы, иллюстрирующую компьютерную систему, используемую в различных вариантах осуществления изобретения и обеспеченную ими;
Фиг.2 - блок-схема различных компонентов, используемых при создании и компоновке графики в прикладной программе рисования в компьютерной системе, показанной на фиг.1, согласно различным вариантам осуществления изобретения;
Фиг.3 - блок-схема иллюстративного дерева компоновки согласно различным вариантам осуществления изобретения;
Фиг.4 - блок-схема части иллюстративного определения графики для генерирования дерева компоновки согласно различным вариантам осуществления изобретения; и
Фиг.5 - иллюстративная процедура, осуществляемая прикладной программой рисования в компьютерной системе, показанной на фиг.1, для создания и компоновки графики, согласно варианту осуществления изобретения.
Подробное описание изобретения
Различные аспекты настоящего изобретения будут описаны со ссылками на чертежи, снабженные сходной системой обозначений. В частности, фиг.1 и соответствующее рассмотрение призвано обеспечить краткое общее описание подходящей вычислительной среды, в которой можно реализовать варианты осуществления изобретения. Хотя изобретение описано в общем контексте программных модулей, которые действуют над операционной системой на персональном компьютере, специалистам в данной области очевидно, что изобретение также можно реализовать в виде комбинации других типов компьютерных систем и программных модулей.
В общем случае программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Кроме того, специалистам в данной области очевидно, что изобретение можно применять на практике в других конфигурациях компьютерной системы, включая карманные устройства, многопроцессорные системы, микропроцессорную или программируемую бытовую электронику, миникомпьютеры, универсальные компьютеры и пр. Изобретение также можно применять на практике в распределенных вычислительных средах, где задачи выполняются удаленными устройствами обработки, связанными друг с другом посредством сети передачи данных. В распределенной вычислительной среде программные модули размещаются как в локальных, так и на удаленных запоминающих устройствах.
Ниже описана, со ссылкой на фиг.1, иллюстративная компьютерная архитектура для компьютера 2, используемая в различных вариантах осуществления изобретения. Компьютерная архитектура, показанная на фиг.1, иллюстрирует традиционный настольный или переносной компьютер, включающий в себя центральный процессор 5 (ЦП), системную память 7, включающую в себя оперативную память 9 (ОЗУ) и постоянную память 11 (ПЗУ), и системную шину 12, которая подключает память к ЦП 5. Базовая система ввода/вывода, содержащая основные процедуры, которые помогают переносить информацию между элементами компьютера, например, при запуске, хранятся в ПЗУ 11. Компьютер 2 также включает в себя запоминающее устройство 14 большой емкости для хранения операционной системы 16, прикладных программ и других программных модулей, которые будут более подробно описаны ниже.
Запоминающее устройство 14 большой емкости подключено к ЦП 5 через контроллер запоминающего устройства большой емкости (не показан), подключенный к шине 12. Запоминающее устройство 14 большой емкости и связанные с ним считываемые компьютером среды обеспечивают энергонезависимую память для компьютера 2. Хотя содержащееся здесь описание считываемых компьютером сред относится к запоминающему устройству большой емкости, например жесткому диску или приводу CD-ROM, специалисту в данной области очевидно, что считываемые компьютером среды могут представлять собой любые имеющиеся среды, к которым компьютер 2 может осуществлять доступ.
В порядке примера, но не ограничения, считываемые компьютером среды могут содержать компьютерные носители данных и среды передачи данных. Компьютерные носители данных включают в себя энергозависимые и энергонезависимые, сменные и стационарные носители, реализованные с помощью любого метода или технологии для хранения информации, например считываемых компьютером команд, структур данных, программных модулей или других данных. Компьютерные носители данных включает в себя, но без ограничения, ОЗУ, ПЗУ, ЭСППЗУ, цифровые универсальные диски (DVD) или другие оптические диски, магнитные кассеты, магнитную ленту или другие магнитные запоминающие устройства или любой другой носитель, который можно использовать для хранения полезной информации, и к которому компьютер может осуществлять доступ.
Согласно различным вариантам осуществления изобретения компьютер 2 может работать в сетевой среде с использованием логических соединений с удаленными компьютерами по сети 18, например Интернету. Компьютер 2 может подключаться к сети 18 через сетевой интерфейс 20, подключенный к шине 12. Очевидно, что сетевой интерфейс 20 также можно использовать для подключения к сетям и удаленным компьютерным системам других типов. Компьютер 2 также может включать в себя контроллер 22 ввода/вывода для приема и обработки ввода от ряда других устройств, включая клавиатуру, мышь или электронное перо (не показаны на фиг.1). Аналогично контроллер 22 ввода/вывода может обеспечивать вывод на экран, принтер или устройство вывода другого типа.
Согласно кратко упомянутому выше в запоминающем устройстве 14 большой емкости и ОЗУ 9 компьютера 2 может храниться ряд программных модулей и файлов данных, в том числе операционная система 16, пригодная для управления работой сетевого персонального компьютера, например операционная система WINDOWS XP от MICROSOFT CORPORATION, Редмонд, Вашингтон. В запоминающем устройстве 14 большой емкости и ОЗУ 9 также могут храниться один или несколько программных модулей. В частности, в запоминающем устройстве 14 большой емкости и ОЗУ 9 может храниться прикладная программа рисования 10. Прикладная программа рисования 10 призвана обеспечивать функции создания и компоновку графики, например графики 24. Согласно одному варианту осуществления изобретения прикладная программа рисования 10 содержит комплект прикладных программ OFFICE от MICROSOFT CORPORATION, включая прикладные программы WORD, EXCEL и POWERPOINT. На фиг.2 показана блок-схема различных компонентов, используемых при создании и компоновке графики в прикладной программе рисования 10, согласно различным вариантам осуществления изобретения. Различные компоненты включают в себя модель 30 данных, определение 40 графики, дерево 50 компоновки, алгоритмы 60 и список 70 форм. В различных вариантах осуществления изобретения прикладная программа рисования 10 изучает посредством считывания определение 40 графики команды, относящиеся к созданию и компоновке графики. Очевидно, что в одном варианте осуществления изобретения модель 30 данных и файл 40 определения графики могут храниться в компьютерной системе 2 в виде отдельных файлов, к которым может осуществлять доступ прикладная программа рисования 10.
Модель 30 данных включает в себя коллекцию узлов, отношений, текста и свойств, которые содержат контент (содержимое) для построения графики 24. Определение 40 графики представляет собой коллекцию данных, описывающих как создавать конкретную компоновку графики. В различных вариантах осуществления изобретения определение 40 графики может иметь формат согласно расширяемому языку разметки (“XML”). Специалистам в данной области очевидно, что XML является стандартным форматом для передачи данных. В формате данных XML схема используется для снабжения данных XML множеством правил грамматики и типа данных, управляющих типами и структурой данных, которые можно передавать. Формат данных XML общеизвестен специалистам в данной области и потому не будет рассмотрен здесь в подробностях. Аспекты графики, описанные в определении 40 графики, включают в себя название алгоритма компоновки, подлежащего использованию для каждой вершины компоновки, параметры алгоритма, ограничения и правила ограничения для построения дерева компоновки, условия по умолчанию для геометрии формы и свойств стиля, данные классификации графики и модель данных образца.
Ограничения представляют собой условия, используемые алгоритмом компоновки при создании графики. Примером ограничения является значение, используемое для ширины формы. Очевидно, что ограничения могут включать в себя численные значения или булевы значения. Численные ограничения могут задавать конкретное численное значение (например, ширина = 1 дюйм (2,54 см)). Численные ограничения также могут вычислять свое значение, опираясь на другие значения ограничения с использованием ссылок (например, высота = ширина * 0.75). Булевы ограничения могут включать в себя ограничения равенства, которые предписывают всем вершинам в множестве иметь такое же значение для другого ограничения, и могут включать в себя ограничения неравенства, где одно значение ограничения ограничено на основании другого значения ограничения (например, ширина формы должна быть меньше или больше высоты другой формы). Ограничения можно распространять между узлами компоновки для установления равенства между элементами рисования (например, все нормальные узлы имеют одинаковый размер шрифта) или неравенства (например, ширина переходных узлов должна быть <= ширины нормального узла). Ограничения можно распространять, присоединяя к ограничению совместно используемый распространитель, который распространяет его состояния на другие узлы компоновки. Очевидно, что как ограничения, так и правила ограничения можно обновлять на других узлах на основании распространяющегося ограничения. Правила ограничения являются описанием, как модифицировать множество ограничений, если алгоритм компоновки не может удовлетворять им. Например, ограничение может указывать, что размер шрифта должен быть равен 14 пунктам, но правило ограничения может указывать, что размер шрифта может уменьшаться минимум до 8 пунктов. Теперь рассмотрим более подробно определение 40 графики со ссылкой на фиг.4.
Дерево 34 компоновки является коллекцией элементов представления или узлов компоновки. Узел компоновки это вершина в дереве компоновки, представляющая форму или группу форм, которая образует элемент графики 24. Узел компоновки, в необязательном порядке, может быть привязан к узлам модели 30 данных. В дереве 34 компоновки хранятся данные о формах, которые будут составлять графику, включая соответствующие геометрии, свойства, подгонку текста и размещение форм.
Прикладная программа рисования 10 строит дерево компоновки, преобразуя данные из модели данных в информацию компоновки графики в определении графики для построения узлов компоновки, и соответствующие алгоритмы, ограничения и правила ограничения с этими узлами компоновки. Затем она использует алгоритм, ограничения и правила ограничения для определения размеров формы, подгонки текста и размещения формы до построения списка 50 форм, который используется для визуализации графики 24 на холсте рисования. Узлы компоновки будут рассмотрены более подробно ниже со ссылкой на фиг.3.
На фиг.3 показана блок-схема одного примера дерева 34 компоновки согласно различным вариантам осуществления изобретения. Следует понимать, что дерево 34 компоновки, показанное на фиг.3, является иллюстративным, и что деревья компоновки могут быть больше или меньше в зависимости от объема данных для графики и от того, как определена компоновка графики. Дерево 34 компоновки включает в себя иерархическую структуру узлов (вершин) компоновки, подлежащих использованию для компоновки графики 24. В этом примере узлы компоновки представляют область всей страницы, которая содержит графику, узел 62 страницы. Дочерние узлы (или узлы второго уровня) узла 62 страницы включают в себя вершину (узел) 64 графики, узел 66 заголовка и узел 67 выноски. Дочерние узлы узла 64 графики включают в себя узел 68 первого уровня, узел 79 второго уровня и узел 72 третьего уровня, представляющие формы, образующие диаграмму, и отображаются обратно в элементы модели данных. Узел третьего уровня также имеет дочерние узлы 74 (точка А) и 76 (точка В), которые представляют видимые формы и также отображаются обратно в элементы модели данных.
На фиг.4 показана блок-схема части определения 40 графики согласно различным вариантам осуществления изобретения. Согласно фиг.4 эта реализация определения графики основана на схеме XML, которая задает компоновку графики 24. Схема XML включает в себя тег 47 LayoutNode, который имеет подтеги, включающие в себя тег Algorithm, задающий тип алгоритма, используемого для компоновки графики узлом компоновки (т.е. пирамида) и тег 48 Shapes, который задает формы, которые могут использоваться в графике узлом компоновки (т.е. трапеция), и тег 49 Constraints для задания ограничений.
Теперь, со ссылкой на фиг.5, опишем иллюстративную процедуру 500, иллюстрирующую процесс, осуществляемый прикладной программой рисования 10 для создания и компоновки графики. Из представленного здесь рассмотрения процедур явствует, что логические операции различных вариантов осуществления настоящего изобретения реализуются (1) как последовательность реализуемых компьютером действий или программных модулей, выполняющихся в вычислительной системе и/или (2) как взаимосвязанные схемы или схемные модули машинной логики в вычислительной системе. Реализация является вопросом выбора в зависимости от требований производительности вычислительной системы, реализующей изобретение. Соответственно логические операции, показанные на фиг.5 и составляющие варианты осуществления настоящего изобретения, описанного здесь, можно рассматривать как операции, структурные устройства, действия или модули. Специалистам в данной области очевидно, что эти операции, структурные устройства, действия или модули могут быть реализованы в виде программного обеспечения, программно-аппаратного обеспечения, цифровой логики специального назначения и любой их комбинации без отклонения от сущности и объема настоящего изобретения, заданных в нижеприведенной формуле изобретения.
Согласно фиг.5 процедура 500 начинается с операции 510, в которой прикладная программа рисования 10 принимает модель данных, задающую данные и отношения между данными, подлежащие представлению в создаваемой графике. Очевидно, что данные и отношения между данными определяют тип и количество для каждого узла компоновки в дереве 34 компоновки, генерируемом структурой компоновки, согласно шаблонам, заданным в определении графики.
Процедура 500 переходит от операции 510 к операции 520, в которой прикладная программа рисования 10 принимает определение графики, описывающее одну возможность для отображения (преобразования) данных из модели данных в узлы компоновки, задающие алгоритмы, параметры, ограничения, правила ограничения и свойства формы. Очевидно, что определение 40 графики может быть извлечено как отдельный файл, например файл XML, хранящийся в компьютерной системе 2. Таким образом, обеспечивается поддержка для разработки новых определений графики, которые пользователь может добавлять, чтобы прикладная программа рисования 10 могла их считывать. Новые определения графики можно создавать и извлекать, не изменяя структуру компоновки, что позволяет расширять множество графических объектов, которые приложение рисования может компоновать.
Определение графики обеспечивает шаблоны для применения алгоритмов, параметров, ограничений и правил ограничения. Согласно данному здесь определению алгоритмы - это процедуры компоновки для задания положения и размера форм и текста. Например, один алгоритм может компоновать формы по линии, а другой алгоритм может компоновать формы по кругу. Очевидно, что алгоритмы могут использовать параметры для определения различных возможностей размещения. Например, линейный алгоритм имеет параметры для направления и ориентации, которыми можно управлять посредством различных команд инструмента рисования в прикладной программе рисования 10. Например, в приложении 10 рисования можно обеспечить инструмент для изменения одного из параметров алгоритма компоновки для изменения ориентации графики (например, слева направо или справа налево) или поворота графики. Алгоритмы также могут быть внешними по отношению к структуре компоновки и могут добавляться для расширения диапазона графики, которую можно создавать, без изменений структуры компоновки.
Процедура 500 переходит от операции 520 к операции 530, в которой прикладная программа рисования 10 генерирует дерево компоновки из принятой модели данных и принятого определения графики. В частности, прикладная программа рисования 10 «обходит» узлы в модели 30 данных и отображает узлы и отношения из модели данных в конкретные формы и принятые по умолчанию свойства стиля (например, форматирование и свойства текста) согласно определению графики (которые также можно задать схемой XML). Согласно рассмотренному выше со ссылкой на фиг.2 дерево 34 компоновки включает в себя данные о формах, которые будут составлять графику, включая соответствующие геометрии, свойства, подгонку текста и размещение форм. Очевидно, что дерево компоновки создается путем итерации по модели 30 данных и создания узлов компоновки на основании шаблонов, заданных в определении графики. Итераторы обеспечивают команды для построения дерева компоновки путем указания, как элементы в модели данных считываются и согласовываются с шаблонами узлов компоновки.
Процедура 500 переходит от операции 530 к операции 540, в которой прикладная программа рисования 10 определяет размер и положение формы для узлов компоновки в дереве компоновки, с использованием алгоритмов, параметров, ограничений и правил ограничений из определения графики. Процедура 500 переходит от операции 540 к операции 550, в которой прикладная программа рисования 10 определяет, вписывается ли графика, подлежащая визуализации, в пространство компоновки на холсте рисования, на основании значений ограничения.
Если, в операции 550, графика, подлежащая визуализации, не вписывается в пространство компоновки на холсте рисования, то процедура 500 переходит к операции 560, в которой прикладная программа рисования 10 изменяет значения ограничения с использованием правил ограничения, чтобы вписать графику в пространство компоновки. В частности, узлы компоновки в дереве 34 компоновки могут включать в себя упорядоченное множество правил ограничения, которые прикладная программа рисования 10 может использовать для изменения значений ограничения в попытке успешной компоновки графики в пространстве компоновки. Согласно различным вариантам осуществления изобретения прикладная программа рисования 10 проверяет каждое правило по очереди, переходя к следующему правилу, только если текущее правило не позволяет вписать графику в пространство компоновки. Очевидно, что, когда прикладная программа 10 закончит движение по списку правил, она автоматически обращается к резервному списку правил, что принудительно вписывает элементы рисования в пространство компоновки на холсте рисования путем сжатия форм и размера шрифта до очень малого размера, усечения текста или не размещения форм в пространстве компоновки.
Следует понимать, что вышеупомянутые графические элементы включают в себя формы, а также текст, который вписывается в формы. Таким образом, прикладная программа рисования 10 также может определять в операции 550, если какой-либо текст не вписывается в формы в пространстве компоновки на холсте рисования. Очевидно, что правила ограничения для текста, а также другие правила также можно включать в список правил ограничения узлов компоновки для определения порядка применения различных методов для подгонки текста. Эти методы могут включать в себя увеличение размера формы или изменение ограничений подгонки текста (например, регулировку границ и размера шрифта). Текстовые алгоритмы связываются с узлами компоновки дерева компоновки, где данные существуют в модели данных. Другие правила включают в себя алгоритмы для определения величины пространства между двумя графическими элементами. Очевидно также, что другие правила могут использовать алгоритмы для определения величины пространства между двумя графическими элементами, относительного положения графических элементов и т.д.
Если в операции 550 графика, подлежащая визуализации, не вписывается в пространство компоновки на холсте рисования, то процедура 500 переходит к операции 570, в которой прикладная программа рисования 10 создает список форм для создаваемой графики на основании данных дерева компоновки, определенных в операции 540. После отображения узлов из модели 30 данных и отношений в конкретные формы или свойства формы, список форм можно визуализовать на холсте рисования. На этом процедура 500 заканчивается.
Из вышеописанного следует, что различные варианты осуществления изобретения включают в себя способ, устройство и считываемую компьютером среду для управления конкретными типами контента в электронном документе. Вышеприведенное описание, примеры и данные обеспечивают полное описание создания и использования состава изобретения. Поскольку многие варианты осуществления изобретения можно создавать, не выходя за рамки сущности и объема изобретения, изобретение опирается на прилагаемую ниже формулу изобретения.

Claims (33)

1. Способ создания и компоновки графики в прикладной программе, содержащий этапы, на которых
принимают модель данных для создания графики, причем модель данных задает набор данных и отношения между данными, подлежащие представлению в графике,
принимают определение графики, причем определение графики описывает отображение данных из модели данных в узлы компоновки, алгоритмы, параметры, ограничения, правила ограничения и свойства формы, причем определение графики также задает итераторы для отображения элементов в модели данных на узлы компоновки и наборы алгоритмов, параметров, ограничений и правил ограничения, связанных с узлами компоновки,
создают список форм из форм и свойств форм для графики на основании алгоритмов, параметров, ограничений, правил ограничений и свойств формы, связанных с узлами компоновки, и
определяют размер и положение формы для форм в графике с использованием алгоритмов, параметров, ограничений, правил ограничения и свойств формы, связанных с узлами компоновки, и
выдают формы и свойства форм из списка форм в прикладную программу, подлежащих воспроизведению в качестве части графики.
2. Способ по п.1, дополнительно содержащий этап, на котором задают множество внешних определений графики, причем каждое из множества внешних определений графики указывает информацию,
необходимую для генерирования конкретной графики, причем упомянутая информация включает в себя дополнительные условия отображения, алгоритмы, параметры, ограничения, правила ограничения и свойства формы.
3. Способ по п.1, дополнительно содержащий этап, на котором задают множество внешних алгоритмов, причем каждый из множества внешних алгоритмов задает компоновку форм для получения конкретной графической структуры, и на каждый из внешних алгоритмов ссылаются посредством определения графики.
4. Способ по п.1, в котором размер и положение формы для формы в графике задают посредством алгоритмов в наборе алгоритмов с использованием ограничений и правил ограничения в соответствующих узлах компоновки.
5. Способ по п.1, в котором ограничения содержат численные ограничения для задания значений для использования алгоритмами, причем численное ограничение содержит конкретное значение.
6. Способ по п.5, в котором численное ограничение выводят посредством ссылки на другие значения ограничения.
7. Способ по п.1, в котором значения ограничения изменяют согласно набору правил ограничения для регулировки размера и положения узлов компоновки.
8. Способ по п.1, в котором ограничения содержат Булевы ограничения для задания равенства и неравенства значений между формами, и при этом значения численного ограничения распространяются на формы, заданные булевыми ограничениями.
9. Способ по п.1, в котором множественные узлы компоновки передают значения ограничения друг другу для обеспечения задания размера и положения узлов компоновки с использованием ограничений.
10. Способ по п.1, в котором определение графики записано на языке разметки.
11. Способ по п.10, в котором языком разметки является расширяемый язык разметки (XML).
12. Система для создания и компоновки графики в прикладной программе, содержащая
компьютер-клиент, способный выполнять программный код для приема модели данных, причем модель данных определяет набор данных и отношения между данными, подлежащие представлению в графике,
приема определения графики для создания графики, причем определение графики описывает отображение данных из модели данных на узлы компоновки, алгоритмы, параметры, ограничения, правила ограничения и свойства формы, причем определение графики также задает итераторы для отображения элементов в модели данных на узлы компоновки и наборы алгоритмов, параметров, ограничений и правил ограничения, связанных с узлами компоновки,
создания списка форм из форм и свойств форм для графики на основании алгоритмов, параметров, ограничений, правил ограничений и свойств формы, связанных с узлами компоновки, и
определения размера и положения формы для форм в графике с использованием алгоритмов, параметров, ограничений, правил ограничения и свойств формы, связанных с узлами компоновки, и
выдачи форм и свойств форм из списка форм в прикладную программу, подлежащих воспроизведению в качестве части графики.
13. Система по п.12, в которой программный код дополнительно способен задавать множество внешних определений графики, причем каждое из множества внешних определений графики указывает информацию, необходимую для генерирования конкретной графики, причем упомянутая информация включает в себя дополнительные условия отображения, алгоритмы, параметры, ограничения, правила ограничения и свойства формы.
14. Система по п.12, в которой программный код дополнительно способен задавать множество внешних алгоритмов, причем каждый из множества внешних алгоритмов задает компоновку форм для получения конкретной графической структуры, и при этом на каждый из внешних алгоритмов ссылаются посредством определения графики.
15. Система по п.12, в которой размер и положение формы для форм в графике задается посредством алгоритмов в наборе алгоритмов с использованием ограничений и правил ограничения в соответствующих узлах компоновки.
16. Система по п.12, в которой ограничения содержат численные ограничения для задания значений, используемых алгоритмами, причем численное ограничение содержит конкретное значение.
17. Система по п.16, в которой численное ограничение выводят посредством ссылки на другие значения ограничения.
18. Система по п.12, в которой значения ограничения модифицируются согласно правилам ограничения для регулировки размера и положения узлов компоновки.
19. Система по п.12, в которой ограничения содержат Булевы ограничения для задания равенства и неравенства значений между формами, и значения численного ограничения распространяются на формы, заданные булевыми ограничениями.
20. Система по п.12, в которой множественные узлы компоновки передают значения ограничения друг другу для обеспечения задания размера и положения узлов компоновки с использованием ограничений.
21. Система по п.12, в которой определение графики записано на языке разметки.
22. Система по п.21, в которой языком разметки является расширяемый язык разметки (XML).
23. Считываемая компьютером среда, в которой хранятся выполняемые компьютером команды, которые при выполнении компьютером предписывают компьютеру осуществлять способ создания и компоновки графики в прикладной программе, содержащий этапы, на которых
принимают модель данных, причем модель данных задает набор данных и отношения между данными, подлежащие представлению в графике,
принимают определение графики для создания графики, причем определение графики описывает отображение данных из модели данных на узлы компоновки, алгоритмы, параметры, ограничения, правила ограничения и свойства формы, причем определение графики также задает итераторы для отображения элементов в модели данных на узлы компоновки и наборы алгоритмов, параметров, ограничений и правил ограничения, связанных с узлами компоновки,
создают список форм из форм и свойств форм для графики на основании алгоритмов, параметров, ограничений, правил ограничений и свойств формы, связанных с узлами компоновки,
определяют размер и положение формы для форм в графике с использованием алгоритмов, параметров, ограничений, правил ограничения и свойств формы, связанных с узлами компоновки, и
выдают формы и свойства форм из списка форм в прикладную программу, подлежащих воспроизведению в качестве части графики.
24. Считываемая компьютером среда по п.23, дополнительно содержащая задание множества внешних определений графики, причем каждое из множества внешних определений графики задает информацию, требуемую для генерирования конкретной графики, причем информация включает в себя дополнительные условия отображения, алгоритмы, параметры, ограничения, правила ограничения и свойства формы.
25. Считываемая компьютером среда по п.23, дополнительно содержащая задание множества внешних алгоритмов, причем каждый из множества внешних алгоритмов задает компоновку форм для получения конкретной графической структуры, и на каждый внешний алгоритм ссылаются посредством определения графики.
26. Считываемая компьютером среда по п.23, в которой размер и положение формы для форм в графике задают посредством алгоритмов в наборе алгоритмов с использованием ограничений и правил ограничения в соответствующих узлах компоновки.
27. Считываемая компьютером среда по п.23, в которой ограничения содержат численные ограничения для задания значений для использования алгоритмами, причем численное ограничение содержит конкретное значение.
28. Считываемая компьютером среда по п.23, в которой численное ограничение выводят посредством ссылки на другие значения ограничения.
29. Считываемая компьютером среда по п.23, в которой значения ограничения модифицируют согласно набору правил ограничения для регулировки размера и положения узлов компоновки.
30. Считываемая компьютером среда по п.23, в которой ограничения содержат Булевы ограничения для задания равенства и неравенства значений между формами, и значения численного ограничения распространяются на формы, заданные булевыми ограничениями.
31. Считываемая компьютером среда по п.23, в которой множественные вершины компоновки передают значения ограничения друг другу для обеспечения задания размера и положения узлов компоновки с использованием ограничений.
32. Считываемая компьютером среда по п.23, в которой определение графики записано на языке разметки.
33. Считываемая компьютером среда по п.23, в которой языком разметки является расширяемый язык разметки (XML).
RU2005130361/09A 2004-09-30 2005-09-29 Способ, система и считываемая компьютером среда для создания и компоновки графики в прикладной программе RU2383929C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/955,271 US7348982B2 (en) 2004-09-30 2004-09-30 Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US10/955,271 2004-09-30

Publications (2)

Publication Number Publication Date
RU2005130361A RU2005130361A (ru) 2007-04-10
RU2383929C2 true RU2383929C2 (ru) 2010-03-10

Family

ID=35501378

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2005130361/09A RU2383929C2 (ru) 2004-09-30 2005-09-29 Способ, система и считываемая компьютером среда для создания и компоновки графики в прикладной программе

Country Status (13)

Country Link
US (4) US7348982B2 (ru)
EP (1) EP1643452B1 (ru)
JP (1) JP4921744B2 (ru)
KR (1) KR101433936B1 (ru)
CN (1) CN100478876C (ru)
AU (1) AU2005203708B2 (ru)
BR (1) BRPI0503982B1 (ru)
CA (1) CA2517409C (ru)
MX (1) MXPA05009276A (ru)
MY (1) MY149288A (ru)
RU (1) RU2383929C2 (ru)
TW (1) TWI379253B (ru)
ZA (1) ZA200506944B (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2624558C2 (ru) * 2013-01-31 2017-07-04 Сяоми Инк. Способ, терминал и сервер для подгонки полей файла

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239749B2 (en) * 2004-06-25 2012-08-07 Apple Inc. Procedurally expressing graphic objects for web pages
US7348982B2 (en) 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US8510657B2 (en) * 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US8134575B2 (en) 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US7750924B2 (en) * 2005-03-15 2010-07-06 Microsoft Corporation Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
US7743325B2 (en) * 2005-03-15 2010-06-22 Microsoft Corporation Method and computer-readable medium for fitting text to shapes within a graphic
US7644356B2 (en) * 2005-06-10 2010-01-05 Hewlett-Packard Development Company, L.P. Constraint-based albuming of graphic elements
US7747944B2 (en) 2005-06-30 2010-06-29 Microsoft Corporation Semantically applying style transformation to objects in a graphic
JP2007114822A (ja) * 2005-10-18 2007-05-10 Yokogawa Electric Corp 自動レイアウト方法および装置
JP2007200097A (ja) * 2006-01-27 2007-08-09 Seiko Epson Corp レイアウト方法
US8438486B2 (en) 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
JP4743154B2 (ja) * 2006-07-05 2011-08-10 セイコーエプソン株式会社 文書編集装置、プログラムおよび記憶媒体
US20080140623A1 (en) * 2006-12-11 2008-06-12 Microsoft Corporation Recursive reporting via a spreadsheet
US7949948B2 (en) * 2007-05-09 2011-05-24 Microsoft Corporation Constraint and rule-based page layout
US8516365B2 (en) 2007-06-15 2013-08-20 Microsoft Corporation Dynamically laying out images and associated text using pre-defined layouts
US8417728B1 (en) * 2007-08-03 2013-04-09 Adobe Systems Incorporated User interfaces, methods, and systems for developing computer applications using artwork
US7810047B2 (en) * 2007-09-04 2010-10-05 Apple Inc. List item layouts system and method
CN101276457B (zh) * 2008-04-22 2011-11-23 北京中星微电子有限公司 验证图形算法及寄存器传输级实现的系统和方法
US8984395B2 (en) * 2008-06-19 2015-03-17 Opera Software Asa Methods, systems and devices for transcoding and displaying electronic documents
US20100218090A1 (en) * 2009-02-26 2010-08-26 Universal - Ad Ltd. Sub-page-based page layout system and method thereof
US8581916B2 (en) * 2009-06-26 2013-11-12 Intel Corporation Graphics analysis techniques
CN102054283B (zh) * 2009-11-05 2016-01-20 齐营股份有限公司 数据组的相关值的图形表示方法及装置
US8799325B2 (en) * 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure
US20110221764A1 (en) * 2010-03-12 2011-09-15 Microsoft Corporation Laying out and cropping images in pre-defined layouts
JP2011221718A (ja) * 2010-04-07 2011-11-04 Sony Corp 生成装置、生成方法、及びプログラム
WO2011136766A1 (en) * 2010-04-28 2011-11-03 Hewlett-Packard Development Company, L.P. System and method for automatically providing a graphical layout based on an example graphic layout
TWI426409B (zh) * 2010-11-02 2014-02-11 Univ Shu Te Modularized design system and its method
US20120166953A1 (en) * 2010-12-23 2012-06-28 Microsoft Corporation Techniques for electronic aggregation of information
JP2013050879A (ja) * 2011-08-31 2013-03-14 Sony Corp 画像出力装置、画像出力装置の制御方法およびプログラム
CN103617505B (zh) * 2013-12-05 2017-12-22 用友软件股份有限公司 企业流程图的动态解析和展示系统和方法
US20160349931A1 (en) * 2015-05-28 2016-12-01 Rockwell Automation Technologies, Inc. Responsive user interface for an industrial environment
WO2017051538A1 (ja) * 2015-09-25 2017-03-30 株式会社日本電気特許技術情報センター 情報処理装置、情報処理方法およびプログラム記録媒体
US9959380B2 (en) * 2016-03-28 2018-05-01 Motivo, Inc. Integrated circuit design systems and methods
US10936778B2 (en) 2016-03-28 2021-03-02 Motivo, Inc. And optimization of physical cell placement
US10747509B2 (en) * 2016-04-04 2020-08-18 Unima Logiciel Inc. Method and system for creating a sequence used for communicating information associated with an application
EP3400526A1 (en) * 2016-05-17 2018-11-14 Google LLC Constraints-based layout system for efficient layout and control of user interface elements
CN106484754B (zh) * 2016-07-28 2019-08-23 西安交通大学 基于层次数据与图数据可视化技术的知识森林布局方法
CN107577490A (zh) * 2017-08-03 2018-01-12 武汉斗鱼网络科技有限公司 一种iOS中的视图自动布局方法及装置
CN108108430B (zh) * 2017-12-18 2020-08-28 西安交通大学 一种基于Unity3D知识森林虚拟现实系统实现的方法
CN110795093B (zh) * 2018-08-01 2024-04-16 北京京东尚科信息技术有限公司 一种交互式视图生成方法和装置
CN111104111B (zh) * 2019-11-29 2022-11-22 苏宁云计算有限公司 一种树状Canvas画布的布局处理方法及装置
WO2021255806A1 (ja) * 2020-06-15 2021-12-23 日本電信電話株式会社 表示制御装置および表示制御方法
CN112115656B (zh) * 2020-09-23 2024-06-14 恒为科技(上海)股份有限公司 一种快速设置内存条约束的方法及装置
KR20220071001A (ko) * 2020-11-23 2022-05-31 세메스 주식회사 반도체 설비 배치 시뮬레이션 방법, 컴퓨터 시스템 및 비일시적 컴퓨터 판독가능 매체
CN117173000A (zh) * 2023-09-08 2023-12-05 广州市科帕电子科技有限公司 一种基于四进制编码的信息隐藏方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2127449C1 (ru) * 1993-06-21 1999-03-10 Электроник Дата Системз Корпорейшн Система и способ для улучшенного параметрического геометрического моделирования
WO2003052582A1 (en) * 2001-12-19 2003-06-26 Redbank Manor Pty Ltd Document display system and method
WO2004046972A1 (en) * 2002-11-18 2004-06-03 Typefi Systems Pty Ltd A method of formatting documents

Family Cites Families (144)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0057688A1 (en) 1980-08-13 1982-08-18 Comshare Incorporated A machine for generating graphic charts
US4531150A (en) 1982-11-05 1985-07-23 Konishiroku Photo Industry Co., Ltd. Image display system
US4686522A (en) 1985-02-19 1987-08-11 International Business Machines Corporation Method of editing graphic objects in an interactive draw graphic system using implicit editing actions
US5337402A (en) 1986-06-12 1994-08-09 Keiji Kitagawa Graphic data processing apparatus using displayed graphics for application program selection
JPS6438866A (en) 1987-08-05 1989-02-09 Hitachi Ltd Document editing device
US5214755A (en) * 1989-04-25 1993-05-25 Microsoft Corporation Document processing method and system
JPH03177964A (ja) 1989-12-07 1991-08-01 Toshiba Corp 文書整形装置
JP3093247B2 (ja) 1990-09-21 2000-10-03 株式会社東芝 プレゼンテーション支援環境システム
US5649216A (en) * 1991-05-17 1997-07-15 Joseph S. Sieber Method and apparatus for automated layout of text and graphic elements
CA2048039A1 (en) 1991-07-19 1993-01-20 Steven Derose Data processing system and method for generating a representation for and random access rendering of electronic documents
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US5426729A (en) 1992-06-24 1995-06-20 Microsoft Corporation Method and system for nonuniformly adjusting a predefined shape
AU5988394A (en) 1993-01-22 1994-08-15 Taligent, Inc. Flexible network system
JP2620576B2 (ja) 1993-04-15 1997-06-18 インターナショナル・ビジネス・マシーンズ・コーポレイション ユーザが要求したフォントに従ってグラフィカル・ユーザ・インターフェースを調節する方法及びシステム
DE69327948T2 (de) 1993-04-30 2000-10-26 Ibm Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm
US5909220A (en) 1993-05-10 1999-06-01 Sandow; Robin Interactive computerized image coloring systems and methods for processing combinations of color with automated subroutines and color standardization for diverse color systems
US5535134A (en) * 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
US5596691A (en) 1994-06-15 1997-01-21 Claris Corporation Computer system and method for manipulating the display of drawings
US5748964A (en) 1994-12-20 1998-05-05 Sun Microsystems, Inc. Bytecode program interpreter apparatus and method with pre-verification of data type restrictions
US5669006A (en) 1995-02-23 1997-09-16 International Business Machines Corporation Method for automatically obtaining spatial layout for multimedia presentations
US5619631A (en) 1995-06-07 1997-04-08 Binaryblitz Method and apparatus for data alteration by manipulation of representational graphs
US5673401A (en) 1995-07-31 1997-09-30 Microsoft Corporation Systems and methods for a customizable sprite-based graphical user interface
US5999189A (en) 1995-08-04 1999-12-07 Microsoft Corporation Image compression to reduce pixel and texture memory requirements in a real-time image generator
US5872867A (en) 1995-08-04 1999-02-16 Sarnoff Corporation Method and apparatus for generating image textures
JPH09109351A (ja) 1995-10-16 1997-04-28 Toppan Printing Co Ltd 表示情報レイアウト装置
US7124359B2 (en) * 1996-01-11 2006-10-17 Canon Kabushiki Kaisha Image edit device adapted to rapidly lay-out photographs into templates with means for preview and correction by user
US6173286B1 (en) * 1996-02-29 2001-01-09 Nth Degree Software, Inc. Computer-implemented optimization of publication layouts
US5818447A (en) 1996-06-06 1998-10-06 Microsoft Corporation System and method for in-place editing of an electronic mail message using a separate program
US6057858A (en) 1996-08-07 2000-05-02 Desrosiers; John J. Multiple media fonts
US5903902A (en) * 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
US5956737A (en) 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
AU4334197A (en) * 1996-09-09 1998-03-26 Design Intelligence, Inc. Automatic layout and formatting of content for a design in medium
US5973692A (en) 1997-03-10 1999-10-26 Knowlton; Kenneth Charles System for the capture and indexing of graphical representations of files, information sources and the like
US6061659A (en) 1997-06-03 2000-05-09 Digital Marketing Communications, Inc. System and method for integrating a message into a graphical environment
US6288726B1 (en) 1997-06-27 2001-09-11 Microsoft Corporation Method for rendering glyphs using a layout services library
US6321243B1 (en) 1997-06-27 2001-11-20 Microsoft Corporation Laying out a paragraph by defining all the characters as a single text run by substituting, and then positioning the glyphs
US5956043A (en) 1997-09-18 1999-09-21 Novell, Inc. Textured tile rotation system and method
US6774899B1 (en) * 1997-09-18 2004-08-10 Mitsubishi Electric Research Laboratories, Inc. Drawing graphs using user selectable visual oragnization features and/or other user controlled constraints
AU761202B2 (en) 1997-09-22 2003-05-29 Sony Corporation Generation of a bit stream containing binary image/audio data that is multiplexed with a code defining an object in ascii format
US6289502B1 (en) 1997-09-26 2001-09-11 Massachusetts Institute Of Technology Model-based software design and validation
US6204859B1 (en) 1997-10-15 2001-03-20 Digital Equipment Corporation Method and apparatus for compositing colors of images with memory constraints for storing pixel data
KR100243385B1 (ko) 1997-10-28 2000-02-01 정선종 멀티미디어 프리젠테이션 문서 작성 방법
US6072480A (en) 1997-11-05 2000-06-06 Microsoft Corporation Method and apparatus for controlling composition and performance of soundtracks to accompany a slide show
AUPP027397A0 (en) 1997-11-07 1997-12-04 Documotion Research, Inc. Tamper-evident form for securely carrying confidential information
JP3377419B2 (ja) 1997-11-11 2003-02-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 命令列生成方法及び装置、変換方法、及びコンピュータ
US6289505B1 (en) 1997-11-18 2001-09-11 Sun Microsystems, Inc. Method, apparatus and computer programmed product for binary re-optimization using a high level language compiler
RU2142162C1 (ru) 1998-01-19 1999-11-27 Кашик Алексей Сергеевич Способ динамической визуализации данных об объекте
US6081816A (en) * 1998-03-18 2000-06-27 Microsoft Corporation Method for placing text around polygons and other constraints
US6189132B1 (en) * 1998-04-09 2001-02-13 International Business Machines Corporation Design rule correction system and method
WO1999056192A2 (en) 1998-04-24 1999-11-04 Starmine Corporation Security analyst performance tracking and analysis system and method
US6256650B1 (en) 1998-05-18 2001-07-03 Microsoft Corporation Method and system for automatically causing editable text to substantially occupy a text frame
US6301704B1 (en) 1998-06-16 2001-10-09 Silicon Graphics, Inc. Method, system, and computer program product for using static single assignment form as a program representation and a medium for performing global scalar optimization
US6405225B1 (en) 1998-06-17 2002-06-11 Microsoft Corporation Integrating email functionality into a word processor by incorporating an email GUI within the word processor
US6204849B1 (en) 1998-07-17 2001-03-20 Autodesk, Inc. Non-ambiguous graphics selection
US6166738A (en) 1998-09-14 2000-12-26 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects
US6161098A (en) 1998-09-14 2000-12-12 Folio (Fn), Inc. Method and apparatus for enabling small investors with a portfolio of securities to manage taxable events within the portfolio
US6715130B1 (en) 1998-10-05 2004-03-30 Lockheed Martin Corporation Software requirements metrics and evaluation process
US6305012B1 (en) 1998-12-03 2001-10-16 International Business Machines Corporation Method and apparatus for dynamic selection of instructions for compiling using tags
US6957191B1 (en) 1999-02-05 2005-10-18 Babcock & Brown Lp Automated financial scenario modeling and analysis tool having an intelligent graphical user interface
US6456305B1 (en) 1999-03-18 2002-09-24 Microsoft Corporation Method and system for automatically fitting a graphical display of objects to the dimensions of a display window
US6308322B1 (en) 1999-04-06 2001-10-23 Hewlett-Packard Company Method and apparatus for reduction of indirect branch instruction overhead through use of target address hints
US6691282B1 (en) 1999-06-22 2004-02-10 Nortel Networks Limited Method and apparatus for displaying and navigating containment hierarchies
US6667750B1 (en) * 1999-07-30 2003-12-23 Curl Corporation Multiple pass layout of graphical objects with elastics
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US7246316B2 (en) 1999-11-30 2007-07-17 Siebel Systems, Inc. Methods and apparatus for automatically generating presentations
EP1111543A3 (en) 1999-12-22 2002-11-27 Adobe Systems, Inc. Method and apparatus for painting groups of objects
US6593933B1 (en) 2000-01-13 2003-07-15 Microsoft Corporation Block-based synthesis of texture in computer rendered images
US6448973B1 (en) 2000-01-13 2002-09-10 Microsoft Corporation Virtual texture
US7055095B1 (en) 2000-04-14 2006-05-30 Picsel Research Limited Systems and methods for digital document processing
US20010032151A1 (en) 2000-04-18 2001-10-18 Glenn Paul Internet presentation system
US20010051962A1 (en) * 2000-06-08 2001-12-13 Robert Plotkin Presentation customization
US20020111969A1 (en) 2000-09-28 2002-08-15 Halstead Robert H. System and method for processing graphical objects for layout using an elastic difference operation
US7231602B1 (en) 2000-11-29 2007-06-12 Microsoft Corporation Live preview for reformatting document text
US20020065852A1 (en) 2000-11-30 2002-05-30 Matt Hendrickson Online guided resume creation system that allows dynamic style formatting
US6944830B2 (en) * 2000-12-21 2005-09-13 Xerox Corporation System and method for browsing hierarchically based node-link structures based on an estimated degree of interest
US6791582B2 (en) 2000-12-29 2004-09-14 International Business Machines Corporation Method and system for identifying and displaying information that is new or has been updated in a place
US6973618B2 (en) 2000-12-29 2005-12-06 International Business Machines Corporation Method and system for importing MS office forms
US6950981B2 (en) 2000-12-29 2005-09-27 International Business Machines Corporation Method and system for providing task information in a place
US6701311B2 (en) 2001-02-07 2004-03-02 International Business Machines Corporation Customer self service system for resource search and selection
US6941478B2 (en) 2001-04-13 2005-09-06 Nokia, Inc. System and method for providing exploit protection with message tracking
CN1384454A (zh) 2001-05-01 2002-12-11 株式会社东芝 信息概括系统和信息概括方法
JP2005514673A (ja) 2001-06-22 2005-05-19 オモイグイ,ノサ 知識の取得、管理、伝達、及び提示のシステム及び方法
US6826729B1 (en) 2001-06-29 2004-11-30 Microsoft Corporation Gallery user interface controls
US20040205602A1 (en) * 2001-07-25 2004-10-14 Douglas Croeni Page layout design using geometric interference schema
JP2003044464A (ja) 2001-07-31 2003-02-14 Seiko Epson Corp レイアウト装置及びレイアウトプログラム
JP2003052582A (ja) 2001-08-10 2003-02-25 Toshiba Tec Corp 掃除装置
EP1298524A1 (en) 2001-09-28 2003-04-02 Ricoh Company, Ltd. Conference support apparatus, information processor, teleconference system and computer product
RU2218602C2 (ru) 2001-11-08 2003-12-10 Карев Павел Викторович Способ цветокодового отображения переменных многопараметрических состояний системы или процесса
US20050001837A1 (en) 2002-03-01 2005-01-06 Shannon Michael P. Method and internet based software for graphing sport statistics
US20030218641A1 (en) 2002-05-23 2003-11-27 International Business Machines Corporation Method and system for navigating a hierarchical structure in a data processing system
TW578067B (en) 2002-06-21 2004-03-01 Inst Information Industry Knowledge graphic system and method based on ontology
US20040001106A1 (en) 2002-06-26 2004-01-01 John Deutscher System and process for creating an interactive presentation employing multi-media components
US6894726B2 (en) 2002-07-05 2005-05-17 Thomson Licensing S.A. High-definition de-interlacing and frame doubling circuit and method
US7010746B2 (en) * 2002-07-23 2006-03-07 Xerox Corporation System and method for constraint-based document generation
US7058902B2 (en) 2002-07-30 2006-06-06 Microsoft Corporation Enhanced on-object context menus
US20040041838A1 (en) 2002-09-04 2004-03-04 Adusumilli Venkata J.R.B. Method and system for graphing data
US7945846B2 (en) 2002-09-06 2011-05-17 Oracle International Corporation Application-specific personalization for data display
US20040145603A1 (en) 2002-09-27 2004-07-29 Soares Stephen Michael Online multimedia presentation builder and presentation player
KR100504476B1 (ko) 2002-10-30 2005-08-01 엘지전자 주식회사 아이콘 제어를 위한 방법 및 디스플레이 시스템
KR20040041979A (ko) * 2002-11-12 2004-05-20 한국전자통신연구원 그래픽 사용자 인터페이스
KR100484181B1 (ko) 2002-12-02 2005-04-20 삼성전자주식회사 멀티미디어 문서 저작 장치 및 방법
CA2414047A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method of extending scalable vector graphics capabilities
JP4241325B2 (ja) * 2002-12-25 2009-03-18 セイコーエプソン株式会社 レイアウトシステム
TW562221U (en) 2002-12-27 2003-11-11 Hon Hai Prec Ind Co Ltd Mounting device for disk drive
US20040133854A1 (en) * 2003-01-08 2004-07-08 Black Karl S. Persistent document object model
WO2004068320A2 (en) 2003-01-27 2004-08-12 Vincent Wen-Jeng Lue Method and apparatus for adapting web contents to different display area dimensions
KR100459507B1 (ko) 2003-02-15 2004-12-03 (주) 이모션 그래픽 컨텐츠를 제작하는 장치
US20040172584A1 (en) 2003-02-28 2004-09-02 Microsoft Corporation Method and system for enhancing paste functionality of a computer software application
US7325186B2 (en) 2003-02-28 2008-01-29 Microsoft Corporation Method and system for showing unannotated text nodes in a data formatted document
US7339598B2 (en) 2003-07-11 2008-03-04 Vistaprint Technologies Limited System and method for automated product design
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US20050034083A1 (en) 2003-08-05 2005-02-10 Denny Jaeger Intuitive graphic user interface with universal tools
US7548334B2 (en) * 2003-10-15 2009-06-16 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
US20050091584A1 (en) 2003-10-23 2005-04-28 Microsoft Corporation Methods for applying styles to visual aspects of user interface elements
GB2407677A (en) 2003-10-31 2005-05-04 Hewlett Packard Development Co Post-rendering document space based on rules
US7178102B1 (en) 2003-12-09 2007-02-13 Microsoft Corporation Representing latent data in an extensible markup language document
US7395510B2 (en) 2003-12-16 2008-07-01 Hewlett-Packard Development Company, L.P. Method of, and system for, adjusting a document configuration
US7536048B2 (en) 2004-01-15 2009-05-19 Xerox Corporation Method and apparatus for automatically determining image foreground color
JP2005275890A (ja) 2004-03-25 2005-10-06 Nec Corp プレゼンス情報発行装置およびシステムならびにプログラム
WO2005103935A1 (en) 2004-04-26 2005-11-03 Creo Inc. Systems and methods for comparing documents containing graphic elements
US20050289466A1 (en) 2004-06-24 2005-12-29 Kaihu Chen Multimedia authoring method and system using bi-level theme templates
US20060064642A1 (en) 2004-09-22 2006-03-23 Edurite Technologies Pvt. Ltd. Seamless presentation integrator
US8510657B2 (en) 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US8134575B2 (en) 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US7348982B2 (en) 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US7209815B2 (en) 2004-12-28 2007-04-24 Snap-On Incorporated Test procedures using pictures
US7478079B2 (en) 2005-01-14 2009-01-13 Microsoft Corporation Method for displaying a visual representation of mapping between a source schema and a destination schema emphasizing visually adjusts the objects such that they are visually distinguishable from the non-relevant and non-selected objects
US7743325B2 (en) 2005-03-15 2010-06-22 Microsoft Corporation Method and computer-readable medium for fitting text to shapes within a graphic
US7750924B2 (en) 2005-03-15 2010-07-06 Microsoft Corporation Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
US20060277476A1 (en) 2005-06-02 2006-12-07 Hsuan-Cheng Lai Method and system for dynamic generation of graphical content using a markup language
US7555711B2 (en) * 2005-06-24 2009-06-30 Hewlett-Packard Development Company, L.P. Generating a text layout boundary from a text block in an electronic document
US7747944B2 (en) 2005-06-30 2010-06-29 Microsoft Corporation Semantically applying style transformation to objects in a graphic
EP1907948B1 (en) 2005-07-20 2011-10-19 Obigo Korea Co., Ltd. Method and arrangement in a display system
US7423646B2 (en) 2005-11-08 2008-09-09 Microsoft Corporation Smart shape insert
US8042065B2 (en) 2005-11-17 2011-10-18 Microsoft Corporation Smart copy/paste of graphical nodes
US8438486B2 (en) 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
CN101231645B (zh) 2007-01-23 2012-03-28 鸿富锦精密工业(深圳)有限公司 树型目录动态展现系统及方法
US7949948B2 (en) 2007-05-09 2011-05-24 Microsoft Corporation Constraint and rule-based page layout
US8225278B2 (en) 2007-05-14 2012-07-17 International Business Machines Corporation Method of visualizing modifications of a hierarchical state diagram
US8479218B2 (en) 2007-07-09 2013-07-02 National Instruments Corporation Automatically arranging objects in a graphical program block diagram
US8826174B2 (en) 2008-06-27 2014-09-02 Microsoft Corporation Using visual landmarks to organize diagrams
US8176412B2 (en) 2009-08-25 2012-05-08 International Business Machines Corporation Generating formatted documents
US8799325B2 (en) 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2127449C1 (ru) * 1993-06-21 1999-03-10 Электроник Дата Системз Корпорейшн Система и способ для улучшенного параметрического геометрического моделирования
WO2003052582A1 (en) * 2001-12-19 2003-06-26 Redbank Manor Pty Ltd Document display system and method
WO2004046972A1 (en) * 2002-11-18 2004-06-03 Typefi Systems Pty Ltd A method of formatting documents

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2624558C2 (ru) * 2013-01-31 2017-07-04 Сяоми Инк. Способ, терминал и сервер для подгонки полей файла

Also Published As

Publication number Publication date
TWI379253B (en) 2012-12-11
EP1643452B1 (en) 2019-06-19
JP4921744B2 (ja) 2012-04-25
US20140292767A1 (en) 2014-10-02
MXPA05009276A (es) 2006-04-05
BRPI0503982A (pt) 2006-05-09
US7348982B2 (en) 2008-03-25
AU2005203708A1 (en) 2006-04-13
ZA200506944B (en) 2007-05-30
US20080136822A1 (en) 2008-06-12
US8791955B2 (en) 2014-07-29
US20060066631A1 (en) 2006-03-30
KR20060050408A (ko) 2006-05-19
CA2517409A1 (en) 2006-03-30
CN100478876C (zh) 2009-04-15
EP1643452A1 (en) 2006-04-05
MY149288A (en) 2013-08-15
JP2006107465A (ja) 2006-04-20
US10319125B2 (en) 2019-06-11
US9747710B2 (en) 2017-08-29
TW200612356A (en) 2006-04-16
AU2005203708B2 (en) 2010-07-08
US20170301122A1 (en) 2017-10-19
BRPI0503982B1 (pt) 2018-01-16
KR101433936B1 (ko) 2014-08-27
RU2005130361A (ru) 2007-04-10
CN1755623A (zh) 2006-04-05
CA2517409C (en) 2013-12-24

Similar Documents

Publication Publication Date Title
RU2383929C2 (ru) Способ, система и считываемая компьютером среда для создания и компоновки графики в прикладной программе
JP5336569B2 (ja) グラフィック内の形状にテキストをフィットさせるための方法およびコンピュータ可読媒体
US7191394B1 (en) Authoring arbitrary XML documents using DHTML and XSLT
JP4869630B2 (ja) コンテンツを開始テンプレートとターゲットテンプレートとの間でマップするための方法およびシステム
US20100199167A1 (en) Document processing apparatus
JP2014505303A (ja) 複数の表現を使用する文書記憶
US7750924B2 (en) Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
WO2006137565A1 (ja) 文書処理装置及び文書処理方法
RU2449373C2 (ru) Редактирование текста в трехмерной графике
US20090021767A1 (en) Document processing device
JP2007532997A (ja) オブジェクトおよびエンティティの表示を構築するための方法および装置
CN119250036A (zh) 基于富文本数据的文档处理方法、装置、计算机设备、介质和产品
WO2005098662A1 (ja) 文書処理装置及び文書処理方法
US20100077295A1 (en) Document processing device and document processing module
AU2020200471A1 (en) Web Application Builder
JP7298413B2 (ja) 操作画面作成装置、操作画面作成方法及びプログラム
CN101203848A (zh) 文档处理装置和文档处理方法
HK1089851B (en) Method, system, and computer-readable medium for creating and laying out a graphic within an application program
HK1089851A (en) Method, system, and computer-readable medium for creating and laying out a graphic within an application program
Dickson Advanced animation in mathematica

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150526

MM4A The patent is invalid due to non-payment of fees

Effective date: 20200930