5 votes

Quel est l'équivalent d'un canevas pour iOS ?

Je porte mon application OGLES sur iOS à partir d'Android, et je crée dynamiquement une image à lier en tant que texture de la manière suivante :

        Bitmap overlayBitmap = Bitmap.createBitmap(512,512, Bitmap.Config.ARGB_4444);
        // get a canvas to paint over the bitmap
        Canvas canvas = new Canvas(overlayBitmap);
        overlayBitmap.eraseColor(0);
        // Draw the text
        TextPaint textPaint = new TextPaint();
        textPaint.setTextSize(30);
        textPaint.setAntiAlias(true);
        textPaint.setARGB(0xff, 0x00, 0x00, 0x00);
        textPaint.setTypeface(Typeface.DEFAULT_BOLD);
        textPaint.measureText(stopName);

        // get a background image from resources
        // note the image format must match the bitmap format
        cap.setBounds(0,0,8,49);
        cap.draw(canvas);
        overlayBackground.setBounds(8,0, (int) textPaint.measureText(stopName)+8, 49);
        overlayBackground.draw(canvas); // draw the background to our bitmap
        Rect overlayBounds=overlayBackground.getBounds();
        spike.setBounds((((overlayBounds.right+8)/2)-((21/2))),48,(((overlayBounds.right+8)/2)+((21/2))),69);
        spike.draw(canvas);
        capR.setBounds(overlayBounds.right,0,overlayBounds.right+8,49);     
        capR.draw(canvas);
        // draw the text centered
        canvas.drawText(stopName,8,33, textPaint);

3voto

jfisk Points 1740

L'équivalent consiste à utiliser Quartz 2D et

UIGraphicsBeginImageContextWithOptions();
CGContextRef context = UIGraphicsGetCurrentContext(); //get the context we just made above

vous pouvez alors exporter le contexte en tant qu'image UII.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X