精华内容
下载资源
问答
  • 需要生成pdf 的是由js动态生成的div块,有没有好的方法将这个div块的信息保存成pdf文件? 在网上试了两种方法。不能满足要求。 第一种:jsPdf插件先生成图片再生成pdf,效果不好,很模糊,不清晰。而且只能对可视区内...
  • 直接用iText创建pdf文件考虑到html中的表格等等要合并或者什么的太麻烦,就直接通过Html模板替换之后再转换PDF来的更简单。具体实现直接分享代码给大家,高手勿喷!哈哈! 1.html文件 body { font-family: ...

    话不多说了,由于最近有通过数据生成PDF的需求,所以做完后在这里记录分享一下。直接用iText创建pdf文件考虑到html中的表格等等要合并或者什么的太麻烦,就直接通过Html模板替换之后再转换PDF来的更简单。具体实现直接分享代码给大家,高手勿喷!哈哈!

    1.html文件

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <style>
    body {
    	font-family: SimSun;
    	font-size: 14px;
    }
    
    table {
    	border-collapse: collapse;
    	border: 1px solid #999;
    	border-width: 1px 0 0 1px;
    	width: 650px;
    	height: auto;
    }
    
    table th {
    	border: 1px solid #999;
    	border-width: 0 1px 1px 0;
    	padding: 2px;
    	height: 50px;
    	font-weight: bold;
    	font-size: 23px;
    }
    
    table td {
    	border: 1px solid #999;
    	border-width: 0 1px 1px 0;
    	padding: 2px;
    	height: 40px;
    }
    
    .hfont {
    	font-weight: bold;
    	font-size: 18px;
    }
    
    .cheight {
    	height: 320px;
    }
    
    .fheight {
    	height: 60px;
    }
    </style>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"></meta>
    </head>
    <body>
        <table>
        	<tr>
        		<th align="center" colspan="4">HTML模板替换并转换PDF文件</th>
        	</tr>
        	<tr>
        		<td class="hfont" width="20%" align="center" rowspan="4">基本信息</td>
        		<td align="left">姓名:###name###</td>
        	</tr>
        	<tr>
        		<td align="left">年龄:###age###</td>
        	</tr>
        	<tr>
        		<td align="left">性别:###sex###</td>
        	</tr>
        	<tr>
        		<td align="left">手机:###phone###</td>
        	</tr>
        </table>
      </body>
    </html>
    2.java工具类

    package com.shangmai.tobacco.util;
      
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.net.MalformedURLException;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.Map;
    
    import javax.servlet.http.HttpServletResponse;
    
    import org.xhtmlrenderer.pdf.ITextFontResolver;
    import org.xhtmlrenderer.pdf.ITextRenderer;
    
    import com.lowagie.text.DocumentException;
    import com.lowagie.text.pdf.BaseFont;
    import com.shangmai.tobacco.common.DateUtils;
    
    /**
     * Html模板替换并转PDF文件-下载PDF
     * @author cavancao
     * 2015-09-24
     */
    public class Html2PdfUtil{
    	private static final String FONTPATH = "C:/WINDOWS/Fonts/SIMSUN.TTC";//支持中文字体(放哪里都行)
    	/**
    	 * 定义各个模板内需要替换的参数
    	 */
    	// 通用表格导出
    	private static final String[] USER_PDF = { "name", "age", "sex", "phone" };
    	
    	/**
    	 * 通过参数获取对应的属性数组进行文本替换
    	 */
    	public static String[] findAttributes(String attributeKey) {
    		if (attributeKey.equals("USER_PDF")) {
    			return USER_PDF;
    		} else {
    			return new String[]{};
    		}
    	}
    	
    	/**
         * html转换pdf文件
         * 注:支持中文,目前iText只支持上面FONTPATH定义的这种字体,所以html文件中也需要用样式设置字体为:SimSun
         * htmlPath 需要转换的html源文件
         * pdfPath 转换后pdf文件存放地址
         */
    	public static String html2Pdf(String htmlPath, String pdfPath) {
    		try {
    			String url = new File(htmlPath).toURI().toURL().toString();
    			OutputStream output = new FileOutputStream(pdfPath);
    			ITextRenderer renderer = new ITextRenderer();
    			renderer.setDocument(url);
    			
    			//解决中文支持问题(html的中文必须用SimSun字体,Java只能支持这1种字体)
    			ITextFontResolver fontResolver = renderer.getFontResolver();
    			fontResolver.addFont(FONTPATH, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    			renderer.layout();
    			renderer.createPDF(output);
    			output.close();
    			//删除模板替换生成的新html文件
    			File htmlFile = new File(htmlPath);
    			if(htmlFile.exists()){
    				htmlFile.delete();
    			}
    			return pdfPath;
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    			return null;
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    			return null;
    		} catch (DocumentException e) {
    			e.printStackTrace();
    			return null;
    		} catch (IOException e) {
    			e.printStackTrace();
    			return null;
    		}
    	}
    	
    	/**
    	 * 通过html模板替换特定字符生成新的html文件
    	 * @param htmlPath html文件地址
    	 * @param targetPath 替换模板生成新html的存放地址
    	 * @param data 替换的数据
    	 * @param attributeKey 获取替换文本列表的数组标识
    	 * @return
    	 */
    	public static String createHtml(String htmlPath, String targetPath,
    			Map<String, String> data, String attributeKey) {
    
    		StringBuffer sb = new StringBuffer();
    		BufferedReader br = null;
    		try {
    			// 读取html文件模板内容
    			br = new BufferedReader(new InputStreamReader(new FileInputStream(
    					new File(htmlPath)), "UTF-8"));
    			String temp = "";
    			while (null != (temp = br.readLine())) {
    				sb.append(temp);
    			}
    			String htmlContext = sb.toString();
    			// 替换html模板内的指定字符
    			for (String attribute : findAttributes(attributeKey)) {
    				htmlContext = htmlContext.replaceAll("###" + attribute + "###",
    						data.get(attribute));
    			}
    			// 写入新的html文件
    			targetPath = targetPath + DateUtils.formatDate(new Date(), "yyyyMMddHHmmsss") + ".html";
    			BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
    					new FileOutputStream(new File(targetPath)), "UTF-8"));
    			bw.write(htmlContext);
    			bw.flush();
    			bw.close();
    			return targetPath;
    		} catch (Exception e) {
    			e.printStackTrace();
    			return null;
    		}
    	}
    
    	/**
    	 * 文件下载-支持中文名称
    	 * @param sourcePath下载文件全路径(D:/test.pdf)
    	 * @param fileName需要生成的下载文件名(HTML转PDF测试.pdf)
    	 * @param response
    	 */
    	public static void downloadFile(String sourcePath, String fileName,
    			HttpServletResponse response) {
    		// 读到流中
    		InputStream inStream = null;
    		try {
    			inStream = new FileInputStream(sourcePath);// 文件的存放路径
    			// 设置输出的格式
    			response.reset();
    			String name = new String((fileName));
    			response.addHeader("Content-Disposition", "attachment; filename=\""
    					+ toUtf8String(name) + "\"");
    			// 循环取出流中的数据
    			byte[] b = new byte[100];
    			int len;
    			
    			while ((len = inStream.read(b)) > 0) {
    				response.getOutputStream().write(b, 0, len);
    			}
    			response.getOutputStream().flush();
    		} catch (IOException e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				inStream.close();
    				response.getOutputStream().close();
    				//删除源文件
    				File sourceFile = new File(sourcePath);
    				if(sourceFile.exists()){
    					sourceFile.delete();
    				}
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    		}
    	}
    
    	/**
    	 * 下载中文名文件进行编码转换
    	 */
    	public static String toUtf8String(String s) {
    		StringBuffer sb = new StringBuffer();
    		for (int i = 0; i < s.length(); i++) {
    			char c = s.charAt(i);
    			if (c >= 0 && c <= 255) {
    				sb.append(c);
    			} else {
    				byte[] b;
    				try {
    					b = Character.toString(c).getBytes("utf-8");
    				} catch (Exception ex) {
    					b = new byte[0];
    				}
    				for (int j = 0; j < b.length; j++) {
    					int k = b[j];
    					if (k < 0)
    						k += 256;
    					sb.append("%" + Integer.toHexString(k).toUpperCase());
    				}
    			}
    		}
    		return sb.toString();
    	}
    	
    	public static void main(String[] args){
    		//map中put的key要和上面定义的USER_PDF数组一致
    		Map<String,String> data = new HashMap<String,String>();
    		//在html文件中必须为###name###才会被map中的name替换
    		data.put("name", "王小二");
    		data.put("age", "20");
    		data.put("sex", "男");
    		data.put("phone", "13800000000");
    		String html = createHtml("D:/test.html", "D:/", data, "USER_PDF");
    		String pdf = html2Pdf(html, "D:/"+DateUtils.formatDate(new Date(), "yyyyMMddHHmmsss")+".pdf");
    		
    		//如果在控制类有response对象可以直接转换后的pdf文件,在控制类方法需要return null
    		//downloadFile(pdf, "我的PDF文件.pdf", response);
    		//return null;
    		
    		System.out.println("create html success! 文件存放路径:" + pdf);
    	}
    }

    3.相关支持文件(自行下载吧,我竟然不会上传!第1次写博客):2个jar包;1个中文字体

    iText-2.0.8.jar.jar

    core-renderer.jar.jar


    simsun.ttc 宋体(如果电脑里没有就去下载一个)

    展开全文
  • 如果有上百页的PDF文件想要转换成Word文档怎么办呢?不要急,小编这就给大家分享100页的PDF秒变Word文档的方法,微信的这个免费功能赶紧用起来。 使用工具: 迅捷PDF转换(打开微信→小程序→搜索“迅捷PDF转换”...

    可以将PDF转换成Word格式的工具有很多,比如PC软件、在线网站等等。但是使用起来大多都有限制。

    如果有上百页的PDF文件想要转换成Word文档怎么办呢?不要急,小编这就给大家分享100页的PDF秒变Word文档的方法,微信的这个免费功能赶紧用起来。

    使用工具:

    迅捷PDF转换(打开微信→小程序→搜索“迅捷PDF转换”即可找到)

    使用方法:

    1、进入小程序后,点击【上传本地文件】按钮,选择要转换的文件;

    100页的PDF秒变Word文档,微信这个免费功能太好用了!

     

    这里用的文件为:【作文自选素材汇总】,总共129页。

    100页的PDF秒变Word文档,微信这个免费功能太好用了!

     

    2、文件处理分为两部分:

    ①上传文件,选择好文件后,即开始上传;

    ②转换文件,文件上传完成之后,点击开始转换即可开始转换。

    100页的PDF秒变Word文档,微信这个免费功能太好用了!

     

    3、文件转换完成之后,点击【查看文档】按钮,即可查看转换好的文档。(点击小程序主页的“转换完成的文档”可查看所有转换好的文档)

    100页的PDF秒变Word文档,微信这个免费功能太好用了!

     

    以上就是今天分享给大家使用微信将PDF秒变Word文档的方法啦,小伙伴们可以去试试哦。

    展开全文
  • 目录前言PDF文件导出通过生成的word文件生成pdf 前言 前段时间在项目中遇到了导出pdf的问题,之前在项目中遇到导出文件莫非就是excle或者是word文件的导出,所以在遇到需要导出pdf文件时,我搜索了许多的网页内容,...

    前言

    前段时间在项目中遇到了导出pdf的问题,之前在项目中遇到导出文件莫不是excle或者word文件的导出,所以在遇到需要导出pdf文件时,我搜索了许多的网页内容,但是很多网页给出的答案也不是正解,走了许多的歪路后才最终实现了pdf文件的导出,下面提供的pdf文件导出希望能帮助到你

    PDF文件导出

    word文件转换pdf文件

    通过使用word转换pdf的方式实现pdf文件的导出,因为项目在需求前是要求导出word文件的,然后客户方要求导出为pdf文件,所以在此基础上我使用的是用word文件转换pdf。

    1. 第一步 :通过freemaker模板导出word文件
    2. 导入doc4j的jar包
      <dependency>
             <groupId>org.docx4j</groupId>
             <artifactId>docx4j</artifactId>
             <version>3.2.1</version>
      </dependency>
      
    3. java代码
      	/**
       *  根据ftl模板导出word文件
       * @param wordPath word文件存放路径
       * @param pdfPath 导出pdf文件存放路径
       * */
      public static void exportPdfForDoc4j(String wordPath,String pdfPath){
      
          InputStream is = null;
      
          OutputStream target=null;
      
          try {
      
              is=new FileInputStream(new File(wordPath));
      
              target=new FileOutputStream(new File(pdfPath));
      
              WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(is);
              //设置字体
              Mapper fontMapper = new IdentityPlusMapper();
      		/**
      			*你的模板中使用了什么字体,需要往项目中放入字体格式文件,
      			*没设置时可能在windows上不会出现问题,但是linux上没有该
      			*字体的话就会使用其默认字体。
      			**/
              URL fontUrl=ExportPdfUtils.class.getResource("/font/FangSong_GB2312.ttf");
      
              PhysicalFonts.addPhysicalFont("FangSong_GB2312",fontUrl);
      
              fontMapper.put("仿宋_GB2312",PhysicalFonts.get("FangSong_GB2312"));
      
              FOSettings foSettings = Docx4J.createFOSettings();
      
              foSettings.setWmlPackage(wordMLPackage);
      
              List<SectionWrapper> sections = wordMLPackage.getDocumentModel().getSections();
              //去掉页脚
              for (SectionWrapper section : sections) {
      
                  FooterPart footerPart = section.getHeaderFooterPolicy().getDefaultFooter();
      
                  if(footerPart!=null){
      
                      List<Object> content = footerPart.getContent();
      
                      for (int i = 0; i < content.size(); i++) {
      
                          footerPart.getContent().remove(i);
      
                      }
      
                  }
      
              }
      
              Docx4J.toFO(foSettings, target, Docx4J.FLAG_EXPORT_PREFER_XSL);
      
          } catch (Exception e) {  e.printStackTrace();
      
          }finally {
      
              try {
      
                  if(is!=null) is.close();
      
                  if(target!=null) target.close();
      
              }catch (IOException e){  e.printStackTrace(); }
      
          }
      
      }
      
    4. 以上就是通过word文件转换pdf的过程,但是转换的pdf的格式等可能会出现错乱等问题,所以以下是一些问题的解决
      在这里插入图片描述
      • 换行问题:首先看到的是身份证号码过长而没有换行行,但是word中格式确实是换行了的,所以我能找到的办法就是数据中强制的换行,值的注意的是换行符一定要拼接上去否则换行符无效:
        在这里插入图片描述

      • 边框变粗:这个问题也是转换pdf遇到的最大的问题,但是我没有找到具体的解决方案,只能通过加粗整体边框线来使这少许的加粗看起来不明显(加粗后的打印不会有边框变粗的问题),这里你可以通过全局替换w:sz="x"来加粗或变细你的边框,转换比例为:1磅==4,
        在这里插入图片描述

      • 空格被省略:我们看到年月日中应该出现的样子是如下图展示的一样,但是在pdf转换后年月日位置更换不说,中间的空格也被缩减了;所以在做模板时要使用全角的输入法进行空格的输入,这样在导出pdf时就不会对空格进行缩减。
        在这里插入图片描述

      • 以上问题解决后导出pdf概览:
        在这里插入图片描述

    展开全文
  • 使用 cajViewer 将 caj文件 转换 pdf文件

    千次阅读 2020-03-01 09:22:21
    怎么把caj文件转换pdf文件?只需借助cajViewer 文科研友在家写论文说她哪儿无法下载cajViewer,刚好她想下载的论文,知网只提供caj方式下载。因此帮她转pdf : 使用cajViewer 打开要转换的caj文件 选择【文件...

    怎么把caj文件转换成pdf文件?只需借助cajViewer

    文科研友在家写论文说她哪儿无法下载cajViewer,刚好她想下载的论文,知网只提供caj方式下载。因此帮她转pdf :

     

    使用cajViewer 打开要转换的caj文件

    选择【文件】->【打印】

    选择打印机名称:Microsoft Print to PDF 

    有需要其他设置就改动一下参数,不然直接点击打印就可以了,会自动打印整个文件

    接下来会弹出一个打印存放的地方:选择想要保存的地方,文件名自己输入一下

    选择好后就开始打印了

    之后就可以在保存的地方看到文件了(文件名我随便打了的)

    展开全文
  • 相信大家都有Word转pdf的需求,但是转换方法那么多,哪个方法最快速方便呢? 接下来小编就推荐三个方法仅供大家使用,绝对又快又方便的哟! 一、虚拟打印机生成pdf文档 如今pdf虚拟打印机也是一款新型的pdf转换...
  • ImageMagick(1) 转换PDF文件至图像

    千次阅读 2019-05-26 10:43:17
    OS: Win10,Linux 相关软件: (1)cmder(WIndows使用) (2)ghostscript(转换PDF需要调用,WIndows好像不需要,...本文实现使用ImageMagick中的convert命令将PDF文件转换为图像文件(png,jpg等),需要掌握...
  • 方正书版PS文件转换PDF文件TXT文件PHP源程序,在借调到“学习实践科学发展观活动办公室”工作时,为工作需要所编写的。
  • xpdf转换pdf文件

    千次阅读 2012-12-18 17:22:29
    // 参数2为true则表示使用PDF文件中的布局 public void toTextFile(String targetfile, boolean isLayout) throws IOException { String[] cmd = getCmd(new File(targetfile), isLayout); for(String cdms :...
  • 我们在CAD制图工作中常常会遇到各种各样不同的问题。其中就有将CAD图纸转换成PDF格式失败,打开后内容是空白的。...2.借助XUN JIECAD转换器,软件兼容CAD各 种版本的相互转换,同时支持CAD转PDF、JPG等多种文件格...
  • Javascript把excel文件转换pdf文件

    千次阅读 2012-05-21 16:30:53
    exWBook.SaveAs("D:\\11.pdf", FileFormat );//此地不知道怎么设置, FileFormat 不知道怎么设置 //exWSheet.Close(); //exApp.Close(); exApp.Quit(); exApp = null; CollectGarbage();//调用此方法...
  • 目前,项目中有个需求,针对票据中pdf文字进行转换图片,进行前端展示。百度、谷歌一大堆ICEpdf 版本,几乎都是乱码,文字不识别而告终。在此笔记。当时脑子不过弯,老是觉得最新版本ICEpdf 6.2.1 ,ICEpdf 6.2.2 ,...
  • 这些文件主要有三种类型,分别为PDF,word(.doc和.docx),我决定把他们全部变为PDF文件,然后再合并所有的pdf文件为一个PDF文件,分两个步骤完成! 1.把所有word转化为PDF from win32com.client import Dispatch ...
  • java 实现word文件转pdf文件

    千次阅读 2018-06-15 12:30:53
    这篇文章一共有三种方式实现word文件转pdf文件:1、jacob 仅支持windows下转换,需要下载jacob-1.14.3-x64.dll 插件2、OpenOffice 支持windows和linux,需要下载openffice一、通过jacob方式*只能在windows环境下...
  • 近期项目呢遇到需要word转pdf文档,找了好多办法都不行 最终找到这个办法 使用aspose进行word转pdf文件 这个办法很简单只需要简单的两行代码就可以完成 从Maven下载 通过向build.gradle添加以下配置, 您可以直接从...
  • Java doc或docx转pdf文件预览

    千次阅读 2020-11-30 17:24:53
    Java doc或docx转pdf文件预览 1.获取doc或docx文件路径,判断文件是否存在,然后新生成一个pdf文件。 2.写入文件流,转成pdf文件。 注:需要添加一个maven依赖,aspose-words-15.8.0-jdk16.jar包 代码如下 public ...
  • 之前有个客户需要把一些html页面生成pdf文件,然后我就找一些用php把html页面围成pdf文件的类。... pdflib,FPDF这两个方法是需要编写程序去生成pdf的,就...html2pdf这个虽然可以把html页面转换pdf文件,但是它只能转换
  • java 使用itextpdf工具实现HTML转PDF文件

    千次阅读 2019-03-21 16:50:38
    java实现HTML转PDF文件 本文转载https://my.oschina.net/960823/blog/1588166内容 maven依赖包 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf<...
  • PDF技术(三)-Java实现图片转PDF文件

    千次阅读 2018-10-10 16:49:21
    图片转pdf文件同样采用itext,将图片加入即可 1)使用IText转换 原理: 使用IText创建pdf,添加图片。 优点: 速度快。 具体实现 public class Image2PDF { /*** @param picturePath 图片地址*/ private ...
  • 这里word批量转word批量转pdf文件快捷方法。 最近在工作中因为要遇到大量的Word文件转化为PDF文件来实现平台的迁移。但是由于文件太多,手动很费力,想到了用代码的方式: 复制下面的代码,保存的记事本,另存为vbs...
  • Java实现图片转换PDF文件

    千次阅读 多人点赞 2020-08-25 20:32:39
    最近因为一些事情,需要将一张简单的图片转换PDF文件格式,在网上找了一些工具,但是这些工具不是需要注册账号,就是需要下载软件。 而对于只是转换一张图片的情况下,这些操作显然是非常繁琐的,所以作者就直接...
  • 解决转pdf文件过大的问题一、问题产生:使用jspdf转换html到pdf清晰度不够二、问题解决:在jspdf.debug.js源代码中下载部分集成zip.js 一、问题产生:使用jspdf转换html到pdf清晰度不够 本人使用jspdf+html2canvas ...
  • docx文档转pdf文件

    千次阅读 2018-01-26 12:41:00
    注:这里只能转换docx文件,doc不行,源码在文末。 可以在windows,linux上运行,增加了内容替换功能,因为有些文档内容需要我们用代码来动态生成。 下面是具体操作步骤: maven依赖 dependency> groupId...
  • java URL转PDF文件

    千次阅读 2016-03-22 21:55:41
    1、java将URL网页博客转化为pdf文件 2、测试博客网页地址为:http://blog.csdn.net/u014520797/article/details/50944998 3、测试结果为 4、工程代码结构为: 5、部分代码展示:...
  • 如何旋转PDF文件中的某一个页面

    千次阅读 2017-03-08 18:11:56
    在浏览查看PDF文件的时候,如果发现有页面方向错误,可以直接在PDF阅读器中进行旋转,但是大家肯定也都发现了,在阅读器中旋转页面是对所有页面进行旋转的,而且不能保存旋转的结果,下次打开文档时还是原来那样。...
  • pandoc转pdf文件用的latex模板介绍(Linux环境) 关于pandoc工具使用latex模板将md文件转pdf文件还是有很长路要走的,如果执着于用它来做精美排版啥的那就是长路漫漫! 本篇主要讲pandoc使用的latex模板以及使用...
  • 就是openOffice的docx文件转pdf文件的时候需要jodconverter-2.2.2.jar的架包, 然而maven是只有2.2.1版本的maven依赖; 这个时候就很尴尬了,又不想把jar放到文件目录下去build path,感觉太low了; 然后在网上找了...
  • 那么我们该怎么把Word文档转换PDF文件呢?小编总结了两个比较实用的方法,希望大家喜欢哟! 一、添加PDF虚拟打印机生成PDF 可能更多小伙伴喜欢直接在Word中转换PDF文件,可以告诉大家的是,如今Word 2010版已经...
  • 之前有个客户需要把一些html页面生成pdf文件,然后我就找一些用php把html页面围成pdf文件的类。方法是可谓是找了很多很多,什么html2pdf,pdflib,FPDF这些都试过了,但是都没有达到我要的求。 pdflib,FPDF 这两个...
  • pandoc是一个软件,是一个能把千奇百怪的文档格式互相转换的神器,是一把文档转换的瑞士军刀(swiss-army knife)。不多说,放一张其官网(http://www.pandoc.org)的图,一图胜千言,感受一下: 点击查看图片 下载...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 148,481
精华内容 59,392
关键字:

怎么转换pdf文件