Question

Comment créer un générateur de signature de forum dynamique à l'aide d'ASP.NET MVC. Je dispose actuellement d'un outil de récupération de statistiques qui récupère les informations utilisateur à utiliser dans le Forum Signature.

J'essaie de créer un générateur de signature de forum où un utilisateur peut entrer son nom d'utilisateur et générer une image qu'il peut mettre dans sa signature de forum et qui montrera à tout le monde les statistiques des utilisateurs.

quelque chose comme cette http://www.xfire.com/miniprofile

Je dois avoir perdu la trace de ce que je faisais je ne voulais pas vous fournir une telle petite information, mais je pense que vous aurez une idée de ce que je cherche à faire maintenant.

Était-ce utile?

La solution

J'utiliserais le composant abcPdf, l'image serait un document pdf haute résolution.

il vous suffira ensuite de passer du texte, la police, la couleur, x, y, w, h

puis votre rendu le PDF en tant que flux jpg

une idée de base pour vous aider pourrait être comme ça;

        private void addTextToPDF(string cmyk, int fs, string fontname, Double posx,
    Double posY, Double mWidth, Double mHeight, String text, Double hpos)
    {
        text = secure.reverseCleanup(text);
        int lettercount1 = 0;
        foreach (char c in text)
        { lettercount1 ++; }

        TheDoc.Color.String = cmyk;
        TheDoc.FontSize = fs;
        var theFont = fontname;
        TheDoc.Rect.Position(posx, posY);
        TheDoc.Rect.Width = mWidth;
        TheDoc.Rect.Height = mHeight;
        TheDoc.HPos = hpos;
        TheDoc.Font = TheDoc.EmbedFont(theFont, "Latin", false, true, true);
        int didwrite = TheDoc.AddText(text);
        string addedchars = TheDoc.GetInfo(didwrite, "Characters");
        var oldid = didwrite;

        if (addedchars != lettercount1.ToString())
            didwrite = 0;

        while (didwrite==0) // hits this if first run did not add text
        {
            TheDoc.Delete(oldid);
            fs = fs - 2;
            TheDoc.Color.String = cmyk;
            TheDoc.FontSize = fs;
            theFont = fontname;
            TheDoc.Rect.Position(posx, posY);
            TheDoc.Rect.Width = mWidth;
            TheDoc.Rect.Height = mHeight;
            TheDoc.HPos = hpos;
            TheDoc.Font = TheDoc.EmbedFont(theFont, "Latin", false, true, true);
            didwrite = TheDoc.AddText(secure.reverseCleanup(text));
            addedchars = TheDoc.GetInfo(didwrite, "Characters");
            oldid = didwrite;

            if (addedchars != lettercount1.ToString())
                didwrite = 0;
        }

    }

    public byte[] convertPDFToImageStream()
    {
        byte[] jpgBytes = null;
        byte[] theData = null;
        theData = TheDoc.GetData();
        TheDoc.Clear();
        TheDoc.Read(theData);
        TheDoc.Rendering.DotsPerInch = getDPI();
        TheDoc.Rendering.ColorSpace = "RGB";
        jpgBytes = TheDoc.Rendering.GetData("preview.jpg");

        return jpgBytes;
     }

c'est le code pour ajouter du texte et aussi pour rendre le PDF sous forme de flux JPG très très bon composant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top