用java语言写的图片转换成pdf
主要介绍了三种图片压缩方法 保存下来 以后学习
参考http://download.csdn.net/download/u010118528/5212196
1 package com.word; 2 3 import java.io.FileNotFoundException; 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6 import android.annotation.SuppressLint; 7 import com.itextpdf.text.Document; 8 import com.itextpdf.text.DocumentException; 9 import com.itextpdf.text.Image; 10 import com.itextpdf.text.pdf.PdfWriter; 11 12 @SuppressLint("SdCardPath") 13 public class PhotoVerPdf { 14 15 public void t() 16 { 17 //创建一个文档对象 18 Document doc = new Document(); 19 try { 20 //定义输出文件的位置 21 PdfWriter.getInstance(doc, new FileOutputStream("/sdcard/myImage/test.pdf")); 22 //开启文档 23 doc.open(); 24 //设定字体 为的是支持中文 25 //BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); 26 // Font FontChinese = new Font(bfChinese, 12, Font.NORMAL); 27 //向文档中加入图片 28 for(int i=1;i<32;i++) 29 { 30 //取得图片~~~图片格式: 31 Image jpg1 = Image.getInstance("/sdcard/myImage/"+i+".jpg"); 32 //原来的图片的路径 33 //获得图片的高度 34 float heigth=jpg1.getHeight(); 35 float width=jpg1.getWidth(); 36 System.out.println("heigth"+i+"----"+heigth); 37 System.out.println("width"+i+"-----"+width); 38 //合理压缩,h>w,按w压缩,否则按w压缩 39 //int percent=getPercent(heigth, width); 40 //统一按照宽度压缩 41 int percent=getPercent2(heigth, width); 42 //设置图片居中显示 43 jpg1.setAlignment(Image.MIDDLE); 44 //直接设置图片的大小~~~~~~~第三种解决方案,按固定比例压缩 45 //jpg1.scaleAbsolute(210.0f, 297.0f); 46 //按百分比显示图片的比例 47 jpg1.scalePercent(percent);//表示是原来图像的比例; 48 //可设置图像高和宽的比例 49 //jpg1.scalePercent(50, 100); 50 doc.add(jpg1); 51 } 52 //关闭文档并释放资源 53 doc.close(); 54 } catch (FileNotFoundException e) { 55 e.printStackTrace(); 56 } catch (DocumentException e) { 57 e.printStackTrace(); 58 } catch (IOException e) { 59 e.printStackTrace(); 60 } 61 } 62 // /** 63 // * 第一种解决方案 64 // * 在不改变图片形状的同时,判断,如果h>w,则按h压缩,否则在w>h或w=h的情况下,按宽度压缩 65 // * @param h 66 // * @param w 67 // * @return 68 // */ 69 // 70 // public int getPercent(float h,float w) 71 // { 72 // int p=0; 73 // float p2=0.0f; 74 // if(h>w) 75 // { 76 // p2=297/h*100; 77 // } 78 // else 79 // { 80 // p2=210/w*100; 81 // } 82 // p=Math.round(p2); 83 // return p; 84 // } 85 /** 86 * 第二种解决方案,统一按照宽度压缩 87 * 这样来的效果是,所有图片的宽度是相等的,自我认为给客户的效果是最好的 88 * @param args 89 */ 90 public int getPercent2(float h,float w) 91 { 92 int p=0; 93 float p2=0.0f; 94 p2=530/w*100; 95 p=Math.round(p2); 96 return p; 97 } 98 // /** 99 // * 第三种解决方案,就是直接压缩,不安像素比例,全部压缩到固定值,如210*297 100 // * 101 // * @param args 102 // */ 103 // public static void main(String[] args) { 104 // PhotoVerPdf pt=new PhotoVerPdf(); 105 // pt.t(); 106 // } 107 }
相关推荐
在Android平台上将PDF文档转换为图像是一项常见的任务,特别是在...以上就是关于在Android中将PDF转换为图像的基本知识点和实现步骤。通过这些技术,开发者可以构建自己的PDF预览功能或者进行其他与PDF相关的图像处理。
本项目“android_HTML转PDF”提供了一个解决方案,它支持中文字符显示以及单独处理图片的功能。以下是对这个项目的详细解析: 1. **HTML与PDF的转换原理** HTML是一种标记语言,用于创建和展示网页内容,而PDF...
总之,Android图片转PDF的示例代码结合了Android的图像处理能力和PDF库的功能,实现了从用户选择的图片到PDF文件的转换,为Android开发者提供了便捷的工具。在学习和使用这类代码时,理解图片处理和PDF生成的原理是...
Android系统提供了多种方法来实现这个功能,这涉及到PDF处理库、图像处理技术和文件操作技术。下面我们将深入探讨这个主题。 1. **PDF处理库**: 在Android上,我们可以利用第三方库来处理PDF文件。例如,`PDFBox-...
在Android平台上,将HTML文本...总之,将HTML文本转换为PDF在Android平台上可以通过`WebView`的打印功能实现,也可以借助第三方库。在处理过程中需要注意字符编码、图片加载和性能优化等问题,以确保转换效果和效率。
综上所述,实现“安卓下jpg转pdf”功能涉及多个步骤,包括读取图片、处理图像、生成PDF、保存文件和可能的用户交互。通过使用适当的库和遵循Android最佳实践,可以创建一个高效且功能完整的应用。
- 使用`PdfRenderer`的`renderImageWithDpi`方法可以将PDF页面转换为`BufferedImage`,这个方法接受DPI(每英寸点数)作为参数,以控制图像的分辨率。 - `BufferedImage`是Java中的一个类,用于表示内存中的图像。...
6. **注意事项**:转换过程中需要注意的是,PDF转图片可能会导致质量损失,特别是当PDF包含矢量图形或高质量文本时。此外,处理大量页面可能消耗大量内存,因此在实际应用中可能需要考虑分批处理或优化内存使用。 ...
在实现"Word转Jpg"的过程中,通常会利用Windows API或第三方库来读取Word文档内容,并将其渲染为图像。对于PDF文档,可能需要使用专门的PDF解析库,如Ghostscript或iText,来获取页面内容并转换成图像。 在这个项目...
在Android开发中,有时我们需要生成包含复杂元素的PDF文件,比如添加图片作为页眉。`iText`是一个流行的Java库,适用于创建和编辑PDF文档,它同样适用于Android平台。在这个简单例子中,我们将探讨如何使用`iText`库...
9. 运行demo:提供的`itext图片转pdf的demo`可能是一个完整的Java程序,包含了上述步骤的实现。运行这个示例,可以直观地看到如何使用`iText`库生成高清PDF。 在实际应用中,可能还需要考虑其他因素,如图片的原始...
在Android平台上,开发一个能够加载PDF文件、实现电子签名并允许签名可拖拽的应用是一项具有挑战性的任务。本文将深入探讨这一技术实现的关键知识点,包括Android PDF处理、电子签名技术以及用户交互设计。 首先,...
Android提供了一些API来实现图片格式之间的转换,例如: - 使用`Bitmap.compress()`方法可以将`Bitmap`对象压缩为指定格式的字节流,从而实现格式转换。 - 可以利用`ImageIO`等Java标准库中的工具进行更复杂的格式...
不过,需要注意的是,这种方法可能不如原生的PDF库(如Android PDF Library)那样高效,尤其是在处理大型或复杂的PDF文件时。因此,在选择解决方案时,需要根据应用的具体需求和性能要求来权衡。
标题中的“poi将word、PPT、Excel转pdf实现在线预览的jar包”涉及到的是Apache POI库在Java开发中的应用,以及如何利用它来处理Microsoft Office文档并转换为PDF格式,以便进行在线预览。Apache POI是Java平台上用于...
8. **PDF输出**:生成PDF后,需要将其保存到Android设备的存储空间,可以是内部存储或者外部SD卡,并提供一个文件路径供用户访问或分享。Android的File和ContentProvider API可以帮助完成这个过程。 9. **权限管理*...
在Android开发中,将文本保存为PDF格式是一项常见的需求,特别是在文档处理或报告生成的应用...这两个步骤都需要对Android的图形系统和PDF处理有一定理解,通过熟练掌握相关API,我们可以实现高效且灵活的PDF生成功能。
在Android平台上实现PDF的翻页效果是一项常见的任务,特别是在开发阅读类应用时。这个话题涉及到多个技术点,包括PDF解析、动画渲染以及用户交互。以下是对这个主题的详细阐述: 1. **PDF解析**:首先,我们需要一...
开发者可以将图片插入PDF,调整大小和位置,实现图文混排。 4. **页面布局**:PDFlib 提供了灵活的页面布局功能,支持多列、分页、旋转、缩放等操作,帮助开发者实现复杂的文档布局设计。 5. **PDF标准兼容**:...
第1章 Android开发简介 1.1 Android基本概念 1.1.1 Android简介 1.1.2 Android的系统构架 1.1.3 Android应用程序框架 1.2 OMS介绍 1.2.1 OPhone介绍 1.2.2 Widget介绍 1.3 小结 第2章 Android开发环境搭建 2.1 ...