小编kuu*_*nbo的帖子

使用iText库将html转换为pdf时未应用hr的内联CSS

我正在使用Itext库为android将html转换为pdf,这是正常工作但在某些事情它没有正确解析.我想创建一个红色的虚线分隔符,但它总是给我一个深灰色的实线分隔符.

我的html标签是

<hr noshade style="border: 0; width:100%;border-bottom-width: 1px; border-bottom-style: dotted; border-bottom-color: red">
Run Code Online (Sandbox Code Playgroud)

我的转换代码

        Document document = new Document(PageSize.A4);

        //this sets the margin to the created pdf
        document.setMargins(35, 35, 150, 100);

        PdfWriter writer = PdfWriter.getInstance(document,
                new FileOutputStream(fileWithinMyDir));
        if (isPrescription) {
            HeaderFooterPageEvent event = new HeaderFooterPageEvent();
            writer.setPageEvent(event);
        } else {
            CertificateFooterPageEvent event = new CertificateFooterPageEvent();
            writer.setPageEvent(event);
        }
        document.open();
        HtmlPipelineContext htmlContext = new HtmlPipelineContext(null);
        htmlContext.setTagFactory(Tags.getHtmlTagProcessorFactory());
        htmlContext.setImageProvider(new AbstractImageProvider() {
            public String getImageRootPath() {

                Uri uri = Uri.parse("file:///android_asset/");

                return uri.toString();
            }
        });


        CSSResolver cssResolver = …
Run Code Online (Sandbox Code Playgroud)

html android itext xmlworker

9
推荐指数
1
解决办法
1288
查看次数

如何使用EPPlus在Excel文件(.XLSX)中查找数据范围?

给定Excel电子表格,如何查找数据范围?有没有我可以打电话的方法或我可以检查的财产?我是否需要逐个单元格检查空值然后逐行检查?必须有一个更简单的方法,对吗?

我今天早上刚刚下载了EPPlus库,所以我可能会忽略一些基本的东西.我还检查了示例项目,但没有看到与此问题相关的任何内容.

谢谢!

c# excel visual-studio-2010 epplus

7
推荐指数
1
解决办法
4007
查看次数

iTextSharp:如何调整图像大小以适应修复大小?

我希望能够使用iTextSharp 4.2.0将图像大小调整为159x159点的尺寸,但生成的图像需要具有指定的尺寸.

我试过这个:

Image image = Image.GetInstance(imagePath);
image.ScaleAbsolute(159f, 159f);
Run Code Online (Sandbox Code Playgroud)

但图像不是正方形.它保持纵横比.

示例:我有这个图片:

在此输入图像描述

结果图像应该看起来像这样:

在此输入图像描述

谢谢.

c# resize image itext

7
推荐指数
2
解决办法
5万
查看次数

使用javascriptSerializer在powershell 2.0中使用Json循环引用

我在powershell 2.0中编写脚本,目前无法升级到3.0或更高版本.在这个脚本中,我尝试使用此链接中的代码将一些数据序列化为JSON(PowerShell 2.0 ConvertFrom-Json和ConvertTo-Json实现):

function ConvertTo-Json20([object] $item){
    add-type -assembly system.web.extensions
    $ps_js=new-object system.web.script.serialization.javascriptSerializer
    return $ps_js.Serialize($item)
}
Run Code Online (Sandbox Code Playgroud)

我的问题是我以某种方式获得循环引用,我真的不知道为什么.我设置了一小段测试数据,结构在powershell中看起来像这样:

$testRoot = @{
    "id" = "1"
    "children" = @( 
        @{
            "id" = "2"
            "children" = @( 
                @{
                    "id" = "2";
                };
                @{
                    "id" = "3";
                }
            );
        };
        @{
            "id" = "4"
            "children" = @( 
                @{
                    "id" = "5";
                }
            );
        }
    )
}
Run Code Online (Sandbox Code Playgroud)

我知道它看起来很垃圾,但我只需要这种格式.

我需要序列化的结构有更多的层,所以更多的"孩子",并有它变得奇怪的点.

当我尝试这个:

ConvertTo-Json20 $testRoot
Run Code Online (Sandbox Code Playgroud)

一切正常.结构被解析如下:

