亚马逊紧急联系电话会关联吗/独立站优化

亚马逊紧急联系电话会关联吗,独立站优化,网站点击率如何做,什么网站可以找到防水工程做前言 ppt页面预览一直是个问题&#xff0c;office本身虽然有预览功能但是收费&#xff0c;一些开源的项目的预览又不太好用&#xff0c;例如开源的&#xff1a;kkfileview pptx转图片 1. 引入pom依赖 我这个项目比较老&#xff0c;使用版本较旧 <dependency><gro…

前言

ppt页面预览一直是个问题,office本身虽然有预览功能但是收费,一些开源的项目的预览又不太好用,例如开源的:kkfileview

pptx转图片

1. 引入pom依赖

我这个项目比较老,使用版本较旧

<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.15</version>
</dependency>
<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.15</version>
</dependency>

2. 核心方法

import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;public static final int IMG_SCALE = 2;//推荐使用整数
public static final String IMG_EXT = "png";public static void pptxToPng(InputStream pptFile,String imgPath){try (XMLSlideShow ppt = new XMLSlideShow(in)) {for(XSLFSlide slide : ppt.getSlides()) {writeImg(slideToImage(slide),imgPath);}}	
}public static BufferedImage slideToImage(XSLFSlide slide) {Dimension pgsize = slide.getSlideShow().getPageSize();BufferedImage img = new BufferedImage((pgsize.width+20)*IMG_SCALE, (pgsize.height+55)*IMG_SCALE, BufferedImage.TYPE_INT_ARGB);Graphics2D graphics = img.createGraphics();graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width+20, pgsize.height+55));//+20 +55 解决一些情况下内容溢出转图片被截断问题graphics.scale(IMG_SCALE, IMG_SCALE);graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);graphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);slide.draw(graphics);graphics.dispose();return img;
}
public static void writeImg(BufferedImage img,String filePath){String imgName = System.currentTimeMillis()+"."+IMG_EXT;File fileImg = new File(filePath+"/"+imgName);fileImg.mkdirs();ImageIO.write(img, IMG_EXT.toUpperCase(), fileImg);
}

通过IMG_SCALE提高图片分辨率,不设置图片不清晰

3. 中文乱码及字体

以上代码在windows环境没有任何问题,但在Linux下会有中文乱码,字体不对等问题,主要原因就是Linux系统里没有ppt内对应的字体,需要安装相应字体,ppt里用到的所有字体都需要安装,否则转换出来就会有字体问题;

3.1 字体

我准备了一个自己的字体库,包含了大部分字体,下载地址
https://gitee.com/suozq/linux-font.git
缺少什么字体可以到C:\Windows\Fonts目录下找

3.2 linux下安装字体(以centos7为例,其他类似)

一、复制zhFonts到/usr/share/fonts目录下;
在这里插入图片描述
二、在zhFonts目录下依次执行以下3个命令

mkfontscale
mkfontdir 
fc-cache -fv

三、重启java应用重新生成图片即可;

注意:ppt转图片时,当ppt中包含图片时,有些特殊的图片格式(例如:emf),是无法成功转换的,转换后,这些特殊格式的图片会缺失,因此ppt里使用图片需要谨慎,最好使用jpg,png这些主流格式;

另外:

kkfileview 它虽然实现了预览,对代码0侵入,但第一次预览时,它需要先下载再转换,才能预览,耗时不说,最关键有时候会转换失败,直接无法预览。时好时坏,而且文件一旦更新,还要想法让它重新下载进行转换,用户体验太差。还有一个关键,文件一般情况下都是受保护的系统资源,不会轻易让第三方下载,接口都是需要权限验证的,对外开放一个可随意下载文件的接口,即便是内网的也有一定安全隐患。
这个项目要想成功,必须做以下改进

  1. 提供后端API接口,该接口接收要预览的文件,并对文件进行转换,返回转换结果;
  2. 上述接口需要用户传递appName(应用)等辅助属性,用以生成文件唯一标识;
  3. 用户使用唯一标识进行文件预览;

