本文整理汇总了Java中org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject类的典型用法代码示例。如果您正苦于以下问题:Java PDXObject类的具体用法?Java PDXObject怎么用?Java PDXObject使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PDXObject类属于org.apache.pdfbox.pdmodel.graphics.xobject包,在下文中一共展示了PDXObject类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: extractPatternImages
import org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject; //导入依赖的package包/类
public void extractPatternImages(PDPatternResources pattern, String patternFormat) throws IOException
{
COSDictionary resourcesDict = (COSDictionary) pattern.getCOSDictionary().getDictionaryObject(COSName.RESOURCES);
if (resourcesDict == null)
return;
PDResources resources = new PDResources(resourcesDict);
Map<String, PDXObject> xObjects = resources.getXObjects();
if (xObjects == null)
return;
for (Map.Entry<String, PDXObject> entry : xObjects.entrySet())
{
PDXObject xObject = entry.getValue();
String xObjectFormat = String.format(patternFormat, "-" + entry.getKey() + "%s", "%s");
if (xObject instanceof PDXObjectForm)
extractPatternImages((PDXObjectForm)xObject, xObjectFormat);
else if (xObject instanceof PDXObjectImage)
extractPatternImages((PDXObjectImage)xObject, xObjectFormat);
}
}
开发者ID:mkl-public,项目名称:testarea-pdfbox1,代码行数:21,代码来源:ExtractPatternImages.java
示例2: extractAnnotationImages
import org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject; //导入依赖的package包/类
public void extractAnnotationImages(PDAppearanceStream appearance, String appearanceFormat) throws IOException
{
PDResources resources = appearance.getResources();
if (resources == null)
return;
Map<String, PDXObject> xObjects = resources.getXObjects();
if (xObjects == null)
return;
for (Map.Entry<String, PDXObject> entry : xObjects.entrySet())
{
PDXObject xObject = entry.getValue();
String xObjectFormat = String.format(appearanceFormat, "-" + entry.getKey() + "%s", "%s");
if (xObject instanceof PDXObjectForm)
extractAnnotationImages((PDXObjectForm)xObject, xObjectFormat);
else if (xObject instanceof PDXObjectImage)
extractAnnotationImages((PDXObjectImage)xObject, xObjectFormat);
}
}
开发者ID:mkl-public,项目名称:testarea-pdfbox1,代码行数:20,代码来源:ExtractAnnotationImageTest.java
示例3: processResources
import org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject; //导入依赖的package包/类
/**
*
*
* @param resources
*
* @throws IOException
*/
private void processResources(PDResources resources, TikaImageHelper helper)
throws IOException {
if (resources == null)
return;
try {
Map<String, PDXObject> xobjects = resources.getXObjects();
if (xobjects != null) {
Iterator<String> xobjectIter = xobjects.keySet().iterator();
while (xobjectIter.hasNext()) {
String key = xobjectIter.next();
PDXObject xobject = xobjects.get(key);
// write the images
if (xobject instanceof PDXObjectImage) {
PDXObjectImage image = (PDXObjectImage) xobject;
if (ImageTools.imagePerPageRatioValid(imageCount++, pageCount)
&& ImageTools.imageSizeValid(image.getHeight(), image.getWidth())) {
BufferedImage buffImage = image.getRGBImage();
helper.addImage(buffImage);
}
}
// maybe there are more images embedded in a form object
else if (xobject instanceof PDXObjectForm) {
if (ImageTools.imagePerPageRatioValid(imageCount, pageCount)) {
PDXObjectForm xObjectForm = (PDXObjectForm) xobject;
PDResources formResources = xObjectForm.getResources();
processResources(formResources, helper);
}
}
}
}
} catch (Exception e) {
LOG.info("Shit happened", e);
}
}
开发者ID:kolbasa,项目名称:OCRaptor,代码行数:44,代码来源:PDF2XHTML.java
示例4: scanResources
import org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject; //导入依赖的package包/类
private void scanResources(final PDResources rList, final PDDocument doc)
throws FileNotFoundException, IOException {
Map<String, PDXObject> xObs = rList.getXObjects();
for(String k : xObs.keySet()) {
final PDXObject xObj = xObs.get(k);
if(xObj instanceof PDXObjectForm)
scanResources(((PDXObjectForm) xObj).getResources(), doc);
if(!(xObj instanceof PDXObjectImage))
continue;
PDXObjectImage img = (PDXObjectImage) xObj;
System.out.println("Compressing image: " + k);
final Iterator<ImageWriter> jpgWriters =
ImageIO.getImageWritersByFormatName("jpeg");
final ImageWriter jpgWriter = jpgWriters.next();
final ImageWriteParam iwp = jpgWriter.getDefaultWriteParam();
iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
iwp.setCompressionQuality(compQual);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
jpgWriter.setOutput(ImageIO.createImageOutputStream(baos));
jpgWriter.write(null,
new IIOImage(img.getRGBImage(), null, null), iwp);
ByteArrayInputStream bais =
new ByteArrayInputStream(baos.toByteArray());
PDJpeg jpg = new PDJpeg(doc, bais);
xObs.put(k, jpg);
}
rList.setXObjects(xObs);
}
开发者ID:bnanes,项目名称:shrink-pdf,代码行数:29,代码来源:ShrinkPDF.java
注:本文中的org.apache.pdfbox.pdmodel.graphics.xobject.PDXObject类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论