UbuntuのLibreOffice Calcで動作確認してます。
利用する画像は、あらかじめGIMPとかで、サイズを50 * 50ピクセルに拡大・縮小し、24ビットのBMP画像として保存しておきます。
Sub Main実行すると、こんな感じ。
oSheet = ThisComponent.getSheets().getByName("Sheet1")
' セルのサイズ調整
For i = 0 To 49
oSheet.getColumns().getByIndex(i).Width = 500
For j = 0 To 49
oSheet.getRows().getByIndex(j).Height = 500
Next j
Next i
' bmpファイルの読み込み
sURL = ConvertToURL("/home/tani/デスクトップ/testbmp.bmp")
Dim buf(FileLen(sURL) - 1) As Byte
Open sURL For Binary As #1
Get #1, , buf
Close #1
' RGBデータをセルの背景色に設定
For i = 0 To 49
counter = counter + 2
For j = 0 To 49
oCell = oSheet.getCellByPosition(49 - j, i)
r = buf(Ubound(buf) - counter)
counter = counter + 1
g = buf(Ubound(buf) - counter)
counter = counter + 1
b = buf(Ubound(buf) - counter)
counter = counter + 1
oCell.CellBackColor = rgb(r, g, b)
Next j
Next i
End Sub
0 件のコメント:
コメントを投稿