how to generate pdf in asp net mvc : Converting pdf to searchable text format SDK control API .net azure asp.net sharepoint manual-report-generator-List-Label4-part160

Programming With .NET 
41 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
try 
LL.Design(); 
catch (ListLabelException ex) 
MessageBox.Show(ex.Message); 
LL.Dispose(); 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
Try 
LL.Design() 
Catch ex As ListLabelException 
MessageBox.Show(ex.Message) 
End Try 
LL.Dispose() 
The  Message  property  of the Exception  class  contains an  error  text, which  –  if a 
corresponding  language  kit  is  present  –  is  also  generally  localized  and  can  be 
displayed directly to the user. 
A complete reference of all Exception classes can be found in the component help 
for .NET. 
2.3.12. Debugging 
Problems occurring on the developer PC can be easily found in 
most cases. The usual features of the development environment 
can be used to spot a problem relatively quickly. The first step is 
to catch any occurring exceptions and to find their cause (see 
section "2.3.10. List & Label in WPF Applications 
As List & Label itself is a non-visual component, it can be used in WPF applications as 
well as in WinForms applications. The Designer itself is no WPF window, however 
this  does  not  affect  its  functionality.  The  WPF  Viewer can be used for  displaying 
preview files and is a replacement for the WinForms PreviewControl. 
2.3.11. Error Handling With Exceptions"). 
Converting pdf to searchable text format - SDK control API:C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net, ASP.NET MVC, WinForms, WPF application
C# PDF to Text (TXT) Converting Library to Convert PDF to Text
www.rasteredge.com
Converting pdf to searchable text format - SDK control API:VB.NET PDF Convert to Text SDK: Convert PDF to txt files in vb.net, ASP.NET MVC, WinForms, WPF application
VB.NET Guide and Sample Codes to Convert PDF to Text in .NET Project
www.rasteredge.com
Programming With .NET 
42 
As a development component List & Label is naturally run under a variety of different 
constellations on the end user side. To find problems there as easily as possible a 
dedicated  debug  tool  is  available  which  provides a  logging function  for  problems 
occurring rarely or only on certain systems so problems can also be examined under 
systems without a debugger. 
Of course the logging function can also be used on the developer PC and provides 
the possibility to check all calls and return values at a glance as well. 
Create Log File 
If a problem only occurs on a customer system, the first thing to do is to create a log 
file. The tool Debwin3 can be used for this purpose. It can be found in the "Tools” 
directory of the List & Label installation. 
Debwin3 has to be started before the application. By Logging > Force Debug Mode 
the  logging  is  forced.  If  the  application  is  started  afterwards,  all  calls  of  the 
component with their return values as well as additional information about module 
versions, operation system, etc. will be logged. 
Every exception thrown under .NET represents a negative value of a function in the 
log. There is usually more helpful information in the log, a typical output could look as 
follows. 
CMLL16  : 12:30:02.082 00000df0/02 3  LlSelectFileDlgTitleEx(2,0X001310BE, 
'(NULL)',0x00008002,0X0344F7C8,260,00000000) 
CMLL16  : 12:30:03.672 00000df0/02 4  =-99 (The user aborted the print.) -> 
'*.rpt' 
First to be seen is the DLL which causes the output, a timestamp for the output, the 
thread ID of the output thread, a consecutive number as well as the actual call with 
all  parameters. In  the  following  line  the  error  code (-99)  is returned as  well as  an 
explanation  for  it  – in this  case the  user has  aborted  the file selection dialog with 
"Cancel”. 
If the application is supposed to create debug logs without the help of Debwin3, this 
can be done in the  configuration file of the  application. Logging can  be forced as 
follows: 
<configuration> 
<appSettings> 
<add key="ListLabel DebugLogFilePath"  
value="c:\users\public\debug.log "/> 
<add key="ListLabel EnableDebug" value="1"/> 
</appSettings> 
</configuration> 
SDK control API:C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
original formatting and interrelation of text and graphical makes PDF document visible and searchable on the a C# programming example for converting PDF to HTML
www.rasteredge.com
SDK control API:VB.NET Image: Robust OCR Recognition SDK for VB.NET, .NET Image
viewed and edited by converting documents and on artificial intelligence to extract text from documents and Texts will be outputted as searchable PDF, PDF/A,TXT
www.rasteredge.com
Programming With .NET 
43 
2.4. Examples 
The examples in this paragraph  show how some  typical  tasks can be solved. The 
code can serve as a template for your own implementations. 
For the sake of clarity, the usual error handling is omitted here. All 
exceptions will be caught directly in the development 
environment. For "real" applications we recommend exception 
handling as described in section "2.3.10. List & Label in WPF 
Applications 
As List & Label itself is a non-visual component, it can be used in WPF applications as 
well as in WinForms applications. The Designer itself is no WPF window, however 
this  does  not  affect  its  functionality.  The  WPF  Viewer can be used for  displaying 
preview files and is a replacement for the WinForms PreviewControl. 
2.3.11. Error Handling With Exceptions". 
2.4.1. Simple Label 
To print a label, use the project type LlProject.Label. If a data source with multiple 
tables,  such  as  a  DataSet,  is  connected,  the  desired  data  for  the  label  can  be 
selected by the DataMember property. 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Products as data source 
LL.DataMember = "Products"; 
// Select label as project type 
LL.AutoProjectType = LlProject.Label;  
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
' Products as data source 
LL.DataMember = "Products" 
SDK control API:VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.
VB.NET PDF Converter SDK for Converting PDF to HTML Webpage is that compared with HTML file, PDF file (a not be easily edited), is less searchable for search
www.rasteredge.com
SDK control API:VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
documents from both scanned PDF and searchable PDF files without that compared to PDF document format, Word file This is an example for converting PDF to Word
www.rasteredge.com
Programming With .NET 
44 
' Select label as project type 
LL.AutoProjectType = LlProject.Label 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose() 
2.4.2. Simple List 
Print and design of simple lists is the "default” and can be started with just a few 
lines of code: 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose() 
2.4.3. Invoice Merge 
An invoice merge is an implicit merge print. The head or parent data contains one 
record for each document which is linked 1:n with the detail or child data. To design 
and to print such a document the parent table has to be passed to List & Label by the 
DataMember property. Furthermore the AutoMasterMode property has to be set to 
AsVariables as shown in the following example: 
SDK control API:C# Create PDF from Text to convert txt files to PDF in C#.net, ASP
NET control for batch converting text formats to editable & searchable PDF document. Sample code for text to PDF converting in C# programming .
www.rasteredge.com
SDK control API:VB.NET Word: .NET Word to SVG Converter Control; Convert Word to
an editable image format) can be more searchable for Google The converting process is not complicated: open a Word For instance, this VB.NET PDF to SVG library
www.rasteredge.com
Programming With .NET 
45 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Order data as variables 
LL.DataMember = "InvoiceHeader"; 
LL.AutoMasterMode = LlAutoMasterMode.AsVariables;  
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
' Order data as variables 
LL.DataMember = "Invoice head" 
LL.AutoMasterMode = LlAutoMasterMode.AsVariables 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose(); 
2.4.4. Print Card With Simple Placeholders 
Printing a full-page project which simply contains placeholders set by the application 
is achieved easily by binding it to a suitable object: 
C#: 
public class DataSource 
public string Text1 { get; set; } 
public double Number1 { get; set; } 
... 
// Prepare data source 
object dataSource = new DataSource { Text1 = "Test", Number1 = 1.234 }; 
ListLabel LL = new ListLabel(); 
LL.DataSource = new ObjectDataProvider(dataSource); 
LL.AutoProjectType = LlProject.Card; 
SDK control API:C# Create PDF from Tiff Library to convert tif images to PDF in C#
Selection of turning tiff into searchable PDF or scanned PDF. Online demo allows converting tiff to PDF online. RasterEdge.XDoc.PDF.dll. RasterEdge.XDoc.TIFF.dll
www.rasteredge.com
SDK control API:C# powerpoint - Convert PowerPoint to HTML in C#.NET
original formatting and interrelation of text and graphical PowerPoint document visible and searchable on the Internet by converting PowerPoint document
www.rasteredge.com
Programming With .NET 
46 
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
VB.NET: 
Public Class DataSource 
Dim _text1 As String 
Dim _number As Double 
Public Property Text1() As String 
Get 
Return _text1 
End Get 
Set(ByVal value As String) 
_text1 = value  
End Set 
End Property 
Public Property Number1() As Double 
Get 
Return _number 
End Get 
Set(ByVal value As Double) 
_number = value 
End Set 
End Property 
End Class 
' Prepare data source 
Dim dataSource As Object = New DataSource() 
dataSource.Text1 = "Test" 
dataSource.Number1 = 1.234 
Dim LL As New ListLabel() 
LL.DataSource = New ObjectDataProvider(dataSource) 
LL.AutoProjectType = LlProject.Card 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose() 
SDK control API:C# Word - Convert Word to HTML in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB.NET Besides, this Word converting library also makes Word document visible and searchable on the
www.rasteredge.com
Programming With .NET 
47 
2.4.5. Sub Reports 
Structuring  of  reports  by  using  the  report  container  is  a  pure  Designer  feature. 
Therefore there  is  no difference  from  the "normal” list as shown  in  section "2.4.2. 
Simple List” 
For using sub tables it is required that parent and child data are relationally linked. So 
the first step is to design a table element for the parent table in the report container. 
The next step will be to add a sub element with the child data by the toolbar in the 
report structure window. 
At print time the corresponding child sub report will be automatically added for each 
record of the parent table. For example the List & Label Sample Application (in the 
start menu's root level) demonstrates this under Design > Extended Samples > Sub 
reports and relations. 
2.4.6. Charts 
The  chart  function  is  also  automatically  supported  by  the  report  container.  See 
section "2.4.2. Simple List". 
The List & Label Sample Application (in the start menu's root level) contains a variety 
of different chart samples under Design > Extended Samples. 
2.4.7. Cross Tables 
Not  surprisingly,  cross  tables will  be implemented the  same way  as  described  in 
section "2.4.2. Simple List”. 
The List & Label Sample Application (in the start menu's root level) contains a variety 
of different cross table samples under Design > Extended Samples. 
2.4.8. Database Independent Contents 
Data is not always available in a database or a DataSet. It can be required to output 
further data in addition to the data from the data source, such as a user name within 
the application, the project name or similar information. In some cases no suitable 
data  provider  seems to  be  available  at  first. These cases will  be  examined  in  the 
following paragraphs. 
Pass Additional Contents 
If only a few variables or fields are to be added to the data of the data source, there 
are two possibilities: 
If the data is constant during the runtime of the report, it can just be added 
prior to the design or print call by using LL.Variables.Add. 
If  the  data  changes  from  page  to  page  or  even  from  line  to  line,  the 
information  can  be  passed  within  the  AutoDefineNewPage  or 
AutoDefineNewLine events by using LL.Fields.Add or LL.Variables.Add. 
The following example shows both approaches: 
Programming With .NET 
48 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Define additional data fields 
LL.Variables.Add("AdditionalData.UserName", GetCurrentUserName()); 
LL.Variables.Add("AdditionalData.ProjectName ", GetCurrentProjectName()); 
… 
// Add event handling for own fields 
LL.AutoDefineNewLine += new AutoDefineNewLineHandler(LL_AutoDefineNewLine); 
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
… 
void LL_AutoDefineNewLine(object sender, AutoDefineNewLineEventArgs e) 
// Switch to next record if necessary 
// GetCurrentFieldValue is function of your application 
// which returns the content of a data field. 
LL.Fields.Add("AdditionalData.AdditionalField", GetCurrentFieldValue()); 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
' Define additional data fields 
LL.Variables.Add("AdditionalData.UserName ", GetCurrentUserName()) 
LL.Variables.Add("AdditionalData.ProjectName ", GetCurrentProjectName()) 
… 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose() 
… 
Sub LL_AutoDefineNewLine(sender As Object, e As AutoDefineNewLineEventArgs)_ 
Handles LL.AutoDefineNewLine 
' Switch to next record if necessary 
Programming With .NET 
49 
' GetCurrentFieldValue is function of your application 
' which returns the content of a data field. 
LL.Fields.Add("AdditionalData.AdditionalField ", GetCurrentFieldValue()) 
End Sub 
Suppress Data From a Data Source 
Particular fields or variables that are not needed (e.g. ID fields which aren't required 
for printing) can be suppressed by using the AutoDefineField and AutoDefineVariable 
events. 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Add event handling for suppressing fields 
LL.AutoDefineField += new AutoDefineFieldHandler(LL_AutoDefineField); 
// Call Designer 
LL.Design(); 
// Print 
LL.Print(); 
LL.Dispose(); 
… 
void LL_AutoDefineField(object sender, AutoDefineElementEventArgs e) 
if (e.Name.EndsWith("ID")) 
e.Suppress = true; 
VB.NET: 
Dim LL As New ListLabel() 
LL.DataSource = CreateDataSet() 
' Call Designer 
LL.Design() 
' Print 
LL.Print() 
LL.Dispose() 
… 
Sub LL_AutoDefineField(sender As Object, e As AutoDefineElementEventArgs)_ 
Handles LL.AutoDefineNewField 
If e.Name.EndsWith("ID") Then 
Programming With .NET 
50 
e.Suppress = True 
End If 
End Sub 
Custom Data Structures / Contents 
For data content  apparently  not  directly supported,  a suitable  provider is found in 
most  cases  anyway.  Business  data  from  applications  can  generally  be  passed 
through the object data provider, if the data is present in comma-separated form, the 
data provider from the "Dataprovider” sample can be used. Many other data sources 
support the serialization to XML, so that the XmlDataProvider can be used. 
Your  own  class  that implements  the  IDataProvider  interface  can  be  used,  too,  of 
course.  A  good  starting  point  is  the  DataProvider  sample  which  demonstrates  a 
simple  CSV data provider.  Often  one of the  existing  classes can be used as  base 
class.  If  for  example  a  data  source  is  to  be  connected  that  implements  the 
IDbConnection interface, it  can be inherited  from  DbConnectionDataProvider.  Only 
the Init method has to be overwritten, where the available tables and relations have 
to  be  provided. The  component  help for .NET provides  an  example  of  how this is 
done  for  SQL  Server  data  with  the  SqlConnectionDataProvider.  Most  database 
systems provide similar mechanisms. 
2.4.9. Export 
The export formats can be completely controlled "remotely" so that no interaction by 
the user is required anymore. Additionally, the selection of formats can be restricted 
as required or desired for the specific report. 
Export Without User Interaction 
In order to run the export in the background, at least the target format, the path and 
the file name for the creation have to be defined in List & Label. That is done by the 
ExportOptions property of the ListLabel component. Additionally, the project file for 
the print is preset and possible dialogs will be suppressed. 
C#: 
ListLabel LL = new ListLabel(); 
LL.DataSource = CreateDataSet(); 
// Set project file, suppress dialogs 
LL.AutoProjectFile = "<Project file name with path>"; 
LL.AutoShowSelectFile = false; 
LL.AutoShowPrintOptions = false; 
// Target and path (here: PDF) 
LL.ExportOptions.Add(LlExportOption.ExportTarget, "PDF"); 
LL.ExportOptions.Add(LlExportOption.ExportFile, "<Target file name>"); 
LL.ExportOptions.Add(LlExportOption.ExportPath, "<Target path>"); 
// Suppress file selection dialog 
Documents you may be interested
Documents you may be interested