LPT unter Windows 10 Verion 1511

Von Ausgaben mit der Gra-Engine über Generatoren bis zum Export in diversen Formaten

Moderator: Moderatoren

saab-olly
Rookie
Rookie
Beiträge: 18
Registriert: Sa, 17. Mär 2018 18:13

Re: LPT unter Windows 10 Verion 1511

Beitrag von saab-olly »

brandelh hat geschrieben: Sa, 31. Mär 2018 18:14 Man könnte meine Funktion auch so abwandeln, dass sie je nach Inhalt einer Public/Private Variablen einmal ? und ein anderes mal die Druck Ansteuerung nutzt.
Aber alles was mit #COMMAND oder #IF/#ENDIF oder #TRANSLATE eingebaut wird, kann man zur Laufzeit nicht ins Original zurücksetzen.

Das wird alles zur Compilier-Zeit gesetzt !
Ich habe das Programm ohnehin in versch. einzelne PRG-Dateien aufgeteilt, damit kann ich die Direktiven gut steuern. Jetzt habe ich einiges gelernt dazu, und Dein lineprinter-Prog. hat mir sehr geholgen.

Danke und schöne Grüße in die Palz,

ciao Olly
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: LPT unter Windows 10 Verion 1511

Beitrag von brandelh »

Ich habe mir überlegt, dass die Steuerung über PRIVATE Variablen wohl sinnvoller ist,
dann könnte der Code auch zur Laufzeit ausgegeben werden und würde auch die SET Befehle für File und Console unterstützen.

Ich versuche mal nachher ob es so besser funktioniert, man lernt ja nie aus ;-)
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: LPT unter Windows 10 Verion 1511

Beitrag von brandelh »

Ich habe mich mal beim support erkundigt, ob wir im SET PRINTER TO OBJECT ... Befehl ein Syntax Problem haben.

Die Antwort ist nein, wir haben die Syntax richtig umgesetzt und wenn man einen geeigneten Drucker hat (mein Brother MFC scheint halb geeignet),
dann funktioniert das auch wie man das von set printer to ... ? ... set printer to erwartet.

Der Vorteil liegt bei dieser Syntax, dass man keine LPTx zuordnen muss, aber das bedeutet eben nicht, dass jeder GDI Drucker funktioniert !
Der Drucker und der Druckertreiber müssen den line printer modus unterstützen, das tun aber (fast) keine gebräuchlichen Drucker mehr.
Mein MFC kann es wohl, erkennt aber das Ende nicht. Mein Canon iP7200, HP MFC tut es nicht, teilweise kurze Reaktion aber nix gedruckt, teilweise gar keine Reaktion.
PDF Druckertreiber könnten sowas grundsätzlich nicht.

Es bleibt nur die Umstellung auf XbpPrinter(), wie sie oben beispielhaft beschrieben wurde.

Ich versuche den LinePrinter so zu verbessern, dass er kompatibler wird, wenn ich auch nicht erkennen kann warum man Bildschirm und Druckausgaben gleichzeitig machen sollte ;-)
Gruß
Hubert
saab-olly
Rookie
Rookie
Beiträge: 18
Registriert: Sa, 17. Mär 2018 18:13

Re: LPT unter Windows 10 Verion 1511

Beitrag von saab-olly »

Das deckt sich mit meinen Erfahrungen der letzten Wochen. Ich habe nun 80% das Codes mit lineprinter umgesetzt, perfekt!
saab-olly
Rookie
Rookie
Beiträge: 18
Registriert: Sa, 17. Mär 2018 18:13

Re: LPT unter Windows 10 Verion 1511

Beitrag von saab-olly »

Hallo,

ich habe mich nun zusätzlich zu der erfolgreichen Umstellung mit Hilfe von Huberts Programm auch mit Grafikdruck beschäftigen dürfen. Eigentich ganz einfach.... :D

Nun habe ich aber ein ganz komisches Phänomen:
wenn ich mittels folgender Befehle ein jpg drucke, klappt das auf allen virtuellen Druckern wie PDF und MS xps und Paperport, nicht aber auf dem physikalischen Drucker (DELL 1355cnw). Dort fehlt die Grafik, sonst kommt alles :-(

...
oBitmap := XbpBitmap():new():create( oPS )
oBitmap:loadFile( "logo.jpg" )
oBitmap:draw( oPs, {1300,2700} )
...

Jemand eine Idee?

Danke im Voraus, Olly
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: LPT unter Windows 10 Verion 1511

Beitrag von brandelh »

Zunächst möchte ich dir meine Drucker Klasse (HBPrinter) empfehlen statt XbpPrinter() direkt zu verwenden.
Kurze Erklärung warum und weshalb und Link zum download :arrow: HBPrinter in der Wissensbasis
Diese nutzt diese nutzt zwar auch den XbpPrinter(), aber kümmert sich automatisch um die verschiedenen Hardware Ränder.
Eine Drucker Auswahl mit Druckvorschau ist auch enthalten und einige Methoden, die z.B. @ SAY Druck vereinfachen.

Dort sind einige Beispiele, auch mit BitMap Druck, kompiliere doch einfach mal "TEST.PRG" und starte "TEST.EXE", den Ausdruck auf 2 Seiten beschränken und auf den speziellen Drucker jagen ...
HBPrintDialog.png
HBPrintDialog.png (20.1 KiB) 8146 mal betrachtet
das Ergebnis sieht so aus und sollte das Alaska Logo in etwas gewandelter Form enthalten
HB-Printer.pdf
(29.82 KiB) 390-mal heruntergeladen
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: LPT unter Windows 10 Verion 1511

Beitrag von brandelh »

saab-olly hat geschrieben: Fr, 13. Apr 2018 9:01 Jemand eine Idee?
Hardware Ränder des Druckers überprüfen, PDF etc. haben keinen Rand, Laser meist 5 mm auf jeder Seite, kann aber auch mal mehr sein.
DPI Druckauflösung des Druckers spielt meine ich bei Grafiken auch eine Rolle, das bügelt wie geschrieben meine Drucker Klasse alles aus.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: LPT unter Windows 10 Verion 1511

Beitrag von brandelh »

Der Ursprungsthread stammt aus 2016 !

für die Unklarheiten zu set printer to OBJEKT habe ich doch tatsächlich was in der Wissensbasis gefunden, aus noch älteren Tagen:

Infos zu set printer to object aus 2006 !
Gruß
Hubert
Antworten