using iTextSharp.text;
     using iTextSharp.text.pdf;      /// <summary>
/// 将IMAGE转为PDF后上传
/// </summary>
/// <param name="img"></param>
/// <param name="strUpLoadPdfPath"></param>
/// <param name="strNewFileName"></param>
/// <param name="imgFormat"></param>
public void uploadImageToPdf(System.Drawing.Image img, string strUpLoadPdfPath, ref string strNewFileName, System.Drawing.Imaging.ImageFormat imgFormat = null)
{
try
{
if (imgFormat == null)
{
imgFormat = System.Drawing.Imaging.ImageFormat.Jpeg;
}
//PDF存档路径
if (strUpLoadPdfPath.LastIndexOf(@"\") == strUpLoadPdfPath.Length - )
{
strUpLoadPdfPath = strUpLoadPdfPath.Substring(, strUpLoadPdfPath.Length - );
}
if (strNewFileName.Trim() == "")
{
strNewFileName = DateTime.Now.ToString("yyyyMMddHHmm");
}
strNewFileName = strUpLoadPdfPath + @"\" + strNewFileName;
if (!strNewFileName.ToLower().Contains(".pdf"))
{
strNewFileName += ".pdf";
} if (!Directory.Exists(strUpLoadPdfPath))
{
Directory.CreateDirectory(strUpLoadPdfPath);
} //定义pdf大小,设置上下左右边距
iTextSharp.text.Document doc = new iTextSharp.text.Document(iTextSharp.text.PageSize.A3, , , , );
//设置保存路径
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(strNewFileName, FileMode.Create)); //生成pdf路径,创建文件流
doc.Open();
//将图片写入PDF中
iTextSharp.text.Image imgSave = iTextSharp.text.Image.GetInstance(img, imgFormat);
imgSave.Alignment = iTextSharp.text.Image.ALIGN_MIDDLE;
imgSave.ScaleAbsolute(750f, 1150f);
doc.Add(imgSave);
//保存PDF文件
writer.Flush();
writer.CloseStream = true;
doc.Close();
}
catch (Exception ex)
{
throw ex;
}
}

将IMAGE转为PDF后上传的更多相关文章

  1. 简单的 Android 拍照并显示以及获取路径后上传

    简单的 Android 拍照并显示以及获取路径后上传 Activity 中的代码,我只贴出重要的事件部分代码 public void doPhoto(View view) { destoryBimap ...

  2. 使用ajax上传图片,支持图片即时浏览,支持js图片压缩后上传给服务器

    使用ajax上传图片,支持图片即时浏览,支持js图片压缩后上传给服务器 ajax上传主要使用了 var reader = new FileReader() 此方法 js图片压缩主要是利用canvas进 ...

  3. C# 防止content-type修改后上传恶意文件

    以图片为例子.在上传图片的时候,使用Fiddler抓取 通过js判断文件类型是不安全的,所以通过后台来判断,代码如下: ) { HttpPostedFile file0 = Request.Files ...

  4. pdf缩略图上传组件

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

  5. pdf缩略图上传控件

    一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...

  6. 阿里云 云解析使用方法/在阿里云ESC服务器解析域名并绑定服务器IP后上传文件通过域名访问步骤教程

    第一步:登录阿里云官网,获取服务器ECS的指定公网IP地址. 1.输入阿里云官网账号进入首页,如下图: 2.点击进入"管理控制台",如下图: 3.点击"云服务器ECS&q ...

  7. Swift开放StatsD后上传数据的出现,出现退换货503的Bug

    转载请注明出处:http://blog.csdn.net/cywosp/article/details/40781569 swift在版本号2.1.0之前假设各个服务的配置文件里打开下面配置后,且系统 ...

  8. 图片裁剪(cropper)后上传问题

    最近工作需要处理头像裁剪以及上传,研究了几天,写点心得,提醒自己记住踩过的坑,能帮助别人当然更好. 功能基本就是这样: 这里需要注意的是:拿到需求后,不要急于直接上手,花费半个小时,甚至更长时间缕清整 ...

  9. mui开发app之cropper裁剪后上传头像的实现

    在大多数app项目中,都需要对用户头像的上传,之前做web开发的时候,我主要是通过input type=file的标签实现的,上传后,使用php对图片进行裁剪,这种方式比较传统简单. 此次app开发中 ...

随机推荐

  1. CCF_ 201512-3_画图

    直接模拟就行了,注意坐标系方向与平常数组不一样,填充操作用深搜和广搜都可以,这里用了广搜. #include<iostream> #include<cstdio> #inclu ...

  2. 题解 bzoj3688【折线统计】

    考虑 \(dp\) . 首先把所有节点按 \(x\) 从小到大排序是很有必要的. 记 f[i][j][0] 表示满足以第 \(i\) 个节点做折线结尾,选取的点集 \(S\) 满足 \(f(S)=j\ ...

  3. Go语言实现:【剑指offer】二叉树中和为某一值的路径

    该题目来源于牛客网<剑指offer>专题. 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路 ...

  4. OpenCV3入门(九)图像几何变换

    1.图像缩放 假设图像x轴的缩放因子Sx, y轴方向的缩放因子Sy,相应的变换表达式为: 函数原型为: CV_EXPORTS_W void resize( InputArray src, Output ...

  5. 最近很火的namebase羊毛, 手把手教你怎么薅

    闲话少说直接说步骤: 1. 羊毛 https://www.namebase.io/airdrop 要求条件: 1) 要有github账号 2) 2019年2月之前有16+个follower 3) 要有 ...

  6. 排查 Kubernetes HPA 通过 Prometheus 获取不到 http_requests 指标的问题

    部署好了 kube-prometheus 与 k8s-prometheus-adapter (详见之前的博文 k8s 安装 prometheus 过程记录),使用下面的配置文件部署 HPA(Horiz ...

  7. Zookeeper 介绍 原理

    简介: ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务.       它Google的Chubby一个开源的实现,在分布式协调技术方面做得比较好的就是Google的Chubby还有 ...

  8. git rm -r --cached解决已提交的文件在.gitignore中加入忽略后无效的问题。

    有时候,发现有不该提交的文件已经提交后,仅仅在.gitignore中加入忽略是不行的.这个时候需要执行: git rm -r --cached 文件/文件夹名字 去掉已经托管的文件,然后重新提交: g ...

  9. 《自拍教程29》Sublime_小脚本编写首选

    Sublime Sublime 是一个轻量.简洁.高效.跨平台的编辑器, 最新的是Sublime Text 3. Sublime对Python支持非常好,如果只是简单的编写批处理脚本编写, 或者小范围 ...

  10. 仅需60秒,使用k3s创建一个多节点K8S集群!

    作者: Dawid Ziolkowski丨Container Solution云原生工程师 最近,我一直在Kubernetes上进行各种测试和部署.因此,我不得不一次又一次创建和销毁Kubernete ...