Печать по-русски "серыми" шрифтами.

Статус
Закрыто для дальнейших ответов.

lev

Модератор
Топикстартер
20 лет на форуме
Сообщения
2 147
Реакции
2 072

Не по теме:
По просьбам населения.

Часто требуется набрать пару-тройку слов древними не-юникод шрифтами, т.е. теми у которых кириллица расположена на знакоместах расширенной латиницы, при этом нет времени на поиск правильной версии или переконверсию данного шрифта. Unicode версии CorelDRAW (т.е. начиная с 10-й) не считают такие шрифты содержащими кодовую страницу соответствующую текущей раскладке клавиатуры, в нашем случае кириллическими, и отображают серым цветом в окне выбора шрифтов. Попытка написать чего-нибудь по-русски данными шрифтами зачастую вызывает затруднения. В общем, вот методика:

Набираем требуемый текст каким-нибудь otf шрифтом, например, Arial'ом.
Выделяем (иногда при смеси латиницы-кириллицы надо выделять только требуемый кусок).
Type>Encode...>Other encoding> Latin1 (латиница 1), при этом текст превращается в кракозябры типа "òåêñò".
Теперь присваиваем данному тексту нужный "теперь уже не серый" шрифт.

В Unicode версиях CorelDRAW до появления функции Encode (10-12) в подобных случаях помогало назначение куску текста другого языка - Text>Writing Tools>Language>English-US.

Для набранных таким способом кусков не будут работать проверка орфографии и переносы.

Старая схожая тема.
 

ch_alex

Погулять вышел.
15 лет на форуме
Сообщения
8 420
Реакции
2 709
Ответ: Печать по-русски "серыми" шрифтами.

Тема стоит того, чтобы ей сделать перманентный ап.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Ответ: Печать по-русски "серыми" шрифтами.

Вот сделал скриптик, если кому-то лениво проводить вышеописанные манипуляции:
Код:
Sub TranslateText()
       
    Dim OrigSelection As ShapeRange
    Set OrigSelection = ActiveSelectionRange
    OrigSelection.Item(1).Text.Story.LanguageID = 1033
    OrigSelection.Item(1).Text.Story.CharSet = 0
     S = ""
     t = OrigSelection.Item(1).Text.Story.Text
     For I = 1 To Len(t)
      B = Mid(t, I, 1) + Chr(0)
      a = AscW(StrConv(B, vbFromUnicode))
      S = S + ChrB(a And 255) + ChrB(0)
 
     Next I
     OrigSelection.Item(1).Text.Story.Text = S
 
End Sub

Смело назначаете тексту "серый шрифт", после чего (не снимая выделения) запускаете скрипт. Текст становится русским!
 

xm

иксэ́м
R.I.P.
Сообщения
4 978
Реакции
2 667
Ответ: Печать по-русски "серыми" шрифтами.

Вначале сказал спасибо, потом пошёл проверил -- не работает. Т.е. большая часть серых шрифтов стали черными после применения к тексту Text>Encode...>Other encoding> 1252 (ANSI - латиница 1), но скандинавские символы так и остались. Latin1 (латиница 1) -- в списке не вижу. X3
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Ответ: Печать по-русски "серыми" шрифтами.

Я что-то не пойму, что вам нужно - чтобы появились русские символы на тех шрифтах, на которых их нет изначально? Так это, сами понимаете... Или нужны скандинавские символы? Какой цифровой код страницы? Вроде в списке есть 865 OEM скандинавская
Но вообще-то тема была про то как набрать русский текст старыми неюникодными шрифтами.
 
Статус
Закрыто для дальнейших ответов.