1
我有一個關於多頁固定頁面的問題。我有一個編程創建的網格,網格超過一個A4頁面。現在我想用打印邊距在幾個固定頁面中打印網格。但是,在我的路上,我反覆創建了網格,並在固定頁面排列功能中抵消了LeftTop點。我遇到了一個問題,我無法在固定頁面中設置打印邊距,因爲我將打印邊距設置爲固定頁面,然後第一頁將具有打印邊距,接下來的頁面將爲空白。WPF多頁打印FixedDocument(Visual C#2010)
如何固定文檔的打印多頁的大格想打印?
PrintDialog pd = new System.Windows.Controls.PrintDialog();
if (pd.ShowDialog() == false)
{
return;
}
var pageSize = new Size(pd.PrintableAreaWidth, pd.PrintableAreaHeight);
var document = new FixedDocument();
document.DocumentPaginator.PageSize = pageSize;
for (int nPage = 0; nPage < MaxPage; nPage++)
{
Grid tempGrid = LoadControlMotherInit();
tempGrid.Width = GridWidth;
tempGrid.Height = GridActualHeight;
Point leftTop = new Point();
leftTop.X = 10;
leftTop.Y = -nPage * pageSize.Height;
// Create FixedPage
var fixedPage = new FixedPage();
fixedPage.Width = pageSize.Width;
fixedPage.Height = pageSize.Height;
fixedPage.Margin = new Thickness(0, 0, 0, 96);
fixedPage.Children.Add((UIElement)tempGrid);
fixedPage.Measure(pageSize);
fixedPage.Arrange(new Rect(leftTop, pageSize));
fixedPage.UpdateLayout();
// Add page to document
var pageContent = new PageContent();
((System.Windows.Markup.IAddChild)pageContent).AddChild(fixedPage);
document.Pages.Add(pageContent);
}
pd.PrintDocument(document.DocumentPaginator, "My Document");
聽起來對我來說是個不好的主意......嘗試移動網格,而不是網頁。沒有任何魔力,只需設置邊距即可。 – Athari
但網格超出A4紙張。我將邊距設置爲要打印的網格,效果將在第一頁和最後一頁上起作用。 –
不一致,如何設置打印邊距? –