コード例 #1
0
ファイル: vipspng.c プロジェクト: ChiaraCaiazza/collageMaker
int
vips__png_ispng( const char *filename )
{
	unsigned char buf[8];

	return( vips__get_bytes( filename, buf, 8 ) &&
		vips__png_ispng_buffer( buf, 8 ) ); 
}
コード例 #2
0
ファイル: vipspng.c プロジェクト: binarytemple/debian-vips
int
vips__png_ispng( const char *filename )
{
	unsigned char buf[8];

	return( vips__get_bytes( filename, buf, 8 ) &&
		!png_sig_cmp( buf, 0, 8 ) );
}
コード例 #3
0
ファイル: webp2vips.c プロジェクト: gargsms/libvips
int
vips__iswebp( const char *filename )
{
	unsigned char header[MINIMAL_HEADER];

	if( vips__get_bytes( filename, header, MINIMAL_HEADER ) &&
		vips__iswebp_buffer( header, MINIMAL_HEADER ) )
		return( 1 );

	return( 0 );
}
コード例 #4
0
ファイル: pdfload.c プロジェクト: ChiaraCaiazza/collageMaker
static gboolean
vips_foreign_load_pdf_is_a( const char *filename )
{
	unsigned char buf[4];

	if( vips__get_bytes( filename, buf, 4 ) &&
		vips_foreign_load_pdf_is_a_buffer( buf, 4 ) )
		return( 1 );

	return( 0 );
}
コード例 #5
0
ファイル: webp2vips.c プロジェクト: binarytemple/debian-vips
int
vips__iswebp( const char *filename )
{
	unsigned char header[MINIMAL_HEADER];

	if( vips__get_bytes( filename, header, MINIMAL_HEADER ) &&
		WebPGetInfo( header, MINIMAL_HEADER, NULL, NULL ) )
		return( 1 );

	return( 0 );
}
コード例 #6
0
ファイル: jpeg2vips.c プロジェクト: jieah/libvips
int
vips__isjpeg( const char *filename )
{
    unsigned char buf[2];

    if( vips__get_bytes( filename, buf, 2 ) )
        if( (int) buf[0] == 0xff && (int) buf[1] == 0xd8 )
            return( 1 );

    return( 0 );
}
コード例 #7
0
ファイル: vips.c プロジェクト: sepastian/libvips
guint32
vips__file_magic( const char *filename )
{
	guint32 magic;

	if( vips__get_bytes( filename, (unsigned char *) &magic, 4 ) &&
		(magic == VIPS_MAGIC_INTEL || 
		 magic == VIPS_MAGIC_SPARC ) )
		return( magic );

	return( 0 );
}
コード例 #8
0
ファイル: ppm.c プロジェクト: FlavioFalcao/libvips
int
vips__ppm_isppm( const char *filename )
{
	VipsPel buf[3];

	if( vips__get_bytes( filename, buf, 2 ) ) {
		int i;

		buf[2] = '\0';
		for( i = 0; i < VIPS_NUMBER( magic_names ); i++ )
			if( strcmp( (char *) buf, magic_names[i] ) == 0 )
				return( TRUE );
	}

	return( 0 );
}
コード例 #9
0
ファイル: webp2vips.c プロジェクト: binarytemple/debian-vips
static Read *
read_new( const char *filename, void *buf, size_t len )
{
	Read *read;
	unsigned char header[MINIMAL_HEADER];

	if( !(read = VIPS_NEW( NULL, Read )) )
		return( NULL );

	read->filename = g_strdup( filename );
	read->buf = buf;
	read->len = len;
	read->idec = NULL;

	WebPInitDecoderConfig( &read->config );
	if( filename ) {
		if( vips__get_bytes( filename, header, MINIMAL_HEADER ) &&
			WebPGetFeatures( header, MINIMAL_HEADER, 
				&read->config.input ) != VP8_STATUS_OK ) {
			read_free( read );
			return( NULL );
		}
	}
	else {
		if( WebPGetFeatures( read->buf, read->len, 
			&read->config.input ) != VP8_STATUS_OK ) {
			read_free( read );
			return( NULL );
		}
	}

	if( read->config.input.has_alpha )
		read->config.output.colorspace = MODE_RGBA;
	else
		read->config.output.colorspace = MODE_RGB;
	read->config.options.use_threads = TRUE;

	return( read );
}