2012-04-25 6 views
5

Есть ли способ перепечатать файл спула?Можно ли перепечатать файл спула?

Я не могу найти ни одного примера или статьи, чтобы сказать, есть ли способ или нет.

редактировать: когда я говорю перепечатать, я имею в виду в том же принтере

+0

Является ли файл EMF в форме спула или в окончательном формате PostScript/PCL? – BBoy

+0

У меня есть два принтера, которые я хочу сделать. Первый создает формат EMF, а другой - только для общего/текстового – sgkin

ответ

0

Для EMF я бы рассмотреть возможность использования PrintDocument класса и Metafile класса. обработчик события OnPrintPage PrintDocument разоблачает объект Graphics, который позволит вам визуализировать EMF файлы, такие как, например:

void printDocument1_PrintPage(object sender, PrintPageEventArgs e) 
    { 
     Metafile metafile = new Metafile("SampleMetafile.emf"); 
     e.Graphics.DrawImage(metafile, 10, 10); 
    } 

Что касается обычного текста, который вы могли бы просто сделать его графический объект на документе печати, но вы должны принять с учетом переноса текста & строк, это может не стоить усилий. Я также подозреваю, что почти со всеми устройствами, если вы отправляете обычный текстовый порт 9100 на принтер, он также хорошо печатает.

1

Да, вы можете. Читайте полный SPL-файл в массив байтов и взглянуть на эту статью:

http://support.microsoft.com/kb/322090/en-us

Он показывает, как отправить исходные данные на принтер. Используйте это, чтобы отправить массив байтов на принтер. Остерегайтесь: файл SPL может фактически содержать различные типы данных, такие как EMF, PCL, ESC-P и т. Д. Вы должны убедиться, что формат файла SPL, который у вас есть, подходит для вашего конкретного принтера.