Por que recebo um comportamento diferente no simulador de codinome um do que em um dispositivo Android real?

Estou tentando descobrir por que obtenho um comportamento diferente no simulador (iPhone, Nexus, Nexus5, ... skins) VS em um dispositivo real Android com o seguinte código (meu objetivo é desenhar um texto sobre uma imagem de fundo e salve o todo na resolução da imagem de fundo):

Observe que a GUI foi feita com o Designer.

    protected void beforeMain(Form f) {

    // The drawing label will contain the whole photo montage
    f.setLayout(new LayeredLayout());
    final Label drawing = new Label();
    f.addComponent(drawing);

    String nom = "Hello World";

    // Image mutable dans laquelle on va dessiner (fond blancpar défaut)
    // synthe is an Image
    Image mutableImage = Image.createImage(synthe.getWidth(), synthe.getHeight());
    drawing.getUnselectedStyle().setBgImage(mutableImage);
    drawing.getUnselectedStyle().setBackgroundType(Style.BACKGROUND_IMAGE_SCALED_FIT);

    // Draws over the background image and put all together on the mutable image.
    paintSyntheOnBackground(mutableImage.getGraphics(), 
            synthe,
            nom,
            synthe.getWidth(), 
            synthe.getHeight());

    long time = new Date().getTime();
    OutputStream os;
    try {
        os = Storage.getInstance().createOutputStream("screenshot_" + Long.toString(time) + ".png");
        ImageIO.getImageIO().save(mutableImage, os, ImageIO.FORMAT_PNG, 1.0f);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

} // end of beforeMain

E aqui está o método que eu chamo para desenhar um texto sobre uma imagem

public void paintSyntheOnBackground(Graphics g, 
        Image synthe,
        final String pNom,
        int width, int height) {

     Font myFont = g.getFont();
        g.setFont(myFont);
        int w = myFont.stringWidth(pNom);
        int h = myFont.getHeight();

        // Added just to see the background
        g.setColor(0x0000FF);
        g.fillRect(0, 0, width, height);

        g.setColor(0xff0000);
        int x = g.getTranslateX() + width / 2 - w / 2;
        int y = g.getTranslateY() + height / 2 - h / 2;

        g.drawRect(x, y, w, h);
        g.drawString(pNom, x, y);

} // end of paintSyntheOnBackground

Aqui está o resultado no simulador (GoogleNexus7):

E aqui está o resultado no dispositivo (Android 4.4):

Meu sistema de desenvolvimento possui o Eclipse no Linux com o Codename One V3-4.

Eu sei que o simulador não pode reproduzir casos específicos, mas aqui não há nada de especial, não é? O que posso fazer para que o comportamento no simulador reflita o comportamento real, pois seria muito mais fácil testar no simulador?

EDIT: Depois de atualizar cada uma das minhas bibliotecas de projeto CN1 da versão 114 para 115 (consulteesta pergunta para obter detalhes sobre como fazer a atualização), Agora sou capaz de obter o mesmo comportamento no simulador e no dispositivo! Grande equipe de correção de bugs da equipe CN1! Observe: No meu caso (Eclipse - Linux), tive que atualizar as bibliotecas do projeto emcada e todos Nome de código Um projeto.

Qualquer ajuda seria muito apreciada!

Felicidades,

questionAnswers(1)

yourAnswerToTheQuestion