Я использую VS2013Express для создания приложения на основе формы Windows, которое будет отображать и в конечном итоге печатать документы Visio, а не полагаться на Visio Viewer на основе браузера. Излишне говорить, что это очень специфическое требование, так что на самом деле не нужно никому говорить мне использовать MS Visio Viewer!
Пока что я могу открыть документ Visio, отобразить его с помощью элемента управления AxVisioViewer.dll. Я даже могу напечатать ... до некоторой степени.
Проблема в том, что в настоящее время я могу печатать только с помощью метода PrintFromScreen, который в основном захватывает изображение формы, отображаемое на экране, и создает его растровую растровую карту.
Я копирую изображение BitMap на скрытую панель формы (для удаления панелей инструментов и т. д.), Затем распечатываю содержимое панели. Просто (иш)!
Вот ссылка на страницу, который я использовал для создания панели и печати изображения.
Что я хочу сделать, так это изменить размер (вектор, а не растр, чтобы сохранить масштаб) и центрировать изображение по мере необходимости для обеспечения правильной печати документа.
Вы захотите центрировать рисунок в элементе управления. Проверьте следующую ссылку.
https://msdn.microsoft.com/en-us/vba/visio-vba/articles/viewer-zoomtorect-method-visio-viewer
Вы также можете проверить методы масштабирования и панорамирования.
Привет, добро пожаловать в Stack Overflow. Не могли бы вы отредактировать свое сообщение, включив в него код ошибки? Так вы получите больше помощи.