MCPcopy Create free account
hub / github.com/Kitware/VTK / ApplyStrokeColor

Method ApplyStrokeColor

IO/ExportPDF/vtkPDFContextDevice2D.cxx:1581–1597  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

1579
1580//------------------------------------------------------------------------------
1581void vtkPDFContextDevice2D::ApplyStrokeColor(unsigned char* color, int numComps)
1582{
1583 HPDF_Page_SetRGBStroke(this->Impl->Page, static_cast<HPDF_REAL>(color[0] / 255.0),
1584 static_cast<HPDF_REAL>(color[1] / 255.0), static_cast<HPDF_REAL>(color[2] / 255.0));
1585
1586 unsigned char alpha = numComps > 3 ? color[3] : 255;
1587 auto gstateIter = this->Impl->AlphaGStateMap.find(alpha);
1588 if (gstateIter == this->Impl->AlphaGStateMap.end())
1589 {
1590 HPDF_ExtGState gstate = HPDF_CreateExtGState(this->Impl->Document);
1591 HPDF_ExtGState_SetAlphaFill(gstate, alpha / 255.f);
1592 auto tmp = this->Impl->AlphaGStateMap.insert(std::make_pair(alpha, gstate));
1593 gstateIter = tmp.first;
1594 }
1595 HPDF_ExtGState alphaState = gstateIter->second;
1596 HPDF_Page_SetExtGState(this->Impl->Page, alphaState);
1597}
1598
1599//------------------------------------------------------------------------------
1600void vtkPDFContextDevice2D::ApplyLineWidth(float width)

Callers 3

ApplyPenStateMethod · 0.95
DrawCrossMarkersMethod · 0.95
DrawPlusMarkersMethod · 0.95

Calls 7

HPDF_Page_SetRGBStrokeFunction · 0.85
HPDF_CreateExtGStateFunction · 0.85
HPDF_Page_SetExtGStateFunction · 0.85
findMethod · 0.45
endMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected