Page 1 of 1

Печать документа

Posted: 01 Jun 2016, 14:17
by Andrey
Добрый день!

Несколько вопросов по поводу печати документов через CadViewXLite 9.2.5.1 :

1. как корректно программно задать принтер для печати?

на данный момент я делаю это так:

AxViewer = new AxCADViewX();

for (int i = 0; i < AxViewer.PrintersCount; i++)
{
ComboPrinters.Items.Add(AxViewer.get_Printer(i));
}


private void ComboPrinters_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
Printer = ComboPrinters.SelectedItem.ToString();

AxViewer.set_Printer(ComboPrinters.SelectedIndex,Printer);
}


но метод set_Printer почему то не задает нужный мне принтер, и ,после вызова метода Print() , документ отправляется на принтер по умолчанию.

Флагов "использовать принтер по умолчанию" у класса AxCADViewX я не нашел..


2. Какие свойства нужно задать объекту класса AxCADViewX перед вызовом метода Print(), чтобы рисунок печатался в соответствии со своими истинными размерами ?

Открываю PLT файл. Свойства mmHeight и mmWidth показывают, что файл формата ~А1 . Отправляю на плотер, поддерживающий форматы до A0. Но в итоге печатает А5...

Re: Печать документа

Posted: 08 Jun 2016, 20:40
by support
Здравствуйте, Андрей!

Для того чтобы задать принтер, который будет использован для печати, используйте свойство AxCADViewX.PrinterIndex, например:

Code: Select all

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            string printer = comboBox1.SelectedItem.ToString();
            axCADViewX1.PrinterIndex = comboBox1.SelectedIndex;
        }
Что касается размера бумаги, то автоматическое определение формата бумаги при печати не поддерживается. Вам нужно будет вручную задать формат бумаги при помощи диалогового окна Настройка печати, которое может отображаться при отправке чертежа на печать, если значение свойства AxCADViewX.IsShowPrinterSetupDialog установлено равным true.


Михаил