1 # ifndef BM_INTERN_H 2 # define BM_INTERN_H 3 4 # include "bitmap.h" 5 6 /************************************************************************/ 7 /* */ 8 /* Byte Masks */ 9 /* */ 10 /************************************************************************/ 11 12 extern unsigned char Bmc1Masks[8]; 13 extern unsigned char Bmc7Masks[8]; 14 15 /************************************************************************/ 16 /* */ 17 /* Routines. */ 18 /* */ 19 /************************************************************************/ 20 21 extern int bmReadTiffFile( const MemoryBuffer * filename, 22 unsigned char ** pBuffer, 23 BitmapDescription * bd, 24 int * pPrivateFormat ); 25 26 extern int bmWriteTiffFile( const MemoryBuffer * filename, 27 const unsigned char * buffer, 28 const BitmapDescription * bd, 29 int privateFormat ); 30 31 extern int bmCanWriteTiffFile( const BitmapDescription * bd, 32 int privateFormat ); 33 34 extern int bmReadBmpFile( const MemoryBuffer * filename, 35 unsigned char ** pBuffer, 36 BitmapDescription * bd, 37 int * pPrivateFormat ); 38 39 extern int bmReadWbmpFile( const MemoryBuffer * filename, 40 unsigned char ** pBuffer, 41 BitmapDescription * bd, 42 int * pPrivateFormat ); 43 44 extern int bmReadIcoFile( const MemoryBuffer * filename, 45 unsigned char ** pBuffer, 46 BitmapDescription * bd, 47 int * pPrivateFormat ); 48 49 extern int bmCanWriteBmpFile( const BitmapDescription * bd, 50 int privateFormat ); 51 52 extern int bmCanWriteWbmpFile( const BitmapDescription * bd, 53 int privateFormat ); 54 55 extern int bmCanWriteIcoFile( const BitmapDescription * bd, 56 int privateFormat ); 57 58 extern int bmWriteBmpFile( const MemoryBuffer * filename, 59 const unsigned char * buffer, 60 const BitmapDescription * bd, 61 int privateFormat ); 62 63 extern int bmWriteWbmpFile( const MemoryBuffer * filename, 64 const unsigned char * buffer, 65 const BitmapDescription * bd, 66 int privateFormat ); 67 68 extern int bmWriteIcoFile( const MemoryBuffer * filename, 69 const unsigned char * buffer, 70 const BitmapDescription * bd, 71 int privateFormat ); 72 73 extern int bmReadXwdFile( const MemoryBuffer * filename, 74 unsigned char ** pBuffer, 75 BitmapDescription * bd, 76 int * pPrivateFormat ); 77 78 extern int bmWriteXwdFile( const MemoryBuffer * filename, 79 const unsigned char * buffer, 80 const BitmapDescription * bd, 81 int privateFormat ); 82 83 extern int bmReadGifFile( const MemoryBuffer * filename, 84 unsigned char ** pBuffer, 85 BitmapDescription * bd, 86 int * pPrivateFormat ); 87 88 extern int bmCanWriteEpsFile( const BitmapDescription * bd, 89 int privateFormat ); 90 91 extern int bmCanWritePdfFile( const BitmapDescription * bd, 92 int privateFormat ); 93 94 extern int bmWriteEpsFile( const MemoryBuffer * filename, 95 const unsigned char * buffer, 96 const BitmapDescription * bd, 97 int privateFormat ); 98 99 extern int bmWritePdfFile( const MemoryBuffer * filename, 100 const unsigned char * buffer, 101 const BitmapDescription * bd, 102 int privateFormat ); 103 104 extern int bmReadJpegFile( const MemoryBuffer * filename, 105 unsigned char ** pBuffer, 106 BitmapDescription * bd, 107 int * pPrivateFormat ); 108 109 extern int bmReadXbmFile( const MemoryBuffer * filename, 110 unsigned char ** pBuffer, 111 BitmapDescription * bd, 112 int * pPrivateFormat ); 113 114 extern int bmCanWriteXbmFile( const BitmapDescription * bd, 115 int privateFormat ); 116 117 extern int bmWriteXbmFile( const MemoryBuffer * filename, 118 const unsigned char * buffer, 119 const BitmapDescription * bd, 120 int privateFormat ); 121 122 extern int bmCanWriteWmfFile( const BitmapDescription * bd, 123 int privateFormat ); 124 125 extern int bmWriteWmfFile( const MemoryBuffer * filename, 126 const unsigned char * buffer, 127 const BitmapDescription * bd, 128 int privateFormat ); 129 130 extern int bmReadPngFile( const MemoryBuffer * filename, 131 unsigned char ** pBuffer, 132 BitmapDescription * bd, 133 int * pPrivateFormat ); 134 135 extern int bmWritePngFile( const MemoryBuffer * filename, 136 const unsigned char * buffer, 137 const BitmapDescription * bd, 138 int privateFormat ); 139 140 extern int bmReadXpmFile( const MemoryBuffer * filename, 141 unsigned char ** pBuffer, 142 BitmapDescription * bd, 143 int * pPrivateFormat ); 144 145 extern int bmCanWriteXpmFile( const BitmapDescription * bd, 146 int privateFormat ); 147 148 extern int bmWriteXpmFile( const MemoryBuffer * filename, 149 const unsigned char * buffer, 150 const BitmapDescription * bd, 151 int privateFormat ); 152 153 extern int bmReadPbmFile( const MemoryBuffer * filename, 154 unsigned char ** pBuffer, 155 BitmapDescription * bd, 156 int * pPrivateFormat ); 157 158 extern int bmCanWritePbmFile( const BitmapDescription * bd, 159 int privateFormat ); 160 161 extern int bmWritePbmFile( const MemoryBuffer * filename, 162 const unsigned char * buffer, 163 const BitmapDescription * bd, 164 int privateFormat ); 165 166 extern int bmFillBlock( unsigned char * buffer, 167 int x0, 168 int y0, 169 int x1, 170 int y1, 171 int bytesPerRow ); 172 173 extern unsigned char * bmBackgroundBuffer( int bufferLength, 174 int colorEncoding ); 175 extern unsigned char * bmForegroundBuffer( int bufferLength, 176 int colorEncoding ); 177 178 extern int bmMakeGrayPalette( 179 const BitmapDescription * bd, 180 int * pColorCount, 181 int * pTransparentColor, 182 RGB8Color * palette, 183 int maxColors ); 184 185 extern int bmInflateTo8bit( unsigned char * to, 186 const unsigned char * from, 187 const BitmapDescription * bd, 188 int trnsC, 189 int remA ); 190 191 extern int bmInflateToInt( unsigned int * to, 192 const unsigned char * from, 193 const BitmapDescription * bd, 194 int trnsC, 195 int remA ); 196 197 extern int bmInflateTo8bitGray( 198 unsigned char * to, 199 const unsigned char * from, 200 int bitsPerPixel, 201 int pixelsWide ); 202 203 extern int bmMakeMonochrome( BitmapDescription * bd, 204 unsigned char * buffer ); 205 206 extern int bmPlanarToChunky( unsigned char * to, 207 const unsigned char * from, 208 const BitmapDescription * bd ); 209 210 extern int bmPaletteColor( BitmapDescription * bd, 211 int r, 212 int g, 213 int b, 214 int a ); 215 216 # endif /* BM_INTERN_H */ 217