Executando verificação de segurança...
1

API para converter imagens

Gostaria de aumentar meu Portfólio

Estava procurando algum projeto para fazer afim de adicioná-lo ao meu portfólio, dai precisei converter umas fotos para outros arquivos, e quando converti algumas, me deparei com o pop-up de pagamentos, ou seja, não daria pra converter mais imagens, teria que buscar outro site de conversor, ai surgiu a minha ideia de criar a minha própria API de conversor de imagens, BRILHANTE!

Ideia GENIAL

Mataria vários cajados com uma coelhada só (converta essa string) e ainda daria pra usar a mesma estratégia e fazer uma graninha por cima, legal, mas ai que vem o problema....

O início!

Já faz alguns anos que iniciei nessa área da programação, entre muita dedicação no início e as frustrações de não conseguir nada na área, os projetos inacabados, a enxurrada de material e de coisas pra estudar, a falta de direcionamento, entre outros... Comecei estudando Java, consegui o curso da Capgemini, estudei tudo o que era proposto lá, dai veio o front end, tive que estudar por fora por que o conteúdo era um LIXO, estudei Angular e detestei, e fui pro React, quem não gosta né? Dai me apaixonei pelo Front mas ainda gosto de fazer aplicações full-stack com o lindo do NextJS.

A barreira mais comum?!

Depois de aprender bastante coisa e já conseguir fazer alguns projetos por conta própria, veio aquele terrível dilema, a saída do famigerado TUTORIAL HELL... após surgir o projeto que poderia ser algo sólido na minha "carreira", veio o problema que eu acredito que muitos passam: E agora? Por onde eu começo? NÃO SEI FAZER NADA POR CONTA PRÓPRIA!!! Entendo da lógica, entendo dos paradigmas de Orientação a Objetos e das ferramentas que o Java oferece, mas por que eu não sei fazer NADA?

Basta ler a documentação meu filho

Beleza, to vendo a documentação do java mas não me ajudou em nada, não faço ideia de onde começar sem ter algum video de tutorial pra isso, como vou progredir como programador? Já sou formado e me sinto um girino, eu me viro bem no Front e gosto muito, mas também preciso de mais projetos, estou trabalhando em um como free-lancer mas sozinho terei muito trabalho pra fazer uma página de vendas, mas eu vou conseguir, o problema é quando não consigo fazer nem algo "simples" na parte do back, o que eu também curto fazer.

A grande dúvida

O que eu faço? alguém tem alguma dica pra eu começar a pesquisar nessa parte de conversão de imagens? Ficaria grato com sugestões ou um norte, eu vi que os arquivos em jpeg com 40mb chegam a ficar com 15mb ao converter pra SVG, como iniciar esse projeto?

Carregando publicação patrocinada...
2

Só começa mano. Usa o gpt pra começar e depois vai tentando entender o código que ele te dá. Esteja ciente que vai levar muito tempo.

Mas uma dica... É impossível converter de jpeg para SVG, são dois tipos de imagem totalmente diferente. Talvez você deva começar por aí... veja como é converter imagem e etc, deve ter uma biblioteca pra isso. E tem

Provavelmente você não sabe fazer nada por conta própria porque entender a linguagem não é o mesmo que entender o que você quer fazer, e como fazer. Você pode conhecer como funciona cada aspecto do java e todas as funções que ele tem por padrão, mas -e peço perdão pelo exemplo- você sabe inverter uma árvore binária em java?

Só não tenta reinventar a roda - Implementar esses algorítmos de conversão de imagem deve ser bem complicado. boa sorte

0

Boa, muito obrigado pela dica, não sabia que tinha a biblioteca no Java, ainda tenho muita dificuldade pra saber onde achar bibliotecas que fazem o que eu preciso mas já ajudou bastante!

1

Olha, não existe passo-a-passo de como fazer qqr software. Mtos delas as pessoas fazem, mas só mostram o produto final, afinal é assim q acontece na grande parte do software. Alguns são disponíveis através de open-source ou exemplos, mas normalmente são projetos simples. E tbm tem as bibliotecas prontas q dá pra vc usar.

