display pdf winform c# : Rotate pdf page and save application SDK cloud html wpf windows class 7053154973-Excel%202007%20VBA%20Programmers%20Reference%20-%20Wrox%20200735-part661

Summary
In RibbonX, Microsoft has done an extremely good job of exposing the capabilities of the Office 2007
Ribbon for developers to use.
You can easily create custom tabs, groups, menus, buttons, toggle buttons, drop-downs, galleries, check-
boxes, and dynamic menus to add your application’s features to the Ribbon.
You have a comprehensive and cohesive set of attributes that can be applied to all control types, and
(nearly) every attribute has an equivalent getAttributecallback.
Using those controls and attributes, you can create an entirely new style of interface for your applications—
significantly better than previous versions’ CommandBars.
Though very good, RibbonX is still a v1.0 technology, and you might encounter a number of limitations
when trying to push its limits.
318
Chapter 14: RibbonX
Rotate pdf page and save - 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#
pdf rotate just one page; rotate pdf page few degrees
Rotate pdf page and save - 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
rotate one page in pdf; rotate pages in pdf online
Command Bars
The CommandBarscollection is an object contained in the Office Object Model, documented in
Appendix C. It contains all the menus, toolbars, and shortcut popup menus that are already built
into Excel and the other Office applications, as well as any of those objects that you create yourself.
You access command bars through the CommandBarsproperty of the Applicationobject.
Command bars were first introduced into Office in Office 97. Excel 5 and 95 supported menu bars
and toolbars as separate object types. Shortcut menus, or popups, such as those that appear when
you right-click a worksheet cell, were a special type of menu bar. In Excel 97 and later versions,
command baris a generic term that includes menu bars, toolbars, and shortcut menus.
Excel 2007 has made a giant leap forward and replaced menus and toolbars with the Ribbon to
provide access to commands. Only the popup type command bars are included in the standard
Excel 2007 user interface. However, Excel 2007 still maintains all the old command bars internally
and still allows you to create your own command bars, although the way menus and toolbars are
exposed is different compared with previous versions. User-defined menus and toolbars now
appear in the Add-Ins tab of the Ribbon.
The Visual Basic Editor window in Excel 2007 still has the menu and toolbar interface it has always
supported. You can manipulate the VBE command bars using the same techniques that are out-
lined in this chapter. See Chapter 26 for more information.
Command bars contain items that are called controls. When clicked, some controls execute opera-
tions, such as copy. Until this chapter gets down to the nuts and bolts, these types of controls will
be referred to as commands. There are other controls, such as File, that produce an additional list of
controls when clicked. These controls are referred to as menus. You can create new controls, or you
can use the built-in controls that come with Excel.
This chapter shows you how to create and manipulate these useful tools. It takes a look at how
command bars were used in Excel 2003 and then shows how to use them in Excel 2007.
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
this RasterEdge XDoc.PDF SDK, you can simply delete a single page from a PDF document using VB.NET or remove any page from a PDF document and save to local
how to rotate just one page in pdf; rotate pdf pages on ipad
C# PDF Page Insert Library: insert pages into PDF file in C#.net
those page processing functions, such as how to merge PDF document files by C# code, how to rotate PDF document page Add and Insert Blank Page to PDF File in
how to rotate a pdf page in reader; rotate pdf page by page
Toolbars, Menu Bars, and Popups
Figure 15-1 shows the standard Worksheet menu bar at the top of the Excel window in Excel 2003.
Figure 15-1
The Worksheet menu bar contains menus, such as File and Edit. When you click a menu, you see
another list containing commands and menus:
Cut and Copy are examples of commands in the Edit menu.
Clear is an example of a menu contained within the Edit menu.
Figure 15-2 shows the Standard toolbar in Excel 2003.
Figure 15-2
Toolbars contain controls that can be clicked to execute Excel commands. For example, the button with
the scissors icon carries out a cut. Toolbars can also contain other types of controls, such as the zoom
combo box (two from the end of the Standard toolbar in Figure 15-2) that allows you to select or type in
a zoom factor, displayed as a percentage. Some toolbars contain buttons that display menus.
Figure 15-3 shows the shortcut menu that appears when you right-click a worksheet cell in Excel 2003.
This shortcut menu contains commands, such as Paste, and menus, such as Delete, for those operations
appropriate to the selected context, in this case a worksheet cell.
320
Chapter 15: Command Bars
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
doc.Save(outPutFilePath); Related APIs (PDFDocument.cs): public override void DeletePage(int pageId). Description: Delete specified page from the input PDF file
how to save a pdf after rotating pages; pdf rotate single page
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
outPutFilePath As String = Program.RootPath + "\\" Output.pdf" Dim doc1 doc2.InsertPage(page, pageIndex) ' Output the new document. doc2.Save(outPutFilePath
pdf rotate page and save; rotate pdf pages in reader
Figure 15-3
To summarize, a command bar can be any one of three types. It can be a menu, toolbar, or shortcut popup
menu. When you create a command bar using VBA, you specify which of the three types it will be, using
the appropriate parameters of the Addmethod of the CommandBarscollection. You will see examples of
this later in the chapter. You can find out what type an existing command bar is by testing its Typeprop-
erty, which will return a numeric value equal to the value of one of the following intrinsic constants.
Constant
CommandBar Type
msoBarTypeNormal
Toolbar
msoBarTypeMenuBar
Menu bar
msoBarTypePopup
Shortcut menu
Controls on command bars also have a Typeproperty similar to the msoXXXconstants shown in the pre-
ceding table. The control that is used most frequently has a Typeproperty of msoControlButton, which
represents a command such as the Copy command on the Edit menu of the Worksheet menu bar, or a
command button on a toolbar, such as the Cut button on the Standard toolbar. This type of control runs a
macro or a built-in Excel action when it is clicked.
The second most common control has a Typeproperty of msoControlPopup. This represents a menu on
a menu bar, such as the Edit menu on the Worksheet menu bar, or a menu contained in another a menu,
such as the Clear submenu on the Editmenu on the Worksheet menu bar. This type of control contains
its own Controlscollection, to which you can add further controls.
321
Chapter 15: Command Bars
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
int pageIndex = 2; doc.UpdatePage(page, pageIndex); // Save the PDFDocument. String outputFilePath = Program.RootPath + "\\" Output.pdf"; doc.Save
rotate single page in pdf; rotate pages in pdf and save
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
Description: Convert to DOCX/TIFF with specified zoom value and save it into stream. Parameters: zoomValue, The magnification of the original PDF page size.
reverse pdf page order online; pdf page order reverse
Controls have an Idproperty. For built-in controls, the Idproperty determines the internal action carried
out by the control. When you set up a custom control, you assign the name of a macro to its OnAction
property to make it execute that macro when it is clicked. Custom controls have an Idproperty of 1.
Many built-in menu items and most built-in toolbar controls have a graphic image associated with them.
The image is defined by the FaceIdproperty. The Idand FaceIdproperties of built-in commands nor-
mally have the same numeric value. You can assign the built-in FaceIdvalues to your own controls, if
you know what numeric value to use. You can determine these values using VBA, as you will see in the
next example.
Excel’s Built-in Command Bars
Before launching into creating your own command bars, it will help to understand how the built-in com-
mand bars are structured. You can use the following code to list the existing command bars and any that
you have added yourself. It lists the name of each command bar in column Aand the names of the con-
trols in the command bars Controlscollection in column B, as shown in Figure 15-4. The code does not
attempt to display lower-level controls that belong to controls such as the File menu on the Worksheet
menu bar, so the procedure has been named ListFirstLevelControls
Figure 15-4
322
Chapter 15: Command Bars
C# Create PDF from Tiff Library to convert tif images to PDF in C#
Description: Convert to PDF with specified zoom value and save it into stream. DocumentType.PDF. zoomValue, The magnification of the original tiff page size.
how to rotate all pages in pdf; rotate pdf page permanently
C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
Description: Convert to DOCX/TIFF with specified zoom value and save it into stream. Parameters: zoomValue, The magnification of the original PDF page size.
rotate pdf pages by degrees; how to reverse pages in pdf
The macro also shows the control’s Idproperty value, in all cases, and its image and its FaceIdprop-
erty value when such an image exists. Although you can no longer display the built-in command bars,
you can use the controls and images they contain in your own command bars.
If you are testing this code, it should be placed in a standard code module, not in a class module.
Don’tput the code in the ThisWorkbookmodule or a class module behind a worksheet. You should
alsoinclude the IsEmptyWorksheetfunction listed further down.
Here is the code to list the first-level controls:
Sub ListFirstLevelControls()
Dim ctl As CommandBarControl
Dim cbr As CommandBar
Dim iRow As Integer
If Not IsEmptyWorksheet(ActiveSheet) Then Exit Sub
‘Ignore errors and freeze screen
On Error Resume Next
Application.ScreenUpdating = False
‘Enter headings
Cells(1, 1).Value = “CommandBar”
Cells(1, 2).Value = “Control”
Cells(1, 3).Value = “FaceID”
Cells(1, 4).Value = “ID”
Cells(1, 1).Resize(1, 4).Font.Bold = True
‘Start at row 2
iRow = 2
‘Loop through all commandbars
For Each cbr In CommandBars
Application.StatusBar = “Processing Bar “ & cbr.Name
Cells(iRow, 1).Value = cbr.Name
iRow = iRow + 1
‘Loop through controls on commandbar
For Each ctl In cbr.Controls
Cells(iRow, 2).Value = ctl.Caption
‘Try to get image
ctl.CopyFace
If Err.Number = 0 Then
ActiveSheet.Paste Cells(iRow, 3)
Cells(iRow, 3).Value = ctl.FaceId
Make sure you are in an empty worksheet when you run this macro and the follow-
ing two examples. They contain tests to make sure they will not overwrite any data
in the active sheet.
323
Chapter 15: Command Bars
End If
Cells(iRow, 4).Value = ctl.ID
Err.Clear
iRow = iRow + 1
Next ctl
Next cbr
Range(“A:D”).EntireColumn.AutoFit
Application.StatusBar = False
End Sub
ListFirstLevelControlsfirst checks that the active sheet is an empty worksheet, using the
IsEmptyWorksheetfunction that is shown in the following code. It then uses OnErrorResume
Nextto avoid run-time errors when it tries to access control images that do not exist. In the outer
ForEach...Nextloop, it assigns a reference to each command bar to cbr, shows the Nameproperty
ofthe command bar on the status bar so you can track what it is doing, and places the Namein the 
Acolumn of the current row, defined by iRow.
The inner ForEach...Nextloop processes all the controls on cbr, placing the Captionproperty of
each control in column B. It then attempts to use the CopyFacemethod of the control to copy the con-
trol’s image to the clipboard. If this does not create an error, it pastes the image to column C and places
the value of the FaceIdproperty in the same cell. It places the IDproperty of the control in column D.
Itclears any errors, increments iRowby one, and processes the next control.
The IsEmptyWorksheetfunction, shown next, checks that the input parameter object shtis a 
worksheet. If so, it checks that the count of entries in the used range is 0. If both checks succeed, it
returns True. Otherwise, it issues a warning message and the default return value, which is False, is
returned:
Function IsEmptyWorksheet(sht As Object) As Boolean
‘If sht is a worksheet, count the non empty cells
If TypeName(sht) = “Worksheet” Then
If WorksheetFunction.CountA(sht.UsedRange) = 0 Then
IsEmptyWorksheet = True
This example, and the two following, can take a long time to complete. You can
watch the progress of the code on the status bar. If you only want to see part of the
output, press Ctrl+Break after a minute or so to interrupt the macro, click Debug,
and then choose Run➪Reset.
324
Chapter 15: Command Bars
Exit Function
End If
End If
MsgBox “Please make sure that an empty worksheet is active”
End Function
Controls at All Levels
Figure 15-5 and the following code take the previous procedure to greater levels of detail. All controls
are examined to see what controls are contained within them. Where possible, the contained controls are
listed. Some controls, such as those containing graphics, can’t be listed in greater detail. The information
on sub-controls is indented across the worksheet. The code is capable of reporting to as many levels as
there are, but Excel 2007 does not have controls beyond the fourth level.
Figure 15-5
Here is the code to list controls at all levels:
Sub ListAllControls()
Dim cbr As CommandBar
Dim rng As Range
325
Chapter 15: Command Bars
Dim ctl As CommandBarControl
‘Test for empty worksheet and freeze screen
If Not IsEmptyWorksheet(ActiveSheet) Then Exit Sub
Application.ScreenUpdating = False
‘Start in A1 cell
Set rng = Range(“A1”)
‘Loop through all commandbars
For Each cbr In Application.CommandBars
Application.StatusBar = “Processing Bar “ & cbr.Name
‘List name of bar
rng.Value = cbr.Name
‘Loop through controls on bar
For Each ctl In cbr.Controls
‘Call ListControls function
Set rng = rng.Offset(ListControls(ctl, rng))
Next ctl
Next cbr
‘Fit columns to data
Range(“A:J”).EntireColumn.AutoFit
Application.StatusBar = False
End Sub
ListAllControlsloops through the CommandBarscollection, using rngto keep track of the current
Acolumn cell of the worksheet it is writing to. It posts the name of the current command bar in a mes-
sage on the status bar, so you can tell where it is up to, and also enters the name of the command bar at
the current rnglocation in the worksheet. It then loops through all the controls on the current command
bar, executing the ListControlsfunction, which is shown in the next code snippet.
In Chapter 26, you will need to get listings of the VBE command bars. You can easily accomplish this by
changing the following line:
For Each cBar in Application.CommandBars
To:
For Each cBar in Application.VBE.CommandBars
ListControlsis responsible for listing the details of each control it is passed and the details of any con-
trols under that control, starting at the current rnglocation in the worksheet. When it has performed its
tasks, ListControlsreturns a value equal to the number of lines that it has used for its list. Offsetis
used to compute the new rngcell location for the start of the next command bar’s listing:
326
Chapter 15: Command Bars
Function ListControls(ctl As CommandBarControl, rng As Range) As Long
Dim lOffset As Long    ‘Tracks current row relative to rng
Dim ctlSub As CommandBarControl    ‘Control contained in ctl
‘Ignore Errors
On Error Resume Next
‘Start in rng cell
lOffset = 0
‘List control name and type
rng.Offset(lOffset, 1).Value = ctl.Caption
rng.Offset(lOffset, 2).Value = ctl.Type
‘Attempt to copy control face. If error, don’t paste
ctl.CopyFace
If Err.Number = 0 Then
ActiveSheet.Paste rng.Offset(lOffset, 3)
rng.Offset(lOffset, 3).Value = ctl.FaceId
End If
Err.Clear
‘Check Control Type
Select Case ctl.Type
Case 1, 2, 4, 6, 7, 13, 18
‘Do nothing for these control types
Case Else
‘Call function recursively if current control contains other controls
For Each ctlSub In ctl.Controls
lOffset = lOffset + _
ListControls(ctlSub, rng.Offset(lOffset, 2))
Next ctlSub
lOffset = lOffset - 1
End Select
ListControls = lOffset + 1
End Function
ListControlsis a recursive function, and it runs itself to process as many levels of controls as it finds.
It uses lOffsetto keep track of the rows it writes to, relative to the starting cell rng. It uses very similar
code to ListFirstLevelControls, but records the control type as well as the caption, icon, and face
ID. Most of the control types are:
1—msoControlButton
10—msoControlPopup
327
Chapter 15: Command Bars
Documents you may be interested
Documents you may be interested