Bella.Yuan 发表于 2022-6-6 09:17:17

wengMQ 发表于 2022-6-3 10:21
有疑问可以加我QQ546962925

感谢老铁帮忙回复~{:5_117:}

村东智叟 发表于 2022-6-6 09:25:20

Bella.Yuan 发表于 2022-6-6 09:17
感谢老铁帮忙回复~

大佬告诉的方法,已经尝试过了。有问题,好像不行,属性不生效:'(

Bella.Yuan 发表于 2022-6-6 14:35:50

村东智叟 发表于 2022-6-3 08:54
您好,
感谢回复。
我没有表述清楚。是这样的,现在的功能是根据rdlx模板生成。PDF文件,然后在打印PDF ...

您好,按您的描述是先生成pdf文件,在打印pdf文件,如果您是生成pdf后在进行打印,那就需要在打印机上面去设置对应的纸张而不是在代码上进行设置。

村东智叟 发表于 2022-6-6 14:51:29

Bella.Yuan 发表于 2022-6-6 14:35
您好,按您的描述是先生成pdf文件,在打印pdf文件,如果您是生成pdf后在进行打印,那就需要在打印机上面 ...

你好,是的。
市先生成PDF,再进行打印的。
现在的需求是,生成的PDF就是对应的规格的PDF。
也就是,rdlx的模板是A4的尺寸,生成的PDF,可以生成A4,可也以生成A5的尺寸的PDF(通过代码控制)
之前的大佬说使用fittosize属性可以实现,自己测试之后,是不能实现的。
fittosie的属性是根据用纸的尺寸,来进行pdf的修改,实际测试的是,被修改的是PDF的内容的大小,PDF的大小并没有变化,且比例也丢失了,且不知道是基于哪个尺寸进行修改的。用纸尺寸在A3,A4,A5,A6的情况下,生成的PDF是一样的:'(

James.Lv 发表于 2022-6-6 18:12:39

村东智叟 发表于 2022-6-6 14:51
你好,是的。
市先生成PDF,再进行打印的。
现在的需求是,生成的PDF就是对应的规格的PDF。


您好,这个可能不行,导出PDF的内容的纸张大小是跟报表模板里面的纸张大小是一致的,除非你每次导出PDF时,都去修改一下模板对应的纸张大小,才能实现导出不同纸张大小的PDF

wengMQ 发表于 2022-6-6 22:10:42

我这边可以

村东智叟 发表于 2022-6-7 08:22:11

wengMQ 发表于 2022-6-6 22:10
我这边可以

 怎么实现的?
也是用的fittosize这个属性吗?

村东智叟 发表于 2022-6-7 09:17:31

wengMQ 发表于 2022-6-6 22:10
我这边可以

这是PDF的生成代码,和我追加的代码(但是这样,测试实际是不行的)

// Provide the page report you want to render.
GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport(new
System.IO.FileInfo(@"C:\Sample_PageReport.rdlx"));
GrapeCity.ActiveReports.Document.PageDocument reportDocument = new
GrapeCity.ActiveReports.Document.PageDocument(report);
// Create a output directory
System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\MyPDF");
outputDirectory.Create();
// Provide settings for your rendering output.
GrapeCity.ActiveReports.Export.Pdf.Page.Settings pdfSetting = new
GrapeCity.ActiveReports.Export.Pdf.Page.Settings();
GrapeCity.ActiveReports.Extensibility.Rendering.ISettings setting = pdfSetting;


//这是我追加的代码
//设置用纸尺寸为A5
reportDocument.Printer.PaperKind = PaperKind.A5;
//适应用纸尺寸
pdfSetting.SizeToFiT = true;


//Set the rendering extension and render the report.
GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension pdfRenderingExtension =
new GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension();
GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider outputProvider = new
GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory,
System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name));
reportDocument.Render(pdfRenderingExtension, outputProvider, pdfSetting);


Bella.Yuan 发表于 2022-6-7 09:44:06

村东智叟 发表于 2022-6-7 08:22
 怎么实现的?
也是用的fittosize这个属性吗?
您好,上面老铁使用的是版本是AR15,您的版本是AR12,15版本在打印时可以修改pdf的纸张大小,您可以升级到15版本测试看看。

村东智叟 发表于 2022-6-7 10:00:59

Bella.Yuan 发表于 2022-6-7 09:44
您好,上面老铁使用的是版本是AR15,您的版本是AR12,15版本在打印时可以修改pdf的纸张大小,您可以升级 ...

这个感觉不对吧,
这个改的是打印机。我是想输出PDF的尺寸更改。我感觉和打印机的设置没有关系吧。
并且这个地方更改了打印的设置后,不会影响后面的打印设置吗?
比如我想打印A4的纸,在这里更改了话。后面不是这个程序的打印,而是其他的程序想打印A5的纸,打印不会有影响吗?
页: 1 [2] 3
查看完整版本: ActiveReports 12 中的rdlx账票模板可以放大或者缩小吗