Seite 1 von 2
SaveImage() - Monochrom
Verfasst: 07.07.2006 17:54
von onny
Wie kann ich ein Image als BMP speichern und zwar monochrom?
thx schonmal für alle antworten

Verfasst: 08.07.2006 18:29
von Sicro
Hallo onny,
du kannst ein farbiges Bild einfarbig abspeichern, indem du das Bild vorher in ein einfarbiges Bild umwandelst.
Nachfolgend eine Prozedur, die ein farbiges Bild in ein graues Bild umwandelt:
Code: Alles auswählen
Procedure.l ConvertToGray(Image.l)
Protected iHeight.l, iWidth.l, pColor.l
If StartDrawing(ImageOutput(Image))
For iHeight = 1 To ImageHeight(Image)
For iWidth = 1 To ImageWidth(Image)
pColor = Point(iWidth,iHeight)
pColor = (Red(pColor) * 77 + Green(pColor) * 150 + Blue(pColor) * 28) / 255
pColor = RGB(pColor,pColor,pColor)
Plot(iWidth,iHeight,pColor)
Next
Next
StopDrawing()
ProcedureReturn #True
EndIf
EndProcedure
Mfg DerProgger
Verfasst: 08.07.2006 20:08
von onny
danke!
Verfasst: 08.07.2006 20:24
von Kaeru Gaman
sorry, DP, das ist nicht ganz richtig so.
du hast zwar ein grauton-bild draus gemacht, aber das hat immer noch 24bit farbtiefe.
als monochrom bezeichnet man ein bild mit 1bit farbtiefe.
Verfasst: 08.07.2006 20:31
von AND51
Dann machs doch besser
Wenns gar nicht anders geht, waru mnicht um die Ecke denken?
1. OpenScreen mit 1 Bit Farbtiefe öffnen
2. Bild als monochromes Sprite laden
3. Screenshot schießen, geht glaube ich mit
GrabSprite()
4. Abspeichern
SOnst wüsst ich auch nichts...

Verfasst: 08.07.2006 20:42
von Kaeru Gaman
> Dann machs doch besser
wasn das für ne schei$-antwort?
nur weil ich nicht hokuspokus ne lösung hab, darf ich nicht sagen, dass ne andere lösung nicht den erfordernissen entspricht?
wobei - ich schätze, dass die lösung von DP durchaus onny's wünschen entspricht, dass allerdings onny keinen schimmer hat, was monochrom bedeutet.
Verfasst: 08.07.2006 22:09
von AND51
Du hast wohl das

nicht gesehen, was? Brauchst du eine neu

?
Das war keineswegs eine Anmache und ich hatte nicht im Entferntesten vor, dich anzusaugen.
Verfasst: 08.07.2006 22:18
von Kaeru Gaman
ja psst schon. sorry, bin etwas blank mit den nerven heut.
Verfasst: 08.07.2006 23:30
von Kurzer
pColor = (Red(pColor) * 77 + Green(pColor) * 150 + Blue(pColor) * 28) / 255
Uiih, wo hast Du die Gewichtung der einzelnen Kanäle her?
Ist das irgendwie "Standard"?
Gruß Markus
Verfasst: 09.07.2006 01:11
von MVXA
> Ist das irgendwie "Standard"?
Klar...