Adding PNG image to Flash movie using SWF Scout SDK in Visual C++
Submitted by eLenka on 7 July, 2011 - 11:37
The sample shows how to add PNG image to the generated SWF Flash animation using SWF Scout SDK in Visual C++.
Source Code:
// HelloWorld.cpp : Defines the entry point for the console application. // #include "stdafx.h" #import "SWFScout.tlb" using namespace SWFScout; #import "SWFScoutImgAddon.dll" using namespace SWFScoutImgAddon; int main(int argc, char* argv[]) { // initialize OLE HRESULT hr = CoInitialize(NULL); // check for errors if (FAILED(hr)) { MessageBox(0,"OLE initialization errp","error",MB_OK); return -1; } // declare SWFScout object IFlashMovie* Movie = NULL; CLSID clsid; // get inuque ID for IFlashMovie interface hr = CLSIDFromProgID(OLESTR("SWFScout.FlashMovie"), &clsid); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't get CLSID for interface","error",MB_OK); return -1; //goto Uninit; }; // create FlashMovie object hr = CoCreateInstance(clsid, NULL, CLSCTX_ALL,__uuidof(IFlashMovie), (LPVOID*)&Movie); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't create Movie object","error",MB_OK); return -1; //goto Uninit; } IImageLoader* ImgAddon = NULL; CLSID clsidImgAddon; // get inuque ID for SWFScoutImgAddon.IImageLoader interface hr = CLSIDFromProgID(OLESTR("SWFScoutImgAddon.ImageLoader"), &clsidImgAddon); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't get CLSID for ImgAddon interface","error",MB_OK); return -1; //goto Uninit; }; // create ImgAddon object hr = CoCreateInstance(clsidImgAddon, NULL, CLSCTX_ALL,__uuidof(IImageLoader), (LPVOID*)&ImgAddon); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't create ImgAddon object","error",MB_OK); return -1; //goto Uninit; } // initialize library Movie->InitLibrary("demo", "demo"); // start movie generation Movie->BeginMovie(0,0,640,480,sscPix, 12,6); // start document generation ImgAddon->ConnectToSWFLibrary (Movie); int Image = ImgAddon->AddImageFromFileNameEx ("c:\\sample.png"); ImgAddon->DisconnectFromSWFLibrary(); // Movie->IMAGE_ConvertToJPEG(75); // set forced JPEG format Movie->PlaceImage(Image, Movie->CurrentMaxDepth); Movie->ShowFrame(10); // show 10 frames Movie->EndMovie(); // end movie generation Movie->SaveToFile("c:\\TestPNG.swf"); // save generated SWF into file // disconnect from library Movie->Release(); ImgAddon->Release(); // uninitialize OLE libraries Uninit: CoUninitialize(); return 0;