在Crystal Reports中导致“页眉和页面页脚太大”页面错误的原因是什么?

我已经使用下面的代码打印button:

Data.str = null; //Data.str = textBox24.Text.ToString(); string s = "select * from temp_bond"; cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\Real.mdb"; cn.Open(); DataSet ds = new DataSet(); OleDbDataAdapter da = new OleDbDataAdapter(s, cn); ds.Clear(); da.Fill(ds); Bond rpt = new Bond(); rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, "BOND_" + Data.str + ".pdf"); System.Diagnostics.Process.Start("BOND_" + Data.str + ".pdf"); //r.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, "E:\\rep.pdf"); //crystalReportViewer1.ReportSource = r; OleDbCommand cm1 = new OleDbCommand("delete * from temp_bond", cn); cm1.ExecuteNonQuery(); cn.Close(); 

我在这段代码中遇到错误:

 rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, "BOND_" + Data.str + ".pdf"); 

错误是:

页眉和页面页脚对页面来说太大。 错误在文件C:\ DOCUME〜1 \ ADMINI〜1 \ LOCALS〜1 \ Temp \ temp_3f674868-8e5d-46ce-80eb-dce78bb2ba89 {17674136-B71E-4C6F-9E36-1CEB514B13BF} .rpt:页眉或页脚长于页。

什么可以导致这种情况,我该如何解决?

我有一个已发布多年的应用程序,并使用Crystal Reports作为嵌入式文档生成工具。 包含在我的应用程序中的报告已经运行了好几年了,当我收到一个用户收到的这个确切的错误信息的支持电话时,我被困了一会儿。

经过一番摸索和研究,我发现主要的罪魁祸首是最终用户计算机上的默认打印机。 如果默认打印机当前配置为在比您生成的报告更小的纸张上打印,则Crystal Reports将为您提供此错误消息。 另外,如果打印机的打印方向与CR报告的方向不同,您将收到此消息。

这个bug的真正奇怪/设计不佳的问题是,即使您声明运行时只是创建一个PDF,您也会收到它。 我假定CR正在使用一些默认的打印机设置来初始化运行时间。

你有几个选择来解决这个问题。 首先,您可以将默认打印机更改为其他设备。 如果您的默认打印机具有不同的非典型形状因子(例如标签打印机),则可能必须执行此操作。如果标签小于文档,Crystal Reports将不会喜欢标签打印机。

当然,选项二是重新配置打印机驱动程序,以指定足够大的纸张类型以适合您的文档。 此外,如上所述,确保纸质打印首选项也设置为按照Crystal Report文档所需的正确方向(横向或纵向)进行打印。

最后,您可以将您的默认打印机更改为另一台打印机,或者从您的PC中取出打印机。 这不是最有利的答案,但这可能是让信息消失的最后一个必要步骤。

我最近有一个类似的问题,但我无法通过更改默认打印机或通过更改它们的设置来解决它。

我设法通过手动设置代码报告的参数来解决问题。

这是一个向你展示的例子。

 dim crep As New CrystalDecisions.CrystalReports.Engine.ReportDocument crep.PrintOptions.PaperOrientation = PaperOrientation.Portrait crep.PrintOptions.PaperSize = PaperSize.PaperA4 

Saludos todos! =)

我遇到了同样的问题,并将默认打印机更改为Microsoft XPS Writer。 这纠正了我的水晶报告的显示。

尝试更改水晶报告的页面大小右键单击报告设计 – >页面设置…尝试与A4,景观和其他人根据需要。

我在使用网络配置的Zebra标签打印机作为打印服务器时,也遇到了这个问题。 我不想尝试更改客户端默认打印机上的设置,因为我无法确定将打印哪个客户端。 而是将其固定在打印服务器(Windows server 2008)上的驱动程序设置(打印机默认值)中。 所以在打印服务器上:

  1. 转到“设备和打印机”并选择受影响的打印机。
  2. 右键单击并选择“打印机属性”。
  3. 进入“常规”标签,点击底部的“更改属性”按钮。
  4. 转到“高级”选项卡,然后单击“打印默认值…”按钮。
  5. 转到“页面设置”选项卡并定义所需的设置(大小,方向)。
  6. 点击“确定”多少次您需要保存并退出。

检查标题或其他对象。

设置属性:

 can grow = False 

经过漫长的搜索和尝试,我发现当水晶观看者加载页面设置有四个页边距(上,下,左,右)自动改变。 所以总是把它们写在你的代码中。 它会解决你的问题。