Bonsoir,
Et oui, encore moi, encore avec un problème tordu !
Tout récemment je découvre sur le forum Delphi quelque chose que je ne connaissais pas, que j'ai voulu tester, et mal m'en a pris, qu'on en juge.
source
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 var image: TBitmap; begin image := TBitmap.Create; ImageList1.GetBitmap(0, image); Shape1.Brush.Bitmap := image; end;
C'est la dernière ligne qui m'a titillé les neurones : on peut assigner un TBitmap au Bitmap d'un TShape ? Ah ah !
Et je suis parti d'un TImage et d'un TShape posés sur une fiche, et d'un fichier 128x96x72dpi,
aec_128x96x72.bmp.txt
(Ceux qui veulent tester récupèrent ce .txt et enlèvent cette extension [rajoutée pour tromper le filtre du forum], ils récupéreront le .bmp)
que j'ai chargé dans le TImage (image1.Picture.Bitmap.LoadFromFile(OpenDialog1.FileName); --> image parfaite) puis
shape1.Brush.Bitmap := image1.Picture.Bitmap; et là, catastrophe !
à gauche le rendu du TImage, à droite le rendu du TShape, la barre noire est expliquée dessous.
Regardez l'image, très agrandie pour montrer les défauts :
à gauche le bord droit du fichier dans le TImage pour bien montrer que le TShape perd un pixel en hauteur, en bas à droite la partie inférieure du même fichier et le TShape perd un pixel en largeur.
Et je ne parle pas du rendu des couleurs, bien en vrac dans le TShape.
Et on est bien d'accord que cette fois, il y a zéro code de mon fait :
Elle est où, la blague, là ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 image1.Picture.Bitmap.LoadFromFile(OpenDialog1.FileName); shape1.Brush.Bitmap := image1.Picture.Bitmap;
Sur quoi puis-je intervenir ?
Ah, un dernier mot :
à gauche Debian8 Laz 1.6.2, à droite XP SP2 Laz 1.6.0, le défaut n'est plus le même qu'avec Laz 1.4 (les couleurs ne sont pas en vrac de la même manière), mais bon, il y a bien un défaut...
![]()
Partager