DrawPath
Gráficos vetoriais, definição e desenho de caminhos
Descrição
Pinta o caminho atual — criado por StartPath, AddLineToPath, AddCurveToPath, AddArcToPath e ClosePath — utilizando a regra de preenchimento de enrolamento diferente de zero. Depois de o caminho ser pintado, o estado do caminho é reposto, pelo que o próximo StartPath inicia uma nova forma
Sintaxe
Delphi
Function TPDFlib.DrawPath(PathOptions: Integer): Integer;
ActiveX
Function PDFlib::DrawPath(PathOptions As Long) As Long
DLL
int DLDrawPath(int InstanceID, int PathOptions);
Parâmetros
| PathOptions | Modo de pintura: 0 — Apenas contorno (traço com as definições de linha atuais). 1 — Apenas preenchimento (com a cor de preenchimento atual e a regra de enrolamento diferente de zero). 2 — Preenchimento e contorno |
|---|
Valores devolvidos
| 0 | Falha — PathOptions está fora do intervalo, não está aberto nenhum documento ou não foi iniciado nenhum caminho |
|---|---|
| 1 | O caminho foi pintado com êxito |
Observações
Defina as cores do traço e do preenchimento, bem como os atributos da linha (SetLineWidth, SetLineCap, SetLineDash), antes de invocar DrawPath. O estado gráfico atual é recolhido no local da invocação
Para caminhos sobrepostos ou auto-intersetados, a regra de enrolamento diferente de zero trata todos os subcaminhos como parte da mesma região: um orifício recortado numa forma maior requer que o subcaminho interior se enrole no sentido contrário ao exterior. Quando isso for inconveniente, chame DrawPathEvenOdd — a regra par-ímpar limita-se a alternar entre o interior e o exterior em cada cruzamento, tornando triviais os orifícios recortados
Exemplo
// Filled outlined diamond
PDF.SetStrokeColor(0, 0, 0);
PDF.SetFillColor(0.6, 0.8, 1);
PDF.SetLineWidth(1.5);
PDF.StartPath(150, 100);
PDF.AddLineToPath(200, 150);
PDF.AddLineToPath(150, 200);
PDF.AddLineToPath(100, 150);
PDF.ClosePath;
PDF.DrawPath(2); // 2 = fill and outlineConsulte também
DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth