示例#1
0
        public Gdk.Pixbuf pixbufExtensao(List <Extensao> lista,
                                         string nomeExtensao)
        {
            byte[] arquivoGIF;
            nomeExtensao = Rotinas.SubString(nomeExtensao,
                                             Rotinas.LastDelimiter(".", nomeExtensao) + 1,
                                             nomeExtensao.Length);

            foreach (Extensao extensao in lista)
            {
                if (extensao.Nome.Trim().ToLower().Equals(
                        nomeExtensao.Trim().ToLower()))
                {
                    arquivoGIF = Rotinas.BmpParaImagem(
                        extensao.Bmp16, Rotinas.EXTENSAO_GIF);
                    return(Rotinas.byteArrayToPixbuf(arquivoGIF));
                }
            }
            return(Rotinas.LerArquivoPixbuf("arquivo.gif"));;
        }
        public bool ExportarExtensao(TipoExportarExtensao tipo,
                                     List <Extensao> listaExtensao)
        {
            string sCaminho, sImg16, sImg32, sExtensao;

            if (listaExtensao.Count > 0)
            {
                sCaminho = Rotinas.ExtractFilePath(Application.ExecutablePath) +
                           Rotinas.BARRA_INVERTIDA;

                if (tipo == TipoExportarExtensao.teBMP)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_BMP;
                }
                else if (tipo == TipoExportarExtensao.teICO)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_ICO;
                }
                else if (tipo == TipoExportarExtensao.teGIF)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_GIF;
                }
                else if (tipo == TipoExportarExtensao.teJPG)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_JPEG;
                }
                else if (tipo == TipoExportarExtensao.tePNG)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_PNG;
                }
                else if (tipo == TipoExportarExtensao.teTIF)
                {
                    sExtensao = "." + Rotinas.EXTENSAO_TIFF;
                }
                else
                {
                    sExtensao = ".img";
                }

                foreach (Extensao extensao in listaExtensao)
                {
                    sImg16 = sCaminho + extensao.Nome + "16" + sExtensao;
                    if (Rotinas.FileExists(sImg16))
                    {
                        Rotinas.DeleteFile(sImg16);
                    }

                    sImg32 = sCaminho + extensao.Nome + "32" + sExtensao;
                    if (Rotinas.FileExists(sImg32))
                    {
                        Rotinas.DeleteFile(sImg32);
                    }

                    switch (tipo)
                    {
                    case TipoExportarExtensao.teBMP: {
                        Rotinas.SaveToFile(extensao.Bmp16, sImg16);
                        Rotinas.SaveToFile(extensao.Bmp32, sImg32);
                    }
                    break;

                    case TipoExportarExtensao.teICO: {
                        if (extensao.Bmp16 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp16,
                                                      Rotinas.EXTENSAO_ICO), sImg16);
                        }
                        if (extensao.Bmp32 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp32,
                                                      Rotinas.EXTENSAO_ICO), sImg32);
                        }
                    }
                    break;

                    case TipoExportarExtensao.teGIF: {
                        if (extensao.Bmp16 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp16,
                                                      Rotinas.EXTENSAO_GIF), sImg16);
                        }
                        if (extensao.Bmp32 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp32,
                                                      Rotinas.EXTENSAO_GIF), sImg32);
                        }
                    }
                    break;

                    case TipoExportarExtensao.teJPG: {
                        if (extensao.Bmp16 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp16,
                                                      Rotinas.EXTENSAO_JPEG), sImg16);
                        }
                        if (extensao.Bmp32 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp32,
                                                      Rotinas.EXTENSAO_JPEG), sImg32);
                        }
                    }
                    break;

                    case TipoExportarExtensao.tePNG: {
                        if (extensao.Bmp16 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp16,
                                                      Rotinas.EXTENSAO_PNG), sImg16);
                        }
                        if (extensao.Bmp32 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp32,
                                                      Rotinas.EXTENSAO_PNG), sImg32);
                        }
                    }
                    break;

                    case TipoExportarExtensao.teTIF: {
                        if (extensao.Bmp16 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp16,
                                                      Rotinas.EXTENSAO_TIFF), sImg16);
                        }
                        if (extensao.Bmp32 != null)
                        {
                            Rotinas.SaveToFile(
                                Rotinas.BmpParaImagem(extensao.Bmp32,
                                                      Rotinas.EXTENSAO_TIFF), sImg32);
                        }
                    }
                    break;
                    }
                }
                return(true);
            }
            return(false);
        }