Files
pdf/engine/src/core/path_interpreter.cpp
T

29 lines
740 B
C++

#include <pdfengine/path_interpreter.hpp>
namespace pdfengine {
void PathObjectInterpreter::interpret(const PathObject& pathObj, DisplayList& displayList) {
if (pathObj.path.empty()) {
return;
}
displayList.saveState();
displayList.setTransform(pathObj.transform);
switch (pathObj.paintOp) {
case PathPaintOp::Stroke:
displayList.strokePath(pathObj.path);
break;
case PathPaintOp::Fill:
displayList.fillPath(pathObj.path, pathObj.fillRule);
break;
case PathPaintOp::FillStroke:
displayList.fillStrokePath(pathObj.path, pathObj.fillRule);
break;
}
displayList.restoreState();
}
} // namespace pdfengine