Я пытаюсь написать редактор макета для печати на VB6 или VB.Net и ищу несколько справочных статей, которые помогут мне начать работу.
Идея состоит в том, что редактор будет использоваться для определения «областей» печати для макетов счетов-фактур или выписок, позволяя пользователю рисовать поле для адреса клиента, номера счета-фактуры, строк, итогов и т. д. Затем программа выясняет, как переводить размеры и положения различных ящиков в местах печати для сохранения в файле определения макета, который позже используется системой счетов для печати различных отчетов. Обратите внимание, что по разным причинам (в основном из-за того, что система учетных записей не является Windows) размещение текста в Word или аналогичных продуктах и их печать документа не вариант. Конечно, я могу редактировать файл макета документа вручную, но это не очень удобно для пользователя.
Как вы можете догадаться, поисковые запросы «редактор форм», «редактор макетов» и т. П. Приносят сотни нерелевантных результатов. Расстраивает то, что я видел очень актуальную статью, но потерял закладку.
Я надеюсь, что у кого-то есть указатели.
Спасибо, это звучит сложнее, чем я представлял. Мне В самом деле хотелось бы найти исходную статью, которую я потерял, поскольку в vb.net было довольно ясно, как это сделать.
Поскольку это макет для печатной формы, я думаю, что это значительно снижает сложность - мне действительно нужно хранить только размер и положение каждой области печати, а также информацию о шрифте, выравнивании и цвете и, возможно, имя файла для графики. если требуется логотип. Формат файла определения макета полностью под моим контролем.





Прежде всего, вы должны хорошо знать язык / API, которые вы используете, и на самом деле вы В самом деле должны указать, используете ли вы Windows.Forms, WPF, GTK # и т. д. Убедитесь, что вы очень хорошо разбираетесь в который.
Затем вы должны подумать о формате, в котором ваш редактор форм будет хранить формы. Обычно редакторы форм используют XML. Если вы также хотите следовать этой тенденции, вам, В САМОМ ДЕЛЕ, следует изучить хороший XML API для VB.
Наконец, тщательно спланируйте свои шаги:
Теперь пришло время начать проверку концепции: создать простой редактор, который может загружать / сохранять формы и добавлять к ним кнопки. Это, вероятно, будет сложнее всего понять. Возможно, вам придется иметь дело с событиями и несколькими другими вещами, но в конечном итоге это сработает (если нет, вы можете спросить еще раз). Наконец, просто добавьте необходимые функции, такие как вывод файла определения макета, новые элементы управления, перемещение / изменение размера элемента управления и т. д.
Если вам нужно что-то еще (в том числе более конкретные инструкции), просто спросите.
Я помню, как разработал именно такой редактор форм для распечаток в vb6 около 10 лет назад iirc. не уверен, что я все еще могу найти источники, к сожалению: действительно, я нашел этот вопрос, потому что мне нужно написать еще один, и надеялся найти какой-то код для начала вместо того, чтобы делать это снова с нуля. во всяком случае, способ, которым я это реализовал, более или менее был примерно таким:
в целом это было не так уж и сложно и получилось очень красиво, немного напоминало редактор форм «кристальных отчетов» .
Я помню, что потратил некоторое время, чтобы уточнить детали, например привязка к сетке с разной шириной символов, изменение размера полей при изменении стилей текста, таких как сжатый или расширенный, без их прыжков из-за ошибок округления и тому подобного. не позволяйте этому напугать вас, имейте в виду, что вам не нужно заботиться обо всем с самого начала, просто будьте немного осторожны, чтобы не заблокировать возможность сделать это позже.
в настоящее время я бы не стал советовать vb6, если только это не то, что вы знаете лучше всего, и вам нужно создать .exe независимо от того, какая инфраструктура .net установлена на целевых машинах. Если вместо этого вы решите использовать .net, я думаю, это будет хороший шанс изучить wpf, если вы его еще не знаете, это дает впечатляющую графику даже больше, чем windows.forms.