Gde je greska?

Zeppelin

Početnik
Poruka
3
Program za zamenu plave boje crvenom:

#include <stdio.h>
main()
{
FILE *fp1,*fp2;
int c,n,m,l,d;
fp1=fopen("c:\slika.jpg","rb");
fp2=fopen("c:\slika2.jpg","wb");
for (n=1;n<119;n++)
putc(fgetc(fp1),fp2);
for (n=479;n>=0;--n)
{
for (m=319;m>=0;--m)
{
c=fgetc(fp1);
l=c/16;
d=c-(l*16);
if(l==4)l=1;if(l==0xc)l=0x9;
if(d==4)d=1;if(d==0xc)d=0x9;
c=l*16+d;
putc(c,fp2);
}}
fclose(fp1);fclose(fp2);}

Gde sam pogresio?
 
u jpeg formatu plava boja nije bas plava vec na svakom n-tom pixelu varira nijansa, tako da sa tim sistemom, koliko sam ja razumeo, bi morao da menjas malo vise boja od ciste plave, a sto se formata tice, ne bi trebalo da je velika razlika...
:mrgreen:
 
jpeg je sam po sebi mutan... tako da... ne bih pokusavao nikakvu konverziju boja u jpeg formatu....
bolje bitmap (.bmp)...
a sto se tice C++ koda... stvarno ne znam nista u C++-u, programiram u VB-u i HTML-u(Naravno uz to ide i malo JavaScript-a, PHP-a i CSS-a.).
 
Zeppelin:
Program za zamenu plave boje crvenom:

#include <stdio.h>
main()
{
FILE *fp1,*fp2;
int c,n,m,l,d;
fp1=fopen("c:\slika.jpg","rb");
fp2=fopen("c:\slika2.jpg","wb");
for (n=1;n<119;n++)
putc(fgetc(fp1),fp2);
for (n=479;n>=0;--n)
{
for (m=319;m>=0;--m)
{
c=fgetc(fp1);
l=c/16;
d=c-(l*16);
if(l==4)l=1;if(l==0xc)l=0x9;
if(d==4)d=1;if(d==0xc)d=0x9;
c=l*16+d;
putc(c,fp2);
}}
fclose(fp1);fclose(fp2);}

Gde sam pogresio?


ako znas kako da citas i pises u jpg ok , ( mislim da nije prosto rgb , vec je spakovano, za sirovu sliku koristi tga ili png ( kompresovana bez gubitaka)).

png i jpg :

Kod:
#using <mscorlib.dll>
#using <System.dll>

using namespace System;

#using <System.Drawing.dll>
using namespace System::Drawing;


int main()
{
    

    
	try
	{
		Image* image = Image::FromFile(S"largepicture.jpg");
            image->Save("slika.png",Imaging::ImageFormat::Png);
            Image* thumbnail = image->GetThumbnailImage(100,100,0,0);
        	thumbnail->Save(S"thumbnail.jpg",Imaging::ImageFormat::Jpeg);
        	Console::WriteLine(S"Thumbnail created");
	}
	catch (Exception* e)
	{
		// out of memory exception thrown for bad format
        	Console::WriteLine(S"Image file not found or invalid format");
        	Console::WriteLine(e->Message);
	}

   

    return 0;
}

ovo je prost kod u .net frameworku koji smanji jpg sliku , npr.

mozda ce ovo pomoci.
 

Back
Top