Avatar billede verakso Nybegynder
05. januar 2010 - 00:49

Dynamisk skalering af text i gif

Jeg er gået i stå, da jeg ikke har kunne finde nogen som helst eksempler på, hvordan man kan skalere tekst i en eks. gif fil.

Ud fra det nedenstående eks. viille jeg gerne
1) Enten kunne skalere teksten således, at hvis der er mere tekst end der kan stå i gif filen, så bliver teksten skaleret ned - og/eller
2) Dynamisk kunne lave et gif billede, hvor størrelsen passer til den tekst der er skrevet.

Men som skrevet, er jeg gået i stå, da jeg ikke har nogen som helst anelse om. hvordan man kan regne på hvor meget en tekst fylder.

Eks. på eksisterende kode:
[code]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Drawing;
using System.Drawing.Imaging;

namespace WebApplication1
{
    public partial class CreateText : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Create a new bitmap object 400 pixels wide by 60 pixels high
            Bitmap objBitmap = new Bitmap(400, 60);
           
            // Create a graphics object from the bitmap
            Graphics objGraphic = Graphics.FromImage(objBitmap);
   
            // Only need two brushes for this example, one for the background, the other for the text
            SolidBrush whiteBrush = new SolidBrush(Color.White);
            SolidBrush blackBrush = new SolidBrush(Color.Black);
       
            // Paint the background of the rectangle blue
            objGraphic.FillRectangle(whiteBrush, 0, 0, 400, 60);

            // Now create a PointF and Font object for our DrawString call
            PointF objPoint = new PointF(0,0);
            Font objFont = new Font("Arial", 12);

            // Set format of string.
            StringFormat drawFormat = new StringFormat();
            drawFormat.Alignment = StringAlignment.Center;

            RectangleF objRect = new RectangleF(0,0,400,60);

            // Draw the specified string onto the GIF
            objGraphic.DrawString(Request["StringToDisplay"], objFont, blackBrush, objRect, drawFormat);

            // Change the ContentType to GIF so that the browser will understand it
            Response.ContentType = "image/gif";
       
            // And send the output to the browser stream
            objBitmap.Save(Response.OutputStream, ImageFormat.Gif);

        }
    }
}

[/code]
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
De virker skræmmende godt: Med Apples nye Airtags kunne jeg spore mine chefer (og mine ting) med mobilen
Apples Airtags er uhyre effektive og lette at anvende - og det giver grund til bekymring.
Computerworld
Stor krise i den danske it-stjerne David Heinemeiers Hanssons firma: Her er historien om dramaet, der fik en tredjedel af de ansatte i Basecamp til at smække med døren
De ansatte har i hobe forladt David Heinemeier Hanssons amerikanske succes-firma Basecamp efter en intern racisme-debat. Hvordan kunne det gå så galt?
CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
Eva Berneke stopper som topchef i KMD og flytter til Paris: Her er KMD's nye topchef
Efter syv år på posten som topchef for KMD forlader Eva Berneke selskabet. Nu flytter hun med familien til Paris, hvor hun vil fortsætte sit bestyrelsesarbejde. KMD har allerede afløser på plads.
White paper
Giv grønt lys for de gode ideer med Power Platformen
Hvad er Microsoft Power Platform? – og hvordan gør den det nemmere at udvikle apps og skabe en god business case ud af selv mindre projekter? Her giver AlfaPeople et hurtigt og konkret overblik over, hvor du kan drage fordel af platformen.