Exemple #1
0
int main (int argc, const char * argv[])
{    
    if (argc < 3) {
        printf("Usage: asciigenerator input.bmp definition.txt [grid size]\n");
        exit(EXIT_SUCCESS);
    }
    
    const char * inputFile = argv[1];
    const char * definitionsFile = argv[2];
        
    treeRoot = createTreeFromFile(definitionsFile);
       
    int width = 0;
    int height = 0;
    int rowSize = 0;
     
    unsigned char * bmpData = createBitmapData(inputFile, &width, &height, &rowSize);
    int gridCols = 1;
    int gridRows = 1;
    if (argc == 5) {
        gridCols = atoi(argv[3]);
        gridRows = atoi(argv[4]);
    }
   
    calculateGrid(bmpData, gridCols, gridRows, width, height, treeRoot);
    
    free(bmpData);
    destroyTree(treeRoot);
    
    return 0;
}
Exemple #2
0
int saveMMBitmapAsBMP(MMBitmapRef bitmap, const char *path)
{
	FILE *fp;
	size_t dataLen;
	uint8_t *data;

	if ((fp = fopen(path, "wb")) == NULL) return -1;

	if ((data = createBitmapData(bitmap, &dataLen)) == NULL) {
		fclose(fp);
		return -1;
	}

	if (fwrite(data, dataLen, 1, fp) == 0) {
		free(data);
		fclose(fp);
		return -1;
	}

	free(data);
	fclose(fp);
	return 0;
}