我有一個使用Excel Interop的CopyPicture方法創建的HBITMAP。出於某種原因,這會在圖像的頂部和左側邊緣放置一個灰色邊框,即使這些邊緣不是電子表格的一部分。有人可以告訴我一個簡單的方法從圖像中刪除這些邊界。我想到的方法是獲取字節數組中的位,從該字節數組中移除第一行和第一列,然後將數組轉換回位圖。有沒有更容易或更好的方法?就像一個簡單的修剪功能?從HBITMAP中刪除邊框
int croppedWidth = x;
int croppedHeight = y;
Rectangle r = Rectangle(0, 0, croppedWidth, croppedHeight);
System::Drawing::Imaging::PixelFormat format = src->PixelFormat;
Bitmap^ result = src->Clone(r, format);
這裁剪src
位圖r
及複印件放入:
聽起來像一個XY問題。首先處理X,檢查如果將不同的大小傳遞給CopyPicture會發生什麼情況。 – 2012-04-20 11:53:33
它沒有什麼區別我的尺寸我傳遞到copypicture – Jonnster 2012-04-20 13:14:49