2012-04-25 14 views
5

Czy istnieje sposób ponownego wydrukowania pliku buforowego?Czy mogę ponownie wydrukować plik spool?

Nie mogę znaleźć żadnego przykładu ani artykułu do stwierdzenia, czy istnieje sposób, czy nie.

edit: kiedy mówię przedruk go, to znaczy do tej samej drukarki

+0

Czy jest to plik EMF formatu buforowego lub w ostatecznym formacie PostScript/PCL? – BBoy

+0

Mam dwie drukarki, które chcę zrobić. Pierwsza tworzy format EMF, a druga jest generyczna/tylko tekstowa – sgkin

Odpowiedz

0

Dla EMF uznałbym za pomocą klasy PrintDocument i klasy Metafile. OnPrintPage obsługi zdarzeń PrintDocument za naraża obiekt Graphics, która pozwoli Ci do renderowania plików EMF jak takie:

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

chodzi o zwykły tekst można po prostu wyciągnąć go do Obiektu Graficznego na drukowanie dokumentu, ale trzeba wziąć pod kątem zawijania tekstu linie &, może nie być warte wysiłku. Podejrzewam też, że prawie wszystkie urządzenia wysyłają zwykły tekst w dół do portu 9100 drukarki, aby wydrukować go w rozsądny sposób.

1

Tak, można. Przeczytaj cały plik SPL do tablicy bajtów i rzucić okiem na ten artykuł:

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

To pokazuje, jak wysyłać surowe dane do drukarki. Użyj tego, aby wysłać tablicę bajtów do drukarki. Uwaga: plik SPL może w rzeczywistości zawierać różne typy danych, takie jak EMF, PCL, ESC-P itp. Musisz upewnić się, że format pliku SPL, który masz, jest odpowiedni dla twojej drukarki.