我有一个表单,它的主面板是一个 FlowLayoutPanel,这正是我想要打印的(它被设计成看起来像一个格式很好的文档......没有按钮等......你右键单击命令)。
因此,我利用 DrawToBitmap 实现几乎免费的打印...针对该尺寸正确流动其内容。然后,我只使用 DrawToBitmap 将该 FlowLayoutPanel 及其所有内容呈现到打印页面。我什至可以通过将窗口增大到大于页面大小(相同的纵横比)来缩放以适应,然后缩小从 DrawToBitmap 获得的位图。效果很好...
但它仅在您的屏幕大于页面大小时才有效!因为任何将窗体或控件的大小调整为大于屏幕大小 + 任一方向 12 像素的尝试都会被阻止。
啊!!如果您要通过拒绝调整大于屏幕的大小来扼杀它的适用性,为什么要用 DrawToBitmap 的简单性和实用性来取笑我呢?(修辞)
我的问题:
有没有办法绕过这个限制并让 Form 或 FlowLayoutPanel 调整大小大于屏幕?
如果没有,有没有办法到达 FlowLayoutPanel 的滚动表面(不仅仅是滚动到视图中的部分),以便我可以调整它的大小以匹配打印页面,并且可以在其上调用 DrawToBitmap?
如果没有,是否有其他方法可以利用我现有的布局功能进行打印?或者我是否坚持重写所有 WinForms 代码只是为了生成相同的位图,如果我的屏幕比我的打印页面大,它已经生成了?