{
   "id":"1",
   "children":[
        {
            "id":"2",
            "children":[
               {
                   "id":"2"
               },
               {
                   "id":"3"
               } …
Run Code Online (Sandbox Code Playgroud)

powershell json powershell-2.0 javascriptserializer

7
推荐指数
1
解决办法
486
查看次数

iTextSharp和特殊字符(斯洛伐克字素)

我遇到一些特殊的斯洛伐克人物(例如č,ň和ť).它们在itextsharp生成的pdf中消失了.

从我能够找到的,这个问题与我的编码有关BaseFont.目前我正在使用这个:

BaseFont.CreateFont(BaseFont.HELVETICA, iTextSharp.text.pdf.BaseFont.CP1250, BaseFont.NOT_EMBEDDED)
Run Code Online (Sandbox Code Playgroud)

有人建议这应该有效:

BaseFont.CreateFont(BaseFont.HELVETICA, iTextSharp.text.pdf.BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED)
Run Code Online (Sandbox Code Playgroud)

但它抛出此异常错误:

System.ArgumentException was caught
Message='Identity-H' is not a supported encoding name.
Parameter name: name
ParamName=name
Source=mscorlib
Run Code Online (Sandbox Code Playgroud)

有人知道可能的原因和解决方案吗?

pdf-generation encode utf-8 itext special-characters

6
推荐指数
1
解决办法
7038
查看次数

将存储为文本的数字转换为数字

我有一个Excel工作簿,其中C列作为文本存储.将它转换为数字的C#语法是什么?我知道这个VBA会做这个工作

Range("C:C").Select
With Selection
    Selection.NumberFormat = "0.00%"
    .Value = .Value
End With
Run Code Online (Sandbox Code Playgroud)

我用C#尝试了这个 - 但它将数字存储为文本.

ExcelWorksheet ws3 = pck.Workbook.Worksheets.Add("New Sheet");
ws3.Cells["A1"].LoadFromDataTable(tableforme, true);
ws3.View.FreezePanes(2, 4);
ws3.Cells["C:C"].Style.Numberformat.Format = "#,##0.00";
ws3.Cells["C:C"].Style.Numberformat.Format = "0%";
Run Code Online (Sandbox Code Playgroud)

我必须在C#中做什么来转换作为文本存储的数字的列.

c# excel vsto c#-4.0 epplus

6
推荐指数
1
解决办法
1万
查看次数

如何绕过iTextSharp桌边的角?

我想在itextsharp中制作一个圆角矩形.这是我现在没有舍入的输出:

在此输入图像描述

这是我处理输出的代码:

pdftbl = new PdfPTable(3);
pdftbl.WidthPercentage = 100;
width = new float[3];
width[0] = 0.6F;
width[1] = 0.2F;
width[2] = 0.6F;
pdftbl.SetWidths(width);
pdfcel = new PdfPCell(new Phrase(Insuredaddress, docFont9));
pdfcel.BorderColor = Color.BLACK;
pdftbl.AddCell(pdfcel);
pdfcel = new PdfPCell(new Phrase("", docWhiteFont9));
pdfcel.Border = 0;
pdftbl.AddCell(pdfcel);
pdfcel = new PdfPCell(new Phrase(BkrAddrss, docFont9));
pdfcel.BorderColor = Color.BLACK;
pdftbl.AddCell(pdfcel);
objDocument.Add(pdftbl);
Run Code Online (Sandbox Code Playgroud)

我可以更改/添加什么来实现所需的结果?

c# itext

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

如何使用iText将带图像和超链接的HTML转换为PDF?

我想转换HTMLPDF在使用iTextSharp的ASP.NET同时使用Web应用程序的MVC, 网页形式.在<img><a>元素有绝对和相对 URL和一些的<img>元素的base64.典型的答案在这里SO和谷歌搜索结果中使用泛型HTMLPDF的代码XMLWorkerHelper看起来是这样的:

using (var stringReader = new StringReader(xHtml))
{
    using (Document document = new Document())
    {
        PdfWriter writer = PdfWriter.GetInstance(document, stream);
        document.Open();
        XMLWorkerHelper.GetInstance().ParseXHtml(
            writer, document, stringReader
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

所以这样的样本HTML:

<div>
    <h3>HTML Works, but Broken in Converted PDF</h3>
    <div>Relative local <img>: <img src='./../content/images/kuujinbo_320-30.gif' /></div>
    <div>
        Base64 <img>:
        <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==' />
    </div>
    <div><a …
Run Code Online (Sandbox Code Playgroud)

pdf itext html-parsing html-agility-pack xmlworker

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

使用itextsharp生成html到pdf

public void pdfgenforffd(TextBox TextBox3, HiddenField HiddenField1, HiddenField HiddenField4, AjaxControlToolkit.HTMLEditor.Editor Editor1)
{

    HttpContext.Current.Response.Clear();
    HttpContext.Current.Response.ContentType = "application/pdf";
    // Create PDF document
    Document pdfDocument = new Document(PageSize.A4, 50, 25, 15, 10);

    PdfWriter wri = PdfWriter.GetInstance(pdfDocument, new FileStream("d://" + HiddenField1.Value + "_" + HiddenField4.Value + ".pdf", FileMode.Create));

    PdfWriter.GetInstance(pdfDocument, HttpContext.Current.Response.OutputStream);

    pdfDocument.Open();
    string htmlText = Editor1.Content;
    //string htmlText = htmlText1.Replace(Environment.NewLine, "<br/>");

    HTMLWorker htmlWorker = new HTMLWorker(pdfDocument);

    htmlWorker.Parse(new StringReader(htmlText));


    pdfDocument.Close();
    HttpContext.Current.Response.End();
}
Run Code Online (Sandbox Code Playgroud)

我正在使用上面的代码从HTMLEditor(ajax控件)中的html文本生成pdf.如果我用不同宽度的每一列硬编码一个表,进入HTMLEditor文本而不是生成pdf时,列得到相同的分配即使所有列在pdf上都有固定的大小,即使我为每列指定了一些自定义宽度.

我想生成可以将html转换为pdf的pdf,也可以将表格列除以指定的宽度.怎么做?

c# pdf asp.net pdf-generation itext

3
推荐指数
1
解决办法
3万
查看次数

使用itextsharp将图像html旁边的文本放到pdf中

我正在使用itextsharp将html转换为pdf.我必须在图像旁边放置文字而不是图像下方.在html中,我能够在图像旁边放置文本,但在pdf中,文本行在图像之后开始

请帮忙.

html image itext xmlworker

3
推荐指数
1
解决办法
8351
查看次数