|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
stevie1401
Anmeldungsdatum: 04.07.2006 Beiträge: 133
|
Verfasst am: 28.12.2006, 12:59 Titel: API Bilder und Text drucken |
|
|
Moin,
über die Suchmaschine finde ich leider nichts passendes.
Hat schon jemand herausgefunden wie man Bilder UND Text drucken kann?
Euch allen einen guten Rutsch!
Stevie1401 |
|
Nach oben |
|
|
Dominik
Anmeldungsdatum: 22.12.2004 Beiträge: 172
|
Verfasst am: 28.12.2006, 23:46 Titel: |
|
|
Hallo!
Also ich weiß nicht, welche Suchmaschine du benutzt hast, aber wenn ich nach "Drucken" suche, finde ich ein Beispiel von mir, dass ich vor einiger Zeit gepostet habe und darin wird genau das demonstriert..... |
|
Nach oben |
|
|
stevie1401
Anmeldungsdatum: 04.07.2006 Beiträge: 133
|
Verfasst am: 29.12.2006, 09:02 Titel: |
|
|
...welch eine Antwort! |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2006, 14:26 Titel: |
|
|
Du suchst nicht richtig....
ich glaub domi meint das:
http://forum.qbasic.at/viewtopic.php?t=2689&highlight= _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Dominik
Anmeldungsdatum: 22.12.2004 Beiträge: 172
|
Verfasst am: 29.12.2006, 16:27 Titel: |
|
|
@Jojo
Genau das meinte ich
@stevie1401
Du hättest ruhig mit mehr Engagement suchen können....
dann hättest du diesen Thread auch gefunden.
Dir auch einen guten Rutsch
Dominik |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2006, 16:31 Titel: |
|
|
naja ganz ehrlich. wenn ich nach "drucken" oder "api" gesucht habe, hab ichs auch nicht gefunden. als ich zusätzl. noch Dominik als usernamen gesucht hab, kam gar nix. ich hab mir dann einfach mal deine posts suchen lassen und nur so hab ichs gefundn. also nicht siene schuld. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
stevie1401
Anmeldungsdatum: 04.07.2006 Beiträge: 133
|
Verfasst am: 30.12.2006, 09:34 Titel: |
|
|
Ich kann an diesem Beispiel leider nicht erkennen wie man Bilder ausdruckt.
Ein "Hallo" ist ja nett (sind ja auch nur 178 Zeilen, um "Hallo" ausdrucken zu können...", aber wie in aller Welt drucke ich ein Bild aus? |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
|
Nach oben |
|
|
Thorben
Anmeldungsdatum: 26.04.2005 Beiträge: 173 Wohnort: SH
|
Verfasst am: 14.08.2007, 01:09 Titel: |
|
|
Vielleicht interessierts ja noch jemanden!? Ich hab mich damit mal rumgeschlagen. Mein Prog kann Bilder und Text drucken und man hat die Auswahl zwischen Drucker Auswahl und standard Drucker. Und das Prog hat nur 132 Zeilen.
Code: |
OPTION EXPLICIT
OPTION PRIVATE
#define WIN_INCLUDEALL
#include once "windows.bi"
DECLARE FUNCTION PrintMyText() AS BOOL
DECLARE FUNCTION GetPrinterDCFromUser() AS PRINTDLG
DECLARE FUNCTION GetPrinterDC() AS PRINTDLG
IF PrintMyText() = FALSE THEN
PRINT "Ausdrucken fehlgeschlagen."
ELSE
PRINT "Daten an Drucker geschickt."
END IF
SLEEP:END
'===========================================================================
FUNCTION PrintMyText() AS BOOL
'===========================================================================
DIM Printer AS PRINTDLG
DIM di AS DOCINFO
PRINT "(1) for useing the standart printer"
PRINT "(2) for choosing a different printer"
DO
IF MULTIKEY( &h2 ) THEN
Printer = GetPrinterDC()
PRINT "You choose the standart printer"
EXIT DO
END IF
IF MULTIKEY( &h3 ) THEN
Printer = GetPrinterDCFromUser()
PRINT "You choose a different printer"
EXIT DO
END IF
LOOP
WITH di
.cbSize = LEN( DOCINFO )
.lpszDocName = STRPTR("DokumentName")
END WITH
'Ausdrucken
IF StartDoc( Printer.hDC , @di ) <= 0 THEN RETURN FALSE
IF StartPage( Printer.hDC ) <= 0 THEN RETURN FALSE
DIM hLogo AS HBITMAP
DIM logo AS BITMAP
DIM hDC_Image AS HDC
DIM hwnd AS HWND
hLogo = LoadImage ( GetModuleHandle(NULL), "wand006.bmp" , IMAGE_BITMAP,0, 0,LR_DEFAULTCOLOR OR LR_LOADFROMFILE)
IF hLogo=NULL THEN
MessageBox(0,"Bild konnte nicht geladen werden" , "Error" , MB_ICONWARNING ): RETURN FALSE
END IF
GetObject(hLogo, LEN(BITMAP), @logo )
hDC_Image = CreateCompatibleDC( NULL )
SelectObject( hDC_Image , hLogo )
StretchBlt( Printer.hDC , 0 , 0 , 1024 , 1024 , hDC_Image , 0 , 0 , logo.bmWidth , logo.bmHeight , SRCCOPY )
SetTextColor(Printer.hDC , RGB( 0 , 255 , 0 ))
TextOut( Printer.hDC , 1010 , 10 , "Hallo das ist ein Test" , LEN( "Hallo das ist ein Test" ) )
SetTextColor(Printer.hDC , RGB( 255 , 0 , 0 ))
TextOut( Printer.hDC , 1200 , 500 , "Hallo das ist ein Test" , LEN( "Hallo das ist ein Test" ) )
DIM DrawToDC AS HDC
DIM ps AS PAINTSTRUCT
DIM Pinsel AS HBRUSH
DrawToDC = CreateCompatibleDC( NULL )
DrawToDC = BeginPaint( NULL , @ps )
Pinsel = SelectObject( DrawToDC , CreateSolidBrush( RGB( 255 , 0 , 0 )))
MoveToEx( DrawToDC , 0 , 2000, NULL)
LineTo( DrawToDC , 0 , 2000 )
EndPaint( NULL , @ps )
BitBlt( Printer.hDC , 0 , 0 , 2000 , 2000 , DrawToDC , 0 , 0 , SRCCOPY )
IF EndPage( Printer.hDC ) <= 0 THEN RETURN FALSE
IF EndDoc( Printer.hDC ) <= 0 THEN RETURN FALSE
'Aufräumen
DeleteDC(Printer.hDC)
RETURN TRUE
END FUNCTION
'===========================================================================
FUNCTION GetPrinterDCFromUser() AS PRINTDLG
'===========================================================================
DIM pd AS PRINTDLG
WITH pd
.lStructSize = SIZEOF(PRINTDLG)
.hwndOwner = NULL'(hWnd)
.Flags = PD_ALLPAGES OR PD_COLLATE OR PD_RETURNDC OR PD_NOSELECTION
END WITH
PrintDlg(@pd)
RETURN pd
END FUNCTION
'===========================================================================
FUNCTION GetPrinterDC() AS PRINTDLG
'===========================================================================
DIM pd AS PRINTDLG
'Initialize the PRINTDLG structure.
WITH pd
.lStructSize = LEN( PRINTDLG )
.hwndOwner = NULL'(hWnd)
.Flags = PD_RETURNDEFAULT OR PD_RETURNDC
END WITH
'Invoke the printer dialog box.
PrintDlg( @pd )
'hDC member of the PRINTDLG structure contains the printer DC.
RETURN pd
END FUNCTION
|
MFG Thorben |
|
Nach oben |
|
|
csde_rats
Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 14.08.2007, 11:30 Titel: |
|
|
csderats hat Folgendes geschrieben: | Bitte keine solchen Threadpushes, es wäre besser gewesen, wenn du einen neuen Thread aufgemacht hättest. |
Was ist daran auszusetzen, an einen bestehenden Thread anzuknüpfen, wenn man für ein bislang nicht ganz gelöstes Problem doch noch eine Beispiellösung erarbeitet hat?
Mit welcher Compilerversion arbeitest du, Thorben? _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
Thorben
Anmeldungsdatum: 26.04.2005 Beiträge: 173 Wohnort: SH
|
Verfasst am: 14.08.2007, 12:21 Titel: |
|
|
Bin noch bei 0.15 |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 14.08.2007, 13:55 Titel: |
|
|
Der Code läuft mit geringen Änderungen auch auf FB 0.18 (schien zu funktionieren), ich habe ihn mal im Porticula hochgeladen.
http://www.freebasic-portal.de/index.php?s=fbporticula&mode=show&id=99 _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
|
|
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.
|
|