Merci à tous pour m'avoir donné des directives. Jusqu'ici, j'ai été capable de créer une ligne diagonale et de la répéter jusqu'à une largeur et une hauteur variables.
Je dois encore joindre l'image et les lignes mais je l'appelle une nuit.
var lineBitmapData:BitmapData;
var targetSprite:SpriteVisualElement;
var spriteVE:SpriteVisualElement = new SpriteVisualElement();
var fillSprite:Sprite = new Sprite();
// draw our diagonal line on a sprite
fillSprite.graphics.lineStyle(1, 0xFF0000);
fillSprite.graphics.moveTo(0, 10);
fillSprite.graphics.lineTo(10, 0);
// draw all the pixels into a bitmap data object
lineBitmapData = new BitmapData(10, 10, true, 0x000000000000000000);
lineBitmapData.draw(fillSprite);
// create a new sprite and with the graphics object
// draw a rectangle and fill it with a repeating bitmap data
targetSprite = new SpriteVisualElement();
targetSprite.graphics.beginBitmapFill(lineBitmapData, null, true);
targetSprite.graphics.drawRect(0, 0, width, height);
targetSprite.graphics.endFill();
// add
//targetSprite.blendMode = BlendMode.ERASE;
spriteVE.addChild(targetSprite);
addElement(spriteVE);
Créez deux objets Bitmap. Prenez l'image et placez-la dans un bitmap, placez la ligne dans un autre bitmap (bmpData doit avoir un canal de transparence). 'addChild' les Bitmaps dans un conteneur Canvas (ie: Sprite) dans l'ordre de l'image BMP suivi de la ligne BMP. Quoi qu'il en soit, il y a aussi un 'setPixel' où vous pouvez faire une boucle for qui dessine des pixels diagonaux comme la ligne. Regardez aussi dans blendModes si vous voulez superposer le style filigrane sur une autre image –