Hei,
minulla on tilanne tämä:
1.bmp
2.bmp
3.bmp
jne...
Tarkoituksena olisi saada yksi bmp-kuva, missä ensimmäinen kuva ja tiedosto on 1.bmp ja loput bmp-kuvat olisivat tämän kuvan perässä raw-muodossa.
Tässä kaikki kuvat yhtä leveitä ja korkeita.
Tarkoituksena siis rakentaa 1 kuva useista kuvista.
--
Markus
Heippa Markus!
jutskan pitäisi onnistuman oheisen luokan avulla, mutta kuvat olis ehkä parasta puristaa samaan kokoon & asetella jonkinmoiseen riviin jo lähdössä, jolloin jutska onnistuisi periaatteessa yhdistämällä tavutaulukot...
Imports System
Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.Runtime.InteropServices
Public Class BmpToRaw
Private Function ConvertBitmap(bitmap As Bitmap) As Object 'Byte()
'alustetaan bittikarttaobjekti (olemattomaksi)
Dim raw As BitmapData = Nothing
'alustetaan tavutaulukko
Dim rawImage As Byte() = Nothing
Try
'plokataan muistialue
raw = bitmap.LockBits(New Rectangle( _
0, 0, CInt(bitmap.Width), _
CInt(bitmap.Height)), ImageLockMode.[ReadOnly], _
PixelFormat.Format24bppRgb)
Dim size As Integer = raw.Height * raw.Stride
rawImage = New Byte(size - 1) {}
'kopioidaan kuvan tavut taulukkoon
Marshal.Copy(raw.Scan0, rawImage, 0, size)
Finally
If raw IsNot Nothing Then
'vapautetaan muistialue
bitmap.UnlockBits(raw)
End If
End Try
Return rawImage
End Function
End ClassKiitoksia, näyttää hyvältä! Testaan paremmalla ajalla.
Aihe on jo aika vanha, joten et voi enää vastata siihen.