Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Schriftart und Größe am Drucker steuern

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
kaestnerw



Anmeldungsdatum: 25.01.2015
Beiträge: 4
Wohnort: Salzburg

BeitragVerfasst am: 04.02.2015, 18:17    Titel: Schriftart und Größe am Drucker steuern Antworten mit Zitat

Hallo *,
Ich würde gerne beim drucken verschieden Schriften verweden. Gibts dazu irgendwelche Musterprogramme...
Hardware: Windows 7 Prof. mit div.Druckern dran Canon MP280, Brother HL-2250-Dn, OKI Farblaser, AMD-4 Kern Prozessor mit 3,8 GHz, 8 GB Hauptspeicher. derzeit Installiert FreeBasic 1.01.0 für Windows und FBIde 0.4.6r4 bin da baer nicht fixiert, kann auch eine andere Version verwenden.
Danke und Gruß
kaestnerw
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2507
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 04.02.2015, 22:07    Titel: Antworten mit Zitat

Also laut

http://www.freebasic.net/wiki/wikka.php?wakka=KeyPgOpenLpt

gibt es immerhin einen Modus, der die Verwendung beliebiger Windows-Drucker erlaubt (sogar das Mitgeben eines Namens für den Druckjob ist vorgesehen), dito auch bei Linux mit lpr.

Nur das Problem: Die sog. TTY-Emulation unterstützt natürlich keine grafischen Möglichkeiten wie u.a. der Schriftartwechsel. => Somit müsstest Du Deinen Druckjob in einer gerätespezifischen Druckersprache aufbereiten, wie dies im MS-DOS-Zeitalter noch üblich war, wo Druckerdaten im RAW-Format verschickt wurden. Ist aus meiner Sicht höchstens für höherwertige Drucker geeignet, typischerweise Laserdrucker mit PCL- und PostScript-Emulation (dies sind recht gut standardisierte Befehlssätze) => Der Endbenutzer Deiner FB-Applikation müsste sich dann ein Gerät dieser Kategorie zulegen.

Auf jeden Fall nicht mehr mit LPRINT arbeiten, sondern OPEN, PRINT#und CLOSE, damit fürs Betriebssystem eine saubere Abgrenzung der Druckjobs im Spooler resultiert.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
grindstone



Anmeldungsdatum: 03.10.2010
Beiträge: 1211
Wohnort: Ruhrpott

BeitragVerfasst am: 05.02.2015, 01:51    Titel: Antworten mit Zitat

Hallo kaestnerw!

Hier noch ein paar Links zu dem Thema:

http://www.freebasic-portal.de/downloads/bibliotheken/dislin-anbindung-fuer-freebasic-213.html
http://www.freebasic.net/forum/viewtopic.php?f=2&t=21578
http://forum.qbasic.at/viewtopic.php?p=39976&sid=6c3f4a6cbc95771ed98acc60c6b745b2
https://www.adobe.com/products/postscript/pdfs/PLRM.pdf
https://www.itp.uni-hannover.de/~zawischa/ITP/proPS.html

Gruß
grindstone
_________________
For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
peter_u



Anmeldungsdatum: 19.09.2006
Beiträge: 17
Wohnort: Remscheid, NRW

BeitragVerfasst am: 24.02.2015, 11:54    Titel: PCL Druckersprache Antworten mit Zitat

Hallo,

ich habe vor einigen Jahren ein Programm erstellt (und bis heute fortlaufend aktualisiert), welches Drucker mit PCL5e anspricht. Wir nutzen damit - auch auf Wíndows 8.1! - einen HP2300DTN Duplex,Netzwerk,Mehrfach-Blattfächer für DIN-A4 und A5 problemlos (gibt es auf einer Auktionsplattform für ca 79 Euro). Wie oben schon beschrieben brauchst Du einen Drucker, der über eingebaute Schriftarten verfügt und auch dann ist die Druckerprogrammierung nicht ganz einfach.
Dein Brother HL2250DN hat PCL6 eingebaut - soweit mir bekannt ist, ist dies abwärtskompatibel zu PCL5e.
Ich bin hier im Forum eher Tipp-Empfänger als -Geber, aber vielleicht kann ich ausnahmsweise mal helfen lächeln

