当前位置: 首页 > news >正文

网站建设方案书2000字wordpress如何汉化版

网站建设方案书2000字,wordpress如何汉化版,头条广告入口,网站标题优化可以含几个关键词原文链接 前言 有自己机房的公司一般都有一套存储系统用于存储公司的图片、视频、音频、文件等数据#xff0c;常见的存储系统有以NAS、FASTDFS为代表的传统文件存储#xff0c;和以Minio为代表的对象存储系统#xff0c;随着云服务的兴起很多公司逐渐将数据迁移到以阿里云…原文链接 前言 有自己机房的公司一般都有一套存储系统用于存储公司的图片、视频、音频、文件等数据常见的存储系统有以NAS、FASTDFS为代表的传统文件存储和以Minio为代表的对象存储系统随着云服务的兴起很多公司逐渐将数据迁移到以阿里云OSS为代表的云对象存储OSS的好处是不但解决了数据的存储还自带的很多文件的处理功能如图片的缩放、打水印、裁剪等功能例如我们要获获取一张宽为200大小的图片只需要在原图后面增加?x-oss-processimage/resize,w_200这个参数就可以了处理图片确实非常方便。 https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-processimage/resize,w_200。 传统的NAS、FASTDFS只有存储功能没有文件处理能力的我们可以使用图片处理软件给它加上类似的图片处理功能。常用的图片处理软件有Imagemagick、GraphicsMagick、OpenCV对应的JAVA操作库为im4java、JMagick、Javacv。用上这些图片处理软件再配置NginxLua或者OpenResty就可以让你的传统NAS存储也也有像OSS一样的图片处理能力。 ImageMagick、GraphicsMagick的安装 ImageMagick官网下载 官网下载地址https://imagemagick.org/script/download.php 以windows为例下载ImageMagick-7.1.1-15-Q16-HDRI-x64-dll.exe 然后下一步、下一步安装就好了安装完成后输入magick -version检查是否安装成功 PS C:\Users\Administrator magick -version Version: ImageMagick 7.1.1-15 Q16-HDRI x64 a0a5f3d:20230730 https://imagemagick.org Copyright: (C) 1999 ImageMagick Studio LLC License: https://imagemagick.org/script/license.php Features: Cipher DPC HDRI Modules OpenCL OpenMP(2.0) Delegates (built-in): bzlib cairo flif freetype gslib heic jng jp2 jpeg jxl lcms lqr lzma openexr pangocairo png ps raqm raw rsvg tiff webp xml zip zlib Compiler: Visual Studio 2022 (193532217)GraphicsMagick官网下载 GraphicsMagick最初源于ImageMagick5.5.22002年11月但从那时起就完全独立于ImageMagick项目。自从ImageMagick的fork以来许多作者使用开放的开发模型进行了许多改进参见新闻但没有破坏API或实用程序操作。下载地址 http://www.graphicsmagick.org/download.html 安装完成后输出gm检测是否安装成功。 C:\Users\Administratorgm GraphicsMagick 1.3.40 2023-01-14 Q16 http://www.GraphicsMagick.org/ Copyright (C) 2002-2023 GraphicsMagick Group. Additional copyrights and licenses apply to this software. See http://www.GraphicsMagick.org/www/Copyright.html for details. Usage: gm command [options ...]JAVA操作 JAVA操作GraphicsMagick可以使用im4java 引入POM依赖im4java dependencygroupIdorg.im4java/groupIdartifactIdim4java/artifactIdversion1.4.0/version/dependencyim4java官网地址 https://im4java.sourceforge.net im4java源码地址im4java download | SourceForge.net JAVA操作ImageMagick可以使用JMagick,引入POM依赖 dependencygroupIdjmagick/groupIdartifactIdjmagick/artifactIdversion6.6.9/version /dependency JMagick官网地址www.jmagick.org JMagick源码地址JMagick download | SourceForge.net 图片信息获取 命令获取图片信息 magick identify .\1.jpg .\1.jpg PNG 1920x1080 1920x108000 8-bit sRGB 1.31707MiB 0.000u 0:00.000//格式化输出 magick identify -format %W,%H,%B,%f,%m .\1.jpg 1920,1080,1381050,1.jpg,PNG JAVA获取图片信息 Testpublic void info() throws IOException, InterruptedException, IM4JavaException {String iImageDir C:\\Users\\Administrator\\Desktop\\img\\1.jpg;IMOperation operation new IMOperation();//格式化输出//operation.format(%W,%H,%B,%f,%m);operation.addImage(iImageDir);IdentifyCmd indentity new IdentifyCmd();ArrayListOutputConsumer output new ArrayListOutputConsumer();indentity.setOutputConsumer(output);indentity.run(operation);ArrayListString cmdOutput output.getOutput();String line cmdOutput.get(0);System.out.println(line);//C:\Users\Administrator\Desktop\img\1.jpg PNG 1920x1080 1920x108000 8-bit sRGB 1.31707MiB 0.000u 0:00.000}注意事项 如果运行代码报org.im4java.core.CommandException: java.io.IOException: Cannot run program identify: CreateProcess error2, 系统找不到指定的文件。是因为刚安装软件系统没找到命令重启电脑后就可以解决。 可以使用-format %W,%H,%B,%f,%m来格式化图片信息的输出 具体的格式化参数有很多详细可以参考官方文档你想要的图片信息应该都是有的。https://imagemagick.org/script/escape.phps 图片缩放 命令图片缩放 magick .\1.jpg -resize 200x100 1_w200h100.jpg magick identify -format %W,%H,%B,%f,%m .\1_w200h100.jpg 输出: 178,100,8003,1_w200h100.jpg,JPEGJAVA图片缩放 Testpublic void resizeImg() throws IOException, InterruptedException, IM4JavaException {String srcImagePath C:\\Users\\Administrator\\Desktop\\img\\1.jpg;Integer width 200;Integer height 100;String newImagePath C:\\Users\\Administrator\\Desktop\\img\\1_w200h100.jpg;IMOperation op new IMOperation();op.addImage(srcImagePath);op.resize(width, height);op.addImage(newImagePath);ImageCommand convert new ConvertCmd();convert.run(op);}注意事项 这里我们使用 -resize 200x100 想生成一张200x100的图片结果输出图片是178x100,因为原始图片为1920x1080为了保持图片宽高比例做了等比例缩放防止图片变形。 图片打水印 命令图片打水印 magick composite -geometry 200x20010050 -gravity center .\avatar.png .\1.jpg 1_avater.jpgJAVA图片打水印 Testpublic void testaddImgWatermark() throws Exception {String srcImagePathD://img/1.jpg;String destImagePathD://img/1_avater.jpg;String waterImgPathD://img/avatar.png;IMOperation op new IMOperation();//水印大小op.geometry(1000,1000,1000,500);// 水印图片位置NorthWest, North, NorthEast, West, Center, East, SouthWest, South, SouthEastop.gravity(NorthEast);// 水印透明度op.dissolve(100);// 水印op.addImage(waterImgPath);// 原图op.addImage(srcImagePath);// 目标op.addImage(destImagePath);ImageCommand cmd new CompositeCmd();cmd.run(op);} 注意事项 -geometry 200x20010050 中的200x200是设置水印图片的大小,20050设置水印图片相对于gravity的位置 -gravity center是给定水印的相对原图的位置支持NorthWest, North, NorthEast, West, Center, East, SouthWest, South, SouthEast这个参数和阿里OSS加水印的也是一样的。 最终打出水印的效果如下 图片裁剪 命令图片裁剪 magick convert -gravity center .\1_avater.jpg -crop 200x20010050 1_cut.jpgJAVA图片裁剪 Testpublic void testCrop() throws Exception {String srcImagePathD://img//1.jpg;String destImagePathD://img/1_cut.jpg;IMOperation op new IMOperation();op.gravity(center);op.addImage(srcImagePath);op.crop( 200,200,100,50);op.addImage(destImagePath);ImageCommand cmd new ConvertCmd();cmd.run(op, srcImagePath, destImagePath);}最张裁剪效果 注意事项 -crop 200x20010050 结合 -gravity center刚好可以把我们打上的水印裁剪出来裁剪出的图片在左右两边还是有一点红色边框这个可能是计算有一两个像素误差。 图片加参数自动处理 有了以上的图片处理命令之后想要实现OSS ?x-oss-processimage/resize,w_200这样加参数处理图片可以使用NginxLua来实现集成了Lua模块的Nginx项目OpenResty 例如我们原始图片地址 http://127.0.0.1/img/1.jpg 自动缩放图片尺寸 http://127.0.0.1/img/1_400x400.jpg 下载安装 OpenResty - Download下载安装LUA Release Lua for Windows v5.1.5-52 Released · rjpcomputing/luaforwindows · GitHub Nginx配置引入Lua: http {lua_package_path D:\software\openresty\lualib\\?.lua;;;lua_package_cpath D:\software\openresty\lualib\\?.so;;; }Nginx配置文件中可以写成这样: location ~ /img/(\d)_(\d)x(\d).jpg$ {root D:/img;set $img_root D:/img/img;set $fileName ngx.arg[1];set $width ngx.arg[2];set $height ngx.arg[3];set $origin ${img_root}/${fileName}.jpg ;set $file ${img_root}/${fileName}_${width}x${height}.jpg;if (!-f $file) {rewrite_by_lua local command magick ..ngx.var.origin.. -resize ..ngx.var.width..x ..ngx.var.height.. ..ngx.var.file;os.execute(command);;}}当访问(http://127.0.0.1/img/1_400x400.jpg时可动态生成对应尺寸图片类似OSS的功能 生成的文件当然我们还可以使用LuaRedis缓存这里生成的文件如果有CDN还可以配置CDN缓存这些文件下次就可以从CDN缓存直接取对应尺寸的图片了减少服务器处理图片的性能消耗。很多大厂不将这种图片处理下沉到CDN边缘节点利用离用户最近CDN节点完成图片数据的处理减少数据回源从而减少中心服务器的性能消耗。 当然这个只是使用NginxLuaGraphicsMagick来实现简单的图片裁剪功能如果要实现阿里OSS图片处理要比这个复杂的多不仅要解决大量文件存储高可要和自动扩容问题还要解决高并发下图片裁剪的性能问题们只是通过这个案例了解图片自动缩放的基本原理原理看起来比较简单想要做的好而且还要给全国那么多企业用要保持高可用、高性能就比较有难度了。 总结 本文主要介绍了常用图片处理软件ImageMagick的使用并通过命令和JAVA代码演示图片信息的获取、缩放、打水印、裁剪功能在最后通过OpenRestyLua实现类似OSS的自动图片缩放功能。
http://www.zqtcl.cn/news/173357/

