登录
首页 » Delphi源码 » Delphi 打印图形(图片)

Delphi 打印图形(图片)

于 2022-10-24 发布 文件大小:30.57 kB
0 206
下载积分: 2 下载次数: 1

代码说明:

Delphi 打印图形,把图片打印出来,通过这个例子,你可以学习到:    strect:Trect;//定义打印输出矩形框的大小    temhi,temwd:integer;   begin    if DIGPrint.execute then    begin    temhi:=imgpic.picture.height;    temwd:=imgpic.picture.width;    while (temhi = printer.pageheight div 2)and    //将图形放大到打印页面的1/2大小    (temwd = printer.pagewidth div 2) do    begin    temhi:=temhi+temhi;    temwd:=temwd+temwd;    end;    with strect do //定义图形在页面上的中心位置输出    begin    left := (printer.pagewidth -temwd) div 2;    top := (printer.pageheight-temhi) div 2;    right := left+temwd;    bottom := top+temhi;    end;    with printer do    begin    begindoc;    canvas.stretchdraw(strect,imgpic.picture.graphic);    enddoc;    end;    end;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Delphi 获取两个子字符串之间的字符个数
    Delphi 获取两个子字符串之间的字符个数,也就是这个字符串由A/B/C三个字符组成,本例子是求A/C中间的所有字符串的个数,空格同样也包括在内。定义两个函数即可实现本功能:   Function TForm1.Strcount( s, s1, s2 : string ): integer;   var    i,j,slen : integer;   begin    i := pos( s1, s );    j := pos( s2, s );    slen := Length(s1);    if j >= i then    Result := j - i - slen    else    Result := 0;   end;   procedure TForm1.Button1Click(Sender: TObject);   var    n : integer;   begin    n := Strcount(Edit1.Text,Edit2.Text,Edit3.Text);    showmessage(IntToStr(n));   end;
    2022-01-26 07:45:23下载
    积分:1
  • Delphi7利用鼠标绘制矩形焦点的
    本源代码主要演示Delphi7利用鼠标绘制矩形焦点,画出虚线框矩形,按住鼠标左键抖动矩形区域,即可显示虚线矩形框,可应用于需要拖动选择对象时作为选区使用,在Delphi中,这个功能使用Canvas实现:   procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,    Y: Integer);   begin    if IsDraw then    begin    if Count >1 then    DrawFocusRect(Canvas.Handle,FocuRect);    FocuRect.Right := X;    FocuRect.Bottom := Y;    DrawFocusRect(Canvas.Handle,FocuRect);    Inc(Count);    IsEndDraw := True;    end;   end;
    2023-02-14 21:35:04下载
    积分:1
  • Delphi控制电脑蜂鸣器或扬声器发声音
    Delphi控制电脑蜂鸣器或扬声器发声音,有些称之为喇叭,不过测试发现,这个是优先机箱蜂鸣器发出声音,或没装蜂鸣器,则会从音箱中发声音,实现的代码很简单,以下代码即可实现:   procedure TForm1.Button1Click(Sender: TObject);   var    i,j : integer;   begin    for i := 1000 to 2000 do    begin    j := i;    windows.Beep(1000,3000);    end;   end;
    2022-02-05 03:44:28下载
    积分:1
  • Delphi 制作红绿眼镜三维立体画
    这是一个Delphi色彩控制方面的示例,我看上去更像是Delphi分离出红绿颜色通道,从页形成的一种立体效果,复制和修改颜色模式来实现,相关代码可参考如下:    //设置添充颜色的大小    DBitmap.Width := LBitmap.Width;    DBitmap.Height := LBitmap.Height;    vRect := Rect(0, 0, DBitmap.Width, DBitmap.Height); //获取添充区域    DBitmap.Canvas.Brush.Color := vGreen; //设置画笔颜色    DBitmap.Canvas.FillRect(vRect); //添充颜色    LBitmap.Canvas.CopyMode := cmSrcPaint; //将复制模式改为OR    LBitmap.Canvas.CopyRect(vRect, DBitmap.Canvas, vRect); //对图片进行复制    DBitmap.Canvas.Brush.Color := vRed;    DBitmap.Canvas.FillRect(vRect);    RBitmap.Canvas.CopyMode := cmSrcPaint; //将复制模式改为OR    RBitmap.Canvas.CopyRect(vRect, DBitmap.Canvas, vRect); //对图片进行复制    DBitmap.Canvas.CopyRect(vRect, LBitmap.Canvas, vRect);    DBitmap.Canvas.CopyMode := cmSrcAnd; //将复制模式改为AND    DBitmap.Canvas.CopyRect(vRect, RBitmap.Canvas, vRect);    except    Exit;    end;    Result := True;   end;
    2023-02-01 08:05:04下载
    积分:1
  • Delphi判断双字节字符的例子
    Delphi判断双字节,用法简单,在窗口输入框中输入字符串,单击按钮即可,程序会判断出是否包含有双字节字符,判断方法请看下边的代码段:   s := Edit1.Text;   i := 0;   while i  begin    if (ByteType(S,i) mbSingleByte) then    begin    s1 := s1+ copy(s,i,2)+;    i := i+2;    end    else    i:= i+1;   end;   label2.Caption := trim(s1);
    2022-07-24 15:06:09下载
    积分:1
  • Delphi 目录操作范例:改变当前目录
    Delphi 目录操作范例:改变当前目录,先获取当前的目录路径,然后改变这个目录路径,文件当前在此目录,那么如何修改文件路径呢?   procedure TForm1.Button1Click(Sender: TObject);   begin    try    chdir(Edit2.Text);    finally    getdir(0,result);    Edit2.Text := result;    end;   end;   源代码仅供参考。
    2022-11-19 16:05:03下载
    积分:1
  • 内存使用状态Delphi 探测并显示
    Delphi获取内存的使用状态并显示信息,这里是使用GlobalMemoryStatus来实现,有的是使用GetSystemInfo来获龋本程序可显示内存大小和可用内存,并显示进度条。不过我这台电脑是16G内存的Windows7 64位系统,程序可能没认出啊,下面是识别内存可用量的大小,仅供参考:   memo_status.dwLength := sizeof(memo_status);   GlobalMemoryStatus(memo_status);   Gauge2.Progress := (round((100*(memo_status.dwAvailPhys    / memo_status.dwTotalPhys))));   label1.Caption := inttostr(memo_status.dwAvailPhys);   label2.Caption := inttostr(memo_status.dwTotalPhys);
    2022-02-03 06:55:31下载
    积分:1
  • Delphi 实现窗体的全屏显示效果
    Delphi 实现窗体的全屏显示效果,单击按钮后即可全屏。
    2023-03-25 11:25:03下载
    积分:1
  • Delphi实现窗体失去焦点时标题栏闪动特效
    这是个有意思的窗口设计实例源码,Delphi实现窗体失去焦点时标题栏闪动特效,flashwindow特效,这样可吸引操作者注意,其实实现这一功能并不复杂,以下代码最关键:   procedure TForm1.Timer1Timer(Sender: TObject);   begin    flashwindow(Handle,true);   end;   procedure TForm1.WMACTIVATEAPP(var message: TWMACTIVATEAPP);   begin    if Message.Active then    form1.Timer1.Enabled := false    else    form1.Timer1.Enabled := true;   end;   完整源码请下载。
    2022-07-08 18:47:20下载
    积分:1
  • Delphi 在程序运行过程中动态添加菜单
    Delphi创建动态菜单,在程序运行过程中动态添加菜单,点击“添加菜单”按钮,会在菜单栏中增加一个“编辑”菜单项,预设中每次添加的菜单项都是“编辑”,这也是为了验证不要添加重复的菜单项,代码中的判断是一种方法,另外也可以通过菜单项的Caption属性来判断,不过之前最好设置AutoHotkeys和AutoLineReduction为maManual。在以下创建菜单项的代码中:   self.MainMenu1.AutoHotkeys:=maManual;   self.MainMenu1.AutoLineReduction:=maManual;   通过设置这两个属性可以禁止程序自动为菜单生成热键,否则程序会自动在菜单的Caption属性中加入热键,并且会修改Caption属性的值,给通过Caption属性判断菜单项带来麻烦。
    2022-03-22 14:48:49下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载