Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Bilder Drucken

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.02.2004, 23:50 Uhr
~karl
Gast


Hallo Forum,

vielleicht könnt Ihr mir helfen
z.Z. Drucke ich text und Linien,

CDC dcPrint;
...
dcPrint.Rectangle(x1,y1,x2,y2);
...
dcPrint.TextOut(100,100,"Hallo Forum");
...

und das funktioniert auch wunderbar, kann ich auf diese weise
aber auch Bilder (der User soll Kopf und Fußzeilen einfügen können,
die wenn es geht in verschiedenen Formaten wie Bmp,jpeg,gif etc. vorliegen).

wenn mir da jemand auf die Sprünge helfen könnte wäre ich sehr dankbar

gruß

Karl
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
21.02.2004, 12:19 Uhr
~Karl
Gast


Hallo Forum,

also ich bin da jetzt schon weiter gekommen, nur
habe ich noch folgendes Problem:
Das Bitmap das ich ausdrucke ist sehr sehr klein und
ich bekomme es nicht größer, hier mal kurz mein Code:


C++:
CPrintDialog dlgPrint(FALSE,PD_ALLPAGES,this);
CDC dcPrint;
  if (dlgPrint.DoModal()==IDOK) {
     dcPrint.Attach(dlgPrint.GetPrinterDC());
     DOCINFO myPrintJob;
     myPrintJob.cbSize = sizeof(myPrintJob);
     myPrintJob.lpszDocName = "Calculation";
     myPrintJob.lpszOutput = NULL;
     myPrintJob.lpszDatatype = NULL;
     myPrintJob.fwType = NULL;


     if (dcPrint.StartDoc(&myPrintJob)>=0) {
            
        dcPrint.StartPage();
        BMP´s,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
        dcPrint.SetMapMode(MM_TEXT);

        CBitmap bitmap;
        bitmap.LoadBitmap(IDB_BITMAP3);
        BITMAP bm;
        bitmap.GetObject(sizeof(bm), &bm);
        CDC speicherDC;
        speicherDC.CreateCompatibleDC(&dcPrint);
        speicherDC.SelectObject(&bitmap);
                
        dcPrint.BitBlt(300, 300, bm.bmWidth, bm.bmHeight, &speicherDC, 0, 0, SRCCOPY);
                
        //dcPrint.StretchBlt( 300, 300, bm.bmWidth, bm.bmHeight, &speicherDC, 0, 0, bm.bmWidth, bm.bmHeight, BLACKNESS  );
dcPrint.EndPage();
    
    }
    dcPrint.EndDoc();
}
dcPrint.DeleteDC();



vielleicht kann mir jetzt jemad weiterhelfen.

gruß Karl
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
23.02.2004, 00:13 Uhr
~lille
Gast


Falls Du die Lösung hast, würde sie mich auch sehr interessieren.
By the way: was bedeutet
BMP´s,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
23.02.2004, 16:03 Uhr
~Flapsi
Gast


Hi,
Du solltest Dir mit dcPrint.GetDeviceCaps(HORZRES) bzw. VERTRES die aktuelle Größe Deiner Druckfläche holen (entspricht nicht der Bildschirmfläche sondern ist wegen der höheren Druckerauflösung erheblich größer) und Dein Bild dementsprechend skalieren.

Gruß

Flapsi
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: