小编Shr*_*ini的帖子

从OpenXml生成PDF

我试图找到一个可以从OpenXml生成PDF的SDK.我使用Open Xml Power Tools来转换打开的XML和html,并使用iTextSharp将Html解析为PDF.但结果是看起来很糟糕的PDF.

我还没有尝试过iText的RTF解析器.如果我朝这个方向发展,我将最终需要一个RTF转换器,使简单的转换成为一个双重的噩梦.

看起来我最终可能会编写一个基于电动工具OpenXml到HTML转换器的自定义转换器.任何建议表示赞赏.由于许可证太贵(Aspose Word/TxText),我真的在这个时候最终无法找到专业的转换器.


我想我会在调查中投入更多精力.我回到了转换实用程序"http://msdn.microsoft.com/en-us/library/ff628051.aspx"并查看了它的代码.鉴于它最大的缺点是阅读底层样式并生成样式属性.由于不处理自定义真实字体的限制,PDF看起来好多了.明天会更多调查.我希望做过这样的事情/遇到奇怪的问题,并且可以解释一些问题.




    private static StringDictionary GetStyle(XElement el)
    {
        IEnumerable jcL = el.Elements(W.jc);
        IEnumerable spacingL = el.Elements(W.spacing);
        IEnumerable rPL = el.Elements(W.rPr);

        StringDictionary sd = new StringDictionary();

        if (HasAttribute(jcL, W.val)) sd.Add("text-align", GetAttribute(jcL, W.val));

        // run prop exists
        if (rPL.Count() > 0)
        {
            XElement r = rPL.First();
            IEnumerable ftL = el.Elements(W.rFonts);

            if (r.Element(W.b) != null) sd.Add("font-weight", "bolder");
            if (r.Element(W.i) != null) sd.Add("font-style", "italic");
            if (r.Element(W.u) != null) sd.Add("text-decoration", "underline");
            if (r.Element(W.color) != null && HasAttribute(r.Element(W.color), W.val)) sd.Add("color", "#" …
Run Code Online (Sandbox Code Playgroud)

pdf-generation openxml

5
推荐指数
1
解决办法
3759
查看次数

标签 统计

openxml ×1

pdf-generation ×1