ptf转图片
1.spire
官方的有水印,通过引用
//private readonly static PdfDocument doc = new PdfDocument();
//public static Stream PtfToPng(string FileInfo)
//{
//byte[] by = Convert.FromBase64String(FileInfo);
//doc.LoadFromBytes(by);
//Image bmp = doc.SaveAsImage(0);//默认第一页
//return ImageToStream(bmp);
或者
//遍历PDF每一页
//for (int i = 0; i < doc.Pages.Count; i++)
//{
// //将PDF页转换成Bitmap图形
// Image bmp = doc.SaveAsImage(i);
// //将Bitmap图形保存为Png格式的图片
// string fileName = string.Format("Page-{0}.png", i + 1);
// bmp.Save(fileName, System.Drawing.Imaging.ImageFormat.Png);
//}
//}
2.
Install-Package PdfiumViewer -Version 2.13.0
Install-Package ImageResizer.Plugins.PdfiumRenderer.Pdfium.Dll -Version 1.0.1
/// <summary>
/// ptf转图片流
/// </summary>
/// FileInf base64string
/// <returns></returns>
public static Stream PtfToPng(string FileInfo)
{
byte[] by = Convert.FromBase64String(FileInfo);
Stream sm = new MemoryStream(by);
using (var document = PdfiumViewer.PdfDocument.Load(sm))
{
var size = document.PageSizes[];
Image ig = document.Render(, (int)size.Width, (int)size.Height, , , PdfiumViewer.PdfRenderFlags.Annotations);
return ImageToStream(ig);
}
} /// <summary>
/// 返回图片流
/// </summary>
public static Stream ImageToStream(Image img)
{
MemoryStream ms = new MemoryStream();
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
return ms;
}
3.aspose.ptf,最下方有方块,
private Stream ConvertToImage(Stream sm)
{
Document doc = new Document(sm);
if (doc == null)
Console.Write(doc);
MemoryStream stream = new MemoryStream();
Resolution reso = new Resolution();
JpegDevice jpegDevice = new JpegDevice(reso, );
jpegDevice.Process(doc.Pages[], stream);
return stream;
// //Image img = Image.FromStream(stream);
}
4.O2S.Components.PDFRender4NET
/// <summary>
/// 将PDF文档转换为图片的方法
/// </summary>
/// <param name="definition">设置图片的清晰度,数字越大越清晰(1-10)</param>
public static Stream ConvertPdfImage(string Base64, int definition)
{
byte[] by = Convert.FromBase64String(Base64);
Stream sm = new MemoryStream(by);
PDFFile pdfFile = PDFFile.Open(sm);
Bitmap pageImage = pdfFile.GetPageImage(, * definition);
pdfFile.Dispose();
return ImageToStream(pageImage);
} /// <summary>
/// 返回图片流
/// </summary>
public static Stream ImageToStream(Image img)
{
MemoryStream ms = new MemoryStream();
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
return ms;
}
无水印的O2S.Components.PDFRender4NET地址https://pan.baidu.com/s/1h8Zb4j4ofUnS4ZBoHJecHQ 码:cum8
ptf转图片的更多相关文章
- wpf 模拟3D效果(和手机浏览图片效果相似)(附源码)
原文 wpf 模拟3D效果(和手机浏览图片效果相似)(附源码) pf的3D是一个很有意思的东西,类似于ps的效果,类似于电影动画的效果,因为动画的效果,(对于3D基础的摄像机,光源,之类不介绍,对于依 ...
- webp图片实践之路
最近,我们在项目中实践了webp图片,并且抽离出了工具模块,整合到了项目的基础模板中.传闻IOS10也将要支持webp,那么使用webp带来的性能提升将更加明显.估计在不久的将来,webp会成为标配. ...
- CSS3 background-image背景图片相关介绍
这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...
- Asp.Net Mvc 使用WebUploader 多图片上传
来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是 ...
- Markdown 图片助手-MarkdownPicPicker
title: Markdown 图片助手 v0.1 toc: true comments: true date: 2016-06-04 16:40:06 tags: [Python, Markdown ...
- 图片访问实时处理的实现(nodejs和php)
我在访问时光网.网易云音乐等网站时,发现将它们页面中的一些图片URL修改一下就可以得到不同尺寸的图片,于是思考了其实现方案,我的思路是:URL Rewrite + 实时处理 + 缓存,对用户请求的UR ...
- nodejs进阶(4)—读取图片到页面
我们先实现从指定路径读取图片然后输出到页面的功能. 先准备一张图片imgs/dog.jpg. file.js里面继续添加readImg方法,在这里注意读写的时候都需要声明'binary'.(file. ...
- C#给PDF文档添加文本和图片页眉
页眉常用于显示文档的附加信息,我们可以在页眉中插入文本或者图形,例如,页码.日期.公司徽标.文档标题.文件名或作者名等等.那么我们如何以编程的方式添加页眉呢?今天,这篇文章向大家分享如何使用了免费组件 ...
- 【Machine Learning】KNN算法虹膜图片识别
K-近邻算法虹膜图片识别实战 作者:白宁超 2017年1月3日18:26:33 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
随机推荐
- Linux设备驱动程序 之 read和write
read和write原型 read和write方法完成的任务是相似的,亦即,拷贝数据到应用程序空间,或者反过来从应用程序空间拷贝数据:因此,它们的原型很相似,如下: ssize_t (*read) ( ...
- How to delete System Profiles for those registered with Red Hat Subscription Management (RHSM)?
Environment Red Hat Customer Portal Certificate Based Subscription Red Hat Subscription Management ( ...
- P3951 小凯的疑惑
P3951 小凯的疑惑 题解 题意也就是求解不能用 ax+by 表示的最大数 ans(a,b,x,y,都是正整数) 给定 a ( =7 ) , b ( =3 ) 我们可以把数轴非负半轴上的数按照a的 ...
- JavaScript中原型链存在的问题解析
我们知道使用原型链实现继承是一个goodway:)看个原型链继承的例子. function A () { this.abc = 44; } A.prototype.getAbc = function ...
- css滚动条美化
/*定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸*/ ::-webkit-scrollbar { width: 5px; height: 5px; background-color: #F5F5 ...
- easyUI之numberspinner数字微调框
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...
- hutool-all 包把实体Bean转化成字符串,以及把字符串转化成Bean对象
GxyJobEntity gxyJobEntity1 = new GxyJobEntity(); gxyJobEntity1.setUserId("user001"); gxyJo ...
- Hadoop、Hbase —— 服务启动、验证、停止
一.Hadoop 1.启动Hadoop cd /usr/local/hadoop-2.7.3/sbin ./start-dfs.sh 启动过程如下: 2.验证Hadoop是否启动成功 2.1.在主节 ...
- MongoDB集群-主从复制(副本集)、failover
1.概念 主从复制的目的:数据冗余.备份.读写分离 主从方式:一主一从(不推荐,只能实现复制,主节点挂掉且未重新启动的时候,无法提升从节点为master),一主一从一裁判,一主多从 复制方式:主节点记 ...
- Spark读取HDFS中的Zip文件
1. 任务背景 近日有个项目任务,要求读取压缩在Zip中的百科HTML文件,经分析发现,提供的Zip文件有如下特点(=>指代对应解决方案): (1) 压缩为分卷文件 => 只需将解压缩在同 ...