Zitat von
Cöster:
Dass es keine Copy-Modes mit Or gibt, hab ich nicht behauptet (MergePaint, NotSrcErase, PatPaint, SrcPaint). Ich meinte nur, dass es keinen CopyMode gibt, der ein Bmp mit or mit einer Farbe kombiniert (wie das andere CopyModes mit der Brush.Color tun, allerdings mit anderen Operatoren bzw. verknüpft direkt danach nochmal mit dem Dest-Bmp).
Was dir Hawkeye nun geliefert hat.
Zitat von
Cöster:
Ich denke für "Color or Transparent-Bitmap" guck ich mir deinen Beispielcode nochmal an (ließe sich allerdings auch noch optimieren, z.B. wird immer wieder auf Transparent geprüft. Außerdem könnte es eine Zugriffsverletzung geben, wenn das Src-Bmp nicht vollständig ins Dest-Bmp passt).
Zugriffsverletzung: glaube ich nicht. Die Bitmap Daten liegen im Anwendungsbereich und würden entweder die vorhergehenden Scanlines überschreiben bzw. anderen belegten Speicher, aber zu einer
AV müsste man schon Glück haben - aber eine Überprüfung sollte sonst vorher geschehen.
Die Überprüfung auf Transparent sollte nicht viel ausmachen - ob da eine lokale Variable noch was rausholt ist fraglich. Grundlegend ging es nur darum die Ideen zusammen zu fassen und nicht fertigen Code zu präsentieren - wie geschrieben: ungetestet!