We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: June 24, 2019).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

PDF Export

Thread ID:

Created:

Updated:

Platform:

Replies:

150394 Jan 5,2020 03:06 PM UTC Jun 23,2020 02:58 PM UTC ASP.NET MVC - EJ 2 9
loading
Tags: Grid
Barbara
Asked On January 5, 2020 03:06 PM UTC

Hello,
I'm trying to export my grid to pdf. If I take the example on documentation page it works, when I make my own grid it doesn't work. Excel export on the same page is working. My razor file is attached. Thanks, Barbara

Attachment: PdfExport_c679de01.zip

Balaji Sekar [Syncfusion]
Replied On January 6, 2020 02:08 PM UTC

Hi Barbara, 
 
Greetings from Syncfusion support. 
 
Based on your query, We have prepared a sample but we are unable to reproduce the issue at our end. Please refer the below code example and sample for more information. 
 
 
            @Html.EJS().Grid<gridmvclocalization.Controllers.OrdersDetails> 
        ("Grid").DataSource((IEnumerable<object> 
    )ViewBag.dataSource).AllowPdfExport().AllowExcelExport().ToolbarClick("toolbarClick").Columns(col => 
    { 
        col.Field("OrderID").HeaderText("Order ID").Width("150").Add(); 
        col.Field("CustomerID").HeaderText("Customer Name").Width("150").Add(); 
        col.Field("Freight").HeaderText("Freight").Width("160").Format("C2").TextAlign(Syncfusion.EJ2.Grids.TextAlign.Right).Add(); 
        col.Field("ShipCountry").HeaderText("Ship Country").Width("140").Add(); 
 
    }).AllowGrouping().GroupSettings(group => { group.Columns(new string[] { "ShipCountry" }). 
    CaptionTemplate("#captiontemplate"); }).AllowPaging().Aggregates(agg=> { agg.Columns(new List<Syncfusion.EJ2.Grids.GridAggregateColumn>() { new Syncfusion.EJ2.Grids.GridAggregateColumn() { Field = "Freight", Format = "C2", Type = "Average", GroupCaptionTemplate = "Average: ${Average}" } }).Add(); }).Toolbar(new List<string> () { "PdfExport", "ExcelExport" }).PageSettings(page => page.PageCount(2)).Render() 
             
 
<script> 
    function toolbarClick(args) { 
        var gridObj = document.getElementById("Grid").ej2_instances[0]; 
        if (args.item.id === 'Grid_pdfexport') { 
            gridObj.pdfExport(); 
        } 
        else if (args.item.id === 'Grid_excelexport') { 
            gridObj.excelExport(); 
        } 
    } 
</script> 
 
<script id="captiontemplate" type="text/x-template"> 
    ${field} - ${key} 
</script> 
 
 
If we misunderstood anything wrongly please get back to us with the below following details that will be helpful for us to provide better solution. 
 
  1. Share your exact requirement about your grid customization.
  2. If possible please reproduce the issue with our above attached sample.
  3. Please share your issue scenario in video demonstration.
 
Regards, 
Balaji Sekar. 


Barbara
Replied On January 6, 2020 04:42 PM UTC

Thanks for your reply. Slovenian character seems to be the problem (č,š, ž or Č,Š, Ž). When I debug my web page I get error
Error: ArgumentOutOfRangeException:index, The character is not supported by the font.                                                        ej2.min.js:1:1787014
I'm sending You my razor file, my controller and example excel file exported from the same page. (I've added translation for columns in excel file.) Can I do something to fix this?
Thanks Barbara




Attachment: NotWorking_764175fd.zip

Prasanna Kumar Viswanathan [Syncfusion]
Replied On January 7, 2020 11:02 AM UTC

Hi Barbara, 
 
Thanks for the update. 
 
Query#: Slovenian character seems to be the problem (č,š, ž or Č,Š, Ž) 
 
We can reproduce the same issue (Error: ArgumentOutOfRangeException:index, The character is not supported by the font.) when we export the Grid to PDF. The mentioned issue is reproduced when we used Slovenian character in grid (header, content) which is not supported by the default fonts.  
 
