Arrière-plan partout pareil

Résolu
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 - 4 nov. 2006 à 19:11
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 - 5 nov. 2006 à 16:21
Bonjour,

Voilà j'ai une image qui est en forme de carré de 55x55 pixels.
J'aimerais pouvoir mettre cette image partout en background mais en essayant la fonction "stretch" il m'agrandit l'image partout et je me retrouve avec un beau "truc" pixelisé.

Si quelqu'un avait une idée, j'ai bien evidemment aussi mis mon align en alClient.

@+

14 réponses

Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
5 nov. 2006 à 13:12
Et pour un effet mosaïque sans trop de code :

Uses crJPEG;
Var FBKBmp : TBitmap;
procedure TForm1.FormCreate(Sender: TObject);
Var JPG : TJPEGImage;
begin
  FBKBmp := TBitmap.Create;
  JPG := TJPEGImage.Create;
  With JPG do
  Try
    LoadFromFile(Path.MYPICTURES + 'Fond.jpg');
    FBKBmp.Assign(JPG);
  Finally
    Free;
  End;
  Canvas.Brush.Handle : = CreatePatternBrush(FBKBmp.Handle);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  FBKBmp.Free;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  Canvas.FillRect(ClientRect);
end;

 
@+
Cirec

<hr size="2" />
3
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
4 nov. 2006 à 19:32
Salut,
pour faire un effet de mosaïque il faut affecter le Bitmap au Canvas.Brush

    Canvas.Brush.Handle := CreatePatternBrush(Ton_Bitmap.Handle);

 
@+
Cirec

<hr size="2" />
0
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
4 nov. 2006 à 19:38
oki merci mais je le met ou ca ?

J'ai cherché dans les fonctions de l'image, de le mettre en Appli.Create et .Show mais il ne veut pas du deriner Handle :

Canvas.Brush.Handle := CreatePatternBrush(gfx_bg.Handle);

Il me dit que celui-ci est non déclaré.

Merci d'avance
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
4 nov. 2006 à 19:52
gfx_bg doit être un TBitmap
quel est le type de gfx_bg ?

 
@+
Cirec

<hr size="2" />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
4 nov. 2006 à 20:38
c'est une image au format JPEG pourquoi ?
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
4 nov. 2006 à 21:15
Salut,

J'ai retrouvé ce vieux code que j'avais fait d'après l'aide de Delphi, et qui permet d'utiliser un jpeg pour tapisser le fond du form :

procedure TForm1.FormCreate(Sender: TObject);
begin
  Jpg := TJpegImage.Create;
  Jpg.LoadFromFile('Image.jpg');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  Jpg.Free;
end;

procedure TForm1.FormPaint(Sender: TObject);
var
  x, y: Integer;
begin
  y := 0;
  while y < Height do
  begin
    x := 0;
    while x < Width do
    begin
      Canvas.Draw(x, y, Jpg);
      x := x + Jpg.Width;
    end;
    y := y + Jpg.Height;
  end;
end;

Bonne prog'
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
4 nov. 2006 à 21:17
"Uses Jpeg" , ça va sans dire...
...mais ça va quand même mieux en le disant, lol
0
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
4 nov. 2006 à 21:33
Merci mais tu as surement du oublier de préciser auparavant qu'ets-ce qu'était Jpg, en effet il ne reconnait pas cette variable, je dois lui attribuer quoi ?
Il me dit que c'est un identificateur non déclaré.

@+
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
4 nov. 2006 à 21:54
En effet.
Il faut auparavant déclarer la variable Jpg ainsi :

var
  Jpg: TJpegImage;
0
Utilisateur anonyme
5 nov. 2006 à 13:38
Cirec,

En compressant ton JPeg, tu modifies ton BMP : ce n'est donc plus un BMP ! Du reste ils n'ont pas le meme format ;) .

Du reste tu as lui bien demandé si c'était un BitMap qu'il avait ?? Je pense que ce n'est pas sans raison
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
5 nov. 2006 à 14:41
il faut arrêter de chippoter sur les mots

je le répète encore une fois

un JPEG est un BMP compressé (avec la ZLib)

"En compressant ton JPeg, tu modifies ton BMP : ce n'est donc plus un BMP"
Si c'est un BMP compressé

La preuve est que tu peux assigner un JPG directement à un Bitmap
Essaye de faire la même avec un GIF

"Du reste tu as lui bien demandé si c'était un BitMap qu'il avait"
le code que je donne charge un JPG pas un BMP ...

t'as mangé du lion  aujourd'hui où quoi ?
 
@+
Cirec

<hr size="2" />
0
Utilisateur anonyme
5 nov. 2006 à 15:09
Oui deux lions meme

Si tu préfères un CIREC compressé c'est un Francky mais n'empeche que l'on reste tout les deux des e...

En compressant ton BMP tu modifies le header si je me trompe ? Pour ma part j'ai peut etre tord mais je considère que ce sont deux fichiers franchement différent.

Par contre oui un Jpeg est obtenu en compressant un Bmp la je suis d'accord.

Je pense qu'on est d'accord sur le fond seul les mots changent
0
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
5 nov. 2006 à 15:19
Oulà merci pour tous ces messages si je m'en sors pas tout de même...

Francky23012301 : En effet j'y suis depuis très longtemps mais je suis dans le C (pas C++) (bien que je ne poste jamais quoi que ce soit dans ce language...)

@+
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
5 nov. 2006 à 16:21
Bah, on peut dire que le jpeg est au bmp ce que le mp3 et au wav, non ?

Pour en savoir un peu plus :

Compression JPEG

Bonne prog'
0
Rejoignez-nous