双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

怎样将canvas上面的图形输出保存为BMP文件,并且打印出来?

beerboy beerboy 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我开发了一个程序,在PaintBox上面的Canvas上面画图,我想将图形保存下来,并且提供打印功能。由于图形很大,屏幕显示不下,我靠滚动条来拖动才能看到整个图形,我保存时候如下:
TRect Rect;
Rect.Left=0;
Rect.Top=0;
Rect.Right=PBox->Width;
Rect.Bottom=PBox->Height;
Graphics::TBitmap *bmp=new Graphics::TBitmap();
bmp->Width=Rect.Right;
bmp->Height=Rect.Bottom;
bmp->Canvas->CopyRect(Rect,PBox->Canvas,Rect);
if(SaveDialog->Execute())
{
bmp->SaveToFile(SaveDialog->FileName);
}
但保存的结果却是当前屏幕显示内容,其他没有显示的部分就打印不出来了。降上面的Rect边界更改也不行。
另外,怎么打印我整个Canvas上面的图形呢?
希望高手解答。
...全文

相关推荐

评论 8
收藏 已收藏
分享
返回顶部
beerboy
C++ Builder 13,871 成员 102,696 内容