QQ登录

只需一步,快速开始

查看: 12065|回复: 24
收起左侧

相同颜色填充、轮廓曲线结合

[复制链接]
累计签到:221 天
连续签到:0 天
发表于 2016-11-16 22:25:07 | 显示全部楼层 |阅读模式
学习的第一个cpg插件,delphi 编写的是在delphi框架的基础上实现的一个实例 相同颜色填充、轮廓曲线结合{tag}(1) Color_join.rar (510.49 KB) 相同颜色填充、轮廓曲线结合{tag}(2)


补充内容 (2016-11-17 18:19):
begin
  FApp.ActiveDocument.Unit_ := cdrMillimeter;
  if FApp.ActiveLayer.Shapes.Count = 0 then
  begin
    MessageBox(0, '图层为空', '提示', MB_OK);
    exit;
  end;
  FApp.ActiveWindow.Refresh;
...

补充内容 (2016-11-17 18:21):
var
  st: string;
  st1: string;
  sh: Shape;
  sr1: ShapeRange;
  js: Integer;
  t: Integer;
  n: Integer;
  i: Integer;
label
  n1, n2;

补充内容 (2016-11-17 18:39):
同颜色曲线合并的源码7楼!

评分

参与人数 2印币 +60 收起 理由
秋东 + 30 赞一个!
admin + 30 很给力!

查看全部评分

华印网相关搜索

累计签到:250 天
连续签到:1 天
发表于 2016-11-16 23:35:19 | 显示全部楼层
跟增强选择一样吧相同颜色填充、轮廓曲线结合{tag}(3)
回复 支持 反对 送花

使用道具 举报

累计签到:268 天
连续签到:1 天
发表于 2016-11-17 09:27:14 | 显示全部楼层
先整个下看用用,通用的不分版本么
回复 支持 反对 送花

使用道具 举报

累计签到:296 天
连续签到:0 天
发表于 2016-11-17 10:50:52 | 显示全部楼层
先下载用用看,楼主这么做肯定有他独到的地方
回复 支持 反对 送花

使用道具 举报

累计签到:649 天
连续签到:2 天
发表于 2016-11-17 12:53:23 | 显示全部楼层
试试看能不能提高效率。
回复 支持 反对 送花

使用道具 举报

累计签到:552 天
连续签到:0 天
发表于 2016-11-17 15:26:54 来自手机 | 显示全部楼层
又是delphi编写的,牛啊,代码能不能看一下呢
回复 支持 反对 送花

使用道具 举报

累计签到:221 天
连续签到:0 天
 楼主| 发表于 2016-11-17 18:19:50 | 显示全部楼层
本帖最后由 ggcupp 于 2016-11-17 18:37 编辑

添加到cpg框架里的窗体,增加一个按钮,复制到按钮单击就可以了,实现同颜色曲线合并的功能!
实现了基本的vba转成cpg插件的功能。
procedure TForm1.btn1Click(Sender: TObject);
var
  st: string;
  st1: string;
  sh: Shape;
  sr1: ShapeRange;
  js: Integer;
  t: Integer;
  n: Integer;
  i: Integer;
label
  n1, n2;
begin
  FApp.ActiveDocument.Unit_ := cdrMillimeter;
  if FApp.ActiveLayer.Shapes.Count = 0 then
  begin
    MessageBox(0, '图层为空', '提示', MB_OK);
    exit;
  end;
  FApp.ActiveWindow.Refresh;
  FApp.ActiveDocument.BeginCommandGroup('rename');
  FApp.Optimization := True;
  js := 1;
  i := FApp.ActiveLayer.Shapes.Count;
n1:
  sr1 := FApp.CreateShapeRange;
  if FApp.ActiveLayer.Shapes[js].type_ = cdrCurveShape then
  begin
    st := FApp.ActiveLayer.Shapes[js].Outline.Color.Name[True];
    if (st = 'R: 0 G: 0 B: 0') or (st = '') or (st = 'R: 255 G: 0 B: 0') or (st = 'C: 0 M: 0 Y: 0 K: 100') or (st = 'C: 0 M: 100 Y: 100 K: 0') then
    begin
      if js < FApp.ActiveLayer.Shapes.Count then
      begin
        js := js + 1;
        goto n1;
      end;
    end;
    n := FApp.ActiveLayer.Shapes.Count;
    if js = n then
    begin
      MessageBox(0, '绘制完成!', '提示', MB_OK);
      goto n2;
    end;

[sell=1]for t := js to n do
    begin
      st1 := FApp.ActiveLayer.Shapes[t].Outline.Color.Name[True];
      if st1 = st then
        sr1.Add(FApp.ActiveLayer.Shapes[t]);
      if t = n then
      begin
        if sr1.Count >= 2 then
          sh := sr1.Combine;
        sr1 := nil;
        js := js + 1;
        if js > FApp.ActiveLayer.Shapes.Count then
        begin
          MessageBox(0, '绘制完成!', '提示', MB_OK);
          goto n2;
        end;
        goto n1;
      end;
    end;
  end
  else
  begin
    if js < FApp.ActiveLayer.Shapes.Count then
    begin
      js := js + 1;
      goto n1;
    end;
  end;
  if sr1.Count >1 then
  begin
    sr1.Combine;
    MessageBox(0, '绘制完成!', '提示', MB_OK);
  end;
n2:
  if i = FApp.ActiveLayer.Shapes.Count then
    MessageBox(0, '激活层无满足条件的对象!', '提示', MB_OK);
  FApp.Optimization := False;
  FApp.ActiveDocument.EndCommandGroup;
  FApp.ActiveWindow.Refresh;
  FApp.Application.Refresh;
相同颜色填充、轮廓曲线结合{tag}(4)
[/sell]
end;



回复 支持 反对 送花

使用道具 举报

累计签到:221 天
连续签到:0 天
 楼主| 发表于 2016-11-17 18:39:01 | 显示全部楼层
同颜色曲线合并的源码7楼!
回复 支持 反对 送花

使用道具 举报

累计签到:187 天
连续签到:0 天
发表于 2016-11-18 18:38:32 | 显示全部楼层
CPG格式的插件,值得欢呼!
回复 支持 反对 送花

使用道具 举报

累计签到:187 天
连续签到:0 天
发表于 2016-11-18 18:39:17 | 显示全部楼层
希望下次写CPG时向你请教一下
回复 支持 反对 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

注意注意注意:必看上一条 /1 下一条

华印网 - 华印社区
Share More 周一至周日:09:00 - 21:00
华印网旗下的设计印刷制作类专业技术站点
请勿发布违反国家法律法规的内容,会员观点不代表本站立场
企鹅群号:119572101

华印网汇集印前印后技术、PDF拼版、防伪包装、数码印刷、合版印刷、图文设计、平面设计、数码印刷及CTP等最新印刷技术,提供软件汉化、插件汉化、cdr插件、ai插件、ps插件、pdf插件、印刷流程、ctp输出、印刷软件、印能捷、esko、CorelDRAW、InDesign、Illustrator、CTP、CDR以及PDF软件下载的综合性印刷论坛社区!

Powered by Discuz! X3.4 © 2001-2021,Tencent Cloud.

站点地图|小黑屋|手机版|Archiver|华印 ( 粤ICP备19020152号-1 )

GMT+8, 2024-3-29 17:34 , Processed in 0.040783 second(s), 33 queries , Gzip On, Yac On.

快速回复 返回顶部 返回列表