THPDFPage.SetDash

THPDFPage

 

Haut  Précédent  Suivant

Définit le type de motif de tirets

 

Syntaxe Delphi :

procedure SetDash ( DashArray: array of Byte; Phase: Byte );

 

Syntaxe C++ :

void __fastcall SetDash ( const Byte * DashArray, const int DashArray_Size, Byte Phase);

 

Description :

Le motif de tirets contrôle l'alternance des traits et des espaces utilisée pour tracer les chemins. Il est défini par un tableau de tirets et une phase de tirets. Les éléments du tableau de tirets sont des nombres qui indiquent la longueur des segments tracés et des espaces ; la phase de tirets indique la distance, à l'intérieur du motif, à laquelle commencer le premier tiret

 

Exemples de motifs de tirets

TABLEAU DE TIRETS

PHASE DE TIRETS

APPARENCE

DESCRIPTION

[]

[ 3 ]

[ 2 ]

[ 2 1 ] 

[ 3 5 ]

[ 2 3 ]

0

0

1

0

6

11

Exemple de motif de tirets

Aucun tiret

3 unités tracées, 3 unités espacées ... 

1 tracé, 2 espacés, 2 tracés, 2 espacés, … 

2 tracés, 1 espacé, 2 tracés, 1 espacé, … 

2 espacés, 3 tracés, 5 espacés, 3 tracés, 5 espacés, … 

1 tracé, 3 espacés, 2 tracés, 3 espacés, 2 tracés, …        

 

Exemple de code

program FillExample;
{$APPTYPE CONSOLE}
uses
    SysUtils, Graphics, Classes, HPDFDoc;

var
    HPDF: THotPDF;

const
    DashArray: array [0..3] of Byte = ( 6, 4, 2, 4 );

begin
    HPDF := THotPDF.Create(nil);
    try
        HPDF.AutoLaunch := true;                       // PDF file will be shown automatically
        HPDF.FileName := '.\Ellipse.pdf';              // Set PDF filename
        HPDF.BeginDoc;                                 // Create PDF file

        HPDF.CurrentPage.SetDash( DashArray, 0 );      // Set  - . -  dash pattern
        HPDF.CurrentPage.MoveTo ( 20, 20 );            // Move current point to 20, 20
        HPDF.CurrentPage.LineTo ( 300, 100 );          // Draw line from current point to 200, 100
        HPDF.CurrentPage.Stroke;                       // and stroke

        HPDF.CurrentPage.NoDash;                       // Set solid dash pattern
        HPDF.CurrentPage.MoveTo ( 300, 100 );          // Move current point to 300, 100
        HPDF.CurrentPage.LineTo ( 10, 200 );           // Draw line from current point to 10, 100
        HPDF.CurrentPage.Stroke;                       // and stroke

        HPDF.EndDoc;                                   // Close PDF file
    finally
        HPDF.Free;
    end;
end.

 

Voir aussi : NoDash