c# display pdf in browser : Add and remove pages from a pdf application software tool html winforms windows online python-excel2-part366

Page 21
Writing Excel Files
All the examples shown below can be found in the xlwt directory of the course material.
Creating elements within a Workbook
Workbooks are created with xlwt by instantiating an xlwt.Workbook object, 
manipulating it and then calling its save method.
The save method may be passed either a string containing the path to write to or a file-
like object, opened for writing in binary mode, to which the binary Excel file data will be 
written.
The following objects can be created within a workbook:
Worksheets
Worksheets are created with the add_sheet method of the Workbook class.
To retrieve an existing sheet from a Workbook, use its get_sheet method. This method 
is particularly useful when the Workbook has been instantiated by xlutils.copy.
Rows
Rows are created using the row  method of the Worksheet class and contain all of the 
cells for a given row.
The row method is also used to retrieve existing rows from a Worksheet.
If a large number of rows have been written to a Worksheet and memory usage is 
becoming a problem, the flush_row_data method may be called on the Worksheet. 
Once called, any rows flushed cannot be accessed or modified.
It is recommended that flush_row_data is called for every 1000 or so rows of a normal 
size that are written to an xlwt.Workbook. If the rows are huge, that number should be 
reduced.
Columns
Columns are created using the col method of the Worksheet class and contain display 
formatting information for a given column.
The col method is also used to retrieve existing columns from a Worksheet.
Cells
Cells can be written using either the write method of either the Worksheet or Row  class. 
A more detailed discussion of different ways of writing cells and the different types of cell 
that may be written is covered later.
© Simplistix Ltd 2009  
Add and remove pages from a pdf - insert pages into PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide C# Users to Insert (Empty) PDF Page or Pages from a Supported File Format
adding pages to a pdf document in preview; add page number to pdf reader
Add and remove pages from a pdf - VB.NET PDF Page Insert Library: insert pages into PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use VB.NET APIs to Add a New Blank Page to PDF Document
add page numbers to a pdf document; add pages to pdf reader
Page 22
A Simple Example
The following example shows how all of the above methods can be used to build and save a 
simple workbook:
Unicode 
The best policy is to pass unicode objects to all xlwt-related method calls.
If you absolutely have to use encoded strings then make sure that the encoding used is 
consistent across all calls to any xlwt-related methods.
If encoded strings are used and the encoding is not 'ascii', then any Workbook objects 
must be created with the appropriate encoding specified:
© Simplistix Ltd 2009  
from tempfile import TemporaryFile
from xlwt import Workbook
book = Workbook()
sheet1 = book.add_sheet('Sheet 1')
book.add_sheet('Sheet 2')
sheet1.write(0,0,'A1')
sheet1.write(0,1,'B1')
row1 = sheet1.row(1)
row1.write(0,'A2')
row1.write(1,'B2')
sheet1.col(0).width = 10000
sheet2 = book.get_sheet(1)
sheet2.row(0).write(0,'Sheet 2 A1')
sheet2.row(0).write(1,'Sheet 2 B1')
sheet2.flush_row_data()
sheet2.write(1,0,'Sheet 2 A3')
sheet2.col(0).width = 5000
sheet2.col(0).hidden = True
book.save('simple.xls')
book.save(TemporaryFile())
simple.py
from xlwt import Workbook
book = Workbook(encoding='utf-8')
VB.NET PDF Password Library: add, remove, edit PDF file password
manipulations. Open password protected PDF. Add password to PDF. Change PDF original password. Remove password from PDF. Set PDF security level. VB
add page to a pdf; add page numbers to pdf document in preview
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
can simply delete a single page from a PDF document using VB.NET or remove any page Add necessary references: How to VB.NET: Delete Consecutive Pages from PDF.
add page numbers to a pdf in preview; add a page to a pdf in reader
Page 23
Writing to Cells
A number of different ways of writing a cell are provided by xlwt along with different 
strategies for handling multiple writes to the same cell.
Different ways of writing cells
There are generally three ways to write to a particular cell:
• Worksheet.write(row_index,column_index,value)
◦ This is just syntactic sugar for sheet.row(row_index).write(column_index,value)
◦ It can be useful when you only want to write one cell to a row
• Row.write(column_index,value)
◦ This will write the correct type of cell based on the value passed
◦ Because it figures out what type of cell to write, this method may be slower for 
writing large workbooks
• Specialist write methods on the Row class
◦ Each type of cell has a specialist setter method as covered in the “Types of Cell” 
section below.
◦ These require you to pass the correct type of Python object but can be faster.
In general, use Worksheet.write for convenience and the specialist write methods if you 
require speed for a large volume of data.
Overwriting Cells
The Excel file format does nothing to prevent multiple records for a particular cell 
occurring but, if this happens, the results will vary depending on what application is used 
to open the file. Excel will display a “File error: data may have been lost” 
while OpenOffice.org will show the last record for the cell that occurs in the file.
To help prevent this, xlwt provides two modes of operation:
• Writing to the same cell more than once will result in an exception
This is the default mode.
• Writing to the same cell more than once will replace the record for that cell, and 
only one record will be written when the Workbook is saved.
© Simplistix Ltd 2009  
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
Ability to remove a range of pages from PDF file. Add necessary references: Demo Code: How to Delete Consecutive Pages from PDF in C#.NET.
add page numbers pdf files; adding pages to a pdf
C# PDF Password Library: add, remove, edit PDF file password in C#
String outputFilePath = Program.RootPath + "\\" Output.pdf"; // Remove the password. doc.Save(outputFilePath); C# Sample Code: Add Password to Plain PDF
add page number pdf; adding page numbers to a pdf document
Page 24
The following example demonstrates these two options:
The most common case for needing to overwrite cells is when an existing Excel file has 
been loaded into a Workbook instance using xlutils.copy.
Types of Cell
All types of cell supported by the Excel file format can be written:
Text
When passed a unicode or string, the write methods will write a Text cell.
The set_cell_text method of the Row class can also be used to write Text cells.
When passed a string, these methods will first decode the string using the Workbook's 
encoding.
Number
When passed a float, int, long, or decimal.Decimal, the write methods will write a 
Number cell.
The set_cell_number method of the Row class can also be used to write Number cells.
Date
When passed a datetime.datetime, datetime.date or datetime.time, the write 
methods will write a Date cell.
The set_cell_date method of the Row class can also be used to write Date cells. 
Note: As mentioned earlier, a date is not really a separate type in Excel; if you don't apply a 
date format, it will be treated as a number.
Boolean
When passed a bool, the write methods will write a Boolean cell.
The set_cell_boolean method of the Row class can also be used to write Text cells.
© Simplistix Ltd 2009  
from xlwt import Workbook
book = Workbook()
sheet1 = book.add_sheet('Sheet 1',cell_overwrite_ok=True)
sheet1.write(0,0,'original')
sheet = book.get_sheet(0)
sheet.write(0,0,'new')
sheet2 = book.add_sheet('Sheet 2')
sheet2.write(0,0,'original')
sheet2.write(0,0,'new')
overwriting.py
C# PDF Digital Signature Library: add, remove, update PDF digital
Image: Insert Image to PDF. Image: Remove Image from Redact Text Content. Redact Images. Redact Pages. Annotation & Highlight Text. Add Text. Add Text Box. Drawing
add page to pdf online; add pages to pdf in preview
C# PDF remove image library: remove, delete images from PDF in C#.
Image: Insert Image to PDF. Image: Remove Image from Redact Text Content. Redact Images. Redact Pages. Annotation & Highlight Text. Add Text. Add Text Box. Drawing
add page number to pdf hyperlink; adding page numbers to pdf documents
Page 25
Error
You shouldn't ever want to write Error cells!
However, if you absolutely must, the set_cell_error method of the Row class can be 
used to do so. For convenience, it can be called with either hexadecimal error codes, 
expressed as integers, or the error text that Excel would display.
Blank
It is not normally necessary to write blank cells. The one exception to this is if you wish to 
apply formatting to a cell that contains nothing.
To do this, either call the write methods with an empty string or None, or use the 
set_cell_blank method of the Row class.
If you need to do this for more than one cell in a row, using the set_cell_mulblanks 
method will result in a smaller Excel file when the Workbook is saved.
© Simplistix Ltd 2009  
C# PDF bookmark Library: add, remove, update PDF bookmarks in C#.
Help to add or insert bookmark and outline into PDF file in .NET framework. Ability to remove and delete bookmark and outline from PDF document.
adding page numbers to pdf in; add page numbers to a pdf
C# PDF metadata Library: add, remove, update PDF metadata in C#.
Add metadata to PDF document in C# .NET framework program. Remove and delete metadata from PDF file. Also a PDF metadata extraction control.
add page numbers to pdf files; add pages to an existing pdf
Page 26
The following example brings all of the above cell types together and shows examples use 
both the generic write method and the specialist methods:
© Simplistix Ltd 2009  
from datetime import date,time,datetime
from decimal import Decimal
from xlwt import Workbook,Style
wb = Workbook()
ws = wb.add_sheet('Type examples')
ws.row(0).write(0,u'\xa3')
ws.row(0).write(1,'Text')
ws.row(1).write(0,3.1415)
ws.row(1).write(1,15)
ws.row(1).write(2,265L)
ws.row(1).write(3,Decimal('3.65'))
ws.row(2).set_cell_number(0,3.1415)
ws.row(2).set_cell_number(1,15)
ws.row(2).set_cell_number(2,265L)
ws.row(2).set_cell_number(3,Decimal('3.65'))
ws.row(3).write(0,date(2009,3,18))
ws.row(3).write(1,datetime(2009,3,18,17,0,1))
ws.row(3).write(2,time(17,1))
ws.row(4).set_cell_date(0,date(2009,3,18))
ws.row(4).set_cell_date(1,datetime(2009,3,18,17,0,1))
ws.row(4).set_cell_date(2,time(17,1))
ws.row(5).write(0,False)
ws.row(5).write(1,True)
ws.row(6).set_cell_boolean(0,False)
ws.row(6).set_cell_boolean(1,True)
ws.row(7).set_cell_error(0,0x17)
ws.row(7).set_cell_error(1,'#NULL!')
ws.row(8).write(
0,'',Style.easyxf('pattern: pattern solid, fore_colour 
green;'))
ws.row(8).write(
1,None,Style.easyxf('pattern: pattern solid, fore_colour 
blue;'))
ws.row(9).set_cell_blank(
0,Style.easyxf('pattern: pattern solid, fore_colour 
yellow;'))
ws.row(10).set_cell_mulblanks(
5,10,Style.easyxf('pattern: pattern solid, fore_colour 
red;')
)
wb.save('types.xls')
cell_types.py
VB.NET PDF remove image library: remove, delete images from PDF in
Image: Insert Image to PDF. Image: Remove Image from Redact Text Content. Redact Images. Redact Pages. Annotation & Highlight Text. Add Text. Add Text Box. Drawing
add page numbers to pdf in reader; adding page numbers in pdf
VB.NET PDF metadata library: add, remove, update PDF metadata in
Add permanent metadata to PDF document in VB .NET framework program. Remove and delete metadata content from PDF file in Visual Basic .NET application.
adding page numbers to a pdf in preview; adding page numbers to pdf document
Page 27
Styles
Most elements of an Excel file can be formatted. For many elements including cells, rows 
and columns, this is done by assigning a style, known as an XF record, to that element.
This is done by passing an xlwt.XFStyle instance to the optional last argument to the 
various write methods and specialist set_cell_ methods. xlwt.Row and xlwt.Column 
instances have set_style methods to which an xlwt.XFStyle instance can be passed.
XFStyle
In xlwt, the XF record is represented by the XFStyle class and its related attribute classes.
The following example shows how to create a red Date cell with Arial text and a black 
border:
This can be quite cumbersome!
© Simplistix Ltd 2009  
from datetime import date
from xlwt import Workbook, XFStyle, Borders, Pattern, Font
fnt = Font()
fnt.name = 'Arial'
borders = Borders()
borders.left = Borders.THICK
borders.right = Borders.THICK
borders.top = Borders.THICK
borders.bottom = Borders.THICK
pattern = Pattern()
pattern.pattern = Pattern.SOLID_PATTERN
pattern.pattern_fore_colour = 0x0A
style = XFStyle()
style.num_format_str='YYYY-MM-DD'
style.font = fnt
style.borders = borders
style.pattern = pattern
book = Workbook()
sheet = book.add_sheet('A Date')
sheet.write(1,1,date(2009,3,18),style)
book.save('date.xls')
xfstyle_format.py
Page 28
easyxf
Thankfully, xlwt provides the easyxf helper to create XFStyle instances from human 
readable text and an optional string containing a number format.
Here is the above example, this time created with easyxf:
The human readable text breaks roughly as follows, in pseudo-regular expression syntax:
(<element>:(<attribute> <value>,)+;)+
This means:
• The text contains a semi-colon delimited list of element definitions.
• Each element contains a comma-delimited list of attribute and value pairs.
The following sections describe each of the types of element by providing a table of their 
attributes and possible values for those attributes. For explanations of how to express 
boolean values and colours, please see the “Types of attribute” section.
© Simplistix Ltd 2009  
from datetime import date
from xlwt import Workbook, easyxf
book = Workbook()
sheet = book.add_sheet('A Date')
sheet.write(1,1,date(2009,3,18),easyxf(
'font: name Arial;'
'borders: left thick, right thick, top thick, bottom 
thick;'
'pattern: pattern solid, fore_colour red;',
num_format_str='YYYY-MM-DD'
))
book.save('date.xls')
easyxf_format.py
Page 29
font
bold
boolean value.
The default is False.
charset
The character set to use for this font, which can be one of the following:
ansi_latin, sys_default, symbol, apple_roman, 
ansi_jap_shift_jis, ansi_kor_hangul, ansi_kor_johab, 
ansi_chinese_gbk, ansi_chinese_big5, ansi_greek, 
ansi_turkish, ansi_vietnamese, ansi_hebrew, 
ansi_arabic, ansi_baltic, ansi_cyrillic, ansi_thai, 
ansi_latin_ii, oem_latin_i
The default is sys_default.
colour
colour specifying the colour for the text.
The default is the automatic colour.
escapement
This can be one of none, superscript or subscript.
The default is none.
family
This should be a string containing the name of the font family to use. 
You probably want to use name instead of this attribute and leave this to 
its default value.
The default is None.
height
The height of the font as expressed by multiplying the point size by 20.
The default is 200, which equates to 10pt.
italic
boolean value.
The default is False.
name
This should be a string containing the name of the font family to use.
The default is Arial.
outline
boolean value.
The default is False.
shadow
boolean value.
The default is False.
struck_out
boolean value.
The default is False.
underline
boolean value or one of none, single, single_acc, double or 
double_acc.
The default is none.
color_index
A synonym for colour
colour_index
A synonym for colour
color
A synonym for colour
© Simplistix Ltd 2009  
Page 30
alignment
direction
One of general, lr, or rl.
The default is general.
horizontal
One of the following:
general, left, center|centre, right, filled, 
justified, center|centre_across_selection, 
distributed
The default is general.
indent
A indentation amount between 0 and 15.
The default is 0.
rotation
An integer rotation in degrees between -90 and +90 or one of stacked 
or none.
The default is none.
shrink_to_fit
boolean value.
The default is False.
vertical
One of the following:
top, center|centre, bottom, justified, distributed
The default is bottom.
wrap
boolean value.
The default is False.
dire
This is a synonym for direction.
horiz
This is a synonym for horizontal.
horz
This is a synonym for horizontal.
inde
This is a synonym for indent.
rota
This is a synonym for rotation.
shri
This is a synonym for shrink_to_fit.
shrink
This is a synonym for shrink_to_fit.
vert
This is a synonym for vertical.
© Simplistix Ltd 2009  
Documents you may be interested
Documents you may be interested