Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Wydruki spod DOS na drukarce GDI (i nie tylko) z konwersją z Mazovii

tzok 06 Oct 2012 16:45 21477 0
phoenixcontact
  • Ostatnio musiałem się zmierzyć z problemem zastąpienia drukarki igłowej drukarką laserową. Niestety firma używa archaicznego DOSowego programu zrobionego na zamówienie. Co prawda drukarka jaką kupili miała własny procesor druku i teoretycznie obsługiwała emulację EPSONa, jednak w praktyce obsługa emulacji sprowadzała się do odfiltrowywania kodów sterujących, a wydruki z programu używały druku zagęszczonego (ale nie na całej stronie). Oczywiście nie muszę wspominać, że polskie znaki były kodowane w standardzie Mazovii.

    Tyle tytułem wstępu, teraz do rzeczy:

    W systemie trzeba zainstalować drukarkę "Generic / Text Only", przypisać ją do nowo utworzonego "Portu lokalnego" o nazwie "c:\spool.dat" i udostępnić jako TXTPRN (nazwa w zasadzie dowolna ale tego się będę trzymał w przykładzie).

    Następnie trzeba tę drukarkę zamapować pod port LPT1 (albo jakiś inny LPTx). Dokonujemy tego z poziomu wiersza poleceń wydając następującą komendę (musi być aktywne jakiekolwiek połączenie sieciowe):
    net use LPT1 \\127.0.0.1\TXTPRN /persistent:yes


    Ostatni krok to pobranie i skopiowanie do jakiegoś folderu na dysku mojego programu DOSprint i dodanie skrótu do tego programu do autostartu. Program wyświetla jedynie ikonę w zasobniku systemowym, przy pierwszym uruchomieniu trzeba wybrać drukarkę.

    Program wymaga prawa do zapisu na dysku c: oraz zainstalowanego środowiska uruchomieniowego .NET w wersji 2.0. Obsługuje podstawowe formatowanie (druk zagęszczony i powiększony) oraz kod końca strony. Dokonuje też konwersji kodowania polskich liter z Mazovii na UTF-8.

    Alternatywnie można użyć jednego z poniższych programów Shareware, mają one o wiele bardziej rozbudowaną obsługę formatowania tekstu:
    Nix-Ware.com DOS printer emulator (59,00zł)
    DOSprn (49,21zł)
    @SwIt Printfil (79,00€)
    DOS2USB (19,99$)
    Jest też darmowy WinPrint (po zgłoszeniu uwag autorowi działa nawet lepiej niż mój ale podobnie jak w moim druk zagęszczony jest realizowany jako regularny, tylko mniejszą czcionką):
    WinPrint

    Zamiast mapowania portu LPT1 przez net use możliwe jest użycie programów rezydentnych DOSu przechwytujących odwołania do portu LPT1 i przekierowujące je do pliku, jak np. prn2file (prn2fil3.zip).

    Poniżej wydruk tej samej strony do PDF przy pomocy kolejno DOSprint, WinPrint, DOSprn, DOS Printer (czcionka użyta do renderowania strony to Lucida Console):
    Wydruki spod DOS na drukarce GDI (i nie tylko) z konwersją z Mazovii Wydruki spod DOS na drukarce GDI (i nie tylko) z konwersją z Mazovii Wydruki spod DOS na drukarce GDI (i nie tylko) z konwersją z Mazovii Wydruki spod DOS na drukarce GDI (i nie tylko) z konwersją z Mazovii

    ***

    Zamieściłem poprawioną wersję programu DOSprint.
    Attachments:
    About Author
    tzok
    Moderator of Cars
    Offline 
    Interesuję się elektroniką, informatyką oraz motoryzacją, a w szczególności połączeniem tychże. Pracuję na uczelni jako pracownik naukowy oraz wykładowca.
    tzok wrote 37634 posts with rating 5479, helped 3025 times. Live in city Bielsko-Biała. Been with us since 2002 year.
  • phoenixcontact