彩票走势图

LEADTOOLS教程:检测并编辑MICR和CMC7字体以隐藏检查信息

翻译|使用教程|编辑:莫成敏|2019-09-04 15:09:07.023|阅读 382 次

概述:这篇文章将演示LEADTOOLS MICR SDK如何检查支票上的MICR字体,然后使用Annotations SDK对其进行编辑以隐藏私人财务信息。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

LEADTOOLS (Lead Technology)由Moe Daher and Rich Little创建于1990年,其总部设在北卡罗来纳州夏洛特。LEAD的建立是为了使Daher先生在数码图象与压缩技术领域的发明面向市场。在过去的发展历程中,LEAD以其在全世界主要国家中占有的市场领导地位,在数码图象开发工具领域中已成为既定的全球领导者。LEADTOOLS开发与发布的LEAD是屡获殊荣的开发工具包。

点击了解LEADTOOLS详情

很少有人喜欢共享他们的个人信息,我保证也没有人喜欢共享文件中的私人信息。每天都会在大公司之间发送财务文件的图像,例如支票。在任何可以上传到互联网并在几秒钟内被盗的世界中,您永远不会过于谨慎地保护个人信息。

个人信息的编辑,有时称为“清理”,是文档中文本的黑化或删除。它旨在允许在文档中选择性地公开信息,同时对文档的其他部分保密。当存储的信息被修改或删除时,部分或全部数据仍保留在存储器中。这可能是设计的意外,在设计中,底层存储机制仍然允许读取信息,尽管它在名义上是擦除的。这个问题的一般术语是“数据剩余”。在某些情况下,编校通常是指解决数据剩余问题。

这篇文章将演示LEADTOOLS MICR SDK如何检查支票上的MICR字体,然后使用Annotations SDK对其进行编辑以隐藏私人财务信息。

创建一个名为DetactRedact(string file)的方法。此方法将搜索给定目录中找到的每个文件,然后使用该方法检测是否找到磁墨水字符识别(MICR)区域MICRCodeDetectionCommand Class。如果找到MICR区域,它将编辑区域的坐标,使其隐藏在视图之外。

首先,设置AnnContainer。这个容器最终会覆盖支票上的私人信息。

// Initialize the rendering engine
AnnWinFormsRenderingEngine renderingEngine = new AnnWinFormsRenderingEngine();

string dir = Path.Combine(Path.GetDirectoryName(file), "Redacted");

// Check if directory exists, if not create it.
if (!Directory.Exists(dir))
    Directory.CreateDirectory(dir);

string outFile = Path.Combine(dir, Path.GetFileNameWithoutExtension(file) + "_redacted.tif");

// Get total pages found in image and look for MICR zone
int totalPages = codecs.GetTotalPages(file);
for (int i = 1; i <= totalPages; i++)
    using (RasterImage image = codecs.Load(file, i)){

}

接下来,添加代码以检测检查中发现的MICR区域和CMC7区域。此代码将从上面进入using语句。

MICRCodeDetectionCommand detectionCommand = new MICRCodeDetectionCommand();
detectionCommand.Run(image);
if (detectionCommand.MICRZone != LeadRect.Empty && detectionCommand.MICRZone.Width > 0 && detectionCommand.MICRZone.Height > 0)
{
    AnnRedactionObject redaction = new AnnRedactionObject
    {
        Rect = container.Mapper.RectToContainerCoordinates(detectionCommand.MICRZone.ToLeadRectD()),
        Fill = AnnSolidColorBrush.Create("Black")
    };
    container.Children.Add(redaction);
}
CMC7CodeDetectionCommand cmc7DetectionCommand = new CMC7CodeDetectionCommand();
cmc7DetectionCommand.Run(image);
if (cmc7DetectionCommand.CMC7Zone != LeadRect.Empty && cmc7DetectionCommand.CMC7Zone.Width > 0 && cmc7DetectionCommand.CMC7Zone.Height > 0)
{
    AnnRedactionObject redaction = new AnnRedactionObject
    {
        Rect = container.Mapper.RectToContainerCoordinates(cmc7DetectionCommand.CMC7Zone.ToLeadRectD()),
        Fill = AnnSolidColorBrush.Create("Black")
    };
    container.Children.Add(redaction);
}

最后,您需要将编校对象刻录到图像中,然后保存图像。以下代码将跟随using语句。

var img = renderingEngine.RenderOnImage(container, image.Clone());
codecs.Save(img, outFile, RasterImageFormat.TifJpeg411, 24, 1, 1, 1, CodecsSavePageMode.Append);

现在,如果查看输出文件夹,将会有一条覆盖CMC7 / MICR区域的黑色编辑条纹。刻录注释会更改图像中的像素数据,从而确保无法再检索已覆盖的信息。它不会在图像中创建另一个图层。

之前:

canadianchequesamplepar.png

之后:

canadianchequesamplepar_redacted.png


LEADTOOLS Imaging Pro Developer ToolkitLEADTOOLS Document Imaging Suite Developer ToolkitLEADTOOLS Medical Imaging Developer Toolkit是LEADTOOLS的产品,点击查看产品详情



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
LEADTOOLS Imaging Pro Developer Toolkit

20多年的老牌图像处理控件,支持TWAIN扫描、200多种图像效果、150多种图像格式…

LEADTOOLS Document Suite Developer Toolkit

LEADTOOLS Document Imaging Suite SDK是LEADTOOLS SDK中各种特点的精选组合,这套强大的工具利用了LEAD行业领先的图像处理技术来智能地识别文档的特征,而根据文档的特征可以识别扫描的或传真的任何类型的表格图像。

LEADTOOLS Document Imaging Developer Toolkit

多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。

LEADTOOLS Medical Developer Toolkit

LEADTOOLS Medical Imaging是一款医疗成像控件,包含了一些精心挑选的、经过优化的特性,可以满足医疗成像应用程序开发的特殊需要。

LEADTOOLS Medical Imaging Suite Developer Toolkit

LEADTOOLS Medical Imaging Suite帮您开发功能强大的PACS和医学成像应用程序

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP