亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? qrxmlsfilt.pas

?? delphi7報表打印控件源碼 可以設(shè)計(jì)報表
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
unit QRXMLSFilt;
////////////////////////////////////////////////////////////////////////////
//  Unit : QRXMLSFilt.pas
//
//  TQRXAbstractExportFilter -> TQRXDocumentFilter
//
//  The new XMLS Export document filter classes -
//
//  (c) 2002 QBS Software
//
//  03/04/2003 DLM : added concatenating 
//  26/06/2003 DLM : added graphics position adjust
//  26/01/2004 DLM : Update for QR4
//  25/03/2004 Image handling added
////////////////////////////////////////////////////////////////////////////
{$define VER36}
interface
uses windows, classes, controls, stdctrls, sysutils, graphics, buttons,
     forms, extctrls, dialogs, printers, db, DBtables, ComCtrls, 
     QRPrntr, Quickrpt, QR4Const, qrctrls, grids;

const
     CRLF = chr($0D) + chr($0A);
     // ascii
     ORD0 = ord('0');
     ORDA = ord('A');
type

  TQRXAbstractExportFilter = class(TQRExportFilter)
  private
    FStream : TStream;
    FCharWidth,
    FCharHeight,
    FPaperWidth,
    FPaperHeight : extended;
    FLineCount,
    FColCount : integer;
    FPageProcessed : boolean;
    FFont : TFont;
    FActiveFont : TFont;
  protected
    function GetText(X, Y : extended; var Font : TFont) : string;
    function GetFilterName : string; override;
    function GetDescription : string; override;
    function GetExtension : string; override;
    procedure WriteToStream(const AText : string);
    procedure WriteLnToStream(const AText : string);
    procedure CreateStream(Filename : string); virtual;
    procedure CloseStream; virtual;
    procedure ProcessPage; virtual;
    procedure StorePage; virtual;
    property Stream : TStream read FStream write FStream;
    property PageProcessed : boolean read FPageProcessed write FPageProcessed;
    property CharWidth : extended read FCharWidth write FCharWidth;
    property CharHeight : extended read FCharHeight write FCharHeight;
    property PaperWidth : extended read FPaperWidth write FPaperWidth;
    property PaperHeight : extended read FPaperHeight write FPaperHeight;
    property LineCount : integer read FLineCount write FLineCount;
    property ColCount : integer read FColCount write FColCount;
  public
    constructor Create( filename : string );override;
    procedure Start(PaperWidth, PaperHeight : integer; Font : TFont); override;
    procedure Finish; override;
    procedure EndPage; override;
    procedure NewPage; override;
    procedure AcceptBand( aBand : TControl; Xoff, Yoff, Expanded : extended); override;
    procedure AcceptGraphic( Xoff, Yoff : extended; GControl : TControl); override;
    procedure TextOut(X, Y : extended; Font : TFont; BGColor : TColor;
               Alignment : TAlignment; Text : string); override;
  end;

  TQRXImageURLNeeded = procedure(Sender: TObject; ImageCtrl: TControl; var ImageURL: String; var IncludeByRef: Boolean) of object;

  TQRXDocumentFilter = class(TQRXAbstractExportFilter)
  private
    FFreeStream : boolean;
    // doc filter properties
    FLastRecordNum : longint;
    FNextPicNum : longint;
    FPagenumber : longint;
    FDocType : string;
    FCreator : string;
    FTitle : string;
    FAuthor : string;
    FDocDate : string;
    FCopyright : string;
    FOrientation : string;
    FXLStyleURL : string;
    FConcatenating : boolean;
    FCompressImages : boolean;
    FXLEncoding: string;
    FDoImages: boolean;
    FOnImageURLNeeded: TQRXImageURLNeeded;
  protected
    function GetFilterName : string; override;    
    function GetDescription : string; override;
    function GetExtension : string; override;
    function GetStreaming : boolean; override;
    procedure CreateStream(Filename : string); override;
    procedure CloseStream; override;
 public
    // graphic finesse properties
    VertLineAdjust, HorizLineAdjust, LeftMarginAdjust : double; // in mm
    constructor Create( filename : string );override;
    procedure NewDocument( doclist : TStringlist; PaperWidth, PaperHeight : double;
              Papername, orient : string);
    procedure TextOut(X, Y : extended; Font : TFont; BGColor : TColor;
               Alignment : TAlignment; Text : string); override;
    procedure LoadDTD( var dlist : TStringlist );
    procedure ProcessPage; override;
    procedure Start(PaperWidth, PaperHeight : integer; Font : TFont); override;
    procedure EndConcat;
    procedure Finish; override;
    procedure NewPage; override;
    procedure EndPage; override;
    procedure AcceptGraphic( Xoff, Yoff : extended; GControl : TControl); override;
    procedure SetDocumentProperties( author, title, copyright : string );
    property Stream;
    property FreeStream : boolean read FFreeStream write FFreeStream;
    property Orientation : string read FOrientation write FOrientation;
    property Creator : string read FCreator write FCreator;
    property Author : string read FAuthor write FAuthor;
    property Title : string read FTitle write FTitle;
    property DocDate : string read FDocDate write FDocDate;
    property Copyright : string read FCopyright write FCopyright;
    property DocType : string read FDocType write FDocType;
    property XLEncoding: string read FXLEncoding write FXLEncoding;
    property XLStyleURL : string read FXLStyleURL write FXLStyleURL;
    property CompressImages : boolean read FCompressImages write FCompressImages;
    property DoImages: boolean read FDoImages write FDoImages;
    property Concatenating : boolean read FConcatenating write FConcatenating;
    property OnImageURLNeeded: TQRXImageURLNeeded read FOnImageURLNeeded write FOnImageURLNeeded;
  end;

  TQRXMLSFilter = class(TComponent)
  protected
  public
    constructor Create(AOwner : TComponent); override;
    destructor Destroy; override;
  published
  end;

  function basename( fname : string ) : string;
  procedure RunLength(Source, Target: TStream);

