Win32.GUI.BitmapInline man page on Cygwin

Man page or keyword search:  
man Server   22533 pages
apropos Keyword Search (all sections)
Output format
Cygwin logo
[printable version]

BitmapInline(3)	      User Contributed Perl Documentation      BitmapInline(3)

NAME
       Win32::GUI::BitmapInline - Inline bitmap support for Win32::GUI

SYNOPSIS
       To create a BitmapInline:

	   perl -MWin32::GUI::BitmapInline -e "inline('image.bmp')" >>script.pl

       To use a BitmapInline (in script.pl):

	   use Win32::GUI();
	   use Win32::GUI::BitmapInline ();

	   $Bitmap1 = Win32::GUI::BitmapInline->new( q(
	   Qk32AAAAAAAAAHYAAAAoAAAAEAAAABAAAAABAAQAAAAAAIAAAAAAAAAAAAAAABAAAAAQAAAAAAAA
	   AACcnABjzs4A9/f3AJzO/wCc//8Azv//AP///wD///8A////AP///wD///8A////AP///wD///8A
	   ////AHd3d3d3d3d3d3d3d3d3d3dwAAAAAAAABxIiIiIiIiIHFkVFRUVEQgcWVVRUVFRCBxZVVVVF
	   RUIHFlVVVFRUUgcWVVVVVUVCBxZVVVVUVFIHFlVVVVVVQgcWZmZmZmZSBxIiIiIRERF3cTZlUQd3
	   d3d3EREQd3d3d3d3d3d3d3d3
	   ) );

DESCRIPTION
       This module can be used to "inline" a bitmap file in your script, so
       that the script doesn't need to be accompained by several external
       files (less hassle when you need to redistribute your script or move it
       to another location).

   FUNCTIONS
       inline

       The "inline" function is used to create an inlined bitmap resource; it
       will print on the currently selected filehandle (STDOUT by default) the
       packed data including the lines of Perl needed to use the inlined
       bitmap resource; it is intended to be used as a one-liner whose output
       is appended to your script.

       The function takes the name of the bitmap file to inline as its first
       parameter; an additional, optional parameter can be given which will be
       the name of the bitmap object in the resulting scriptlet, eg:

	   perl -MWin32::GUI::BitmapInline -e "inline('image.bmp','IMAGE')"

	   $IMAGE = new Win32::GUI::BitmapInline( q( ...

       If no name is given, the resulting object name will be $Bitmap1 (the
       next ones $Bitmap2 , $Bitmap3 and so on).

       Note that the object returned by "Win32::GUI::BitmapInline->new( ... )"
       is a regular Win32::GUI::Bitmap object.

       With version 0.02 and later you can inline icons and cursors too.
       Nothing changes in the inlining process, just the file extension:

	   perl -MWin32::GUI::BitmapInline -e "inline('harrow.cur')"  >>script.pl
	   perl -MWin32::GUI::BitmapInline -e "inline('guiperl.ico')" >>script.pl

       The module recognizes from the extension the type of object that it
       should recreate, so it will add these lines to script.pl:

	   $Cursor1 = Win32::GUI::BitmapInline->newCursor( q( ...
	   $Icon2 = Win32::GUI::BitmapInline->newIcon( q( ...

       new

	 my $bitmap = Win32::GUI::BitmapInline->new($data);

       Returns a regular Win32::GUI::Bitmap object from the data created by
       the inlining process.

       newCursor

       Similar in behaviour to "new()", except it returns a Win32::GUI::Cursor
       object.

       newIcon

       Similar in behaviour to "new()", except it returns a Win32::GUI::Icon
       object.

REQUIRES
       Win32::GUI
       MIME::Base64
       File::Spec
       threads::shared

WARNINGS
       ·   Don't use it on large bitmap files!

	   BitmapInline was designed for small bitmaps, such as toolbar items,
	   icons, et alia; it is not at all performant. Inlined data takes
	   approximatively the size of your bitmap file plus a 30% overhead;
	   thus, if you inline a 100k bitmap you're adding about 130k of bad-
	   looking data to your script...

       ·   File::Spec must be able to find a writable temporary directory.

	   When inlined data is used in your script (with
	   "Win32::GUI::BitmapInline-"new( ... )>), then a temporary file is
	   created, loaded as a regular bitmap and then immediately deleted.
	   This will fail if Win32::GUI::BitmapInline script is not able to
	   create and delete files in a suitable temporary directory at the
	   moment of the call.

	   Win32::GUI::BitmapInline uses
	   File::Spec-tmpdir()|File::Spec/tmpdir> to locate a suitable
	   temporary directory.	 This should be fine under most circumstances,
	   but if you find it returning the current directory (which means
	   that File::Spec was not able to find a writable temporary
	   elesewhere), and you are not confident that the current directory
	   will always be writable, then one workaround is to change directory
	   to a known safe place before constructing the bitmap, and changing
	   back afterwards:

	       my $olddir = cwd();
	       my $tmpdir = get_some_writable_dir();
	       chdir($tmpdir);
	       $Bitmap1 = Win32::GUI::BitmapInline->new( ... );
	       chdir($olddir);

       ·   The package exports the "inline" function by default.

	   For practical reasons (see one-liners above), "inline" is exported
	   by default into the caller's namespace; to avoid this side-effect
	   is strongly recommended to use the module in your production
	   scripts as follows:

	       use Win32::GUI::BitmapInline ();

VERSION
       Win32::GUI::BitmapInline version 0.03, 24 January 2001.

AUTHOR
       Aldo Calpini ( "dada@perl.it" ).	 Modifications by Robert May (
       "robertemay@users.sourceforge.net" ).

perl v5.14.2			  2008-02-01		       BitmapInline(3)
[top]

List of man pages available for Cygwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net