使用pdfclown提取矢量图形(线和点)

时间:2015-06-03 17:00:27

标签: vector graphics pdfclown

我想用pdfclown从pdf中提取矢量图形(线条和点)。我试图绕过图形样本,但我无法弄清楚对象模型是如何工作的。请问任何人可以解释这些关系吗?

1 个答案:

答案 0 :(得分:0)

你是对的:直到PDF Clown 0.1系列,没有实现高级路径建模(它可能来自ContentScanner.GraphicsWrapper)。

下一个版本0.2 series,将于下个月发布)将支持所有图形内容的高级表示,包括路径对象(PathElement),通过新的ContentModeller。这是一个例子:

import org.pdfclown.documents.contents.elements.ContentModeller;
import org.pdfclown.documents.contents.elements.GraphicsElement;
import org.pdfclown.documents.contents.elements.PathElement;
import org.pdfclown.documents.contents.objects.Path;

import java.awt.geom.GeneralPath;

for(GraphicsElement<?> element : ContentModeller.model(page, Path.class))
{
  PathElement pathElement = (PathElement)element;
  List<ContentMarker> markers = pathElement.getMarkers();
  pathElement.getBox();
  GeneralPath getPath = pathElement.getPath();
  pathElement.isFilled();
  pathElement.isStroked();
}

与此同时,您可以按照ContentScanningSample(可下载的发行版中提供)中的建议,提取迭代内容流的矢量图形的低级表示,以查找与路径相关的操作({{ContentScanner 3}},BeginSubpathDrawLineDrawRectangle,...)。