C#缩放PDF文件
项目上有个功能需求:将原PDF进行缩放至原先的90%大小。
使用的是spire.pdf插件,但是官方文档上的缩放只是改变显示,最终文件其实没有缩放成功。遂找到了另外的方式进行重绘。
上代码:
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;Console.WriteLine("Hello, World!");
string pdfname = AppDomain.CurrentDomain.BaseDirectory + "test.pdf";
string pdfname_new = AppDomain.CurrentDomain.BaseDirectory + "new.pdf";
PdfDocument pdf = new PdfDocument(pdfname);
var newpd = new PdfDocument();
foreach (PdfPageBase pageBase in pdf.Pages)
{var pdfmarin = new PdfMargins(0);var newpage = newpd.Pages.Add(pageBase.ActualSize, pdfmarin);//0.9即为缩放至原先的0.9大小newpage.Canvas.DrawTemplate(pageBase.CreateTemplate(), new PointF(20, 20), new SizeF(pageBase.Size.Width * 0.9f, pageBase.Size.Height * 0.9f));
}
newpd.SaveToFile(pdfname_new);
Console.WriteLine("Down");
效果图
缩放前:

缩放90%后:

相关文章:
C#缩放PDF文件
项目上有个功能需求:将原PDF进行缩放至原先的90%大小。 使用的是spire.pdf插件,但是官方文档上的缩放只是改变显示,最终文件其实没有缩放成功。遂找到了另外的方式进行重绘。 上代码: using Spire.Pdf; using Spire.Pdf.Graphi…...
【Java面试八股文宝典之MySQL篇】备战2023 查缺补漏 你越早准备 越早成功!!!——Day20
大家好,我是陶然同学,软件工程大三即将实习。认识我的朋友们知道,我是科班出身,学的还行,但是对面试掌握不够,所以我将用这100多天更新Java面试题🙃🙃。 不敢苟同,相信大…...
Nsight System的安装和使用
本地安装 官方网站,需要登录 选择Windows Host下载安装 服务器安装 选择Linux CLI .deb下载,上传到服务器之后,执行以下命令,默认会安装在/opt/nvidia/nsight-systems-cli/2023.2.1/target-linux-x64/,nsys在/usr/lo…...
Spring销毁的几种实现
有这3种方法,但是程序执行完成并没有打印出来。一定要手动close.手动执行后会调用如下逻辑:org.springframework.context.support.AbstractApplicationContext#doCloseorg.springframework.context.support.AbstractApplicationContext#destroyBeansorg.…...
【 Spring 核⼼与设计思想 】
文章目录一、Spring 是什么1.1 什么是容器1.2 什么是 IoC二、开发案例对比2.1 传统程序开发2.2 控制反转式程序开发2.3 对⽐总结规律三、理解 Spring IoC四、DI 概念说明五、总结一、Spring 是什么 我们通常所说的 Spring 指的是 Spring Framework(Spring 框架&…...
Arrays.sort()——逆序
package utils;import java.util.*;class ComparatorInteger implements Comparator<Integer> {Override //使得逆序 o1比o2小,返回正数——需要调换位置public int compare(Integer o1, Integer o2) {return o1 < o2 ? 1 : -1;} }class Comparato…...
测试2年遇到瓶颈,如何跨过这个坎,实现涨薪5k?
最近和字节跳动的一个老朋友闲聊,感触颇深,据他说公司近期招聘的测试工程师,大多数候选人都有一个“通病”:在工作2-3年的时候遇到瓶颈,而且是一道很难跨越的坎。为什么会遇到这种情况?因为大部分测试工程师…...
骑行团队怎样才能健康运行?
随着生活水平的提高,自行车运动在国内逐渐被人们所接受,也有越来越多的人加入到骑行的行列中。特别是现在骑行团队的兴起,不仅带动了自行车运动的发展,也带动了整个自行车行业的发展。骑行队就是由一群志同道合的车友组成…...
动力节点王鹤SpringBoot3学习笔记——第四章 访问数据库
目录 第四章 访问数据库 4.1 DataSource 4.2 轻量的JdbcTemplate 4.2.1 准备环境 4.2.1.1 准备数据库和表脚本 4.2.1.2 创建Spring Boot工程 4.2.2 JdbcTemplate访问MySQL 4.2.3 NamedParameterJdbcTemplate 4.2.4 多表查询 4.3 MyBatis 4.3.1 单表CRUD 4.3…...
segno.helpers.make_mecard(Python)
制作名片二维码的,浅浅的mark一下参数的东西。 官方文档是这么写的: segno.helpers.make_mecard(name, readingNone, emailNone, phoneNone, videophoneNone, memoNone, nicknameNone, birthdayNone, urlNone, poboxNone, roomnoNone, housenoNone, ci…...
OBCP第八章 OB运维、监控与异常处理-日常运维操作
白屏: 集群、Zone、Observer 常用运维操作 常用运维操作 运维场景步骤时钟同步 OceanBase从Partition的多个副本中选出主对外提供服务。为避免Paxos的活锁问题,OceanBase 采用一种基于时钟的选举算法选主 检查 NTP 状态:运行 ntpstat 检查 N…...
springboot-gateway注册nacos失败,控制台没有报错
目录 前言现象描述前言 最近springboot的gateway注册到nacos上,没有注册成功 现象描述 我是在common里面引入了nacos的依赖,依赖如下: <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-confi…...
CLIP:语言-图像表示之间的桥梁
最近GPT4的火爆覆盖了一个新闻:midjourney v5发布,DALLE2,midjourney都可以从文本中生成图像,这种模型要求人工智能同时理解语言和图像数据。 传统的基于人工智能的模型很难同时理解语言和图像。因为自然语言处理和计算机视觉一直…...
failed: open /etc/resolv.conf: no such file or directory“ cause k8s init failed
kubeadm init报错 kubeadm init --config /etc/kubernetes/kubeadm.conf -v 4 --skip-phasesaddon/kube-proxyThis can take up to 4m0s", “[kubelet-check] Initial timeout of 40s passed.”, “”, “\tUnfortunately, an error has occurred:”, “\t\ttimed out wa…...
「科普」如何评价供应商的MES系统
随着制造业的数字化转型,MES系统作为生产信息化的重要组成部分,正在被越来越多的企业采用。然而,在选择供应商时,如何评价供应商的MES系统,成为了制造企业需要面对的一个难题。 首先,评价供应商的MES系统需…...
海康3D轮廓仪调试详细步骤
激光三角测量法 3D激光轮廓仪是基于激光三角测量法(laser triangulation)来重建三维场景。向被测物表面投射激光平面(光片,sheet of light) ,通过使用CMOS相机接收其反射光的变化,可以非接触方式测量高度、高度差、宽度等轮廓(截面…...
【Linux】PCB(进程控制块)
进程控制块PBC-描述进程号进程状态内存指针PBC-描述 我们知道,进程就是运行起来的代码,而操作系统就是通过对进程进行描述,然后将所有的进程使用双向链表串联到一起,实现对计算机软硬件资源的管理的。 那么,PCB到底是…...
风电的Weibull分布及光电的Beta分布组合研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
《Effective Objective-C 2.0 》 阅读笔记 item11
第11条:理解objc_msgSend的作用 1. 动态语言特性 在Objective-C中,如果向某对象传递消息,那就会使用动态绑定机制来决定需要调用的方法。在底层,所有方法都是普通的C语言函数,然而对象收到消息之后,究竟该…...
Python常见装饰器使用(实用向)
目录1.staticmethod2.classmethod3、classmethod 与staticmethod比较4. property5.abstractmethod6.wraps7.lru_cache8.timeout9.retrystaticmethod:将一个方法转换为静态方法,可以在不创建类实例的情况下调用。classmethod:将一个方法转换为…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...
tauri项目,如何在rust端读取电脑环境变量
如果想在前端通过调用来获取环境变量的值,可以通过标准的依赖: std::env::var(name).ok() 想在前端通过调用来获取,可以写一个command函数: #[tauri::command] pub fn get_env_var(name: String) -> Result<String, Stri…...
DBLP数据库是什么?
DBLP(Digital Bibliography & Library Project)Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高,数据库文献更新速度很快,很好地反映了国际计算机科学学术研…...
消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
Vue3中的computer和watch
computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...
从实验室到产业:IndexTTS 在六大核心场景的落地实践
一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...
