LEADTOOLS使用教程:调整整个图像文件夹的大小

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

查看LEADTOOLS详情

今天早上我收到了一个包含100多张各种演示截图的文件夹。我需要这些来更新我们的 站。不幸的是,它们中的大多数对于页面而言都太大了,需要调整大小。我快速创建了一个.NET Core控制台应用程序来为我修复图像大小。我编写代码,快速调整图像大小。代码如下,大家请享用吧!

using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;using System;using System.IO;namespace BatchResize_NetCore{   internal class Program   {      private static void Main(string[] args)      {         if (!SetLicense())            return;         // TODO: Change these as needed         const string filter = @"*.png";         const string sourceFolder = @"D:empeadme screenshots;         var directoryInfo = new DirectoryInfo(sourceFolder);         foreach (var file in directoryInfo.GetFiles(filter))         {            ShowMessage($"Processing {file.Name}");            ResizeImage(file.FullName);         }         ShowMessage("Processing complete.");      }      public static void ResizeImage(string sourcePath, string destinationPath = null)      {         const float max = 500f; // The max width or height         if (destinationPath == null) destinationPath = sourcePath;         LeadSize CalculateNewSize(RasterImage i)         {            var ratio = i.Width > i.Height nbsp;max / i.Width : max / i.Height;            return new LeadSize((int)(i.Width * ratio), (int)(i.Height * ratio));         }         using (var codecs = new RasterCodecs())         using (var image = codecs.Load(sourcePath))         {            // 9 is slower but results in small file size            // https://www.leadtools.com/help/leadtools/v20/dh/co/codecspngsaveoptions-qualityfactor.html            codecs.Options.Png.Save.QualityFactor = 9;            if (image.Width <= 500 && image.Height <= max)               return; // does not need to be resized            var newSize = CalculateNewSize(image);            new SizeCommand            {               Width = newSize.Width,               Height = newSize.Height,               Flags = RasterSizeFlags.Bicubic | RasterSizeFlags.ScaleToGray            }.Run(image);            codecs.Save(image, destinationPath, RasterImageFormat.Png, image.BitsPerPixel);         }      }      public static bool SetLicense()      {         try         {            // TODO: Replace these with the path to the LEADTOOLS license file            const string licenseFilePath = null;            var developerKey = null;            if (developerKey != null)               RasterSupport.SetLicense(licenseFilePath, developerKey);         }         catch (Exception ex)         {            Console.WriteLine(ex.Message);         }         return !RasterSupport.KernelExpired;      }      public static void ShowMessage(string message, bool error = false)      {         var origColor = Console.ForegroundColor;         Console.ForegroundColor = error nbsp;ConsoleColor.Red : ConsoleColor.Green;         Console.WriteLine(message);         Console.ForegroundColor = origColor;      }   }}

这些代码快速解决文件夹中图像的大小,节省那您的时间~

LEADTOOLS Document Imaging Developer Toolkit是多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。其主要功能包括综合图像注释,专业的黑白图像显示(例如灰度级和偏黑),以及专业的黑白图像处理。其它功能包括对黑白图像的性能和内存进行优化,文档图像清理(包括倒置文本,去边框)以及使用LEADTOOLS Fast TWAIN和WIA进行扫描。

试用版


想要购买该产品正版授权,或了解更多产品信息请点击“咨询在线客服”

1563778777.jpg

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月25日
下一篇 2019年7月25日

相关推荐

发表回复

登录后才能评论