Scopo
Questa procedura traccia sull'immagine una linea che connette due punti.
Sintassi
IDImage idi = new()
//
idi.drawLine(X1, Y1, X2, Y2, Color, Line Width, Line Style, Start Arrow, End Arrow)
//
idi.drawLine(X1, Y1, X2, Y2, Color, Line Width, Line Style, Start Arrow, End Arrow)
Argomenti
X1 | Coordinata X del primo punto della linea, in pixel. |
Y1 | Coordinata Y del primo punto della linea, in pixel. |
X2 | Coordinata X del secondo punto della linea, in pixel. |
Y2 | Coordinata Y del secondo punto della linea, in pixel. |
Color | Colore della linea, componibile con le funzioni RGBColor o HSBColor. |
Line Width | Spessore della linea, in pixel. |
Line Style | Stile della linea, opzionale. Valore appartenente alla lista valori LineStyle; il valore di default è Solid. |
Start Arrow | Disegnare una freccia all'inizio della linea? Opzionale, il valore di default è False. |
End Arrow | Disegnare una freccia alla fine della linea? Opzionale, il valore di default è False. |
Esempio di codice
// **********************
// Disegna su un'immagine
// **********************
public void Editor.Disegna()
{
IDImage idi = new() // Carico l'immagine
idi.loadImage(Esempioimmagini.path() + "/" + Filtro.Percorso)
//
// Gestisco i colori
int LineColor = RGBColor(Filtro.LineRed, Filtro.LineGreen, Filtro.
LineBlue, Filtro.LineAlpha)
//
int fillColor = RGBColor(Filtro.FillRed, Filtro.FillGreen, Filtro.
FillBlue, Filtro.FillAlpha)
//
// Gestisco il tipo di disegno
switch (Filtro.Drawing)
{
case Linea:
idi.drawLine(Filtro.X, Filtro.Y, Filtro.X2, Filtro.Y2,
LineColor, Filtro.Linewidth, Filtro.LineStyle, Filtro.
StartArrow, Filtro.EndArrow)
//
Filtro.Percorso = "temp/newImg" + toString(toInteger(random(...) *
100)) + "." + idi.originalFormat()
idi.save(Esempioimmagini.path() + "/" + Filtro.Percorso)
//
Filtro.X = null
Filtro.Y = null
Filtro.X2 = null
Filtro.Y2 = null
break
case Rettangolo:
...
case Ellisse:
...
case Testo:
...
}
//
// Aggiungo il file creato ai file temporanei
Esempioimmagini.addTempFile(Esempioimmagini.path() + "/" + Filtro.
Percorso)
//
// Rinfresco il book
Editor.refresh(1, -1)
Editor.print(1, -1)
}
// Disegna su un'immagine
// **********************
public void Editor.Disegna()
{
IDImage idi = new() // Carico l'immagine
idi.loadImage(Esempioimmagini.path() + "/" + Filtro.Percorso)
//
// Gestisco i colori
int LineColor = RGBColor(Filtro.LineRed, Filtro.LineGreen, Filtro.
LineBlue, Filtro.LineAlpha)
//
int fillColor = RGBColor(Filtro.FillRed, Filtro.FillGreen, Filtro.
FillBlue, Filtro.FillAlpha)
//
// Gestisco il tipo di disegno
switch (Filtro.Drawing)
{
case Linea:
idi.drawLine(Filtro.X, Filtro.Y, Filtro.X2, Filtro.Y2,
LineColor, Filtro.Linewidth, Filtro.LineStyle, Filtro.
StartArrow, Filtro.EndArrow)
//
Filtro.Percorso = "temp/newImg" + toString(toInteger(random(...) *
100)) + "." + idi.originalFormat()
idi.save(Esempioimmagini.path() + "/" + Filtro.Percorso)
//
Filtro.X = null
Filtro.Y = null
Filtro.X2 = null
Filtro.Y2 = null
break
case Rettangolo:
...
case Ellisse:
...
case Testo:
...
}
//
// Aggiungo il file creato ai file temporanei
Esempioimmagini.addTempFile(Esempioimmagini.path() + "/" + Filtro.
Percorso)
//
// Rinfresco il book
Editor.refresh(1, -1)
Editor.print(1, -1)
}
Ultima modifica: 24/03/2021 / Validità: da 10.0.4300