EXIF格式分析及通过XML处理(4)[2]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

BYTE * __fastcall TExifXML::GetIFD(_di_IXMLNode aNode, BYTE * aTIFFHeader, int aPosition, AnsiString aName)

{

    _di_IXMLNode pIFD = aNode->AddChild( "IFD" );

    if ( aName != "" )

        pIFD->Attributes["name"] = aName;

 

    BYTE * p = aTIFFHeader + aPosition;

    WORD nWord;

    memcpy( &nWord, p, sizeof ( nWord ) );

    p += sizeof ( nWord );

    _di_IXMLNode pChild = pIFD->AddChild( "Count" );

    pChild->Text = Format( "0x%X", ARRAYOFCONST( ( ( int )nWord ) ) );

   

    TIFDEntry ent;

    _di_IXMLNode pEntry;

    BYTE * pTemp;

    for ( int i = nWord; i > 0; --i )

    {

        memcpy( &ent, p, sizeof ( ent ) );

        p += sizeof ( ent );

        pEntry = pIFD->AddChild( "Entry" );

        pChild = pEntry->AddChild( "Tag" );

        pChild->Text = Format( "0x%X", ARRAYOFCONST( ( ( int )ent.EntryTag ) ) );

        pChild = pEntry->AddChild( "Type" );

        pChild->Text = IntToStr( ent.EntryType );

        pChild = pEntry->AddChild( "Size" );

本文关键:EXIF XML XSL
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top