To change the default font of Grid header, content and caption cells in the exported document we suggest you to use ‘theme’ property of PdfExportProperties property. Please refer the below code example, sample and documentation for more information. 
 
 
@Html.EJS().Grid<gridmvclocalization.Controllers.OrdersDetails> 
        ("Grid").DataSource((IEnumerable<object> 
    )ViewBag.dataSource).AllowPdfExport().AllowExcelExport().ToolbarClick("toolbarClick").Columns(col => 
    { 
        col.Field("OžrderID").HeaderText("OžrderID").Width("150").Add(); 
        col.Field("CučstomerID").HeaderText("CučstomerID").Width("150").Add(); 
        col.Field("Freight").HeaderText("Freight").Width("160").Format("C2").TextAlign(Syncfusion.EJ2.Grids.TextAlign.Right).Add(); 
        col.Field("ShipCountry").HeaderText("Ship Country").Width("140").Add(); 
 
    }).AllowGrouping().GroupSettings(group => { group.Columns(new string[] { "ShipCountry" }). 
    CaptionTemplate("#captiontemplate"); }).AllowPaging() 
    .Aggregates(agg=> { agg.Columns(new List<Syncfusion.EJ2.Grids.GridAggregateColumn>() { new Syncfusion.EJ2.Grids.GridAggregateColumn() { Field = "Freight", Format = "C2", Type = "Average", GroupCaptionTemplate = "Average: ${Average}" } }).Add(); }) 
        .Toolbar(new List<string> 
            () { "PdfExport", "ExcelExport" }).PageSettings(page => page.PageCount(2)).Render() 
            ) 
</div> 
 
<script> 
    function toolbarClick(args) { 
        var gridObj = document.getElementById("Grid").ej2_instances[0]; 
        if (args.item.id === 'Grid_pdfexport') { 
            let pdfExportProperties = { 
                theme: { 
                    header: { font: new ej.pdfexport.PdfTrueTypeFont(adventProFont, 12) }, 
                    caption: { font: new ej.pdfexport.PdfTrueTypeFont(adventProFont, 10) }, 
                    record: { font: new ej.pdfexport.PdfTrueTypeFont(adventProFont, 9) } 
                } 
            }; 
            gridObj.pdfExport(pdfExportProperties); 
        } 
        else if (args.item.id === 'Grid_excelexport') { 
            gridObj.excelExport(); 
        } 
    } 
var adventProFont = 'AAEAAAARAQAABAAQRFNJRwAAAAEAALa8AAAACEZGVE1fekHUAACnZAAAABxHREVGACgBwQAAp4AAAA………………………………………………………………………………………………………………………' 
</script> 
 
<script id="captiontemplate" type="text/x-template"> 
    ${field} - ${key} 
</script> 
 
 
 
 
Regards, 
Prasanna Kumar N.S.V 
 


Barbara
Replied On January 7, 2020 02:30 PM UTC

Thanks, it worked  :)  Barbara

Prasanna Kumar Viswanathan [Syncfusion]
Replied On January 7, 2020 05:38 PM UTC

Hi Barbara, 
 
We are happy to hear that the provided solution has been working fine. 
 
Please get back to us if you need any further assistance. 
 
Regards, 
Prasanna Kumar N.S.V 


Anushree Nagore
Replied On June 19, 2020 10:37 AM UTC

PDF export does not work properly on firefox. browser, when I use custom font.(pdfTrueTypeFont). It exports blank pdf.

Prasanna Kumar Viswanathan [Syncfusion]
Replied On June 22, 2020 09:56 AM UTC

Hi Barbara, 
 
Thanks for the update. 
 
Based on your query you have mentioned that the PDF Exporting is not working fine with the firefox browser when using the custom font (PdfTrueTypeFont). We checked the previous attached sample with the firefox and the PDF exporting has been working fine at our end. 
 
For your convenience we have attached the video and please download the video from the following link 
 
 
To find the root cause of an issue, we need the following details 
 
1. Share the complete Grid code example. 
 
2. Share the video demonstration of an issue. 
 
3. Have you faced any script error while exporting to PDF? If yes, share the screenshot and stackrace of an issue. 
 
4. If possible please replicate the issue in the previous attached sample. 
 
5. Share the firefox browser version. 
 
Note: We checked in firefox browser version 72.0.2 
 
Regards, 
Prasanna Kumar N.S.V 


Barbara
Replied On June 22, 2020 10:06 AM UTC

Your answer on January resolved my problem, thanks.
Anushree Nagore has now a problem not me. Best regards Barbara

Ajith Govarthan [Syncfusion]
Replied On June 23, 2020 02:58 PM UTC

Hi Anushree Nagore, 

Sorry for the inconveniences. 

We have requested the some details  on June 22, 2020 09:56 AM UTC to validate the issue at our end and we also shared the video demonstration of the issue. So please share the requested details to validate further on your requirement. 

Regards, 
Ajith G. 


CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Please sign in to access our forum

This page will automatically be redirected to the sign-in page in 10 seconds.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile
Live Chat Icon