Então se quiser aprender algo, vc precisa de 2 coisas: Aprender a correr atrás das informações e aprender como funciona aquilo q vc quer produzir.

Correr atrás das informações é mais fácil q vc imagina, ainda mais hj q temos a IA para facilitar isso, mas dá pra usar o google e até o github. Vc busca por projetos colocando na pesquisa as linguagens + sobre o q se trata e sempre usando palavras chaves sobre o q vc busca. Um exemplo bem simples: "java convert png jpeg". Nem sempre pode aparecer o q vc quer, ai vc vai adicionando mais palavras chaves ou especializando o conteúdo, por exemplo, "java convert library png jpeg". E assim por diante.

Sobre aprender como funciona, irei usar o comentário do fortmea como exemplo. Vc sabe exatamente o q é um arquivo jpeg? Vc sabe exatamente o q é um arquivo svg? Vc já "entrou" dentro dele? Tipo, abrir o arquivo em um notepad ou até em uma IDE? Dá uma fuçada nisso. Não adianta mto tentar fazer algo se vc nem entende o q é o produto. É tipo cozinhar, quero fazer um bolo, mas eu nem sei q nada sobre os ingredientes q precisa para fazer ele. Vc não precisa saber tudo sobre os ingredientes, mas precisa ter ideia de como eles são, por exemplo, bem por cima: farinha é pra dar volume, ovo serve pra dar liga na massa, açúcar deixará o bolo mais doce, etc. Então assim, vc quer fazer um conversor de imagens aprenda sobre as imagens tbm.

Por exemplo, jpeg e png são um tipo de imagens pixeladas (rasterizado). Já o svg e cdr são imagens vetoriais. As conversões de imagem vetoriais para pixelados e vice-versa é possível acontecer, MASSSSSSSS, vc irá perder qualidade nesse processo dependendo de como vc configurar. Só lembrando q pixelados para vetorial perde mta qualidade dependendo do tipo de desenho (veja no exemplo abaixo). Ai entra mais da parte da teoria de como é construído cada tipo de arquivo de imagem. Vale a pena dar uma pesquisada nisso.

Uma coisa q recomendo tbm é dar uma fuçada no software de desenho em si. Pesquisa pelo Inkscape. Eu amo ele, pois é gratuito e dá pra fazer desenho vetorial nele. Desenha alguma imagem lá, depois procura por exportar, coloque para ser png e compara a qualidade entre eles.
Outro teste q vc pode fazer é pegar uma imagem jpg e importar para dentro do Inkscape. Selecione a imagem, vai em Path > Trace to Bitmap. Ai só seguir o passo-a-passo pra vc ver. Nesse teste use 2 imagens, uma de um desenho, tipo squirtle, e outro de uma foto real. Vc vai ver o nível de conversão de cada um. Só um spoiler, a diferença e gritante.
Outro teste é vc tentar exportar a imagem jpeg q está dentro do inkscape em imagem svg, vc vai achar q o svg gerado é uma imagem vetorial e com detalhes 100% perfeitos. Pra saber o q realmente aconteceu, abra a imagem com notepad e olhe o como ficou o arquivo svg e tire suas conclusões se realmente é uma conversão válida ou não.

No final eu acabei extendendo o comentário e explicando um monte de coisas, ahahahah. Queria deixar pra vc aprender a pesquisar, mas acabei dando dicas sobre imagens, pois tenho conhecimento intermediário dessa parte de imagens vetoriais e gosto de usar o Inkscape.

Mas assim, pra tudo vc tem q pesquisar. Nada vem de mão beijada, e se tem algo pronto, ele está lá em algum canto da internet. Vai testando palavras chaves q alguma hora vc encontra algo legal. Não existe uma receita para dizer o q vc deve escrever, simplesmente vai lá e teste várias palavras q uma hora vc vai começar a ter o feeling de quais são as melhores para retornar o q vc quer.

Boa sorte ai no seu projeto.