asp.net core pdf editor : Converting pdf to powerpoint application control utility azure web page windows visual studio HelpNDoc%20User%20Manual5-part1185

HelpNDoc User Manual
51 / 87
"Program Files" directory, that's why it is recommended to edit all the templates in the "My
Documents" template directory instead.
Template kind sub-directories
Templates are located in the following sub-directories based on their action:
· chm - Templates used to generate compiled HTML Help documentation
· code - Templates used to generate code for various programming languages
· epub - Templates used to generate ePub eBooks
· html - Templates used to generate on-line HTML documentation
· mobi - Templates used to generate MobiPocket / Kindle eBooks
· pdf - Templates used to generate PDF documentation
· qthelp - Templates used to generate Qt Help files
· word - Templates used to generate Word documentation
Assets
A template can contain an optional "assets" folder. All the files and sub-folders contained in that
folder will be copied in the documentation's output directory. This is useful to add external files to
the templates, such as CSS or JavaScript to HTML templates. Note: The content of the "assets"
folder will be copied directly in the generated documentation's output directory, not in an "assets"
sub-directory.
Modify a default template
· Copy the default template's directory from "Program Files\IBE Software\HelpNDoc
\Templates\TEMPLATE-KIND\TEMPLATE-NAME" to the user's template directory under "My
Documents\HelpNDoc\Templates\TEMPLATE-KIND\NEW-TEMPLATE-NAME
Converting pdf to powerpoint - application control utility:C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF in C#.net, ASP.NET MVC, WinForms, WPF
Online C# Tutorial for Creating PDF from Microsoft PowerPoint Presentation
www.rasteredge.com
Converting pdf to powerpoint - application control utility:VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to PDF in vb.net, ASP.NET MVC, WinForms, WPF
VB.NET Tutorial for Export PDF file from Microsoft Office PowerPoint
www.rasteredge.com
HelpNDoc User Manual
52 / 87
· Edit the template.info
file to change the template's name
· Add, delete or modify any other file to update the template's content
Template configuration file
The template.info file is a standard INI file located in all the templates folders and is used to
specify basic informations on that template such as the name, category and extension.
The template.info file requires a "config" section with the following values:
· name - defines the name of the template as shown in the project options and help generation
dialog
· category - defines the category of the template and used to combine code templates in the
quick generation popup menu
· extension - defines the extension of the main file which will be generated by this template
Sample template.info file
The following template.info file describes a sample CHM template:
[config]
name=Sample CHM template
category=CHM Documentation
extension=chm
Template inheritance
As mentioned in the best practices
, it is not advised to modify the default templates provided with
HelpNDoc usually located in the "program files" directory. Furthermore, some templates might
need only subtle changes to a subset of the files to suit the requirements. That's why HelpNDoc
introduces the template inheritance concept where a template can "inherit" from a parent
template, thus using all its template files, and only override the required files.
Inheriting from a parent template
From the final children template, just add the "inherits" key in the template.info
file's "config"
section and mention the parent template's name as the value. As an example:
[config]
name=Child template
category=HTML Documentation
extension=html
inherits=Default HTML Template
This configuration file instructs HelpNDoc to use the template named "Default HTML Template"
as the parent template. Only template files from the same documentation format can be used as
a parent template.
Overriding a template file
To change the content of a file, just place a file with the same name in the same directory within
the child template. HelpNDoc will use this file instead of the on from the parent template. As an
example, if the parent template contains the file "index.pas.html" it is possible to override this file
application control utility:C# powerpoint - PowerPoint Conversion & Rendering in C#.NET
This PowerPoint document converting library component offers reliable C#.NET PowerPoint document rendering APIs for developers PowerPoint to PDF Conversion.
www.rasteredge.com
application control utility:C# powerpoint - Convert PowerPoint to PDF in C#.NET
Online C# Tutorial for Converting PowerPoint to PDF (.pdf) Document. PowerPoint Why do we need this PowerPoint to PDF converting library? In
www.rasteredge.com
HelpNDoc User Manual
53 / 87
by creating a file named "index.pas.html" in the child template's folder with alternative content.
How is it working
At generation time, HelpNDoc reads the template selected for the project. If that template inherits
from a parent template, HelpNDoc will first generate a new temporary template as follows:
1.
The parent template's entire content is copied into a temporary folder;
2.
The child template (the one selected for the documentation generation) is copied over this
parent template, replacing any duplicate file if required;
3.
The template.info files are merged to preserve the sections and keys from both templates,
and override the duplicate ones using the child template's data.
Limitations
Some limitations apply to the template inheritance feature:
· It is not possible to inherit from a template from a different documentation format: an HTML
template can't inherit from a CHM template and a Word template can't inherit from a PDF
template for example;
· It is not possible to remove files from the original template, just add or override existing files
Code templates
Code templates are very similar to CHM and HTML templates
except for the fact that they usually
won't need access to the topic's contents and can't access to their HTML content. Here are the
steps involved to create a code template:
· Create a new folder under "My Documents\HelpNDoc\Templates\Code" with the name of the
new template
· Create a new template.info file
in that template folder and add the required name, category
and extension
· Create a new file containing the ".pas" text before the extension. As an example, we will
create a "sample.pas.txt" file. Only files containing the ".pas" text will be interpreted by
HelpNDoc
· Add sample code to that template
In HelpNDoc, the new code template will appear in the "Code Generation" category of the
"Generate help" popup menu in the "Project" section of the "Home" ribbon tab.
CHM and HTML templates
The CHM and HTML template system can be used to tailor the output for HTML-based
documentation generation. The template system is very similar to the code template
but can
also access the topic's HTML content. To learn how to create a new HTML template, see the
"Building a single page HTML template
" topic. Also learn how to:
· Handle the generated topic links
· Methods available in templates
· Generate multiple files from a single template file
application control utility:Online Convert PowerPoint to PDF file. Best free online export
Then just wait until the conversion from Powerpoint to PDF is complete and download the file Creating a PDF from PPTX/PPT has never been so easy Easy converting!
www.rasteredge.com
application control utility:C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
Best C#.NET PDF Converter SDK for converting PDF to HTML in Visual Studio .NET. This is a C# programming example for converting PDF to HTML.
www.rasteredge.com
HelpNDoc User Manual
54 / 87
· Template variables
Handle the generated topic links
HelpNDoc will automatically generate links to topics and anchors for you. By default, it assumes
that topics will be generated in a file called "%helpid%.html" where "%helpid%" is the value of the
help id of that topic. However, this is not always the case so HelpNDoc provides a way of
customizing the format of the generated topic and anchor links. They can be modified in the
"config" section of the template.info
file. Here is a sample:
linkformattopic=#%helpid%
linkformatanchor=#%anchorname%
The possible variables to be used in the topic and anchors link formats are:
· %topicid% - The internal HelpNDoc's managed unique topic id
· %helpid% - The topic's help id value
· %anchorname% - The name of the anchor as specified in HelpNDoc, is any
Methods available in templates
HTML and CHM templates can leverage various methods to get information or manipulate the
currently opened project. See methods available in the HelpNDoc API
.
Generate multiple files from a single template file
When interpreting a template file, HelpNDoc will automatically save the printed content to the
documentation's output directory and use the template file name, without the ".pas" part. For
example, the "topics.pas.html" file will be interpreted and the result will be written in the
"topics.html" file.
As it isn't possible nor sane to create a template file for every single file HelpNDoc has to
generate, the template system has a special property to switch the file currently being written.
The code required to do that is:
HndGeneratorInfo.CurrentFile := 'my-new-file.html';
When the template system interprets that line, it will automatically output any further content to
the file specified, in the documentation's output directory. This trick is used by the CHM and
HTML templates to output each individual topics into their own HTML file:
// Loop through each topics
for nCurTopic := 0 to length(aTopicList) - 1 do
begin
// Change the current output
HndGeneratorInfo.CurrentFile := aTopicList[nCurTopic].HelpId + '.html';
// Write the content of the topic to that file
// ...
end;
Template variables
application control utility:VB.NET PDF Converter Library SDK to convert PDF to other file
This guide give a series of demo code directly for converting MicroSoft Office Word, Excel and PowerPoint document to PDF file in VB.NET application.
www.rasteredge.com
application control utility:VB.NET PowerPoint: Complete PowerPoint Document Conversion in VB.
Converting PowerPoint document to PDF file can be quite simple provided that this VB.NET PowerPoint Converting SDK is correctly installed and utilized.
www.rasteredge.com
HelpNDoc User Manual
55 / 87
CHM and HTML templates can define template variables in the template.info
file. Those variables
will be presented in a user-friendly way in the documentation generation dialog and will be saved
within the project file. The template can request for user-defined values and act upon them to
customize itself based on user input. Possible template variables usages include:
· Making a section optional. This is done in the default CHM and HTML templates with the
breadcrumbs line which can be hidden from generated documentation
· Customizing the documentation appearance. In the HTML template, it is possible to specify a
base color, an icon set, default tree expansion status...
· Provide localized texts. The default HTML template defines the captions for the "Index",
"Search" and "Content" tabs as variables so that it is possible to translate them from within
HelpNDoc
Defining template variables
Template variables are defined as sections in the template.info file. Those sections' name must
begin with the var_ keyword followed by a unique variable identifier. Let's consider the following
sample variable section:
[var_BaseColor]
name=Base color
kind=color
default=#EFEFEF
description=Customize the documentation's base color.
This defines a new variable with the following information:
· Identifier is BaseColor
· Name is Base color
· Kind is color
· Default value is #EFEFEF
· Description is Customize the documentation's base color.
This will be displayed in the HelpNDoc template settings dialog as follows:
Variables section attributes
The following attributes should be defined in a variable sections:
Attribute
Description
Remarks
name
Name of the variable
Will be displayed to identify the variable in the
settings dialog
application control utility:C# PDF Converter Library SDK to convert PDF to other file formats
Free C#.NET SDK library and components for converting PDF file in .NET Windows applications, ASP.NET web programs and .NET console application.
www.rasteredge.com
application control utility:C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
Word in C#.NET. Online C#.NET Tutorial for Converting PDF to Word (.doc/ .docx) Document with .NET XDoc.PDF Library in C#.NET Class.
www.rasteredge.com
HelpNDoc User Manual
56 / 87
kind
Kind of variable
Can be bool, color, enum, int, string. See kinds of
variables
default
Choose between multiple
values
Default value for this variable if not set in HelpNDoc
values
Possible values for this
variable
Only for enum variables, using the pipe character
as a separator. Example: "blue|red"
description
Explanation for this variable
Will be displayed to explain the purpose of this
variable
Kinds of variables
A variable can be set as one of the following kinds depending on its purpose:
Kind
Description
Remarks
bool
Conditional Yes/No value
Often used for a conditional section which will be
displayed or not based on its value
color
Standard color value
Can be used to define the color of a specific
element
enum
Choose between multiple
values
Use the "values" attribute
to specify the possible
values. Example: "values=chm|folder|vista"
int
Integer value
string
Character, word or
sentences
Setting-up template variables
Variables are set-up from within HelpNDoc's document generation dialog. CHM and HTML
templates provide a "Customize" link which show the template customization dialog. This dialog
lists all the variables for this template, and provides a way to customize them. Customized
variable values will be saved with the current project.
Requesting template variables
To request the value of a template variable from within the template itself, use the
HndGeneratorInfo.GetCustomSettingValue method specifying the variable identifier. As an
example, the BaseColor value will be requested as follows:
HndGeneratorInfo.GetCustomSettingValue('BaseColor');
Samples
· Building a single page HTML template
Step by step tutorial on how to build a template which will output all the topics in a single
page
· Use index.html as the default HTML page
Make sure the default page for the generated documentation is the index.html file
application control utility:C# PDF Convert to SVG SDK: Convert PDF to SVG files in C#.net, ASP
and WinForms applications. Support converting PDF document to SVG image within C#.NET project without quality loss. C# sample code
www.rasteredge.com
HelpNDoc User Manual
57 / 87
Building a single page HTML template
In this section, we will create a new HTML template from scratch. This template will create a
single-page HTML documentation where all the topics are grouped on that single page. The final
version of this template is installed with HelpNDoc and can be found in the "My Documents
\HelpNDoc\Templates\html\SinglePage" directory.
Template directory
First we need to create a directory for the new template. Custom templates are located in the
"My Documents\HelpNDoc\Templates" directory. As we are creating an HTML template which
we'll call "SinglePage", we will create the following directory for our new template: "My
Documents\HelpNDoc\Templates\html\SinglePage".
The template.info file
Each template must include a "template.info" file with basic template information. Let's create
one in the template directory with the following content:
[config]
name=Single page HTML template
extension=html
Template code file
It's time to go to the heart of our template by creating a new file which will contain the code to
instruct HelpNDoc on how to generate our HTML file. To be interpreted by HelpNDoc, the file
must contain the ".pas" text before its extension, which means it will contain Pascal code. So
let's create a file named "index.pas.html" in the template directory and edit using any text editor.
Any text which is added to that file will be written as is in the final output, except if it is included in
the <% %> tags, which are used to insert special instruction code. The steps involved to create
the initial code are:
· Instruct the template system to output the HTML file BOM (Byte Order Mark
). This is only
necessary for HTML files in Internet Explorer on Window with some languages (1)
· Instruct the template to output to the user defined file as we are only generating a single file
(2)
So the "index.pas.html" file now contains:
<%
begin
// 1. Output BOM for HTML UTF8 files
HndGeneratorInfo.BOMOutput := True;
// 2. Instruct the generator to generate the desired output file
HndGeneratorInfo.CurrentFile := ExtractFileName(HndGeneratorInfo.OutputFile);
%>
<html>
<head>
</head>
<body>
Sample HTML Code
</body>
HelpNDoc User Manual
58 / 87
</html>
<%
end.
%>
Get the topics list
Templates have access to a number of functions, objects and variables to help them generate
an output. We first need to get a list of topics available in the current project. To do so, we create
a new variable before the "begin" keyword and request the topic list (3). The "index.pas.html" file
now contains:
<%
// Variable declarations
var
// List of topics available in the current project
aTopicList: THndTopicsInfoArray;
begin
// 1. Output BOM for HTML UTF8 files
HndGeneratorInfo.BOMOutput := True;
// 2. Instruct the generator to generate the desired output file
HndGeneratorInfo.CurrentFile := ExtractFileName(HndGeneratorInfo.OutputFile);
// 3. Get the list of topics available
aTopicList := HndTopics.GetTopicList(False);
%>
<html>
<head>
</head>
<body>
Sample HTML Code
</body>
</html>
<%
end.
%>
Output the topics' content
Now that we have a list of topics, we can output their content by looping through that list. The
steps involved are:
· Create an iteration variable (4) - This variable will be used by the loop
· Loop through the topics (5) - The topics are treated one by one in that loop
· Notify the template system about the current topic being generated (6) - The template
system can't know which topic is currently treated, that's why we notify it using the
HndGeneratorInfo object
· Output the topic content (7) - We ask for the HTML content of the topic and we output it
The "index.pas.html" file now contains:
<%
// Variable declarations
var
HelpNDoc User Manual
59 / 87
// List of topics available in the current project
aTopicList: THndTopicsInfoArray;
// 4. Current topic index
nCurTopic: Integer;
// Main program
begin
// 1. Output BOM for HTML UTF8 files
HndGeneratorInfo.BOMOutput := True;
// 2. Instruct the generator to generate the desired output file
HndGeneratorInfo.CurrentFile := ExtractFileName(HndGeneratorInfo.OutputFile);
// 3. Get the list of topics available
aTopicList := HndTopics.GetTopicList(False);
%>
<html>
<head>
</head>
<body>
<%
// 5. Loop through all the topics
for nCurTopic := 0 to length(aTopicList) - 1 do
begin
// 6. Notify about the topic being generated
HndGeneratorInfo.CurrentTopic := aTopicList[nCurTopic].id;
// 7. Output the topic content
print(HndTopics.GetTopicContentAsHtml(HndGeneratorInfo.CurrentTopic));
end;
%>
</body>
</html>
<%
end.
%>
Add the titles
The template now display the whole content of all the topics in a single page. However, no title is
displayed. Let's add the topic titles before the topics as well as an HTML anchor to be able to link
to that topic later on. The steps involved are:
· Declare a new variable nTopicLevel (8) - This variable will be used to get the level of the topic
and output the correct HTML heading to the topic title
· Output an HTML anchor (9) - This anchor will be used to link to that specific topics
afterwards
· Get the topic level (10) - We request the level of the current topic so we can output the
correct HTML heading
· Output the topic title (11) - We can now correctly output the title of the topic
Between steps (6) and (7) we now add the following lines in the "index.pas.html" file:
// 9. Add an anchor to be able to link to that topic
printf('<a name="%s"></a>', [aTopicList[nCurTopic].helpid]);
// 10. Get the topic level
nTopicLevel := HndTopics.GetTopicLevel(HndGeneratorInfo.CurrentTopic);
// 11. Add the topic title
printf('<h%d>%s</h%d>', [nTopicLevel,
HelpNDoc User Manual
60 / 87
HndTopics.GetTopicHeaderTextCalculated(HndGeneratorInfo.CurrentTopic), nTopicLevel]);
Adding some style
The output now contains all the content from our documentation but it doesn't look like what
we've designed in HelpNDoc. That's due to the fact that we didn't add any style coming from
HelpNDoc. This can be done in a single step, by requesting for the style content and adding it
into the HTML's head section (12). To do so, we add the following lines in the "<head>" section of
the "index.pas.html" file:
<style type="text/css">
<%
// 12. Output global CSS content
print(HndProjects.GetProjectCssContent());
%>
</style>
Fixing the links
The output looks as we designed it now but links to topics are not working correctly. This is due
to the fact that by default, HelpNDoc assumes that each topic will be generated in its own file
which will be named "%helpid%.html" where "%helpid%" is the help id of that topic, as explained
in the "Handle the generated topic links
" topic. This can be customized: to change this default
behavior, we need to edit the template.info
file and add the following key/values in the config
section. They define the format for topic links and anchor links:
linkformattopic=#%helpid%
linkformatanchor=#%anchorname%
Final touches
As we have seen, the possibilities are endless: we could add some custom-made CSS file in the
assets folder to customize the HTML headings, add the title of the project, the copyright,
completely modify the look and feel of our web-page, split it in sections... Some of those ideas
are added in the final sample file which is installed with HelpNDoc and can be found in the "My
Documents\HelpNDoc\Templates\html\SinglePage" directory.
Use index.html as the default HTML page
The Default HTML template is using the output file name as the default index file for the HTML
documentation generation. A few modifications to the template can alter this behavior and force
HelpNDoc to generate an index.html file as the default index file.
Prior to doing any change to the default template, always make a copy in the personal template
folder
and work on that copy.
Modify the index.pas.html file
This is the index file which we'd like to export to "index.html". By default, HelpNDoc would have
exported it as it uses the file name without the ".pas" part but we specifically instruct HelpNDoc
to use another file name with the following line:
Documents you may be interested
Documents you may be interested