这样可以在文件上传时,就进行转换,转换失败也可以提前知道;每次调接口必然是一次新的转换,没有缓存的问题。不对外提供任何无权限的全量文件下载接口,更安全。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/71581.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

零基础学python--------第三节:Python的流程控制语法

Python&#xff0c;浮点数 11.345(单&#xff1a;4个字节&#xff0c; 双&#xff1a;8个字节) 。 十进制的数字25 ---> 11001 讲一个小数转化为二进制&#xff1a; 不断的乘以2 。取整数部分。 十进制的0.625 ----> 二进制&#xff1a; 0&#xff0c; 101 。 0.3 ---…

骶骨神经

骶骨肿瘤手术后遗症是什么_39健康网_癌症 [健康之路]匠心仁术&#xff08;七&#xff09; 勇闯禁区 骶骨肿瘤切除术

DeepSeek智能测试知识库助手PRO版:多格式支持+性能优化

前言 测试工程师在管理测试资产时,需要面对多种文档格式、大量文件分类及知识库的构建任务。为了解决这些问题,我们升级了 DeepSeek智能测试知识库助手,不仅支持更多文档格式,还加入了 多线程并发处理 和 可扩展格式支持,大幅提升处理性能和灵活性。 主要功能亮点: 多格…

基于Python+Vue开发的反诈视频宣传管理系统源代码

项目简介 该项目是基于PythonVue开发的反诈视频宣传管理系统&#xff08;前后端分离&#xff09;&#xff0c;这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能&#xff0c;同时锻炼他们的项目设计与开发能力。通过学习基于Python的反…

StarRocks FE leader节点CPU使用率周期性的忽高忽低问题分析

背景 本文基于 StarRocks 3.3.5 最近在做一些 StarRocks 相关的指标监控的时候&#xff0c;看到了FE master的CPU使用率相对其他FE节点是比较高的&#xff0c;且 呈现周期性的变化&#xff08;周期为8分钟&#xff09;&#xff0c; 于此同时FE master节点的GC频率相对于其他节…

第37章 合作之路与占坑成功

在春寒料峭的时节&#xff0c;那丝丝寒意宛如一缕缕若有若无的轻烟&#xff0c;在空气中悄然弥漫。锐创所的会议室&#xff0c;宛如一个被岁月尘封的神秘空间&#xff0c;暖黄色的灯光晕染开来&#xff0c;像是为整个房间披上了一层朦胧的薄纱&#xff0c;陈旧却又带着几分温馨…

Rpc导读

手写Rpc框架 - 导读 git仓库-all-rpc GTIEE&#xff1a;https://gitee.com/quercus-sp204/all-rpc 【参考源码 yrpc】 1. Rpc概念 RPC 即远程过程调用&#xff08;Remote Procedure Call&#xff09; &#xff0c;就是通过网络从远程计算机程序上请求服务。 本地调用抽象&…

网络安全:防范NetBIOS漏洞的攻击

稍微懂点电脑知识的朋友都知道&#xff0c;NetBIOS 是计算机局域网领域流行的一种传输方式&#xff0c;但你是否还知道&#xff0c;对于连接互联网的机器来讲&#xff0c;NetBIOS是一大隐患。 漏洞描述 NetBIOS(Network Basic Input Output System&#xff0c;网络基本输入输…

使用代码与 AnythingLLM 交互的基本方法和示例

AnythingLLM 是一个基于大语言模型&#xff08;LLM&#xff09;的工具&#xff0c;主要用于构建和管理个人或企业知识库。虽然它主要提供图形化界面&#xff08;GUI&#xff09;进行操作&#xff0c;但也可以通过代码进行一些高级配置和集成。以下是使用代码与 AnythingLLM 交互…

用DeepSeek零基础预测《哪吒之魔童闹海》票房——从数据爬取到模型实战

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 **一、为什么要预测票房&#xff1f;****二、准备工作****三、实战步骤详解****Step 1&#xff1a;数据爬取与清洗&am…

如何将MySQL数据库迁移至阿里云

