こんにちは。SPREADチームの林です。
2017年2月15日の以下2製品の発売から早いもので、もう1ヶ月が経ちます。ありがたいことに新バージョンをご検討中の方から、お見積もりの依頼やご質問を続々と頂戴しています。
- SPREAD for Windows Forms 10.0J
- SPREAD for ASP.NET 10.0J
今回も10.0Jで追加された新機能をご紹介します。ASP.NETに追加された機能で、画像の配置についてです。これまでもイメージ型セルを使って画像をシート上に配置することは技術的に可能でした。ただ、あくまでもセル型の1つとして提供されていましたので、画像はセルの中に納めなければならず、Excelに挿入した画像のようにドラッグ&ドロップして移動させることはできません。
10.0Jではそういった制約にとらわれずに画像を使用できるような機能が追加されています。具体的にはセル型ではなく画像オブジェクトという形でシートに追加でき、セルとは別のレイヤーで画像を描画しています。実装方法はとてもシンプルで、引数に画像のサイズとパスを指定した状態でAddImageメソッドを呼び出すだけです。
Visual Basic
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If IsPostBack Then Return FpSpread1.ActiveSheetView.RowCount = 10 FpSpread1.ActiveSheetView.ColumnCount = 10 FpSpread1.ActiveSheetView.AddImage(50, 50, 200, 30, "grapecity.png") End Sub
C#
protected void Page_Load(object sender, EventArgs e) { FpSpread1.ActiveSheetView.RowCount = 10; FpSpread1.ActiveSheetView.ColumnCount = 10; FpSpread1.ActiveSheetView.AddImage(50, 50, 200, 30, "grapecity.png"); }
実行結果はこちら。シートのグリッド線をまたぐように画像が配置されており、シートとは別のレイヤーで描画されていることが分かります。
画像はExcelにもエクスポートできますので、出力するExcelに画像を含めたい場合なども有効かと思います。製品のオンラインデモで紹介していますので、実際にブラウザ上でグリグリ動かしてみてください!