neo336 Geschrieben 8. Oktober 2009 Geschrieben 8. Oktober 2009 Hallo zusammen Ich habe vor kurzem angefangen Grafiken in mfc zu zeichnen und bin auf ein problem beim antialiasing gestossen. CPen Pen; CPen* ptrPen; Pen.CreatePen(PS_SOLID, 16, RGB(0,0,0)); ptrPen=pDC->SelectObject(&Pen); pDC->Ellipse(50,50,350,350); Das ist das was ich im Moment habe. Aber der Kreis sieht so ziemlich verpixelt aus darum wollte ich das ganze mit antialiasing machen Hab schon viel gegoogelt und bei allem das ich versucht habe hat mein Compiler (VS 6.0) einen Fehler ausgegeben. Habt jemand vieleicht noch einen Tipp wie ich das angehen könnte? vielen dank Neo
Klotzkopp Geschrieben 8. Oktober 2009 Geschrieben 8. Oktober 2009 Habt jemand vieleicht noch einen Tipp wie ich das angehen könnte?Du könntest beispielsweise erklären, was du schon versuchst hast, und was dabei nicht geklappt hat. Vielleicht etwas detaillierter als "ein Fehler".
Bubble Geschrieben 8. Oktober 2009 Geschrieben 8. Oktober 2009 Mit GDI (die MFC-Klasse CDC kapselt GDI-Aufrufe) ist das gewünschte Resultat leider nicht über eine einfache Einstellung erreichbar. Eine Möglichkeit, dass gewünschte Verhalten zu erreichen, wäre z.B. GDI+ zu verwenden.
neo336 Geschrieben 9. Oktober 2009 Autor Geschrieben 9. Oktober 2009 Ich hab mich jetzt mal ein bischen über gdi+ / cdc erkundigt und wenn ich das richtig mitbekommen habe ist der header für cdc "afxwin.h" oder? Bei msdn hab ich dan vollgendes über gdi+ gefunden: VOID OnPaint(HDC hdc) { Graphics graphics(hdc); Pen pen(Color(255, 0, 0, 255)); graphics.DrawLine(&pen, 0, 0, 200, 100); } mal ausprobiert und Fehler 'Graphics' undeclared identifer etc.... hmm oke ein include file fehlt hab ich halt noch das hinzugefügt: #include <Gdiplus.h> using namespace Gdiplus; Error: Cannot open include file muss ich halt noch das include file downloaden beim weiter googeln bin ich noch auf ne gute seite gestossen GDI+ bis schritt 4 auf der seite alles gemacht Microsoft sdk installiert header erweitert um: #pragma comment(lib, "gdiplus.lib") den pfad hinzugefügt neuste dll eingefügt wiederieder Kompiliert und Error: Cannot open include file Weis noch jemand wo ich das file auftreiben kann??
Bubble Geschrieben 9. Oktober 2009 Geschrieben 9. Oktober 2009 (bearbeitet) #include <Gdiplus.h> using namespace Gdiplus; Error: Cannot open include file Die Datei muss sich in einem der aktuellen Suchpfade für einzubindende Dateien befinden. Bearbeitet 9. Oktober 2009 von Bubble
RipperFox Geschrieben 13. Oktober 2009 Geschrieben 13. Oktober 2009 Hab schon viel gegoogelt.. Zu wenig gegooglt "mfc antialiasing " als Suchbegriffe in Google geschmissen und gleich der erste Treffer hilft: CodeProject: CTGraphics - Anti-Alias C++ Drawing. Free source code and programming help Das wäre an sich schon eine Klasse die genau das machst was du willst. GDI+ kann ich empfehlen wenn man mit TrueType-Schriften arbeiten muss - aber für einen Kreis wäre mir der Aufwand zu hoch.. Grüße Ripper
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden