DRJEROME
Messages postés436Date d'inscriptionjeudi 9 janvier 2003StatutMembreDernière intervention 5 février 2015 16 oct. 2004 à 21:49
DrJerome
Cette méthode de découpage est connue depuis belle lurette, on la connaissait déjà du temps de Delphi4...le problème c'est qu'elle est très lente (essaie de mettre une image de taille moyenne avec pleins d'arabesques et de trous à l'emporte-pièce, l'ouverture de l'éxécutable ne sera pas spontanée), il y a bien plus rapide ;)
DRJEROME
Messages postés436Date d'inscriptionjeudi 9 janvier 2003StatutMembreDernière intervention 5 février 2015 17 oct. 2004 à 11:02
3 méthodes (en plus de celle habituellement citée):
1°/ mettre dans le code les lignes de code qui font l'hrgn et que tu as tiré à l'avance d'un scanline que (tu ne fais pas le scanline à l'ouverture du coup). J'avais fait un code-source qui permettait cela par copier-coller automatique(ça créait automatiquement les lignes du code-source à insérer dans le Onformcreate). ça ressemble à ça :
"rgn1:=createrectrgn(1,0,1,1);
rgn2 := createrectrgn(144,3,176,4);
combinergn (rgn1,rgn1,rgn2,RGN_OR);
deleteobject(rgn2);
rgn2 := createrectrgn(347,3,455,4);
combinergn (rgn1,rgn1,rgn2,RGN_OR);
deleteobject(rgn2);" Inconvénient ça fait de lignes de code à rallonge dans onformcreate
Cela dit ça paraît bête mais les grandes images compliquées apparaîssent spontanément
2°/ mettre en resource l'hrgn de l'image en question (en gros c'est le 1°/ mis en resource)
3°/à partir du BITMAPINFOHEADER du Bimap on créé l'hrgn sans scanline (il est utilisé une boucle de traitement qui à partir des infos du header créé une région rognée hrgn, c'est très rapide) on peut ouvrir spontanément l'éxécutable. C'est efficace et le plus intéressant à mon goût?