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

翻译|使用教程|编辑:莫成敏|2019-08-28 15:19:37.030|阅读 44 次

概述:本文主要介绍整个文件夹中的图像尺寸都太大了时,如何调整整个图像文件夹的大小。

相关链接:

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:∖temp∖readme 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 ? 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 ? ConsoleColor.Red : ConsoleColor.Green;
         Console.WriteLine(message);
         Console.ForegroundColor = origColor;
      }
   }}

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

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

点击下载试用版


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

扫描关注慧聚IT微信公众号,及时获取最新动态及最新资讯

1563778777.jpg




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

登录 慧都网发表评论


暂无评论...

为你推荐

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

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

LEADTOOLS Imaging Pro Developer Toolkit

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

LEADTOOLS Document Imaging Suite Developer Toolkit

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

LEADTOOLS Medical Imaging Developer Toolkit

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

LEADTOOLS Medical Imaging Suite Developer Toolkit

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

LEADTOOLS Multimedia Developer Toolkit

LEADTOOLS Multimedia SDK是一款功能强大的音频处理 / 视频处理控件,可创建具有专业水准的高品质的多媒体应用程序。

在线
客服
在线
QQ
电话
咨询
400-700-1020
购物车 反馈 返回
顶部
在线客服系统
live chat