StrokePath Method (GdPicturePDF)
In This Topic
Strokes the current path, in other words paints a line along the current path, defined within a currently selected page of the loaded PDF document. This
method sets the path-painting operator "S". Each straight or curved segment in the current path is painted and also be aware that each of the path's sub-paths
is handled separately (see PDF Reference, Section "Path-Painting Operators"). By the definition the results of the "S" operator depend on the current settings
of the graphics state parameters, for example the line width or the line color, as well as the line pattern or the line join style, etc.
Syntax
Return Value
A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.
We strongly recommend always checking this status first.
Example
How to stroke the current path. You can find more different approaches in the examples below.
Dim caption As String = "Example: StrokePath"
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.NewPDF()
If status = GdPictureStatus.OK Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter)
If (gdpicturePDF.NewPage(210, 297) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineWidth(2) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineColor(255, 0, 0) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetFillColor(138, 43, 226) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 10) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 80) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.FillPath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 150) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.CloseAndFillAndStrokePath() = GdPictureStatus.OK) Then
status = gdpicturePDF.SaveToFile("test_StrokePath1.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption)
Else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The example has not been followed successfully." + vbCrLf + "The last known status is " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: StrokePath";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.NewPDF();
if (status == GdPictureStatus.OK)
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter);
if ((gdpicturePDF.NewPage(210, 297) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineWidth(2) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineColor(255, 0, 0) == GdPictureStatus.OK) &&
(gdpicturePDF.SetFillColor(138, 43, 226) == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 10) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 80) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.FillPath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 150) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.CloseAndFillAndStrokePath() == GdPictureStatus.OK))
{
status = gdpicturePDF.SaveToFile("test_StrokePath1.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption);
else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("The example has not been followed successfully.\nThe last known status is " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption);
gdpicturePDF.Dispose();
Dim caption As String = "Example: StrokePath"
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.NewPDF()
If status = GdPictureStatus.OK Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter)
If (gdpicturePDF.NewPage(210, 297) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineWidth(2) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineColor(255, 0, 0) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 10) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 80) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 150) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.CloseAndStrokePath() = GdPictureStatus.OK) Then
status = gdpicturePDF.SaveToFile("test_StrokePath2.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption)
Else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The example has not been followed successfully." + vbCrLf + "The last known status is " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: StrokePath";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.NewPDF();
if (status == GdPictureStatus.OK)
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter);
if ((gdpicturePDF.NewPage(210, 297) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineWidth(2) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineColor(255, 0, 0) == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 10) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 80) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 150) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.CloseAndStrokePath() == GdPictureStatus.OK))
{
status = gdpicturePDF.SaveToFile("test_StrokePath2.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption);
else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("The example has not been followed successfully.\nThe last known status is " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption);
gdpicturePDF.Dispose();
Example
How to stroke the current path. You can find more different approaches in the examples below.
Dim caption As String = "Example: StrokePath"
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.NewPDF()
If status = GdPictureStatus.OK Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter)
If (gdpicturePDF.NewPage(210, 297) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineWidth(2) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineColor(255, 0, 0) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetFillColor(138, 43, 226) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 10) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 80) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.FillPath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 150) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.CloseAndFillAndStrokePath() = GdPictureStatus.OK) Then
status = gdpicturePDF.SaveToFile("test_StrokePath1.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption)
Else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The example has not been followed successfully." + vbCrLf + "The last known status is " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: StrokePath";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.NewPDF();
if (status == GdPictureStatus.OK)
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter);
if ((gdpicturePDF.NewPage(210, 297) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineWidth(2) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineColor(255, 0, 0) == GdPictureStatus.OK) &&
(gdpicturePDF.SetFillColor(138, 43, 226) == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 10) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 80) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.FillPath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 150) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.CloseAndFillAndStrokePath() == GdPictureStatus.OK))
{
status = gdpicturePDF.SaveToFile("test_StrokePath1.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption);
else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("The example has not been followed successfully.\nThe last known status is " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption);
gdpicturePDF.Dispose();
Dim caption As String = "Example: StrokePath"
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.NewPDF()
If status = GdPictureStatus.OK Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter)
If (gdpicturePDF.NewPage(210, 297) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineWidth(2) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLineColor(255, 0, 0) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 10) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 50) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 80) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 120) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.ClosePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.StrokePath() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.BeginPath(100, 150) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(20, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.AddLineToPath(190, 200) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.CloseAndStrokePath() = GdPictureStatus.OK) Then
status = gdpicturePDF.SaveToFile("test_StrokePath2.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption)
Else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The example has not been followed successfully." + vbCrLf + "The last known status is " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: StrokePath";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.NewPDF();
if (status == GdPictureStatus.OK)
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitMillimeter);
if ((gdpicturePDF.NewPage(210, 297) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineWidth(2) == GdPictureStatus.OK) &&
(gdpicturePDF.SetLineColor(255, 0, 0) == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 10) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 50) == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 80) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 120) == GdPictureStatus.OK) &&
(gdpicturePDF.ClosePath() == GdPictureStatus.OK) &&
(gdpicturePDF.StrokePath() == GdPictureStatus.OK) &&
(gdpicturePDF.BeginPath(100, 150) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(20, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.AddLineToPath(190, 200) == GdPictureStatus.OK) &&
(gdpicturePDF.CloseAndStrokePath() == GdPictureStatus.OK))
{
status = gdpicturePDF.SaveToFile("test_StrokePath2.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("The example has been followed successfully and the file has been saved.", caption);
else
MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("The example has not been followed successfully.\nThe last known status is " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewPDF() method has failed with the status: " + status.ToString(), caption);
gdpicturePDF.Dispose();
See Also