ImageMan ActiveX
FMF Image Format

Description

Group3 Tiff, used by Faxman SDK and Faxman JR, conforming to V.17 fax specs.

Import Library

im8tif.dil

Export Library

im8xtif.del

Remarks

As this format is a Group3 tiff, it is read and written by the ImageMan tiff libraries. Tiff Attributes that do not conform to V.17 specs will make the image invalid for faxing.

Attributes

Read and Write

Name

Data Type

Notes

EXTENSION

String

"TIF"

COMPRESS

String

False is overridden if TIFF_COMPRESS is defined

TIFF_COMPRESS

String

Validation dependent on color

This specifies what compression method to use on bi-level images. FMF require GROUP3 option which is the CCITT Group 3 Fax compression and yields the same compression ratios as the MODCCITT compression. GROUP4 is the CCITT Group 4 fax compression standard, and provides the best compression ratio.

 

TIFF_ROWSPERSTRIP

Int32

Validation dependent on image size

ImageHeight is correct for FMF files.

This specifies the number of image lines that should be written in each strip of a TIFF image. By default ImageMan will create strips about 8K in length which is the recommended size.

 

TIFF_FILLORDER

Int32

2

Controls wether bits in a byte are written LSB->MSB (1) or MSB->LSB (2)

 

TIFF_NEWSUBFILETYPE

Int32

This specifies the value of the NEWSUBFILETYPE tag that is written in the file. The default value is 0, which is appropriate for most files. A value of 2, which indicates the file is part of a multi-page document, is required for some fax files.

TIFF_BYTEFORMAT

String

"INTEL" Intel byte ordering, required for FMF

TIFF_PHOTOMETRICINTERP

Int32

Validation dependent on color

This Table specifies the color model used when writing the image data. The default is RGB.

Option

Description

0

white is zero

1

black is zero

2

RGB

3

RGB Palette

4

Transparency Mask

5

CMYK

6

YCbCr (unsupported)

7

CIELab (unsupported)

 

Write Only

TIFF_XRES

Int32

FMF requires an X resolution of 200

This specifies the xresolution of the TIFF image. XResolution by default will get and set info from DIB header

 

TIFF_YRES

Int32

Y resolution of 196 (high resolution) or 98 (low resolution)

This specifies the xresolution of the TIFF image. YResolution by default will get and set info from DIB header

 

Example

Dim Attrs As Attributes

Dim lngWidth, lngHeight As Long

Dim AspectRatio As Double

 

Im1.GetFileName

Im1.Refresh

lngWidth = Im1.ImageWidth

lngHeight = Im1.ImageHeight

If lngWidth > 1728 Then

  AspectRatio = lngWidth / lngHeight

  lngWidth = 1728

  lngHeight = lngWidth / AspectRatio

  Im1.ScaleMethod = AntiAlias

  Im1.ScaleImage lngWidth, lngHeight

  Im1.Refresh

 

End If

If lngWidth < 1728 Then

  Im2.CreateBitmap 1728, 2156, 1

  Im2.Invert

  Im2.Refresh

  Im2.Merge Im1.Object

  Im2.Refresh

  Im1.hImage = Im2.hImage

  Im1.Refresh

End If

If Im1.ImageBitDepth <> 1 Then

  Im1.DitherMethod = 2

  Im1.ReduceTo 2, False, False

  Im1.Refresh

End If

Set Attrs = New IMActX80Ctl.Attributes

Attrs.Add "EXTENSION", "TIF", IMActX80Ctl.String

Attrs.Add "COMPRESS", "True", IMActX80Ctl.String

Attrs.Add "TIFF_COMPRESS", "GROUP3", IMActX80Ctl.String

Attrs.Add "TIFF_FILLORDER", 2, Int32

Attrs.Add "TIFF_XRES", 200, Int32

Attrs.Add "TIFF_YRES", 196, IMActX80Ctl.Int32

Attrs.Add "TIFF_ROWSPERSTRIP", Im1.ImageHeight, IMActX80Ctl.Int32

Attrs.Add "TIFF_BYTEFORMAT", "INTEL", IMActX80Ctl.String

Attrs.Add "TIFF_PHOTOMETRICINTERP", 0, IMActX80Ctl.Int32

Attrs.Add "TIFF_NEWSUBFILETYPE", 0, IMActX80Ctl.Int32

Im1.Overwrite = Yes

Im1.SaveAs App.Path & "\" & "doc.fmf", Attrs

 

 

 


© 2014 Data Techniques, Inc. All rights reserved.

Submit feedback on this topic