implementation
//uses grimgctrl;

constructor TQRXMLSFilter.Create(AOwner : TComponent);
begin
  inherited Create(AOwner);
  QRExportFilterLibrary.AddFilter(TQRXDocumentFilter);
end;

destructor TQRXMLSFilter.Destroy;
begin
  QRExportFilterLibrary.RemoveFilter(TQRXDocumentFilter);
  inherited Destroy;
end;


{TQRXAbstractExportFilter}
constructor TQRXAbstractExportFilter.Create( filename : string);
begin
     inherited Create(filename);
end;

procedure TQRXAbstractExportFilter.AcceptBand( aBand : TControl; Xoff, Yoff, Expanded : extended);
begin
end;

procedure TQRXAbstractExportFilter.AcceptGraphic( Xoff, Yoff : extended; GControl : TControl);
begin
end;

function TQRXAbstractExportFilter.GetFilterName : string;
begin
  result := 'QRAbstract'; // Do not translate
end;

function TQRXAbstractExportFilter.GetDescription : string;
begin
  Result := '';
end;

function TQRXAbstractExportFilter.GetExtension : string;
begin
  Result := '';
end;

procedure TQRXAbstractExportFilter.Start(PaperWidth, PaperHeight : integer; Font : TFont);
begin
  CreateStream(Filename);
  FFont := TFont.Create;
  FActiveFont := TFont.Create;
  FFont.Assign(Font);
  CharHeight := Font.Size * (254 / 72);
  CharWidth := Font.Size * (254 / 72);
  FPaperHeight := PaperHeight;
  FPaperWidth := PaperWidth;
  LineCount := round(PaperHeight / CharHeight);
  FPageProcessed := false;
  inherited Start(PaperWidth, PaperHeight, Font);
end;


procedure TQRXAbstractExportFilter.CreateStream(Filename : string);
begin
  FStream := TFileStream.Create(Filename, fmCreate);
end;

procedure TQRXAbstractExportFilter.CloseStream;
begin
  FStream.Free;
end;

procedure TQRXAbstractExportFilter.WriteToStream(const AText : string);
begin
  if length(AText)>0 then
    Stream.Write(AText[1], length(AText));
end;

