ОБЛАСТЬ ТЕХНИКИ
Описываемые в данном документе объекты относятся в основном к термотехнологии для рисования изображения посредством подачи луча лазера на термоноситель, обладающий свойством проявления цветов с помощью тепла.
УРОВЕНЬ ТЕХНИКИ
Технологии, предусматривающие перезапись, становятся популярными ввиду их удобства и снижения нагрузки на окружающую среду, и предложены различные модели технологий, предусматривающих перезапись. Среди этих моделей перезаписи, быстро нашли воплощение как коммерческие продукты и выпущены в продажу перезаписываемые термоносители (TRM), использующие тепло.
В известных технологиях, предусматривающих перезапись с помощью тепла, обычно применяется система записи с нагреванием, в которой запись на перезаписываемых термоносителях осуществляется посредством нагревания с помощью термоголовки; однако в недавно предложенных термотехнологиях, предусматривающих перезапись, предложено нагревание перезаписываемых термоносителей путем подачи луча лазера, как описано, например, в публикации № 2004-90026 заявки на патент Японии (именуемо далее «патентным документом 1»). Такая термотехнология, предусматривающая перезапись и использование тепла луча лазера, весьма отличается от термотехнологии, предусматривающей перезапись и использование тепла термоголовки, тем, что термотехнология, предусматривающая перезапись и использование тепла луча лазера, влечет за собой бесконтактное нагревание с помощью луча лазера. В этой конфигурации, поскольку луч лазера подается на носители с некоторого расстояния, оказываются возможными записи на подвижных носителях, таких, как контейнеры, переносимые лентой транспортера, путем применения луча лазера. Таким образом, оказывается возможным расширение диапазона применения термотехнологии, предусматривающей перезапись и использование луча лазера. Отметим, что запись или формирование изображений лучом лазера представляет собой технологию, которая хорошо известна в данной области техники и описана, например, в публикации № 2004-341373 заявки на патент Японии (именуемой далее «патентным документом 2»).
Перезаписываемые термоносители обладают свойствами рассеяния своих цветов при некоторых температурах и проявления своих цветов за счет нагревания при температурах выше температур рассеяния. Вместе с тем, когда к перезаписываемым термоносителям прикладывают избыточное тепло, их свойства могут изменяться, что приводит к явному ухудшению качества, такому, как уменьшение их срока службы или неполное стирание записей.
Например, когда луч лазера, имеющий заранее определенную ширину штриха (штриха луча лазера), неоднократно подается в одну и ту же зону перезаписываемого термоносителя, оказывается возможным приложение избыточного тепла к этой зоне перезаписываемого термоносителя из-за перекрывающегося наложения луча лазера.
Примеры такой зоны включают в себя «пересечение», «поворот» и «сближение» штрихов (что представляется линейным компонентом, иллюстрирующим следы луча лазера, подаваемого в процессе движения).
На фиг. 1 и 2 представлены чертежи, иллюстрирующие примеры символов, записываемых посредством луча лазера на перезаписываемом термоносителе.
На фиг. 1 изображена деформированная цифра «7» (к «7»-ми добавлена диагональная линия), которая включает в себя перекрывающуюся часть P1, образованную за счет пересечения штрихов. Перекрывающаяся часть P1 штрихов образована путем повторной подачи луча лазера на часть штриха, еще обладающего остаточным теплом, который только что был образован на перезаписываемом термоносителе лучом лазера. В результате, штрихи на перезаписываемом термоносителе приобретают перекрывающуюся часть P1, которая имеет более высокую температуру и может оказать негативное влияние на перезаписываемый термоноситель.
Кроме того, штрихи на фиг. 1 включают в себя перекрывающуюся часть P2, образованную поворотом штрихов. Поскольку поворот штрихов на перезаписываемом носителе образуют путем подачи луча лазера в течение относительно большего времени из-за эффекта инерции зеркала, который управляет направлением излучения луча лазера, поворот штрихов (т.е., перекрывающаяся часть P2) на перезаписываемом термоносителе приобретает более высокую температуру, которая может оказать негативное влияние на перезаписываемый термоноситель.
Фиг. 2 иллюстрирует пример «радикала», который является компонентом символов японского алфавита и систематически используется для классификации символов японского алфавита. Отметим, что «радикал» в этом примере появляется на левой стороне символа японского алфавита и имеет значение «Человек». В этом примере, штрихи на фиг. 2 включают в себя фактически не перекрывающуюся часть, образованную следами центра луча лазера; вместе с тем, из-за ширины луча лазера получается перекрывающая часть P3 штрихов, показанных фиг. 2.
В термотехнологии, предусматривающей перезапись и использование луча лазера, описанной в патентном документе 2, предприняты попытки исключить перекрытия штрихов путем деления, рассеяния или укорачивания штрихов и уменьшения длин штрихов, чтобы предотвратить негативное влияние на перезаписываемые термоносители. Например, если два штриха имеют перекрывающуюся часть, то эту перекрывающуюся часть исключают путем деления, рассеяния или укорачивания штрихов, удаляемая часть одного из которых меньше, чем удаляемая часть другого. Если два штриха имеют одинаковые удаляемые части, то один из штрихов подвергают делению, рассеянию или укорачиванию на основе порядка проведения рисуемых штрихов (проведения предыдущего или последующего штриха).
Когда перекрывающуюся часть, включающую в себя ширину штриха, исключают вышеописанным образом, возможны разъединение или фрагментация взаимного сближения двух или более штрихов, что может привести к ухудшению качества рисунка.
Фиг. 3А иллюстрирует штрихи, образующие символ «x», нарисованный курсивом, перед исключением перекрывающейся части. Курсивный символ «x» на фиг. 3А образован из нарисованных без отрыва штрихов ST1-ST7 и нарисованных без отрыва штрихов ST8-ST14.
В этом случае, если перекрывающуюся часть исключают из курсивного символа «x», образованного из двух групп (наборов) непрерывных штрихов, проиллюстрированных на фиг. 3А, курсивный символ «x» может привести к разъединению фрагментированных штрихов, изображенному на фиг. 3B. То есть, каждый из штрихов ST3, ST6, ST9 и ST12 (фиг. 3А) имеет один укороченный конец, что приводит к штрихам ST3', ST6', ST9' и ST12' (фиг. 3B). Штрихи ST4 и ST11 (фиг. 3А) подвергаются рассеянию, а каждый из штрихов ST10 и ST5 (фиг. 3А) имеет два укороченных конца, что приводит к штрихам ST10' и ST5' (фиг. 3B).
Такое ухудшение качества рисунка из-за разъединения или фрагментации штрихов можно наблюдать не только в штрихах, проведенных без отрыва, но и в «пересечении» нарисованного без отрыва символа «α» или «петлевой» части символа «су» в японской азбуке.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Основная задача вариантов осуществления данного изобретения состоит в том, чтобы обеспечить устройство, способ и считываемый компьютером носитель, хранящий программу рисования изображения на термоносителе без ухудшения качества изображения из-за разъединения двух или более соседних штрихов, причем эти устройство, способ и носитель, по существу, исключают одну или более проблем, обуславливаемых ограничениями и недостатками известных технических решений.
В одном варианте осуществления, предложено устройство для рисования изображения на термоносителе. Устройство включает в себя блок генерирования групп штрихов, сконфигурированный с возможностью группирования непрерывных штрихов, образующих изображение желаемого символа, которое должно быть нарисовано, для генерирования одной или более групп штрихов из непрерывных штрихов; блок удаления первой перекрывающейся части, сконфигурированный с возможностью обнаружения первой перекрывающейся части среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах одной и той же группы штрихов; и блок удаления второй перекрывающейся части, сконфигурированный с возможностью обнаружения второй перекрывающейся части среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из групп штрихов.
В еще одном варианте осуществления предложен способ рисования изображения на термоносителе. Способ заключается в том, что группируют непрерывные штрихи, образующие изображение желаемого символа, которое должно быть нарисовано, для генерирования одной или более групп штрихов из непрерывных штрихов; обнаруживают первую перекрывающуюся часть среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах одной и той же группы штрихов; и обнаруживают вторую перекрывающуюся часть среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из групп штрихов.
В еще одном варианте осуществления предложен не изменяющийся со временем считываемый компьютером носитель записи, воплощающий программу управления рисованием для рисования изображения на термоносителе, причем носитель записи, когда его обрабатывает процессор, заставляет блок управления рисованием устройства рисования исполнять набор инструкций программы управления рисованием. Набор инструкций содержит: группирование непрерывных штрихов, образующих изображение желаемого символа, которое должно быть нарисовано, для генерирования одной или более групп штрихов из непрерывных штрихов; обнаружение первой перекрывающейся части среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах одной и той же группы штрихов; и обнаружение второй перекрывающейся части среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из групп штрихов.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Другие задачи и дополнительные признаки вариантов осуществления станут очевидными из нижеследующего подробного описания по прочтении его в связи с прилагаемыми чертежами, при этом:
на фиг. 1 представлен чертеж, иллюстрирующий пример символа, рисуемого на перезаписываемом термоносителе лазерными лучами;
на фиг. 2 представлен чертеж, иллюстрирующий пример символа, рисуемого на перезаписываемом термоносителе лазерными лучами;
на фиг. 3А и 3В представлены чертежи, иллюстрирующие пример символа, образуемого штрихами, и символа, состоящего из штрихов и являющегося результатом разъединения или фрагментации;
на фиг. 4 представлен чертеж, иллюстрирующий еще один пример символа, образуемого штрихами, и символа, состоящего из штрихов и являющегося результатом разъединения или фрагментации;
на фиг. 5 представлен чертеж, иллюстрирующий пример конфигурации устройства рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления;
на фиг. 6 представлен чертеж, иллюстрирующий пример конфигурации блока общего управления устройства рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления;
на фиг. 7 представлен чертеж, иллюстрирующий пример структуры данных параметров, задаваемых пользователем;
на фиг. 8 представлен чертеж, иллюстрирующий пример структуры данных управления рисуемыми символами;
на фиг. 9 представлен чертеж, иллюстрирующий пример структуры данных шрифта;
на фиг. 10А и 10В представлен чертежи, иллюстрирующие пример структуры данных шрифта штрихов;
на фиг. 11А и 11В представлены чертежи, иллюстрирующие пример структуры данных контурного шрифта;
на фиг. 12А и 12В представлены чертежи, иллюстрирующие пример структуры данных управления группы штрихов;
на фиг. 13 представлен чертеж, иллюстрирующий пример структуры данных последовательности пересечения;
на фиг. 14 представлен чертеж, иллюстрирующий пример структуры данных флага или аналогичных данных;
на фиг. 15 представлена блок-схема последовательности операций, иллюстрирующая общий принцип процесса, проводимого устройством рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления;
на фиг. 16А и 16В представлены чертежи, иллюстрирующие примеры процесса, проводимого устройством рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления;
на фиг. 17 представлена блок-схема последовательности операций, иллюстрирующая пример процесса, проводимого устройством рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления;
на фиг. 18 представлена блок-схема последовательности операций, иллюстрирующая пример процесса удаления перекрывающейся части штрихов;
на фиг. 19 представлена блок-схема последовательности операций, иллюстрирующая пример процесса группирования штрихов;
на фиг. 20 изображен пример угла двух штрихов, когда конечная точка одного штриха совпадает с начальной точкой другого штриха;
на фиг. 21А-21С представлены чертежи, иллюстрирующие примеры результатов, получаемых посредством рисования символов, основанных на разных углах группируемых штрихов;
на фиг. 22 представлена блок-схема последовательности операций, иллюстрирующая пример процесса генерирования штрихов для построения желаемого символа полужирным шрифтом;
на фиг. 23 представлен чертеж, иллюстрирующий пример генерирования параллельных штрихов;
на фиг. 24 представлена блок-схема последовательности операций, иллюстрирующая пример процесса удаления перекрывающейся части штрихов в пределах одной и той же группы штрихов;
на фиг. 25 представлена блок-схема последовательности операций, иллюстрирующая пример процесса вычисления кратчайшего расстояния между штрихами;
на фиг. 26А и 26В представлены чертежи, иллюстрирующие примеры штрихов, которые параллельны друг другу;
на фиг. 27 представлен чертеж, иллюстрирующий пример штрихов, которые не параллельны друг другу и не включают в себя пересечение между штрихами;
на фиг. 28 представлена блок-схема последовательности операций, иллюстрирующая пример процесса деления штрихов, когда штрихи скомпонованы параллельно друг другу;
на фиг. 29А и 29В представлены чертежи, иллюстрирующие примеры укорачивания и стирания параллельных штрихов;
на фиг. 30 представлена блок-схема последовательности операций, иллюстрирующая пример процесса деления штрихов, когда штрихи не скомпонованы параллельно друг другу;
на фиг. 31А и 31В представлены чертежи, иллюстрирующие примеры штрихов, которые пересекают друг друга;
на фиг. 32А и 32В представлены чертежи, иллюстрирующие примеры процессов, когда штрихи не параллельны друг другу;
на фиг. 33 представлена блок-схема последовательности операций, иллюстрирующая пример процесса маркировки штриха, который должен быть рассеян;
на фиг. 34А и 34В представлены чертежи, иллюстрирующие примеры, когда расстояние между пересечениями корректируют на основании угла пересечения штрихов;
на фиг. 35 представлена блок-схема последовательности операций, иллюстрирующая пример процесса удаления перекрывающейся части штрихов среди групп штрихов;
на фиг. 36 представлена блок-схема последовательности операций, иллюстрирующая еще один пример процесса удаления перекрывающейся части штрихов среди групп штрихов;
на фиг. 37А и 37В представлены чертежи, иллюстрирующие примеры штрихов, которые введены в небольшой контакт друг с другом;
на фиг. 38А и 38В представлены блок-схемы последовательности операций, иллюстрирующие пример процесса выбора одной из групп штрихов в качестве группы штрихов, подвергающейся укорачиванию или делению;
на фиг. 39А и 39В представлены примеры рисования символов полужирным шрифтом; и
на фиг. 40А и 40В представлены чертежи, иллюстрирующие примеры, в которых улучшена ситуация, складывающаяся, когда происходит ухудшение внешнего вида желаемых символов из-за ограничений и недостатков известных технических решений.
ЛУЧШИЙ СПОСОБ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Ниже, со ссылками на прилагаемые чертежи, приводится описание предпочтительных вариантов осуществления.
КОНФИГУРАЦИЯ
На фиг. 5 представлен чертеж, иллюстрирующий пример конфигурации устройства 1 рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления.
Показанное на фиг. 5 устройство 1 рисования на перезаписываемых термоносителях включает в себя блок 11 общего управления, сконфигурированный с возможностью управления всеми операциями устройства 1 рисования на перезаписываемых термоносителях, и лазерный излучающий блок 12, сконфигурированный с возможностью излучения луча лазера. Кроме того, лазерный излучающий блок 12 включает в себя лазерный генератор 13, линзу 14, регулирующую диаметр пятна, выполненную с возможностью регулирования диаметра пятна луча лазера (т.е., увеличения диаметра пятна), зеркало 15, управляющее направлением, сконфигурированное с возможностью изменения направления излучения луча лазера, электродвигатель 16, управляющий направлением, сконфигурированный с возможностью привод зеркала 15, управляющего направлением, и линзу 17, управляющую фокусным расстоянием, выполненную с возможностью сведения луча лазера, перенаправляемого зеркалом 15, управляющим направлением, на перезаписываемый термоноситель 2.
В качестве лазерного генератора 13 обычно используют полупроводниковый лазерный диод (ЛД); однако можно также использовать генератор на основе газового лазера, генератор на основе твердотельного лазера, генератор на основе жидкостного лазера и т.п. Электродвигатель 16, управляющий направлением, может быть серводвигателем, сконфигурированным с возможностью управления отражающей поверхностью зеркала 15, управляющего направлением, в двух осевых направлениях. Электродвигатель 16, управляющий направлением, и зеркало 15, управляющее направлением, образуют гальванометрическое зеркало.
Перезаписываемый термоноситель 2 может быть сформирован из пленки, имеющей разделенные лейкокраситель и проявитель. Перезаписываемый термоноситель 2, имеющий такую конфигурацию, может проявлять цвет, когда перезаписываемый термоноситель 2 быстро охлаждается при заранее определенной температуре Та, так что лейкокраситель и проявитель становятся связанными, и может рассеивать цвет, когда перезаписываемый термоноситель 2 охлаждается при заранее определенной температуре Tb, меньшей, чем заранее определенная температура Та, так что лейкокраситель и проявитель снова разделяются. Перезаписываемый термоноситель 2 может быть перезаписываемой термочувствительной бумагой для записи. В устройстве 1 рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления можно управлять ухудшением качества такого перезаписываемого термоносителя; однако можно управлять и ухудшением качества неперезаписывмаемых носителей.
На фиг. 6 представлен чертеж, иллюстрирующий пример конфигурации блока 11 общего управления. В частности, фиг. 6 иллюстрирует конфигурацию аппаратных средств блока 11 общего управления в случае, если блок 11 общего управления воплощен главным образом программными средствами. Соответственно, компьютер в этом случае является физическим объектом. В случае если компьютер не является физическим объектом для всего блока 11, блок 11 общего управления воплощают посредством интегральной схемы (ИС), предназначенной для выполнения конкретной функции, например, посредством специализированной интегральной микросхемы (ASIC).
Блок 11 общего управления включает в себя центральный процессор (ЦП) 111, память 112, запоминающее устройство 113, устройство 114 ввода, устройство 115 отображения, накопитель 116 на компакт-дисках или универсальных цифровых дисках (CD/DVD) и сетевое устройство 117. Запоминающее устройство 113, такое, как накопитель на жестких магнитных дисках (HDD), включает в себя базу 1131 данных шрифтов, в которой хранятся данные шрифтов, в том числе шрифты штрихов и контурные шрифты для серии символов, программу 1132 рисования символов, которая генерирует инструкцию рисования для рисования символов путем исключения перекрывающейся части из данных шрифтов, и управляет лазерным излучающим блоком 12 (см. фиг. 5).
ЦП 111 извлекает программу 1132 рисования символов из запоминающего устройства 113 для исполнения программы 1132 рисования символов таким образом, что рисование символа на перезаписываемом термоносителе 2 осуществляется на основании процедуры, описываемой ниже. Отметим, что память 112 может быть энергозависимой памятью, такой, как динамическая оперативная память (DRAM), используемая в качестве рабочей зоны, когда ЦП 111 исполняет программу 1132 рисования символов. Устройство 114 ввода может быть мышью или клавиатурой, применяемой пользователем для ввода инструкций управления лазерным излучающим блоком 12. Устройство 115 отображения применяется в качестве пользовательского интерфейса, который отображает графический пользовательский интерфейс (GUI) с заранее определенным количеством цветов при заданном разрешении на основании экранной информации, обеспечиваемой программой 1132 рисования символов. Например, устройство 115 отображения отображает поле ввода, чтобы пользователь мог ввести символ, который пользователь хочет нарисовать на перезаписываемом термоносителе 2.
Накопитель 116 на CD/DVD структурно сконфигурирован с возможностью удержания или выдачи CD/DVD 31. Когда накопитель 116 на CD/DVD сконфигурирован с возможностью извлечения данных из CD/DVD 31 или записи данных на CD/DVD 31, а накопитель 116 на CD/DVD удерживает CD/DVD 31, база 1131 данных шрифтов и программа 1132 рисования символов сохраняются на CD/DVD 31, готовых к доставке. Таким образом, извлечение базы 1131 данных шрифтов и программы 1132 рисования символов производится с CD/DVD 31, и извлеченная программа 1132 рисования символов устанавливается в запоминающем устройстве 113. CD/DVD 31 может представлять собой любую из разновидностей энергонезависимой памяти, такую, как диск высокого разрешения, работающий на основе сине-фиолетового лазера (Blu-ray диск (зарегистрированный товарный знак)), карта памяти (SD-карта), флэш-карта (зарегистрированный товарный знак), мультимедийная карта и xD-карта.
Сетевое устройство 117 служит в качестве интерфейса (например, Ethernet-карты (зарегистрированный товарный знак)) для соединения с локальной сетью (LAN) или Internet. Сетевое устройство 117 выполнено с возможностью исполнения процессов в соответствии с протоколами, заданными на физическом уровне или канальном уровне эталонной модели взаимодействия открытых систем (OSI), и с возможностью передачи инструкций рисования в лазерный излучающий блок 12 на основании кодирования символов. Данные 1131 шрифтов и программу 1132 рисования символов можно загружать из заранее определенных серверов, соединенных через сеть. В качестве альтернативы, устройство 11 общего контроля и лазерный излучающий блок 12 могут иметь прямое физическое соединение посредством универсальной последовательной шины (USB), шины, соответствующей спецификации IEEE (Института инженеров по электротехнике и радиоэлектронике) 1394, беспроводной USB или посредством Bluetooth без соединения через сеть.
Целевой символ, который желательно нарисовать на перезаписываемом носителе 2, можно хранить как список в запоминающем устройстве 113, или можно вводить посредством устройства 114 ввода. Целевой символ задают посредством системы кодирования символов, такой, как UNICODE (система представления (кодировки) символов (букв национальных алфавитов, знаков препинания, графических символов) с помощью 16-разрядных кодов) или JIScode (система представления (кодировки) символов согласно японским промышленным стандартам). Блок 11 общего управления осуществляет извлечение данных шрифта символа для целевого символа в соответствии с заданным кодом символа из базы данных шрифтов, преобразует извлеченные данные шрифта символа для целевого символа в набор инструкций рисования и исполняет набор инструкций рисования для управления лазерным излучающим блоком 12.
На фиг. 7-14 представляют собой примеры данных, обрабатываемых блоком 11 общего управления устройства 1 рисования на перезаписываемых термоносителях.
На фиг. 7 представлен чертеж, иллюстрирующий пример структуры данных параметров, задаваемых пользователем. Эта структура данных параметров состоит из элементов, включающих в себя «тип символов», «строку символов» («кодовую матрицу символов»), «полужирный шрифт (количество параллельных штрихов, ширину перекрытия)», «межсимвольный интервал», «интервал между строками», «направление рисования линии», «диапазон рисования», «допустимый диапазон рисования» и «поворот».
На фиг. 8 представлен чертеж, иллюстрирующий пример структуры данных, присущей данным управления рисуемыми символами. Структура данных, присущая данным управления рисуемыми символами, состоит из элементов, включающих в себя «порядковый номер (порядок рисования)», «код символа», «положение рисования (координату X, координату Y)» и «увеличение при рисовании».
На фиг. 9 представлен чертеж, иллюстрирующий пример структуры данных, присущей данным шрифта. Структура данных, присущая данным шрифта, включает в себя данные шрифта штрихов и данные контурного шрифта. Данные шрифта штрихов включают в себя символы, образованные следами центральных линий или одиночными штрихами, а данные контурного шрифта включают в себя символы, образованные контурными следами или полыми контурами. Каждый символ, хранящийся в данных шрифта штрихов, включает в себя «код символа», который связан с «данными шрифта штрихов». Точно также, каждый символ, хранящийся в данных шрифта штрихов, включает в себя «код символа», который связан с «данными контурного шрифта».
На фиг. 10А представлен чертеж, иллюстрирующий пример структуры данных, присущей данным шрифта штрихов. Данные шрифта штрихов включают в себя список, состоящий из строки, начинающейся с «c», что представляет «код символов», строки, начинающейся с «m», что представляет «миграцию данных», строки, начинающейся с «d», что представляет рисование прямой линии, и строки, начинающейся с «b» (не показанным в этом примере), что представляет рисование кривой линии. Фиг. 10B иллюстрирует символ, соответствующий данным шрифта штрихов, проиллюстрированным на фиг. 10A.
На фиг. 11А представлен чертеж, иллюстрирующий пример структуры данных контурного шрифта. Данные контурного шрифта включают в себя список, состоящий из строки, начинающейся с «c», что представляет «код символов», строки, начинающейся с «m», что представляет «миграцию данных», строки, начинающейся с «d», что представляет рисование прямой линии, и строки, начинающейся с «b» (не показанным в этом примере), что представляет рисование кривой линии. Фиг. 11B иллюстрирует символ, соответствующий данным контурного шрифта, проиллюстрированным на фиг. 11A.
На фиг. 12А представлен чертеж, иллюстрирующий пример структуры данных управления группы штрихов. Данные управления группы штрихов включают в себя список, состоящий из строки, начинающейся с «GN», что представляет «порядковый номер группы штрихов», строки, начинающейся с «NM», что представляет «суммарное количество штрихов, связанных с группой штрихов», и данных, связанных с группой штрихов. Данные каждого штриха включают в себя строку, начинающуюся с «SN», что представляет номер штриха, строку, начинающуюся с «XS», что представляет начальную точку координаты Х, строку, начинающуюся с «YS», что представляет начальную точку координаты Y, строку, начинающуюся с «XE», что представляет конечную точку координаты Х, и строку, начинающуюся с «YE», что представляет конечную точку координаты Y. Фиг. 12B иллюстрирует пример группы штрихов, соответствующей данным управления группы штрихов проиллюстрированным на фиг. 12A.
На фиг. 13 представлен чертеж, иллюстрирующий пример структуры данных, присущей данным последовательности пересечения, связанным с соответствующими группами штрихов. Структура данных, присущая данным последовательности пересечения для каждого пересечения состоит из элементов, включающих в себя «номер первой группы штрихов», «номер штриха в первой группе штрихов», «номер второй группы штрихов», «номер штриха во второй группе штрихов», «координаты пересечения» и «угол пересечения».
На фиг. 14 представлен чертеж, иллюстрирующий пример структуры данных флага и других данных. Структура данных флага и других данных состоит из элементов, включающих в себя «метку подверженности рассеянию», «член флага», «маска флага», «флаг», «флаг и другое» и «суммарная удаляемая площадь».
РАБОТА
На фиг. 15 представлена блок-схема последовательности операций, иллюстрирующая общий принцип процесса, проводимого устройством рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления. Фиг. 16A иллюстрирует пример процесса, в ходе которого рисуют обычный символ, а фиг. 16B иллюстрирует пример процесса, в ходе которого рисуют обычный символ полужирным шрифтом.
На фиг. 15 показано, что когда процесс начинается, получают (этап S11) информацию о центре линии шрифта целевого символа, который должен быть нарисован, которую образуют одним штрихом, либо двумя или более штрихами. Случай (i) на фиг. 16A иллюстрирует такой процесс получения информации о центре линии шрифта (обычного) целевого символа на этапе S11. Отметим, что такой же процесс получения информации о центре линии целевого символа, рисуемого полужирным шрифтом, проводится так, как показано в случае (i) на фиг. 16A.
Возвращаясь к фиг. 15, следует заметить, что выбирают (этап S12) группу штрихов, состоящую из серии непрерывных штрихов. Случай (ii) на фиг. 16A иллюстрирует такой процесс выбора группы штрихов, состоящей из штрихов для (обычного) целевого символа на этапе S12. Отметим, что такой же процесс выбора группы штрихов для целевого символа, рисуемого полужирным шрифтом, проводится так, как показано в случае (ii) на фиг. 16A.
После этого - в случае символа, рисуемого полужирным шрифтом, - последовательно генерируют (этап S13) параллельные штрихи для увеличения ширины штриха целевого символа. Случай (iii) на фиг. 16B иллюстрирует такой процесс генерирования параллельных штрихов для увеличения ширины штриха целевого символа, рисуемого полужирным шрифтом, на этапе S13.
Возвращаясь к фиг. 15, следует заметить, что перекрывающуюся часть штрихов в пределах группы штрихов последовательно удаляют (этап S14). Случаи (iv) на фиг. 16A и 16B иллюстрируют такой процесс удаления перекрывающейся части штрихов в пределах группы штрихов в соответствующем обычном символе и символе, рисуемом полужирным шрифтом, на этапе S14. В этом примере удаляют перекрывающуюся часть петли символа «су» японской азбуки. Отметим, что перекрывающаяся часть выводится в процессе рисования петли символа в направлении сверху вниз.
Возвращаясь к фиг. 15, следует заметить, что после этого удаляют (этап S15) перекрывающуюся часть штрихов среди групп штрихов. Случаи (v) на фиг. 16A и 16B иллюстрируют такой процесс удаления перекрывающейся части штрихов среди групп штрихов в соответствующем обычном символе и символе, рисуемом полужирным шрифтом, на этапе S15. В этом примере удаляют перекрывающуюся часть, полученную в пересечениях между прямой горизонтальной линией целевого символа и петлей целевого символа. Отметим, что перекрывающаяся часть среди групп штрихов выводится в процессе рисования прямой горизонтальной линии слева направо и рисования петли сверху вниз.
Возвращаясь к фиг. 15, следует заметить, что осуществляют вывод (этап S16) данных рисования целевого символа, из которого удалены перекрывающаяся часть штрихов в пределах группы штрихов и перекрывающаяся часть штрихов среди групп штрихов, и - для завершения процесса - рисуют целевой символ на основании данных рисования.
На фиг. 17 представлена блок-схема последовательности операций, иллюстрирующая пример процесса, проводимого устройством рисования на перезаписываемых термоносителях в соответствии с вариантом осуществления.
На фиг. 17 показано, что когда процесс начинается, проверяют (этап S101) включают ли параметры, заданные пользователем, в себя какой-либо формальный дефект.
После этого (на этапе S102) получают из параметров, задаваемых пользователем, код символов, межсимвольный интервал и интервал между строками, чтобы выяснить положение рисования для каждого символа, и задают в данных управления рисуемыми символами вычисленное положение рисования для каждого символа.
Потом (на этапе S103) вычисляют увеличение при рисовании для каждого символа и задают в данных управления рисуемыми символами вычисленное увеличение при рисовании для каждого символа. Шрифт характеризуют, например, значениями координат в матрице размером 256×256 пикселей. Вычисляют увеличение при рисовании для укрупнения размера этого исходного шрифта символа до размера (например, 3 см в ширину и 2,5 см в высоту), заданного пользователем. Поскольку штрих включает в себя ширину штриха, увеличение при рисовании вычисляют на основании ширины штриха, имеющей вдвое меньший размер (в высоту и в ширину), чем размер шрифта, заданный пользователем. Когда рисуют символ полужирным шрифтом, увеличение при рисовании вычисляют на основании количества параллельных штрихов, заданного пользователем. Например, если параллельно рисуют от трех до девяти штрихов, то ширина штриха становится в три - девять раз большей, чем исходная. Таким образом, увеличение при рисовании вычисляют на основании ширины штриха, соответствующей половине результирующего (укрупненного) размера.
После этого, для каждого символа, начиная с верхнего символа в списке, определяют (этап S104), превышает ли размер символа диапазон рисования, заданный пользователем, или допустимый диапазон рисования (приблизительно равный ширине носителя). Если задан поворот символа, то проверяют, выступают ли штрихи поворачиваемого символа из диапазона рисования или допустимого диапазона рисования.
После этого, если символ включает в себя выступающие штрихи, такой символ исключают (этап S105) из списка символов, подлежащих рисованию (т.е., стирают данные управления рисуемыми символами для этого символа).
После этого, определяют (этап S106), завершен ли вышеописанный процесс по всем символам в списке. Если процесс не завершен по всем символам в списке («Нет» на этапе S106), то процесс определения того, включает ли символ в себя выступающие штрихи, проводят для следующего символа (возврат к этапу S104).
C другой стороны, если процесс завершен по всем символам в списке («Да» на этапе S106), то изменяют (этап S107) порядок рисования символов в списке, чтобы увеличить скорость рисования. Например, если символы в строках рисуют, соблюдая горизонтальную ориентацию строк, то исходное определение (по умолчанию) порядка рисования включает в себя рисование символа в строках в направлении слева направо и рисование в направлении сверху вниз. Вместе с тем, поскольку существует большое расстояние от правого конца первой строки символов до левого конца второй строки символов под первой строкой символов, рисование символов с помощью вышеупомянутого определения порядка рисования может занимать длительное время. Поэтому направление слева направо порядка рисования заменяют направлением справа налево в каждой другой строке.
После этого, получают (этап S108) информацию штрихов из данных шрифта для каждого символа на основании определенного порядка рисования. То есть, получают координаты штриха из данных штриха на основании ранее заданного усиления при рисовании. В случае рисования обычного символа, информацию штрихов получают из шрифта штрихов, а в случае рисования контурного символа, информацию штрихов получают из контурного шрифта.
После этого, удаляют (этап S109) перекрывающуюся часть штрихов. Поскольку перекрывающаяся часть штрихов генерирует тепло, этот процесс проводят для того, чтобы не создавать перекрывающуюся часть штрихов путем деления штрихов на подходящие части или укорачивания некоторых штрихов или стирания некоторых штрихов. Отметим, что штрих представляет собой информацию сегмента линии; вместе с тем, штрих обладает шириной штриха. Таким образом, удаление перекрывающейся части может понадобиться не только в случае, если штрихи пересекают друг друга, но и в случае, если штрихи сближаются друг с другом. Подробности процесса удаления перекрывающейся части будут описаны ниже.
Затем определяют (этап S110), завершен ли вышеописанный процесс по всем символам в списке. Если процесс не завершен по всем символам в списке («Нет» на этапе S110), процесс определения того, включает ли символ в себя выступающие штрихи, проводят для следующего символа (возврат к этапу S108).
С другой стороны, если процесс завершен по всем символам в списке («Да» на этапе S110), проводят (этап S111) процесс преобразования целевого символа в контурную форму. Этот проводят лишь в случае, если желательно нарисовать контурный символ.
После этого, на основании параметров поворачивают штрихи (этап S112). Поскольку штрихи определяются конечными точками координат линий, конечные точки координат линий можно поворачивать просто на основании параметров.
После этого, преобразуют (этап S113) формат данных штрихов, используемый во внутреннем процессе, в формат данных рисования, интерпретируемый контроллером рисования (нижним контроллером), тем самым заканчивая процесс.
На фиг. 18 представлена блок-схема последовательности операций, иллюстрирующая пример процесса удаления перекрывающейся части штрихов (этап S109 на фиг. 17).
На фиг. 18 показано, что когда процесс удаления перекрывающейся части штрихов начинается, определяют (этапы S201, S202), является ли один из целевых символов сплошь закрашенным символом. Сплошь закрашенный символ указывает те символы, которые трудно выразить обычными штрихами, например, форма сплошь закрашенного кружка или форма сплошь закрашенной звездочки, которые определяются параллельными штрихами. Поскольку в данных шрифта хранятся данные линий с исключительно мелкими шаги таких символов, может понадобиться удаление (утонение) некоторых из линий, образующих символ, в соответствии с шириной штриха целевого символа. Сплошь закрашенный символ определяют на основании того, выровнены ли все штрихи приблизительно параллельно.
Если целевой символ определен как сплошь закрашенный символ («Да» на этапе S202), то сплошь закрашенный символ временно преобразуют в формат растрового изображения, а затем осуществляют внутреннее сканирование символа растрового изображения, чтобы определить штрихи (этап S203). После этого процесс заканчивается.
С другой стороны, если целевой символ на является сплошь закрашенным символом («Нет» на этапе S202), штрихи объединяют (этап S204). То есть, штрихи, хранящиеся в данных шрифта, выравнивают по прямой линии; вместе с тем, два или более штрихов, которые перекрываются, определяют как отдельные объекты. Таким образом, перекрывающиеся линии объединяют и определяют в качестве одной прямой линии.
После этого, порядок сохранения всех штрихов изменяют так, что штрихи, имеющие идентичные конечные точки, располагают смежно друг с другом, и затем сохраняют штрихи, перекомпонованные в измененном порядке сохранения (этап S205).
Затем определяют, подвергаются ли сохраненные перекомпонованные штрихи рисованию символов в обратном порядке (этап S206).
Если сохраненные перекомпонованные штрихи подвергаются рисованию символов в обратном порядке («Да» на этапе S206), процесс удаления перекрывающейся части штрихов здесь и оканчивается.
В этом случае, хотя имеется перекрывающаяся часть, которая должна быть удалена, сохраненные данные символа сами не подвергаются рисованию. Соответственно, последующие этапы удаления перекрывающейся части необязательны.
Если целевой символ не подвергается рисованию символов в обратном порядке («Нет» на этапе S206), сохраненные перекомпонованные штрихи группируют (этап S207). Этот процесс группирования осуществляют потому, что два или более штрихов, имеющих общие конечные точки, могут быть непрерывными. Таким образом, непрерывные штрихи рисуют лазером, не выключая излучение лазера. Отметим, что эта группа представляет собой блок штрихов, образованный серией непрерывных штрихов. Подробности процесса группирования непрерывных штрихов будут описаны ниже.
Потом определяют, есть ли еще какая-нибудь перекрывающаяся часть в пределах группы штрихов, и если перекрывающаяся часть в пределах группы штрихов, есть, то штрихи, имеющие перекрывающуюся часть, подвергают делению, укорачиванию или стиранию (этап S208). Подробности процесса деления, укорачивания или стирания штрихов, имеющих перекрывающуюся часть в пределах группы штрихов, будут описаны ниже.
После этого, маркируют (этап S209) группы штрихов, которые подлежат рассеянию. Когда штрихи, имеющие перекрывающуюся часть, делят, укорачивают или стирают, можно полностью рассеивать эти штрихи, имеющие перекрывающуюся часть, или можно рассеивать перекрывающуюся часть, заключенную между двумя штрихами. В результате, видимость штрихов может значительно ухудшаться ввиду недостатка количества информации. Таким образом, может оказаться желательной маркировка тех штрихов, которые полежат рассеянию, чтобы не делить или укорачивать штрихи. Подробности процесса маркировки штрихов, подлежащих рассеянию, будут описаны ниже.
После этого, выбирают две группы штрихов и удаляют (этап S210) перекрывающуюся часть штрихов между выбранными группами штрихов. Подробности процесса удаления перекрывающейся части штрихов среди групп штрихов будут описаны ниже.
После этого, продолжают (этап S211) конечные точки групп штрихов. Поскольку части конечных точек групп штрихов склонны к легкому высвобождению тепла, фактически нарисованные штрихи могут оказаться короче, чем желаемые длины групп штрихов.
Таким образом, желаемые длины групп штрихов можно отображать, продолжая части конечных точек групп штрихов.
После этого, осуществляют перекомпоновку (изменяют) (этап S212) порядка рисования штрихов в пределах символа. Время рисования, затрачиваемое на рисование штрихов символа лазерным маркером, можно уменьшить, рисуя штрихи в эффективном порядке рисования и уменьшая ненужный переход (движение при отсутствии излучения лазера).
После этого, задают (этап S213) переход (перескок) через пересечение. Переход через пересечение указывает переходы лазерного маркера с такой же скоростью, как скорость маркировки. В общем случае, переход лазерного маркера выполняется со скоростью, которая выше скорости маркировки. Поскольку время ожидания вставки больше не требуется за счет задания скорости перехода лазерного маркера для перехода между метками такой, как скорость маркировки лазерным маркером, время рисования, затрачиваемое на рисование штрихов символа, может быть уменьшено. После этого процесс оканчивается.
На фиг. 19 представлена блок-схема последовательности операций, иллюстрирующая пример процесса группирования штрихов (этап S207 на фиг. 18).
На фиг. 19 показано, что когда процесс группирования штрихов начинается, определяют (этап S301), является ли целевой символ символом, рисуемым жирным шрифтом. Определение того, является ли целевой символ символом, рисуемым жирным шрифтом, проводят на основании параметра, задаваемого пользователем.
Если целевой символ является символом, рисуемым жирным шрифтом («Да» на этапе S301), проводят следующие процессы (этапы S302-S307) для сплошь закрашенного символа. С другой стороны, если целевой символ не является символом, рисуемым жирным шрифтом («Нет» на этапе S301), следующие процессы (этапы S302-S307) для сплошь закрашенного символа не проводятся.
В ходе процессов для символа, рисуемого жирным шрифтом, сначала выбирают (этап S302) два штриха и определяют (этап S303), совпадает ли конечная точка одного из выбранных двух штрихов с начальной точкой другого штриха.
Если конечная точка одного из выбранных штрихов совпадает с начальной точкой другого штриха («Да» на этапе S303), определяют (этап S304), превышает ли угол двух штрихов относительно совпавшей точки 85 градусов. Фиг. 20 иллюстрирует пример угла двух штрихов, при котором конечная точка одного штриха совпадает с начальной точкой другого штриха. Отметим, что «угол 85 градусов» описывается ниже.
Возвращаясь к фиг. 19, следует заметить, что если угол выбранных двух штрихов относительно совпавшей точки превышает 85 градусов («Нет» на этапе S304), два штриха группируют в одну и ту же группу штрихов (этап S305).
С другой стороны, если конечная точка одного из выбранных штрихов не совпадает с начальной точкой другого штриха («Нет» на этапе S303), или угол выбранных двух штрихов относительно совпавшей точки не превышает 85 градусов («Да» на этапе S304), выбранные два штриха не группируют в одну и ту же группу штрихов (не проводят этап S305).
После этого, определяют (этап S306), все ли комбинации штрихов проверены в ходе вышеупомянутых процессов на этапах S303 и S304. Если не все комбинации штрихов проверены («Нет» на этапе S306), проводят процесс выбора двух штрихов (возврат к этапу S302).
С другой стороны, если проверены все комбинации штрихов («Да» на этапе S306), генерируют параллельные штрихи, в соответствии с желаемой толщиной штриха (этап S307). Например, если жирный шрифт выражен тремя штрихами, генерируют два параллельных штриха по одному с каждой стороны целевого штриха. Подробности процесса генерирования параллельных штрихов будут описаны ниже.
Далее, в случаях либо целевого символа, рисуемого жирным шрифтом, либо обычного целевого символа, выбирают два штриха (этап S308) и определяют (этап S309) совпадает ли конечная точка одного из выбранных двух штрихов с начальной точкой другого штриха.
Если начальная точка одного из выбранных штрихов совпадает с конечной точкой другого («Да» на этапе S309), определяют (этап S310), превышает ли угол двух штрихов относительно совпавшей точки 135 градусов. Отметим, что «угол 135 градусов» описывается ниже.
Если угол двух штрихов относительно совпавшей точки превышает 135 градусов («Нет» на этапе S310), два штриха группируют в одну и ту же группу штрихов (этап S311).
С другой стороны, если конечная точка одного из выбранных штрихов не совпадает с начальной точкой другого штриха («Нет» на этапе S309), или угол выбранных двух штрихов относительно совпавшей точки не превышает 135 градусов («Да» на этапе S310), выбранные два штриха не группируют в одну и ту же группу штрихов (не проводят этап S311).
После этого определяют (этап S312) все ли комбинации штрихов проверены. Если проверены не все ли комбинации штрихов («Нет» на этапе S312), проводится процесс выбора двух штрихов на этапе S302 (возврат к этапу S308).
С другой стороны, если все комбинации штрихов проверены («Да» на этапе S312), процесс оканчивается.
В ходе вышеописанных процессов важен угол выбранных двух штрихов относительно совпавшей точки, потому что выбранные два штриха, имеющие острый угол относительно совпавшей точки, предпочтительно можно группировать в разные группы штрихов (см., например, острый угол изогнутой части, образованный в точке P2, изображенной на правой стороне фиг. 1). Поскольку перенаправление направления маркировки во время маркировки изогнутой части двух штрихов, имеющих острый угол, лучом лазера может занять длительное время из-за инерции зеркала, луч лазера можно применять к изогнутой части длительное время, в результате чего изогнутая часть может перегреваться. Соответственно, желательно, чтобы два штриха, образующие изогнутую часть, группировались в несколько групп штрихов, а луч лазера временно отключался бы при маркировке изогнутой части двух штрихов, имеющих острый угол.
В случае символа, рисуемого жирным шрифтом, желательно группировать генерируемые параллельные штрихи. Поскольку условия угла при группировании параллельных штрихов являются разными, группирование может потребоваться дважды.
Если условие угла не обеспечивается, изогнутая часть двух штрихов, имеющих острые углы, может привести к примерам, изображенным на фиг. 21A. Если угол 135 градусов задан для условия угла, который является таким же, как угол, используемый в последующем процессе, изогнутые части двух штрихов, имеющих острые углы, могут привести к примерам, изображенным на фиг. 21B. То есть, верхняя левая часть цифры «5» демонстрирует ухудшенный внешний вид. Таким образом, в результате получается подходящий угол 85 градусов, применяемый в процессе, и примеры, изображенные на фиг. 21C.
На фиг. 22 представлена блок-схема последовательности операций, иллюстрирующая пример процесса генерирования параллельных штрихов в соответствии с желаемой толщиной (этап S307 на фиг. 19).
На фиг. 22 показано, что когда процесс начинается, заново получают (этап S401) матрицу групп штрихов (данные управления рисуемыми символами), которую надо сохранить.
После этого корректируют исходные номера групп штрихов (этап S402). Группы штрихов идентифицируют разными номерами штрихов, получаемыми путем приращения единицы к номеру, начиная с «0». Разные номера штрихов изменяют на основании количества параллельных штрихов, задаваемых пользователем. Например, если жирный шрифт выражают компоновкой трех параллельных штрихов параллельно друг другу, то текущие номера групп штрихов «0, 1, 2, 3,..., n» соответственно заменяют новыми номерами групп штрихов «1, 4, 7, 10,..., 3n+l». Если жирный шрифт выражают компоновкой пяти параллельных штрихов параллельно друг другу, то текущие номера групп штрихов «0, 1, 2, 3,..., n» соответственно заменяют новыми номерами групп штрихов «2, 7, 12, 17,..., 5n+2".
То есть, когда количество параллельных штрихов равно «i», группы параллельных штрихов, генерируемых параллельно группе идентичных штрихов, последовательно сохраняются, а текущий штрих располагается в центре последовательных параллельные штрихов. Этот процесс обеспечивается, чтобы определить, который из штрихов является центральным штрихом в последующем процессе.
После этого, получают одну из групп штрихов (этап S403), получают один из штрихов в полученной группе штрихов (этап S404) и вычисляют вектор единичной нормали полученного штриха (этап S405). Вектор единичной нормали штриха вычисляют на основании уравнения прямой линии, проходящей через начальную точку и конечную точку штрихов.
После этого, генерируют (этап S406) дополнительный штрих, имеющий такую же длину, как длина сфокусированного штриха в положении, где величина ширины штриха смещена в направлении вектора единичной нормали. Точнее, величина ширины перекрытия (перекрытия при сплошном закрашивании), задаваемой пользователем, в положении смещения меньше.
После этого, определяют (этап S407) все ли штрихи в группе, сфокусированной на штрихе, проверены. Если проверены не все штрихи в группе, сфокусированной на штрихе («Нет» на этапе S407), то проводят процесс получения одного из штрихов в группе, сфокусированной на штрихе, на этапе S404 (возврат к этапу S404).
Если проверены все штрихи в группе, сфокусированной на штрихе («Да» на этапе S407), то определяют (этап S408), не надо ли генерировать другие параллельные штрихи, на основании количества штрихов, заданных пользователем. Если надо генерировать другие параллельные штрихи («Нет» на этапе S408), проводят процесс получения одного из штрихов в группе, сфокусированной на штрихе, на этапе S404 (возврат к этапу S404).
С другой стороны, если другие параллельные штрихи генерировать не надо («Да» на этапе S408), то будет проведен следующий процесс.
В этот момент, последовательные параллельные штрихи не соединены друг с другом надлежащим образом, и изогнутая часть параллельных штрихов внутренней стороны перекрывается, а изогнутая часть параллельных штрихов внешней стороны разрывается (разъединяется), как изображено на виде (a) фиг. 23. Таким образом, эта перекрывающаяся часть параллельных штрихов внутренней стороны и разъединенная часть параллельных штрихов внешней стороны корректируются в последующих процессах.
Возвращаясь к фиг. 22, следует заметить, что выбирают (этап S409) смежные параллельные штрихи, связанные с одной и той же группой штрихов (например, верхние штрихи на виде (a) фиг. 23), и вычисляют (этап S410) пересечение выбранных параллельных штрихов.
После этого, укорачивают или продолжают штрихи (этап S411), чтобы достичь вычисленного пересечения.
После этого определяют (этап S412), все ли комбинации штрихов в группе, сфокусированной на штрихе, проверены. Если проверены не все комбинации штрихов в группе, сфокусированной на штрихе («Нет» на этапе S412), проводят процесс выбора смежных параллельных штрихов, связанных с одной и той же группой штрихов, на этапе S409 (возврат к этапу S409).
С другой стороны, если все комбинации штрихов в группе, сфокусированной на штрихе, проверены («Да» на этапе S412), определяют (этап S413) все ли группы штрихов проверены. Если проверены не все группы штрихов («Нет» на этапе S413), проводят процесс получения одной из групп штрихов на этапе S403 (возврат к этапу S403).
Если все группы штрихов проверены («Да» на этапе S413), процесс оканчивается.
На фиг. 24 представлена блок-схема последовательности операций, иллюстрирующая пример процесса удаления перекрывающихся частей штрихов в группе штрихов (этап S208 на фиг. 18).
На фиг. 24 показано, что когда процесс удаления перекрывающихся частей штрихов в группе штрихов начинается, получают одну из групп штрихов (этап S501).
После этого получают два штриха в группе штрихов (этап S502).
После этого вычисляют (этап S503) кратчайшее расстояние между двумя штрихами. Подробности процесса вычисления кратчайшего расстояния между двумя штрихами будут описаны ниже.
После этого определяют (этап S504), равно ли вычисленное кратчайшее расстояние между двумя штрихами ширине штриха, или меньше нее.
Если вычисленное кратчайшее расстояние между двумя штрихами больше, чем ширина штриха («Нет» на этапе S504), то два штриха не перекрываются, и поэтому проводят процесс вычисления кратчайшего расстояния между штрихами следующей комбинации.
С другой стороны, если вычисленное кратчайшее расстояние между двумя штрихами равно ширине штриха, или меньше нее («Да» на этапе S504), два штриха перекрываются, и тогда определяют (этап S505) параллельны ли два штриха после этого.
Если два штриха параллельны друг другу («Да» на этапе S505), то последний штрих из двух, сохраненный после сохранения первого штриха из двух, подвергают делению на параллельные штрихи (этап S506). Подробности процесса деления последнего штриха из двух, сохраненного после сохранения первого штриха из двух, когда штрихи параллельны друг другу, будут описаны ниже.
Если два штриха не параллельны друг другу («Нет» на этапе S505), то последний штрих из двух, сохраненный после сохранения первого штриха из двух, подвергают делению на непараллельные штрихи (этап S507). Подробности процесса деления последнего штриха из двух, сохраненного после сохранения первого штриха из двух, когда штрихи не параллельны друг другу, будут описаны ниже.
Независимо от того, параллельны штрихи друг другу, или не параллельны, последний сохраненный из штрихов подвергают делению. Таким образом, когда в пределах одной группы штрихов есть перекрывающиеся части штрихов, можно предотвратить разъединение или фрагментацию в смежных частях между штрихами.
Если кратчайшее расстояние между штрихами больше, чем ширина штриха («Нет» на этапе S504), то проверяют (этап S508), все ли штрихи проверены в пределах группы, сфокусированной на штрихе, после деления штриха (этапы S506 и S507). Если полученный результат указывает, что проверены не все в пределах группы, сфокусированной на штрихе («Нет» на этапе S508), проводят процесс получения комбинации штрихов на этапе S502 (возврат к этапу S502).
Если все комбинации штрихов в группе, сфокусированной на штрихе, проверены («Да» на этапе S502), то определяют (этап S509), все ли группы штрихов проверены. Если проверены не все группы штрихов («Нет» на этапе S509), проводят процесс получения одной из групп штрихов на этапе S501 (возврат к этапу S501). С другой стороны, если все группы штрихов проверены («Да» на этапе S509), то проверяют (этап S510), проведен ли процесс деления.
Если процесс деления проведен («Да» на этапе S510), то разделенные штрихи группируют в разные группы (этап S511), и процесс оканчивается. Если процесс деления не проведен («Нет» на этапе S510), то процесс оканчивается без проведения процесса деления.
На фиг. 25 представлена блок-схема последовательности операций, иллюстрирующая пример процесса вычисления кратчайшего расстояния между двумя штрихами (этап S503 фиг. 24).
На фиг. 25 показано, что когда процесс вычисления кратчайшего расстояния между двумя штрихами начинается, определяют (этап S601) больше ли расстояние между конечными точками двух штрихов, чем ширина штриха. То есть, определяют (этап S601), больше ли расстояние между координатами «х» конечных точек двух штрихов и расстояние между координатами «у» конечных точек двух штрихов, чем ширина штриха.
Если вычисленное кратчайшее расстояние между двумя штрихами явно больше, чем ширина штриха («Да» на этапе S601), то два штриха не перекрываются. Таким образом, после этого задают (этап S602) относительно большое расстояние, а процесс оканчивается без вычисления точного расстояния между двумя штрихами. Цель процесса вычисления кратчайшего расстояния между двумя штрихами состоит в том, чтобы определить, перекрываются ли два штриха. Таким образом, когда расстояние между двумя штрихами очевидно велико, вычисление такого расстояния оказывается необязательным.
С другой стороны, если вычисленное кратчайшее расстояние между двумя штрихами равно ширине штриха или меньше нее («Нет» на этапе S601), то определяют (этап S603), параллельны ли два штриха друг другу. Определение того, параллельны ли два штриха друг другу, осуществляют, сравнивая наклоны согласно соответствующим уравнениям двух прямых линий, проходящих через начальные точки и конечные точки двух штрихов.
Если два штриха параллельны друг другу («Да» на этапе S603), то оба штриха поворачивают, вводя в параллельность с направлением оси «х» (этап S604).
После этого, определяют (этап S605) включают ли повернутые штрихи в себя перекрывающуюся часть.
Если повернутые штрихи включают в себя перекрывающиеся части в направлении оси «х» («Да» на этапе S605), то расстояние между прямыми линиями (т.е., разность координат в направлении оси «У» между прямыми линиями) соответствует наименьшему значению расстояния между штрихами. Таким образом, получаемое значение задают как расстояние между двумя штрихами (этап S606), и процесс оканчивается. Примеры такого случая изображены на фиг. 26A.
Возвращаясь к фиг. 25, следует заметить, что если повернутые штрихи не включают в себя перекрывающуюся часть в направлении оси «х» («Нет» на этапе S605), то наименьшее значение расстояния между конечными точками двух штрихов соответствует наименьшему значению расстояния между двумя штрихами. Таким образом, вычисляют наименьшее значение расстояния между конечными точками двух штрихов и задают (этап S607) вычисленное наименьшее значение между конечными точками двух штрихов, и процесс оканчивается. Примеры такого случая изображены на фиг. 26B.
Возвращаясь к фиг. 25, следует заметить, что если два штриха не параллельны друг другу («Нет» на этапе S603), то вычисляют пересечение двух штрихов и определяют (этап S608), есть ли пересечение в пределах двух штрихов.
Если в пределах двух штрихов пересечение есть («Да» на этапе S608), то расстояние между двумя штрихами задают равным «0» (этап S609), и процесс оканчивается.
Если в пределах двух штрихов пересечения нет («Нет» на этапе S608), то вычисляют (этап S610) наименьшее расстояние α между конечными точками двух штрихов.
После этого, опускают перпендикулярную линию из некоторой конечной точки одного перпендикуляра штриха на другой штрих и вычисляют (этап S611) координаты основания этой перпендикулярной линии на другом штрихе.
После этого определяют (этап S612), находится ли основание перпендикулярной линии в пределах штрихов.
Если основание перпендикулярной линии находится в пределах другого штриха («Да» на этапе S612), то вычисляют (этап S613) расстояние β между некоторой конечной точкой и основанием перпендикулярной линии. Фиг. 27 иллюстрирует примеры расстояния α и расстояния β между двумя штрихами.
Возвращаясь к фиг. 25, следует заметить, что если основание перпендикулярной линии не находится в пределах штриха («Нет» на этапе S612), то процесс не проводится.
После этого, определяют (этап S614) все ли конечные точки проверены. Если проверены не все конечные точки («Нет» на этапе S614), проводят процесс вычисления основания перпендикулярной линии на этапе S611 (возврат к этапу S611).
С другой стороны, если проверены все конечные точки («Да» на этапе S614), то наименьшие значения α и β задают на соответствующие расстояния между штрихами (этап S615), и процесс оканчивается.
На фиг. 28 представлена блок-схема последовательности операций, иллюстрирующая пример процесса деления штрихов, когда штрихи расположены параллельно друг другу (этап S506 на фиг. 24).
На фиг. 28 показано, что когда процесс деления штрихов в группе штрихов начинается, два штриха поворачивают, вводя в параллельность с направлением оси «х» (этап S701). Более конкретно, проводят следующий процесс.
Сначала вычисляют соответствующие углы поворота относительно оси «х». Если соответствующие sin и cos углов поворота относительно оси «х» определяются как «sint» и «cost», а уравнение прямой линии штриха имеет вид «ax+by+с=0», то углы «sint» и «cost» поворота относительно оси «х» получают из следующих уравнений:
sint=-a/sqrt(a*a+b*b);
cost=b/sqrt(a*a+b*b).
Соответствующие штрихи поворачивают в противоположных направлениях, вводя в параллельность оси «х». Если значения координат конечной точки штриха задаются как «xs, ys», а значения координат конечной точки повернутого штриха задаются как «xs0, ys0», то значения координат (xs0, ys0) вычисляют с помощью следующих уравнений:
xs0=cost×xs+sint×ys;
ys0=-sint×xs+cost×ys.
После этого определяют (этап S702) можно ли укоротить один из штрихов для регулирования расстояния между конечными точками двух штрихов с тем, чтобы сделать его равным ширине штриха. Более конкретно, проводят следующий процесс.
Сначала вычисляют кратчайшее расстояние между штрихами. Если координаты «х» конечных точек повернутых двух штрихов перекрываются, кратчайшее расстояние может быть расстоянием между параллельными штрихами. Если координаты «х» конечных точек повернутых двух штрихов не перекрываются, кратчайшее из расстояний между конечными точками штрихов может быть кратчайшим расстоянием между штрихами. Отметим, что поскольку каждый штрих имеет две конечные точки, между конечными точками штрихов существуют в общей сложности четыре расстояния.
Если полученное кратчайшее расстояние меньше, чем ширина t штриха, то проверяют перекрывающиеся конечные точки повернутых двух штрихов в координате «х». Если два штриха не перекрываются, то определяют, что один из штрихов можно укоротить. С другой стороны, если два штриха полностью перекрываются, то определяют, что более короткий из штрихов надо стереть.
Если можно укоротить один из штрихов («Да» на этапе S702), проводят процесс укорачивания одного из штрихов (этап S703). То есть, если один из штрихов сдвинут в направлении оси «х» и является достаточно длинным, чтобы оставить его даже после укорачивания, как показано на фиг. 29A, проводят процесс укорачивания одного из штрихов. Вычисляют некоторую точку на одном штрихе, который должен быть разделен, находящуюся на расстоянии t от конечной точки другого штриха, и вычисленную точку определяют как новую конечную точку прежнего штриха, в которой произошло деление прежнего штриха. Возвращаясь к фиг. 28, следует заметить с другой стороны, что если ни один из штрихов укоротить нельзя («Нет» на этапе S702), то более короткий из штрихов стирают (этап S704). То есть, в случае примера, изображенного на фиг. 29B, поскольку более короткий штрих не будет существовать без перекрытия более длинного штриха, более короткий из штрихов стирают.
Возвращаясь к фиг. 28, следует заметить, что вычисляют (этап S705) длину штриха, который стерт, и сохраняют вычисленную длину штриха.
После этого, поворачивают (этап S706) результирующий штрих в обратном направлении на основании вышеупомянутых «sint» и «cost» таким образом, что результирующий штрих оказывается размещенным в исходном направлении, после чего процесс оканчивается.
На фиг. 30 представлена блок-схема последовательности операций, иллюстрирующая пример процесса деления штрихов, когда штрихи не параллельны друг другу (этап S507 фиг. 24). Когда вычисляют конечную точку штриха для деления штриха, может понадобиться учет углов штрихов, как изображено на фиг. 31B. Если два штриха пересекаются под прямыми углами, как изображено на фиг. 31A, штрих можно легко разделить на ширину штриха. Однако если два штриха пересекаются диагонально, как изображено на фиг. 31B, то может понадобиться учет углов штрихов для вычисления конечной точки штриха, который должен быть разделен.
Отметим, что, как изображено на фиг. 31A и 31B и фиг. 32A и 32B, два штриха названы штрихом № 0 и штрихом № 1, а деление или укорачивание штриха № 0 осуществляют на основе штриха № 1 (т.е., его используют в качестве опорного штриха).
На фиг. 30 показано, что когда процесс начинается, получают (этап S801) координаты точки A0 и координаты точки B0 на штрихе № 0, до которых соответствующие расстояния от штриха № 1 представляют собой ширину t штриха. Более конкретно, проводят следующий процесс.
Уравнение прямой линии для штриха № 0 (который должен быть разделен) представляют в виде «a0x+b0y+c0=0», уравнение прямой линии для штриха № 1 (опорного) представляют в виде «a1x+b1y+c1=0», а шириной штриха является «t». Кроме того, некоторую точку на штрихе № 0, которая обладает расстоянием t от штриха № 1, задают как точку P(xp, yp).
Поскольку P - это точка на штрихе № 0, можно получить следующее уравнение (1).
a0xp+b0yp+c0=0 (1)
Поскольку длина (расстояние) от A0 до основания перпендикулярной линии на центральной линии штриха № 1 равно «t», можно получить следующее уравнение (2) исходя из формулы расстояния до точки/линии.
(a1xp+b1ур+c1)2=t2(a1 2+b1 2) (2)
Когда вышеупомянутые уравнения (1) и (2) решают как систему уравнений, обнаруживается, что штрихи № 0 и № 1 не параллельны.
То есть, результат выражается формулой «a1b0-а0b1≠0».
Соответственно, получаются вышеупомянутые уравнения (3); одним из уравнений является уравнение для A0, а другим - уравнение для B0.
После этого вычисляют (этап S802) основания A1 и B1 перпендикулярных линий, опущенных из точек A0 и B0 перпендикулярно к штриху № 1. Фиг. 32A иллюстрирует пример этого случая. Штрихи № 0 и № 1 иллюстрируются на фиг. 32A прямыми линиями, а ограничения ширин штрихов иллюстрируются пунктирными линиями.
Более конкретно, проводят следующий процесс.
Основание перпендикуляра определяют как Q(xq, yq).
Если уравнение перпендикулярных линий представляют в виде «a2x+b2y+c2=0», то перпендикулярные линии пересекают штрих № 1 под прямыми углами. Таким образом, уравнение перпендикулярных линий в виде «a2x+b2y+c2=0» заменяется следующим уравнением (4).
-b1x+a1y+c2=0 (4)
Поскольку вышеупомянутое уравнение (4) иллюстрирует перпендикулярные линии, которые проходят через точки A0 и B0, получается уравнение «-b1xp+a1yp+c2=0». Таким образом, вычисляют C2 и заменяют уравнение (4) следующим уравнением (5).
-b1x+a1y+b1хp-a1yp=0 (5)
Поскольку пересечения перпендикулярных линий со штрихом № 1 соответствуют основаниям перпендикулярных линий, координаты (xq, yq) оснований перпендикуляров можно получить путем вычисления (x, y) в уравнении (5) и системе уравнений штриха № 1, как показано в нижеследующем уравнении.
Таким образом, получают основания перпендикулярных линий путем вычисления следующего уравнения (6).
Возвращаясь к фиг. 30, следует заметить, что определяют (этап S803), находится ли основание А1 перпендикулярной линии в пределах диапазона штриха № 1. Координаты конечных точек штриха № 1 заданы как (x1s, y1s) и (x1e, y1e), а координаты (xq, yq) находятся в пределах диапазона координат конечных точек штриха № 1.
Если основание A1 перпендикулярной линии находится в пределах диапазона штриха № 1 («Да» на этапе S803), то точка A0 будет определена как новая конечная точка разделенного штриха № 0 (этап S804).
Если основание A1 перпендикулярной линии не находится в пределах диапазона штриха № 1 («Нет» на этапе S803), точка A0 неприемлема в качестве новой конечной точки разделенного штриха № 0. Причина заключается в том, что разделенный штрих № 0 становится слишком коротким. Таким образом, вычисляют (этап S805) точку A3 на штрихе № 0, до которой получают расстояние t (ширину штриха) от конечной точки штриха № 1. Более конкретно, проводят следующий процесс.
Координаты конечной точки штриха № 1 определяют как H(xh, yh). Координаты точки A3 определяют как (xr, yr).
Поскольку точка A3 находится на штрихе № 0, который должен быть разделен, получается следующее уравнение (7).
a0xr+b0yr+c0=0 (7)
Кроме того, поскольку расстояние между точкой A3 и координатами H(xh, yh) составляет t, получается следующее уравнение (8).
(xr-xh)2+(yr-yh)2=t2 (8)
Когда вышеупомянутые уравнения (7) и (8) решают как систему уравнений, вычисляются координаты (xr, yr) точки A3.
Кроме того, определяют следующие уравнения.
ca=a0 2+b0 2;
cb=-b0 2xh+a0b0yh+a0c0;
cc=b0 2(xh 2-t2)+(b0yh+c0)2.
Кроме того, определяют следующее уравнение.
В вышеупомянутых условиях, если b0 ≠0, получается следующее уравнение.
Применяя вычисленное (значение) xr, можно провести вычисление следующего уравнения.
Если b0≠0, то a0 ≠0. Соответственно, получается следующее уравнение.
Таким образом, точку A3 (т.е., вычисленные координаты (xr, yr)) определяют (этап S806) как новую конечную точку разделенного штриха № 0. Фиг. 32B иллюстрирует пример этого случая.
Возвращаясь к фиг. 30, следует заметить, что новую конечную точку разделенного штриха № 0, соответствующую стороне В, вычисляют (этап S807) так же, как для стороны А, вычисляют длину штриха для стертого штриха (этап S808), и процесс деления штриха оканчивается.
На фиг. 33 представлена блок-схема последовательности операций, иллюстрирующая пример процесса маркировки штриха, который должен быть рассеян (этап S209 на фиг. 18).
На фиг. 33 показано, что когда процесс начинается, выбирают (этап S901) одну из групп штрихов в качестве группы № 0 штрихов, а потом выбирают (этап S902) другую из групп штрихов в качестве группы № 1 штрихов. После этого, выбирают (этап S903) один из штрихов из группы № 0 штрихов и выбирают другой один из штрихов из группы № 1 штрихов. После этого определяют (этап S904), есть ли пересечение выбранных двух штрихов.
Если пересечение двух штрихов есть («Да» на этапе S904), то сохраняют (этапы S905 и S906) координаты пересечения и угол пересечения двух штрихов в матрице пересечения (данные матрицы пересечения), связывая координаты пересечения и угол пересечения двух штрихов с группой № 0 штрихов. Если нет пересечения двух штрихов («Нет» на этапе S904), то процесс не проводят.
После этого, определяют (этап S907), все ли комбинации штрихов проверены. Если проверены не все комбинации штрихов («Нет» на этапе S907), проводят процесс выбора комбинации двух штрихов на этапе S903 (возврат к этапу S903).
Если все комбинации штрихов проверены («Да» на этапе S907), определяют (этап S908), все ли группы штрихов проверены в качестве группы № 1 штрихов. Если проверены не все группы штрихов («Нет» на этапе S907), проводят процесс выбора еще одной из групп штрихов в качестве группы № 1 штрихов, на этапе S902 (возврат к этапу S902).
С другой стороны, если все группы штрихов проверены в качестве группы № 1 штрихов («Да» на этапе S908), сортируют (этап S909) группу координат пересечения полученной группы № 0 штрихов в порядке от ближайшей к начальной точке группы № 1 штрихов.
После этого, вычисляют (этап S910) расстояние между смежными пересечениями.
После этого, определяют (этап S911), присутствует ли штрих № 1 между смежными пересечениями с фокусировкой на одном интервале между смежными пересечениями. Фиг. 34A иллюстрирует пример, в котором пересечение С штриха № 1 и штриха № 0 присутствует в середине между смежными пересечениями A и В на штрихе № 0. В этом примере, когда фокусировка происходит на интервале между смежными пересечениями A и С, штрих № 1 наклонен в направлении вниз влево. Таким образом, определяют, что штрих № 1 не присутствует между смежными пересечениями С и B, но присутствует, будучи в фокусе, между смежными пересечениями A и C.
Возвращаясь к фиг. 33, следует заметить, что если штрих № 1 присутствует, будучи в фокусе, между смежными пересечениями A и C («Да» на этапе S911), расстояние между находящимися в фокусе смежными пересечениями A и С, корректируют (этап S912) путем регулирования угла пересечения двух штрихов № 0 и № 1. В примере, изображенном на фиг. 34A, расстояние между пересечением со штрихом № 1 и пересечением A с другим штрихом равно расстоянию между пересечением со штрихом № 1 и пересечением В с другим штрихом на штрихе № 0. Однако каждый из штрихов имеет ширину штриха, так что практическое расстояние d1 между пересечениями С и A (расстояние на стороне A) меньше, чем практическое расстояние d2 между пересечениями С и В (расстояние на стороне В), как изображено на фиг. 34B. Если практическое расстояние d1 между пересечениями A и С равно 0, то штрих присутствует на интервале между пересечениями A и С и подвержен рассеянию. Таким образом, важно корректировать практическое расстояние d1 путем регулирования угла пересечения штрихов № 0 и № 1. Если вычисленное расстояние между смежными пересечениями равно расстоянию на стороне А, то расстояние на стороне A корректируют путем регулирования угла пересечения. В частности, расстояние на стороне A корректируют путем вычитания расстояния d3 из исходного расстояния между смежными пересечениями, и таким образом, если угол пересечения равен θ, а ширина штриха равна T, то расстояние d3 вычисляют посредством следующего уравнения.
d3=t/2sinθ.
Возвращаясь к фиг. 33, следует заметить, что если штрих № 1 не присутствует между находящимися в фокусе смежными пересечениями («Нет» на этапе S911), то из расстояния между находящимися в фокусе смежными пересечениями вычитают (этап S913) половину ширины штриха, то есть, t/2. Этот процесс проводят на практическом расстоянии d2 между находящимися в фокусе смежными пересечениями С и В, изображенными на фиг. 34B.
Возвращаясь к фиг. 33, следует заметить, что определяют (этап S914) равно ли скорректированное расстояние ширине штриха, или меньше нее.
Если скорректированное расстояние между находящимися в фокусе смежными пересечениями равно ширине штриха, или меньше нее («Да» на этапе S914), а штрих № 0 делится в обоих пересечениях, то между находящимися в фокусе смежными пересечениями отсутствует рисование штриха. Соответственно, определяют, что штрих № 0 подвержен рассеянию, и поэтому маркируют (этап S915) группу № 0 штрихов как группу штрихов, подверженную рассеянию. С другой стороны, если скорректированное расстояние между находящимися в фокусе смежными пересечениями больше, чем ширина штриха («Нет» на этапе S914), то группу № 0 штрихов не маркируют.
После этого, определяют (этап S916), все ли группы штрихов проверены в качестве группы № 0 штрихов. Если не все группы штрихов проверены в качестве группы № 0 штрихов («Нет» на этапе S916), то проводят процесс выбора одной из групп штрихов в качестве группы № 0 штрихов на этапе S901 (возврат к этапу S901). С другой стороны, если все группы штрихов проверены в качестве группы № 0 штрихов («Да» на этапе S916), процесс маркировки штриха, подверженного рассеянию, оканчивается.
На фиг. 35 и 36 представлены блок-схемы последовательностей операций, иллюстрирующие пример процесса удаления перекрывающейся части штрихов среди групп штрихов (этап S210 фиг. 18).
На фиг. 35 показано, что когда процесс удаления перекрывающейся части штрихов среди групп штрихов начинается, выбирают одну из групп штрихов в качестве группы № 0 штрихов и выбирают еще одну из групп штрихов в качестве группы № 1 штрихов (этапы S1001 и S1002).
После этого выбирают один штрих из группы № 0 штрихов и выбирают другой штрих из группы № 1 штрихов (этап S1003).
После этого, определяют (этап S1004), включают ли выбранные два штриха в себя перекрывающуюся часть.
Если между двумя штрихами есть перекрывающуюся часть («Да» на этапе S1004), то вычисляют (этап S1005) длину стираемого штриха и длину оставляемого штриха на основании допущения, что один из штрихов подвергают укорачиванию или делению. Этот процесс аналогичен проиллюстрированному блок-схемой последовательности операций на фиг. 24.
Возвращаясь к фиг. 35, следует заметить, что если - с другой стороны - между двумя штрихами нет перекрывающейся части («Нет» на этапе S1004), то процесс вычисления длины стираемого штриха и длины оставляемого штриха (этап S1005) не проводят.
После этого, определяют (этап S1006), все ли штрихи, связанные с группами № 0 и № 1 штрихов, проверены. Если проверены не все штрихи, связанные с группами штрихов № 0 и № 1 («Нет» на этапе S1006), проводят процесс выбора одного из штрихов из группы № 0 штрихов и другого из штрихов из группы № 1 штрихов на этапе S1003 (возврат к этапу S1003).
Если определяют, что проверены все штрихи, связанные с группами № 0 и № 1 штрихов («Да» на этапе S1006), вычисляют (этап S1007) суммарную удаляемую площадь, когда одну из групп штрихов укорачивают или делят. Суммарную удаляемую площадь можно получить путем умножения длины стираемого штриха на ширину штриха.
После этого, если один из штрихов подвергают укорачиванию или делению, задают «2» в элементе «член флага», когда сфокусированную на штрихе группу полностью рассеивают, задают «1» в элементе «член флага», когда сфокусированную на штрихе группу укорачивают, и задают «0» в элементе «член флага», когда сфокусированную на штрихе группу подвергают воздействию других процессов (этап S1008).
После этого определяют (этап S1009), есть ли взаимное перекрытие двух групп штрихов (групп № 0 и № 1 штрихов).
Если взаимного перекрытия двух групп штрихов нет («Нет» на этапе S1009), следующие процессы (этапы S1010-S1015) пропускают (не проводят).
Если взаимное перекрытие двух групп штрихов («Да» на этапе S1009), то согласуют (этап S1010) пересечения одной из групп штрихов, подвергаемой укорачиванию или делению, и последовательность пересечений, получаемых путем маркировки штриха, подлежащего рассеянию (процесс на фиг. 33).
После этого, если пересечения одной из групп штрихов, подвергаемой укорачиванию или делению, и последовательность пересечений, получаемых путем маркировки штриха, подлежащего рассеянию, согласуются, задают «1» в элементе «маска флага» (этап S1011).
После этого, если штрих, подлежащий рассеянию, уже разделен, задают «1» в элементе «флаг» (этап S1012).
После этого, если группа штрихов перекрывается с другой группой штрихов, которая может быть подвержена рассеянию, задают «1» в элементе «другое флага» (этап S1013). То, подвержена ли другая группа штрихов рассеянию, определяют на основании метки подверженности рассеяний, предусматриваемой в процессе, изображенном на фиг. 33.
Возвращаясь к фиг. 35, следует заметить, что выбирают (этап S1014), какую из групп штрихов надлежит подвергнуть укорачиванию или делению. Подробности процесса выбора того, какую из групп штрихов надлежит подвергнуть укорачиванию или делению, будут описаны ниже.
После этого, выбранную одну из групп штрихов укорачивают или делят (этап S1015) на основании данных, вычисленных заранее.
После этого, определяют (этап S1016), все ли группы штрихов, отличающиеся от группы № 0 штрихов, проверены. Если проверены не все группы штрихов, отличающиеся от группы № 0 штрихов («Нет» на этапе S1016), проводят процесс выбора одной из групп штрихов в качестве группы № 1 штрихов (возврат к этапу S1002).
Если проверены все группы штрихов, отличающиеся от группы № 0 штрихов («Да» на этапе S1016), определяют (этап S1017), все ли группы штрихов проверены в качестве группы № 0 штрихов. Если не все группы штрихов проверены в качестве группы № 0 штрихов («Нет» на этапе S1017), проводят процесс выбора одной из групп штрихов на этапе S1001 (возврат к этапу S1001).
С другой стороны, если все группы штрихов проверены в качестве группы № 0 штрихов («Да» на этапе S1017), проводят процесс определения того, есть ли перекрывающаяся часть между выбранными штрихами, и укорачивания выбранной одной из групп штрихов. То есть, если делят штрих, который находится немного в контакте с другим штрихом, то расстояние между конечной точкой штриха и конечной точкой другого штриха может быть меньшим, чем ширина штриха. В таком случае, между двумя группами штрихов может оставаться перекрывающаяся часть, и поэтому осуществляют дополнительную проверку двух групп штрихов на проведение укорачивания. Например, когда перекрывающуюся часть между верхней и нижней группами штрихов, изображенных на фиг. 37A, удаляют путем деления нижней группы штрихов, между разделенными штрихами нижней группы штрихов образуется новая перекрывающаяся часть, как изображено на фиг. 37B. В этом случае, укорачивание разделенных штрихов нижней группы штрихов может не понадобиться.
Как показано на фиг. 36, один штрих из групп штрихов, подвергнутых укорачиванию или делению на этапе S1014, выбирают в качестве штриха № 0 (этап S1018), и аналогичным образом один из штрихов из групп штрихов, подвергнутых укорачиванию или делению на этапе S1014, выбирают в качестве штриха № 1 на этапе S1014 (этап S1019).
После этого определяют (этап S1020), выполнены ли выбранные комбинации штрихов № 0 и № 1 непрерывными. Если выбранные комбинации штрихов № 0 и № 1 не выполнены непрерывными («Нет» на этапе S1020), дополнительно определяют (этап S1021), меньше ли расстояние между конечными точками штриха № 0 и № 1, чем ширина штриха.
С другой стороны, если расстояние между конечными точками штриха № 0 и № 1, меньше, чем ширина штриха («Да» на этапе S1021), то укорачивают штрих № 1 (этап S1022).
Если выбранные комбинации штрихов № 0 и № 1 выполнены непрерывными («Да» на этапе S1020), а расстояние между конечными точками штриха № 0 и № 1 не меньше, чем ширина штриха («Нет» на этапе S1021), процесс укорачивания штриха № 1 (этап S1022) не проводят.
После этого, определяют (этап S1023) все ли штрихи, выбранные в качестве штриха № 1, проверены. Если проверены не все штрихи, выбранные в качестве штриха № 1 («Нет» на этапе S1023), проводят процесс выбора одного из штрихов из групп штрихов, подвергнутых укорачиванию или делению, в качестве штриха № 1 на этапе S1019 (возврат к этапу S1019).
Если проверены все штрихи, выбранные в качестве штриха № 1 («Да» на этапе S1023), то определяют (этап S1024), все ли штрихи, выбранные в качестве штриха № 0, проверены. Если проверены не все штрихи, выбранные в качестве штриха № 0 («Нет» на этапе S1024), проводят процесс выбора одного из штрихов из групп штрихов, подвергнутых укорачиванию или делению, в качестве штриха № 0, на этапе S1018 (возврат к этапу S1018).
С другой стороны, если проверены все штрихи, выбранные в качестве штриха № 0 («Да» на этапе S1024), процесс оканчивается.
На фиг. 38А и 38В представлена блок-схема последовательности операций, иллюстрирующая пример процесса выбора одной из групп штрихов, подвергающихся укорачиванию или делению (этап S1014 фиг. 35).
На фиг. 38A и 38B показано, что когда процесс выбора одной из групп штрихов, подвергнутых укорачиванию или делению, начинается, определяют (этап S1101), все ли штрихи в группе № 0 штрихов полностью рассеяны. Если на основании элемента «член» флага определяют, что все штрихи в группе № 0 штрихов рассеяны и группе № 0 штрихов не остается штрихов («Да» на этапе S1101), штрихи группы № 1 штрихов делят или укорачивают (этап S1117).
В отличие от этого, если на основании элемента «член» флага определяют, что в группе № 0 штрихов есть остающиеся штрихи («Да» на этапе S1102), штрихи группы № 0 штрихов делят или укорачивают (этап S1117).
Если концы группы № 0 штрихов подвергаются укорачиванию («Да» на этапе S1103), то группу № 0 штрихов укорачивают (S1116). В этом случае процесс укорачивания группы № 0 штрихов проводят потому, что укорачивание группы № 0 штрихов может оказать на внешний вид желаемого символа, который должен быть нарисован, меньшее негативное влияние, чем деление группы № 0 штрихов.
С другой стороны, если концы группы № 1 штрихов подверглись укорачиванию («Да» на этапе S1104), то группу № 1 штрихов укорачивают (этап S1117).
Если желаемый символ, который должен быть нарисован, должен быть нарисован жирным штифтом («Да» на этапе S1105), а группа № 0 штрихов ближе к центральному штриху («Да» на этапе S1106), делят или укорачивают группу № 1 штрихов (этап S1117). В этом случае укорачивание или деление группы № 1 штрихов выбирают потому, что оставление штрихов ближе к центральному штриху может придать желаемому символу, который должен быть нарисован, лучший внешний вид, чем укорачивание или деление группы № 0 штрихов. Фиг. 39A и 39B иллюстрируют примеры рисования желаемых символов жирным шрифтом, причем на фиг. 39A представлен пример рисования, который не требует оставления штрихов ближе к центральному штриху, а на фиг. 39B пример рисования, который требует оставления штрихов ближе к центральному штриху.
Возвращаясь к фиг. 38A и 38B, следует заметить, что если группа № 1 штрихов ближе к центральному штриху, чем группа № 0 штрихов, то делят или укорачивают группу № 0 штрихов (этап S1116).
После этого, если на основании «маски» флага определяют, что группа № 0 штрихов подвергнута частичному рассеянию («Да» на этапе S1108), то делят или укорачивают группу № 1 штрихов (этап S1117).
С другой стороны, если на основании «маски» флага определяют, что группа № 1 штрихов подвергнута частичному рассеянию («Да» на этапе S1109), то делят или укорачивают группу № 0 штрихов (этап S1116).
Если на основании «маски» флага определяют, что частичному рассеянию подвергнуты обе группы - группа № 0 штрихов и группа № 1 штрихов («Да» на этапе S1110), то определяют, подверглась ли уже делению группа № 0 штрихов или группа № 1 штрихов, что могло привести к частичному рассеянию групп № 0 и № 1 штрихов. Это соответствует случаю, в котором расстояние между смежными штрихами, один из которых уже подвергся делению в его пересечении, меньше, чем ширина штриха в некоторой группе штрихов. В этом случае, если другой из смежных штрихов также подвергся делению в его пересечении, то штрих, заключенный между пересечениями двух смежных штрихов, подвергают рассеянию.
Таким образом, если группа № 0 штрихов уже подверглась делению («Да» на этапе S1111), то делят или укорачивают группу № 1 штрихов (S1117).
С другой стороны, если группа № 1 штрихов уже подверглась делению («Да» на этапе S1112), то делят или укорачивают группу № 0 штрихов (этап S1116).
После этого, если на основании элемента «другого» флага определяют, что только группа № 0 штрихов пересекает другой штрих, так что этот штрих, пересекаемый группой № 1 штрихов, подвержен частичному рассеянию («Да» на этапе S1113), группу № 1 штрихов определяют в качестве группы штрихов, подвергнутой делению (этап S1117). Группу № 1 штрихов определяют в качестве группы штрихов, подвергнутой делению, потому что группа № 0 штрихов может иметь достаточную длину для деления или укорачивания в будущем, чтобы не допустить рассеяния другого штриха, пересекаемого группой № 0 штрихов.
С другой стороны, если на основании элемента «другое» флага определяют, что другой штрих пересекаемый группой № 1 штрихов, подвержен частичному рассеянию («Да» на этапе S1114), то делят или укорачивают группу № 0 штрихов (этап S1116).
После этого сравнивают соответствующие удаляемые площади групп № 0 и № штрихов. Если удаляемая площадь группы № 0 штрихов меньше, чем удаляемая площадь группы № 1 штрихов («Да» на этапе S1115), то делят или укорачивают группу № 0 штрихов (этап S1116).
С другой стороны, если удаляемая площадь группы № 1 штрихов меньше, чем удаляемая площадь группы № 0 штрихов («Нет» на этапе S1115), то делят или укорачивают группу № 1 штрихов (этап S1117).
На фиг. 40А и 40В представлены чертежи, иллюстрирующие примеры, в которых улучшена ситуация, складывающаяся, когда происходит ухудшение внешнего вида желаемых символов из-за ограничений и недостатков известных технических решений. То есть, в известных технических решениях, как изображено на фиг. 3B, возможна фрагментация двух или более сближающихся штрихов, что может привести к снижению качества рисования. Однако, в соответствии с вышеописанными вариантами осуществления, перекрывающаяся часть между штрихами, образующими желаемый символ, удаляется для группы символов. Соответственно, взаимно сближающиеся части штрихов не разъединяются, что может предотвратить ухудшение внешнего вида желаемого символа.
Кроме того, в соответствии с вышеописанными вариантами осуществления, между штрихами в пределах одной и той же группы штрихов присутствует перекрывающуюся часть, такая, как символ «α». В этом случае, перекрывающуюся часть штрихов, образовавших желаемый символ, удаляют так же, как удаляют перекрывающуюся часть штрихов в установленном порядке штрихов той же группы штрихов, а потом - штрихов в другой группе штрихов. Соответственно, взаимно сближающиеся части штрихов в одной группе штрихов не разъединяются, что может предотвратить ухудшение внешнего вида желаемого символа.
В соответствии с вышеописанными вариантами осуществления, даже если два или более взаимно сближающихся (близко располагающихся) штрихов образуют символ, предлагаемые устройство, способ и считываемый компьютером носитель, хранящий программу рисования изображения на перезаписываемом термоносителе, могут обеспечить рисование символа на перезаписываемом термоносителе без снижения качества изображения из-за разъединения двух или более близко располагающихся штрихов, образующих символ. Соответственно, можно предотвратить снижение качества рисования.
ОБЗОР
Как описано выше, в соответствии с вышеуказанными вариантами осуществления, даже если два или более взаимно сближающихся (близко располагающихся) штрихов образуют символ, можно нарисовать изображение, образованное двумя или более символами, на перезаписываемом термоносителе без снижения качества изображения из-за разъединения двух или более близко располагающихся штрихов, образующих символ. Соответственно, можно предотвратить снижение качества рисования два или более близко располагающихся штрихов, образующих символ.
Преимущества, проиллюстрированные выше, являются лишь примерами наиболее предпочтительных, преимуществ, обеспечиваемых вариантами осуществления, и поэтому не ограничиваются теми, которые описаны в вариантах осуществления.
Варианты осуществления данного изобретения описаны выше в целях иллюстрации. Данное изобретение не ограничивается этими вариантами осуществления, а в рамках объема притязаний данного изобретения возможны различные изменения и модификации. Данное изобретение не следует интерпретировать как ограничиваемое вариантами осуществления, которые описаны в описании и изображены на чертежах.
Данная заявка основана на приоритетной японской заявке № 2010-261771, поданной 24 ноября 2010 г., и приоритетной японской заявке № 2011-046861, поданной 3 марта 2011 г. в Патентное ведомство Японии, содержания которых во всей их полноте включены сюда посредством ссылки.
Предложенное устройство для вычерчивания изображения на термоносителе включает в себя: блок генерирования групп штрихов, сконфигурированный с возможностью группировки непрерывных штрихов, образующих изображение желаемого символа, который должен быть вычерчен, для генерирования одной или более групп штрихов из непрерывных штрихов, причем каждый штрих в пределах каждой группы штрихов имеет по меньшей мере одну конечную точку, общую с по меньшей мере одним другим штрихом в соответствующей группе штрихов; блок удаления первой перекрывающейся части, сконфигурированный с возможностью обнаружения первой перекрывающейся части среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах упомянутой одной и той же группы штрихов; и блок удаления второй перекрывающейся части, сконфигурированный с возможностью обнаружения второй перекрывающейся части среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из упомянутых групп штрихов. 2 н. и 4 з.п. ф-лы, 40 ил.
1. Устройство для вычерчивания изображения на термоносителе, содержащее:
блок генерирования групп штрихов, сконфигурированный с возможностью группировки непрерывных штрихов, образующих изображение желаемого символа, которое должно быть вычерчено, для генерирования одной или более групп штрихов из непрерывных штрихов, причем каждый штрих в пределах каждой группы штрихов имеет по меньшей мере одну конечную точку, общую с по меньшей мере одним другим штрихом в соответствующей группе штрихов;
блок удаления первой перекрывающейся части, сконфигурированный с возможностью обнаружения первой перекрывающейся части среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах упомянутой одной и той же группы штрихов; и
блок удаления второй перекрывающейся части, сконфигурированный с возможностью обнаружения второй перекрывающейся части среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из упомянутых групп штрихов.
2. Устройство по п. 1, в котором
группа штрихов, связанная с первой комбинацией штрихов, является первой группой штрихов;
вторая комбинация штрихов образует вторую группу штрихов;
причем блок удаления первой перекрывающейся части удаляет первую перекрывающуюся часть в установленном порядке штрихов в пределах упомянутой первой группы штрихов; и
блок удаления второй перекрывающейся части удаляет вторую перекрывающуюся часть между первой и второй группами штрихов.
3. Устройство по п. 1, дополнительно содержащее блок маркирования групп штрихов, выполненный с возможностью маркирования группы штрихов в качестве подлежащей рассеянию, основываясь на первой перекрывающейся части штрихов в пределах группы штрихов, удаленной блоком удаления первой перекрывающейся части, при этом блок удаления второй перекрывающейся части определяет, какие штрихи из штрихов, связанных с несколькими группами штрихов, должны быть модифицированы, основываясь на том, какие из упомянутых нескольких групп штрихов были маркированы в качестве подлежащих рассеянию блоком маркирования групп штрихов.
4. Способ вычерчивания изображения на термоносителе, заключающийся в том, что:
группируют непрерывные штрихи, образующие изображение желаемого символа, которое должно быть вычерчено, для генерирования одной или более групп штрихов из непрерывных штрихов, причем каждый штрих в пределах каждой группы штрихов имеет по меньшей мере одну конечную точку, общую с по меньшей мере одним другим штрихом в соответствующей группе штрихов;
обнаруживают первую перекрывающуюся часть среди первой комбинации штрихов, связанных с одной и той же группой штрихов, для удаления первой перекрывающейся части в установленном порядке штрихов в пределах упомянутой одной и той же группы штрихов; и
обнаруживают вторую перекрывающуюся часть среди второй комбинации штрихов, связанных с несколькими группами штрихов, для удаления второй перекрывающейся части из упомянутых групп штрихов.
5. Способ по п. 4, в котором
группа штрихов, связанная с первой комбинацией штрихов является первой группой штрихов;
вторая комбинация штрихов образует вторую группу штрихов;
обнаружение первой перекрывающейся части включает в себя удаление первой перекрывающейся части в установленном порядке штрихов в пределах упомянутой первой группы штрихов; и
обнаружение второй перекрывающейся части включает в себя удаление второй перекрывающейся части между первой и второй группами штрихов.
6. Способ по п. 4, дополнительно содержащий маркирование группы штрихов в качестве подлежащей рассеянию, основываясь на первой перекрывающейся части штрихов в пределах группы штрихов, удаленной посредством обнаружения первой перекрывающейся части, при этом обнаружение второй перекрывающейся части включает в себя определение, какие штрихи из штрихов, связанных с несколькими группами штрихов, должны быть модифицированы, основываясь на том, какие из упомянутых нескольких групп штрихов были маркированы в качестве подлежащих рассеянию посредством маркирования.
СПОСОБ ВВЕДЕНИЯ ВОДЯНЫХ ЗНАКОВ В ИЗОБРАЖЕНИЯ, НЕ ЗАВИСЯЩИЙ ОТ ИЗМЕНЕНИЯ МАСШТАБА | 2000 |
|
RU2251821C2 |
JP 2004090026 A, 25.03.2004 | |||
JP 2004341373 A, 02.12.2004 |
Авторы
Даты
2015-08-20—Публикация
2011-11-18—Подача