[RESOLVIDO] Inserir dados em imagem

Bom dia a todos!
Estou desenvolvendo um sistema para o Instituto Médico Legal (IML) do meu Estado, a lógica e regra de negócio esta tudo bem, mais preciso saber como criar uma imagem ilustrativa do corpo humano onde o legista pode sinalizar a causa da morte.
Exemplo: na imagem do corpo humano (ilustrada) ele pode circular ou marcar ou as lesões, e salvar no banco de dados a informação.
Não tenho ideia de como fazer isso, se tem alguma biblioteca que eu possa integrar no sistema ou algo semelhante.
Desde já agradeço a todos!

crie uma tabela html com a imagem do corpo humano em background, com células de 1px ou 2px.
no clique na celula vc troca a cor de fundo de fundo por uma cor selecionada com uma opacidade 0,5 (por exemplo).

Isso te dará o efeito de estar marcando uma área da imagem.

2 Curtidas

Haroldo obrigado por responder!
No caso essa tabela eu crio no meu banco sql?
Como seria essas células?
Seria pedir muito um exemplo, ou onde posso pesquisar?
Desde já agradeço.

Me refiro a tabela html, nada a ver com banco de dados.

Eu teria que montar um exemplo.

2 Curtidas

A sim!
Entendi tabela html com tags tr e td.
Se tiver tempo e se for possível um exemplo para eu ter um norte, ou resto eu pesquiso.
Ficarei muito agradecido, pois parece que tem só você nesse fórum que esta disposto a dividir o conhecimento.

Temos muitos colegas que dão ajudas consistentes.

É que dependendo do assunto fica mais complexo a ajuda.

1 Curtida

Eu entendo!
Estou tentando fazer em Java script e html, a mesma função para assinaturas, acho que vai dar certo.
Mais se tiver alguma sugestão melhor fico agradecido, fico no aguardo.
Se der certo eu compartilho com o pessoal.

Existem outras formas mas a programação acaba sendo mais complexa.

1 Curtida

Para Firmas, SCriptCase tiene un campo para ello, no requiere sino el campo en la base de datos.

Esse é um exemplo bem básico, apenas para ilustrar e levar a um caminho à solucionar seu problema.
Só demonstro a marcação da imagem.
A resolução da célula está em 3px de largura e altura.
A imagem é apenas ilustrativa e segue controle de direitos autorais, por isso as marcas d’água e foi obtida em:

Agora é só salvar as coordenadas pintadas com js e salvar numa tabela essas posições.
É possível gerar pdf da imagem pintada.
É possível gerar uma legenda de cores e selecionar a cor e atribuir um texto a cada cor.
Vantagem, vc salva no banco de dados somente o id dos elementos das células marcadas em vez de guardar toda uma imagem píntada.
O mesmo esquema pode ser usado para odontograma, sinistro veicular, Ordem de Serviços veicular, OS de Estética, Reservas de passagens de Ônibus/Aviação, Reservar de Auditórios, Teatros e Salas de Cinema, entre outros.

A imaginação é o limite.

Demonstrando na prática:
https://dev.iwh.tec.br/scriptcase/control_marcando_imagem/

Código:
Aplicação do tipo controle.
Criar campo de nome imagem do tipo manual (virtual).
onload:

sc_include_library('grp','ActionsMaster','class/IWDataGrid.class.php');
//1024 x 991  <--- tamanho da imagem
//512 x 495   <--- dividido por 2
//341 x 330  <--- dividido por 3
$imgWidth = 1024;
$imgHeight = 991;
$px     = 5;
$colunas  = round(($imgWidth/$px), 0);
$linhas	= round(($imgHeight/$px), 0);
//echo $colunas.'x'.$linhas;
$imgSrc = '../_lib/img/istockphoto-1371784448-1024x1024.jpg';

$dg = new Actions\IWDataGrid($colunas);
$dg->setProperty('containerId: divImg');
$dg->setStyle('Table','background',"$imgSrc");
$dg->setStyle('Table','border','0');
$dg->setStyle('Table','cellpadding','0');
$dg->setStyle('Table','cellspacing','0');
$dg->setStyle('Cell', 'ondragover', "this.style.background='red'");
$dg->setStyle('Cell', 'ondragenter', "this.style.background='red'");
$dg->setStyle('Cell', 'onmousedown', "this.style.background='red'");
$dg->setStyle('Cell', 'style', "cursor:pointer");
$dg->setStyle('Cell', 'style', "width:{$px}px");
$dg->setStyle('Cell', 'style', "height:{$px}px");
for($l = 0; $l < $linhas; $l++) {
	$row = [];
	for($c = 0; $c < $colunas; $c++) {
		$row[] = ' '; 
	}
	$dg->addCell($row);
}
{imagem} = $dg->create();

Donwload Classe IWDataGrid:
https://iwh.tec.br/downloads/IWDataGrid.class.zip
Criar Biblioteca ActionsMaster e descompactar zip na pasta class dessa biblioteca.

TAGS: HAROLDO, PINTAR, DESENHAR, IMAGEM, PHP, JAVSCRIPT, HTML, TABLE, DATAGRID

Avalie:
  • Gostou
  • Não Gostou

0 votantes

3 Curtidas

Para Assinaturas, o ScriptCase possui um campo para isso, apenas requer o campo no banco de dados…

Sim o campo assinatura permite desenho, mas não permite pintar uma imagem.

Existem outros recursos muito mais rebuscados e com maior refinamento, mas aí requer maior tempo de empenho na ajuda, tempo esse que é bastante escasso para mim.

Pode usar canvas do Html5:

ou com canvas e Js:

Mas se observar esses códigos, a complexibilidade aumenta consideravelmente, e a intenção aqui é fazer o mesmo de uma forma simples, a sugestão usa 25 linhas de código para pintar a imagem.

4 Curtidas

Haroldo, você é o cara!!!
É exatamente que eu estava precisando, vou aprimorar e compartilhar com o pessoal do fórum!
Podemos encerrar esse assunto com RESOLVIDO!
Mais uma vez muito obrigado!
O suporte da NetMake, precisa aprender muito com você!!!

1 Curtida

Edite o Título desse post e coloque [RESOLVIDO]

3 Curtidas

Eu fiz um solução exatamente com essa necessidade
Vou ver se encontro e dou mais detalhes

Parabéns Haroldo…
Vou rever o que eu fiz… e rever sua ideia.
Obrigado

1 Curtida

https://iwh.tec.br/scriptcase/control_marcando_imagem/

1 Curtida

Haroldo, gostei da sugestão. Interessante.

1 Curtida