Categorias
Uncategorized

Feliz Natal e At?? Ano que Vem

Pessoal,

Feliz Natal, Pr??spero Ano Novo, tudo de bom, etc e tal para todos voc??s!

Infelizmente em Dezembro n??o tive muito tempo para escrever artigos, mas para o ano teremos boas mat??rias. Estou preparando uma s??rie de artigos para o tema Newsletter que vai ser show de bola. Ent??o, divirtam-se… Dia 10/01/2011 voltamos com as novidades!

Categorias
dll handler html thumbnail

Gerar Thumbnail de um HTML

Nesse artigo veremos como gerar um Thumbnail (ou Screenshot) de um HTML. Por exemplo: ??s vezes queremos ter uma pr??via de uma p??gina e n??o temos como v??-la a n??o ser abrindo-a. Ent??o geremos o thumb delas e coloquemo-as em um DataList. No caso n??o colocarei no DataList… apena mostrarei como gerar o thumb. Usaremos o componente WebsitesScreenshot. Essa DLL permite:

  • Gerar um thumb atrav??s de um arquivo HTML local (indicando o arquivo ou inserindo o c??digo-fonte);
  • Gerar um thumb atrav??s de uma URL;
  • Salvar o thumb gerado ou exibir na tela, etc.
?? um poderoso componente que voc?? pode manipular de v??rias formas e chegar a bons resultados. Irei mostrar algo bem simples: gerarei um thumb de uma URL e exibirei em uma imagem. Vamos?
Crie uma p??gina (Web Form) qualquer onde ser?? exibida o thumb. Adicione um Image e no seu atributo ImageUrl indique o valor Thumb.ashx. Agora criemos um Generic Handler chamado Thumb.ashx no projeto. Dentro do ProcessRequest coloque o seguinte trecho de c??digo ficando da seguinte forma:
public void ProcessRequest (HttpContext context) {
        WebsitesScreenshot.WebsitesScreenshot ComponenteThumb = new WebsitesScreenshot.WebsitesScreenshot();
        WebsitesScreenshot.WebsitesScreenshot.Result ResultadoCaptura = ComponenteThumb.CaptureWebpage(“http://www.google.com.br/”);
        if (ResultadoCaptura == WebsitesScreenshot.WebsitesScreenshot.Result.Captured)
        {
            System.Drawing.Image thumb = ComponenteThumb.GetImage().GetThumbnailImage(140, 110, null, new IntPtr());
            MemoryStream ms = new MemoryStream();
            context.Response.ContentType = “image/png”;
            thumb.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
            ms.WriteTo(context.Response.OutputStream);
        }
        ComponenteThumb.Dispose();
    }
N??o se esque??a de adicionar o namespace System.IO; l??. O resultado seria algo do tipo:
A depender dos par??metros que voc?? trabalhar e qualidade dos objetos, o resultado final vem a ser melhor do que isso. O que mostrei foi o b??sico do componente!
Se fosse para gerar o thumb de um arquivo HTML local ou c??digo-fonte, bastaria inserir o seu conte??do em uma string e depois usar o seguinte m??todo:
string HtmlArquivo = “Voc?? visitou o blog de Thiago Mar??al!”;
WebsitesScreenshot.WebsitesScreenshot.Result ResultadoCaptura = ComponenteThumb.CaptureHTML(HtmlArquivo);
E o resultado seria:
Est?? pequenininho, mas ?? thumb! Mais informa????es voc?? pode obter no site oficial.
Categorias
dicas dll flash

Flash Control – Componente ASP.NET para Incluir Flash nas P??ginas

Voc?? pode estar se perguntando? Porque usar esse componente ao inv??s de usar embed, object do pr??prio HTML? Bem, abaixo tem uma algumas vantagens de sua utiliza????o:

  • Funciona com o framework 2.0, 3.0, 3.5 e 4.0;
  • Funciona em conjunto com o ASP.NET AJAX;
  • Cross browser;
  • Passagem de vari??veis para o Flash e comunica????o JS, etc.

Essas e outras vantagens o componente lhe d?? para n??o ter dores de cabe??a. O Flash Control ainda lhe resolve o problema do flash sumir quando dado um PostBack. Vamos l??? ?? bem simples seu uso. Primeiro baixe a DLL do componente aqui (h?? 2 vers??es dela: paga e a free – pegue a free). Adicione a DLL FlashControl.dll na pasta Bin de seu projeto. Na p??gina que queira exibir registre a DLL e invoque-a usando os seguintes trechos de c??digos:

<%@ Register Assembly=”FlashControl” Namespace=”Bewise.Web.UI.WebControls” TagPrefix=”Bewise” %>


<Bewise:FlashControl ID=”FlashControlEmbed” runat=”server” MovieUrl=”~/arquivo.swf” BrowserDetection=”False” Height=”200px” Width=”200px” />

Pronto! Mais informa????es e outras op????es (transpar??ncia, FLV, par??metros, etc) podem ser encontradas na p??gina de Faq deles.