Имя: Пароль:
1C
1С v8
Как проверить установлен ли шрифт в windows
0 poskotinov_av
 
20.08.17
17:13
1. Как проверить установлен ли шрифт в windows?
2. Как его установить, если он не установлен?
3. Возможен ли вывод текста шрифтом, не устанавливая его?
1 Asmody
 
20.08.17
19:37
1. https://forum.infostart.ru/forum9/topic8047/
2. http://forum.oszone.net/post-530756-6.html
3. В ПолеHTMLДокумента, но только когда звезды раком встанут
2 poskotinov_av
 
24.08.17
10:42
(1) в итоге вот выводит список шрифтов:

    objWMIService = ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\" + ИмяКомпьютера() + "\root\CIMV2");
    colItems = objWMIService.ExecQuery("SELECT * FROM Win32_FontInfoAction",,48);
    Для Каждого objItem Из colItems Цикл
        Сообщить("File: " + objItem.File);
    КонецЦикла;

НО!!! есть установленный шрифт в системе, и он отсутствует в этом списке. И скорость выполнения данного запроса - НУ ОЧЕНЬ МЕДЛЕННАЯ, у меня выполнялась около 10 сек.
3 Tatitutu
 
24.08.17
10:54
sh = Новый COMОбъект("WScript.Shell");
        КаталогШтрифтов = sh.ExpandEnvironmentStrings("%SYSTEMROOT%") + "\Fonts";
        
        ФайлШрифта = КаталогШтрифтов + "\MAGAZKA.ttf";
        НовФайлШрифта = Новый Файл(ФайлШрифта);
        Если НовФайлШрифта.Существует() Тогда
            
        Иначе          
            ПутьМакета=Константы.ПутьКартинок.Получить() + "\MAGAZKA.ttf";            
            ПолучитьОбщийМакет("ALGER").Записать(ПутьМакета);             
            Попытка
                ПолучитьОбщийМакет("ALGER").Записать(КаталогШтрифтов + "\MAGAZKA.ttf");
            Исключение
                Сообщить("Я сильно извиняюсь...."+Символы.ПС+
                "Но мне не хватает ПРАВ в системе для установки файла шрифта штрихкода"+Символы.ПС+
                "Скоприруете самостоятиельно "+ ПутьМакета+ " в " +КаталогШтрифтов+Символы.ПС+
                "Спасибо Вам. У Вас все получиться!");            
            КонецПопытки;  
        КонецЕсли;