找回密码
 立即注册

QQ登录

只需一步,快速开始

iceman
社区贡献组   /  发表于:2013-11-7 14:05:00
11#
回复 8楼450289068的帖子

缩放后是否失真,我需要和厂商进行确认。在收到回复后,我会通知你。
打印效果和打印机设备有关。
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-7 14:43:00
12#
感谢版主关注 我急于需要是否失真的答案 敬等佳音~~~

还有 关于我的小问题 :
1. 设定列高度之后 发现填入图片后 原空白区域还是空白区域 图片插入到上方并且撑大列高度 怎么设定插入方式?还是重新设定列高度? 来不要撑开高度来保证模版整体大小不是第二页。因为设计模版的时候是按照整一页设计的,当数据填充后,就因为在邮件合并的点上插入了数据,剩下本来设定的空白 还是占据原有的空间和大小 并向下排列。
有没有什么设定 可以达到 当模版设计好之后 填充数据不会撑开原有设定的列高度?
怎么获取列高度 来判定是否已经变形 ,通过设定还是代码 ,来调整字体大小 已满足列不会被撑开。。

辛苦了斑竹。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-11-7 20:17:00
13#
回复 12楼450289068的帖子

450289068 你好,
图像失真问题我已经发送给产品组,在得到回复后我会通知你。

限制页数为 1 的问题,我想可以通过获取 Table 的高度,调整图片比例来限制,获取适当的图片高度使其不变形。
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-8 10:00:00
14#
缩放到固定高度 是没有问题 可是如果首先在模版中设置好列高之后 ,我是应用mergefield来定位图片位置的。当我将图片插入到位置后 ,在此列中原先制作模版的空白还是那么多在存在 ,而且图片也因为有自身的设定高度 而撑开了原先模版列的设置高度 。有没有比较好的方法,或者做法 能提供下吗???
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-8 10:02:00
15#
首先获取列宽度,单位是twip 换算/15=像素。
计算原图和列宽比例值。将原图缩放到列宽比例。设置image属性,理想的情况 是图片应缩放为列的宽度显示 ,实际上却图片缩放很小 占不了原先模版设置的宽度。

版主遇到过吗?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-11-8 19:17:00
16#
回复 14楼450289068的帖子

如果想要模板的页数控制在一页,就无法避免有空白的现象。
或者是高度和宽度安照不同比例设置,这样图像就失去比例了。不协调。
两者只能取其一。

如果是第一种情况,可以通过以下方法获取Table高度:
所以我们需要获取 Table 的高度来限制 Image 的比例,代码如下:

  1. public int getTableHeight(TXTextControl.Table table)
  2.         {
  3.             int beginPos = 0;
  4.             int endPos = 0;
  5.             // Get Table
  6.             table = textControl1.Tables.GetItem(0);
  7.             // Get cell in first row
  8.             TXTextControl.TableCell cell = table.Cells.GetItem(1, 1);
  9.             textControl1.Selection.Start = cell.Start;


  10.             /***********
  11.              * Calculate BeginPoint.Y of table
  12.              * *********/

  13.             // Get first TextChar in Cell
  14.             TXTextControl.TextChar textChar = textControl1.TextChars[textControl1.Selection.Start + 1];
  15.             // Get Rectangle.Position.Y of textChar
  16.             beginPos = textChar.Bounds.Y;         // TWIPS
  17.             // Deduct TopBorderWidth and TopTextDistance
  18.             beginPos = beginPos - (cell.CellFormat.TopBorderWidth + cell.CellFormat.TopTextDistance); // TWIPS

  19.             /*************
  20.              * Calculate EndPoint.Y of table
  21.              * ***********/
  22.             // Get cell in last row
  23.             cell = table.Cells.GetItem(table.Rows.Count, 1);
  24.             textControl1.Selection.Start = cell.Start;
  25.             // Get first TextChar in Cell
  26.             textChar = textControl1.TextChars[textControl1.Selection.Start + 1];
  27.             // Get Rectangle.Position.Y and deduct Height of TextChar
  28.             endPos = textChar.Bounds.Y + textChar.Bounds.Height;         // TWIPS
  29.             // Add BottomBorderWidth and BottemTextDistance
  30.             endPos = endPos + (cell.CellFormat.BottomBorderWidth + cell.CellFormat.BottomTextDistance);

  31.             /************
  32.              * Calculate Height
  33.              * **********/

  34.             int height = endPos - beginPos;        //TWIPS
  35.             return height;                         //TWIPS
  36.         }
复制代码
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-11 09:04:00
17#
版主你好 谢谢你耐心的指导  你的这个算法 和api中提供的table.Rows.GetItem().MinimumHeight  是一样的吗?
这个api的属性 具体是什么时候使用 ??
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-11 09:25:00
18#
可能有些着急 ,不知道厂家对于我的问题 是否已经有回复了~
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-11-11 13:54:00
19#
回复 18楼450289068的帖子

450289068 你好,

MinimumHeight   指的是 Table 的最小值,而上面这个实现方法是实际值。
关于图像失真的问题,我已经给厂商发送了确认邮件。有消息会通知你。

谢谢
回复 使用道具 举报
450289068
论坛元老   /  发表于:2013-11-11 14:03:00
20#
我考虑用textframe来作为占位符尝试在textframe中插入图片  用textframe的高度和宽度来做为基础 计算 。不知道这样的思路是否可行 。

好的 谢谢   版主辛苦了  请尽快通知我。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部