Jeg er igang med at lave en spillekort klasse. Jeg har nogle jpeg filer, som er billeder af forskellige kort. Men jeg skal et array af billeder. Hvordan finder jeg den data type. I C# sharp ville man kunne gemme dem som images? Håber i kan forstå, hvad jeg mener
Jeg bruger MFC, det må da indeholde nogle billed typer. Men vil gerne holde denne klasse uafhængig af MFC, så den kunne bruges i andre projekter, hvor jeg ikke bruger det. Forstår ikke helt, hvordan at man kan gemme dem som chars. Har du et link til et eller andet, eller kan du lave et hurtigt eksempel?
Har haft lidt travlt, så har ikke haft tid til at kigge på det igen, før nu altså. Sorry. Jeg har haft kigget på dit JDraw, hvor du benytter "Independent JPEG Group's free JPEG software". For at vise billeder i min dialog, så skal jeg vel bruge deres bibliotek? Og selv skrive en klasse, som kan indeholde billederne?
.zip filen indeholder alt det du skal bruge, inklusive "Independent JPEG Group's free JPEG software", der bliver til en dll.
I filen image.h er der en class der hedder ImageClass, denne indeholder et billede og funktioner til at læse og skrive billedet, samt simple manipulationer som f.eks. at ændre størrelse.
Du kan så lave et class til at indholde en række billeder eller du kan bruge en std::vector eller std::list
Får en lang liste af fejl, når jeg tilføjer image.h, image.cpp, drawstd.h. Jeg bruger VC++
Warning 1 warning C4627: '#include "drawstd.h"': skipped when looking for precompiled header use c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 1 Algoritmer Warning 2 warning C4627: '#include <utility>': skipped when looking for precompiled header use c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 2 Algoritmer Warning 3 warning C4627: '#include <algorithm>': skipped when looking for precompiled header use c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 3 Algoritmer Warning 4 warning C4627: '#include "image.h"': skipped when looking for precompiled header use c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 4 Algoritmer
Det er mig der husker forkert, det er et lib den laver. Et lib er ikke det samme som en dll.
Fejlen tyder på at du bruge precompiled headers. Så du skal nok tilføje: #include <stdafx.h> Som det første i .cpp filerne. Jeg kan ikke huske om det er stdafx.h, men det er den samme fil som dine andre .cpp filer inkluderer som det første.
Ja, det hjalp lidt på det. Men der er stadig nogle fejl.
Warning 1 warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 20 Algoritmer Warning 2 warning C4244: '=' : conversion from 'uint16_t' to 'uint8_t', possible loss of data c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 93 Algoritmer Warning 3 warning C4244: '=' : conversion from 'uint16_t' to 'uint8_t', possible loss of data c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 123 Algoritmer Warning 4 warning C4996: '_splitpath': This function or variable may be unsafe. Consider using _splitpath_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 248 Algoritmer Warning 5 warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details. c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 249 Algoritmer Warning 6 warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. c:\Documents and Settings\Alex Sleiborg\Skrivebord\jdraw2\image.cpp 436 Algoritmer Error 7 error LNK2001: unresolved external symbol "int __cdecl ReadJpegFile(char const *,unsigned int * * &,int &,int &,bool &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?ReadJpegFile@@YAHPBDAAPAPAIAAH2AA_NAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) image.obj Algoritmer Error 8 error LNK2001: unresolved external symbol "void __cdecl WriteJpegFile(char const *,unsigned int * * &,int &,int &,int)" (?WriteJpegFile@@YAXPBDAAPAPAIAAH2H@Z) image.obj Algoritmer Error 9 fatal error LNK1120: 2 unresolved externals C:\Documents and Settings\Alex Sleiborg\Dokumenter\universitet\Algorithms and Data Structures\Algoritmer\Release\Algoritmer.exe 1 Algoritmer
Sorry for den langsome respons, men har haft travlt med alt muligt andet. Jeg er gået over til at bruge qt i stedet for MFC. Og bliver i stedet laver jeg en app til linux, egentlig bare for at lære lidt c++ og bruge QT framework. Jeg er igang med at lave en spillekort klasse, den er langt fra færdig og der mangler en masse, men prøv at se bort fra det. Jeg prøver at lave klassen sådan at jeg kan oprette et kort objekt fra min widget af, og kalde en display(posX,posY,sizeWidth,sizeHeight) funktion, som tager position og størrelsen som billedet skal være. Men synes jeg har lidt svært ved at komme igang, jeg har copy pastet noget kode som jeg har fundet og sat ind. Men det er ikke gjort rigtigt. Kan du lave den show funktion? Og er det den rigtige måde at lave det på?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.