Canvas ohne AutomaticScale
Übersicht

![]() |
RallimenSieger des 30-EUR-WettbewerbsBetreff: Canvas ohne AutomaticScale |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
habe das Problem das beim ändern der Fenstergröße mein eingezeichnetes Bild mit scaliert wird, nur neu einzeichnen geht nicht! Welche Möglichkeiten gibt es da? Code gibt es natürlich auch !Code: [AUSKLAPPEN] Startwindow = CreateWindow ("",100,100,200,200,0,%1111)
Canvas1 = CreateCanvas(10,10,170,170,Startwindow,0) SetGadgetLayout Canvas1,1,1,1,1 Imagehandle% = CreateImage (50,50) SetBuffer CanvasBuffer(Canvas1):ClsColor 255,255,0:Cls:FlipCanvas Canvas1 Repeat Ergebnis = WaitEvent (50) Select Ergebnis Case $803 End Case $802 UpCanvas(Canvas1,Imagehandle%) End Select Forever Function UpCanvas(Canvas1,Imagehandle%) SetBuffer CanvasBuffer(Canvas1) Cls DrawBlock Imagehandle%,0,0 FlipCanvas Canvas1 End Function eine Möglichkeit hab ich ja, aber nja gefällt mir nichtCode: [AUSKLAPPEN] Startwindow = CreateWindow ("",100,100,200,200,0,%0011)
Canvas1 = CreateCanvas(10,10,GadgetWidth (Startwindow)-30,GadgetWidth (Startwindow)-60,Startwindow,0) SetGadgetLayout Canvas1,1,1,1,1 Imagehandle% = CreateImage (50,50) SetBuffer CanvasBuffer(Canvas1):ClsColor 255,255,0:Cls:FlipCanvas Canvas1 Repeat Ergebnis = WaitEvent (50) Select Ergebnis Case $803 End Case $802 Canvas1 = RezCanvas1(Canvas1,Startwindow) UpCanvas(Canvas1,Imagehandle%) End Select Forever Function RezCanvas1(Canvas1,win) FreeGadget Canvas1 Canvas1 = CreateCanvas(10,10,GadgetWidth (win)-30,GadgetHeight(win)-60,Win,0) SetGadgetLayout Canvas1,1,1,1,1 SetBuffer CanvasBuffer(Canvas1):ClsColor 255,255,0:Cls:FlipCanvas Canvas1 Return canvas1 End Function ;das canvas löschen und neu erstellen Function UpCanvas(Canvas1,Imagehandle%) SetBuffer CanvasBuffer(Canvas1) Cls DrawBlock Imagehandle%,0,0 FlipCanvas Canvas1 End Function |
||
[BB2D | BB3D | BB+]
|
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Rallimen schreibt
Zitat: habe das Problem das beim ändern der Fenstergröße mein eingezeichnetes Bild mit scaliert wird, nur neu einzeichnen geht nicht!
kann ja nicht da dein Canvas gezoomt wird ![]() Code: [AUSKLAPPEN] SetGadgetLayout Canvas1,1,1,1,1
dieser befehl heftet alle 4 Seiten an dein Fenster beim vergrößern Zoom nun dein canvas mit, wenn du das nicht willst mußt du dein Canvas neu erstellen z.b neue Fenstergröße = neue Canvasgröße |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das diese Möglichkeit besteht ist mir schon klar!
denn genau das macht das Proggi was ich oben als 2.Code stehen habe! |
||
[BB2D | BB3D | BB+]
|
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Soweit Ich weiß gibt es da keine andere möglichkeit
entweder Zoomen oder Neu ! viel schlimmer finde Ich das man bei Canvas dieses Antialiasing nicht ausschalten kann ![]() cu |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group