Шрифт для печати текста в рамочке.

01.02.11

Разработка - Работа с интерфейсом

Будет полезен для печати каждого символа текста в рамке без опасений за масштабирование, выход за пределы, настройки принтера  и пр.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
1C_Border.TTF
.ttf 129,50Kb
84
84 Скачать бесплатно
1C_BorderBold.TTF
.ttf 228,38Kb
20
20 Скачать бесплатно
1C_BorderItalic.OTF
.otf 137,50Kb
16
16 Скачать бесплатно
1C_Border2.TTF
.ttf 120,55Kb
22
22 Скачать бесплатно

Налоговая Украины решила освоить печать налоговых накладных и приложений к ним на спецбланках. Посему фирмы потихоньку приучают печатать нужную информацию для автоматического сканирования и распознавания в специально выделенных полях по принципу "один знак - одна ячейка".
Сидеть и рисовать "квадратики", подгоняя их размер под тип шрифта, выбираемый пользователем, драйвера принтера и масштаб страницы достаточно утомительно. Особенно через удаленное сопровождение. когда на экране одно - в окне просмотра - другое. а на принтере - третье.
Поэтому я выбрал достаточно простой (с моей точки зрения) способ - взять моноширинный шрифт (все символы имеют ячейки одного размера) и дорисовать окантовку. На все про все ушло менее получаса.
В моем случае за основу был взят ER Kurier 1251. Таблица символов расширена и для Unicode.

Примечание.

Поскольку это 1С, нельзя же совсем без кода. Следующие 2 функции рекомендую вставить в Глобальный модуль. А в тексте печатной формы вместо печати самой переменной вызывать функцию глРасширить(, новая_длина_дозаполняемая_символом_255). Почему не пробелом? А потому, что некоторые драйвера принтеров считают, что пробел - просто отступ, а не печатный символ.

// ===============================

Функция глМодуль(Чис)
    Если Чис < 0 Тогда
        Возврат (- Чис)
    Иначе
        Возврат Чис; 
    КонецЕсли;
КонецФункции           

// ===============================
Функция глРасширить(Тек, Длина) Экспорт // если отрицательная длина - заполнение справа
   
Перем Текст;
   
    Текст=СтрЗаменить(СокрЛП(Тек)," "," ");  // замена пробелов на 255-й символ или Символ(160)


    Пока СтрДлина(Текст)        Если Длина             Текст=Текст+" ";  //Это не пробел, а Alt+255  или Символ(160)
        Иначе
            Текст=" " + Текст;  //Это не пробел, а Alt+255  или Символ(160)
        КонецЕсли;   

    КонецЦикла;

    Возврат (Текст);

КонецФункции
// ===============================

 

Для тех, кто любит отправлять по электронной почте свои документы без встроенных шрифтов и без защиты (текстовый формат или в виде электронной таблицы), придется либо попросить установить у партнеров такой-же шрифт, либо рисовать "рамочку".

Желающие могут сами освоить процедуру создания собственного шрифта, благо ничего сложного в этом нет.

 

2011/02/04

Добавлен еще один вариант шрифта - с расширенной кодовой таблицей.

 

2011/02/05

Расширена клетка для шрифта BorderBold - теперь при печати в 2 ряда рамки сливаются. (Зато они стали чуть уже при печати в один ряд )

 

2011/02/07

То же самое сделано для Italic.

 

2011/02/08

Добавлен еще один вариант основного шрифта - с более узкой рамкой и точкой на I-украинское.

 

См. также

Работа с интерфейсом Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    55499    17    23    

43

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    19794    28    6    

44

Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    22334    mrXoxot    44    

128

Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    11276    smielka    37    

105

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    18057    1226    elcoan    53    

125

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

3 стартмани

10.04.2023    12724    167    acces969    31    

126

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    7553    kalyaka    6    

33
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vasilykushnir 63 01.02.11 18:59 Сейчас в теме
Попытка защитана. Молодец.
Обидно , что сам до этого не допетрил... ;)
2. vasilykushnir 63 01.02.11 20:09 Сейчас в теме
Попытка защитана. Молодец.
3. iov 407 01.02.11 20:17 Сейчас в теме
Очень элегантное решение
4. vasilykushnir 63 01.02.11 20:19 Сейчас в теме
Глюк какой-то с редактированием коммета: исправлление добвлено, но старый вариант сохранен, как новый коммет...
5. lals 01.02.11 20:29 Сейчас в теме
Просто но со вкусом, причем с обалденной вкуснятиной.
Эти квадратики всю кровь выпивают без остатка,
Пока их нарисуешь пока значения им дашь, ужасть.
Как говорится решпект и уважуха.
6. vasilykushnir 63 01.02.11 23:55 Сейчас в теме
Вопрос автору: как выкручиваешься, когда надо вывести чило до 4-х знаков, но реально оно равно нулю, следовательно надо вывести 4 пустые клеточки (по твоему шрифту - 4 пробела)?
Ноль в самой правой клеточке не комфимильно смотрится. Я пока выкрутился так:
?(Число > 0, дгмРасширить(Число, 4), " ") // в кавычках 4 пробела
но как-то не очень...
7. Sykoku 101 02.02.11 10:36 Сейчас в теме
Если не секрет, где встречается "0"? - В моем случае такого не бывает. Если Налоговый номер - то там "Х". Нулевая дата/номер - вряд-ли. Телефоны у меня строковые - народ любит дописывать пробелы, скобки, буквы и т.д. В этом случае предварительно запускаю парсер строки и создаю на выходе новую, в которой ничего нет, кроме цифр. Могу предложить тот же подход. Сложнее другое - когда символов больше, чем нужно. Вопрос - какие выводить - первые или последние - придется решать самостоятельно.
И, кстати, лучше не пробел, а "Alt+255" - в Windows принцип WYSIWYG не работает почти никогда.

P.S.
Если кому не нравится начертание - сообщите, какой шрифт Вам больше по душе. Выложу рядом. Выбирать. например, тут
8. ValeryZ 29 02.02.11 13:15 Сейчас в теме
Вот же ж ёлки-палки... Забыл выложить на infostart... Ещё 22-го января сделал Arial_NN.ttf
Не будет мне лавров первопроходца :))))
10. Sykoku 101 02.02.11 15:27 Сейчас в теме
(8)
Извини, я свой еще 4-го января наваял. Просто красочно оформил по просьбам трудящихся на этих выходных. И, насколько я знаю, Arial не моноширинный. Т.е. все символы будут в клеточках разного размера. Как по мне - некрасиво...
(6)
Некоторые просили вместо пробелов забивать нулями. Тут все просто - форматируем под длину знаков - "Ч(0)4" или "Ч04".
11. vasilykushnir 63 02.02.11 15:39 Сейчас в теме
(10) с нулями и форматом чисел проехали - просто вывожу нужное количество пробелов. А вот такой вариант: ИНН меньше 10 знаков и расширять надо не с начала, а с конца (в конце пробелы выводить)
12. Sykoku 101 02.02.11 16:36 Сейчас в теме
(11)
в глРасширить() второй параметр отрицательный. В данном случае -10.
13. vasilykushnir 63 02.02.11 17:20 Сейчас в теме
(12) Если бы...
дгмРасширить(ФирмаНомСвид, -10)
в ФирмаНомСвид сидит 8 знаков, та вот верхняя команда таки 8 и выводит, а не 10.
14. Sykoku 101 02.02.11 17:54 Сейчас в теме
(12)
2 вопроса.

1-й. Пробелы или Alt+255? - Пробелы не всегда печатаются. Встречал варианты и через один и самый последний и ни одного.



2-й. Длина строки что выдает? 8? И не убирали строку замены пробелов на 255-й символ?

Текст=СтрЗаменить(СокрЛП(Тек)," "," ");

первый - пробел, второй - ALT+255 - перебейте второй символ.

И строчках

Текст=Текст+" ";
...
Текст=" " + Текст;

перебейте на 255-й.

Можете проверить, работает ли функция, достаточно простым способом - заменить пробел нижним подчеркиванием. Будет чуть жирнее внизу, зато сам квадратик останется пустым и сразу поймете, где загвоздка.
17. vasilykushnir 63 03.02.11 08:17 Сейчас в теме
(14) Блин! Молдаванин я.... Ну конечно ALT+255!
Хотя нет. Не то я делаю. Если удерживаю ALT и набираю 255, ничего не вводится.
Текст=Текст+Символ(255); вместо пробела выдает "я"
а вообще, как этот ALT+255 ввести?
Знак "_" срабатывает, но это как-то...
18. Sykoku 101 03.02.11 11:18 Сейчас в теме
(17)

Удерживая (нажав и не отпуская) "Alt" на дополнительной цифровой клавиатуре набрать 255.
Если через функцию символ - его код 160 - это особенности кодировки таблиц в Windows при преобразовании в Unicode.


(16)
Можно. Можете даже свой шрифт прислать (моноширинный желательно) - я нарисую рамку.
19. vasilykushnir 63 03.02.11 13:57 Сейчас в теме
(18) Неа, не хочет вставлятся через Alt, а вот Симв(160) сработало.
15. ValeryZ 29 02.02.11 23:16 Сейчас в теме
(10)Мой вариант - моноширинный. Я специально каждую букву поместил в квадрат. Притом, правая сторона любого квадрата "накрывается" левой стороной следующего квадрата, чтобы соединения литер не выглядели утолщенными относительно верхней и нижней линий. Ну, вобщем, вот: http://infostart.ru/public/81130/
9. Арчибальд 2709 02.02.11 15:00 Сейчас в теме
16. kadrovik 03.02.11 05:34 Сейчас в теме
интересно, но можно было сделать буквы подальше от рамок ?
20. vasilykushnir 63 04.02.11 09:47 Сейчас в теме
А вообще чумовая весчь. Хочу еще раз поблагодарить автора за прекрасную идею. Сколько времени и нервов сэкономила...
Каким редактором шрифтов пользуешься?
21. Sykoku 101 04.02.11 10:38 Сейчас в теме
(20)

Шрифт создан (скорее, подредактирован) в FontLab Studio 5. Просмотр/тестирование - FontExpert 2009.
Документация в сети есть (на английском - http://www.scribd.com/doc/9298809/FontLab-Studio-5-Mac-Manual)
22. vasilykushnir 63 04.02.11 13:22 Сейчас в теме
(21) Если бы я еще что-то в английском кумекал.... У меня по пьяни и русский не очень - только с преводчиком :D
За подсказку спасибо. Когда-то пробовал свои шрифты рисовать, но видать редактор попался не очень - забросил.
FontLab Studio фришная или не совсем? Впрочем сворованное становится автоматически Free
24. vasilykushnir 63 09.02.11 10:06 Сейчас в теме
(21) Скачал студио - доктор ругается на патч - троян кажет....
26. vasilykushnir 63 09.02.11 12:39 Сейчас в теме
(25) увы... торент через проксю не хочет...
Если можно намыль: kushnir@farmacia.ck.ua

Спасибо - получил. И доктор на лекарство не ругается ;)
23. vasilykushnir 63 05.02.11 23:57 Сейчас в теме
Спасибо за добавленные шрифты. Молодец - добротно сработано.
27. BorisBelov 889 18.08.12 17:05 Сейчас в теме
(0) Почему бы не использовать штатные методы Windows?
Или я что-то не понимаю?
На экране клеточки с "пробелом" чуть-чуть ниже, при печати все одинаково!
Прикрепленные файлы:
28. Sykoku 101 18.08.12 20:36 Сейчас в теме
(27) BorisBelov,
А "штатные методы" - это как? - подчеркивание шрифта? Или использовать спецшрифт с псевдографикой и дополнительно писать обработку строки - строчка с рамкой сверху, сам текст с разделителя посередине и строчка снизу? - Так точно не хочу, еще со студенчества задолбало базы из DBF на экран/принтер так вырисовывать...
А во вторых, не все живут на Уиндовзе...
29. BorisBelov 889 19.08.12 00:26 Сейчас в теме
(28) В таблице документа 1С используется шрифт 1CBorder (Кириллический).
Реквизит "ПечСтрока", который надо печатать, имеет длину N1, количество клеток в печатной форме N2.
Остаются детали, о которых Вы писали: добавляем пробелы вначале или в конце.

В секции "Отчет" я вручную клеточки не рисовал. Название реквизита "ПечСтрока" разместилось побуквенно в клеточках при выборе шрифта. Это окно настройки печатной формы!
30. serejkin 13.10.12 13:47 Сейчас в теме
Я не уверен в полезности данной публикации применительно к бланкам.

Мне частенько приходится делать бланки с квардратиками и хочу поделиться, что: во
1-ых уже готовые бланки даются чаще уже с прорисованными квадратиками
2-ых - за отклонение количества или размера квадратиков бланк часто не принимается. Мне недвано вернуи с НИ из за того что шрифт не в сторону советской власти
3-их написать функцию для записи в бланк что-то Сред(СтрокаЧтоВпихиваем,НомСимв,1) еще проще.
Особенно, если квадратики имеют несколько строк и фиксированное количество символов да еще вдобавок некоторые поля внутри статичны. И это в системе что через каждые несколько абзпцев например пустые квпрдарики строго по одной линии.

Разработка будет полезна для произвольного бланка, где хотят вставить просто слово в квардратиках.
31. Sykoku 101 15.10.12 12:21 Сейчас в теме
(30)
1. Далеко не всегда. Чаще всего - общая рамка без внутренних разделителей - меньше вероятность сбоя, особенно для самокопирующихся бланков.
2. К шрифту размер квадратиков или их количество отношения точно не имеют. А то, что налоговая будет искать повод придраться, чтобы отказать в налоговом кредите, особенно перед:
а) выборами
б) требованием собрать на 60% больше предыдущего периода (с учетом уже стребованных наперед денег)
я нисколько не сомневаюсь. Уже начали требовать документы за период, превышающий 5 лет.
Оставьте свое сообщение