procedure TQRXAbstractExportFilter.WriteLnToStream(const AText : string);
begin
  WriteToStream(AText + #13 + #10);
end;


procedure TQRXAbstractExportFilter.Finish;
begin
  FFont.Free;
  FActiveFont.Free;
  CloseStream;
  inherited Finish;
end;

procedure TQRXAbstractExportFilter.NewPage;
begin
  FPageProcessed := False;
  FActiveFont.Free;
  FActiveFont := TFont.Create;
  inherited NewPage;
end;

procedure TQRXAbstractExportFilter.EndPage;
begin
  //EndPage;??
  ProcessPage;
  inherited EndPage;
end;

procedure TQRXAbstractExportFilter.ProcessPage;
begin
  FPageProcessed := True;
end;

procedure TQRXAbstractExportFilter.StorePage;
begin
end;

procedure TQRXAbstractExportFilter.TextOut(X, Y : extended; Font : TFont;
                      BGColor : TColor; Alignment : TAlignment; Text : string);
begin
end;

function TQRXAbstractExportFilter.GetText(X, Y : extended; var Font : TFont) : string;
begin
end;

{TQRXDocumentFilter}
function TQRXDocumentFilter.GetFilterName : string;
begin
  Result := SqrQRXDocument;
end;

function TQRXDocumentFilter.GetDescription : string;
begin
  Result := SqrQRXDocumentForWeb;
end;

function TQRXDocumentFilter.GetExtension : string;
begin
  Result := 'QRX'; // Do not translate
end;

function TQRXDocumentFilter.GetStreaming : boolean;
begin
  Result := false;// stream multipage report mode
end;

procedure TQRXDocumentFilter.CreateStream(Filename : string);
begin
  if Filename = '' then
  begin
    FStream := TMemoryStream.Create;
    FreeStream := false;
  end else
  begin
    FreeStream := true;
    inherited CreateStream(Filename);
  end;
end;

procedure TQRXDocumentFilter.CloseStream;
begin
  // the stream is not freed if it's a memory stream
  if FreeStream then
    inherited CloseStream;
end;

constructor TQRXDocumentFilter.Create( filename : string );
begin
   inherited Create( filename);
   FLastRecordNum := 0;
   FNextpicNum := 0;
   FPagenumber := 1;
   FCreator := 'QRXDocumentFilter';
   FDocDate := datetostr( date );
   FOrientation := 'Portrait';
   FCompressImages := true;
   FXLEncoding := 'windows-1252';
   FDoImages := true;
   HorizLineAdjust := 0.0;
   VertLineAdjust := 0.0;
end;

// QBSS : override method to skip converttoxxx
procedure TQRXDocumentFilter.ProcessPage;
begin
  FPageProcessed := True;
  StorePage;
end;

procedure TQRXDocumentFilter.SetDocumentProperties( author, title, copyright : string );
begin
      FAuthor := author;
      FTitle := title;
      FCopyright := copyright;

end;
procedure TQRXDocumentFilter.LoadDTD( var dlist : TStringlist );
var
    ssurl : string;
begin
     if trim(FXLEncoding)='' then
       dlist.add('<?xml version="1.0"?>')
     else
       dlist.add('<?xml version="1.0" encoding="'+FXLEncoding+'"?>');

     if trim( FXLStyleURL) = '' then
       ssurl := 'QXDStylesheet.xsl'
     else
       ssurl := FXLStyleURL;

     dlist.add('<?xml-stylesheet type="text/xsl" href="'+ssurl+'"?>');
     dlist.add('<!DOCTYPE QXDocument [');
     dlist.add('<!ELEMENT QXDocument (Header, Page*)>');
     dlist.add('<!ELEMENT Header (Title*, DocType*, Creator*, Author*, Date*, Copyright*, Orientation*)>');
     dlist.add('<!ELEMENT DocType (#PCDATA)>');
     dlist.add('<!ELEMENT Title (#PCDATA)>');
     dlist.add('<!ELEMENT Creator (#PCDATA)>');
     dlist.add('<!ELEMENT Author (#PCDATA)>');
     dlist.add('<!ELEMENT Date (#PCDATA)>');
     dlist.add('<!ELEMENT Copyright (#PCDATA)>');
     dlist.add('<!ELEMENT Orientation (#PCDATA)>');
     dlist.add('<!ELEMENT Page (Item*)>');
     dlist.add('<!ELEMENT Item (#PCDATA)>');
     dlist.add('<!ELEMENT Contents (#PCDATA)>');
     dlist.add('<!ATTLIST Header Units CDATA "mm">');
     dlist.add('<!ATTLIST Header Pagewidth CDATA "210">');
     dlist.add('<!ATTLIST Header Pageheight CDATA "297">');
     dlist.add('<!ATTLIST Header PaperName CDATA "A4">');
     dlist.add('<!ATTLIST Header Layers CDATA "3">');
     dlist.add('<!ATTLIST Item Type CDATA "Text">');
     dlist.add('<!ATTLIST Item XPos CDATA "0">');
     dlist.add('<!ATTLIST Item YPos CDATA "0">');
     dlist.add('<!ATTLIST Item Font CDATA "Arial">');
     dlist.add('<!ATTLIST Item Height CDATA "12">');
     dlist.add('<!ATTLIST Item Color CDATA "Black">');
     dlist.add('<!ATTLIST Item BackColor CDATA "White">');
     dlist.add('<!ATTLIST Item Weight CDATA "Normal">');
     dlist.add('<!ATTLIST Item Decoration CDATA "None">');
     dlist.add('<!ATTLIST Item Width CDATA "1">');
     dlist.add('<!ATTLIST Item Height CDATA "1">');
     dlist.add('<!ATTLIST Item Shape CDATA "0">');
     dlist.add('<!-- 0=rect, 1=ellipse, 2=hline,3=vline,4=roundrect-->');
     dlist.add('<!ATTLIST Item Linewidth CDATA "1">');
     dlist.add('<!ATTLIST Item FillType CDATA "0">');
     dlist.add('<!ATTLIST Item Layer CDATA "0">');
     dlist.add('<!ATTLIST Item Opacity CDATA "1">');
     dlist.add('<!ATTLIST Item ImageFile CDATA "">');
     dlist.add('<!ATTLIST Item Compression CDATA "None">');
     dlist.add('<!ATTLIST Item Xscale CDATA "1.0">');
     dlist.add('<!ATTLIST Item Yscale CDATA "1.0">');
     dlist.add('<!ATTLIST Item Extra CDATA "">');
     dlist.add('<!ATTLIST Page Number CDATA "1">');
     dlist.add(']>');
end;

// strip off file extension
function basename( fname : string ) : string;
var
   p : integer;
begin
    basename := fname;
    p := pos( '.', fname );
    if p = 0 then exit;
    basename := copy( fname, 1, p - 1 );
end;

function EntityReplace( var ctext : string ) : string;
begin
     ctext :=  stringreplace( ctext, '&', '&amp;', [rfReplaceAll] ); // must be first
     ctext :=  stringreplace( ctext, '<', '&lt;', [rfReplaceAll] );
     ctext :=  stringreplace( ctext, '>', '&gt;', [rfReplaceAll] );
     ctext :=  stringreplace( ctext, '''', '&apos;', [rfReplaceAll] );
     ctext :=  stringreplace( ctext, '"', '&quot;', [rfReplaceAll] );
     result := ctext;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人91在线观看| 欧美午夜片在线看| 国产精品伊人色| 久久精品国产网站| 日韩国产欧美在线视频| 视频一区二区三区入口| 日本欧美大码aⅴ在线播放| 三级欧美在线一区| 秋霞影院一区二区| 精彩视频一区二区三区 | 欧洲一区二区三区免费视频| 99re8在线精品视频免费播放| 国产91在线观看丝袜| 欧美日韩一区二区欧美激情| 色综合久久88色综合天天| 91久久精品一区二区| 欧美色图12p| 欧美成人video| 国产亚洲一区字幕| 日韩美女啊v在线免费观看| 亚洲美腿欧美偷拍| 婷婷中文字幕综合| 精东粉嫩av免费一区二区三区| 国产激情偷乱视频一区二区三区| 国产91清纯白嫩初高中在线观看| 不卡的av在线| 欧美偷拍一区二区| 精品日韩在线一区| 国产精品电影一区二区| 亚洲一区二区在线免费看| 午夜精品久久久久久久99水蜜桃 | 国产尤物一区二区| 高清成人在线观看| 日本韩国精品在线| 91精品国产麻豆国产自产在线| 日韩精品一区二区三区在线播放| 久久久www免费人成精品| 国产精品不卡视频| 日本大胆欧美人术艺术动态| 国产成人亚洲综合a∨猫咪| 色综合久久久久久久| 日韩视频一区二区| 亚洲欧洲成人精品av97| 天堂一区二区在线免费观看| 国产一区二区三区不卡在线观看| 94-欧美-setu| 欧美一级精品在线| 国产精品传媒视频| 美国精品在线观看| 99国产精品视频免费观看| 欧美肥妇bbw| 国产精品日韩成人| 天天av天天翘天天综合网色鬼国产| 美国精品在线观看| 欧美亚洲动漫另类| 国产免费成人在线视频| 日韩精品一二三四| 国产91高潮流白浆在线麻豆 | 日韩欧美资源站| 国产精品欧美一区二区三区| 成人晚上爱看视频| 91麻豆精品国产自产在线| 国产人成亚洲第一网站在线播放| 亚洲国产一区在线观看| 国产一区二区三区电影在线观看| 欧美日韩一本到| 国产精品三级电影| 免费av网站大全久久| 成人高清免费观看| 欧美精品一区二区精品网| 亚洲欧美日韩精品久久久久| 韩国欧美国产1区| 欧美色中文字幕| 日本一区二区三区国色天香| 偷拍与自拍一区| 色婷婷综合五月| 国产精品天干天干在线综合| 欧美aaaaa成人免费观看视频| 91污片在线观看| 国产三区在线成人av| 男男视频亚洲欧美| 欧美理论电影在线| 亚洲一区在线观看视频| 99久久婷婷国产精品综合| 久久久精品蜜桃| 国产乱人伦精品一区二区在线观看| 欧美美女直播网站| 亚洲一区二区三区免费视频| 91同城在线观看| 国产精品国产自产拍高清av王其| 国产精品一区二区无线| 精品国产sm最大网站免费看| 奇米精品一区二区三区在线观看 | 九九九精品视频| 欧美日韩成人综合在线一区二区| 亚洲激情欧美激情| 91免费国产在线观看| 中文字幕一区二区三区在线观看 | eeuss鲁片一区二区三区| 久久网这里都是精品| 精品一区二区精品| 精品99久久久久久| 国产九色精品成人porny| 亚洲女爱视频在线| 色综合久久天天综合网| 亚洲欧美一区二区不卡| 91视视频在线直接观看在线看网页在线看 | 欧美日韩一区三区| 性做久久久久久免费观看| 欧美日韩国产高清一区二区| 五月天久久比比资源色| 6080国产精品一区二区| 久久99九九99精品| 国产视频一区不卡| 91亚洲永久精品| 亚洲v中文字幕| 制服.丝袜.亚洲.另类.中文 | 97久久精品人人做人人爽50路| 国产精品国产三级国产| 色视频成人在线观看免| 亚洲国产日韩a在线播放性色| 欧美日韩国产电影| 国内精品第一页| 中文字幕中文字幕一区二区| 在线一区二区三区做爰视频网站| 亚洲h动漫在线| 欧美一级日韩一级| 粉嫩一区二区三区在线看| 悠悠色在线精品| 欧美一级精品大片| 成人免费视频一区| 亚洲一区二区三区四区五区中文 | 一区二区三区资源| 欧美区一区二区三区| 久久99国产精品久久| 国产精品伦一区| 欧美午夜宅男影院| 激情综合网av| 亚洲精品乱码久久久久久黑人| 欧美丰满高潮xxxx喷水动漫| 国产精品一二三四| 夜色激情一区二区| 2017欧美狠狠色| 色偷偷久久人人79超碰人人澡| 欧美aaa在线| 日韩美女视频一区| 精品剧情在线观看| 色网站国产精品| 国产精品夜夜嗨| 亚洲成在线观看| 国产女人18水真多18精品一级做| 欧美日韩国产一区二区三区地区| 激情综合五月婷婷| 成人va在线观看| 日韩成人精品在线| 亚洲免费观看高清完整版在线 | 国产精品久久久久一区| 欧美年轻男男videosbes| 国产剧情一区二区三区| 亚洲成人黄色小说| 国产精品入口麻豆原神| 日韩欧美亚洲国产另类| 色婷婷久久一区二区三区麻豆| 精品无码三级在线观看视频| 亚洲一线二线三线视频| 国产欧美日本一区二区三区| 51精品秘密在线观看| 99国产精品久久久久久久久久久| 久久国产免费看| 亚洲成人av资源| 亚洲免费成人av| 国产欧美日韩一区二区三区在线观看| 7799精品视频| 在线观看日韩一区| 成人a免费在线看| 国产一区二区三区在线观看免费| 亚洲第一成年网| 亚洲视频免费观看| 国产日韩成人精品| 久久综合久色欧美综合狠狠| 欧美二区乱c少妇| 在线中文字幕一区二区| 99久久精品国产导航| 国产91精品久久久久久久网曝门| 麻豆精品在线观看| 午夜精品久久久久久久久| 夜色激情一区二区| 亚洲欧美日韩小说| 亚洲色图都市小说| 综合久久久久久久| 国产精品女人毛片| 国产欧美视频在线观看| 2024国产精品| wwww国产精品欧美| 久久综合九色综合欧美98 | 一区二区三区产品免费精品久久75| 国产日韩三级在线| 亚洲国产成人一区二区三区| 欧美精品一区二区三区在线播放 | 青娱乐精品视频在线|