Bei Interesse sende mir eine PN.
_________________
Der alte Mann lernt noch
--- Learning by doing ---
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
peter_u



Anmeldungsdatum: 19.09.2006
Beiträge: 17
Wohnort: Remscheid, NRW

BeitragVerfasst am: 24.02.2015, 12:10    Titel: Code Beispiel bei einem HP DRucker mit PCL5e Antworten mit Zitat

Der dritte Link von grindstone verweist auf meine damalige Frage.
Hier der Code aus meinem Programm mit Erklärungen als Basis für eigene Versuche (sorry an die Admins - ich hoffe es ist ok, dass ich das so poste, bin nicht der Forum-Freak):

'Variable für Drucker anlegen:
Dim Shared As String druckername
'Druckername vergeben: MINITOWER = Netzwerkname PC, dahinter Netzwerkname Drucker
druckername="lpt:\\MINITOWER\HP LaserJet 2300 Series PCL 5e"
----------------------------------------------------------
Function selectPrinter( ) As String
' Windows Druckerauswahl fuer einen bestimmten Drucker
Dim As PrintDlg pd
pd.lStructSize = SizeOf( PrintDlg )
If PrintDlg( @pd ) = FALSE Then
Exit Function
End If
Dim As DEVNAMES Ptr dn = GlobalLock( pd.hDevNames )
Function = *Cast( ZString Ptr, Cast( Byte Ptr, dn ) + dn->wDeviceOffset )
GlobalUnlock( dn )
End Function
-------------------------------------------------------------------------------------------------------------------
'Beispiel AUSDRUCK
Open lpt druckername for Output as #98
' INFO Bedeutung: &11H Fach 2, &11S Duplex, &126A DIN A4
' und im HP! Drucker eingebauten Font ansprechen:
Print #98, Chr$(27);"E";Chr$(27);"&l1H";Chr$(27);"&l0S";Chr$(27);"&l26A";Chr$(27)+"(13U"+Chr$(27)+"(s0p13h0s0b4099T";
' andere Schriftart und Grösse
Print #98, " ";Chr$(27)+"(s1p24v0s2b24607T";"PIANOTRANS ";Chr$(27)+"(s0p10h0s0b4099T";
'Druckdatei schliessen
Print #98, Chr$(27);"E" 'Blatt auswerfen
Close #98
_________________
Der alte Mann lernt noch
--- Learning by doing ---
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
kaestnerw



Anmeldungsdatum: 25.01.2015
Beiträge: 4
Wohnort: Salzburg

BeitragVerfasst am: 24.02.2015, 18:51    Titel: Antworten mit Zitat

Hallo *,
also nochmals herzlichen Dank für die Infos, das eine oder andere davon werde ich sicher noch probieren. Für den Moment (als schnelle Lösung) habe ich folgenden Weg gewählt: es gibt da ein Gratis-Programm QBdruck, das kann man gratis aus dem Internet herunterladen, es liest eine Datei ein und man kann damit alle vorhandenen Schriften unter Windows in den verschiedensten Größen drucken, das erfüllt ganz meine Erfordernisse.
(z.B. die Schrift Algerian in der Größe 170 dann sind die Buchstaben 3 c hoch und 2,5 cm breit. Damit kann man eine ganze Menge anfagen und das reicht mir aufs erste.
Danke und Gruß
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2507
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 24.02.2015, 21:30    Titel: Antworten mit Zitat

kaestnerw hat Folgendes geschrieben:
Für den Moment (als schnelle Lösung) habe ich folgenden Weg gewählt: es gibt da ein Gratis-Programm QBdruck, das kann man gratis aus dem Internet herunterladen, es liest eine Datei ein und man kann damit alle vorhandenen Schriften unter Windows in den verschiedensten Größen drucken, das erfüllt ganz meine Erfordernisse.

Am besten uns allen den Download-Link dafür geben. Ansonsten in Deinem Fall noch schauen, ob es evtl. ein Kommandozeilen-Interface besitzt, dann wäre ein Schreiben dieser Datei ins %TEMP% und mit einem SHELL-Aufruf den Druckvorgang starten möglich, so dass der Druckvorgang für den Endanwender transparent abläuft.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz