吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1995|回复: 1
收起左侧

[会员申请] 申请会员ID:callmeshilin 请审核!

[复制链接]
吾爱游客  发表于 2022-9-30 15:04

1、申请会员ID:callmeshilin
2、个人邮箱:callmeshilin@163.com
3、原创技术文章:.net动态库强签名去除方法





最新版FastReport 2022 net报表库去水印去页数限制方法!!!

从官网下载最新版FastReport安装,然后用dnspy打开fastreport.dll文件。

1. 全局搜索`GetPagesCount`方法,可以看到页数限制为5,将代码修改如下:

[C#] 纯文本查看 复制代码
private int GetPagesCount(List<int> pages)
{
    return pages.Count;
}


这样可以去除页面打印页数限制。


2. 全局搜索`PrintPage`方法,删除如下代码块,可以去掉水印。

[C#] 纯文本查看 复制代码
using (Watermark watermark = new Watermark())
{
	watermark.Text = string.Concat(new string[]
	{
		typeof(Duplex).Name[0].ToString(),
		typeof(Exception).Name[0].ToString(),
		typeof(Margins).Name[0].ToString(),
		typeof(object).Name[0].ToString(),
		" ",
		typeof(ValueType).Name[0].ToString(),
		typeof(Exception).Name[0].ToString(),
		typeof(Rectangle).Name[0].ToString(),
		typeof(ShapeKind).Name[0].ToString(),
		typeof(ICloneable).Name[0].ToString(),
		typeof(object).Name[0].ToString(),
		typeof(NonSerializedAttribute).Name[0].ToString()
	});
	watermark.DrawText(frpaintEventArgs, new RectangleF(0f, 0f, base.Page.PaperWidth * Units.Millimeters, base.Page.PaperHeight * Units.Millimeters), base.Report, true);
}


注意:这个方法一共出现在3处FastReport.Print.DefaultPrintController/ScalePrintController/SplitPrintController,都需要去除才可以。

3. 全局搜索`GetOverlayPage`方法,删除如下代码块。


[C#] 纯文本查看 复制代码
if (page != null)
			{
				OverlayBand overlayBand = new OverlayBand();
				overlayBand.Parent = page;
				overlayBand.Bounds = new RectangleF(0f, -page.TopMargin * Units.Millimeters, 200f, 20f);
				TextObject textObject = new TextObject();
				textObject.Parent = overlayBand;
				textObject.Bounds = new RectangleF(0f, 0f, Units.Millimeters * 50f, 20f);
				textObject.Text = string.Concat(new string[]
				{
					typeof(double).Name[0].ToString(),
					typeof(Exception).Name[0].ToString(),
					typeof(Math).Name[0].ToString(),
					typeof(object).Name[0].ToString(),
					" ",
					typeof(ValueType).Name[0].ToString(),
					typeof(Exception).Name[0].ToString(),
					typeof(Rectangle).Name[0].ToString(),
					typeof(ShapeKind).Name[0].ToString(),
					typeof(ICloneable).Name[0].ToString(),
					typeof(object).Name[0].ToString(),
					typeof(NonSerializedAttribute).Name[0].ToString()
				});
			}



4. 全局搜索`PageNumbersParser`方法,删除如下代码块,可以去掉水印。


[C#] 纯文本查看 复制代码
num = 5;
  for (int j = 0; j < this.pages.Count; j++)
  {
      if (this.pages[j] >= num || this.pages[j] < 0)
      {
          this.pages.RemoveAt(j);
          j--;
      }
  }


以上修改完毕。就可以保存模块。测试发现,所有限制都解除了。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2022-10-3 20:57
抱歉,未能达到申请要求,申请不通过,可以关注论坛官方微信(吾爱破解论坛),等待开放注册通知。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 06:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表