RU2258265C2 - Автоматическая оптимизация расположения ножек символов текста - Google Patents

Автоматическая оптимизация расположения ножек символов текста Download PDF

Info

Publication number
RU2258265C2
RU2258265C2 RU2002129894/09A RU2002129894A RU2258265C2 RU 2258265 C2 RU2258265 C2 RU 2258265C2 RU 2002129894/09 A RU2002129894/09 A RU 2002129894/09A RU 2002129894 A RU2002129894 A RU 2002129894A RU 2258265 C2 RU2258265 C2 RU 2258265C2
Authority
RU
Russia
Prior art keywords
image
subcomponents
symbol
image elements
image data
Prior art date
Application number
RU2002129894/09A
Other languages
English (en)
Other versions
RU2002129894A (ru
Inventor
Бит СТЭММ (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 RU2002129894A publication Critical patent/RU2002129894A/ru
Application granted granted Critical
Publication of RU2258265C2 publication Critical patent/RU2258265C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/203Drawing of straight lines or curves
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • G09G5/28Generation of individual character patterns for enhancement of character form, e.g. smoothing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0457Improvement of perceived resolution by subpixel rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/34Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
    • G09G3/36Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals
    • G09G3/3607Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals for displaying colours or for displaying grey scales with a specific pixel layout, e.g. using sub-pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Liquid Crystal Display Device Control (AREA)

Abstract

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

Description

Область техники, к которой относится изобретение
Настоящее изобретение относится к системам и способам отображения изображений на устройстве отображения. Более конкретно, настоящая информация относится к системам и способам отображения символов текста на устройстве отображения, имеющем отдельно управляемые подкомпоненты элементов изображения (пикселей), с выбираемыми краями символов, помещаемыми на границах высокого контраста подкомпонентов элементов изображения.
Предшествующий уровень техники
Ключевым аспектом многих технологий, особенно компьютерных, является требование визуального взаимодействия с конечным пользователем. Фактически, данные и информация, отображаемая с помощью многих прикладных программ, специально предназначены для того, чтобы иметь визуально приятный и эстетический внешний вид. Текстовые редакторы, например, обычно стремятся имитировать реальный лист бумаги, заставляя экран отображать графическое изображение листа бумаги. Когда текстовой редактор создает документ, текст и изображения размещаются на графическом листе бумаги по мере их появления при физической визуализации. Поэтому визуальное взаимодействие конечного пользователя с устройством отображения является неотъемлемой частью многих технологий.
Важным аспектом визуального взаимодействия с конечным пользователем является возможность отображать цвет. Типичное устройство отображения имеет экран, имеющий большое количество элементов изображения, и каждый элемент изображения обычно содержит красный, зеленый и синий подэлементы изображения. Поскольку элементы изображения являются относительно маленькими, различаемый человеческим глазом цвет представляет собой смесь красного, зеленого и синего света каждого элемента изображения. Посредством изменения интенсивности красного, зеленого и синего света устройство отображения потенциально способно отображать миллионы различных цветов.
Обычным устройством отображения, используемым для отображения цвета, является устройство отображения на электронно-лучевой трубке (ЭЛТ). Элементы изображения устройства отображения на ЭЛТ расположены в конкретной конфигурации, где каждый элемент изображения состоит из трех люминофоров, которые испускают свет при возбуждении лучом электронов. Для устройств отображения на ЭЛТ величины интенсивности света, задаваемые для люминофоров, рассчитываются вместе, и три люминофора в элементе изображения управляются вместе, чтобы произвести в элементе изображения цвет, воспринимаемый пользователем, как имеющий выбранный цветовой тон, интенсивность и насыщенность.
Другое устройство отображения, которое обычно используется для портативных компьютеров, представляет собой жидкокристаллический дисплей (ЖКД). Устройства отображения на ЖКД являются предпочтительными по сравнению с устройствами отображения на ЭЛТ во многих случаях, прежде всего потому, что устройства отображения на ЖКД обычно имеют меньший размер, меньший вес и потребляют меньшее количество электроэнергии, чем имеющие сравнительно такие же размеры устройства отображения на ЭЛТ. В компьютерах, в которых электропитание осуществляется от аккумуляторных батарей, это является существенным преимуществом. Технология устройств отображения на ЖКД позволяет им конкурировать с устройствами отображения на ЭЛТ в отношении четкости и разрешающей способности.
Однако между устройствами отображения на ЖКД и ЭЛТ существует несколько различий. Элементы изображения устройств отображения на ЖКД, в отличие от элементов изображения устройств отображения на ЭЛТ, состоят из множества подкомпонентов элементов изображения (обычно трех), которые отдельно адресуются и по существу отдельно управляются. Кроме того, элементы изображения в устройстве отображения на ЖКД обычно располагают так, что они образуют горизонтальные или вертикальные полосы из подкомпонентов элементов изображения одного и того же цвета, тогда как конфигурация люминофоров в элементе изображения устройства отображения на ЭЛТ часто бывает треугольной. В большинстве устройств отображения на ЖКД, используемых с портативными компьютерами, подкомпоненты элементов изображения расположены вертикально, что приводит к красным, зеленым и синим вертикальным полосам подкомпонентов элементов изображения одного и того же цвета. Другие устройства отображения на ЖКД имеют подкомпоненты элементов изображения, расположенные так, что образуют красные, зеленые и синие горизонтальные полосы из подкомпонентов элементов изображения одного и того же цвета. Можно использовать другие конфигурации, но вертикальные и горизонтальные расположения являются наиболее обычными.
Способность устройства отображения на ЖКД или другого устройства отображения обеспечивать высокую разрешающую способность зависит отчасти от размера и количества элементов изображения в устройстве отображения на ЖКД, и во многих ситуациях разрешение устройств отображения на ЖКД не достаточна для обеспечения плавно очерченных или визуализированных символов текста на устройстве отображения на ЖКД. Ограниченное разрешение устройства отображения на ЖКД может иметь существенное визуальное воздействие на пользователя, когда текст или данные изображения визуализируются на ЖКД или другом устройстве отображения.
В частности, символы текста или шрифтовые комплекты представляют исключительные проблемы. Технология позволяет сохранять шрифт в компьютере с высоким разрешением, и когда символ с высоким разрешением визуализируется на устройстве отображения с низким разрешением или грубом устройстве отображения (с малым числом строк), символ подгоняется к сетке элементов изображения устройства отображения. Это приводит к потере информации, касающейся символов, и часто ставит под угрозу форму символов, что противоречит намерению художника-шрифтовика.
Более конкретно, когда символ визуализируется на устройстве отображения или сеткой элементов изображения с низким разрешением, некоторые части символа, поскольку он хранится в электронном устройстве, могут не попадать точно на границы элементов изображения. В результате, форма символа сильно изменяется, приспосабливаясь к границам элементов изображения в сетке элементов изображения. Окончательное воздействие на символ заключается в том, что символ может оказаться смещенным в некотором направлении или ножки, засечки и другие детали символа могут быть несколько толще или тоньше, чем первоначально разработанные художником-шрифтовиком.
Обычный процесс визуализации текста, который приводит к тому, что символы текста отображаются на устройствах отображения, был первоначально разработан для соответствия модели ЭЛТ элементов изображения, имеющих три люминофора, которые управляются вместе, чтобы отображать один цвет и представлять одну часть изображения. С появлением больших количеств портативных персональных компьютеров, существующий процесс визуализации текста, разработанный для устройств отображения на ЭЛТ, просто применили непосредственно для устройств отображения на ЖКД. Такой обычный процесс визуализации текста, когда применяется для устройств отображения на ЖКД, использует каждый элемент изображения для представления одной части изображения и не пользуется преимуществом свойства отдельной адресуемости подкомпонентов элементов изображения.
Ввиду вышеизложенного, в технике имеется необходимость в технических приемах визуализации текста на устройствах отображения на ЖКД, которые могут улучшить разрешение текста. Желательно обеспечить системы и способы, способные увеличивать удобочитаемость текста и уменьшать искажение символов, которое прежде возникало из-за изменения положения краев символов на границах целых элементов изображения устройств отображения на ЖКД.
Краткое изложение сущности изобретения
Настоящее изобретение относится к системам и способам визуализации текста и других изображений на устройствах отображения на ЖКД или других устройствах отображения, имеющих элементы изображения с отдельно управляемыми подкомпонентами элемента изображения. В соответствии с изобретением, отдельные подкомпоненты элементов изображения представляют разные части символа текста или другого изображения вместо того, чтобы целый элемент изображения представлял единую часть. Это выполняют посредством отображения пространственно различных наборов одной или более выборок данных изображения в отдельные подкомпоненты элементов изображения. Поскольку подкомпоненты элементов изображения адресуются и управляются отдельно, устройство отображения на ЖКД, используемое согласно изобретению, визуализирует изображения с улучшенным разрешением по сравнению с разрешением, обеспечиваемым с помощью обычных процессов визуализации.
Хотя принципы изобретения можно использовать для визуализирования любого изображения, изобретение описано здесь прежде всего в контексте символов текста. В качестве части изобретения, данные символов хинтуют, или подгоняют к сетке так, чтобы выбранные края символа попадали на границы высокого контраста между подкомпонентами элементов изображения, тем самым дополнительно улучшая внешний вид и удобочитаемость текста. Таким образом, не только части символа отображаются с разрешением подэлементов изображения, но выбранные края символа также располагаются таким образом, чтобы уменьшить ошибки цветной окантовки (ореола) или эффекты, которым они подвергались в противном случае.
Процесс хинтования по изобретению включает в себя анализ топологии контура символа во время выполнения процесса, с целью идентификации краев символа, которые подлежат перемещению к границам высокого контраста между подкомпонентами элементов изображения. Хотя изобретение распространяется на прямой и полный анализ топологии символа, часто более эффективно в вычислительном отношении анализировать части определения символа в файле шрифтов, с целью идентификации контрольных точек на символе, которые следует подогнать к границам высокого контраста, и промежутков между контрольными точками.
Дополнительные преимущества изобретения будут сформулированы в нижеследующем описании и частично станут очевидными из описания, или их можно изучить путем практического применения изобретения. Преимущества изобретения можно реализовать и получить посредством инструментальных средств и комбинаций, в частности, указанных в прилагаемой формуле изобретения. Эти и другие особенности настоящего изобретения станут более очевидными из нижеследующего описания и прилагаемой формулы изобретения или они могут быть изучены путем практического применения изобретения, как сформулировано ниже.
Краткое описание чертежей
Для того, чтобы получить способ, при котором достигаются вышеупомянутые и другие преимущества изобретения, представлено более конкретное описание изобретения, кратко описанного выше, со ссылками на его определенные варианты осуществления, которые иллюстрируются на прилагаемых чертежах. Следует понимать, что эти чертежи изображают только типичные варианты осуществления изобретения и не должны рассматриваться как ограничивающие его возможности. Изобретение описано и пояснено дополнительными особенностями и деталями с помощью прилагаемых чертежей, на которых:
фиг.1 иллюстрирует примерную систему, которая обеспечивает подходящую операционную среду для настоящего изобретения;
фиг.2а и 2b изображают часть устройства отображения на ЖКД и показывают отдельно управляемые подкомпоненты элементов изображения устройства отображения на ЖКД;
фиг.3 представляет блок-схему, иллюстрирующую процесс визуализации или растеризации данных изображения на устройстве отображения;
фиг.4а представляет иллюстрацию символа до его расположения на границах элементов изображения;
фиг.4b представляет иллюстрацию символа после его расположения на границах элементов изображения;
фиг.4с представляет иллюстрацию символа после его фазового регулирования и выравнивания ножек по границам высокого контраста подкомпонентов элементов изображения;
фиг.5а представляет иллюстрацию промежутков и размеров, связанных с символом;
фиг.5b представляет иллюстрацию ориентированного ациклического графа, используемого для представления промежутков, связанных с символом;
фиг.6 представляет иллюстрацию контура и контрольных точек, которые определяют символ;
фиг.7 представляет блок-схему процесса хинтования; и
фиг.8 представляет более подробную блок-схему, иллюстрирующую способ фазового регулирования символа.
Подробное описание предпочтительных вариантов осуществления
Одной из основных проблем, связанных с отображением информации, такой как текст, на экране устройства отображения, является то, что устройство отображения имеет крупную сетку элементов изображения, имеющую разрешение, которая значительно ниже разрешения информации, подлежащей отображению. В результате этого несоответствия, процесс визуализации или растеризации обычно искажает и ухудшает отображаемую информацию. В случае текста, формы символов изменяются так, чтобы "вписать" их в сетку элементов изображения устройства отображения. На визуальное представление и разборчивость текста или другой информации на экране частично направлен процесс хинтования или указаний, который направлен на решение проблем разборчивости цвета, удобочитаемости, промежутков, плотности, выравнивания строк, симметрии и фактических форм растровых изображений каждого символа, выравнивая типографские характеристики символов в шрифте по границам элементов изображения или подкомпонентов элементов изображения.
В случае черного текста на белом фоне и других комбинаций, цвет относится к балансу между черным и белым на экране. Ровный и постоянный цвет приводит к более разборчивому тексту. На цвет влияет контраст между плотностью толстых и тонких ножек, размер промежутка, который является внутренним в символах, плавность диагонального штриха и другие факторы. Ровный цвет меньше отвлекает внимание читателя. Хинтование улучшает баланс между белым и черным на устройстве отображения, так что отображаемое изображение приближается к ровному цвету.
Удобочитаемость относится к идентифицируемости конкретного символа. Совокупности символов, которые часто упоминаются как шрифтовые комплекты ("шрифты"), обычно содержат множество глифов (образов символов в битовой карте) или символов, которые представлены одним или больше контурами. При низких значениях разрешения и небольших размерах шрифта трудно разборчиво представлять символ и часто бывает необходимо изменить растровое изображение, которое представляет глиф или символ. Надлежащий промежуток также вносит вклад в разборчивость, особенно при низких значениях разрешения. Неподходящий промежуток обычно возникает из-за того, что контур символа обычно округляется в большую или меньшую сторону, чтобы приспосабливаться к сетке элементов изображения с низким разрешением устройства отображения. Однако, данные текста являются более разборчивыми, если промежуток между символами и между словами читателю кажется постоянным.
Плотность символа в общем относится к толщине символа и элементов символа. Например, шрифт, который является жирным, имеет большую плотность, чем тот же самый шрифт, который не является жирным. Большая часть трудностей в отношении плотности возникает между прописными буквами и строчными буквами. Неравная плотность может привести к тому, что прописные буквы будут привлекать к себе слишком много внимания или к невозможности отличать заголовки от текста.
Выравнивание (линирование) строки относится к высотности или высоте элементов изображения символов. Символы следует сохранять выровненными, особенно при маленьких размерах, где разница в высоте элементов изображения более заметна, потому что текст, который должным образом не выровнен, кажется волнистым и отвлекает читателя. Симметрия символа обычно представляет собой проблему, связанную с символами, имеющими диагональные элементы (штрихи), хотя симметрия является проблемой, которая относится к символам, имеющим другие типы элементов, включая закругленные кривые. Управление симметрией может улучшать внешний вид отдельных символов и усиливать тон текста. В целом, хинтование шрифта или символа улучшает разборчивость и внешний вид шрифта, как описано выше.
Ниже изобретение описано посредством использования диаграмм для иллюстрирования либо структуры, либо обработки вариантов осуществления, применяемых для реализации систем и способов по настоящему изобретению. Использование диаграмм таким образом для представления изобретения не следует рассматривать, как ограничение его объема. Настоящее изобретение охватывает и способы, и системы для автоматической оптимизации размещения типографских деталей по границам высокого контраста.
I. Пример вычислительного и аппаратного окружения
Варианты осуществления настоящего изобретения могут содержать специализированный или универсальный компьютер, включающий в себя различные аппаратные средства вычислительной системы, как более подробно описано ниже.
Варианты осуществления в объеме настоящего изобретения также включают в себя пригодный для считывания компьютером носитель информации для переноса или хранения выполняемых компьютером команд или структур данных, хранящихся на нем. Таким пригодным для считывания компьютером носителем информации может быть любой доступный носитель информации, к которому может обращаться специализированный или универсальный компьютер. Посредством примера, а не в качестве ограничения, такой пригодный для считывания компьютером носитель информации может содержать ОЗУ (оперативное запоминающее устройство), ПЗУ (постоянное запоминающее устройство), ЭСППЗУ (электрически стираемое программируемое ПЗУ), ПЗУ на компакт-диске или другие устройства носителей на оптических дисках, носители на магнитных дисках или других магнитных запоминающих устройствах, или любой другой носитель информации, который можно использовать для переноса или хранения требуемых средств программного кодирования в форме выполняемых компьютером команд или структур данных, и к которому может обращаться специализированный или универсальный компьютер. Когда информация передается или обеспечивается по сети или другому каналу связи (либо проводному, беспроводному, либо по комбинации проводных или беспроводных каналов связи) для компьютера, компьютер должным образом рассматривает соединение как пригодный для считывания компьютером носитель информации. Таким образом, любое такое соединение (связь) должным образом называется пригодным для считывания компьютером носителем информации. Комбинации вышеупомянутых носителей информации также должны быть включены в число пригодных для считывания компьютером носителей информации. Выполняемые компьютером команды содержат, например, команды и данные, которые заставляют универсальный компьютер, специализированный компьютер или специализированное устройство для обработки выполнять определенную функцию или группу функций.
Фиг.1 и последующее описание предназначены для обеспечения краткого, общего описания подходящей вычислительной среды, в которой может быть воплощено изобретение. Хотя это не требуется, изобретение описано в общем контексте выполняемых компьютером команд, таких как программные модули, выполняемые компьютерами в сетевых средах. Обычно программные модули включают в себя операции, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Выполняемые компьютером команды, связанные структуры данных и программные модули представляют собой примеры средств программного кодирования для выполнения этапов раскрытых здесь способов. Конкретная последовательность таких выполняемых команд или связанных структур данных представляет примеры соответствующих действий для осуществления функций, описанных в таких этапах.
Специалистам в данной области техники должно быть понятно, что изобретение может быть осуществлено в сетевых вычислительных средах с многими типами конфигураций вычислительных систем, включая персональные компьютеры, переносные устройства, многопроцессорные системы, основанную на микропроцессоре или программируемую бытовую электронику, сетевые персональные компьютеры, миникомпьютеры, универсальные ЭВМ и т.п. Изобретение также можно осуществлять в распределенных вычислительных средах, где задачи выполняются локальными и удаленными устройствами для обработки, которые связаны (либо посредством проводных линий связи, беспроводных линий связи, либо посредством комбинации проводных или беспроводных линий связи) через коммуникационную сеть. В распределенной вычислительной среде программные модули могут быть расположены и в локальных, и в удаленных запоминающих устройствах.
Рассмотрим фиг.1, на которой примерная система для воплощения изобретения включает в себя универсальное вычислительное устройство в форме обычного компьютера 20, включающего в себя блок 21 обработки, системную память 22 и системную шину 23, которая подсоединяет различные компоненты системы, включая системную память 22, к блоку 21 обработки. Системная шина 23 может иметь любую из нескольких типов шинных структур, включая шину памяти или контроллера памяти, периферийную шину и локальную шину, используя любую из множества шинных архитектур. Системная память включает в себя постоянное запоминающее устройство (ПЗУ) 24 и оперативное запоминающее устройство (ОЗУ) 25. Базовая система ввода/вывода (БСВВ, BIOS) 26, содержащая основные операции, которые помогают передавать информацию между элементами в пределах компьютера 20, например, во время загрузки, может храниться в ПЗУ 24.
Компьютер 20 также может включать в себя накопитель (привод) 27 на жестких магнитных дисках, предназначенный для считывания с жесткого магнитного диска 39 и записи на него, накопитель (привод) 28 на магнитных дисках для считывания со сменного магнитного диска 29 или записи на него и накопитель (привод) 30 на оптических дисках для считывания со сменного оптического диска 31 или записи на него, типа ПЗУ на компакт-диске, компакт-диска с однократной записью, компакт-диска с многократной перезаписью или других оптических носителей информации. Накопитель 27 на жестких магнитных дисках, накопитель 28 на магнитных дисках и накопитель 30 на оптических дисках связаны с системной шиной 23 с помощью устройства сопряжения (интерфейса) 32 накопителя на жестких дисках, устройства сопряжения (интерфейса) 33 накопителя на магнитных дисках и устройства сопряжения (интерфейса) 34 накопителя на оптических дисках, соответственно. Накопители и связанные с ними пригодные для считывания компьютером носители информации обеспечивают энергонезависимое запоминающее устройство выполняемых компьютером команд, структур данных, программных модулей и других данных для компьютера 20. Хотя описанное здесь примерное окружение использует магнитный жесткий диск 39, сменный магнитный диск 29 и сменный оптический диск 31, для хранения данных можно использовать другие типы пригодных для считывания компьютером носителей информации, включая магнитные кассеты, карты флэш-памяти, цифровые видеодиски, картриджи Бернулли, устройства ОЗУ, ПЗУ и т.п.
Средство программного кодирования, содержащее один или больше программных модулей, может храниться на жестком диске 39, магнитном диске 29, оптическом диске 31, ПЗУ 24 или ОЗУ 25, включая операционную систему 35, одну или более прикладных программ 36, другие программные модули 37 и программные данные 38. Пользователь может вводить команды и информацию в компьютер 20 через клавиатуру 40, координатно-указательное устройство 42 или другие устройства ввода (не показанные), типа микрофона, джойстика, игровой вспомогательной клавиатуры, спутниковой антенны, сканера или аналогичного устройства. Эти и другие устройства ввода часто соединяют с блоком 21 обработки через устройство 46 сопряжения (интерфейс) последовательного порта, подсоединенное к системной шине 23. В качестве альтернативы, устройства ввода могут быть подсоединены посредством других устройств сопряжения, типа параллельного порта, игрового порта или универсальной последовательной шины (УПШ, USB). Монитор 47 или другое устройство отображения также связано с системной шиной 23 через устройство сопряжения, типа видеоадаптера 48. В дополнение к монитору, персональные компьютеры обычно включают в себя другие периферийные выходные устройства (не показанные), типа громкоговорителей и принтеров.
Компьютер 20 может работать в сетевой среде, используя логические соединения с одним или более удаленными компьютерами, типа удаленных компьютеров 49а и 49b. Каждый из удаленных компьютеров 49а и 49b может быть другим персональным компьютером, сервером, маршрутизатором, сетевым персональным компьютером, одноранговым устройством или другим общесетевым узлом и обычно включает в себя многие или все элементы, описанные выше относительно компьютера 20, хотя на фиг.1 показаны только запоминающие устройства 50а и 50b и связанные с ними прикладные программы 36а и 36b. Логические соединения, изображенные на фиг.1, включают в себя локальную вычислительную сеть (ЛВС) 51 и глобальную сеть (ГС) 52, которые представлены здесь посредством примера, а не ограничения. Такие организации сетевой среды являются обычными в компьютерных сетях масштаба офиса или предприятия, интрасетях и Интернете.
При использовании в организации сетевой среды ЛВС компьютер 20 связан с локальной сетью 51 через сетевое устройство сопряжения или адаптер 53. При использовании в организации сетевой среды ГС компьютер 20 может включать в себя модем 54, беспроводную линию связи или другие средства для установления связи через глобальную сеть 52, типа Интернета. Модем 54, который может быть встроенным или внешним, подсоединен к системной шине 23 через устройство 46 сопряжения последовательного порта. В сетевой среде программные модули, изображенные относительно компьютера 20, или их части, могут храниться в удаленном запоминающем устройстве. Следует понимать, что показанные сетевые связи являются примерными, и можно использовать другие средства установления связи через глобальную сеть 52.
Фиг.2а и 2b иллюстрируют физические характеристики примерного устройства отображения на ЖКД, которое можно использовать для отображения символов, обрабатываемых с использованием операций хинтования по изобретению. Изображенная на фиг.2а часть ЖКД 70 включает в себя множество строк R1-R12 и множество столбцов С1-С16. В цветных ЖКД используется множество различно адресуемых элементов и подэлементов, упоминаемых здесь как элементы изображения и подкомпоненты элементов изображения, соответственно. Фиг.2b, которая иллюстрирует более подробно верхнюю левую часть ЖКД 70, демонстрирует соотношение между элементами изображения и подкомпонентами элементов изображения.
Каждый элемент изображения включает в себя три подкомпонента элемента изображения, иллюстрируемые, соответственно, как красный (R) подкомпонент 72, зеленый (G) подкомпонент 74 и синий (В) подкомпонент 76. Подкомпоненты элементов изображения не квадратные и расположены на ЖКД 70 так, что образуют вертикальные полосы из подкомпонентов элементов изображения одного и того же цвета. Полосы RGB обычно проходят по всей ширине или высоте экрана устройства отображения в одном направлении. Обычные устройства отображения на ЖКД, используемые в настоящее время в большинстве портативных компьютеров, имеют большую ширину, чем высоту, и в них имеется тенденция иметь полосы RGB, проходящие в вертикальном направлении, как показано на ЖКД 70. Примеры таких устройств, которые имеют большую ширину, чем высоту, имеют отношения столбцов к строкам, например, 640×480, 800×600 или 1024×768. Устройства отображения на ЖКД также изготавливают с подкомпонентами элементов изображения, расположенными в других конфигурациях, включая горизонтальные полосы подкомпонентов элементов изображения одного и того же цвета, зигзагообразные конфигурации или треугольные конфигурации. Кроме того, некоторые устройства отображения на ЖКД имеют элементы изображения с множеством подкомпонентов элементов изображения, отличающихся от трех подкомпонентов элементов изображения. Настоящее изобретение можно использовать с любым таким устройством отображения на ЖКД или плоскопанельным устройством отображения до тех пор, пока элементы изображения устройства отображения имеют отдельно управляемые подкомпоненты элементов изображения.
Набор подкомпонентов RGB элемента изображения составляет элемент изображения. Таким образом, термин "подкомпонент элемента изображения", как он используется здесь, относится к одному из множества отдельно управляемых элементов, которые включены в элемент изображения. Рассмотрим фиг.2b, на которой набор подкомпонентов 72, 74 и 76 элемента изображения образует отдельный элемент изображения. Другими словами, пересечение строки и столбца, например, пересечение строки R2 и столбца С1, представляет один элемент изображения, а именно (R2, С1). Кроме того, каждый подкомпонент 72, 74 и 76 элемента изображения представляет собой одну треть, или приблизительно одну треть, ширины элемента изображения, в то же время являясь равным по высоте или приблизительно равным высоте элемента изображения. Таким образом, три подкомпонента 72, 74 и 76 элемента изображения объединяются для образования одного по существу квадратного элемента изображения. Это отношение элемента изображения/подкомпонента можно использовать для визуализации изображений текста на устройстве отображения, как будет дополнительно пояснено ниже.
II. Хинтование и другие операции по обработке изображения
Фиг.3 представляет блок-схему, иллюстрирующую процесс растеризации или процесс визуализации текста на устройстве отображения. Процесс визуализации, изображенный на фиг.3, способен отображать символы на устройствах отображения на ЖКД с точностью до подэлементов изображения. Другими словами, размеры деталей символов, особенно в направлении, перпендикулярном направлению нанесения полос устройства отображения, не ограничены кратным целым числом соответствующего размера целых элементов изображения. Вместо этого, каждый отдельно управляемый подкомпонент элемента изображения из элементов изображения представляет отличающуюся часть отображаемого символа.
В качестве части процесса визуализации, варианты осуществления способов по изобретению включают в себя этап хинтования данных изображения так, что типографская деталь (например, ножка) подгоняется к положению на сетке, соответствующему границе высокого контраста между подкомпонентами элементов изображения. Сетка, как дополнительно описано ниже, имеет местоположения сетки, определяемые элементами изображения и подкомпонентами элементов изображения устройства отображения. Этап хинтования данных изображения и действия, которые соответствуют ему, ниже описаны более подробно.
Процесс на фиг.3 начинается с вывода 101 текста, который можно обеспечивать с помощью прикладной программы, например текстового редактора, или это может быть электронная структура данных, которая представляет документ. Данные 102 символов обычно располагаются в массиве данных, типа файла шрифтов, и обычно содержат информацию, описывающую конкретный набор символов.
Данные 102 символов могут содержать, например, контур каждого глифа в наборе символов. Контуры представляют собой математические описания форм глифов в наборе символов или шрифте, с использованием линий и кривых. Помимо этого, каждый контур имеет несколько контрольных точек, которые необходимы для масштабирования глифа относительно требуемого кегля шрифта и разрешения. Некоторые из контрольных точек являются точками на кривой, а другие точки представляют собой точки вне кривой. Для определения края символа выбирают, например, одну или больше контрольных точек на кривой. Аналогично этому, пара контрольных точек может устанавливать границы ножки символа. Точки на кривой подгоняются к сетке в процессе хинтования, а точки вне кривой располагаются, используя команды интерполирования. Также можно использовать контрольные точки, чтобы указывать определенные размеры и промежутки, типа ширины ножки. В процессе хинтования затрагиваемая точка относится к точке, которая хинтуется или подгоняется к сетке, а не затрагиваемая точка относится к точке, которая не хинтуется или не подгоняется к сетке. Поэтому можно и затрагиваемые, и не затрагиваемые точки упоминать, либо как точки на кривой, либо как точки вне кривой. Термины "на кривой" и "вне кривой" относятся к геометрической форме символов, а термины "затрагиваемые" и "не затрагиваемые" обычно относятся к стратегии хинтования или подгонки к сетке.
Вывод 101 текста и данные 102 символов вместе представляют данные 100 изображения, которые принимаются масштабирующим модулем 104. Масштабирующий модуль 104 масштабирует данные 100 изображения так, что последующие операции по обработке могут воспользоваться преимуществом более высокого разрешения, которое можно достичь, используя подкомпоненты элементов изображения. Поскольку сетка элементов изображения может иметь, например, либо горизонтальное направление нанесения полос, либо вертикальное направление нанесения полос, масштабирование обычно выполняется с более высокой скоростью в направлении, перпендикулярном направлению нанесения полос сетки.
После того, как было выполнено масштабирование данных 100 изображения, они хинтуются или подгоняются к сетке с помощью модуля 106 хинтования. Модуль 106 хинтования функционирует, частично, чтобы сохранять, в максимально возможной степени, регулярность местоположений символов и промежутков, сохранять размеры символов и управлять оцифрованным представлением. Однако во многих случаях сетка элементов изображения устройства отображения имеет низкое разрешение, по сравнению с высоким разрешение символа, и необходимо принимать некоторые компромиссные решения. Например, трудно иметь и правый, и левый края ножки символа в правильном месте и поддерживать надлежащую плотность или толщину ножки.
В общем, модуль 106 хинтования выравнивает символы по границам подкомпонентов элементов изображения, независимо от того, являются ли границы подкомпонентов элементов изображения также границами между целыми элементами изображения. Это выполняется посредством изменения или искажения контура глифа, с целью гарантирования, что правильные элементы изображения и подкомпоненты элементов изображения затрагиваются или не затрагиваются, когда глиф растеризуется. Как.только глиф подогнан к сетке, контрольные точки, которые обычно нумеруются, не изменяются, но координаты этих контрольных точек могут сдвигаться.
Модуль 108 сканирующего преобразования представляет собой процесс преобразования масштабированного и хинтованного символа в растровое изображение. Поскольку символы или данные текста можно хинтовать к границам подкомпонентов элементов изображения, каждый подкомпонент элемента изображения может отображаться отдельно. Это позволяет визуализировать символ с более высоким разрешением. Модуль 108 сканирующего преобразования определяет, какой подкомпонент элемента изображения должен быть затронут, а какие подкомпоненты элементов изображения не должны быть затронуты. Модуль 108 сканирующего преобразования производит растровое изображение 110, которое отображается на устройстве 112 отображения. Системы и способы по настоящему изобретению описаны здесь в отношении устройства отображения, имеющего вертикальное направление нанесения полос, но их можно применять для устройств отображения, имеющих элементы изображения, расположенных в других конфигурациях, включая, но не ограничиваясь этим, горизонтальное направление нанесения полос.
Операции сканирующего преобразования могут приводить к одной выборке, отображаемой в каждой из подкомпонентов элемента изображения. В качестве альтернативы, в подкомпоненты элементов изображения можно отображать любое количество выборок. В общем, различные в пространственном отношении наборы одной или более выборок отображаются в каждый подкомпонент элемента изображения. Процесс отображения наборов выборок в подкомпоненты элементов изображения можно понять, как процесс фильтрации. Фильтры соответствуют положению и количеству выборок, включенных в наборы выборок, отображаемые в отдельных подкомпонентах элементов изображения. Фильтры, соответствующие различным цветам подкомпонентов элементов изображения, могут иметь один и тот же размер или разные размеры. Выборки, включенные в фильтры, могут быть взаимоисключающими (например, каждая из выборок пропускается только через один фильтр), или фильтры могут совмещаться (например, некоторые выборки включены больше, чем в один фильтр). В общем, фильтры, используемые в процессе сканирующего преобразования, можно адаптировать для образования требуемых цветных эффектов на отображаемых изображениях.
Фиг.4а иллюстрирует сетку 200 элементов изображения, которая представляет положение элементов изображения на устройстве отображения на ЖКД. Данные изображения, представляющие символ 205 текста, масштабированы с коэффициентом, равным трем, в перпендикулярном направлении относительно полос устройства отображения и с коэффициентом, равным единице, в направлении, параллельном полосам. Масштабирование проводится таким образом, чтобы подготовить символ текста для процесса сканирующего преобразования, в котором выборки отображаются в отдельных подкомпонентах элементов изображения. Сетка 200 представляет собой вычислительный инструмент, используемый в процессе визуализации для регулирования выбранных краев символа к границам высокого контраста между подкомпонентами элементов изображения.
Сетка 200 элементов изображения соответствует множеству элементов 201 изображения устройства отображения на ЖКД (например, устройства 70 отображения из фиг.2а), где каждый элемент 201 изображения имеет красный подкомпонент 202 элемента изображения, синий подкомпонент 203 элемента изображения и зеленый подкомпонент 204 элемента изображения. Как часто имеет место в процессе визуализации изображения, контур символа 205 не совпадает с границей подкомпонентов элементов изображения. Например, край 206 не совпадает с границей подкомпонентов элементов изображения. Поскольку символ 205 не соответствует элементам 201 изображения и подкомпонентам 202, 203 и 204 элементов изображения, во время процесса растеризации форму и расположение символа 205 можно изменить или подогнать к сетке.
Фиг.4b иллюстрирует символ 205 после того, как он был подогнан к сетке 200 элементов изображения. Как показано, во время процесса растеризации символ 205 физически переместили вниз и влево, а ножки 209 слегка сузили. Этот эффект округления, как иллюстрируется на фиг.4b, происходит на границах элементов изображения.
Фиг.4с иллюстрирует символ 205 после того, как он был подогнан в сетке к границам подкомпонентов элементов изображения. Край 206 символа был привязан к границе 208 между зеленым подкомпонентом элемента изображения и синим подкомпонентом элемента изображения. Было отдано предпочтение границе 208, а не границе 207 между красными и зелеными подкомпонентами элементов изображения, потому что граница 208 имеет более высокий контраст, хотя изобретение также может охватывать привязку краев символа к границам между смежными красными и зелеными подкомпонентами элементов изображения. Способность настоящего изобретения подгонять в сетке символ 205 к границам подкомпонентов элементов изображения обеспечивает дополнительную точность в процессе визуализации. В дополнение к подгонке символов к границам подкомпонентов элементов изображения было обнаружено, что выбор границ высокого контраста улучшает удобочитаемость отображаемых символов. Также было установлено, что выравнивание левого края ножек (например, края 206) часто является более важным в образовании символов с хорошей удобочитаемостью, чем выравнивание с границами высокого контраста других частей символа.
Изобретение охватывает любой процесс, посредством которого выбранные края символов перемещаются к границам высокого контраста подкомпонентов элементов изображения во время операции хинтования. Прямой и полный анализ топологии символа во время выполнения процесса представляет собой один из путей идентификации деталей символа, который подлежит перемещению согласно изобретению. Хотя можно использовать этот тип полного топологического анализа, часто бывает неэффективно или непрактично в вычислительном отношении выполнять его. В соответствии с этим, можно использовать любой доступный технический прием для проведения только частичного топологического анализа во время выполнения процесса, таким образом сокращая время вычислений и ресурсы.
Многие наборы символов или шрифтовых комплектов имеют определения шрифтов или другую информацию, которые сами приспосабливаются при использовании к проведению частичного анализа топологии символов во время выполнения процесса, достаточного для того, чтобы выбранные края или части символов могли быть перемещены к границам высокого контраста подкомпонентов элементов изображения при операции хинтования. Такая информация о шрифте, которую можно использовать для этой цели, включает в себя любую информацию, определяющую положение и промежуток некоторых типографских деталей, типа краев символа и ширины ножек.
Хотя изобретение можно использовать по существу с любым типом шрифта, определенный пример выполнения частичного топологического анализа контура символа во время выполнения будет представлен в контексте шрифтов True Type. Файлы шрифтов True Type включают в себя таблицы контрольных значений (ТКЗ). ТКЗ представляет собой таблицу, которая получена на основании информации, закодированной в файлах, включая файлы шрифтов True Type, в которой перечислены цвет промежутков, а также размеры для различных деталей букв, например ширины ножек. ТКЗ позволяет проектировщику шрифтов обращаться к конкретным промежуткам по наименованию, а не как к абстрактному промежутку. Ширина ножки символа, например, может называться "толщиной вертикальной ножки". Таблица контрольных значений, как она используется здесь, предназначена для предоставления информации, связанной с символами, которая описывает определенные промежутки и размеры символа. Часто промежутки и размеры описываются в терминах ключевых контрольных точек на контуре символа.
Одна деталь таблиц ТКЗ, которую можно удобно использовать для описания топологии символов текста, представляет собой описание некоторых промежутков в символе с помощью цвета. Горизонтальный промежуток символа, как описано в ТКЗ, может быть черным промежутком, белым промежутком или серым промежутком. Черные промежутки описывают промежутки, которые являются внутренними относительно графической формы буквы (например, ширина ножки), белые промежутки описывают промежутки, которые соответствуют областям, находящимся в общем вне тела символа (например, левый и правый опорные элементы, промежутки между ножками, открытый внутренний просвет буквы "О" и т.д.), а серые промежутки описывают промежутки, которые включают в себя белый и черный промежуток.
Фиг.5а иллюстрирует эти промежутки в отношении символа 205. Символ 205 имеет две ножки 209. Первая ножка начинается в точке А и заканчивается в точке В, а вторая ножка начинается в точке С и заканчивается в точке D. Промежутки от точки А до точки В и от точки С до точки D являются черными промежутками, потому что они внутренние относительно графической формы или контура символа 205, и обозначены черными стрелками 211. Горизонтальный промежуток от левой опорной точки 210 до точки А является белым промежутком, потому что промежуток внешний относительно графической формы символа 205 и обозначен белой стрелкой 212. Аналогично этому, горизонтальный промежуток 219 между точкой D и правой опорной точкой 220 является белым промежутком. Промежуток 218 также обозначен, как белый промежуток, поскольку это промежуток между ножками 209 символа 205. Промежуток от точки А до точки С, показанный серой стрелкой 213, является серым промежутком, потому что промежуток включает в себя черный промежуток 211 от точки А до точки В и белый промежуток 218 от точки В до точки С.
Черные, белые и серые промежутки представлены относительно друг друга и могут быть показаны, как имеющие родительскую/дочернюю иерархию в ориентированном ациклическом графе (ОАГ), как иллюстрируется на фиг.5b. Таким образом, точку А рассчитывают от левой опорной точки 210, и она также является дочерней относительно левой опорной точки 210. В свою очередь, точка А является родительской относительно точек В и С, а точки В и С - дочерние относительно точки А. Неотъемлемая структура ширины и промежутков, которая связана с графической формой букв, позволяет идентифицировать во время выполнения процесса релевантные типографские детали, даже если промежутки и размеры не расположены удобно в таблице контрольных значений.
Перед дополнительным описанием настоящего изобретения представим краткое описание глифа. На фиг.6 показана блок-схема, иллюстрирующая контур и контрольные точки глифа. Контур 214 определен рядом контрольных точек 250, некоторые из которых могут находиться на кривой, а некоторые - вне кривой. Если две последовательные контрольные точки находятся на кривой, они определяют прямую линию. Контрольные точки нумеруются последовательно, в этом примере, и если следовать по кривой в направлении увеличивающихся номеров точек, закрашенная область всегда будет справа от контрольной точки. Ключевые контрольные точки, которые определяют черный промежуток ширины ножки, представляют собой на фиг. 6 точки 1 и точки 22.
На фиг. 7 представлена блок-схема, более подробно поясняющая модуль 106 хинтования, описанный выше в отношении фиг.3. Модуль 106 хинтования можно рассмотреть для выполнения этапа хинтования данных изображения таким образом, чтобы типографская деталь (например, ножка) оказывалась подогнанной в положение на сетке, соответствующее границе высокого контраста между подкомпонентами элементов изображения. Фиг.7 иллюстрирует примеры действий, которые соответствуют этапу хинтования, как дополнительно поясняется ниже.
Модуль 106 хинтования принимает данные изображения после их масштабирования и затем выполняет подгонку символа к точкам сетки, определенным элементами изображения и подкомпонентами элементов изображения. На этапе 260 модуль 106 хинтования обрабатывает команды хинтования, которые обеспечиваются художником-шрифтовиком, и перемещает некоторые ключевые контрольные точки в соответствующие точки сетки так, что графическая форма буквы становится визуально приятной и разборчивой. На этапе 260 некоторые части или контрольные точки символа перемещаются, а другие части и контрольные точки остаются незатронутыми. В соответствии с одним вариантом осуществления изобретения, операция подгонки к сетке данных изображения, как представлено этапом 260, является одним примером части этапа хинтования данных изображения.
Фазовое управление 270 включает в себя перемещение хинтованных точек от этапа 260 на границы подкомпонентов элементов изображения высокого контраста. Часто хинтованные точки, перемещаемые при фазовом управлении 270, определяют левый край ножки символа. В соответствии с вариантом осуществления изобретения, иллюстрируемым на фиг.7, операция фазового регулирования типографской детали является такой, что типографская деталь совпадает с местоположением сетки, которая представляет границу высокого контраста между подкомпонентами элементов изображения, как представлено с помощью операции 270, являющейся одним из примеров части этапа хинтования данных изображения.
Как только соответствующие контрольные точки, такие как точки, которые определяют левый край ножек символа, помещены на границы высокого контраста между подкомпонентами элементов изображения, другие контрольные точки масштабированных данных изображения подгоняются (регулируются) по мере необходимости. Например, правые края ножек могут быть перемещены в сетку так, чтобы придать ножкам ширину, имеющую значения, которые не могут быть целым числом ширины целых элементов изображения устройства отображения. При операции 280 какие-либо точки или участки контура, которые не были перемещены во время операции 260 и фазового управления 270, теперь перемещаются в новые местоположения на сетке элементов изображения, используя интерполяцию. Таким образом, в этом варианте осуществления операция интерполяции остающихся контрольных точек является одним из примеров части этапа хинтования данных изображения.
Используя операции, иллюстрируемые на фиг.7, процесс хинтования приводит к тому, что выбранные края символа выравниваются с границами высокого контраста подкомпонентов элементов изображения, в то же время позволяя символу иметь размеры в направлении, перпендикулярном направлению нанесения полос устройства отображения, имеющие значения подэлементов изображения, или, другими словами, значения, которые не обязательно являются кратными целыми числами соответствующего размера целых элементов изображения.
Фиг.8 представляет подробную блок-схему фазового управления, осуществляемого модулем 106 хинтования на фиг.1, согласно одному варианту осуществления изобретения, и дополнительно иллюстрирует операции, которые соответствуют, по меньшей мере, части этапа хинтования данных изображения в соответствии с одним вариантом осуществления изобретения. Как было упомянуто выше, изобретение можно осуществлять, используя любой процесс, который во время выполнения полностью или частично анализирует топологию глифа. Фиг.8 касается использования ориентированного ациклического графа, например, связанного с фиг.5а и фиг.5b. На этапе 271 получают ОАГ символа 205 из интерпретации команд хинтования, которые используют ТКЗ и иллюстрируются на фиг.5b.
На этапе 272 при фазовом управлении 270 осуществляется поиск отличительных типографских деталей. Например, во время фазового управления 270 может пытаться располагать вертикальные ножки символа посредством поиска чередующихся образцов черных и белых горизонтальных промежутков, если сетка элементов изображения имеет вертикальное направление нанесения полос. Если сетка элементов изображения имеет горизонтальное направление нанесения полос, при фазовом управлении 270 можно пытаться располагать горизонтальные линейные участки в символе посредством поиска чередующихся образцов черных и белых вертикальных промежутков. В общем, на этапе 272 осуществляется поиск конкретных типографских деталей, включая, но не ограничиваясь ими, ножки или горизонтальные участки. Это осуществляется во время выполнения программы, потому что промежутки и размеры символов имеются в таблице ТКЗ.
Например, ножки 209 символа 205 на фиг.5а получают посредством определения, что черные промежутки, представленные стрелками 211, чередуются с белыми промежутками от левой опорной точки 210 до точки А и от точки В до точки С. Также можно использовать серый промежуток, обозначенный стрелкой 213, вместо белого промежутка от точки В до точки С, чтобы сделать логический вывод о присутствии вертикальной ножки.
На этапе 273, ОАГ проходится, что ножки могут быть с помощью фазового регулирования подогнаны или помещены на границу высокого контраста подкомпонента элемента изображения. Первый узел ОАГ 300 на фиг.5b, который указывает ножку, представляет собой точку А. Ножка перемещается так, что левый край ножки попадает на границу высокого контраста, например, границу между зелеными и синими подкомпонентами элементов изображения. Таким образом, зеленый подкомпонент элемента изображения является внешним относительно графической формы буквы, а синий подкомпонент элемента изображения является внутренним по отношению к графической форме буквы. Подобным образом, другие ножки символа также хинтуют к границе высокого контраста.
Одно соображение, которое часто возникает при выполнении операций хинтования по изобретению, касается коррекции потенциальной ошибки, которую может вводить процесс хинтования. Поскольку регулирование положений взаимозависимых узлов производится, когда проходится ОАГ, получающееся в результате размещение правой опорной точки символа может оказаться смещенным. Эта ошибка может также оказывать влияние на полную ширину визуализируемого символа. Однако контрастность символа улучшается. Таким образом, улучшенная контрастность может приводить к символам, имеющим ошибочную полную ширину, которая может включать смещенную правую опорную точку.
Настоящее изобретение может быть воплощено в других определенных формах без отступления от его сущности или существенных характеристик. Описанные варианты осуществления следует рассматривать во всех отношениях только как иллюстративные, а не ограничительные. Поэтому объем изобретения определен прилагаемой формулой изобретения, а не вышеизложенным описанием. Все изменения, которые подпадают под смысл и диапазон эквивалентности формулы изобретения, должны быть включены в объем изобретения.

Claims (40)

1. Способ подгонки данных изображения к сетке, определяемой элементами изображения и подкомпонентами элементов изображения, при подготовке к растеризации изображения на устройстве отображения компьютерной системы, имеющей устройство отображения, где устройство отображения имеет множество элементов изображения, каждое из которых имеет множество подкомпонентов элемента изображения различных цветов, причем способ содержит этапы получения данных изображения, имеющих выбранные контрольные точки с положениями относительно сетки, где положения по меньшей мере одной из выбранных контрольных точек полученных данных изображения не совпадают с границей между подкомпонентами элементов изображения, хинтования данных изображения так, что типографская деталь, определяемая одной или больше выбранными контрольными точками, подгоняется в положение на сетке, которое соответствует выбранной границе между подкомпонентами элементов изображения, причем выбранная граница обозначается как граница высокого контраста, отображения изображения на устройстве отображения, используя данные изображения, где типографская деталь отображается на границе высокого контраста.
2. Способ по п.1, в котором данные изображения представляют собой символ, где способ дополнительно содержит этап анализа топологии символа во время выполнения программы, с целью идентифицирования типографской детали, подлежащей подгонке.
3. Способ по п.1, в котором граница высокого контраста не является границей между элементами изображения.
4. Способ по п.1, в котором этап отображения изображения выполняется так, что отдельные подкомпоненты элементов изображения представляют собой пространственно различные части данных изображения, а не различные части, представляемые целыми элементами изображения, которые включают в себя отдельные подкомпоненты элементов изображения.
5. Способ по п.1, в котором типографская деталь является ножкой символа, представленного данными изображения.
6. Способ по п.5, в котором этап хинтования данных изображения проводится таким образом, что левый край ножки выравнивается с границей высокого контраста.
7. Способ по п.1, в котором типографская деталь является горизонтальным участком символа, представленного данными изображения.
8. Способ хинтования данных изображения в компьютерной системе, имеющей процессор и устройство отображения, имеющее множество элементов изображения для отображения данных изображения, причем каждый элемент изображения имеет множество подкомпонентов элементов изображения, содержащий этапы подгонки данных изображения к точкам сетки, которая соответствует элементам изображения и подкомпонентам элементов изображения устройства отображения таким образом, чтобы одна или более контрольные точки, определяющие типографскую деталь данных изображения, соответствовали точкам сетки, фазового регулирования (подгонки) типографской детали таким образом, чтобы типографская деталь совпадала с местоположением сетки, которое представляет границу между подкомпонентами элементов изображения, где граница обозначается как граница высокого контраста, и интерполяции данных изображения таким образом, чтобы отрегулировать положение на сетке остающихся опорных точек данных изображения.
9. Способ по п.8, в котором типографская деталь является одной или более вертикальными ножками символа.
10. Способ по п.8, в котором типографская деталь является одним или более горизонтальными участками символа.
11. Способ по п.8, в котором данные изображения представляют символ, подлежащий отображению на устройстве отображения, причем способ дополнительно содержит анализ топологии символа во время выполнения процесса с целью идентифицирования типографской детали.
12. Способ по п.8, в котором этап фазового регулирования дополнительно содержит этапы анализа команд хинтования, связанных с данными изображения, для образцов, которые являются характерными для типографской детали, получения из команд хинтования ориентированного ациклического графа, в котором топология типографской детали, по меньшей мере, частично определена одним или более узлами ориентированного ациклического графа, и на основании обхода ориентированного ациклического графа идентифицирования положения типографской детали и перемещения типографской детали к границе высокого контраста.
13. Способ по п.12, дополнительно содержащий этапы обхода ориентированного ациклического графа и обнаружения узла, который соответствует точке данных изображения, подлежащей перемещению на сетку, и учета ошибки, вносимой изменением расположения точки, соответствующей предыдущему узлу ориентированного ациклического графа.
14. Способ по п.12, в котором этап анализа команд хинтования дополнительно содержит этап поиска выбранного образца промежутков, имеющих определенные цвета, связанные с типографской деталью.
15. Способ по п.14, в котором выбранный образец представляет собой черный промежуток, окруженный белыми промежутками.
16. Способ по п.14, в котором выбранный образец представляет собой черный промежуток, окруженный серыми промежутками.
17. Способ по п.14, в котором выбранный образец представляет собой черный промежуток, окруженный промежутками, не являющимися черными.
18. Способ по п.8, в котором граница высокого контраста проходит между синим подкомпонентом элемента изображения и зеленым подкомпонентом элемента изображения, причем синий подкомпонент элемента изображения является внутренним относительно символа, определяемого данными изображения, а зеленый подкомпонент элемента изображения является внешним относительно символа.
19. Способ по п.8, в котором граница высокого контраста проходит между красным подкомпонентом элемента изображения и зеленым подкомпонентом элемента изображения, причем красный подкомпонент элемента изображения является внешним относительно символа, определяемого данными изображения, а зеленый подкомпонент элемента изображения является внутренним относительно символа.
20. Способ по п.8, дополнительно содержащий этап отображения пространственно различных наборов одной или более выборок данных изображения в отдельные подкомпоненты элементов изображения, а не отображения выборок в целые элементы изображения.
21. Способ расположения символа на сетке, определяемой подкомпонентами элементов изображения, при подготовке к визуализации символа на устройстве отображения в системе, имеющей устройство отображения, где устройство отображения имеет множество элементов изображения, каждое из которых имеет по меньшей мере три подкомпонента элемента изображения различных цветов, причем способ содержит действия анализа данных изображения, связанных с символом, где данные изображения определяют контур символа, используя контрольные точки, промежутки между ключевыми контрольными точками и родительские/дочерние отношения ключевых контрольных точек, идентификации промежутков символа, которые являются показательными для типографских деталей символа, подлежащего расположению на границах высокого контраста, причем идентифицированные промежутки связаны по меньшей мере с некоторыми из ключевых контрольных точек, и расположения идентифицированных ключевых контрольных точек символа в точках сетки, которые соответствуют границам высокого контраста подкомпонентов элементов изображения на устройстве отображения.
22. Способ по п.21, в котором промежутки включают в себя черные промежутки, которые являются внутренними относительно контура символа, белые промежутки, которые являются внешними относительно контура символа, и серые промежутки, которые являются комбинацией черных и белых промежутков.
23. Способ по п.21, в котором промежутки определяют ширину ножки, идентифицированную по меньшей мере некоторыми из ключевых контрольных точек.
24. Способ по п.23, дополнительно содержащий этап расположения ножек символа.
25. Способ по п.21, в котором границы находятся между синими подкомпонентами элементов изображения и зелеными подкомпонентами элементов изображения, где синие подкомпоненты элементов изображения являются внутренними относительно символа, а зеленые подкомпоненты элементов изображения являются внешними относительно символа.
26. Способ по п.21, в котором границы находятся между красными подкомпонентами элементов изображения и зелеными подкомпонентами элементов изображения, где красные подкомпоненты элементов изображения являются внешними относительно символа, а зеленые подкомпоненты элементов изображения являются внутренними относительно символа.
27. Способ по п.21, дополнительно содержащий этап расположения левого края символа на границах.
28. Способ расположения данных изображения на сетке, определяемой множеством подкомпонентов элементов изображения в системе, способной отображать данные изображения на устройстве отображения, где устройство отображения имеет множество элементов изображения, каждое из которых имеет множество подкомпонентов элементов изображения различных цветов, причем способ содержит этапы получения родительской/дочерней иерархии, представляющей ключевые контрольные точки, из данных изображения, исследования данных изображения для образцов, указывающих типографские детали, в котором образцы идентифицируются ключевыми контрольными точками, а каждый узел иерархии связан с одной из типографских деталей, и при рассмотрении структуры данных, представляющей иерархию, фазового регулирования одной или более выбранных типографских деталей посредством расположения ключевых контрольных точек, связанных с выбираемыми типографскими деталями, в точках сетки, которые соответствуют границе высокого контраста между подкомпонентами элементов изображения, причем граница высокого контраста не является границей между элементами изображения.
29. Способ по п.28, дополнительно содержащий после фазового регулирования последовательных типографских деталей этап учета ошибки, вводимой фазовым регулированием предыдущей типографской детали.
30. Способ по п.29, в котором ошибка равна смещению предыдущей типографской детали.
31. Способ по п.28, в котором подкомпоненты элементов изображения расположены на устройстве отображения так, что образуют вертикальные полосы из подкомпонентов элементов изображения одного и того же цвета, и в котором одна или более выбранные типографские детали включают в себя вертикальную ножку символа.
32. Способ по п.28, в котором подкомпоненты элементов изображения расположены на устройстве отображения так, что образуют горизонтальные полосы из подкомпонентов элементов изображения одного и того же цвета, и в котором одна или более выбранные типографские детали содержат горизонтальный участок символа.
33. Способ по п.28, в котором образцы включают в себя чередующиеся черные и белые промежутки, где черные промежутки содержат размеры, которые являются внутренними относительно символа, а белые промежутки содержат размеры, которые являются внешними относительно символа.
34. Способ по п.28, в котором образцы включают в себя чередующиеся черные и серые промежутки, где черные промежутки содержат размеры, которые являются внутренними относительно символа, и в котором серые промежутки содержат размеры, которые являются и внутренними, и внешними относительно символа.
35. Компьютерный программный продукт для реализации способа хинтования данных изображения при подготовке к отображению данных изображения на устройстве отображения в компьютерной системе, имеющей устройство отображения для отображения изображения, где устройство отображения имеет множество элементов изображения, причем каждый элемент изображения включает в себя множество подкомпонентов элементов изображения, где компьютерный программный продукт содержит считываемый компьютером носитель информации, хранящий выполняемые компьютером команды, для реализации способа, причем выполняемые компьютером команды при исполнении выполняют операции подгонки данных изображения к точкам сетки, которая соответствует элементам изображения и подкомпонентам элементов изображения устройства отображения, таким образом, чтобы одна или более контрольные точки, определяющие типографскую деталь данных изображения, соответствовали точкам сетки, фазового регулирования типографской детали так, чтобы типографская деталь совпадала с местоположением сетки, которое представляет границу между подкомпонентами элементов изображения, где граница обозначается как граница высокого контраста, и интерполяции данных изображения таким образом, чтобы отрегулировать положение на сетке остальных контрольных точек данных изображения.
36. Компьютерный программный продукт по п.35, в котором данные изображения представляют символ, а способ дополнительно содержит этапы идентификации выбранных точек данных изображения посредством исследования размеров и промежутков, хранящихся и связанных с данными изображения, и на основании исследованных размеров и промежутков выполнения распознавания выбранных точек как определяющих типографскую деталь, подлежащую фазовому регулированию.
37. Компьютерный программный продукт по п.35, в котором подкомпоненты элементов изображения расположены на устройстве отображения, образуя вертикальные полосы из подкомпонентов элементов изображения одного и того же цвета, и в котором типографская деталь представляет собой ножку символа, которая параллельна направлению вертикальных полос.
38. Компьютерный программный продукт по п.35, в котором способ дополнительно содержит этап отображения пространственно различных наборов одной или более выборок в каждый из подкомпонентов выбранного элемента изображения, в противоположность отображению одной или более выборок в целый выбранный элемент изображения.
39. Компьютерный программный продукт по п.38, в котором способ дополнительно содержит этап отображения изображения на устройстве отображения на основании данных изображения, приводящий к отображению типографской детали на границе высокого контраста.
40. Компьютерный программный продукт по п.39, в котором этап отображения изображения на устройстве отображения содержит этап отдельного управления каждым из подкомпонентов выбранного элемента изображения посредством применения к каждому из подкомпонентов выбранного элемента изображения значения интенсивности света, генерируемого от пространственно различного набора одной или более выборок, отображаемого в конкретный подкомпонент элемента изображения.
RU2002129894/09A 2000-04-10 2001-04-09 Автоматическая оптимизация расположения ножек символов текста RU2258265C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/546,139 US6597360B1 (en) 1998-10-07 2000-04-10 Automatic optimization of the position of stems of text characters
US09/546,139 2000-04-10

Publications (2)

Publication Number Publication Date
RU2002129894A RU2002129894A (ru) 2004-03-10
RU2258265C2 true RU2258265C2 (ru) 2005-08-10

Family

ID=24179038

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2002129894/09A RU2258265C2 (ru) 2000-04-10 2001-04-09 Автоматическая оптимизация расположения ножек символов текста

Country Status (10)

Country Link
US (3) US6597360B1 (ru)
EP (1) EP1279160B1 (ru)
JP (1) JP5362162B2 (ru)
CN (1) CN100363978C (ru)
AU (1) AU2001251464A1 (ru)
BR (1) BR0109944B1 (ru)
CA (2) CA2405839C (ru)
MX (1) MXPA02009996A (ru)
RU (1) RU2258265C2 (ru)
WO (1) WO2001078053A2 (ru)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6597360B1 (en) * 1998-10-07 2003-07-22 Microsoft Corporation Automatic optimization of the position of stems of text characters
JP4544669B2 (ja) * 1999-09-30 2010-09-15 三洋電機株式会社 キャラクタ読み出し回路
US6775420B2 (en) * 2000-06-12 2004-08-10 Sharp Laboratories Of America, Inc. Methods and systems for improving display resolution using sub-pixel sampling and visual error compensation
US6807319B2 (en) * 2000-06-12 2004-10-19 Sharp Laboratories Of America, Inc. Methods and systems for improving display resolution in achromatic images using sub-pixel sampling and visual error filtering
US7152211B1 (en) * 2001-01-30 2006-12-19 Microsoft Corporation Resolution independent theming
JP4180814B2 (ja) * 2001-10-22 2008-11-12 松下電器産業株式会社 太字表示方法及びそれを用いた表示装置
WO2003038801A1 (en) * 2001-11-02 2003-05-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and device providing enhanced characters
JP4407875B2 (ja) * 2002-02-25 2010-02-03 シャープ株式会社 文字表示装置および文字表示方法、その文字表示方法を制御するための制御プログラムおよびその制御プログラムが記録された記録媒体
AU2003218012A1 (en) * 2002-03-08 2003-09-22 Sensy Medical Inc. Compact apparatus for noninvasive measurement of glucose through near-infrared spectroscopy
JP2003302962A (ja) 2002-04-08 2003-10-24 Sharp Corp 表示装置、文字・図形表示方法、文字・図形表示プログラムおよび可読記録媒体
US20030210834A1 (en) * 2002-05-13 2003-11-13 Gregory Hitchcock Displaying static images using spatially displaced sampling with semantic data
US7271805B1 (en) * 2003-06-22 2007-09-18 Apple Inc. System and method for displaying text
US7286121B2 (en) * 2003-12-23 2007-10-23 Microsoft Corporation Sub-component based rendering of objects having spatial frequency dominance parallel to the striping direction of the display
US7471843B2 (en) * 2004-02-04 2008-12-30 Sharp Laboratories Of America, Inc. System for improving an image displayed on a display
US7710422B2 (en) * 2004-07-26 2010-05-04 Microsoft Corporation Font representations
US7515752B2 (en) * 2004-08-27 2009-04-07 Corel Corporation Sketch recognition and enhancement
US20060050089A1 (en) * 2004-09-09 2006-03-09 Atousa Soroushi Method and apparatus for selecting pixels to write to a buffer when creating an enlarged image
KR100691501B1 (ko) * 2005-07-21 2007-03-09 (주)정글시스템 스냅 힌팅과 스템 힌팅을 사용한 외곽선 폰트의 비트맵이미지 변환 방법 및 그 방법이 구현된 소프트웨어를저장한 컴퓨터가 읽을 수 있는 기록매체
US7583267B2 (en) * 2005-12-19 2009-09-01 Microsoft Corporation Stroke contrast in font hinting
US7489323B2 (en) * 2006-01-10 2009-02-10 Delta Electronics, Inc. Display apparatus adapted for a display wall, image adjustment method therefor and display wall therewith
US7868888B2 (en) * 2006-02-10 2011-01-11 Adobe Systems Incorporated Course grid aligned counters
US8520003B2 (en) 2006-05-22 2013-08-27 Raphael L Levien Method and apparatus for interactive curve generation
US8102397B2 (en) * 2009-01-26 2012-01-24 Mitsubishi Electric Research Laboratories Inc. Method for improving uniform width character strokes using multiple alignment zones
JP4747219B2 (ja) * 2009-04-08 2011-08-17 キヤノン株式会社 画像処理装置、画像処理方法
KR101452713B1 (ko) 2009-10-30 2014-10-21 삼성전자주식회사 픽처 경계의 부호화 단위를 부호화, 복호화 하는 방법 및 장치
US8760453B2 (en) * 2010-09-01 2014-06-24 Microsoft Corporation Adaptive grid generation for improved caching and image classification
US9483167B2 (en) 2010-09-29 2016-11-01 Adobe Systems Incorporated User interface for a touch enabled device
US9229636B2 (en) 2010-10-22 2016-01-05 Adobe Systems Incorporated Drawing support tool
US8842120B2 (en) 2011-03-02 2014-09-23 Adobe Systems Incorporated Physics rules based animation engine
US20130132907A1 (en) * 2011-03-02 2013-05-23 Adobe Systems Incorporated Shape pixel rendering
US8416243B2 (en) * 2011-03-10 2013-04-09 Konica Minolta Laboratory U.S.A., Inc. Approximating font metrics for a missing font when substituting an available replacement
US10031641B2 (en) 2011-09-27 2018-07-24 Adobe Systems Incorporated Ordering of objects displayed by a computing device
WO2013175520A1 (ja) * 2012-05-21 2013-11-28 三菱電機株式会社 文字描画装置
JP5519065B2 (ja) * 2012-09-27 2014-06-11 シャープ株式会社 輪郭線幅設定装置、輪郭階調数設定装置、輪郭線幅設定方法、及び輪郭階調数設定方法
TWI623841B (zh) * 2013-12-12 2018-05-11 漢陽情報通信股份有限公司 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器
WO2015141260A1 (ja) * 2014-03-17 2015-09-24 株式会社河合楽器製作所 手書き音楽記号認識装置およびプログラム
CN105890669A (zh) * 2016-06-01 2016-08-24 昆山云太基精密机械有限公司 全能影像视觉检测机器人
US11256948B2 (en) * 2017-04-18 2022-02-22 Kevat Shah Digital-image shape recognition using tangents and change in tangents
US10878531B2 (en) * 2018-08-17 2020-12-29 Accenture Global Solutions Limited Robotic process automation

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4136359A (en) 1977-04-11 1979-01-23 Apple Computer, Inc. Microcomputer for use with video display
US4278972A (en) 1978-05-26 1981-07-14 Apple Computer, Inc. Digitally-controlled color signal generation means for use with display
US4217604A (en) 1978-09-11 1980-08-12 Apple Computer, Inc. Apparatus for digitally controlling pal color display
JPS5961818A (ja) * 1982-10-01 1984-04-09 Seiko Epson Corp 液晶表示装置
US4703318A (en) * 1984-03-30 1987-10-27 Wang Laboratories, Inc. Character-based monochromatic representation of color images
US5153577A (en) * 1986-04-28 1992-10-06 Xerox Corporation Mapping character color attributes into grey pixel patterns
US5561365A (en) 1986-07-07 1996-10-01 Karel Havel Digital color display system
US4851825A (en) * 1987-07-24 1989-07-25 Naiman Abraham C Grayscale character generator and method
EP0313332B1 (en) * 1987-10-22 1994-12-14 Rockwell International Corporation Method and apparatus for drawing high quality lines on color matrix displays
US5334992A (en) * 1987-10-26 1994-08-02 Tektronix, Inc. Computer display color control and selection system
DE68906051T2 (de) 1988-02-16 1993-09-02 Gen Electric Farbanzeigegeraet.
US5341153A (en) 1988-06-13 1994-08-23 International Business Machines Corporation Method of and apparatus for displaying a multicolor image
US5543819A (en) 1988-07-21 1996-08-06 Proxima Corporation High resolution display system and method of using same
DE68921592T2 (de) 1988-12-29 1995-10-19 Sony Corp Wiedergabevorrichtung.
US5254982A (en) 1989-01-13 1993-10-19 International Business Machines Corporation Error propagated image halftoning with time-varying phase shift
US5298915A (en) 1989-04-10 1994-03-29 Cirrus Logic, Inc. System and method for producing a palette of many colors on a display screen having digitally-commanded pixels
US5185602A (en) 1989-04-10 1993-02-09 Cirrus Logic, Inc. Method and apparatus for producing perception of high quality grayscale shading on digitally commanded displays
US5155805A (en) * 1989-05-08 1992-10-13 Apple Computer, Inc. Method and apparatus for moving control points in displaying digital typeface on raster output devices
JPH0817086B2 (ja) 1989-05-17 1996-02-21 三菱電機株式会社 表示装置
US5138303A (en) 1989-10-31 1992-08-11 Microsoft Corporation Method and apparatus for displaying color on a computer output device using dithering techniques
US5339092A (en) * 1989-11-06 1994-08-16 Honeywell Inc Beam former for matrix display
JPH03201788A (ja) * 1989-12-28 1991-09-03 Nippon Philips Kk カラー表示装置
US5113455A (en) * 1990-02-27 1992-05-12 Eastman Kodak Company Digital image scaling by stepwise pixel movement
JP3071229B2 (ja) 1990-04-09 2000-07-31 株式会社リコー 図形処理装置
DE69123288T2 (de) * 1990-05-21 1997-04-24 Victor Company Of Japan Anzeigegerät
GB9103802D0 (en) * 1991-02-23 1991-04-10 Bp Chem Int Ltd Crosslinkable polymeric composition
JP3029489B2 (ja) 1991-07-25 2000-04-04 キヤノン株式会社 表示装置
US5301267A (en) * 1991-09-27 1994-04-05 Adobe Systems Incorporated Intelligent font rendering co-processor
WO1993013513A1 (en) * 1991-12-24 1993-07-08 Cirrus Logic, Inc. Process for producing shaded images on display screens
EP0579873B1 (en) * 1992-07-20 1999-05-06 Océ-Technologies B.V. Method of reproducing text on a raster output device
JP3579061B2 (ja) 1992-08-31 2004-10-20 株式会社東芝 表示装置
JPH06130937A (ja) * 1992-10-21 1994-05-13 Mitsubishi Electric Corp 画面表示装置
US5349451A (en) 1992-10-29 1994-09-20 Linotype-Hell Ag Method and apparatus for processing color values
US5450208A (en) 1992-11-30 1995-09-12 Matsushita Electric Industrial Co., Ltd. Image processing method and image processing apparatus
JP3547015B2 (ja) 1993-01-07 2004-07-28 ソニー株式会社 画像表示装置および画像表示装置の解像度改善方法
US5796409A (en) * 1993-04-06 1998-08-18 Ecole Polytechnique Federale De Lausanne Method for producing contrast-controlled grayscale characters
CA2125608A1 (en) * 1993-06-30 1994-12-31 George M. Moore Method and system for providing substitute computer fonts
US5633654A (en) 1993-11-12 1997-05-27 Intel Corporation Computer-implemented process and computer system for raster displaying video data using foreground and background commands
EP0673012A3 (en) 1994-03-11 1996-01-10 Canon Information Syst Res Control for a display with multiple common lines for each pixel.
JP3191081B2 (ja) * 1994-03-11 2001-07-23 キヤノン株式会社 ディスプレイ装置
EP0673161B8 (en) * 1994-03-15 2002-05-29 Canon Kabushiki Kaisha Video information display system and display apparatus applicable to the same
US5663772A (en) * 1994-03-29 1997-09-02 Matsushita Electric Industrial Co., Ltd. Gray-level image processing with weighting factors to reduce flicker
US5623593A (en) * 1994-06-27 1997-04-22 Macromedia, Inc. System and method for automatically spacing characters
US5684510A (en) * 1994-07-19 1997-11-04 Microsoft Corporation Method of font rendering employing grayscale processing of grid fitted fonts
JP3275991B2 (ja) * 1994-07-27 2002-04-22 シャープ株式会社 アクティブマトリクス型表示装置及びその駆動方法
JP2726631B2 (ja) 1994-12-14 1998-03-11 インターナショナル・ビジネス・マシーンズ・コーポレイション 液晶表示方法
JP3119805B2 (ja) * 1994-12-20 2000-12-25 松下電器産業株式会社 多階調データ生成装置
US5790126A (en) * 1995-01-03 1998-08-04 Microsoft Corporation Method for rendering a spline for scan conversion of a glyph
JP2861890B2 (ja) 1995-09-28 1999-02-24 日本電気株式会社 カラー画像表示装置
US5943063A (en) * 1995-10-23 1999-08-24 Adobe Systems, Inc. Method and apparatus for rendering characters
JPH09134157A (ja) * 1995-11-09 1997-05-20 Fujitsu Ltd ヒント付け方法及びフォントファイル構成方法
US6201526B1 (en) * 1996-09-04 2001-03-13 Motorola, Inc. Visual display device
US5847698A (en) 1996-09-17 1998-12-08 Dataventures, Inc. Electronic book device
US6157390A (en) * 1996-09-20 2000-12-05 Dynalab (S) Ltd. Stroke-based font generation
US5949643A (en) 1996-11-18 1999-09-07 Batio; Jeffry Portable computer having split keyboard and pivotal display screen halves
US6211859B1 (en) * 1997-03-10 2001-04-03 Chips & Technologies, Llc Method for reducing pulsing on liquid crystal displays
US6249908B1 (en) * 1998-03-27 2001-06-19 Microsoft Corporation System and method for representing graphical font data and for converting the font data to font instructions
US6188385B1 (en) * 1998-10-07 2001-02-13 Microsoft Corporation Method and apparatus for displaying images such as text
US6278434B1 (en) 1998-10-07 2001-08-21 Microsoft Corporation Non-square scaling of image data to be mapped to pixel sub-components
US6597360B1 (en) * 1998-10-07 2003-07-22 Microsoft Corporation Automatic optimization of the position of stems of text characters
US6115151A (en) 1998-12-30 2000-09-05 Digilens, Inc. Method for producing a multi-layer holographic device
WO2000067247A1 (en) 1999-04-29 2000-11-09 Microsoft Corp Methods, apparatus and data structures for determining glyph metrics for rendering text on horizontally striped displays

Also Published As

Publication number Publication date
BR0109944A (pt) 2003-05-27
US6950103B2 (en) 2005-09-27
US20050237342A1 (en) 2005-10-27
WO2001078053A2 (en) 2001-10-18
RU2002129894A (ru) 2004-03-10
CN100363978C (zh) 2008-01-23
CA2748428C (en) 2015-02-17
CA2405839A1 (en) 2001-10-18
US20040004618A1 (en) 2004-01-08
US7148893B2 (en) 2006-12-12
CA2405839C (en) 2011-10-18
CN1439154A (zh) 2003-08-27
CA2748428A1 (en) 2001-10-18
US6597360B1 (en) 2003-07-22
AU2001251464A1 (en) 2001-10-23
EP1279160A2 (en) 2003-01-29
EP1279160B1 (en) 2014-04-02
BR0109944B1 (pt) 2014-12-16
WO2001078053A3 (en) 2002-07-25
JP2003530603A (ja) 2003-10-14
JP5362162B2 (ja) 2013-12-11
MXPA02009996A (es) 2003-04-25

Similar Documents

Publication Publication Date Title
RU2258265C2 (ru) Автоматическая оптимизация расположения ножек символов текста
US7408555B2 (en) Adjusted Stroke Rendering
RU2258264C2 (ru) Способ и система для асимметричной растеризации данных изображения с избыточной выборкой
US6377262B1 (en) Rendering sub-pixel precision characters having widths compatible with pixel precision characters
US7505040B2 (en) Composite characters font hinting
JP4124494B2 (ja) 置換コンピュータ字体の供給方法及び装置
US7719536B2 (en) Glyph adjustment in high resolution raster while rendering
EP1741063B1 (en) Edge detection based stroke adjustment
US7580039B2 (en) Glyph outline adjustment while rendering
US6437793B1 (en) System for rapidly performing scan conversion with anti-aliasing upon outline fonts and other graphic elements
US7639258B1 (en) Winding order test for digital fonts
KR100749873B1 (ko) 문자 표시 장치, 문자 표시 방법 및 가독 기록 매체
EP1210708B1 (en) Rendering sub-pixel precision characters having widths compatible with pixel precision characters

Legal Events

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

Effective date: 20150306

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

Effective date: 20190410