ZX-Ревю 1995 №2 1994 г.

Читатель-читателю - Модернизация шрифта.


      Модернизация шрифта
 ---------------------------------
  (С) Лыхин Д.В.,  г.Кемерово.
----------------------------------

    В ZX-РЕВЮ  часто  стали  появ-  
 ляться программы для модернизации  
 шрифта.  Года  два  назад я очень  
 серьезно занимался этим вопросом.  
 Для  издания  любой  новой  книги  
 обычно   разрабатывается    новый  
 шрифт (в смысле: заголовки, крас-  
 ные строки и т.д.). Для этого су-  
 ществуют    художники-оформители,  
 среди которых есть очень  талант-  
 ливые   в   своей  области  люди.  
 По-моему, для каждой программы, в  
 идеале,  должен  быть  разработан  
 свой шрифт.  Но если Вы не худож-  
 ник-оформитель,  то  для  Вас это  
 превратится в большую проблему.    
    Однако, многое можно получить,  
 используя   простую  модернизацию  
 шрифта.  Например,  на рисунке  1  
 показан  пример  получения совер-  
 шенно новой буквы "П" (взято  для  
 простоты) путем сдвига вниз, вле-  
 во, вверх, с последующим удалени-  
 ем первоначального варианта.       
                                   
              Рис.1.               
                                   
    Получилась   ведь   совершенно 
 другая буква?                     
    В приведенном примере мы сдви- 
 гали все поле знакоместа целиком. 
 Такими движениями можно  получить 
 различные утолщения  (если  оста- 
 вить старый  символ),  или   тени 
 (если удалить   его).  Это  самое 
 простейшее преобразование.        
    Другой, немного  более сложный 
 способ преобразования заключается 
 в различных перекосах. Перекос, в 
 сущности, это сдвиг  частей  поля 
 знакоместа по линиям.  На рисунке 
 2 показан  пример  сдвига  вправо 
 двух верхних  сегментов поля зна- 
 коместа. Средний сегмент  сдвинут 
 на 1  пиксель,  верхний - на два. 
    Результат - наклон буквы впра- 
 во. Если верхний сегмент оставить 
 на месте,  а сдвигать  средний  и 
 нижний таким же образом,  получим 

              Рис.2.                
                                    
 наклон влево. Вариантов взаимного  
 сдвига сегментов друг относитель-  
 но друга уже можно насчитать дос-  
 таточно много.  А вот,  что полу-  
 чится, если сложить старый и  но-  
 вый варианты буквы (см. рис.3).    

              Рис.3.                
                                    
    Если Вам не  нравятся  "пусто-  
 ты", их можно заполнить.           
    "Резать" можно  не  только  по  
 горизонтали или  вертикали,  но и  
 по любой линии,  прямой или лома-  
 ной. Можно, например, по диагона-  
 ли.                                
    Действуя таким  образом:   ре-  
 зать,   сдвигать,  оставлять  или  
 убирать,  делая утолщения или те-  
 ни,  Вы можете получить из одного  
 образца  шрифта  десятки  других.  
 Естественно,  один  образец можно  
 изменять по разному не один  раз.  
 И  если  Вы  располагаете  пятью-  
 шестью образцами шрифта, то запас  
 Ваших  шрифтов станет практически  
 бесконечным.                       
                                    
    Написание программ для  подоб-  
 ного рода преобразований, может и  
 покажется кому-нибудь скучным, но  
 потратив несколько часов,  Вы по-  
 лучите изумительный результат.     
    Теперь к  вопросу:  где  взять  
 образцы шрифтов? Для начала подс-  
 кажу. Из книг Вы сможете вытащить  
 пару (я имею ввиду текст):  обык-  
 новенный печатный   и  курсив.  В  
 школьном букваре - классический и  
 письменный. Еще  один вариант - в  
 справочнике по черчению.           
    Вот еще  несколько   примеров,  
 заимствованных у художников-офор-  
 мителей.  Если  все  узкие  буквы 
 (типа A, G, B...) сделать широки- 
 ми, а широкие - узкими (Ш, Ф, Ж), 
 Вы  получите  этакий лихо-безала- 
 берный шрифт.  Другое. Вначале Вы 
 заполняете  часть поля знакоместа 
 целиком,  а потом удаляете ненуж- 
 ное.  Причем удаления должны быть 
 минимальные.  На  рис.4  показана 
 буква "А",  созданная таким обра- 
 зом.                              
                                   
              Рис.4.               
                                   
    Еще пример.  Там,  где  должен 
 быть "выступ" -  делается  наобо- 
 рот, "впадина".   Для  примера  - 
 буква "Ф" на рисунке 5.           
                                   
              Рис.5.               
                                   
    Самые красивые  шрифты получа- 
 ются из старой русской кириллицы. 
 Но  при  этом  Вы  столкнетесь  с 
 трудностями.  Во-первых,  вряд ли 
 Вам удастся найти "полный набор", 
 и Вам придется "вытаскивать"  его 
 по буквам из различных историчес- 
 ких романов. А может Вам повезет, 
 и  Вы раздобудете специальную ли- 
 тературу   по   этому    вопросу. 
 Во-вторых, очень трудно воспроиз- 
 вести ее на поле 8х8 из-за  боль- 
 шого   количества   "завитков"  и 
 "хвостиков". И  все-таки,  попро- 
 буйте. Желаю удачи!               
                                   
      Комментарий ИНФОРКОМА.       
                                   
    Прежде всего,  насчет образцов 
 шрифтов.  Конечно,  поле размером 
 8х8  позволяет лишь создать набор 
 минимально различимых между собой 
 символов.  Иными словами, он поз- 
 воляет не  спутать  букву  "А"  с 
 буквой "В".  И то,  удается полу- 
 чить из него "наклонный",  "тене-  
 вой" и т.п.  Варианты более слож-  
 ных преобразований,  предложенные  
 автором,  в некоторых случаях да-  
 дут  желаемый  результат,  однако  
 для   букв  сложной  конфигурации  
 придется после выполнения  преоб-  
 разования  "доводить" эти символы  
 вручную.  Но ведь никто и не обе-  
 щает сразу же готовый результат.   
    Второй момент касается  образ-  
 цов  шрифтов.  Нам  кажется,  что  
 здесь вряд  ли  поможет  печатная  
 литература (опять же из-за невоз-  
 можности воспроизвести все нюансы  
 на  поле  8х8).  Гораздо  большую  
 практическую пользу  смогут  ока-  
 зать  эффективные  программы  для  
 поиска и "изъятия" удачных  шриф-  
 тов  из готовых программ из расп-  
 ространяемого нами дистрибутивно-  
 го сборника "Утилиты-1".           
    И наконец,   насчет   размеров  
 символа. В книге "Прикладная гра-  
 фика" мы подробно рассказывали  о  
 том, как реализовать печать шриф-  
 тами с нестандартным размером по-  
 ля,  например,  11х13  или  любым  
 другим.  Вот здесь справочник  по  
 черчению  и другая литература мо-  
 жет и пригодится.  В  общем,  при  
 творческом  подходе уверены,  что  
 результат  оправдает  затраченные  
 усилия  и придаст Вашей программе  
 неповторимый облик.                
    В заключение,  отметим, что мы  
 уже неоднократно приводили  прог-  
 раммки для преобразования шрифтов  
 (см. например,  ZX-РЕВЮ-93, N3-4,  
 стр.46, ZX-РЕВЮ-94,  N4, стр.37). 
 Не прекращается  поток  писем  на 
 эту  тему  от начинающих програм- 
 мистов, осваивающих машинный код. 
 В этом номере РЕВЮ в разделе ЭТЮ- 
 ДЫ  мы  приводим  еще   несколько 
 практических программ,  с помощью 
 которых можно  получить  стилизо- 
 ванные  шрифты.  Однако,  следует 
 заметить,  что  больший   интерес 
 представляет не формирование сти- 
 лизованного символьного набора, а 
 стилизованная печать,  когда сим- 
 вольный набор используется  стан- 
 дартный,  а стилизованные символы 
 образуются непосредственно в  мо- 
 мент  печати  на экране.  На этом 
 принципе работает  знакогенератор 
 стилизованных  шрифтов Сергея Су- 
 турина (ZX-РЕВЮ-94, N4, стр.32).  
    Впрочем,  вышесказанное  отно- 
 сится  только к использованию ла- 
 тинского символьного набора (кра- 
 сивая  надпись в загрузчике прог- 
 раммы и др.).  Если  же  в  самой 
 программе применяется русский или 
 русско-латинский загружаемый сим- 
 вольный  набор,  то  его  заранее 
 можно   сделать    стилизованным. 
 Здесь   процедуры  преобразования 
 могут оказаться полезными, сохра- 
 нив  Вам время на этапе конструи- 
 рования  стилизованного  русского 
 шрифта из нестилизованного. Затем 
 полученный шрифт следует  "довес- 
 ти" вручную, переделывая неудачно 
 сформированные символы.           



СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
О людях... - О истории создания и планах группы Virtual Brothers.
Система - Обзор новых системок: Sprite Maker v4.0, Turbo Copier v2.0, Sample Studio, Art Works 1, Burst Eyes v1.2, Excess Sample Editor v1.4.25, Excess Deluxe Paint v1.1, Graphic Station, BA v1.0, Global Commander v1.31, Quick Commander v2.3, Stall Spriter v0.1, AGA v1.0, Ultra Sonic v0.1, Universal Sprite Studio v1.0, HRUST v1.1, STORM v1.3.
Почта BUZZ'a - О рынке ПО (Письмо от BLAZ'а).
Стихи - Дарья Крапивина.
AAAparty demoreview - обзор демо с AAA Demoparty.

В этот день...   1 января

SibNews #08, Woot! #01, Spectrum Magazine #01, ACNews #25, Psychoz #14, ACNews #14, Last 128 #08, Last 128 #06, Last 128 #05, Last 128 #04, Last 128 #03, Last 128 #02, Last 128 #09, Last 128 #3.5, Last 128 #8.025, Sinclair Club #05, Last 128 #M!R 01, Fantadrom #01, Buzz #20, Last 128 #01, DonNews #13, Nicron #120, Promised Land #01, Inferno #01, Marazm #25, Ultimathum #01, Marazm #21, Hooy Mag #02, KrNews #11, Marazm #22, Marazm #23, ZX Football 2000 #01, Codemania #01, Always #03, Bugs #02, IzhNews #08, Virtual Worlds #01, Listok #04, Scenergy #02, Flash Info #18, Marazm #16, Marazm #17, Zed #01, Balagan #02, ZX Format #08, ZX Power #03, Shock #01, Impulse #02, Deja Vu #03, ZX Club #08, ZX Club #06, Numberology #01, Marazm #13, Marazm #12, Marazm #14, Gorodok #02, Zodiac #01, Marazm #15, Deja Vu #07, Marazm #11, Deja Vu #07, Playboy #03, Crazy News #2, Crazy News #4, ZX Light #01, Crazy News #5, Playboy #02, ZX News #03, ZX Review #1-2, Read Me #02, Crazy News #3, Nicron #13, Read Me #01, Public Spirit #01, Faultless #06, Faultless #05, ZX Software #01, Stump #04, Speccy #07, Возраждение #0, Speccy #03, On-Line #17, Scene+ #01, Welcome Press #01, ZX Konig #04, Adventurer #01, Faultless #05, Faultless #04, Di Halt #01, Faultless #01, Playboy #01, Crazy News #1, Faultless #03, Pioneer #03, Sinclair Town #02, ZX Magazine #01, Eldorado #01, ZX Magazine #02, Spectron #01, ZX News #01, ZX Konig #02, 200 #W, Welcome Press #00, Dune #07, Subliminal Extacy #01, Subliminal Extacy #02, ZX Konig #01, Subliminal Extacy #00, Muchomor #01, Spectrofon #01, ZX Revija #02, Outlet #01, Outlet #1-3