MESCIUS SPREAD for Windows Forms 17.0J > 開発者ガイド > セル型 > グラフィカルなセル型 > イメージ型セル |
イメージ型セルを使用すると、セル内に画像を表示できます。 イメージ型セルでは、イメージがデータとして表示されます。 連結された列のデータ型がビット配列である場合は、この連結列のデフォルトのセル型はイメージ型となります。
セルを表すCellクラスのValueプロパティには、イメージオブジェクトを割り当てることができます。イメージ、またはシリアル化されたイメージオブジェクトは、データモデルに保存される必要があります。
イメージ型セルとその各属性を設定するには、ImageCellTypeクラスを使用します。
上の図では、A2およびB2セルはイメージ型セルに設定され、同じ画像を表示しています。そして、B2およびC2セルの背景色はマゼンタに設定されています。B2セルでは、イメージ型セルを表すImageCellTypeクラスのTransparencyColorプロパティで透過色を黒に設定し、TransParencyToleranceプロパティで透過性許容値を設定しています。透明色を設定すると、指定した色を持つ領域が透過表示され、画像の背景が透けて表示されます。透過性許容値を255に設定すると、すべてが透明になります。したがって、通常は255未満の値を使用します。上の図では、画像の黒が透過表示され、背景色のマゼンタが透けて表示されています。
ImageCellTypeクラスのインスタンスを作成して、外観に関する設定をクラスのStyleプロパティに設定します。表示するイメージはセルを表すCellクラスのValueプロパティに設定します。
セルに設定する場合はCellクラスの、行に設定する場合はRowクラスの、列に設定する場合はColumnクラスの、あるいはスタイルに設定する場合はStyleInfoクラスのCellTypeプロパティに、定義したImageCellTypeクラスのインスタンスを割り当てます。
次のサンプルコードは、セルをイメージ型セルに設定します。CellクラスのValueプロパティにロゴイメージを読み込みます。CellクラスのBackColorプロパティでセルの背景色を設定し、ImageCellTypeクラスのプロパティで透過色、および透過性許容値を設定します。
C# |
コードのコピー
|
---|---|
FarPoint.Win.Spread.CellType.ImageCellType imgct = new FarPoint.Win.Spread.CellType.ImageCellType(); System.Drawing.Image image = System.Drawing.Image.FromFile("D:\\Logos\\logo.jpg"); imgct.Style = FarPoint.Win.RenderStyle.Stretch; imgct.TransparencyColor = Color.Black; imgct.TransparencyTolerance = 20; fpSpread1.Sheets[0].Cells[1,1,1,2].BackColor = Color.Magenta; fpSpread1.Sheets[0].Columns[1,2].Width = 100; fpSpread1.Sheets[0].Rows[1,1].Height = 50; fpSpread1.Sheets[0].Cells[1,1,2,2].CellType = imgct; fpSpread1.Sheets[0].Cells[1,1].Value = image; |
Visual Basic |
コードのコピー
|
---|---|
Dim imgct As New FarPoint.Win.Spread.CellType.ImageCellType() Dim image As System.Drawing.Image = System.Drawing.Image.FromFile("D:\Logos\logo.jpg") imgct.Style = FarPoint.Win.RenderStyle.Stretch imgct.TransparencyColor = Color.Black imgct.TransparencyTolerance = 20 FpSpread1.Sheets(0).Cells(1,1,1,2).BackColor = Color.Magenta FpSpread1.Sheets(0).Columns(1,2).Width =100 FpSpread1.Sheets(0).Rows(1,1).Height = 50 FpSpread1.Sheets(0).Cells(1,1,2,2).CellType = imgct FpSpread1.Sheets(0).Cells(1, 1).Value = image |
イメージ型セルに複数の画像を読み込む場合、セル値で画像ファイルのパスを直接割り当てることができます。これにより、メモリを最適化し、SPREADのパフォーマンスを向上できます。 次の図は、イメージ型セルに追加された複数の画像を示します。
次のサンプルコードは、Value プロパティで画像ファイルのパスを割り当てることで、イメージ型セルに複数の画像を読み込みます。
C# |
コードのコピー
|
---|---|
FarPoint.Win.Spread.CellType.ImageCellType imgct = new FarPoint.Win.Spread.CellType.ImageCellType(); imgct.Style = FarPoint.Win.RenderStyle.Stretch; imgct.TransparencyColor = System.Drawing.Color.Black; imgct.TransparencyTolerance = 20; fpSpread1.Sheets[0].Columns[1, 3].Width = 100; fpSpread1.Sheets[0].Rows[1, 2].Height = 70; fpSpread1.Sheets[0].Cells[1, 1, 3, 3].CellType = imgct; fpSpread1.Sheets[0].Cells[1, 1].Value = "D:\\Logos\\Spread.png"; fpSpread1.Sheets[0].Cells[1, 2].Value = "D:\\Logos\\GrapeCity.png"; fpSpread1.Sheets[0].Cells[1, 3].Value = "D:\\Logos\\ActiveReports.png"; fpSpread1.Sheets[0].Cells[2, 1].Value = "D:\\Logos\\ComponentOne.png"; fpSpread1.Sheets[0].Cells[2, 2].Value = "D:\\Logos\\DocSol.png"; fpSpread1.Sheets[0].Cells[2, 3].Value = "D:\\Logos\\Wijmo.png"; |
VB |
コードのコピー
|
---|---|
Dim imgct As FarPoint.Win.Spread.CellType.ImageCellType = New FarPoint.Win.Spread.CellType.ImageCellType() imgct.Style = FarPoint.Win.RenderStyle.Stretch imgct.TransparencyColor = System.Drawing.Color.Black imgct.TransparencyTolerance = 20 fpSpread1.Sheets(0).Columns(1, 3).Width = 100 fpSpread1.Sheets(0).Rows(1, 2).Height = 70 fpSpread1.Sheets(0).Cells(1, 1, 3, 3).CellType = imgct fpSpread1.Sheets(0).Cells(1, 1).Value = "D:\Logos\Spread.png" fpSpread1.Sheets(0).Cells(1, 2).Value = "D:\Logos\GrapeCity.png" fpSpread1.Sheets(0).Cells(1, 3).Value = "D:\Logos\ActiveReports.png" fpSpread1.Sheets(0).Cells(2, 1).Value = "D:\Logos\ComponentOne.png" fpSpread1.Sheets(0).Cells(2, 2).Value = "D:\Logos\DocSol.png" fpSpread1.Sheets(0).Cells(2, 3).Value = "D:\Logos\Wijmo.png" |
または、セルまたはセル範囲を右クリックして[セル型]を選択します。 セル型の一覧からイメージ型を選択します。 セル型エディタで、必要なプロパティを設定します。 〈適用〉ボタンをクリックします。