zoukankan      html  css  js  c++  java
  • fastreport6的frxpngimage.pas不能编译xe下

    升级很痛苦,因为兼容问题。

    fastreport6的frxpngimage.pas不能编译出现错误

    procedure TChunkIDAT.CopyInterlacedRGB8(const Pass: Byte;
      Src, Dest, Trans{$IFDEF Store16bits}, Extra{$ENDIF}: pChar);
    var
      Col: Integer;
    begin
      {Get first column and enter in loop}
      Col := ColumnStart[Pass];
      Dest := pChar(Longint(Dest) + Col * 3);
      repeat
        {Copy this row}
        Byte(Dest^) := fOwner.GammaTable[pByte(Longint(Src) + 2)^]; inc(Dest);
        Byte(Dest^) := fOwner.GammaTable[pByte(Longint(Src) + 1)^]; inc(Dest);
        Byte(Dest^) := fOwner.GammaTable[pByte(Longint(Src)    )^]; inc(Dest);
    
        {Move to next column}
        inc(Src, 3);
        inc(Dest, ColumnIncrement[Pass] * 3 - 3);
        inc(Col, ColumnIncrement[Pass]);
      until Col >= ImageWidth;
    end;

    把all pChar改成类型PAnsiChar。自己查pChar和PAnsiChar在高版本的xe中有啥不同可知。

    对于2009年以前版本的Delphi PChar 和 PAnsiChar 完全一样。他们都指向(Ansi)字符。

    在D2009及以后: PChar 是一个指向 Char 的指针,它是一个unicode字符(一个 WideChar )。而 PAnsiChar 是一个指向 AnsiChar 的指针,- 顾名思义 - 一个ANSI字符

  • 相关阅读:
    STM32-串口通信
    STM32-系统计时器(systick)
    字符串操作常用的函数
    基本MarkDown语法
    结构
    python入门
    贪心算法小结
    POJ1631_高深DP
    POJ3046ANT_COUNTING
    POJ1742coins
  • 原文地址:https://www.cnblogs.com/usegear/p/11519267.html
Copyright © 2011-2022 走看看