Forum > Graphics

Esempio per la manipolazione JPG

(1/1)

xinyiman:
Ciao a tutti, nel tempo libero ho cerato un esempio per la manipolazione delle immagini JPEG con lazarus.

Trovate il repository qui: https://github.com/XinYiMan/laz_split_image

L'esempio dimostra due cose

1. Come splittare un immagine in 4 sottoimmagini (ma il 4 può variare in base a come programmate la vostra versione), trovate questa funzionalità nella schermata principale. Qui premete sul pulsante con i 3 puntini e scegliete un file jpeg. Vedrete l'immagine intera e sotto un parziale dell'immagine, se premete sui pulsanti "<<" e ">>" vi sposterete tra i parziali dell'immagine originale. Mentre se premete sul pulsante "Merge" ricomporrà l'immagine originale a partire dai parziali.

2. Come trovare le differenze tra due immagini con stessa dimensione, per provare questa funzionalità dovete premere sul pulsante "Show 2", che aprirà una seconda finestra. Qui dovete cliccare "Load img 1" e dopo "Load img 2", che caricheranno le due immagini da cui estrapolare le differenze. Fatto questo premete il pulsante "Get Difference" e comparirà una terza immagine dove vedrete i pixel diversi tra immagine1 e immagine2. Mentre con "Save To File" salverete la risultante su file system.

Mi scuso per la scarsa qualità dell'iterazione, ma è solo un esempio.



DragoRosso:
Perchè limitarsi ad una immagine Jpeg ?

Se apri un file grafico qualsiasi supportato dalla LCL, basta usare la sua rappresentazione BitMap, che comunque usi "nascosta" quando fai lo scanline sul JPEG, e ottieni lo stesso risultato.

Di fatto JPEG, PNG, TIF, WEBP, e qualsiasi altro hanno in comune la bitmap (che è la rappresentazione "visibile" del formato proprietario).

In Lazarus, il contesto BitMap viene spesso chiamato RAW, ma è esattamente la stessa identica cosa.

Ciao

xinyiman:

--- Citazione da: DragoRosso - Novembre 02, 2023, 03:07:01 pm ---Perchè limitarsi ad una immagine Jpeg ?

Se apri un file grafico qualsiasi supportato dalla LCL, basta usare la sua rappresentazione BitMap, che comunque usi "nascosta" quando fai lo scanline sul JPEG, e ottieni lo stesso risultato.

Di fatto JPEG, PNG, TIF, WEBP, e qualsiasi altro hanno in comune la bitmap (che è la rappresentazione "visibile" del formato proprietario).

In Lazarus, il contesto BitMap viene spesso chiamato RAW, ma è esattamente la stessa identica cosa.

Ciao

--- Termina citazione ---

Si è vero.

Navigazione

[0] Indice dei post

Vai alla versione completa