相关文章:

  • 内蒙古住房和城乡建设网站网站建设需要购买什么
  • 网站做调查问卷给钱的兼职南通营销网站制作
  • 开个微网站需要什么自己制作网页的步骤
  • 有专业做线切割配件的网站吗中国婚恋网站排名
  • 做ppt网站大全中国工程建设信息网站
  • 汉滨区住房和城乡建设局网站淘宝客购物网站的怎么做
  • 一个网站用多个域名分页网站
  • 门户网站举例phpstuy wordpress
  • 做网站许昌美业管理软件系统排名
  • 温州市建设工程质量安全管理总站贵阳最新消息今天
  • 成都服装网站建设工作是否能给我们带来快乐
  • 电商网站建设综述长沙高端网站建设
  • 网站建设有哪些环节怎么申请网址
  • 做网站要什么软件经典网站首页
  • 个人网站备案转公司备案长沙网站seo报价
  • 上海网站开发建设电话电影vip网站建设步骤
  • 17.zwd一起做网站池尾站邢台快用网络科技有限公司
  • 做写字楼租赁用什么网站好如何申请网站com域名
  • 如何查询网站服务商安徽省建设厅证件查询安全员c证
  • asp网站怎么安装程序员wordpress插件
  • 池州网站建设哪家好郑州seo网站管理
  • 我要建个人网站国外免备案虚拟主机
  • 自建站 外贸做旅游网约车的网站
  • 网站关键词优化排名软件东莞网站建设图表
  • 为企业设计网站微信开放平台的发展前景
  • 苏州高端做网站软件开发流程图例子
  • 开发区网站建设公司wordpress中文官网
  • 购物网站项目经验搭建网站流程
  • 网站建设企业蛋糕怎么做网站里导出没有水印的图
  • 享设计网做兼职设计师怎么样何鹏seo