Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/03/2003, 06:25
Avatar de caricatos
caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 9 meses
Puntos: 1284
Mejorar un applet

Hola amigos:

He hecho un applet que funciona en mi ordenador (no muy bien), y que en otro foro me han dicho que no se ve...

Está aquí ...

La razón es poner las letras con un gif de relleno, pero parpadea. El código lo he mezclado un poco con cosas que vi por ahí:

Código PHP:
/*
    mensaje Java con imagen
*/
import java.applet.Applet;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
public class 
mensajeYimagen2 extends Applet    {
    
String mensajecolorFondodibujo;
    
Color fondo;
    
Image img;

    public 
void init()    {
        
mensaje getParameter("mensaje");
        if (
mensaje == null)    mensaje "¡Hola mundo!";
        
colorFondo getParameter("fondo");
        if (
colorFondo == nullfondo = new Color(255,255,0,255);
        else 
fondo Color.decode(colorFondo);

        
dibujo getParameter("imagen");
        if (
dibujo != null)    {
            
img getImage(getDocumentBase(), dibujo);
            try {
                
MediaTracker tracker = new MediaTracker(this);
                
tracker.addImage(img0);
                
tracker.waitForID(0);
            }
                catch( 
Exception e ) {
                
e.printStackTrace();
            }
        }
    }

    public 
void paintGraphics g ) {
        
Graphics2D g2 = (Graphics2D)g;

        
// Características de presentación del renderizado
        
g2.setRenderingHintRenderingHints.KEY_ANTIALIASING,
            
RenderingHints.VALUE_ANTIALIAS_ON );
        
g2.setRenderingHintRenderingHints.KEY_RENDERING,
            
RenderingHints.VALUE_RENDER_QUALITY );

          
setBackground(fondo);
        
FontRenderContext contextoFuente g2.getFontRenderContext();
        
Font fuente = new Font("Arial Black"Font.BOLD30);
        
String texto = new String(mensaje);
        
TextLayout tl = new TextLayout(textofuentecontextoFuente );
        
AffineTransform transformacion = new AffineTransform();
        
transformacion.setToTranslation10,45 );
        
Shape figura tl.getOutlinetransformacion );
        
Rectangle rect figura.getBounds();
        
g2.setColorColor.blue );
        
g2.drawfigura );
        
g2.setClipfigura );
        
g2.drawImage(imgrect.xrect.yrect.widthrect.heightthis );
    }

Alguien sabe cómo quitarle el parpadeo...

Saludos