display pdf from byte array c# : Save pdf after rotating pages SDK software service wpf winforms windows dnn 1200%20macro_examples3-part147

31
Andrew Baker has created a free program called a workbook rebuilder available at his site:
http://www.vbusers.com
The direct link to the download is:
http://www.vbusers.com/downloads/download.asp#item2
3.16 Naming Your Visual Basic Projects
In Excel Visual Basic, each workbook is considered a "project".  When you click on the Project
Explorer button in the visual basic editor, you will see a listing of each project or workbook.  The
default name of each project is "VBAProject".  To change this name to a more descriptive name,
do the following:
In the Project Explorer, click on the project line, the one with the name of the
workbook.
Click on the properties button to display the properties window.
Change the name to the project to a more descriptive name.  Spaces are not
allowed.  Use underscores instead of spaces.
3.17 Docking Windows In The Visual Basic Editor
Assuming that you inadvertently undocked these windows, you'll first need to turn on the
docking property for each of the desired windows.  Right click anywhere inside the desired
window & click Dockable on the shortcut menu, then drag the window to the side you want it
docked to.  You can also turn docking on or off using (from the VBE)  Tools, Options, Docking
Tab.
To dock the Explorer window, move it left until the thick gray line around it turns into a thin
dotted one.  It should attach to the left side of the screen.
To dock the properties window move it left and down almost until it disappears off the lower left
part of your screen.  At this point the gray line should change again into a dotted one.  Let go and,
hopefully, it should return to normal.  If it does not on the first try just double click on the
properties window blue menu bar and try again… and   again... and again...
The key thing is to watch the window outline as you drag.  The thick gray outline will leave the
window floating in the middle of the screen, on top of any undocked windows.  A thin dotted
outline will dock the window at an edge or against another docked window.
However, the final docking place is not quite as haphazard as it might seem.  If you drag the thin
outline left and right across the bottom of the screen (keeping it low enough to avoid the thick
outline), you will see its shape go through a number of transitions that indicate how it will dock.
It is best to have a maximized code module open while you do this. Otherwise, the gray border is
difficult to see against the gray window background.
Save pdf after rotating pages - rotate PDF page permanently in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Users to Change the Rotation Angle of PDF File Page Using C#
how to rotate one page in pdf document; rotate pdf page permanently
Save pdf after rotating pages - VB.NET PDF Page Rotate Library: rotate PDF page permanently in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
PDF Document Page Rotation in Visual Basic .NET Class Application
how to reverse page order in pdf; how to permanently rotate pdf pages
32
A slightly taller outline indicates that it will dock against the left or right edge of the screen or
left or right edge of another docked window.  A slightly flatter short outline indicates it will dock
under another docked window or against the bottom of the screen.  If you drag the outline really
low, it will widen and indicate that it will cover the entire bottom of the screen.  These changes
are fairly subtle, so you really have to look carefully. In Excel 2000, these changes are more
exaggerated and easier to see,
3.18 Books On Learning Windows API
The Application Programmer's Interface (API) is a library of hundreds of windows functions that
require exact programming.  One mistake can render your system useless.  The definitive book
on this library is Dan Appleman's, "Visual Basic 5.0 Programmer's Guide to the WIN32
API."  It is extensive.  Another good book that encapsulates some of these functions in classes
with examples on CD is "VBA Developer's Handbook," by Ken Getz and Mike Gilbert.  Of
course spread across the web at microsoft.com and many of the VB sites you'll find examples of
using the API.  Another good book which makes use of the API is "Visual Basic Graphics
Programming," by Rod Stephens.
3.19 Disabling Macro Virus Check
In case you are wondering, it can't be done.  Doing so would make the virus protection.  You
can however, disable the warning screen that appears if you don't want to be told that workbooks
contain macros.  This is an option on the warning screen.
3.20 Translating 123 Macros To Excel Macros
There are not any tools (other than consultants <g>) that translate macros from 1
-
2
-
3 to Excel.
Even if there were, the translation would never be as good as determining exactly what they
should do and then write the VBA code from scratch. If you simply try to do a line
-
by
-
line
translation of a complex 1
-
2
-
3 macro, you probably won't be taking full advantage of the features
available in Excel and VBA.
3.21 Converting Lotus 1
-
2
-
3 Macros To Visual Basic
For information on converting 1
-
2
-
3 macros go to the following Microsoft web site:
http://support.microsoft.com/support/kb/articles/q148/2/40.asp
That informs you about an MS Application Note "WE1277:XL7:Visual Basic Equivalents for
Lotus Macro Commands".  Click on the WE1277.EXE to download this file.  When you
download an run it, It creates a word documentation that you can  then read.
3.22 The Equivalent Of A Lotus 1
-
2
-
3 Macro Pause
In Lotus, you could pause your code so that the user could modify a cell before the macro
resumed.  In Excel, you would useApplication.InputBox orInputBox to get user input, and
VB.NET Word: VB.NET Code to Rotate Word Page Within .NET Imaging
Here, we can recommend you VB.NET PDF page rotating tutorial Without losing any original quality during or after the Word page rotating; Save the rotated
rotate pdf pages and save; permanently rotate pdf pages
VB.NET Image: Image Rotator SDK; .NET Document Image Rotation
rotator control SDK allows developers to save rotated image That is to say, after you run following powerful & profession imaging controls, PDF document, tiff
change orientation of pdf page; rotate all pages in pdf preview
33
then have your code modify the cells.  Please see the topics onApplication.InputBox or
InputBox for examples of how to use these features.
VB.NET Image: Web Image and Document Viewer Creation & Design
and print such documents and images as JPEG, BMP, GIF, PNG, TIFF, PDF, etc. Upload, Open, Save & Download Images & Docs with Web Viewer. After creating a
rotate pages in pdf expert; rotate one page in pdf
VB.NET Image: Image Cropping SDK to Cut Out Image, Picture and
of this VB.NET image cropping process: decode the source image file to bitmap, crop bitmap and save cropped bitmap to original image format. After you run this
rotate single page in pdf file; rotate pdf pages
34
4. ADD
-
INS
4.1 Creating Add
-
Ins
There are two way to create an add
-
in in Excel.  From the Excel interface you can choose
<File><Save As> from the menu and change the file type to add
-
in.  This works if there is at least
one worksheet in the file.
The other approach (and the one I recommend) is from the visual basic editor interface.  First
select the workbook object in your project and change itsIsAddIn property toTrue in the
properties window.  If the properties window is not visible, press the F4 key to display the
properties window.  While this property isTrue, none of the worksheets in the add
-
in are visible
or accessible in Excel.  The file can only be accessed in the Visual Basic editor.  To access a
worksheet of an add
-
in, change theIsAddin property back toFalse.
Please note that neither approach hides your code or prevents a user from changing it unless you
lock the project from the Visual Basic editor and assign a password.  You can password protect
your code by choosing Tools/VBAProject Protection/Protection from the menu. Then check the
Lock Project For Viewing checkbox and enter a password. You'll then have to save the project,
close it and reopen it for the password to take effect.  Also, be aware passwords can be easily
broken by commercial password crackers.
4.2 Certification of Your Add
-
ins
If you want to certify your macros, you do so in a two step procedure:  First you create a
certificate and then you certify it in Excel 2000 and above.  Excel 97 does not recognize
certificates.
For information on creating a certificate, go to
http://support.microsoft.com/support/kb/articles/Q217/2/21.ASP
Another other URL that will help you with certificates is:
Using SelfCert to Create a Digital Certificate for VBA Projects
With the article on "Using SelfCert To Create A Digital Certificate for VBA Projects, you may
get the error message "Could not create a certificate".  If you get this message, use the procedure
in the second article above to create your certificates.
The second one is probably the best source.  We recommend that in addition to listing your name
on the certificate that you list your e
-
mail address and your phone number.
To sign the macros, open the workbook and go to the VB editor.  Then select in the VB editor
Tools, Digital Signature.  Use the Choose button to specify the certificate you wish to use.
VB.NET Image: How to Process & Edit Image Using VB.NET Image
Q 2: After I apply various image processing functions to source image file editor control SDK allows developers process target image file and save edited image
how to reverse pages in pdf; reverse page order pdf online
VB.NET Image: Creating Hotspot Annotation for Visual Basic .NET
hotspot annotation styles before and after its activation img = obj.CreateAnnotation() img.Save(folderName & & profession imaging controls, PDF document, tiff
rotate single page in pdf reader; rotate pages in pdf
35
When you open a workbook with a certificate and your macro security is not set to high, you will
be given an option to trust the source.  Doing so adds the source to your trusted list and you will
not be prompted to enable macros from this source – they will automatically be enabled.
Please note that an workbook that has a certificate means very little.  Such a file can be infected
with a macro virus and the certificate stays in place.  Thus you can get a false sense of security.
About the only value of a certificate is to a user who wants to set a medium or high level of
security against macros but wants his or her macro containing files to open without being
warned that they contain macros.
4.3 Running Add
-
In Procedures From Other
Workbooks
To run an add
-
in's procedure from another workbook's code, use a statement like the following:
Application.Run "MyAddin.xla!MySub"
The double quotes are required.  If the file name contains spaces then single quotes are required:
Application.Run "'My Add in.xla'!MySub"
If it is a function, then use a statement like the following:
retVal = Application.Run("MyAddin.xla!MyFunction")
"retVal" is a variable to capture the result of the function.
4.4 How To Create XLL's
An XLL is a standard DLL written in *C or C++*, which uses special functions and data types
(principally XLOPER structures) in order to "communicate" with Excel.  XLL code is far more
difficult to write, but runs far faster.
If you are interested in creating XLL's, you need a good knowledge and practice of C or C++ and
the "Microsoft Excel Developer's Kit", published by Microsoft Press.
4.5 Creating COM Add
-
ins
In the Visual Basic Window, there is a new pull down menu called "Add
-
Ins."  Under this, there
is "Add
-
In Manager."  This menu is for COM (Component Object Model) Add
-
Ins that can be
created using languages such as VB6.  These add
-
ins are DLLs that are not visible in the VBE.
The Developer Edition of Office 2000 also has the necessary power to create COM Add
-
Ins.
Stephen Bullen has converted two of his popular VBE Add
-
Ins (Indenter and VBETools) into
COM Add
-
Ins, which you can download fromhis site
if you want to see them in action.
A COM add
-
in is just like a VB ActiveX DLL. You can't use it to directly add custom worksheet
functions.  What you can do is compile all the logic of your function into the DLL, then create a
VB.NET Image: VB.NET Code to Add Rubber Stamp Annotation to Image
on image or document files; Able to save created rubber Suitable for VB.NET PDF, Word & TIFF document Method for Drawing Rubber Stamp Annotation. After you have
pdf rotate pages separately; rotate pdf pages by degrees
VB.NET PDF: VB Code to Create PDF Windows Viewer Using DocImage
What's more, after you have created a basic PDF document viewer in your VB.NET Windows application, more imaging viewer Save current PDF page or the
rotate pdf page; reverse page order pdf
36
normal Excel add
-
in that references that DLL and exposes the DLL functions as Excel worksheet
functions.
To build COM add
-
ins from the VBE in the Developer Edition of Office 2000, you have to start
out with a special project type.  Choose File/New Project from the VBE and  select Add
-
in
Project as the project type.  This will give you a COM add
-
in designer. The events for the COM
add
-
in are accessed from the class module behind the designer.
For most users, creating regular add
-
ins via File, SaveAs or by changing the workbookIsAddin
property toTrue is the best and easiest approach.  However, COM add
-
ins can not be cracked by
commercial password crackers (at least those I am aware of), and so offer a better level of code
protection than regular add
-
ins.
A major disadvantage of COM add
-
ins is that you do not have a worksheet in the add
-
in to act as
a storage or a working area for data.
4.6 Using DLL Functions In Excel
You can access a DLL function from VBA provided that the function is exported from the DLL
using the standard call calling convention.  Note that the default calling convention for a DLL
created from C/C++ is cdecl and such a DLL will NOT be accessible from VB or VBA.
The DLL function is made available to VBA using theDeclare statement.
By default the name by which a function is exported from your DLL will differ from the name
you actually gave it in your source code.  If you named your function MyFunction then the name
by which it must be called will be _MyFunction@n, where n is an integer representing the size of
the return stack (you can see this name by opening the file from Explorer using Quick View
(from the right click menu in Explorer) and scrolling down to the export table).
The underscore is not allowed in a VB function name so to call your DLL function from VBA
you must use theDeclare statement with the Alias clause for example "DeclareFunction
MyFunction Lib "DLLlibname"Alias "myfunction@12" (...)AsInteger"
There are several items available from Microsoft Technet which will help you.  One particularly
useful one is an article entitled "DLLs for Beginners".
You can use functions from DLLs on your Excel worksheet using theCALL function.
If you are producing your own C/C++ DLLs then you can get around the name decoration by
using a module definition file in your project and directly defining the exported names in the
Export section of your .def file.
Be very careful if you experiment with DLL functions in Excel or Excel VBA as there is no built
-
in error handling and any errors are likely at the best to crash Excel and at worst bring down your
machine.  So make very sure that everything is properly saved before you call an untested
function.
VB.NET Word: VB.NET Code to Draw and Write Text and Graphics on
After creating text on Word page, users are able doc, fileNameadd, New WordEncoder()) 'save word End powerful & profession imaging controls, PDF document, tiff
pdf reverse page order preview; pdf rotate single page
37
4.7 Problems With Add
-
Ins 
-
ActiveWorkbook Problem
A typical error when writing code that will be an add
-
in is the use ofActiveWorkbook instead
ofThisWorkbook If you run a macro in a workbook, both methods reference the same
workbook, but if you run an add
-
in, they mean different things.ThisWorkbook is the actual
book running the macro. ActiveWorkbook is the active workbook visible in Excel.  If you wish
to refer to a sheet in the file containing the macro code, use
ThisWorkbook.Sheets("sheetname").  If you wish to refer to a sheet in the active workbook, use
ActiveWorkbook.Sheets("sheetname").
4.8 Installing Add
-
Ins Via Visual Basic Code
To install or un
-
install an add
-
in using Visual Basic code, use statements like the following:
AddIns("Visual Basic Macros Made Easy").Installed = False
AddIns("Visual Basic Macros Made Easy").Installed = True
The following illustrates how to install the Solver add
-
in via Visual Basic statements:
'determine if the add
-
in exits in the library directory
Dim tempStr As String
tempStr = Application.LibraryPath & "\SOLVER\SOLVER.XLA")
If Dir(tempStr) = "" Then
MsgBox "you do not have solver.xla installed"
End
End If
'Add Solver Add
-
in if needed.  Please note this statement may take up to
'a minute to run
If AddIns("Solver Add
-
In").Installed = False _
Then AddIns("Solver Add
-
In").Installed = True
If you also need to add a reference to an add
-
in, then use the following statements which
illustrate how to do set a reference to Solver.xls.  Solver must be installed as an add
-
in for this to
work.
Dim bFound As Boolean
Dim obj
'see if there is a reference to solver already
For Each obj In ThisWorkbook.VBProject.References
If UCase(obj.Name) = "SOLVER.XLS" Then
bFound = True
Exit For
End If
Next obj
38
'if no reference then set a reference.
If bFound = False Then _
ThisWorkbook.VBProject.References.AddFromFile _
Application.LibraryPath & "\SOLVER\SOLVER.XLA"
4.9 Using Solver With Visual Basic
Frontline developed Solver.  Apparently Solver defines names For each constraint, then hides the
name definitions.  After un
-
hiding them, you will find that the references were to cells like
$AC$46, $AD$46, etc..  Apparently, in the named definitions it had the correct cells identified,
but in the actual Solver dialog box it will not show cells beyond the "Z" column.  Frontline's web
site is:
http://www.solver.com
You can also find a number of internet articles by Microsoft at:
http://support.microsoft.com/support/Excel/Content/Solver/SOLVER.asp
They have a number of suggestions on it to help you in using Solver.
Here are the steps to  display the hidden names and "restart" Solver fresh:
1.  Use "Save Model" in the options dialog to save the model onto the sheet.  (This will save the
embedded formulas onto the worksheet.)
2.  Use this macro that makes all the hidden defined names available:
Sub unhide_Names()
Dim na As Name
For Each na In ActiveWorkbook.Names
na.Visible = True
Next
End Sub
3.  Go to Insert
-
Name
-
Define, you will see all the Solver names, starting with solver_.
4.  Simply delete all of these names.
5.  Start the Solver; the dialog will be blank, but you can use the "Load Model" option to restore
the model you saved before.
Finally, here's another tip Frontline Systems provided:
Frontline does not recommend using formulas in the right hand sides of constraints. It is allowed,
but causes severe performance problems. Instead, if you have:
$A$1 <= 0.5*$D$5*93
39
just place the right hand side in a cell, such as $B$10, so that $B$10 has the formula:
=0.5*$D$5*93, and make the constraint:
$A$1 <= $B$10
40
5. MODULES
5.1 Naming Your Modules And UserForms
To change the names of your modules and userforms from "module1", "module2", etc. to more
descriptive names, do the following:
Display the project explorer by clicking on the project explorer button
Click on the module or userform you wish to rename
Click on the properties button to display the properties window (or press F4
Change the name property to a new name.  Spaces are not allowed.  Use
underscores instead of spaces.
One technique that you may wish to use is to begin all modules with the phrase "Mdl_" and all
user forms with the name "Form_".  Also, you can display the module's properties window by
pressing F4 while in the module.
5.2 Copying Modules
You can copy modules by manually exporting them and then importing them.  You can also do
this with code. The following code exports Module1 from the workbook containing the code and
copies into Book2, then removes the intermediate file:
Sub CopyModule()
Dim fName As String
fName = "C:\TempFile.bas"
Workbooks("book1").VBProject.VBComponents("Module1") _
.Export FileName:=fName
Workbooks("book2").VBProject.VBComponents _
.Import(FileName:=fName).Name = "NewModule"
Kill fName
End Sub
To use the above code, you must have a reference set to the VBA Extensibility library.  In the
VBA editor, go to Tools, References, and check "Microsoft Visual Basic For Application
Extensibility".
5.3 Showing Just A Single Procedure
At the bottom left of the code panel in a module are two small buttons.  Clicking on these buttons
will toggle you from viewing just the active procedure (the one where the cursor is located, and
all procedures.
Documents you may be interested
Documents you may be interested