图片转换 (Image Conversion)
Foxit PDF SDK提供了PDF文件和图片之间进行转换的APIs. 应用程序可以轻松地实现图片创建和图片转换等功能,支持如下的图片格式:BMP、TIFF、PNG、JPX、JPEG和 GIF。通过Foxit PDF SDK,PDF文件和支持的图片格式 (除了GIF) 之间可以互相转换。Foxit PDF SDK只支持将GIF图片转换为PDF文件。
Example:
如何将PDF页面转换为位图文件
import com.foxit.sdk.common.Bitmap; import com.foxit.sdk.common.Image; import com.foxit.sdk.common.Renderer; import com.foxit.sdk.common.fxcrt.Matrix2D; import com.foxit.sdk.pdf.PDFDoc; import com.foxit.sdk.pdf.PDFPage; import static com.foxit.sdk.common.Bitmap.e_DIBArgb; import static com.foxit.sdk.pdf.PDFPage.e_ParsePageNormal; // Assuming PDFDoc doc has been loaded. ... Image image = new Image(); // Get page count int nPageCount = doc.getPageCount(); for (int i = 0; i < nPageCount; i++) { PDFPage page = doc.getPage(i); // Parse page. page.startParse(e_ParsePageNormal, null, false); int width = (int) page.getWidth(); int height = (int) page.getHeight(); Matrix2D matrix = page.getDisplayMatrix(0, 0, width, height, page.getRotation()); // Prepare a bitmap for rendering. Bitmap bitmap = new Bitmap(width, height, e_DIBArgb, null, 0); bitmap.fillRect(0xFFFFFFFF, null); // Render page. Renderer render = new Renderer(bitmap, false); render.startRender(page, matrix, null); image.addFrame(bitmap); } ...
如何将图片转换为PDF文件
import com.foxit.sdk.common.Image; import com.foxit.sdk.common.fxcrt.PointF; import com.foxit.sdk.pdf.PDFDoc; import com.foxit.sdk.pdf.PDFPage; import static com.foxit.sdk.pdf.PDFPage.e_ParsePageNormal; import static com.foxit.sdk.pdf.PDFPage.e_SaveFlagNoOriginal; Image image = new Image(input_file); int count = image.getFrameCount(); PDFDoc doc = new PDFDoc(); for (int i = 0; i < count; i++) { PDFPage page = doc.insertPage(i, PDFPage.e_SizeLetter); page.startParse(e_ParsePageNormal, null, false); // Add image to page. page.addImage(image, i, new PointF(0, 0), page.getWidth(), page.getHeight(), true); } doc.saveAs("convertedPDF.pdf", e_SaveFlagNoOriginal); ...