我想用pdfclown从pdf中提取矢量图形(线条和点)。我试图绕过图形样本,但我无法弄清楚对象模型是如何工作的。请问任何人可以解释这些关系吗?
答案 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}},BeginSubpath,DrawLine,DrawRectangle,...)。