将 MySQL 数据库迁移至阿里云可以通过几种不同的方法&#xff0c;具体选择哪种方式取决于你的数据库大小、数据复杂性以及对迁移速度的需求。阿里云提供了多种迁移工具和服务&#xff0c;本文将为你介绍几种常见的方法。 方法一&#xff1a;使用 阿里云数据库迁移服务 (DTS) 阿…

Ubuntu22.04 - gflags的安装和使用

目录 gflags 介绍gflags 安装gflags 使用 gflags 介绍 gflags 是Google 开发的一个开源库&#xff0c;用于 C应用程序中命令行参数的声明、定义和解析。gflags 库提供了一种简单的方式来添加、解析和文档化命令行标志(flags),使得程序可以根据不同的运行时配置进行调整。 它具…

Fastgpt学习(5)- FastGPT 私有化部署问题解决

1.☺ 问题描述&#xff1a; Windows系统&#xff0c;本地私有化部署&#xff0c;postgresql数据库镜像日志持续报错" data directory “/var/lib/postgresql/data” has invalid permissions "&#xff0c;“ DETAIL: Permissions should be urwx (0700) or urwx,gr…

2026考研趋势深度解析:政策变化+高效工具指南

2026考研深度解析&#xff1a;趋势洞察高效工具指南&#xff0c;助你科学备战上岸 从政策变化到工具实战&#xff0c;这份千字攻略解决99%考生的核心焦虑 【热点引入&#xff1a;考研赛道进入“高难度模式”】 2025年全国硕士研究生报名人数突破520万&#xff0c;报录比预计扩…

娱乐使用,可以生成转账、图片、聊天等对话内容

软件介绍 今天要给大家介绍一款由吾爱大佬 lifeixue 开发的趣味软件。它的玩法超丰富&#xff0c;能够生成各式各样的角色&#xff0c;支持文字聊天、发红包、转账、发语音以及分享图片等多种互动形式&#xff0c;不过在分享前得着重提醒&#xff0c;此软件仅供娱乐&#xff0…

DeepSeek动画视频全攻略:从架构到本地部署

DeepSeek 本身并不直接生成动画视频,而是通过与一系列先进的 AI 工具和传统软件协作,完成动画视频的制作任务。这一独特的架构模式,使得 DeepSeek 在动画视频创作领域发挥着不可或缺的辅助作用。其核心流程主要包括脚本生成、画面设计、视频合成与后期处理这几个关键环节。 …

vsan数据恢复—vsan缓存盘故障导致虚拟磁盘文件丢失的数据恢复案例

vsan数据恢复环境&故障&#xff1a; VMware vsan架构采用21模式。每台设备只有一个磁盘组&#xff08;71&#xff09;&#xff0c;缓存盘的大小为240GB&#xff0c;容量盘的大小为1.2TB。 由于其中一台主机&#xff08;0号组设备&#xff09;的缓存盘出现故障&#xff0c;导…

开源在线考试系统开源在线考试系统:支持数学公式的前后端分离解决方案

开源在线考试系统&#xff1a;支持数学公式的前后端分离解决方案 项目介绍项目概述&#xff1a;技术栈&#xff1a;版本要求主要功能&#xff1a;特色亮点 项目仓库地址演示地址GiteeGitHub 系统效果展示教师端系统部分功能截图学生端系统部分功能截图 结语 项目介绍 项目概述…

redis解决高并发看门狗策略

当一个业务执行时间超过自己设定的锁释放时间&#xff0c;那么会导致有其他线程进入&#xff0c;从而抢到同一个票,所有需要使用看门狗策略&#xff0c;其实就是开一个守护线程&#xff0c;让守护线程去监控key&#xff0c;如果到时间了还未结束&#xff0c;就会将这个key重新s…

新数据结构(12)——代理

什么是代理 在进行操作时有时不希望用户直接接触到目标&#xff0c;这时需要使用代理让用户间接接触到目标 给目标对象提供一个代理对象&#xff0c;并且由代理对象控制着对目标对象的引用 图解&#xff1a; 代理的目的 控制访问&#xff1a;通过代理对象的方式间接的访问目…