找回密码
 立即注册

QQ登录

只需一步,快速开始

zxfreg

初级会员

42

主题

132

帖子

352

积分

初级会员

积分
352

微信认证勋章

[已处理] 导出pdf问题

zxfreg
初级会员   /  发表于:2019-3-13 11:36  /   查看:6279  /  回复:11
image.png732801513.png
两个单元格设置的都是左对齐,单元格内容一样,但是导出pdf的时候有以下问题:
1、前置的空格显示不一样;
2、自动换行格式也不一样;
3、单元格内容右边显示不对,留有大量空白;
这几个问题怎么处理?

aa (3).rar

7.86 KB, 下载次数: 113

11 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-3-14 09:15:55
沙发
您好,前置空格不一样是因为两个单元格里一个用的空格,另一个用的 需要统一一下
第二个问题也是这个原因

  1.               <Data type="System.String">&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;依据JTG/T&amp;nbsp;F20-2015《公路路面基层施工技术细则》评定,该样品所检指标符合钙质Ⅱ级消石灰技术要求。</Data>
  2.               <Tag type="System.String">1</Tag>
  3.             </Cell>
  4.             <Cell Row="20" Column="0">
  5.               <Data type="System.String">备注</Data>
  6.             </Cell>
  7.             <Cell Row="20" Column="1">
  8.               <Data type="System.String">    依据JTG/T F20-2015《公路路面基层施工技术细则》评定,该样品所检指标符合钙质Ⅱ级消石灰技术要求。</Data>
  9.             </Cell>
复制代码


3. 右边换行空白是根据字体量字的问题,这个是系统接口量的,暂时无法解决。
回复 使用道具 举报
zxfreg
初级会员   /  发表于:2019-3-14 12:37:14
板凳
dexteryao 发表于 2019-3-14 09:15
您好,前置空格不一样是因为两个单元格里一个用的空格,另一个用的&amp;nbsp;需要统一一下
第二个问题也是这 ...

image.png377110900.png
这个用的是空格,为什么到T哪就换行了呢?
回复 使用道具 举报
zxfreg
初级会员   /  发表于:2019-3-14 12:43:43
地板
dexteryao 发表于 2019-3-14 09:15
您好,前置空格不一样是因为两个单元格里一个用的空格,另一个用的&amp;nbsp;需要统一一下
第二个问题也是这 ...

单元格这个属性EncodeValue = false时怎么强制换行?
用<br>在表格里看着是换行了,但导出pdf时换行就没了,就显示<br>
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-3-15 16:53:34
5#
zxfreg 发表于 2019-3-14 12:37
这个用的是空格,为什么到T哪就换行了呢?

系统决定的,后面没有空格就当一整个“单词”了。

<br/>的问题确实没有好的办法,两者暂时无法兼得
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-3-22 13:50:34
6#
我这边设置了以下wrap,换行好了,最开头的空格要处理下。

  1.             var ct = new FarPoint.Web.Spread.TextCellType();
  2.             ct.AllowWrap = true;
  3.             FpSpread1.ActiveSheetView.Cells[19, 1].CellType = ct;
复制代码


image.png820598754.png
回复 使用道具 举报
zxfreg
初级会员   /  发表于:2019-3-22 15:02:59
7#
dexteryao 发表于 2019-3-22 13:50
我这边设置了以下wrap,换行好了,最开头的空格要处理下。

你好,我这边试了一下,还是不行 image.png225928038.png 还是原样子, string jl = FpSpread1.Sheets[0].Cells[r, c].Text;
                //FpSpread1.Sheets[0].Cells[r, c].EncodeValue = false;
                jl = jl.Replace("&nbsp;&nbsp;&nbsp;&nbsp;", "&nbsp;&nbsp;");
                var ct = new FarPoint.Web.Spread.TextCellType();
                ct.AllowWrap = true;
                FpSpread1.Sheets[0].Cells[r, c].CellType = ct;
                FpSpread1.Sheets[0].Cells[r, c].Value = jl;
回复 使用道具 举报
zxfreg
初级会员   /  发表于:2019-3-22 15:37:04
8#
dexteryao 发表于 2019-3-22 13:50
我这边设置了以下wrap,换行好了,最开头的空格要处理下。

你好,我这测试了一下,还是不行
image.png427626037.png
代码如下:
string filepath = "";
        string dataDir = AppDomain.CurrentDomain.BaseDirectory;//
        filepath = dataDir + "bb.xml";
        bool v = FpSpread1.Open(filepath);
        string jl = FpSpread1.Sheets[0].Cells[19, 1].Text;
        jl = jl.Replace("&nbsp;&nbsp;&nbsp;&nbsp;", "&nbsp;&nbsp;");
        var ct = new FarPoint.Web.Spread.TextCellType();
        ct.AllowWrap = true;
        FpSpread1.Sheets[0].Cells[19, 1].CellType = ct;
        FpSpread1.Sheets[0].Cells[19, 1].Text = jl;
        filepath = dataDir + "aa.pdf";   
        FpSpread1.SavePdf(filepath);

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-3-22 16:38:58
9#
你这个是PDF截图还是网页截图,我用你代码,导出的PDF,依据前面是两个中文字符的距离
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-3-22 16:54:07
10#

  1. namespace Spread_Web_V12
  2. {
  3.     public partial class WebForm2 : System.Web.UI.Page
  4.     {
  5.         protected void Page_Load(object sender, EventArgs e)
  6.         {

  7.             if (this.IsPostBack) return;
  8.             FpSpread1.Open(@"C:\Users\PBD\Desktop\aa (3).xml");

  9.             string jl = FpSpread1.Sheets[0].Cells[19, 1].Text;
  10.             jl = jl.Replace("&nbsp;&nbsp;&nbsp;&nbsp;", "&nbsp;&nbsp;");
  11.             var ct = new FarPoint.Web.Spread.TextCellType();
  12.             ct.AllowWrap = true;
  13.             FpSpread1.Sheets[0].Cells[19, 1].CellType = ct;
  14.             FpSpread1.Sheets[0].Cells[19, 1].Text = jl;

  15.             FpSpread1.SavePdf(@"C:\Users\PBD\Desktop\aaa.pdf");
  16.         }
  17.     }
  18. }
复制代码

image.png96921080.png
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部