Nano Hash - криптовалюты, майнинг, программирование

PrintDocument.PrinterSettings.Дуплексный сетевой принтер

Я пытаюсь распечатать свой документ на определенном принтере, лотке и установить параметры двусторонней печати, используя такой код:

void PrintingSystem_StartPrint(object sender, PrintDocumentEventArgs e)
{
    //e.g. \\patch2\MIU Copier
    e.PrintDocument.PrinterSettings.PrinterName = printerName; 
    //e.g. Tray 2
    e.PrintDocument.DefaultPageSettings.PaperSource = paperSource; 

    if (e.PrintDocument.PrinterSettings.CanDuplex)
        e.PrintDocument.PrinterSettings.Duplex = System.Drawing.Printing.Duplex.Horizontal;
}

Параметры PrinterName и PaperSource работают отлично, но свойство CanDuplex всегда имеет значение false, несмотря на то, что копир на это способен. Кроме того, если я исключаю оператор if и просто устанавливаю свойство, оно все равно печатается в симплексе. Есть ли способ сделать то, что я хочу? У меня было немного Google, и кажется, что это может быть проблема именно с сетевыми принтерами, но я не нашел обходного пути.

Редактировать: с тех пор я попробовал это на нескольких разных сетевых принтерах (копировальных устройствах), и, похоже, это работает на некоторых, а не на других. А именно, не работает на Gestetner 2212 PCL 5e, но работает на Ricoh Aficio MP C2550. Похоже, это могут быть плохие драйверы, сообщающие неправильно, я оставлю вопрос на данный момент для любых комментариев.


Ответы:


1

Я могу себе представить, что установка свойства PrinterName экземпляра PrinterSettings, связанного с PrintDocument, не обновляет такие свойства, как CanDuplex, как ожидалось.

Попробуйте создать новый экземпляр PrinterSettings и задать свойство PrinterName, а затем взгляните на свойство CanDuplex, чтобы увидеть, отличается ли поведение. Затем назначьте этот экземпляр PrinterSettings для PrintDocument.PrinterSettings.

Я просто думаю вслух и не пробовал это...

22.08.2011
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..