#include "ltwrappr.h"

static L_INT LFileSettings::SetTag(uTag, uType, uCount, pData)

L_UINT16 uTag;

tag to identify the data in the TIFF file

L_UINT16 uType;

tagged data type

L_UINT32 uCount;

count of data items

L_VOID * pData;

pointer to the buffer containing the data

Specifies a private tag and the tagged data to be saved in a TIFF file.




Tag to identify the data in the TIFF file. Generally, you can specify a private tag in the range of 0x8000 to 0xFFFE. However, LEADTOOLS returns an error if you use any of the following registered tags:


Copyright comment


General Exif comments


Exif GPS comments


LEADTOOLS does NOT return an error if you set:


Annotation TIFF tag defined as ANNTAG_TIFF.

uType Tagged data type. Valid values are:
  Value Meaning
  TAG_BYTE [1] Byte.
  TAG_ASCII [2] Byte in the range of 0 to 255.
  TAG_SBYTE [6] Byte used as signed number in the range of -128 to +127.
  TAG_UNDEFINED [7] Byte, with application-defined usage.
  TAG_SHORT [3] Two bytes, unsigned.
  TAG_SSHORT [8] Two bytes, signed.
  TAG_LONG [4] Four bytes, unsigned.
  TAG_SLONG [9] Four bytes, signed.
  TAG_RATIONAL [5] Eight bytes, used as a pair of unsigned long integers, where the first number is the numerator and the second is the denominator of a fraction.
  TAG_SRATIONAL [10] Eight bytes, used as a pair of signed long integers, where the first number is the numerator and the second is the denominator of a fraction.
  TAG_FLOAT [11] Four bytes used as a floating point number.
  TAG_DOUBLE [12] Eight bytes used as a double-precision floating point number.
TAG_IFD [13] 32-bit IFD offset.
TAG_LONG8 [16] Unsigned 64-bit integer (valid only for BigTIFF formats).
TAG_SLONG8 [17] Signed 64-bit integer (valid only for BigTIFF formats).
TAG_IFD8 [18] 64-bit IFD offset (valid only for BigTIFF formats).
uCount Count of data items, based on the tagged data type. For example, if the buffer size is 16 and the data type is TAG_DOUBLE, the count is 2.
pData Pointer to a buffer containing the data to be saved using the tag.



The function was successful.

< 1

An error occurred. Refer to Return Codes.


This function copies the data from your buffer to an internally-allocated buffer. You should free your own buffer after calling this function. Any TIFF file that you save will include the tagged data until you clear the tag. LEADTOOLS keeps a list of tags in memory. The list contains all the tags set directly (by calling LFileSettings::SetTag) or indirectly (by calling LAnnContainer::SaveTag). All these tags will be saved unless you clear them. The way to clear a tag and remove it from the list is by calling LFileSettings::SetTag(uTag, 0, 0, NULL). LFileSettings::SetTag(0,0,0,NULL) will remove ALL the tags from the tag list.


When LEADTOOLS saves a TIFF/Exif image that contains comments and tags, the comments and tags will be written first, followed by the image data. This order is not configurable.


To write tags to a TIFF file, use LFile::WriteTag instead of using LFileSettings::SetTag followed by LFile::Save or LMemoryFile::Save.

For general information about TIFF tags, refer to Implementing TIFF Comments and Tags.

Required DLLs and Libraries


For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.


Win32, x64.

See Also


LFile::DeleteTag, LFileSettings::GetTag


Implementing TIFF Comments and Tags

<span c

For an example, refer to LFileSettings::GetTag.lass="deprecated-leadlabel-id">Example

Help Version 21.0.2020.8.25
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help